/* Home only: a quiet hero, a separate booking surface, and a visible fleet. */
.home-refresh .immersive-hero{border-bottom:0}
.home-refresh .hero-layout{display:flex;align-items:center;min-height:280px;padding-block:32px;width:calc(100% - 80px);max-width:1240px}
.home-refresh .hero-intro{width:360px;max-width:100%;margin-left:auto;padding:0;text-align:right}
.home-refresh .hero-kicker{font-size:12px;font-weight:500;letter-spacing:.09em;margin-bottom:10px}
.home-refresh .hero-intro h1{font-size:clamp(36px,3vw,44px);font-weight:400;max-width:100%;line-height:1.12;letter-spacing:-.025em;text-shadow:0 1px 7px #102a4340}
.home-refresh .hero-intro h1 br,.home-refresh .hero-lead br{display:initial}
.home-refresh .hero-lead{font-size:18px;font-weight:400;line-height:1.45;margin:13px 0 0 auto;max-width:340px}
.home-refresh .hero-personal{display:none}
.home-refresh .hero-shade{background:linear-gradient(270deg,#132b43bd 0%,#132b4375 36%,#132b431a 75%,#132b430a),linear-gradient(0deg,#132b4314,transparent 40%)}
.home-refresh .scene-van img{width:100%;object-position:center 58%}
.home-refresh .scene-coast img{object-position:center 64%}
.home-refresh .scene-tulum img{object-position:center 48%}
.home-refresh .hero-slider-bar{display:none!important}
.home-refresh .booking-dock{padding:30px 0 34px;background:#f1f4f7;border-bottom:1px solid #dce1e6}
.home-refresh .booking-dock>.wrap{max-width:1240px}
.home-refresh .booking-card{padding:25px 28px;border:1px solid #d4dde5;border-radius:14px;box-shadow:0 8px 24px #26374a08;scroll-margin-top:112px}
.home-refresh .booking-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:19px}
.home-refresh .booking-heading h2{font-size:25px;line-height:1.3;margin:0}
.home-refresh .booking-heading>p{font-size:17px;line-height:1.5;margin:0;color:#526478}
.home-refresh .service-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.home-refresh .service-options button{min-height:58px;justify-content:center;font-size:18px;line-height:1.25;padding:12px;gap:10px;text-align:center}
.home-refresh .service-options button>span{min-width:0;overflow-wrap:normal;word-break:normal}
.home-refresh .service-options button[aria-pressed=true]{background:#26374a;color:#fff;border-color:#26374a;box-shadow:none}
.home-refresh .booking-controls{display:grid;grid-template-columns:minmax(240px,.95fr) minmax(270px,1.05fr) minmax(260px,1fr);align-items:center;gap:20px;margin-top:21px;padding-top:21px;border-top:1px solid #e1e7ec}
.home-refresh .booking-controls #airport-options>.field-title{position:absolute;overflow:hidden;clip:rect(0,0,0,0);width:1px;height:1px;margin:-1px;padding:0;border:0}
.home-refresh .booking-controls :is(.trip-options,.direction-options){gap:8px}
.home-refresh .booking-controls :is(.trip-options,.direction-options) button{min-height:50px;font-size:17px;line-height:1.3;padding:10px 8px}
.home-refresh .booking-controls #direction-options .field-title{margin:14px 0 8px;font-size:16px}
.home-refresh .booking-controls .route-hint{font-size:17px;line-height:1.5;margin:0;align-items:center;min-height:0}
.home-refresh .booking-controls .route-hint svg{width:22px;height:24px}
.home-refresh .booking-card .booking-cta{min-height:57px;font-size:18px;line-height:1.35;padding:14px 17px}
.home-refresh .booking-foot{font-size:15px;text-align:left;margin:14px 0 0}
.home-refresh .booking-controls:has(#airport-options[hidden]){grid-template-columns:minmax(0,1fr) minmax(280px,.65fr)}
.home-refresh .booking-controls [hidden]{display:none!important}
.home-refresh .hero-assurances>.wrap{padding-block:21px;gap:20px;max-width:1240px}
.home-refresh .hero-assurances span{font-size:17px;line-height:1.5}
.home-refresh .fleet-section{padding-block:66px 62px;background:#fff}
.home-refresh .fleet-section>.wrap{max-width:1240px}
.home-refresh .fleet-heading{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:30px}
.home-refresh .fleet-heading .eyebrow{color:#c5282e;font-size:14px;font-weight:700;letter-spacing:.12em;margin-bottom:12px}
.home-refresh .fleet-heading h2{font-size:38px;line-height:1.15;max-width:680px;margin:0}
.home-refresh .fleet-heading>p{font-size:18px;line-height:1.6;max-width:365px;margin:0}
.home-refresh .fleet-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;perspective:1200px}
.home-refresh .fleet-card{display:flex;flex-direction:column;position:relative;min-width:0;border:1px solid #d5dee6;border-radius:14px;background:#fff;overflow:hidden;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.home-refresh .fleet-card[hidden]{display:none!important}
.home-refresh .fleet-visual{position:relative;aspect-ratio:1.9;overflow:hidden;margin:18px 12px 0;background:#fff}
.home-refresh .fleet-visual img{display:block;position:absolute;bottom:0;left:0;width:100%;height:auto;max-width:none;transform-origin:50% 85%;transition:transform .5s cubic-bezier(.2,.7,.3,1)}
.home-refresh .fleet-copy{display:flex;flex-direction:column;align-items:flex-start;flex:1;padding:22px 21px}
.home-refresh .fleet-copy h3{font:700 24px/1.25 Arial,Helvetica,sans-serif;letter-spacing:-.025em;margin:0 0 13px}
.home-refresh .fleet-capacity{display:flex;align-items:flex-start;gap:9px;font-size:17px;font-weight:700;line-height:1.45;color:#36566e;min-height:50px;margin:0 0 12px}
.home-refresh .fleet-capacity svg{width:21px;height:23px;flex:none;margin-top:1px}
.home-refresh .fleet-copy>p:not(.fleet-capacity){font-size:17px;line-height:1.55;margin:0 0 18px}
.home-refresh .fleet-copy>a{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;font-size:17px;font-weight:700;line-height:1.4;color:#26374a;border-top:1px solid #e0e5ea;margin-top:auto;padding-top:17px;min-height:46px}
.home-refresh .fleet-copy>a:hover{color:#a41f28}
.home-refresh .fleet-copy>a svg{width:21px;height:21px;flex:none;transition:transform .2s ease}
.home-refresh .fleet-card:focus-within{border-color:#26374a;box-shadow:0 9px 26px #26374a12}
.home-refresh .fleet-note{font-size:16px;line-height:1.5;color:#5b6875;margin-top:20px}
@media(hover:hover) and (pointer:fine){.home-refresh .fleet-card:hover{transform:translateY(-6px);border-color:#8fa4b5;box-shadow:0 15px 30px #26374a12}.home-refresh .fleet-card:hover .fleet-visual img{transform:translateY(-3px) scale(1.025)}.home-refresh .fleet-card:hover .fleet-copy>a svg{transform:translateX(4px)}}
@keyframes fleet-enter{from{opacity:.5;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){.home-refresh .fleet-card.is-visible{animation:fleet-enter .65s cubic-bezier(.2,.7,.3,1) both}.home-refresh .fleet-card:nth-child(2){animation-delay:.08s}.home-refresh .fleet-card:nth-child(3){animation-delay:.16s}.home-refresh .fleet-card:nth-child(4){animation-delay:.24s}}
@media(min-width:1500px){.home-refresh .hero-layout{min-height:300px}}
@media(max-width:1100px){.home-refresh .hero-layout{min-height:260px;width:calc(100% - 48px)}.home-refresh .booking-controls{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);gap:18px}.home-refresh .booking-controls .route-hint{grid-column:1;grid-row:2}.home-refresh .booking-controls>.booking-cta{grid-column:2;grid-row:1/3}.home-refresh .booking-controls:has(#airport-options[hidden])>.booking-cta{grid-row:auto}.home-refresh .booking-controls:has(#airport-options[hidden])>.route-hint{grid-row:auto}.home-refresh .fleet-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.home-refresh .fleet-visual{max-width:390px;align-self:center;width:calc(100% - 28px)}.home-refresh .fleet-copy h3{font-size:26px}.home-refresh .fleet-capacity{min-height:0}.home-refresh .fleet-heading h2{font-size:34px}}
@media(max-width:780px){.home-refresh .hero-layout{min-height:230px;padding-block:24px;width:calc(100% - 40px);display:flex;align-items:center}.home-refresh .hero-intro{align-self:auto;width:340px;max-width:100%}.home-refresh .hero-intro h1{font-size:34px;max-width:100%;line-height:1.12}.home-refresh .hero-kicker{font-size:11px;margin-bottom:9px}.home-refresh .hero-lead{display:block;font-size:17px;line-height:1.45;margin-top:12px;max-width:330px}.home-refresh .hero-lead br{display:initial}.home-refresh .hero-shade{background:linear-gradient(270deg,#102a43ad,#102a4357 70%,#102a432e)}.home-refresh .booking-dock{padding:20px 0 24px}.home-refresh .booking-card{padding:22px 20px;scroll-margin-top:100px}.home-refresh .booking-heading{display:block;margin-bottom:17px}.home-refresh .booking-heading h2{font-size:25px}.home-refresh .booking-heading>p{font-size:17px;margin-top:6px}.home-refresh .service-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.home-refresh .service-options button{font-size:17px;min-height:56px;justify-content:flex-start;text-align:left;padding:11px;gap:9px}.home-refresh .booking-controls,.home-refresh .booking-controls:has(#airport-options[hidden]){grid-template-columns:1fr;gap:17px;margin-top:18px;padding-top:18px}.home-refresh .booking-controls :is(#airport-options,.route-hint,.booking-cta){grid-column:auto;grid-row:auto}.home-refresh .booking-controls :is(.trip-options,.direction-options){margin-top:0}.home-refresh .booking-controls .route-hint{font-size:17px;align-items:flex-start}.home-refresh .booking-controls .booking-cta{grid-column:auto;grid-row:auto}.home-refresh .booking-foot{text-align:center;font-size:15px}.home-refresh .hero-assurances>.wrap{grid-template-columns:1fr;padding-block:22px;gap:12px}.home-refresh .fleet-section{padding-block:42px}.home-refresh .fleet-heading{display:block;margin-bottom:25px}.home-refresh .fleet-heading h2{font-size:33px;line-height:1.2}.home-refresh .fleet-heading>p{margin-top:16px;max-width:none}.home-refresh .fleet-copy{padding:20px}.home-refresh .fleet-copy>p:not(.fleet-capacity){font-size:18px}.home-refresh .fleet-copy>a{font-size:18px;min-height:48px}.home-refresh .fleet-capacity{font-size:18px}}
@media(max-width:580px){.home-refresh .hero-layout{min-height:210px;padding-block:22px}.home-refresh .hero-intro h1{font-size:32px;max-width:100%}.home-refresh .hero-kicker{font-size:11px;letter-spacing:.08em}.home-refresh .hero-lead{font-size:16px;max-width:310px}.home-refresh .booking-dock>.wrap{width:calc(100% - 30px)}.home-refresh .booking-card{padding:20px 17px}.home-refresh .booking-heading h2{font-size:24px}.home-refresh .booking-heading>p{font-size:16px}.home-refresh .service-options button{font-size:17px;gap:8px}.home-refresh .service-options button svg{width:21px;height:21px}.home-refresh .booking-controls :is(.trip-options,.direction-options) button{font-size:17px}.home-refresh .fleet-grid{grid-template-columns:1fr;gap:20px}.home-refresh .fleet-visual{margin-top:16px;width:calc(100% - 32px);max-width:390px}.home-refresh .fleet-copy h3{font-size:27px}.home-refresh .fleet-capacity{min-height:0}.home-refresh .fleet-copy{padding:19px 23px 23px}.home-refresh .fleet-copy>p:not(.fleet-capacity){margin-bottom:17px}.home-refresh .fleet-note{font-size:16px}}
@media(max-width:360px){.home-refresh .hero-layout{min-height:200px;padding-block:20px;width:calc(100% - 32px)}.home-refresh .hero-intro h1{font-size:30px}.home-refresh .hero-lead{font-size:16px}.home-refresh .booking-heading h2{font-size:23px}.home-refresh .service-options button{font-size:16px;gap:6px;min-height:83px;padding:11px 9px;flex-direction:column;align-items:flex-start;justify-content:center}.home-refresh .service-options button svg{width:20px;height:20px}.home-refresh .booking-controls :is(.trip-options,.direction-options) button{font-size:16px;padding-inline:6px}.home-refresh .booking-card .booking-cta>span{font-size:17px}.home-refresh .fleet-heading h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.home-refresh .fleet-card,.home-refresh .fleet-visual img,.home-refresh .fleet-copy>a svg{animation:none!important;transition:none!important;transform:none!important}}
