/* Logo yellow for the fixed mobile reservation button. */
.mt-site .mt-home-booking{z-index:20}
.mt-site .mt-shared-booking{width:calc(100% - 40px);max-width:1184px;margin:20px auto 0;align-self:start}
.mt-site .mt-date-search{display:grid;grid-template-columns:minmax(0,1fr) 110px minmax(0,1fr) 110px minmax(175px,.9fr);gap:12px;align-items:end;margin:0}
.mt-site .mt-date-search>.field{min-width:0;grid-column:auto}
.mt-site .mt-date-search>button{height:44px;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 14px;border:0;border-radius:6px;background:#06bbb9;color:#062d32;font-size:12px;font-weight:700;cursor:pointer}
.mt-site .mt-date-search>.mt-home-booking-status{grid-column:1/-1;margin:0}
.mt-site .mt-date-search>.mt-home-booking-status:empty{display:none}
/* text-align-last fixes native select text positioning in Chromium and iOS. */
.mt-site .booking-time-control{display:grid;grid-template-columns:minmax(0,1fr) 8px minmax(0,1fr);align-items:center;justify-content:normal;gap:0;padding:0 6px}
.mt-site .booking-time-control select{display:block;width:100%;height:100%;min-height:0;max-height:none;padding:0;margin:0;border:0;appearance:none;-webkit-appearance:none;text-align:center;text-align-last:center;text-indent:0;line-height:normal;box-sizing:border-box}
.mt-site .booking-time-control>span{display:block;width:8px;margin:0;padding:0;text-align:center;line-height:1;color:inherit;font-size:14px}
.mt-site .mt-date-dialog{width:min(720px,calc(100vw - 24px));max-height:calc(100dvh - 32px);padding:42px 0 0;border:1px solid #bad6cf;border-radius:14px;background:#fff;color:#203238;overflow:auto}
.mt-site .mt-date-dialog::backdrop{background:#173b3c80}
.mt-site .mt-date-dialog .mt-home-booking{position:static;width:100%;max-width:none;margin:0;border:0;box-shadow:none}
.mt-site .mt-date-close{position:absolute;right:10px;top:8px;width:36px;height:36px;border:0;border-radius:50%;background:#edf7f3;color:#17434a;font-size:26px;cursor:pointer}
.mt-site .mt-date-dialog .mt-date-search{grid-template-columns:minmax(0,1fr) 110px}
.mt-site .mt-date-dialog .mt-date-search>button{grid-column:1/-1}
.mt-has-date-search:has(dialog[open],.nav.mobile-open,.cookie-consent:not([hidden]),input:focus,textarea:focus) .mt-booking-shortcut{visibility:hidden;pointer-events:none}
@media(min-width:801px){.mt-has-date-search .mt-booking-shortcut{display:none}}
@media(max-width:800px){
  .mt-site.mt-has-date-search{padding-bottom:calc(86px + env(safe-area-inset-bottom))}
  .mt-site .mt-shared-booking{width:calc(100% - 24px);margin:14px auto 0}
  .mt-site .mt-date-search{grid-template-columns:minmax(0,1fr) 100px;gap:12px 10px}
  .mt-site .mt-date-search>button{grid-column:1/-1;min-height:46px;font-size:13px}
  .mt-site .mt-booking-shortcut{display:block;position:fixed;left:0;right:0;bottom:0;z-index:45;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e8dfb5}
  .mt-site .mt-booking-shortcut>a{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:12px 20px;background:#ffdc2f;color:#203238;border:1px solid #f1cc15;border-radius:8px;box-shadow:none}
  .mt-site .mt-booking-shortcut>a:hover{background:#f6d21c;color:#203238}
  .mt-site .mt-booking-shortcut strong{font-size:16px}
  .mt-site.mt-has-date-search .whatsapp-floating{bottom:calc(86px + env(safe-area-inset-bottom))}
  .mt-site .mt-date-dialog .mt-date-search{grid-template-columns:minmax(0,1fr) 100px}
  .mt-site .mt-date-dialog .mt-home-booking-heading h2{font-size:21px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.mt-site .mt-shared-booking,.mt-site .mt-booking-shortcut,.mt-site .mt-date-dialog{display:none}.mt-site.mt-has-date-search{padding-bottom:0}}
/* Compact search card, shared by the home, results and public pages. */
.mt-site .field .booking-time-dropdown{position:relative;display:block;box-sizing:border-box;width:100%;min-width:0;height:44px;min-height:44px;padding:0;border:1px solid #cbdedb;border-radius:8px;background:white;color:#183f43}
.mt-site .field .booking-time-dropdown::after{content:'⌄';position:absolute;right:8px;top:50%;transform:translateY(-55%);pointer-events:none;font:16px Arial,sans-serif;color:#4c7778}
.mt-site .field .booking-time-dropdown select{box-sizing:border-box;width:100%;height:100%;padding:0 21px;border:0;border-radius:8px;background:transparent;color:inherit;font:500 16px/1.25 Arial,sans-serif;text-align:center;text-align-last:center;font-variant-numeric:tabular-nums;cursor:pointer}
.mt-site .field .booking-time-dropdown select:focus-visible{outline:2px solid #087e82;outline-offset:2px}
.mt-site .field .booking-time-dropdown select option:disabled{color:#a5b2b3}
.mt-site #siteBookingPanel{box-sizing:border-box;width:min(100%,1000px);max-width:1000px;margin-left:auto;margin-right:auto;padding:14px 18px;border:1px solid #e7ca59;border-radius:12px;background:#fffefa;box-shadow:0 3px 16px #173b3c08}
.mt-site #siteBookingPanel.mt-shared-booking{width:min(calc(100% - 32px),1000px)}
.mt-site #siteBookingPanel .mt-home-booking-heading{display:flex;justify-content:center;align-items:baseline;gap:12px;text-align:center;margin-bottom:12px}
.mt-site #siteBookingPanel .mt-home-booking-heading h2{margin:0;font:600 19px/1.25 Arial,sans-serif;letter-spacing:-.3px}
.mt-site #siteBookingPanel .mt-home-booking-heading p{margin:0;font:400 11px/1.4 Arial,sans-serif}
.mt-site #siteBookingPanel :is(#bookingForm,.mt-date-search){display:grid;grid-template-columns:minmax(0,1fr) 104px minmax(0,1fr) 104px 190px;align-items:end;gap:10px;margin:0}
.mt-site #siteBookingPanel .field label{display:block;margin:0 0 5px;text-align:center;font:500 11px/1.4 Arial,sans-serif}
.mt-site #siteBookingPanel .field :is(.booking-date-trigger,input[type=date],input[type=time]){height:44px;min-height:44px;max-height:44px;border-radius:8px;border-color:#cbdedb;color:#183f43;font-family:Arial,sans-serif;font-size:14px;font-weight:500}
.mt-site #siteBookingPanel .booking-date-trigger{position:relative;justify-content:center;padding:0 27px;text-align:center;gap:0}
.mt-site #siteBookingPanel .booking-date-trigger .bd-value{width:100%;text-align:center;font-variant-numeric:tabular-nums}
.mt-site #siteBookingPanel .booking-date-trigger svg{position:absolute;right:9px;width:16px;height:16px;color:#4c7778}
.mt-site #siteBookingPanel :is(#bookingForm,.mt-date-search)>button{display:flex;align-items:center;justify-content:center;gap:12px;margin:0;height:44px;min-height:44px;padding:0 12px;border-radius:8px;font:600 13px/1.2 Arial,sans-serif;text-align:center}
.mt-site #siteBookingPanel .booking-rules-note{margin:9px 0 0;text-align:center;font:400 11px/1.45 Arial,sans-serif}
.mt-site #siteBookingPanel .mt-home-booking-status{text-align:center}
.mt-site :is(.mt-date-dialog,.service-dates-dialog,.vehicle-date-dialog,.availability-date-dialog){border:1px solid #e7ca59;border-radius:14px}
.mt-site .mt-date-dialog{width:min(440px,calc(100vw - 24px));padding-top:38px}
.mt-site .mt-date-dialog #siteBookingPanel{width:100%;max-width:none;border:0;margin:0;padding:12px 16px 18px;background:white}
.mt-site .mt-date-dialog #siteBookingPanel .mt-home-booking-heading{display:block}
.mt-site .mt-date-dialog #siteBookingPanel .mt-home-booking-heading p{margin-top:3px}
.mt-site .mt-date-dialog #siteBookingPanel :is(#bookingForm,.mt-date-search){grid-template-columns:minmax(0,1fr) 100px}
.mt-site .mt-date-dialog #siteBookingPanel :is(#bookingForm,.mt-date-search)>button{grid-column:1/-1}
@media(max-width:800px){
  .mt-site #siteBookingPanel{width:100%;max-width:440px;padding:13px 12px}
  .mt-site #siteBookingPanel.mt-shared-booking{width:calc(100% - 24px);max-width:440px}
  .mt-site #siteBookingPanel .mt-home-booking-heading{display:block;margin-bottom:12px}
  .mt-site #siteBookingPanel .mt-home-booking-heading p{margin-top:3px}
  .mt-site #siteBookingPanel .mt-home-booking-heading h2{font-size:18px}
  .mt-site #siteBookingPanel :is(#bookingForm,.mt-date-search){grid-template-columns:minmax(0,1fr) 98px;gap:10px 8px}
  .mt-site #siteBookingPanel :is(#bookingForm,.mt-date-search)>button{grid-column:1/-1}
  .mt-site #siteBookingPanel .field :is(input[type=date],input[type=time]){font-size:16px}
  .mt-site #siteBookingPanel .booking-rules-note{font-size:10px;line-height:1.5;margin-top:8px}
}
@media(max-width:360px){
  .mt-site #siteBookingPanel :is(#bookingForm,.mt-date-search),.mt-site .mt-date-dialog #siteBookingPanel :is(#bookingForm,.mt-date-search){grid-template-columns:minmax(0,1fr) 88px}
  .mt-site #siteBookingPanel .booking-date-trigger{padding:0 21px;font-size:13px}
  .mt-site #siteBookingPanel .booking-date-trigger svg{right:5px;width:14px;height:14px}
}
