/* Site-local presentation for both booking entry points. */
body.has-airport-wizard #booking.acw.acw--clear { scroll-margin-top: 95px; }
body.has-airport-wizard #booking.acw.acw--clear .acw-main { height: auto; min-height: 0; }
body.has-airport-wizard #booking.acw.acw--clear .acw-body { overflow: visible; }
body.has-airport-wizard #booking.acw.acw--clear .acw-form { height: auto !important; overflow: visible; }
body.has-airport-wizard #booking.acw.acw--clear .acw-panel.is-active { height: auto; min-height: 0; overflow: visible; }
body.has-airport-wizard #booking.acw.acw--clear .acw-panel[data-step="2"].is-active,
body.has-airport-wizard #booking.acw.acw--clear .acw-panel[data-step="3"].is-active { overflow: visible; }
body.has-airport-wizard #booking.acw.acw--clear .wtitle { font-size: 28px; line-height: 1.2; }
body.has-airport-wizard #booking.acw.acw--clear .wsub { font-size: 14px; line-height: 1.5; }
body.has-airport-wizard #booking.acw.acw--clear .field > label { font-size: 13px; line-height: 1.35; }
body.has-airport-wizard #booking.acw.acw--clear .field input:not([type="radio"]):not([type="checkbox"]),
body.has-airport-wizard #booking.acw.acw--clear .field select,
body.has-airport-wizard #booking.acw.acw--clear .field textarea { font-size: 16px; }
body.has-airport-wizard #booking.acw.acw--clear .help { font-size: 12px; line-height: 1.5; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule { background: #fff; color: #183b4b; border: 1px solid #cbdcde; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule h4,
body.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule label { color: #183b4b; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule .ac-route-group__eyebrow { color: #39737a; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule .ac-schedule-heading p { color: #536d77; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule .datetime-control { border-color: #c6d8dd; background: #f7fafb; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule .datetime-display { color: #183b4b; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule .datetime-control input { color: #183b4b; color-scheme: light; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule .ac-booking-card--return { border-color: #d6e3e5; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule .inline-error { color: #b32824; }
body.has-airport-wizard #booking.acw.acw--clear .btn { min-height: 48px; font-size: 14px; white-space: normal; line-height: 1.35; }
/* Inline actions remain available even if a floating action is suppressed. */
body.has-airport-wizard #booking.acw.acw--clear .wactions--conversion .btn--primary,
body.has-airport-wizard #booking.acw.acw--clear .cta--conversion #submitBtn { display: inline-flex !important; }
body.has-airport-wizard #booking.acw.acw--clear .wactions--conversion,
body.has-airport-wizard #booking.acw.acw--clear .cta--conversion { margin-top: 18px; padding-top: 16px; min-height: 0; align-items: center; }
body.has-airport-wizard #booking.acw.acw--clear .veh-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
body.has-airport-wizard #booking.acw.acw--clear .veh-group,
body.has-airport-wizard #booking.acw.acw--clear .veh-group__list { display: contents; }
body.has-airport-wizard #booking.acw.acw--clear .veh-group__title { display: none; }
body.has-airport-wizard #booking.acw.acw--clear .veh { display: flex; flex-direction: column; height: auto; min-height: 0; border: 1px solid #c6d9dd; border-radius: 14px; background: #fff; box-shadow: 0 4px 14px rgba(20,55,69,.06); }
body.has-airport-wizard #booking.acw.acw--clear .veh:has(input:checked) { border-color: #258995; box-shadow: 0 0 0 2px #258995; }
body.has-airport-wizard #booking.acw.acw--clear .veh:has(input:focus-visible) { outline: 3px solid #258995; outline-offset: 4px; }
body.has-airport-wizard #booking.acw.acw--clear .veh:hover { transform: none; border-color: #258995; }
body.has-airport-wizard #booking.acw.acw--clear .veh__media { position: relative; width: 100%; height: 170px; min-height: 170px; aspect-ratio: auto; background-size: contain !important; background-position: center !important; background-repeat: no-repeat; background-color: #f0f5f5; }
body.has-airport-wizard #booking.acw.acw--clear .veh__media::after { display: none; }
body.has-airport-wizard #booking.acw.acw--clear .veh__body { position: static; display: flex; flex: 1; flex-direction: column; padding: 16px; gap: 7px; min-height: 0; background: #fff; color: #183b4b; }
body.has-airport-wizard #booking.acw.acw--clear .veh__name { color: #183b4b; font-size: 22px; line-height: 1.15; }
body.has-airport-wizard #booking.acw.acw--clear .veh__meta,
body.has-airport-wizard #booking.acw.acw--clear .veh__luggage { color: #4c6570; font-size: 13px; line-height: 1.45; white-space: normal; overflow: visible; }
body.has-airport-wizard #booking.acw.acw--clear .veh__hint { align-self: stretch; justify-items: start; margin: auto 0 0; padding: 12px 0 0; border: 0; color: #183b4b; font-size: 22px; line-height: 1.2; }
body.has-airport-wizard #booking.acw.acw--clear .veh__hint::before { content: "Total · private vehicle"; margin-bottom: 5px; color: #526d76; font-size: 11px; letter-spacing: .01em; text-transform: none; }
body.has-airport-wizard #booking.acw.acw--clear .veh__price-line { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px; }
body.has-airport-wizard #booking.acw.acw--clear .vehOriginalPrice { color: #697c83; font-size: 13px; }
body.has-airport-wizard #booking.acw.acw--clear .vehPrice { color: #153e4b; font-size: 22px; }
body.has-airport-wizard #booking.acw.acw--clear .vehPromo { color: #287347; font-size: 11px; line-height: 1.4; }
body.has-airport-wizard #booking.acw.acw--clear .veh__selected { display: none !important; }
body.has-airport-wizard #booking.acw.acw--clear .veh__choice { display: flex; align-items: center; justify-content: center; margin-top: 6px; padding: 9px; min-height: 38px; border: 1px solid #c6d9dd; border-radius: 8px; color: #236571; font-size: 13px; font-weight: 700; }
body.has-airport-wizard #booking.acw.acw--clear .veh__choice-active { display: none; }
body.has-airport-wizard #booking.acw.acw--clear .veh:has(input:checked) .veh__choice { border-color: #258995; background: #e9f6f5; }
body.has-airport-wizard #booking.acw.acw--clear .veh:has(input:checked) .veh__choice-idle { display: none; }
body.has-airport-wizard #booking.acw.acw--clear .veh:has(input:checked) .veh__choice-active { display: inline; }
body.has-airport-wizard #booking.acw.acw--clear .veh__recommended { font-size: 10px; padding: 6px 8px; background: #eaf6ef; color: #24633b; }
body.has-airport-wizard #booking.acw.acw--clear .vehicle-selection-rail { height: auto; min-height: 0; margin-top: 16px; }
body.has-airport-wizard #booking.acw.acw--clear .vehicle-selection-rail > span { padding: 10px; }
body.has-airport-wizard #booking.acw.acw--clear .vehicle-selection-rail strong,
body.has-airport-wizard #booking.acw.acw--clear .contact-trip-summary strong { font-size: 14px; line-height: 1.4; white-space: normal; overflow-wrap: anywhere; }
body.has-airport-wizard #booking.acw.acw--clear .vehicle-selection-rail small,
body.has-airport-wizard #booking.acw.acw--clear .contact-trip-summary small { font-size: 11px; }
body.has-airport-wizard #booking.acw.acw--clear .contact-details { grid-template-rows: auto auto; }
body.has-airport-wizard #booking.acw.acw--clear .contact-details__group { height: auto; }
body.has-airport-wizard #booking.acw.acw--clear .contact-methods__intro p { font-size: 13px; }
body.has-airport-wizard #booking.acw.acw--clear .booking-notes { height: auto; }
body.has-airport-wizard #booking.acw.acw--clear .booking-notes[open] { position: relative; height: auto; max-height: none; }
body.has-airport-wizard #booking.acw.acw--clear .booking-notes > summary { min-height: 48px; }
body.has-airport-wizard #booking.acw.acw--clear .booking-notes > summary span { font-size: 14px; }
body.has-airport-wizard #booking.acw.acw--clear .booking-notes > summary small { font-size: 12px; }
body.has-airport-wizard .mobile-book { line-height: 1.3; white-space: normal; text-align: center; }
@media (max-width: 767px) {
  body.has-airport-wizard #booking.acw.acw--clear .acw-body { padding: 14px; }
  body.has-airport-wizard #booking.acw.acw--clear .ac-route-row--primary { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: 14px; }
  body.has-airport-wizard #booking.acw.acw--clear .ac-route-primary-left { display: contents; }
  body.has-airport-wizard #booking.acw.acw--clear .ac-booking-card--passengers { order: 1; grid-column: 1; grid-row: 1; }
  body.has-airport-wizard #booking.acw.acw--clear .ac-booking-card--trip { order: 2; grid-column: 2; grid-row: 1; }
  body.has-airport-wizard #booking.acw.acw--clear .ac-booking-card--service { order: 3; grid-column: 1 / -1; grid-row: 2; }
  body.has-airport-wizard #booking.acw.acw--clear .ac-route-group__grid--schedule,
  body.has-airport-wizard #booking.acw.acw--clear .ac-booking-card--return .wgrid--nested { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  body.has-airport-wizard #booking.acw.acw--clear .datetime-control label { font-size: 12px; }
  body.has-airport-wizard #booking.acw.acw--clear .datetime-display { font-size: 14px; }
  body.has-airport-wizard #booking.acw.acw--clear .ac-route-group { padding: 14px; }
  body.has-airport-wizard #booking.acw.acw--clear .acw-panel[data-step="2"] > .wtitle { font-size: 26px; }
  body.has-airport-wizard #booking.acw.acw--clear .veh-grid { grid-template-columns: minmax(0,1fr); gap: 14px; }
  body.has-airport-wizard #booking.acw.acw--clear .veh { display: grid; grid-template-columns: minmax(90px,.7fr) minmax(0,1.3fr); }
  body.has-airport-wizard #booking.acw.acw--clear .veh__media { height: 100%; min-height: 150px; }
  body.has-airport-wizard #booking.acw.acw--clear .veh__body { padding: 13px; gap: 5px; }
  body.has-airport-wizard #booking.acw.acw--clear .veh__name { font-size: 20px; }
  body.has-airport-wizard #booking.acw.acw--clear .veh__hint { padding-top: 7px; }
  body.has-airport-wizard #booking.acw.acw--clear .veh__recommended { top: 8px; right: 4px; left: 4px; text-align: center; font-size: 9px; }
  body.has-airport-wizard #booking.acw.acw--clear .vehicle-selection-rail { display: none; }
  body.has-airport-wizard #booking.acw.acw--clear .wactions--conversion,
  body.has-airport-wizard #booking.acw.acw--clear .cta--conversion { grid-template-columns: minmax(0,1fr); gap: 10px; }
  body.has-airport-wizard #booking.acw.acw--clear .wactions--conversion .btn--primary,
  body.has-airport-wizard #booking.acw.acw--clear .cta--conversion #submitBtn { grid-row: 1; }
  body.has-airport-wizard #booking.acw.acw--clear .contact-trip-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.has-airport-wizard #booking.acw.acw--clear .contact-details { grid-template-columns: minmax(0,1fr); grid-template-rows: auto auto auto; }
  body.has-airport-wizard #booking.acw.acw--clear .contact-methods { grid-template-columns: minmax(0,1fr); }
  body.has-airport-wizard #booking.acw.acw--clear .ac-route-group__grid--schedule .is-reserved-hidden { display: none !important; }
  body.has-airport-wizard #booking.acw.acw--clear .booking-mobile-action { display: none !important; }
  body.has-airport-wizard .mobile-conversion-bar { display: grid; }
}
/* Match the more specific legacy color rules inside the schedule and summary. */
body.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule .ac-schedule-heading h4,
body.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule .field > label,
body.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule .datetime-control > label { color: #183b4b; }
body.has-airport-wizard #booking.acw.acw--clear .contact-trip-summary__total strong,
body.has-airport-wizard #booking.acw.acw--clear .contact-trip-summary__total small { color: #fff; }
body.has-airport-wizard #booking.acw.acw--clear .ac-booking-card--return.is-reserved-hidden { display: none !important; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-row--destination { grid-template-columns: minmax(0,1fr); }
body.has-airport-wizard #booking.acw.acw--clear .airport-disclosure { min-height: 44px; }
body.has-airport-wizard #booking.acw.acw--clear .veh__body { align-items: stretch; text-align: left; }
body.has-airport-wizard #booking.acw.acw--clear .veh__hint { text-align: left; justify-items: start; }
body.has-airport-wizard #booking.acw.acw--clear .veh__choice { width: 100%; }
body.has-airport-wizard #booking.acw.acw--clear .acw-main { max-height: none; }
body.has-airport-wizard #booking.acw.acw--clear .contact-trip-summary { display: grid; grid-template-columns: 1.2fr 1fr .8fr .7fr; border: 1px solid #cbdde0; border-radius: 12px; overflow: hidden; margin: 16px 0; background: #f5fafb; }
body.has-airport-wizard #booking.acw.acw--clear .contact-trip-summary > span { display: grid; min-width: 0; padding: 12px; gap: 5px; }
body.has-airport-wizard #booking.acw.acw--clear .contact-trip-summary__total { background: #183f51; }
body.has-airport-wizard #booking.acw.acw--clear .contact-details { display: grid; gap: 16px; }
body.has-airport-wizard #booking.acw.acw--clear .contact-details__group { padding: 18px; border: 1px solid #cfdee1; border-radius: 14px; background: #fff; color: #183b4b; }
body.has-airport-wizard #booking.acw.acw--clear .contact-details__group .contact-details__label,
body.has-airport-wizard #booking.acw.acw--clear .contact-details__group .field > label { color: #183b4b; }
body.has-airport-wizard #booking.acw.acw--clear .contact-details__label { font-size: 12px; }
body.has-airport-wizard #booking.acw.acw--clear .cta--conversion { display: block; }
body.has-airport-wizard #booking.acw.acw--clear .cta--conversion .acw-contact-actions,
body.has-airport-wizard #booking.acw.acw--clear .wactions--conversion { display: grid; grid-template-columns: minmax(130px,.5fr) minmax(0,1fr); gap: 12px; }
body.has-airport-wizard #booking.acw.acw--clear .cta--conversion .acw-contact-actions > .btn,
body.has-airport-wizard #booking.acw.acw--clear .wactions--conversion > .btn { width: 100%; min-width: 0; }
@media (max-width: 767px) {
  body.has-airport-wizard #booking.acw.acw--clear .contact-trip-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.has-airport-wizard #booking.acw.acw--clear .cta--conversion .acw-contact-actions,
  body.has-airport-wizard #booking.acw.acw--clear .wactions--conversion { grid-template-columns: minmax(0,1fr); }
  body.has-airport-wizard #booking.acw.acw--clear .cta--conversion .acw-contact-actions > .btn--primary,
  body.has-airport-wizard #booking.acw.acw--clear .wactions--conversion > .btn--primary { grid-row: 1; }
}

/* Intrinsic sizing: each control and card must fit its own column. */
body.has-airport-wizard #booking.acw.acw--clear :where(.field, .wcard, .ac-route-row, .ac-route-primary-left, .ac-route-group, .ac-route-group__grid, .contact-details, .contact-details__group, .contact-methods, .contact-method, .veh, .veh__body, .veh__hint, .wactions, .acw-contact-actions) {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}
body.has-airport-wizard #booking.acw.acw--clear .field { grid-template-columns: minmax(0,1fr); }
body.has-airport-wizard #booking.acw.acw--clear .field > label { min-width: 0; max-width: 100%; width: auto; white-space: normal; overflow-wrap: anywhere; }
body.has-airport-wizard #booking.acw.acw--clear .field :where(input:not([type="radio"]):not([type="checkbox"]), select, textarea) {
  min-width: 0;
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
}
body.has-airport-wizard #booking.acw.acw--clear .qty-stepper,
body.has-airport-wizard #booking.acw.acw--clear .ac-booking-card--passengers .qty-stepper { display: grid; width: 100%; min-width: 0; max-width: 100%; grid-template-columns: 36px minmax(36px,1fr) 36px; }
body.has-airport-wizard #booking.acw.acw--clear .qty-stepper__btn,
body.has-airport-wizard #booking.acw.acw--clear .ac-booking-card--passengers .qty-stepper__btn { width: 36px; min-width: 0; padding: 0; }
body.has-airport-wizard #booking.acw.acw--clear #passengers { appearance: textfield; padding: 0; text-align: center; }
body.has-airport-wizard #booking.acw.acw--clear #passengers::-webkit-inner-spin-button,
body.has-airport-wizard #booking.acw.acw--clear #passengers::-webkit-outer-spin-button { appearance: none; margin: 0; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-row--primary { display: grid; grid-template-columns: minmax(108px,.65fr) minmax(0,1fr); gap: 14px; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-primary-left { display: contents; }
body.has-airport-wizard #booking.acw.acw--clear .ac-booking-card--passengers { grid-column: auto; grid-row: auto; order: 1; }
body.has-airport-wizard #booking.acw.acw--clear .ac-booking-card--trip { grid-column: auto; grid-row: auto; order: 2; }
body.has-airport-wizard #booking.acw.acw--clear .ac-booking-card--service { grid-column: 1 / -1; grid-row: auto; order: 3; }
body.has-airport-wizard #booking.acw.acw--clear .toggle { min-width: 0; width: 100%; }
body.has-airport-wizard #booking.acw.acw--clear .toggle label { min-width: 0; flex: 1 1 0; }
body.has-airport-wizard #booking.acw.acw--clear .toggle label span { min-width: 0; white-space: normal; overflow-wrap: normal; padding-inline: 5px; }
body.has-airport-wizard #booking.acw.acw--clear .datetime-control { min-width: 0; max-width: 100%; }
body.has-airport-wizard #booking.acw.acw--clear .contact-trip-summary { height: auto; min-height: 0; flex: 0 0 auto; grid-auto-rows: auto; }
body.has-airport-wizard #booking.acw.acw--clear .contact-trip-summary > span { min-width: 0; min-height: 0; height: auto; }
body.has-airport-wizard #booking.acw.acw--clear .contact-trip-summary :where(strong,small),
body.has-airport-wizard #booking.acw.acw--clear .ac-route-live-summary :where(strong,small),
body.has-airport-wizard #booking.acw.acw--clear .vehicle-selection-rail :where(strong,small),
body.has-airport-wizard #booking.acw.acw--clear .selected-pill__copy,
body.has-airport-wizard #booking.acw.acw--clear .selected-pill__copy :where(strong,span) { min-width: 0; white-space: normal; overflow-wrap: anywhere; text-overflow: clip; }
body.has-airport-wizard #booking.acw.acw--clear .selected-pill { height: auto; min-height: 54px; max-height: none; }
body.has-airport-wizard #booking.acw.acw--clear .selected-pill__copy { flex: 1 1 0; }
body.has-airport-wizard #booking.acw.acw--clear #hotel_clear_btn { flex: 0 0 auto; }
body.has-airport-wizard #booking.acw.acw--clear .contact-details { grid-template-rows: auto; grid-auto-rows: auto; align-items: start; }
body.has-airport-wizard #booking.acw.acw--clear .booking-notes,
body.has-airport-wizard #booking.acw.acw--clear .booking-notes[open] { position: static; inset: auto; grid-row: auto; min-width: 0; max-width: 100%; height: auto; max-height: none; }
body.has-airport-wizard #booking.acw.acw--clear .booking-notes[open] textarea { min-height: 110px; max-height: none; resize: vertical; }
body.has-airport-wizard #booking.acw.acw--clear .veh__hint,
body.has-airport-wizard #booking.acw.acw--clear .veh__price-line,
body.has-airport-wizard #booking.acw.acw--clear .veh__choice { min-width: 0; max-width: 100%; }
body.has-airport-wizard #booking.acw.acw--clear .veh__price-line { flex-wrap: wrap; }
body.has-airport-wizard #booking.acw.acw--clear :where(.veh__name, .veh__meta, .veh__luggage, .vehPromo, .veh__choice, .btn) { overflow-wrap: anywhere; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-cta > span { min-width: 0; max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 1100px) {
  body.has-airport-wizard #booking.acw.acw--clear .contact-details { grid-template-columns: minmax(0,1fr); }
  body.has-airport-wizard #booking.acw.acw--clear .contact-methods { grid-template-columns: minmax(0,1fr); }
  body.has-airport-wizard #booking.acw.acw--clear .contact-trip-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 380px) {
  body.has-airport-wizard #booking.acw.acw--clear .ac-route-group__grid--schedule,
  body.has-airport-wizard #booking.acw.acw--clear .ac-booking-card--return .wgrid--nested { grid-template-columns: minmax(0,1fr); }
  body.has-airport-wizard #booking.acw.acw--clear .veh { grid-template-columns: minmax(0,1fr); }
  body.has-airport-wizard #booking.acw.acw--clear .veh__media { height: 150px; min-height: 150px; }
  body.has-airport-wizard #booking.acw.acw--clear .veh__recommended { right: 8px; left: auto; }
}
body.has-airport-wizard #booking.acw.acw--clear #field_passengers { min-width: 0; width: 100%; }
body.has-airport-wizard #booking.acw.acw--clear .vehicle-selection-rail { display: grid; height: auto; min-height: 0; flex: 0 0 auto; grid-template-columns: repeat(auto-fit,minmax(min(100%,150px),1fr)); gap: 10px; }
body.has-airport-wizard #booking.acw.acw--clear .vehicle-selection-rail > span { display: grid; min-width: 0; height: auto; gap: 5px; }
body.has-airport-wizard #booking.acw.acw--clear .estimate__line { grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); }
body.has-airport-wizard #booking.acw.acw--clear .estimate__line > span,
body.has-airport-wizard #booking.acw.acw--clear .estimate__line > strong { min-width: 0; white-space: normal; overflow-wrap: anywhere; }
body.booking-page.has-airport-wizard #booking.acw.acw--clear .ac-route-cta { display: grid; grid-template-columns: minmax(0,1fr); gap: 14px; }
body.booking-page.has-airport-wizard #booking.acw.acw--clear .ac-route-live-summary { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,150px),1fr)); gap: 12px; }
body.booking-page.has-airport-wizard #booking.acw.acw--clear .ac-route-live-summary > span { display: grid; gap: 5px; min-width: 0; }
body.booking-page.has-airport-wizard #booking.acw.acw--clear .ac-route-summary-heading { width: auto; min-width: 0; }
@media (max-width: 767px) {
 body.has-airport-wizard #booking.acw.acw--clear .vehicle-selection-rail { display: none; }
}

