/* Desktop enquiry reuses Hourly's approved Data composition. */
.long-term-request[hidden] { display:none!important; }
@media(min-width:721px){
  body.long-term-request-active > :not(.long-term-request):not(.lang):not(#pixkuy-legal-overlay):not(script):not(style):not(link):not(.consent-banner):not(.consent-preferences) { display:none!important; }
  .long-term-request .form-grid > .form-field { display:block!important; }
  .long-term-request .form-grid > .long-term-request__legal { display:block!important;grid-column:1/-1; }
  .long-term-request label { display:block;margin-bottom:6px; }
  .long-term-request .form-field:first-child { grid-column:1/-1; }
  .long-term-request .airport-booking__primary { width:100%; }
  .long-term-request .hourly-booking__form > .airport-booking__primary { border-radius:999px; }
  .long-term-request__steps.airport-booking__progress { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .long-term-request__steps.airport-booking__progress li:not(:last-child)::after { left:24px;width:calc(100% - 24px); }
  .long-term-request .airport-booking__actions .airport-booking__primary { width:auto;margin-top:0; }
  .long-term-request__status { white-space:pre-wrap; }
  .long-term-request__steps--config { margin:0 0 20px; }
  /* Configuration sits inside .services: its generic li/span rules must not
     override the approved progress component or paint opaque label blocks. */
  .long-term-request__steps--config > li { display:flex;align-items:center;gap:8px;margin:0;font-size:1rem; }
  .long-term-request__steps--config .airport-booking__step-content { display:inline-flex;background:transparent; }
  .long-term-request__steps--config .airport-booking__step-marker { display:inline-grid; }
  .long-term-request__steps--config.airport-booking__progress li:not(:last-child)::after { position:static;flex:1;left:auto;top:auto;width:auto;margin-right:8px; }
}
@media(max-width:720px){
  .long-term-request__steps--config { display:none!important; }
  .hourly-mobile-route [data-services-hourly-mode-active="custom_long_term"] .services-hourly-panel__price--inline { display:none!important; }
  /* Same document scroller as approved Hourly Data; configuration keeps its
     existing bounded route. No keyboard-height spacer or forced input focus. */
  html:has(body.long-term-request-active[data-hourly-mobile-screen="true"]) { height:auto;min-height:100%;overflow:visible;overscroll-behavior:auto;scroll-padding-top:calc(60px + env(safe-area-inset-top)); }
  body.long-term-request-active[data-hourly-mobile-screen="true"],
  .hourly-mobile-route:has([data-long-term-step]) { position:relative;inset:auto;height:auto;min-height:100svh;overflow:visible;overscroll-behavior:auto;touch-action:auto; }
  body.long-term-request-active > :not(.hourly-mobile-route):not(.mobile-topbar):not(.mobile-topbar-menu):not(.lang):not(#pixkuy-legal-overlay):not(script):not(style):not(link):not(.consent-banner):not(.consent-preferences) { display:none!important; }
  .hourly-mobile-route:has([data-long-term-step]) .hourly-mobile-route__screen,
  .hourly-mobile-route__content[data-long-term-step] { height:auto;min-height:0;overflow:visible;overscroll-behavior:auto; }
  [data-long-term-step] #services-expand-hourly { display:none!important; }
  .long-term-request.hourly-booking--mobile { padding:0; }
  .long-term-request .airport-booking__step-caption { display:none; }
  .long-term-request h1 { font-size:20px;margin:6px 0 12px; }
  .long-term-request h2 { font-size:14px;margin:8px 0; }
  .long-term-request__steps.airport-booking__progress { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;padding:0;margin:12px 0;color:var(--muted); }
  .long-term-request__steps li { position:relative;min-width:0; }
  .long-term-request__steps li:not(:last-child)::after { content:"";position:absolute;top:12px;left:24px;width:calc(100% - 24px);height:1px;background:#515859; }
  .long-term-request__steps .airport-booking__step-content { display:flex;flex-direction:column;align-items:flex-start;gap:6px;position:relative;z-index:1; }
  .long-term-request__steps .airport-booking__step-marker { display:inline-grid;place-items:center;width:24px;height:24px;box-sizing:border-box;border:1px solid #6e7677;border-radius:50%;font-size:12px;background:var(--bg); }
  .long-term-request__steps .airport-booking__step-label { font-size:12px; }
  .long-term-request__steps .is-complete .airport-booking__step-marker { border-color:var(--accent);color:var(--accent); }
  .long-term-request__steps .is-complete::after { background:var(--accent); }
  .long-term-request__steps .is-current .airport-booking__step-marker { border-color:var(--accent);background:var(--accent);color:#0f1113; }
  .long-term-request .form-grid > .form-field { display:grid!important; }
  .long-term-request .form-grid > .long-term-request__legal { display:block!important; }
  .long-term-request [data-hourly-booking-field] input { width:100%;box-sizing:border-box; }
  .long-term-request .hourly-booking__form > .airport-booking__primary { width:100%;min-height:44px;margin:6px 0 0;padding:0 16px;border:0;border-radius:9px;background:rgba(31,122,109,.86);color:rgba(255,249,238,.98);font-size:14px;font-weight:800; }
  .long-term-request .hourly-booking__form > .airport-booking__primary:disabled { background:rgba(255,245,228,.14);color:rgba(255,245,228,.38); }
  .long-term-request__status { white-space:pre-wrap;font-size:12px; }
  .long-term-request .airport-booking__actions { display:flex;flex-direction:column;gap:10px; }
  .long-term-request .airport-booking__actions > * { justify-content:center;width:100%;box-sizing:border-box;margin:0; }
  .long-term-request .airport-booking__icon { display:inline-flex;flex:0 0 18px;width:18px;height:18px; }
  .long-term-request .airport-booking__icon svg { display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round; }
  .long-term-request .airport-booking__actions .airport-booking__link { gap:8px; }
  .long-term-request .airport-booking__actions button.airport-booking__link,
  .long-term-request .airport-booking__contact-action { border:1px solid #505758;border-radius:7px; }
}
