/* Compact brand lock-up and a calmer, larger desktop navigation. */
header .brand{align-items:center;gap:11px;flex-shrink:0}
header .brand-mark{width:50px;height:50px}
header .brand-type{align-items:center;justify-content:center}
header .brand-name{font-size:29px;line-height:1.04;letter-spacing:.14em;text-indent:.14em}
header .brand-sub{font-size:12px;line-height:1.15;letter-spacing:.26em;text-indent:.26em;margin-top:2px;text-align:center}
@media(min-width:1001px){header nav{font-family:var(--font-display);font-size:clamp(18px,1.4vw,21px);letter-spacing:.015em;gap:clamp(23px,2.4vw,40px)}header nav a{white-space:nowrap}}
@media(max-width:700px){header .brand-mark{width:42px;height:42px}header .brand-name{font-size:25px}header .brand-sub{font-size:10px;margin-top:2px}}
/* Keep the complete destination composition and its typography visible. */
.destination-photo{aspect-ratio:auto}
.destination-photo img{position:static;display:block;width:100%;height:auto;object-fit:contain}
.destination-photo>span{position:static;display:block;padding:12px 18px;background:transparent}
/* Fixed responsive fleet; retain the full, original vehicle proportions. */
.fleet-viewport{min-width:0}
.fleet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch}
.vehicle-card{display:flex;flex-direction:column}
.vehicle-image{flex-shrink:0}
.vehicle-image img{height:auto;aspect-ratio:2/1;object-fit:contain}
.vehicle-body{display:flex;flex-direction:column;flex:1}
.vehicle-select{margin-top:auto}
@media(min-width:1280px){.fleet-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}}
@media(max-width:700px){.fleet-grid{grid-template-columns:1fr;gap:24px}}
@media(min-width:1001px){
 .vehicle-heading{padding:22px 20px 0;gap:10px}
 .vehicle-heading h3{font-size:29px}
 .vehicle-brand{font-size:12px;letter-spacing:.09em}
 .vehicle-price strong{font-size:27px}
 .vehicle-price span{font-size:12px}
 .vehicle-image{margin-top:18px}
 .vehicle-body{padding:18px 20px 22px}
 .vehicle-capacity{font-size:13px;gap:5px 12px;padding-bottom:15px;min-height:68px;align-content:flex-start}
 .vehicle-body>p{font-size:15px;line-height:1.6;min-height:72px;margin:17px 0}
 .vehicle-strengths{font-size:14px;min-height:100px;margin-bottom:17px}
 .vehicle-select{font-size:14px;min-height:46px;padding:12px 14px}
}
.local-journeys{border-top:1px solid #ffffff18}
.local-introduction{color:var(--muted);max-width:760px;font-size:17px;margin-bottom:45px}
.local-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%}
.local-grid article{min-width:0;border-top:1px solid #c6ad7f66;padding-top:28px}
.local-grid h3{font-size:clamp(28px,2.7vw,39px);line-height:1.25;max-width:500px}
.local-grid h4{font:19px/1.4 var(--font-display);color:var(--white);margin:28px 0 12px}
.local-grid p{color:var(--muted);font-size:16px;line-height:1.8}
.local-grid .region-label{font-size:12px;letter-spacing:.18em;color:var(--gold);margin-bottom:17px}
.local-grid a.text-link{display:inline-block;color:var(--gold);margin-top:10px}
.weather-section{padding-top:0}
.weather-top{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:28px}
.weather-top h2{font-size:35px;margin:0}
.weather-top .eyebrow{margin-bottom:12px}
.weather-top>p{font-size:14px;color:var(--muted);margin:0}
.weather-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.weather-card{padding:26px 28px;background:linear-gradient(125deg,#172939a8,#08131d88);border:1px solid #c6ad7f44;min-height:200px}
.weather-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}
.weather-heading h3{font-size:29px;margin:0}
.weather-heading>span{font-size:12px;color:var(--gold);letter-spacing:.08em}
.weather-result{margin-top:18px;min-height:96px}
.weather-reading{display:flex;align-items:center;gap:20px}
.weather-reading strong{font:46px/1.1 var(--font-display);color:var(--white);white-space:nowrap}
.weather-description{font-size:15px;color:#e0e5e9;margin:0}
.weather-wind,.weather-date,.weather-status{font-size:13px;color:var(--muted);margin:7px 0 0}
.weather-status{font-size:14px}
.weather-card a{font-size:13px;color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.weather-credit{font-size:12px;color:var(--muted);margin:17px 0 0}
.weather-credit a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.weather-retry{font-size:13px;color:var(--gold);background:none;border:1px solid #c6ad7f50;cursor:pointer;padding:6px 12px;margin-top:12px}
.payment-methods{display:flex;align-items:center;justify-content:center;gap:25px;padding:24px 5%;border-top:1px solid #ffffff18;background:#08131d55}
.payment-logos{display:flex;align-items:center;gap:14px;list-style:none;margin:0;padding:0}
.payment-logos li{display:grid;place-items:center;width:83px;height:54px;background:#fff;border-radius:5px}
.payment-logos img{display:block;width:69px;height:43px;object-fit:contain}
.payment-logos .amex{width:43px;height:43px}
.visual-credits{font-size:12px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.local-grid,.weather-grid{grid-template-columns:1fr;gap:35px}.local-introduction{font-size:16px;margin-bottom:30px}.local-grid h3{font-size:30px}.weather-top{display:block}.weather-top>p{margin-top:14px}.weather-section{padding-top:0}.weather-card{padding:23px}.weather-heading h3{font-size:27px}.weather-reading strong{font-size:41px}.payment-methods{flex-direction:column;gap:15px;padding:25px 6%}.payment-logos{gap:12px}.weather-credit{line-height:1.8}}

/* A single gallery of champagne-gold service emblems, with native touch scrolling. */
.services .service-grid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:clamp(225px,23vw,285px);gap:0;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#c6ad7f66 transparent;padding:8px 0 22px;position:relative}
.services .service-grid:focus-visible{outline:1px solid var(--gold);outline-offset:8px}
.services .service-grid .service-card{min-width:0;padding:8px 26px 22px;display:flex;flex-direction:column;align-items:center;scroll-snap-align:start;border:0;border-right:1px solid #c6ad7f24;text-align:center}
.services .service-grid .service-card:last-child{border-right:0}
.services .service-heading{display:flex;flex-direction:column;align-items:center;gap:24px;margin-bottom:15px;width:100%}
.services .service-emblem{display:grid;place-items:center;flex-shrink:0;width:132px;height:132px;background:radial-gradient(ellipse at 50% 66%,#c6ad7f0c,transparent 70%)}
.services .service-emblem img{display:block;width:112px;height:112px;object-fit:contain;filter:drop-shadow(0 7px 7px #0006)}
.services .service-heading h3{font-size:25px;line-height:1.25;min-height:2.5em;display:flex;align-items:center;justify-content:center;margin:0;letter-spacing:-.015em}
.services .service-card>p{font-size:16px;line-height:1.75;min-height:0;color:var(--muted);margin:0 0 20px}
.services .service-detail{font-size:13px;line-height:1.8;color:var(--gold);margin-top:auto}
.service-carousel-footer{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:20px}
.service-carousel-footer[hidden]{display:none}
.service-progress{height:1px;background:#c6ad7f26;flex:1;max-width:260px;overflow:hidden}
.service-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,#a88651,#e0c796);transform:scaleX(var(--services-progress,.125));transform-origin:left center}
.service-controls{display:flex;align-items:center;justify-content:center;gap:10px}
.service-controls button{min-height:44px;padding:10px 15px;background:transparent;border:1px solid #c6ad7f40;color:var(--white);font-size:14px;cursor:pointer;transition:background .2s,border-color .2s}
.service-controls button:hover{background:#c6ad7f10;border-color:var(--gold)}
.service-controls [data-services-play]{color:var(--gold);min-width:84px}
@media(max-width:700px){.services .service-grid{grid-auto-columns:min(80vw,300px);padding-bottom:18px}.services .service-grid .service-card{padding:8px 23px 18px}.services .service-heading{gap:19px;margin-bottom:13px}.services .service-heading h3{font-size:24px}.services .service-card>p{margin-bottom:16px}.service-carousel-footer{justify-content:center;margin-top:14px}.service-progress{display:none}.service-controls{gap:8px}.service-controls button{padding:10px 13px}}
