/* Homepage layout corrections — 26 October 2026 */
.home-first .home-lead { display:flex; flex-direction:column; align-self:stretch; justify-content:center; }
.home-first .home-lead > .eyebrow { margin:0 0 12px; }
.home-first .hero-bottom-action { display:flex; flex-direction:row; align-items:center; justify-content:flex-start; width:100%; margin-top:18px; }
.home-first .hero-bottom-action .btn { border-radius:10px; min-height:52px; padding:14px 28px; }
/* Numbered form steps with aligned connector and no filled block behind the first circle. */
.home-first .step-progress { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; align-items:start; position:relative; margin:8px 0 26px; }
.home-first .step-progress:before { content:""; position:absolute; left:16.667%; right:16.667%; top:21px; height:2px; background:#cfdddc; opacity:1; }
.home-first .step-dot, .home-first .step-dot.active { background:transparent!important; border:0!important; box-shadow:none!important; color:#38565e!important; display:flex; flex-direction:column; align-items:center; gap:7px; min-height:72px; padding:0 5px!important; }
.home-first .step-dot:before { display:none!important; }
.home-first .step-count { position:relative; z-index:2; display:grid!important; place-items:center; flex:none; width:44px; height:44px; padding:0; border:2px solid #d1e3e2; border-radius:50%; background:#fff; color:#24474d!important; font:800 14px/1 Archivo,Arial,sans-serif; box-shadow:0 4px 14px #0d33331a; }
.home-first .step-dot.active .step-count { background:#173c41; color:#91eee0!important; border-color:#173c41; box-shadow:0 8px 20px #153b413b; }
.home-first .step-dot.is-complete .step-count { background:#3e6c6d;color:#fff!important;border-color:#3e6c6d; }
.home-first .step-label-text { font:700 12px/1.35 Archivo,Arial,sans-serif; color:#38565e; max-width:115px; }
.home-first .step-dot.active .step-label-text { color:#102e35; }
.home-first .step-button { border-radius:10px!important; min-height:46px; padding:12px 22px; font:700 13px/1 Archivo,Arial,sans-serif; }
.home-first .step-button.next { background:#3e696b!important; color:#fff; border-color:#3e696b; }
.home-first .step-button.back { background:#fff; border:1px solid #3e696b; color:#3e696b; }
.home-first .step-button:hover { transform:translateY(-2px); }
/* Distinct service card button, without changing submit button. */
.service-card .service-read-btn { min-height:42px; padding:11px 23px; border-radius:8px; font-size:12px; margin:6px auto 0; }
.service-card.tone-1 .service-read-btn,.service-card.tone-2 .service-read-btn { background:#fff; color:#224e50!important; }
.service-card.tone-1 .service-read-btn:hover,.service-card.tone-2 .service-read-btn:hover { background:#d1e6e2; }
.fleet-photo-link { display:flex; flex-direction:column; justify-content:center; align-items:center; text-decoration:none; gap:3px; cursor:pointer; }
.fleet-photo-link img { transition:transform .25s ease; }
.fleet-photo-link:hover img { transform:scale(1.025); }
.fleet-photo-hint { color:#3d6b6d; font:700 12px Archivo,Arial,sans-serif; }
/* Original white limousine + overlapping testimonial composition */
.airport-experience .spotlight-grid { display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:48px; align-items:start; }
.airport-experience-media { position:relative; min-height:615px; padding:0 0 60px 82px; }
.airport-experience-media>img { width:100%; height:560px; object-fit:cover; object-position:center 38%; border-radius:22px; }
.airport-experience-quote { position:absolute; left:0; bottom:0; width:min(420px,86%); padding:27px 26px 25px 53px; border-radius:15px; background:#fff; color:#101d23; font:italic 17px/1.65 Arial,sans-serif; box-shadow:0 8px 24px #00000014; margin:0; }
.airport-experience-quote:before { content:""; position:absolute; left:25px; top:25px; bottom:25px; width:3px; background:#3b6b6c; }
.airport-experience-copy h2 { font-family:Archivo,Arial,sans-serif; font-size:clamp(32px,3.6vw,51px); line-height:1.12; letter-spacing:-.025em; font-weight:750; margin:0 0 15px; }
.airport-experience-copy>p { font:400 16px/1.58 Arial,sans-serif; margin:0 0 18px; color:#101e24; }
.airport-experience-feature { display:grid; grid-template-columns:72px 1fr; gap:14px; align-items:start; margin-top:32px; }
.airport-feature-icon { width:71px; height:71px; border-radius:12px; display:grid; place-items:center; background:#0c2129; color:#fff; }
.airport-feature-car { background:#3e6e72; }
.airport-feature-icon svg { width:35px; height:35px; }
.airport-experience-feature h3 { font:700 22px/1.25 Arial,sans-serif; margin:0 0 5px; }
.airport-experience-feature p { font:400 16px/1.55 Arial,sans-serif; margin:0; }
.airport-experience-action { display:flex; justify-content:center; margin:30px 0 0; }
.airport-experience-btn { min-height:52px; border-radius:10px; padding:14px 30px; font-size:14px; }
@media(max-width:900px) {
  .airport-experience .spotlight-grid { grid-template-columns:1fr; gap:36px; }
  .airport-experience-media { max-width:600px; margin:auto; width:100%; min-height:0; padding-bottom:110px; }
  .airport-experience-media>img { height:500px; }
}
@media(max-width:560px) {
  .airport-experience-media { padding-left:26px; padding-bottom:100px; }
  .airport-experience-media>img { height:390px; }
  .airport-experience-quote { padding:18px 16px 18px 34px; width:92%; font-size:13px; line-height:1.55; }
  .airport-experience-quote:before { left:16px; top:18px; bottom:18px; }
  .airport-experience-feature { grid-template-columns:58px 1fr; gap:12px; }
  .airport-feature-icon { width:58px; height:58px; }
  .airport-feature-icon svg { width:29px; height:29px; }
  .airport-experience-feature h3 { font-size:19px; }
  .airport-experience-feature p { font-size:14px; }
  .home-first .step-label-text { font-size:10px; }
  .home-first .step-count { width:40px; height:40px; }
  .home-first .step-progress:before { top:19px; }
}
@media(prefers-reduced-motion:reduce) { .fleet-photo-link img, .home-first .step-button { transition:none!important; } }
