.booking-page{font-family:var(--booking-font,Inter,Arial,sans-serif);background:var(--booking-page,#f5f7f8);color:var(--booking-text,#101820)}
.booking-page .journey-form,.booking-page .booking-aside .aside-card,.booking-page .booking-summary{border-color:var(--booking-border,#d9e0e4)}
.booking-page .journey-form{background:var(--booking-card,#fff);color:var(--booking-text,#101820);border-radius:var(--booking-radius,18px)}
.booking-page .stage-heading h2,.booking-page .google-place-label>label,.booking-page .form-grid label>span,.booking-page .booking-summary h3{color:var(--booking-text,#101820)}
.booking-page .stage-heading p,.booking-page .field-help,.booking-page .booking-summary p,.booking-page .booking-summary small{color:var(--booking-muted,#65727c)}
.booking-page input,.booking-page select,.booking-page textarea,.booking-page .google-place-input{background:var(--booking-input,#fff)!important;color:var(--booking-text,#101820)!important;border-color:var(--booking-border,#d9e0e4)!important;border-radius:calc(var(--booking-radius,18px) * .72)}
.booking-page input::placeholder,.booking-page textarea::placeholder{color:color-mix(in srgb,var(--booking-muted,#65727c) 72%,transparent)}
.booking-page .button.primary,.booking-page .form-submit,.booking-page .form-next{background:var(--booking-accent,#f5c84c)!important;color:var(--booking-accent-text,#101820)!important}
.booking-page .step-dot.active span,.booking-page .stage-heading>span,.booking-page .kicker,.booking-page .google-route-head .fare-estimator-copy>span{color:var(--booking-accent,#f5c84c)!important}
.booking-page[data-booking-theme="dark"]{background:var(--booking-page,#071019);color:var(--booking-text,#f4f7f8)}
.booking-page[data-booking-theme="dark"] .booking-section,.booking-page[data-booking-theme="dark"] main{background:var(--booking-page,#071019)}
.booking-page[data-booking-theme="dark"] .journey-form,.booking-page[data-booking-theme="dark"] .booking-summary,.booking-page[data-booking-theme="dark"] .fare-estimator,.booking-page[data-booking-theme="dark"] .booking-aside .aside-card{background:var(--booking-card,#10212f);color:var(--booking-text,#f4f7f8)}
.booking-page[data-booking-theme="dark"] .choice-card,.booking-page[data-booking-theme="dark"] .payment-grid label>span,.booking-page[data-booking-theme="dark"] .summary-feature,.booking-page[data-booking-theme="dark"] .summary-route-card{background:color-mix(in srgb,var(--booking-card,#10212f) 84%,#000);border-color:var(--booking-border,#294052);color:var(--booking-text,#f4f7f8)}
.booking-field-hidden{display:none!important}

/* V13 Booking App visibility fixes */
.booking-page .summary-map-link,
.booking-page .summary-map-link:visited,
.booking-page .summary-map-link:hover,
.booking-page .summary-map-link:focus{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:48px!important;padding:12px 18px!important;border:2px solid #1f3544!important;
  border-radius:12px!important;background:#fff!important;color:#0a1620!important;
  font-size:17px!important;line-height:1.25!important;font-weight:900!important;text-decoration:none!important;
  box-shadow:0 3px 10px rgba(9,25,36,.08)!important;
}
.booking-page .summary-map-link:hover,.booking-page .summary-map-link:focus{background:#f5c84c!important;color:#101820!important}
.booking-page .booking-aside .aside-note{display:none!important}

/* V16 dedicated Online Booking application shell */
body.booking-page{
  min-height:100dvh!important;
  margin:0!important;
  overflow-x:hidden;
}
body.booking-page .group-ribbon,
body.booking-page > .site-header,
body.booking-page main > .page-hero,
body.booking-page main > .fleet-motion,
body.booking-page > .site-footer,
body.booking-page > .mobile-book,
body.booking-page > .runtime-whatsapp{
  display:none!important;
}
body.booking-page main{
  min-height:100dvh!important;
  margin:0!important;
  padding:0!important;
  background:var(--booking-page,#f5f7f8)!important;
}
body.booking-page .booking-section{
  min-height:100dvh!important;
  margin:0!important;
  padding:14px!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  background:var(--booking-page,#f5f7f8)!important;
}
body.booking-page .booking-section > .shell{
  width:100%!important;
  max-width:1180px!important;
  margin:0 auto!important;
  padding:0!important;
}
body.booking-page .booking-layout{
  border:1px solid var(--booking-border,#d9e0e4)!important;
  border-radius:20px!important;
  overflow:hidden!important;
  background:var(--booking-card,#fff)!important;
  box-shadow:0 18px 48px rgba(7,22,31,.12)!important;
}
@media (min-width:761px){
  body.booking-page .mobile-booking-head{
    display:grid!important;
    grid-template-columns:150px 1fr 46px!important;
    align-items:center!important;
    gap:12px!important;
    min-height:68px!important;
    padding:10px 16px!important;
    background:#0d0f14!important;
    color:#fff!important;
    border-bottom:1px solid rgba(255,255,255,.1)!important;
  }
  body.booking-page .mobile-booking-brand img{width:140px!important;height:auto!important}
  body.booking-page .mobile-booking-state{text-align:center!important}
  body.booking-page .mobile-booking-state small{display:block!important;color:#f5c84c!important;font-size:9px!important;font-weight:900!important;letter-spacing:.08em!important}
  body.booking-page .mobile-booking-state b{display:block!important;color:#fff!important;font-size:13px!important;margin-top:2px!important}
  body.booking-page .mobile-booking-exit{display:grid!important;place-items:center!important;width:38px!important;height:38px!important;border-radius:50%!important;background:rgba(255,255,255,.08)!important;color:#fff!important;text-decoration:none!important;font-size:25px!important}
}
@media (max-width:760px){
  body.booking-page .booking-section{padding:0!important}
  body.booking-page .booking-section > .shell{max-width:none!important}
  body.booking-page .booking-layout{
    min-height:100dvh!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
}