/* Let content determine height, including expanded notes and validation. */
body.home-page.has-airport-wizard .home-hero,
body.home-page.has-airport-wizard .home-hero__content { min-height: 0; }
body.has-airport-wizard #booking.acw.acw--clear .acw-route { height: auto; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-live-summary small { font-size: 11px; letter-spacing: .04em; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-live-summary strong { font-size: 14px; line-height: 1.4; }
body.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule .ac-schedule-heading { border-color: #d6e3e5; }
body.has-airport-wizard #booking.acw.acw--clear #leadPassengerSection { background: #fff; border-color: #cfdee1; color: #183b4b; box-shadow: none; }
body.has-airport-wizard #booking.acw.acw--clear #leadPassengerSection .contact-details__label,
body.has-airport-wizard #booking.acw.acw--clear #leadPassengerSection .field > label { color: #183b4b; }
body.has-airport-wizard #booking.acw.acw--clear .inline-error { font-size: 13px; line-height: 1.45; }
body.has-airport-wizard #booking.acw.acw--clear .acw-vehicle-status:has(.inline-error[style*="display: block"], .help[style*="display: block"]) { position: static; max-width: 100%; margin: 12px 0; }
/* Keep the details and dates usable at intermediate desktop widths. */
@media (min-width: 901px) {
  body.home-page.has-airport-wizard #booking.acw.acw--clear .acw-route { grid-template-columns: minmax(0,1fr) minmax(0,1fr); grid-template-rows: auto auto; gap: 16px; }
  body.home-page.has-airport-wizard #booking.acw.acw--clear .ac-route-group--journey { grid-column: 1; grid-row: 1 / 3; }
  body.home-page.has-airport-wizard #booking.acw.acw--clear .ac-route-group--schedule { grid-column: 2; grid-row: 1; }
  body.home-page.has-airport-wizard #booking.acw.acw--clear .ac-route-group__grid--schedule,
  body.home-page.has-airport-wizard #booking.acw.acw--clear .ac-booking-card--return .wgrid--nested { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.home-page.has-airport-wizard #booking.acw.acw--clear .acw-route > .wactions { grid-column: 2; grid-row: 2; height: auto; grid-template-columns: minmax(0,1fr); grid-template-rows: auto auto auto; align-items: center; }
  body.home-page.has-airport-wizard #booking.acw.acw--clear .ac-route-summary-heading { grid-column: 1 / -1; padding-bottom: 10px; }
  body.home-page.has-airport-wizard #booking.acw.acw--clear .ac-route-live-summary { grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-rows: auto auto; gap: 12px; border: 0; background: transparent; }
  body.home-page.has-airport-wizard #booking.acw.acw--clear .ac-route-live-summary > span { padding: 0; border: 0; align-content: start; }
  body.home-page.has-airport-wizard #booking.acw.acw--clear .ac-route-live-summary > span:first-child { border-left: 0; padding-left: 0; }
  body.home-page.has-airport-wizard .home-hero__content { padding-bottom: 40px; }
}
/* A summary row needs room for both its label and value. */
body.has-airport-wizard #booking.acw.acw--clear .acw-summary .estimate { grid-template-columns: minmax(0,1fr); }
body.has-airport-wizard #booking.acw.acw--clear .acw-summary .estimate__line { grid-column: 1 / -1; grid-template-columns: minmax(90px,.8fr) minmax(0,1.2fr); align-items: start; }
body.has-airport-wizard #booking.acw.acw--clear .acw-summary .estimate__line > span:first-child { font-size: 11px; overflow-wrap: normal; }
body.has-airport-wizard #booking.acw.acw--clear .acw-summary .estimate__line strong { font-size: 13px; line-height: 1.4; }
body.has-airport-wizard #booking.acw.acw--clear .acw-summary .estimate__line--total { align-items: center; }
@media (min-width: 768px) {
  body.has-airport-wizard #booking.acw.acw--clear .veh__media { height: 220px; min-height: 220px; }
}
@media (min-width: 768px) and (max-width: 1100px) {
  body.booking-page.has-airport-wizard #booking.acw.acw--clear .acw-shell { grid-template-columns: minmax(0,1fr); }
  body.booking-page.has-airport-wizard #booking.acw.acw--clear .acw-summary { position: static; width: 100%; }
}
@media (min-width: 360px) and (max-width: 767px) {
  body.has-airport-wizard #booking.acw.acw--clear .ac-route-row--primary { grid-template-columns: minmax(108px,.65fr) minmax(0,1fr); gap: 12px; }
}
body.has-airport-wizard #booking.acw.acw--clear .toggle label { padding: 7px 2px; }
body.has-airport-wizard #booking.acw.acw--clear .toggle label span { padding-inline: 2px; }
body.has-airport-wizard #booking.acw.acw--clear #submitBtn { border-radius: 13px; }
body.has-airport-wizard #booking.acw.acw--clear .contact-details__group + .contact-details__group { padding: 18px; }
@media (min-width: 600px) {
  body.has-airport-wizard #booking.acw.acw--clear .contact-methods { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (min-width: 901px) {
  body.has-airport-wizard #booking.acw.acw--clear .contact-details { grid-template-columns: minmax(180px,1fr) minmax(0,2fr); }
  body.has-airport-wizard #booking.acw.acw--clear .contact-trip-summary { grid-template-columns: 1.2fr 1fr .8fr .7fr; }
}

@media (max-width: 359px) {
  body.has-airport-wizard #booking.acw.acw--clear .ac-route-row--primary { grid-template-columns: minmax(0,1fr); }
}
body.has-airport-wizard #booking.acw.acw--clear .acw-summary .estimate__line { justify-content: space-between; }
@media (min-width: 768px) {
  body.has-airport-wizard #booking.acw.acw--clear #hotel_results.is-open { max-width: 100%; }
}
