/* Homepage entry is the same native form that continues into the full journey. */
.booking-entry-panel [data-hat-booking] { color:var(--ink); }
.hat-entry-step { color:var(--brand-text); font-size:11px; font-weight:600; margin:0 0 14px; }
.hat-booking-expanded .hat-entry-step { display:none; }
.booking-entry-panel [data-hat-booking] [data-hat-core]>[role="status"] { padding:10px 12px; margin:0 0 18px; font-size:11px; line-height:1.55; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-tab.ui-tabs { border:0; padding:0; box-shadow:none; }
.booking-entry-panel.hat-booking-mounted:not(.hat-booking-expanded) .chbs-main-navigation-default,
.booking-entry-panel.hat-booking-mounted:not(.hat-booking-expanded) .chbs-main-navigation-responsive { display:none; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main-content { margin-top:0; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-form-label-group { padding:12px 0 8px; font-size:10px; letter-spacing:.8px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-form-field { padding:0; border:0; margin:0 0 14px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-form-field>label { display:block; margin:0 0 6px; font-size:12px; font-weight:500; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-form-field:focus-within { box-shadow:none; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-form-field input:not([type="checkbox"]):not([type="radio"]),
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-form-field .ui-selectmenu-button { min-height:48px; padding:10px 12px; line-height:26px; border:1px solid var(--hat-field-line); border-radius:7px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-form-field-pickup-date-time>.chbs-form-field-width-50,
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-form-field-passenger>.chbs-form-field-width-50 { width:calc(50% - 6px); float:left; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] :is(.chbs-form-field-pickup-date-time,.chbs-form-field-passenger)>.chbs-form-field-width-50:first-child { margin-right:12px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main-content-navigation-button { margin-top:20px; }
.booking-entry-panel [data-hat-booking] .chbs-button-step-next { width:100%; text-align:center; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-layout-column-right { margin-top:16px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-google-map { height:220px; margin-bottom:12px; overflow:hidden; }
/* Native sizing writes an inline inner height. Bound that canvas to its disclosed frame. */
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-google-map>#chbs_google_map { height:100%!important; max-height:100%; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-ride-info { display:flex; margin-top:0; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-ride-info>div { display:block; flex:1; min-width:0; width:50%; padding:12px 6px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-ride-info>div>span { margin-top:4px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-ride-info>div>span:first-child { display:none; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-ride-info>div>span:last-child { font-size:16px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-location-add { top:28px; right:6px; width:40px; height:40px; line-height:38px; font-size:23px; border:0; border-radius:5px; }
.hat-map-disclosure { display:flex; align-items:center; justify-content:space-between; width:100%; min-height:44px; background:#fff; border:0; border-top:1px solid var(--line); margin:0 0 10px; padding:10px 0; color:var(--brand-text); font-size:12px; font-weight:600; }
.hat-map-disclosure[hidden] { display:none; }
.hat-map-disclosure::after { content:'+'; font-size:21px; font-weight:400; }
.hat-map-disclosure[aria-expanded="true"]::after { content:'−'; }
.motion-hero:has(.hat-booking-expanded) .motion-grid { grid-template-columns:minmax(0,1fr); max-width:1384px; }
.motion-hero .booking-entry-panel.hat-booking-expanded { max-width:none; }
.motion-hero:has(.hat-booking-expanded) .motion-copy { padding-top:0; }
.motion-hero:has(.hat-booking-expanded) .motion-copy h1 { font-size:44px; margin:12px 0; }
.motion-hero:has(.hat-booking-expanded) .motion-copy .stage-line,
.motion-hero:has(.hat-booking-expanded) .motion-copy>.text-link { display:none; }
.booking-entry-panel.hat-booking-expanded { scroll-margin-top:30px; }
@media(max-width:600px) {
 .motion-hero:has([data-hat-booking]) .motion-copy h1 { font-size:clamp(43px,12vw,58px); margin:14px 0 18px; }
 .motion-hero:has([data-hat-booking]) .stage-line { margin-top:18px; }
 .booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-form-field>label { font-size:11px; }
 .booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-form-field-pickup-date-time input { padding-inline:8px; }
}
/* Native service choice stays available, secondary to the airport direction. */
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-tab.ui-tabs .ui-tabs-nav { background:transparent; padding:0; gap:16px; flex-wrap:nowrap; border-radius:0; border-bottom:1px solid var(--hat-field-line); margin-bottom:18px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-tab.ui-tabs .ui-tabs-nav>li { flex:1 1 0; width:auto!important; min-width:0; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-tab.ui-tabs .ui-tabs-nav>li>a { min-height:44px; padding:10px 0; font-size:12px; border-radius:0; background:transparent; color:#76637c; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-tab.ui-tabs .ui-tabs-nav>li.ui-tabs-active>a { color:#382b42; box-shadow:inset 0 -2px var(--amber); }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] #panel-1:has([data-hat-airport-controls])>.chbs-form-label-group:first-of-type { display:none; }
/* Return's native date/time appear only when Quantica selects Return (new ride). */
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-form-field-return-date-time>.chbs-form-field-width-50 { width:calc(50% - 6px); float:left; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-form-field-return-date-time>.chbs-form-field-width-50:first-child { margin-right:12px; }

/* Compact entry spacing; preserve visible labels, validation and 44px targets. */
.booking-entry-panel:not(.hat-booking-expanded) .hat-entry-step { margin-bottom:8px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .hat-trip-choices { margin-bottom:10px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] [data-hat-airport-controls] { margin-bottom:10px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] [data-hat-airport-controls]>[role="group"]:has([data-hat-direction]) { margin-bottom:10px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] [data-hat-terminal] { min-height:44px; padding-block:6px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] [data-hat-airport-status] { margin-top:6px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-form-field { margin-bottom:10px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-form-field>label { margin-bottom:4px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-form-field input:not([type="checkbox"]):not([type="radio"]),
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-form-field .ui-selectmenu-button,
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-form-field select.hat-time-select { min-height:44px; padding-block:8px; line-height:26px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-form-label-group { padding-top:6px; padding-bottom:6px; }
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main-content-navigation-button { margin-top:12px; }
.booking-entry-panel:not(.hat-booking-expanded) .hat-map-disclosure { margin-bottom:4px; padding-block:6px; }

/* Compact spacing without removing entered details or native controls. */
.booking-entry-panel:not(.hat-booking-expanded) .booking-heading{margin-bottom:12px}
.booking-entry-panel:not(.hat-booking-expanded) .booking-heading h2{font-size:clamp(25px,2vw,30px)}
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-main .chbs-form-field{margin-bottom:8px}
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-form-label-group{padding-block:3px}
.booking-entry-panel:not(.hat-booking-expanded) .chbs-ride-info>div{padding-block:8px}
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] [data-hat-core]>[role=status]{margin-bottom:8px;padding-block:6px}

/* The entry form stays concise; native routing and later-step summaries remain intact. */
.booking-entry-panel [data-hat-booking] .chbs-main-content-step-1 :is(.chbs-google-map,.chbs-ride-info),
.booking-entry-panel .hat-map-disclosure{display:none!important}
.booking-entry-panel:not(.hat-booking-expanded) [data-hat-booking] .chbs-layout-column-right{margin-top:0}

/* Compact booking entry: one heading row and native-backed passenger controls. */
.booking-entry-panel:not(.hat-booking-expanded) .booking-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.booking-entry-panel:not(.hat-booking-expanded) .booking-heading>.section-kicker{display:none}
.booking-entry-panel:not(.hat-booking-expanded) .booking-heading h2{font-size:clamp(21px,2vw,25px);margin:0;line-height:1.2}
.booking-entry-panel:not(.hat-booking-expanded) .booking-heading .hat-entry-step{flex-shrink:0;margin:0;font-size:10px;white-space:nowrap}
.booking-entry-panel .hat-count-heading{display:none!important}
.booking-entry-panel .chbs-main .hat-count-field>input,
.booking-entry-panel .chbs-main .hat-count-field>select,
.booking-entry-panel .chbs-main .hat-count-field>.ui-selectmenu-button{display:none!important}
.booking-entry-panel .hat-count-stepper{display:flex;align-items:center;min-height:46px;border:1px solid var(--hat-field-line);border-radius:7px;padding:0 3px;background:#fff}
.booking-entry-panel .hat-count-stepper output{flex:1;min-width:20px;text-align:center;font-size:16px;color:var(--ink)}
.booking-entry-panel .chbs-main .hat-count-stepper button{width:32px;min-width:32px;height:44px;padding:0;border:0;border-radius:5px;background:transparent;color:var(--deep);font:20px/1 Manrope,Arial,sans-serif}
.booking-entry-panel .hat-count-stepper button:hover{background:#eee8f0}
.booking-entry-panel .hat-count-stepper button:disabled{opacity:.35;cursor:default}
.booking-entry-panel:not(.hat-booking-expanded) #panel-1:not([aria-hidden=true]){display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));column-gap:8px}
.booking-entry-panel:not(.hat-booking-expanded) #panel-1>*{grid-column:1 / -1;min-width:0}
.booking-entry-panel:not(.hat-booking-expanded) #panel-1>[data-hat-flight-entry]{grid-column:span 2}
.booking-entry-panel:not(.hat-booking-expanded) #panel-1>.chbs-form-field-passenger{display:contents}
.booking-entry-panel:not(.hat-booking-expanded) #panel-1 .chbs-form-field-passenger>.chbs-form-field{grid-column:span 2;width:auto!important;float:none;margin-right:0!important;min-width:0}
.booking-entry-panel:not(.hat-booking-expanded) #panel-1 [data-hat-flight-entry]>label{font-size:0!important;line-height:18px}
.booking-entry-panel:not(.hat-booking-expanded) #panel-1 [data-hat-flight-entry]>label::before{content:'Flight no.';font-size:11px}
.booking-entry-panel:not(.hat-booking-expanded) #panel-1 [data-hat-flight-entry]:has(input:required)>label::before{content:'Flight no. *'}
.booking-entry-panel:not(.hat-booking-expanded) .chbs-main-content-navigation-button{margin-top:4px!important;padding-top:0!important}
.booking-entry-panel:not(.hat-booking-expanded) .chbs-main-content-step-1>.chbs-layout-50x50>.chbs-layout-column-right{display:none}
@media(max-width:380px){.booking-entry-panel:not(.hat-booking-expanded) .booking-heading{align-items:flex-start}.booking-entry-panel:not(.hat-booking-expanded) .booking-heading h2{max-width:210px}.booking-entry-panel:not(.hat-booking-expanded) #panel-1>[data-hat-flight-entry]{grid-column:1 / -1}.booking-entry-panel:not(.hat-booking-expanded) #panel-1 .chbs-form-field-passenger>.chbs-form-field{grid-column:span 3}}
.booking-entry-panel:not(.hat-booking-expanded) #panel-1::before,
.booking-entry-panel:not(.hat-booking-expanded) #panel-1::after,
.booking-entry-panel:not(.hat-booking-expanded) #panel-1>.chbs-form-field-passenger::before,
.booking-entry-panel:not(.hat-booking-expanded) #panel-1>.chbs-form-field-passenger::after{display:none}
.booking-entry-panel:not(.hat-booking-expanded) #panel-1 :is([data-hat-flight-entry],.hat-count-field)>label{display:flex;align-items:center;height:18px;line-height:18px!important}
/* Native left-column clearance otherwise leaves 40px above the entry CTA. */
.booking-entry-panel:not(.hat-booking-expanded) .chbs-main-content-step-1 > .chbs-layout-50x50 > .chbs-layout-column-left { margin-bottom:0!important; }
.booking-entry-panel:not(.hat-booking-expanded) .chbs-main-content-navigation-button > .chbs-button-step-next { margin-top:8px!important; }
