@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/CormorantGaramond-italic-500.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/CormorantGaramond-normal-500.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/CormorantGaramond-normal-500.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/Inter-normal-400.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/Inter-normal-400.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/Inter-normal-400.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root{
  --bg:#0b0b0c; --bg2:#121214; --bg3:#18181b; --line:rgba(255,255,255,.12);
  --text:#f3f1ec; --muted:#a7a39b; --gold:#d8b878; --gold2:#b8955a; --ink:#141210;
  --serif:"Cormorant Garamond","Times New Roman",Georgia,serif;
  --sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --r:14px; --ease:cubic-bezier(.2,.7,.2,1);
  --safe-b:env(safe-area-inset-bottom,0px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.skip{position:absolute;left:-999px;top:8px;background:var(--gold);color:var(--ink);padding:8px 12px;border-radius:8px;z-index:99}
.skip:focus{left:8px}
.wrap{width:min(1160px,100% - 40px);margin-inline:auto}
.eyebrow{font:600 11px/1 var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin:0 0 14px}
h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:.005em;margin:0}
h2{font-size:clamp(38px,9vw,64px);line-height:1}
h3{font-size:24px;line-height:1.15}
em{font-style:italic;color:var(--gold)}
.lede{color:var(--muted);max-width:44ch;margin:16px 0 0}
.muted{color:var(--muted)}
.section{padding:96px 0;position:relative}
.section-head{margin-bottom:40px}

/* buttons */
.btn{--b:var(--line);position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 24px;border-radius:999px;border:1px solid var(--b);background:transparent;font:600 13px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:transform .25s var(--ease),background .25s,color .25s,border-color .25s,box-shadow .3s;-webkit-tap-highlight-color:transparent;user-select:none}
.btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}
.btn:active{transform:scale(.96)}
.btn::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s var(--ease);pointer-events:none}
.btn:hover::after{transform:translateX(120%)}
.btn-gold{background:linear-gradient(180deg,#e2c68c,var(--gold2));border-color:transparent;color:var(--ink);box-shadow:0 8px 28px -10px rgba(216,184,120,.6)}
.btn-gold:hover{box-shadow:0 12px 36px -10px rgba(216,184,120,.85)}
.btn-ghost{background:rgba(255,255,255,.06);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-color:rgba(255,255,255,.28)}
.btn-line{border-color:rgba(216,184,120,.5);color:var(--text)}
.btn-line:hover{background:rgba(216,184,120,.1)}
.btn-sm{min-height:42px;padding:0 18px;font-size:11px}
.btn-block{width:100%}
.ripple{position:absolute;border-radius:50%;transform:scale(0);background:rgba(255,255,255,.45);animation:rip .6s ease-out forwards;pointer-events:none}
@keyframes rip{to{transform:scale(4);opacity:0}}
.link{background:none;border:0;color:var(--gold);cursor:pointer;font-size:13px;padding:6px 0;text-decoration:underline;text-underline-offset:3px}

/* nav */
.nav{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:calc(14px + env(safe-area-inset-top,0px)) 20px 14px;transition:background .35s,backdrop-filter .35s,padding .35s,border-color .35s;border-bottom:1px solid transparent}
.nav.solid{background:rgba(11,11,12,.78);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border-color:var(--line);padding-top:calc(10px + env(safe-area-inset-top,0px));padding-bottom:10px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--gold);border-radius:50%;font:600 10px/1 var(--sans);letter-spacing:.12em;color:var(--gold)}
.brand-name{font:500 21px/1 var(--serif);letter-spacing:.02em}
.nav-links{display:none}
.menu-btn{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:rgba(0,0,0,.25);display:grid;place-content:center;gap:6px;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.menu-btn span{display:block;width:18px;height:1.5px;background:var(--text);transition:transform .35s var(--ease)}
.menu-open .menu-btn span:first-child{transform:translateY(3.75px) rotate(45deg)}
.menu-open .menu-btn span:last-child{transform:translateY(-3.75px) rotate(-45deg)}
.drawer{position:fixed;inset:0;z-index:40;background:rgba(8,8,9,.96);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;flex-direction:column;justify-content:center;padding:90px 28px 40px;opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s}
.drawer nav{display:flex;flex-direction:column;gap:6px}
.drawer nav a{font:500 40px/1.2 var(--serif);text-decoration:none;opacity:0;transform:translateY(16px);transition:opacity .45s var(--ease),transform .45s var(--ease),color .2s}
.drawer nav a:hover{color:var(--gold)}
.drawer-contact{display:flex;gap:22px;margin-top:40px;color:var(--gold);font-size:14px;letter-spacing:.08em}
.menu-open .drawer{opacity:1;visibility:visible}
.menu-open .drawer nav a{opacity:1;transform:none}
.menu-open .drawer nav a:nth-child(2){transition-delay:.04s}.menu-open .drawer nav a:nth-child(3){transition-delay:.08s}.menu-open .drawer nav a:nth-child(4){transition-delay:.12s}.menu-open .drawer nav a:nth-child(5){transition-delay:.16s}.menu-open .drawer nav a:nth-child(6){transition-delay:.2s}
.menu-open{overflow:hidden}

/* hero */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate}
.hero-media{position:absolute;inset:-6% 0 -6%;z-index:-2;will-change:transform}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:50% 60%;animation:kb 18s var(--ease) forwards}
@keyframes kb{from{transform:scale(1.12)}to{transform:scale(1)}}
.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(11,11,12,.55) 0%,rgba(11,11,12,0) 28%,rgba(11,11,12,.15) 52%,rgba(11,11,12,.92) 84%,var(--bg) 100%)}
.hero-inner{width:min(1160px,100% - 40px);margin:0 auto;padding:0 0 calc(92px + var(--safe-b))}
.hero-title{font-size:clamp(64px,19vw,150px);line-height:.86;letter-spacing:-.01em;margin:0 0 20px}
.hero-title .line{display:block;overflow:hidden;padding-bottom:.06em}
.hero-title .line>span{display:inline-block}
.hero-sub{max-width:34ch;color:#dcd8cf;margin:0 0 28px;font-size:17px}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px}
.hero-in{opacity:0;transform:translateY(24px);animation:up .9s var(--ease) var(--d,0s) forwards}
.hero-title .hero-in{transform:translateY(105%)}
@keyframes up{to{opacity:1;transform:none}}
.scroll-cue{position:absolute;left:50%;bottom:calc(22px + var(--safe-b));width:1px;height:46px;background:rgba(255,255,255,.2);overflow:hidden;display:none}
.scroll-cue span{position:absolute;inset:0;background:var(--gold);animation:cue 2.2s var(--ease) infinite}
@keyframes cue{0%{transform:translateY(-100%)}60%,100%{transform:translateY(100%)}}

/* ticker */
.ticker{border-block:1px solid var(--line);overflow:hidden;padding:16px 0;background:var(--bg)}
.ticker-track{display:flex;align-items:center;gap:28px;width:max-content;animation:tick 32s linear infinite;font:500 italic 22px/1 var(--serif);color:#cfc9bd;white-space:nowrap}
.ticker i{width:5px;height:5px;border-radius:50%;background:var(--gold);display:block}
@keyframes tick{to{transform:translateX(-50%)}}

/* reveal */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .9s var(--ease) var(--d,0s),transform .9s var(--ease) var(--d,0s)}
.reveal.in{opacity:1;transform:none}

/* fleet carousel */
.fleet{padding-bottom:72px}
.carousel{position:relative}
.track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 20px 24px;scroll-padding:0 20px;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.track::-webkit-scrollbar{display:none}
.car{flex:0 0 86%;max-width:440px;scroll-snap-align:center;perspective:1400px;transition:transform .5s var(--ease),opacity .5s}
.car.dim{opacity:.55;transform:scale(.96)}
.car-inner{position:relative;height:100%;min-height:520px;transform-style:preserve-3d;transition:transform .8s var(--ease)}
.car.flipped .car-inner{transform:rotateY(180deg)}
.car-face{position:absolute;inset:0;border-radius:20px;overflow:hidden;background:var(--bg2);border:1px solid var(--line);backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column}
.car-img{position:relative;aspect-ratio:4/3;overflow:hidden;background:#000}
.car-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.car:hover .car-img img{transform:scale(1.05)}
.car-img::after{content:"";position:absolute;inset:auto 0 0;height:40%;background:linear-gradient(transparent,var(--bg2))}
.car-body{padding:6px 22px 22px;display:flex;flex-direction:column;flex:1}
.car-kicker{font:600 10px/1 var(--sans);letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin:0 0 10px}
.car-rate{color:var(--muted);margin:10px 0 auto;padding-bottom:18px;font-size:14px;letter-spacing:.04em}
.car-actions{display:flex;gap:10px;flex-wrap:wrap}
.car-back{transform:rotateY(180deg);padding:26px 22px 22px;background:radial-gradient(120% 80% at 100% 0%,rgba(216,184,120,.14),transparent 60%),var(--bg2)}
.car-back h3{font-size:44px;margin-bottom:12px}
.specs{margin:0 0 auto;display:grid}
.specs div{display:grid;grid-template-columns:90px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}
.specs dt{color:var(--muted);font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding-top:3px}
.specs dd{margin:0}
.fine{font-size:12px;color:var(--muted);margin:14px 0}
.soon-face{padding:28px 22px 22px;justify-content:flex-end;background:radial-gradient(90% 60% at 80% 10%,rgba(216,184,120,.22),transparent 60%),linear-gradient(160deg,#1b1915,#0e0e0f)}
.soon-face h3{font-size:40px;line-height:1}
.soon-copy{color:#cfc9bd;margin:14px 0 18px}
.soon-list{list-style:none;padding:0;margin:0 0 auto;display:flex;flex-direction:column;gap:2px;font:500 italic 30px/1.25 var(--serif);color:rgba(216,184,120,.85)}
.soon-face .car-actions{margin-top:24px}
.carousel-ui{display:flex;align-items:center;justify-content:space-between;margin-top:6px}
.dots{display:flex;gap:8px}
.dots button{width:8px;height:8px;border-radius:99px;border:0;padding:0;background:rgba(255,255,255,.25);cursor:pointer;transition:width .4s var(--ease),background .3s}
.dots button[aria-selected=true]{width:28px;background:var(--gold)}
.arrows{display:flex;gap:10px}
.arrow{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:transparent;cursor:pointer;font-size:18px;transition:background .25s,border-color .25s,transform .2s}
.arrow:hover{border-color:var(--gold);background:rgba(216,184,120,.1)}
.arrow:active{transform:scale(.92)}
.arrow:disabled{opacity:.3;cursor:default}

/* steps */
.how{background:var(--bg2)}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:14px;counter-reset:s}
.step{position:relative;padding:28px 24px 26px;border:1px solid var(--line);border-radius:var(--r);background:var(--bg);overflow:hidden}
.step::before{content:"";position:absolute;left:0;top:0;height:2px;width:100%;background:linear-gradient(90deg,var(--gold),transparent);transform:scaleX(0);transform-origin:left;transition:transform 1.2s var(--ease) calc(var(--d,0s) + .3s)}
.step.in::before{transform:scaleX(1)}
.step-n{font:500 italic 54px/1 var(--serif);color:var(--gold);display:block;margin-bottom:12px}
.step p{color:var(--muted);margin:10px 0 0}

/* requirements */
.req-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.req-list li{display:flex;gap:18px;align-items:flex-start;padding:22px 0;border-bottom:1px solid var(--line)}
.req-ic{flex:0 0 48px;height:48px;border-radius:50%;border:1px solid rgba(216,184,120,.5);display:grid;place-items:center}
.req-ic svg{width:22px;height:22px;fill:none;stroke:var(--gold);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.req-list h3{font-size:24px}
.req-list p{color:var(--muted);margin:6px 0 0}

/* delivery */
.delivery{overflow:hidden;isolation:isolate}
.delivery-bg{position:absolute;inset:0;z-index:-1;opacity:.22}
.delivery-bg img{width:100%;height:120%;object-fit:cover;will-change:transform}
.delivery::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,var(--bg),rgba(11,11,12,.6) 30%,rgba(11,11,12,.75) 70%,var(--bg))}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 16px}
.chip{min-height:42px;padding:0 18px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.04);cursor:pointer;font-size:14px;transition:background .25s,border-color .25s,color .25s,transform .2s;-webkit-tap-highlight-color:transparent}
.chip:active{transform:scale(.95)}
.chip.on{background:var(--gold);border-color:var(--gold);color:var(--ink);font-weight:600}
.chips-sm{margin:14px 0 10px}
.chips-sm .chip{min-height:36px;padding:0 14px;font-size:13px}
.area-note{color:var(--muted);min-height:3.2em;margin:0 0 18px;transition:opacity .3s}
.map{margin:36px 0 0;position:relative;border:1px solid rgba(216,184,120,.28);border-radius:20px;background:radial-gradient(90% 70% at 75% 45%,#10263a,#0a1622 60%,#070d14);overflow:hidden;box-shadow:0 30px 60px -30px rgba(0,0,0,.8),inset 0 0 0 1px rgba(255,255,255,.03)}
.map svg{width:100%;height:auto;display:block}
.map .land{stroke:rgba(216,184,120,.5);stroke-width:.9;stroke-linejoin:round}
.map .causeway{stroke:rgba(216,184,120,.45);stroke-width:1.6;fill:none;stroke-linecap:round}.map .causeway.thin{stroke-width:.9;stroke:rgba(216,184,120,.3)}
.map .road{stroke:rgba(255,255,255,.13);stroke-width:1.4;fill:none;stroke-linecap:round}.map .road.minor{stroke-width:.7;stroke:rgba(255,255,255,.07)}
.map .airfield{fill:rgba(255,255,255,.04);stroke:rgba(255,255,255,.08)}.map .runway{stroke:rgba(255,255,255,.22);stroke-width:1.6;stroke-linecap:round;fill:none}
.map .isle{fill:#18181b;stroke:rgba(216,184,120,.4);stroke-width:.6}
.map .hood{fill:rgba(255,255,255,.38);font:600 7.5px var(--sans);letter-spacing:.2em;text-transform:uppercase}
.map .compass{fill:rgba(216,184,120,.6)}
.pin text{paint-order:stroke;stroke:rgba(8,14,20,.85);stroke-width:3px}
.map .water{fill:rgba(170,200,225,.45);font:italic 12px var(--serif);letter-spacing:.18em}
.pin{cursor:pointer}
.pin .dot{fill:var(--gold);stroke:var(--bg);stroke-width:2;transition:r .3s}
.pin .halo{fill:url(#glow);opacity:0;transform-box:fill-box;transform-origin:center;transition:opacity .4s}
.pin text{fill:#e9e4d9;font:500 12px var(--sans);letter-spacing:.06em;transition:fill .3s}
.pin.on .halo{opacity:1;animation:pulse 1.8s ease-out infinite}
.pin.on .dot{r:8}
.pin.on text{fill:var(--gold)}
@keyframes pulse{0%{transform:scale(.5);opacity:1}100%{transform:scale(1.4);opacity:0}}
.map figcaption{position:absolute;right:14px;bottom:10px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.4)}

/* faq */
.faq{background:var(--bg2)}
.acc details{border-bottom:1px solid var(--line)}
.acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font:500 22px/1.25 var(--serif);-webkit-tap-highlight-color:transparent}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"";flex:0 0 14px;height:14px;background:linear-gradient(var(--gold),var(--gold)) center/14px 1.5px no-repeat,linear-gradient(var(--gold),var(--gold)) center/1.5px 14px no-repeat;transition:transform .4s var(--ease)}
.acc details[open] summary::after{transform:rotate(135deg)}
.acc-body{overflow:hidden}
.acc-body p{margin:0;padding:0 0 22px;color:var(--muted);max-width:60ch}

/* request form */
.request{overflow:hidden;isolation:isolate}
.request-bg{position:absolute;inset:0 0 auto;height:60%;z-index:-1;opacity:.35}
.request-bg img{width:100%;height:100%;object-fit:cover}
.request::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(11,11,12,.3),var(--bg) 55%)}
.quick{display:flex;flex-direction:column;gap:10px;margin-top:26px}
.form{background:rgba(18,18,20,.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--line);border-radius:22px;padding:24px 18px;display:grid;gap:18px}
.field{display:grid;gap:8px}
.field>span{font:600 11px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.field small{text-transform:none;letter-spacing:0;font-weight:400;opacity:.7}
.field-row{display:grid;gap:18px}
.times{grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
input,select,textarea{width:100%;min-height:50px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--bg);font-size:16px;transition:border-color .25s,box-shadow .25s;-webkit-appearance:none;appearance:none}
select{background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:36px}
textarea{resize:vertical;min-height:90px}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 3px rgba(216,184,120,.18)}
input.bad{border-color:#d9776b}
input::placeholder,textarea::placeholder{color:#6f6b64}
.flash{animation:flash 1.2s var(--ease)}
@keyframes flash{0%{box-shadow:0 0 0 0 rgba(216,184,120,.7)}100%{box-shadow:0 0 0 14px rgba(216,184,120,0)}}

/* calendar */
.cal{border:1px solid var(--line);border-radius:16px;padding:14px;background:var(--bg)}
.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.cal-head strong{font:500 22px/1 var(--serif)}
.cal-nav{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:none;cursor:pointer;font-size:22px;line-height:1}
.cal-nav:disabled{opacity:.25}
.cal-dow,.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}
.cal-dow span{font-size:11px;letter-spacing:.1em;color:var(--muted);padding:6px 0}
.cal-grid button{position:relative;aspect-ratio:1;border:0;background:none;cursor:pointer;font-size:15px;border-radius:0;-webkit-tap-highlight-color:transparent;transition:color .2s}
.cal-grid button span{position:relative;z-index:1;display:grid;place-items:center;width:100%;height:100%;border-radius:50%;transition:background .2s,transform .2s}
.cal-grid button:active span{transform:scale(.9)}
.cal-grid button:disabled{color:#4a4842;cursor:default}
.cal-grid button.today span{box-shadow:inset 0 0 0 1px rgba(216,184,120,.5)}
.cal-grid button.mid{background:rgba(216,184,120,.16)}
.cal-grid button.start,.cal-grid button.end{color:var(--ink);font-weight:600}
.cal-grid button.start span,.cal-grid button.end span{background:var(--gold)}
.cal-grid button.start.has-end{background:linear-gradient(90deg,transparent 50%,rgba(216,184,120,.16) 50%)}
.cal-grid button.end{background:linear-gradient(90deg,rgba(216,184,120,.16) 50%,transparent 50%)}
.cal-grid button.start.end{background:none}
.cal-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding-top:12px;border-top:1px solid var(--line)}
.cal-foot p{margin:0;font-size:14px;color:var(--muted)}
.cal-foot p b{color:var(--text);font-weight:600}
.cal-foot p .len{display:inline-block;color:var(--gold);font:500 italic 20px/1 var(--serif);margin-left:4px}

/* segmented */
.seg{position:relative;display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:999px;padding:4px;background:var(--bg)}
.seg label{position:relative;z-index:1;cursor:pointer}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg span{display:grid;place-items:center;min-height:42px;font-size:14px;transition:color .3s}
.seg input:checked+span{color:var(--ink);font-weight:600}
.seg input:focus-visible+span{outline:2px solid var(--gold);border-radius:999px}
.seg-pill{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:999px;background:var(--gold);transition:transform .45s var(--ease)}
.seg.right .seg-pill{transform:translateX(100%)}

.form-error{margin:0;color:#e9998f;font-size:14px}
.send{display:grid;gap:10px}
.disclaimer{margin:0;font-size:13px;color:var(--muted);text-align:center}

/* footer */
.footer{border-top:1px solid var(--line);padding:56px 0 calc(110px + var(--safe-b))}
.footer-grid{display:grid;gap:26px}
.foot-brand{font-size:28px;margin:0 0 8px}
.foot-links{display:flex;flex-direction:column;gap:10px}
.foot-links a{text-decoration:none;color:var(--text)}
.foot-links a:hover{color:var(--gold)}
.foot-base{margin-top:36px;padding-top:20px;border-top:1px solid var(--line);font-size:12px;color:#a19c92}
.foot-base p{margin:0 0 8px}
.credits a{color:#b9b3a7}

/* sticky mobile bar */
.sticky{position:fixed;left:12px;right:12px;bottom:calc(12px + var(--safe-b));z-index:45;display:flex;gap:8px;padding:8px;border-radius:999px;background:rgba(14,14,15,.82);backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);border:1px solid var(--line);transform:translateY(140%);transition:transform .5s var(--ease)}
.sticky.show{transform:none}
.sticky .btn{flex:1;min-height:48px}
.sticky-ic{flex:0 0 48px;height:48px;border-radius:50%;border:1px solid rgba(216,184,120,.45);display:grid;place-items:center;transition:transform .2s}
.sticky-ic:active{transform:scale(.9)}
.sticky-ic svg{width:20px;height:20px;fill:none;stroke:var(--gold);stroke-width:1.6;stroke-linejoin:round}

.toast{position:fixed;left:50%;bottom:calc(90px + var(--safe-b));z-index:60;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--text);color:var(--ink);padding:12px 18px;border-radius:999px;font-size:14px;font-weight:500;transition:opacity .3s,transform .4s var(--ease);white-space:nowrap}
.toast.show{opacity:1;transform:translate(-50%,0)}

/* larger screens */
@media (min-width:760px){
  .section{padding:130px 0}
  .scroll-cue{display:block}
  .car{flex-basis:420px}
  .track{padding-inline:max(20px,(100vw - 1160px)/2);scroll-padding-inline:max(20px,(100vw - 1160px)/2)}
  .car{scroll-snap-align:start}
  .steps{grid-template-columns:repeat(3,1fr);gap:20px}
  .field-row{grid-template-columns:1fr 1fr}
  .form{padding:32px}
  .quick{flex-direction:row;flex-wrap:wrap}
  .footer-grid{grid-template-columns:1fr auto}
}
@media (min-width:1000px){
  .nav{padding-inline:40px}
  .nav-links{display:flex;align-items:center;gap:30px;font-size:13px;letter-spacing:.12em;text-transform:uppercase}
  .nav-links a:not(.btn){text-decoration:none;color:#d8d4cb;position:relative}
  .nav-links a:not(.btn)::after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--gold);transform:scaleX(0);transition:transform .35s var(--ease)}
  .nav-links a:not(.btn):hover::after{transform:scaleX(1)}
  .menu-btn{display:none}
  .reqs-grid,.delivery-grid,.faq-grid,.request-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:70px;align-items:start}
  .section-head{position:sticky;top:110px}
  .map{margin:0}
  .sticky{display:none}
  .footer{padding-bottom:56px}
}
@media (hover:none){.btn::after{display:none}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;transition-delay:0s!important}
  .reveal,.hero-in{opacity:1!important;transform:none!important}
  .ticker-track{animation:none}
}
@media (min-width:760px){.car-inner{min-height:560px}}

/* Q7 photo gallery inside card */
.gallery .g-track{display:flex;width:100%;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.gallery .g-track::-webkit-scrollbar{display:none}
.gallery .g-track img{flex:0 0 100%;width:100%;height:100%;object-fit:cover;scroll-snap-align:center;scroll-snap-stop:always}
.car:hover .gallery img{transform:none}
.gallery::after{z-index:1;pointer-events:none}
.g-count{position:absolute;top:12px;right:12px;z-index:2;padding:5px 10px;border-radius:999px;background:rgba(0,0,0,.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:11px;letter-spacing:.12em}
.g-btn{position:absolute;top:50%;z-index:2;width:36px;height:36px;margin-top:-18px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.4);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:22px;line-height:1;cursor:pointer;transition:opacity .3s,transform .2s}
.g-btn:active{transform:scale(.9)}
.g-prev{left:10px}.g-next{right:10px}
.g-btn:disabled{opacity:0;pointer-events:none}
.g-dots{position:absolute;left:0;right:0;bottom:14px;z-index:2;display:flex;justify-content:center;gap:6px}
.g-dots i{width:6px;height:6px;border-radius:99px;background:rgba(255,255,255,.45);transition:width .35s var(--ease),background .3s}
.g-dots i.on{width:18px;background:var(--gold)}
.car-feature .car-face{border-color:rgba(216,184,120,.45)}
.hero-media img{object-position:50% 50%}
@media (max-width:760px){.hero-media img{object-position:55% 50%}}
.hero-shade{background:linear-gradient(180deg,rgba(11,11,12,.6) 0%,rgba(11,11,12,.05) 26%,rgba(11,11,12,.2) 46%,rgba(11,11,12,.9) 76%,var(--bg) 100%)}
.delivery-bg,.request-bg{z-index:-2}
.delivery::before{background:linear-gradient(180deg,var(--bg),rgba(11,11,12,.55) 25%,rgba(11,11,12,.7) 70%,var(--bg2))}
.car-desc{color:#cfc9bd;margin:12px 0 0;font-size:15px}
.car-rate{margin-top:14px}
@media (max-width:760px){
  .hero{align-items:flex-end}
  .hero-media{inset:auto;top:calc(56px + env(safe-area-inset-top,0px));left:-8%;width:116%;height:auto}
  .hero-media img{height:auto;object-fit:contain}
  .hero-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,11,12,.0) 55%,var(--bg) 100%)}
  .hero-shade{background:linear-gradient(180deg,rgba(11,11,12,.85) 0,rgba(11,11,12,0) calc(70px + env(safe-area-inset-top,0px)))}
  .hero{background:radial-gradient(120% 40% at 50% 30%,#1a1814,var(--bg))}
  .hero-inner{padding-bottom:calc(44px + var(--safe-b))}
  .hero-cta{flex-wrap:nowrap;gap:10px}
  .hero-cta .btn{flex:1;padding:0 12px;letter-spacing:.1em;font-size:12px}
  .hero-title{font-size:min(19vw,84px)}
}
@media (max-width:760px){
  .hero-media{left:0;width:100%;top:calc(64px + env(safe-area-inset-top,0px))}
  .hero-media img{animation:kbm 1.6s var(--ease) forwards}
  @keyframes kbm{from{opacity:0;transform:translateX(-18px)}to{opacity:1;transform:none}}
}
/* hero rotation: Q7 <-> Panamera crossfade. Q7 (inside <picture>) stays in flow and sizes the box; Panamera overlays it (same 4:3). */
.hero-media img.hero-slide{opacity:0;transition:opacity 1.6s ease}
.hero-media img.hero-slide.is-on{opacity:1}
.hero-media>img.hero-slide{position:absolute;inset:0;width:100%;height:100%}
.hero-media>img.hero-slide{animation:none}
/* daily prices */
.car-rate.has-price{color:var(--gold);font-size:15px;letter-spacing:.03em}
.car-rate.has-price b{font:600 26px/1 var(--serif);letter-spacing:0;margin:0 2px}
.specs .rate-dd{color:var(--gold)}
.rate-note{color:var(--gold);font-size:13px;letter-spacing:.06em;margin:12px 0 0;opacity:.9}
/* card back: room for the Rate row */
.car-back{padding:22px 22px 20px;overflow-y:auto;overscroll-behavior:contain}
.car-back h3{font-size:38px;margin-bottom:8px}
.specs div{padding:9px 0}
.car-back .fine{margin:10px 0}
@media (max-width:759px){.car-inner{min-height:600px}}
.car-rate.has-price .rate-month{display:block;margin-top:6px;font-size:13px;letter-spacing:.04em;color:var(--gold);opacity:.8}
.car-rate.has-price .rate-only{color:var(--muted);opacity:1;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.specs .rate-dd small{color:var(--muted);font-size:12px}
@media (max-width:370px){.car-inner{min-height:620px}}
/* concierge bubble (panel styles live in js/concierge.js) */
.cg-bubble{position:fixed;right:24px;bottom:24px;z-index:46;display:flex;align-items:center;gap:10px;height:56px;padding:0 20px 0 16px;border:0;border-radius:999px;background:linear-gradient(135deg,#e6cb93,#b8955a);color:#141210;font:600 13px var(--sans);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;box-shadow:0 14px 40px rgba(0,0,0,.45),0 0 0 0 rgba(216,184,120,.5);transition:transform .3s var(--ease),opacity .3s,box-shadow .3s;animation:cgPulse 2.8s 3s 2}
.cg-bubble:hover{transform:translateY(-2px)}
.cg-bubble svg{width:22px;height:22px;fill:none;stroke:#141210;stroke-width:1.7;stroke-linejoin:round}.cg-bubble circle{fill:#141210;stroke:none}
@keyframes cgPulse{0%{box-shadow:0 14px 40px rgba(0,0,0,.45),0 0 0 0 rgba(216,184,120,.55)}100%{box-shadow:0 14px 40px rgba(0,0,0,.45),0 0 0 16px rgba(216,184,120,0)}}
body.cg-open .cg-bubble{opacity:0;transform:scale(.6);pointer-events:none}
.sticky-chat{background:rgba(216,184,120,.14);cursor:pointer;padding:0}
.sticky-chat svg{fill:var(--gold);stroke:none}
@media (max-width:999px){
  .cg-bubble{right:14px;bottom:calc(14px + var(--safe-b));width:56px;height:56px;padding:0;justify-content:center}
  .cg-bubble span{display:none}
  .sticky.show ~ .cg-bubble{opacity:0;transform:scale(.6);pointer-events:none}
  body.menu-open .cg-bubble{opacity:0;pointer-events:none}
  body.cg-open .sticky{transform:translateY(140%)}
}
@media (prefers-reduced-motion:reduce){.cg-bubble{animation:none;transition:none}}

/* new cars without photos yet: "Photos coming soon" placeholder */
.car-pending{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:radial-gradient(90% 70% at 70% 15%,rgba(216,184,120,.18),transparent 60%),linear-gradient(160deg,#1b1915,#0e0e0f)}
.car-pending .pending-mark{font:500 italic 64px/1 var(--serif);color:rgba(216,184,120,.85);letter-spacing:.02em}
.car-pending .pending-note{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);border:1px solid rgba(216,184,120,.35);border-radius:999px;padding:6px 14px}
.car-pending::after{display:none}

/* WhatsApp button (left side, opposite the concierge bubble) */
.wa-fab{position:fixed;left:24px;bottom:24px;z-index:46;width:56px;height:56px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 14px 40px rgba(0,0,0,.45);transition:transform .3s var(--ease),opacity .3s,bottom .3s var(--ease)}
.wa-fab:hover{transform:translateY(-2px)}
.wa-fab svg{width:30px;height:30px;fill:#fff}
body.cg-open .wa-fab,body.menu-open .wa-fab{opacity:0;pointer-events:none}
@media (max-width:999px){
  .wa-fab{left:14px;bottom:calc(14px + var(--safe-b))}
  .sticky.show ~ .wa-fab{bottom:calc(86px + var(--safe-b))}
}
/* motion.js (scroll/entrance) */
.mo .m{opacity:0;transition:opacity .8s var(--ease) var(--md,0s),transform .8s var(--ease) var(--md,0s);will-change:opacity,transform}
.mo .m-up{transform:translate3d(0,34px,0)}
.mo .m-right{transform:translate3d(28px,0,0)}
.mo .m-zoom{transform:scale(1.06)}
.mo .m.m-in{opacity:1;transform:none}
.mo .m.m-in{will-change:auto}
.m-progress{position:fixed;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#b8923a,#f1d58a);transform-origin:0 50%;transform:scaleX(0);z-index:9999;pointer-events:none}
@media (hover:hover){.car-front{transition:box-shadow .45s var(--ease),border-color .45s}.car:not(.dim):not(.flipped):hover{transform:translateY(-6px)}.car:not(.flipped):hover .car-front{box-shadow:0 22px 44px -20px rgba(212,175,55,.5);border-color:rgba(212,175,55,.45)}}
@media (prefers-reduced-motion:reduce){.m-progress{display:none}.mo .m{opacity:1!important;transform:none!important}}

.car-booked{display:inline-block;font:600 10px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold);border:1px solid currentColor;opacity:.85;padding:5px 8px;margin:0 0 10px}

.stays .stay-card{flex:none;max-width:520px;margin:0 auto}
.stays .stay-card .car-inner{transform:none}
.gallery .g-track picture{flex:0 0 100%;width:100%;height:100%;scroll-snap-align:center;scroll-snap-stop:always}
.gallery .g-track picture img{width:100%;height:100%;object-fit:cover;display:block}
.stays .stay-tax{font-size:.75em;opacity:.7;font-family:inherit}
.stays .stay-host{font-size:.75rem;opacity:.6;margin:.4rem 0 1rem}

/* new cars: muted looping clip with poster */
.car-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.car-video .car-video-fallback{display:none}
@media (prefers-reduced-motion:reduce){.car-video video{display:none}.car-video .car-video-fallback{display:block}}
.gallery .g-track .g-vid{flex:0 0 100%;width:100%;height:100%;position:relative;scroll-snap-align:center;scroll-snap-stop:always}
.g-vid img,.g-vid video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media (prefers-reduced-motion:reduce){.g-vid video{display:none}}

/* Stays: listing layout (mobile-first) */
.stays .stay{max-width:1100px;margin:0 auto;border:1px solid rgba(216,184,120,.28);border-radius:22px;overflow:hidden;background:var(--bg2)}
.st-gallery{position:relative}
.st-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.st-track::-webkit-scrollbar{display:none}
.st-shot{flex:0 0 88%;margin:0;aspect-ratio:4/3;scroll-snap-align:start;border-right:2px solid var(--bg2)}
.st-shot:first-child{flex-basis:100%}
.st-shot picture,.st-shot img{display:block;width:100%;height:100%;object-fit:cover}
.st-count{position:absolute;right:12px;bottom:12px;font:600 10px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--text);background:rgba(11,11,12,.7);border:1px solid var(--line);padding:7px 10px;border-radius:99px;backdrop-filter:blur(6px)}
.st-body{padding:22px 20px 24px;display:grid;gap:22px}
.st-title{font:500 clamp(28px,6vw,40px)/1.1 var(--serif);margin:6px 0 16px}
.st-facts{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-wrap:wrap;gap:8px}
.st-facts li{font:500 12px/1 var(--sans);letter-spacing:.04em;color:var(--text);border:1px solid rgba(216,184,120,.35);border-radius:99px;padding:8px 12px}
.st-desc{color:var(--muted);margin:0;line-height:1.7}
.st-book{border-top:1px solid var(--line);padding-top:20px;display:flex;flex-direction:column;gap:10px}
.st-price{margin:0;color:var(--gold);font:400 15px/1 var(--sans)}
.st-price b{font:500 44px/1 var(--serif);color:var(--text);margin:0 2px}
.st-tax{margin:-2px 0 6px;font-size:12px;color:var(--muted)}
.st-terms{margin:0 0 8px;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.st-terms div{border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.st-terms dt{font:600 10px/1 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.st-terms dd{margin:0;font-size:14px}
.st-book .btn{width:100%;justify-content:center;text-align:center}
.st-host{font-size:11.5px;color:var(--muted);opacity:.8;margin:6px 0 0;line-height:1.5}
@media (min-width:861px){
  .st-track{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:220px 220px;gap:6px;overflow:visible;padding:6px}
  .st-shot{aspect-ratio:auto;border:0;border-radius:14px;overflow:hidden}
  .st-shot:first-child{grid-row:span 2}
  .st-shot:nth-child(n+6){display:none}
  .st-count{display:none}
  .st-body{grid-template-columns:1fr 340px;gap:40px;padding:32px 36px 36px}
  .st-book{border-top:0;border-left:1px solid var(--line);padding:0 0 0 32px}
}
/* map v2: Apple-Maps-style dark palette */
.map{background:#0e1a2b}
.map .land{fill:#1f2023;stroke:rgba(255,255,255,.08);stroke-width:.6}
#landG stop{stop-color:#202125}
.map .park path,.map .park ellipse{fill:#1f3327;stroke:#2a4434;stroke-width:.4}
.map .road{stroke:#3d3f45;stroke-width:1.3}
.map .road.minor{stroke:#2e3035}
.map .road.hwy{stroke:#b59a56;stroke-width:1.8;opacity:.85}
.map .causeway{stroke:#8f8a7c;stroke-width:1.5}.map .causeway.thin{stroke:#5a5a5c}
.map .isle{fill:#202125;stroke:rgba(255,255,255,.08)}
.map .bldg .br{fill:#55585f}.map .bldg .bs{fill:#3a3c42}.map .bldg .bs2{fill:#2b2d32}
.map .water{fill:#5d7fa6}
.map .shield rect{fill:#3a5a8c;stroke:#e9e4d9;stroke-width:.5}.map .shield text{fill:#fff;font:700 5.5px var(--sans)}
.map .hood{fill:#8e9097}
/* map v3: real map (MapLibre + OpenFreeMap) */
.map .gmap{position:absolute;inset:0;z-index:1;opacity:0;transition:opacity .6s}
.map.live .gmap{opacity:1}
.map.live > svg{visibility:hidden}
.map.live figcaption{display:none}
@media (max-width:760px){.map svg{min-height:340px}}
.map{min-height:340px}
.gpin{position:relative;width:16px;height:16px;padding:0;border:0;background:none;cursor:pointer}
.gpin .dot{position:absolute;inset:2px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 2px #0b0b0c,0 2px 8px rgba(0,0,0,.6);transition:transform .3s}
.gpin .halo{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:radial-gradient(rgba(216,184,120,.55),rgba(216,184,120,0) 70%);opacity:0;transition:opacity .4s;pointer-events:none}
.gpin span{position:absolute;left:50%;top:18px;transform:translateX(-50%);white-space:nowrap;font:600 12px/1 var(--sans);letter-spacing:.04em;color:#f3f1ec;text-shadow:0 0 3px #111,0 0 6px #111,0 1px 2px #000}
.gpin.on .halo{opacity:1;animation:pulse 1.8s ease-out infinite}
.gpin.on .dot{transform:scale(1.35)}
.gpin.on span{color:var(--gold)}
.map .maplibregl-ctrl-attrib{background:rgba(20,21,24,.7);color:#9a9da4;font-size:10px}
.map .maplibregl-ctrl-attrib a{color:#b9bcc4}
.map .maplibregl-ctrl-group{background:rgba(30,32,36,.85);border:1px solid rgba(255,255,255,.08)}
.map .maplibregl-ctrl-group button .maplibregl-ctrl-icon{filter:invert(1) opacity(.8)}
.map .maplibregl-cooperative-gesture-screen{font-family:var(--sans)}
/* map v3 attribution: single dark line */
.map .maplibregl-ctrl-attrib{background:rgba(10,10,12,.62)!important;color:#9a9a9a;font-size:10px;padding:1px 6px;border-radius:6px 0 0 0;margin:0!important}
.map .maplibregl-ctrl-attrib a{color:#c9b27a!important}
.map .maplibregl-ctrl-attrib-button{display:none!important}
/* flip fix: nothing from the front face may bleed onto the spec card */
.car.flipped .car-front .g-btn,.car.flipped .car-front .g-dots,.car.flipped .car-front .g-count,.car.flipped .car-front .g-vid,.car.flipped .car-front video{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
.car.flipped .car-front{visibility:hidden;transition:visibility 0s .3s}
.car.flipped .car-back{z-index:5;opacity:1!important;filter:none!important}
.car.flipped .car-back *{opacity:1;filter:none}
.car.flipped .car-back .fine{opacity:.75}
.car-back .car-kicker{overflow:visible;white-space:normal;text-overflow:clip}
.car.flipped,.car.dim.flipped{opacity:1!important;transform:none!important}

/* ===== intro (2026-10-27) ===== */
.intro{display:block;min-height:0;height:230svh;background:#000;overflow:visible}
.intro-stage{position:sticky;top:0;height:100svh;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000;isolation:isolate}
.intro-glow{position:absolute;left:50%;top:58%;width:120vw;height:60vh;transform:translate(-50%,-50%);background:radial-gradient(closest-side,rgba(216,184,120,.13),rgba(216,184,120,.03) 55%,transparent);z-index:-1;pointer-events:none}
.intro-copy{width:min(1100px,100% - 40px);text-align:center;padding:0;margin:0 0 clamp(18px,4vh,48px);will-change:transform,opacity}
.intro-copy .eyebrow{font-size:10px;letter-spacing:.42em;color:#bfa676;margin-bottom:18px}
.intro-title{font-family:var(--serif);font-weight:500;color:#f6f1e6;font-size:clamp(46px,8.4vw,128px);line-height:.95;letter-spacing:-.012em}
.intro-title>span{display:inline-block}
.intro-cars{position:relative;width:min(1240px,100%);height:clamp(190px,30vw,400px);transform-origin:50% 62%;will-change:transform;--side:1}
.ic{position:absolute;bottom:14%;display:block}
.ic img{width:100%;height:auto;display:block}
.ic-c{left:50%;width:44%;margin-left:-22%;z-index:3;bottom:9%}
.ic-c img{filter:drop-shadow(0 30px 40px rgba(0,0,0,.9)) brightness(1.04)}
.ic-l,.ic-r{width:33%;z-index:2;opacity:calc(var(--side) * .92)}
.ic-l{left:4%}.ic-r{right:4%}
.ic-l img,.ic-r img{filter:brightness(.62) saturate(.85)}
.ic-floor{position:absolute;left:8%;right:8%;bottom:6%;height:16%;background:radial-gradient(closest-side,rgba(0,0,0,.95),transparent);z-index:1}
.intro-cars::after{content:"";position:absolute;inset:auto 0 0;height:22%;background:linear-gradient(180deg,transparent,#000);z-index:4;pointer-events:none}
.intro-foot{text-align:center;margin-top:clamp(10px,3vh,36px);padding:0 20px calc(10px + var(--safe-b))}
.intro-sub{font:400 12px/1.8 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:#a9a397;margin:0 0 22px}
.intro-foot .hero-cta{justify-content:center}
.intro-veil{position:absolute;inset:0;background:#000;opacity:0;pointer-events:none;z-index:5}
.cabin{position:relative;min-height:92svh;display:flex;align-items:flex-end;background:#000;overflow:hidden;isolation:isolate}
.cabin-bg{position:absolute;inset:0;z-index:-1}
.cabin-bg img{width:100%;height:100%;object-fit:cover;filter:brightness(.5) saturate(.9)}
.cabin::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#000 0%,rgba(0,0,0,.35) 30%,rgba(0,0,0,.45) 60%,var(--bg) 100%)}
.cabin-in{position:relative;z-index:1;width:min(1100px,100% - 40px);margin:0 auto;padding:0 0 12vh;text-align:center}
.cabin-title{font-size:clamp(40px,6.6vw,92px);line-height:1;color:var(--gold);margin-bottom:18px}
.cabin-title em{color:#f6f1e6}
.cabin-sub{max-width:40ch;margin:0 auto;color:#d6d0c4}
@media (max-width:700px){
  .intro{height:210svh}
  .intro-title{font-size:clamp(44px,13.5vw,64px)}
  .intro-cars{height:62vw;width:100%}
  .ic-c{width:70%;margin-left:-35%;bottom:6%}
  .ic-l,.ic-r{width:52%;bottom:30%}
  .ic-l{left:-16%}.ic-r{right:-16%}
  .intro-sub{font-size:10.5px;letter-spacing:.16em}
}
@media (prefers-reduced-motion:reduce){
  .intro{height:auto}.intro-stage{position:relative;min-height:100svh;height:auto;padding:90px 0 40px}
}
.intro-stage{padding-top:72px}
.cabin-bg img{object-position:50% 85%}
@media (max-width:700px){.intro-stage{padding-top:56px}}
/* drive-in (2026-10-27) */
.ic::before{content:"";position:absolute;left:8%;right:8%;bottom:-4%;height:16%;background:radial-gradient(closest-side,rgba(0,0,0,.9),transparent);z-index:-1}
.ic-c::after{content:"";position:absolute;left:8%;bottom:16%;width:52%;height:22%;background:radial-gradient(closest-side,rgba(255,240,210,.16),transparent);filter:blur(10px);pointer-events:none;opacity:0;animation:hlglow 2.6s ease-out .9s forwards}
.ic img{animation:var(--anim) both}
.ic-c img{--anim:driveC 1.5s cubic-bezier(.2,.7,.25,1) .1s;transform-origin:50% 100%}
.ic-l img{--anim:driveL 1.25s cubic-bezier(.22,.75,.3,1) .45s;transform-origin:50% 100%}
.ic-r img{--anim:driveR 1.25s cubic-bezier(.22,.75,.3,1) .75s;transform-origin:50% 100%}
.ic-l img{transform:scaleX(-1)}
@keyframes driveC{
 0%{opacity:0;transform:translateY(-18%) scale(.22);filter:blur(6px) brightness(.5)}
 15%{opacity:1}
 80%{transform:translateY(1.5%) scale(1.015);filter:blur(0) brightness(1.04)}
 90%{transform:translateY(-.5%) scale(.998) scaleY(1.01)}
 100%{opacity:1;transform:none;filter:drop-shadow(0 30px 40px rgba(0,0,0,.9)) brightness(1.04)}}
@keyframes driveL{
 0%{opacity:0;transform:translateX(-140%) scaleX(-1);filter:blur(10px) brightness(.62) saturate(.85)}
 25%{opacity:1}
 78%{transform:translateX(2%) scaleX(-1) scaleY(.985);filter:blur(0) brightness(.62) saturate(.85)}
 90%{transform:translateX(-.5%) scaleX(-1) scaleY(1.008)}
 100%{opacity:1;transform:scaleX(-1);filter:brightness(.62) saturate(.85)}}
@keyframes driveR{
 0%{opacity:0;transform:translateX(140%);filter:blur(10px) brightness(.62) saturate(.85)}
 25%{opacity:1}
 78%{transform:translateX(-2%) scaleY(.985);filter:blur(0) brightness(.62) saturate(.85)}
 90%{transform:translateX(.5%) scaleY(1.008)}
 100%{opacity:1;transform:none;filter:brightness(.62) saturate(.85)}}
@keyframes hlglow{0%{opacity:0}40%{opacity:1}100%{opacity:.45}}
@media (prefers-reduced-motion:reduce){.ic img{animation:none}.ic-c::after{animation:none;opacity:.45}}
/* mobile lineup v2 */
@media (max-width:600px){
  .intro-cars{height:64vw;width:100%}
  .ic-c{width:64%;margin-left:-32%;bottom:4%}
  .ic-l,.ic-r{width:44%;bottom:34%}
  .ic-l{left:1.5%}.ic-r{right:1.5%}
  .intro-copy{margin-bottom:10px}
  .ic-l img{--anim:driveL 1.25s cubic-bezier(.22,.75,.3,1) .45s}
}
@media (max-width:600px) and (max-height:700px){
  .intro-stage{padding-top:44px}
  .intro-title{font-size:42px}
  .intro-copy .eyebrow{margin-bottom:10px}
  .intro-sub{margin-bottom:14px}
  .intro-foot{margin-top:0;padding-bottom:64px}
}
@media (max-width:600px) and (max-height:700px){
  .intro-stage{justify-content:flex-start;padding-top:70px}
  .intro-cars{height:56vw}
  .intro-del{display:none}
  .intro-foot{padding-bottom:0}
}
/* ===== intro v3: background video (2026-10-27) ===== */
.intro-stage{padding-top:0;justify-content:flex-end}
.intro-video{position:absolute;inset:0;z-index:0;transform-origin:50% 55%;will-change:transform}
.intro-video video{width:100%;height:100%;object-fit:cover;object-position:50% 50%;display:block;background:#000}
.intro-grad{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.25) 22%,transparent 40%,transparent 62%,rgba(0,0,0,.7) 80%,#000 100%)}
.intro-text{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(90px,13vh,130px) 0 calc(36px + var(--safe-b));pointer-events:none}
.intro-text a{pointer-events:auto}
.intro-text .intro-copy{margin:0 auto}
.intro-text .hero-in{animation-play-state:paused}
.intro-text.go .hero-in{animation-play-state:running}
.intro-foot{margin-top:0}
@media (max-width:600px){
  .intro-video{inset:auto 0;top:calc(50% - 28.125vw);height:56.25vw}
  .intro-video video{transform:scale(1.55);transform-origin:52% 55%}
  .intro-grad{background:linear-gradient(180deg,#000 0%,rgba(0,0,0,.6) 18%,transparent 34%,transparent 66%,rgba(0,0,0,.7) 80%,#000 100%)}
  .intro-text{padding-top:96px}
  .intro-title{font-size:clamp(42px,12.5vw,58px)}
}
@media (prefers-reduced-motion:reduce){.intro-video video{display:none}.intro-video{background:#000 url(../img/intro/cullinan-hero-poster.jpg) center/cover no-repeat}}
/* intro v4: text at bottom, softer mobile framing */
.intro-text{justify-content:flex-end;gap:14px;padding-bottom:calc(30px + var(--safe-b))}
.intro-text .intro-copy{margin:0 auto}
.intro-title{font-size:clamp(44px,5.6vw,92px)}
.intro-grad{background:linear-gradient(180deg,rgba(0,0,0,.7) 0%,transparent 16%,transparent 44%,rgba(0,0,0,.75) 66%,rgba(0,0,0,.94) 82%,#000 100%)}
@media (max-width:600px){
  .intro-video{top:calc(40% - 28.125vw);-webkit-mask-image:linear-gradient(180deg,transparent,#000 14%,#000 86%,transparent);mask-image:linear-gradient(180deg,transparent,#000 14%,#000 86%,transparent)}
  .intro-video video{transform:scale(1.18);transform-origin:50% 60%}
  .intro-grad{background:linear-gradient(180deg,rgba(0,0,0,.6) 0%,transparent 14%,transparent 52%,rgba(0,0,0,.85) 64%,#000 74%)}
  .intro-title{font-size:clamp(42px,12.5vw,58px)}
  .intro-text{padding-top:0}
}
/* ===== Alea stay redesign (2026-10-27) ===== */
.alea{background:#000;position:relative}
.alea img{filter:brightness(.74) contrast(1.08) saturate(.92) sepia(.14)}
.alea-open{position:relative;height:100svh;min-height:560px;overflow:hidden;display:flex;align-items:flex-end;isolation:isolate}
.alea-media{position:absolute;inset:0;z-index:-2}
.alea-media img,.alea-vid{width:100%;height:100%;object-fit:cover;object-position:60% 50%;display:block}
.alea-media picture img{transform-origin:70% 45%;animation:aleaKB 22s cubic-bezier(.25,.6,.3,1) forwards}
@keyframes aleaKB{from{transform:scale(1.02)}to{transform:scale(1.18) translateX(-2%)}}
.alea-vid{position:absolute;inset:0;opacity:0;transition:opacity 1.2s;filter:brightness(.74) contrast(1.08) saturate(.92) sepia(.14)}
.alea-vid.on{opacity:1}
.alea-shade{position:absolute;inset:0;z-index:-1;background:radial-gradient(120% 80% at 60% 40%,transparent 30%,rgba(0,0,0,.55) 100%),linear-gradient(180deg,#000 0%,rgba(0,0,0,.2) 18%,rgba(0,0,0,0) 40%,rgba(0,0,0,.75) 70%,#000 100%)}
.alea-open-in{width:min(1100px,100% - 40px);margin:0 auto;padding:0 0 calc(56px + var(--safe-b));text-align:center}
.alea-title{font-size:clamp(50px,8vw,120px);line-height:.95;color:#f6f1e6;margin:0 0 18px}
.alea-price{font:400 13px/1.6 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:#cfc8bb;margin:0 0 24px}
.alea-price b{font:500 34px/1 var(--serif);letter-spacing:0;color:var(--gold);text-transform:none;margin:0 4px}
.alea-price span{display:block;font-size:10px;color:#8f897e;margin-top:6px}
.alea-open-in .hero-cta{justify-content:center}
.alea-story{position:relative;height:300svh}
.alea-pin{position:sticky;top:0;height:100svh;overflow:hidden;background:#000}
.as-slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .9s ease}
.as-slide.is-on{opacity:1}
.as-slide picture,.as-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.as-slide img{transform:scale(var(--z,1));transition:transform .2s linear}
.as-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#000 0%,rgba(0,0,0,.1) 25%,rgba(0,0,0,.15) 50%,rgba(0,0,0,.85) 78%,#000 100%)}
.as-slide figcaption{position:absolute;z-index:1;left:0;right:0;bottom:calc(70px + var(--safe-b));width:min(900px,100% - 40px);margin:0 auto;text-align:center;transform:translateY(16px);opacity:0;transition:all .8s .25s var(--ease)}
.as-slide.is-on figcaption{transform:none;opacity:1}
.as-slide h3{font-size:clamp(38px,6vw,84px);line-height:1;color:var(--gold);margin:0 0 12px}
.as-slide figcaption p:last-child{color:#d6d0c4;max-width:36ch;margin:0 auto}
.as-dots{position:absolute;z-index:2;right:18px;top:50%;transform:translateY(-50%);display:grid;gap:10px}
.as-dots i,.alea-gdots i{display:block;width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.25);transition:background .3s,transform .3s}
.as-dots i.on,.alea-gdots i.on{background:var(--gold);transform:scale(1.3)}
.alea-rest{padding:70px 0 90px}
.alea-strip{list-style:none;margin:0 0 50px;padding:18px 0;border-top:1px solid rgba(216,184,120,.35);border-bottom:1px solid rgba(216,184,120,.35);display:flex;flex-wrap:wrap;justify-content:center;gap:10px 0}
.alea-strip li{font:500 11px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:#d9cfb9;padding:0 18px;border-left:1px solid rgba(216,184,120,.3)}
.alea-strip li:first-child{border-left:0}
.alea-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:36px;align-items:start}
.alea-track{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:14px}
.alea-track::-webkit-scrollbar{display:none}
.alea-track figure{flex:0 0 min(360px,84vw);margin:0;aspect-ratio:3/4;scroll-snap-align:start;border-radius:14px;overflow:hidden;background:#111}
.alea-track img{width:100%;height:100%;object-fit:cover}
.alea-gdots{display:flex;gap:8px;justify-content:center;margin-top:16px}
.alea-book{background:#0a0a0a;border:1px solid rgba(216,184,120,.28);border-radius:18px;padding:26px}
.alea-pair{font:italic 500 20px/1.3 var(--serif);color:var(--gold);margin:18px 0 10px;text-align:center}
@media (max-width:760px){
  .alea-grid{grid-template-columns:1fr;gap:28px}
  .alea-strip{gap:12px 0}.alea-strip li{padding:0 12px;font-size:10px}
  .alea-media img{object-position:62% 50%}
  .as-dots{right:12px}
  .alea-rest{padding:50px 0 70px}
}
@media (prefers-reduced-motion:reduce){
  .alea-media picture img{animation:none}
  .alea-story{height:auto}.alea-pin{position:relative;height:auto}
  .as-slide{position:relative;opacity:1;height:90svh;transition:none}.as-slide figcaption{opacity:1;transform:none;transition:none}
  .as-dots{display:none}
}
.alea-grid>*{min-width:0}
@media (max-width:760px){.alea-open-in{padding-bottom:calc(110px + var(--safe-b))}.as-slide figcaption{bottom:calc(112px + var(--safe-b))}.as-slide h3{font-size:34px}.alea-title{font-size:46px}}

/* VIP Experience */
.vip{background:radial-gradient(120% 60% at 50% 0,rgba(216,184,120,.08),transparent 70%)}
.vip-head{text-align:center;max-width:640px;margin:0 auto 44px}
.vip-head h2 em{font-style:italic;color:var(--gold)}
.vip-grid{display:grid;gap:22px;grid-template-columns:1fr}
.vip-card{display:flex;flex-direction:column;border:1px solid rgba(216,184,120,.28);border-radius:20px;overflow:hidden;background:linear-gradient(180deg,#151413,#0d0d0e)}
.vip-img{position:relative;aspect-ratio:16/10;overflow:hidden}
.vip-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.vip-card:hover .vip-img img{transform:scale(1.05)}
.vip-img:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,#151413)}
.vip-num{position:absolute;left:18px;top:14px;z-index:1;font:italic 400 44px/1 'Cormorant Garamond',serif;color:var(--gold);text-shadow:0 2px 14px rgba(0,0,0,.6)}
.vip-body{padding:4px 24px 26px;display:flex;flex-direction:column;flex:1}
.vip-body .eyebrow{margin-bottom:8px}
.vip-body h3{font:400 34px/1.05 'Cormorant Garamond',serif;margin:0 0 6px}
.vip-tag{color:var(--gold);font-style:italic;margin:0 0 12px}
.vip-desc{color:var(--muted);font-size:15px;line-height:1.6;margin:0 0 22px;flex:1}
.vip-btn{align-self:stretch;text-align:center}
.vip-fine{text-align:center;color:var(--muted);font-size:12px;opacity:.8;margin:30px auto 0;max-width:520px;line-height:1.5}
@media (max-width:899px){.vip{padding-bottom:120px}}
@media (min-width:900px){.vip-grid{grid-template-columns:repeat(3,1fr)}.vip-card:nth-child(2){transform:translateY(-14px);border-color:rgba(216,184,120,.55)}}
.vip-head .lede{margin-left:auto;margin-right:auto}

/* competitor pass */
.cutoff-banner{display:inline-block;margin:10px 0 0;padding:8px 14px;border:1px solid rgba(216,184,120,.45);border-radius:999px;font-size:13px;color:#e9dcc0;background:rgba(216,184,120,.08)}
.cutoff-banner b{color:var(--gold)}
.fleet-filter{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.ff-btn{font:600 12px/1 var(--sans);letter-spacing:.08em;padding:10px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:transparent;color:#ddd;cursor:pointer}
.ff-btn.is-on{background:var(--gold);color:#111;border-color:var(--gold)}
.car[hidden],.dots [hidden]{display:none!important}
.req-note{grid-column:1/-1;margin-top:18px;font-size:13px;color:#bdb6a8}
.vip-num{background:rgba(0,0,0,.6);padding:4px 12px 6px;border-radius:10px;text-shadow:none;backdrop-filter:blur(4px)}
.as-slide figcaption .eyebrow{display:inline-block;background:rgba(0,0,0,.6);padding:5px 10px;border-radius:999px}
@media (max-width:760px){body.in-stays .wa-fab{opacity:0;pointer-events:none}}
.age-badge{display:inline-block;margin-left:6px;padding:2px 7px;border:1px solid var(--gold);border-radius:999px;font-size:10px;letter-spacing:.08em;color:var(--gold)}
.field-hint{display:block;margin-top:6px;font-size:11px;color:#a9a294;letter-spacing:0;text-transform:none}

.occ-row{display:flex;gap:10px;flex-wrap:wrap}.occ{padding:12px 18px;border:1px solid rgba(216,184,120,.45);border-radius:999px;color:#eee;text-decoration:none;font-size:14px}.occ:hover{background:var(--gold);color:#111}
.calc-box{max-width:560px;display:grid;gap:14px}.calc-out{padding:16px;border:1px solid rgba(216,184,120,.35);border-radius:14px}.calc-out p{margin:4px 0}.calc-out b{color:var(--gold)}.calc-note{color:#d6c79f;font-size:13px}
.zone-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.zone-list li{display:flex;justify-content:space-between;gap:10px;padding:14px 16px;border:1px solid rgba(255,255,255,.12);border-radius:12px}.zone-list span{color:#a9a294;font-size:13px}
.ig-row{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:16px}.ig-row img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:6px}@media(min-width:760px){.ig-row{grid-template-columns:repeat(6,1fr)}}
.car-page{background:#0b0b0b;color:#eee}.cp-nav{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.cp-nav a{color:#eee;text-decoration:none}.cp-back{color:var(--gold)!important}
.cp-main{padding-top:28px;padding-bottom:60px;max-width:900px}.cp-main h1{font:400 44px/1.1 var(--serif);margin:0 0 10px}.cp-gallery{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;margin:20px 0}.cp-gallery img{flex:0 0 88%;max-width:620px;aspect-ratio:4/3;object-fit:cover;border-radius:14px;scroll-snap-align:start}
.cp-cta{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 28px}.cp-h{font:400 26px var(--serif);margin:24px 0 10px}.cp-specs{display:grid;gap:8px}

/* dud update */
.steps.steps4{grid-template-columns:repeat(4,1fr)}
@media(max-width:900px){.steps.steps4{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.steps.steps4{grid-template-columns:1fr}}
.trust{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:48px}
@media(max-width:800px){.trust{grid-template-columns:1fr}}
.trust-card{border:1px solid var(--line);border-radius:var(--r);padding:26px 24px;background:var(--bg)}
.trust-card h3{color:#d8b878;margin:0 0 8px}
.trust-card p{margin:0;opacity:.85}
.trust-card a,.nudge a,.igstrip h2 a{color:#d8b878}
.nudge{text-align:center;margin-top:28px;font-size:1.05rem}
/* Private chauffeur add-on */
.chf{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center;border:1px solid rgba(216,184,120,.35);border-radius:18px;padding:44px;background:linear-gradient(135deg,rgba(216,184,120,.08),rgba(255,255,255,.02))}
.chf h2{margin:0 0 12px}.chf .lede{color:var(--muted);margin:0 0 22px}
.chf-prices{display:grid;gap:14px}
.chf-price{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid var(--line);padding-bottom:12px}
.chf-amt{font:600 34px/1 var(--serif,serif);color:var(--gold)}.chf-amt small{font-size:15px;color:var(--muted);margin-left:2px}
.chf-note{color:var(--text);font-size:14px}.chf-fine{color:var(--muted);font-size:13px;margin:4px 0 0}
@media (max-width:760px){.chf{grid-template-columns:1fr;padding:28px;gap:24px}.chf-amt{font-size:28px}}
/* gaps1: info pages, deal badge, packages, explore links */
.info-page .cp-main p{line-height:1.65;margin:0 0 14px}.info-list{margin:0 0 18px;padding-left:20px;line-height:1.65}.info-list li{margin:6px 0}
.cp-lang{margin-left:auto;font-size:13px;color:var(--gold,#d4b26a)}
.deal-badge{display:flex;flex-direction:column;gap:4px;border:1px solid rgba(212,175,106,.55);border-radius:14px;padding:14px 18px;margin:18px 0;background:rgba(212,175,106,.06)}.deal-badge b{color:#d4af6a;font:500 20px var(--serif);letter-spacing:.02em}.deal-badge span{font-size:14px;opacity:.9}
.pkg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:10px 0}.pkg{border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:4px}.pkg b{font-size:13px;letter-spacing:.08em;text-transform:uppercase;opacity:.8}.pkg-amt{font:400 32px var(--serif);color:#d4af6a}.pkg small{font-size:13px;opacity:.8;line-height:1.5}
.explore-links{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 20px}.explore-links a{font-size:13px;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:7px 12px;text-decoration:none}.explore-links a:hover{border-color:#d4af6a;color:#d4af6a}
.blog-list{list-style:none;padding:0}.blog-list li{border-bottom:1px solid rgba(255,255,255,.1);padding:14px 0}
.foot-explore{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;margin-top:10px}
.info-page .cp-nav{gap:14px}
/* deals1: availability calendar */
.avail{border:1px solid rgba(201,168,106,.35);border-radius:14px;padding:14px;margin:10px 0 18px}
.av-head{display:flex;align-items:center;justify-content:space-between;margin:6px 0}
.av-head button{background:none;border:1px solid rgba(255,255,255,.2);color:inherit;border-radius:8px;width:36px;height:36px;font-size:20px;cursor:pointer}
.av-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center;margin-bottom:12px}
.av-dow{font-size:11px;opacity:.6}
.av-day{background:rgba(255,255,255,.06);border:0;color:inherit;border-radius:8px;padding:9px 0;font:inherit;cursor:pointer}
.av-day.past{opacity:.25;cursor:default}.av-day.booked{opacity:.35;text-decoration:line-through;cursor:not-allowed}
.av-day.sel{background:#c9a86a;color:#111;font-weight:600}
.avail .av-status a{color:#c9a86a}
.avail .btn{margin-top:8px}
html{overflow-x:clip}
/* weather strip */
.wx{height:28px;box-sizing:border-box;background:#000;color:#D4AF6A;font:500 12px/28px system-ui,-apple-system,sans-serif;letter-spacing:.02em;display:flex;gap:12px;justify-content:center;align-items:center;padding:0 12px;white-space:nowrap;overflow:hidden;border-bottom:1px solid rgba(212,175,106,.25);visibility:hidden}
.wx.on{visibility:visible}.wx-line{opacity:.85;font-style:italic;overflow:hidden;text-overflow:ellipsis}.wx-f{display:flex;gap:10px;opacity:.8}
.nav .wx{position:absolute;top:100%;left:0;right:0}
@media(max-width:640px){.wx-f{display:none}.wx{gap:8px;font-size:11px}}

/* weather fx (contained in strip) */
.wx{position:relative}.nav .wx{position:absolute}.wx>span:not(.wx-fx){position:relative;z-index:1}
.wx-fx{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}
.wx-fx-sun i{position:absolute;left:8%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:radial-gradient(circle,rgba(212,175,106,.55) 0,rgba(212,175,106,.18) 40%,transparent 70%);animation:wxPulse 4s ease-in-out infinite}
@keyframes wxPulse{0%,100%{transform:scale(.8) rotate(0);opacity:.7}50%{transform:scale(1.15) rotate(180deg);opacity:1}}
.wx-fx-rain i,.wx-fx-storm i{position:absolute;top:-12px;width:1px;height:10px;background:linear-gradient(transparent,rgba(240,225,190,.8));animation:wxDrop .9s linear infinite}
.wx-fx i:nth-child(1){left:8.1%;animation-delay:-0.37s}.wx-fx i:nth-child(2){left:16.2%;animation-delay:-0.74s}.wx-fx i:nth-child(3){left:24.3%;animation-delay:-0.21s}.wx-fx i:nth-child(4){left:32.4%;animation-delay:-0.58s}.wx-fx i:nth-child(5){left:40.5%;animation-delay:-0.05s}.wx-fx i:nth-child(6){left:48.6%;animation-delay:-0.42s}.wx-fx i:nth-child(7){left:56.7%;animation-delay:-0.79s}.wx-fx i:nth-child(8){left:64.8%;animation-delay:-0.26s}.wx-fx i:nth-child(9){left:72.9%;animation-delay:-0.63s}.wx-fx i:nth-child(10){left:81.0%;animation-delay:-0.10s}.wx-fx i:nth-child(11){left:89.1%;animation-delay:-0.47s}.wx-fx i:nth-child(12){left:97.2%;animation-delay:-0.84s}
@keyframes wxDrop{to{transform:translateY(44px)}}
.wx-fx-storm{animation:wxFlash 6s infinite}
@keyframes wxFlash{0%,90%,94%,100%{background:transparent}91%,93%{background:rgba(255,245,220,.13)}}
.wx-fx-cloud i,.wx-fx-fog i{position:absolute;top:4px;left:-25%;width:90px;height:20px;border-radius:20px;background:rgba(212,175,106,.16);filter:blur(4px);animation:wxDrift 22s linear infinite}
@keyframes wxDrift{to{transform:translateX(130vw)}}
@media(prefers-reduced-motion:reduce){.wx-fx,.wx-fx i{animation:none!important}.wx-fx-rain i,.wx-fx-storm i{display:none}}

/* ===== upgrade 2026-10-30: cinematic polish ===== */
/* film grain over the intro video */
.intro-stage::after{content:"";position:absolute;inset:0;z-index:3;pointer-events:none;opacity:.07;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.intro-title em{background:linear-gradient(100deg,#b8925a 0%,#f3dfae 45%,#c9a465 70%,#f3dfae 100%);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% 100%;animation:goldSheen 7s ease-in-out infinite}
@keyframes goldSheen{0%,100%{background-position:0 0}50%{background-position:100% 0}}
.intro-text .intro-copy .eyebrow::before,.intro-text .intro-copy .eyebrow::after{content:"";display:inline-block;width:28px;height:1px;background:currentColor;opacity:.6;vertical-align:middle;margin:0 12px}
/* trust strip under the hero */
.trust{background:#000;border-top:1px solid rgba(212,175,106,.18);border-bottom:1px solid rgba(212,175,106,.18)}
.trust ul{list-style:none;margin:0 auto;padding:18px 20px;max-width:1160px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.trust li{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;font:500 11px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#cfc8b8}
.trust li b{font:500 20px/1 var(--serif);letter-spacing:0;text-transform:none;color:#e6cf98}
@media (max-width:760px){.trust ul{grid-template-columns:repeat(2,1fr);gap:16px 10px;padding:18px 14px}.trust li{font-size:10px;letter-spacing:.12em}}
/* floating buttons: keep the hero clean on phones */
@media (max-width:760px){body.at-hero .wa-fab,body.at-hero .cg-bubble{opacity:0;pointer-events:none;transform:scale(.6)}}
/* weather strip: smaller, softer sun glow */
.wx-fx-sun i{width:26px;height:26px;margin:-13px 0 0 -13px;left:4%;background:radial-gradient(circle,rgba(212,175,106,.35) 0,rgba(212,175,106,.1) 45%,transparent 70%)}
/* section headings: gold hairline */
.section-head h2::after{content:"";display:block;width:44px;height:1px;margin-top:16px;background:linear-gradient(90deg,#d4af6a,transparent)}
.section-head[style*="center"] h2::after,.center h2::after{margin-left:auto;margin-right:auto}
/* car pages: cinematic gallery + fast-reply line */
.car-page .cp-gallery img:first-child{box-shadow:0 30px 80px -30px rgba(212,175,106,.25)}
.cp-reply{margin:10px 0 0;font:500 12px/1.5 var(--sans);letter-spacing:.08em;color:#bfb6a3}
.cp-reply a{color:#e6cf98}
@media (prefers-reduced-motion:reduce){.intro-title em{animation:none}}
.car-page .cp-rate{margin-top:6px}
.car-page .cp-cta{margin-bottom:6px}
.car-page .cp-gallery{margin-top:22px}
@media (max-width:760px){.car-page .cp-gallery img{aspect-ratio:4/3;object-fit:cover;width:100%;height:auto}}
.cp-reply a{white-space:nowrap}

/* fleet reel + car-page video (2026-11-01) */
.reel-sec{background:#0b0b0c;padding:72px 20px}
.reel-in{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1fr minmax(240px,360px);gap:48px;align-items:center}
.reel-title{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:clamp(34px,5vw,54px);line-height:1.05;color:#f3f1ec;margin:.2em 0 .4em}
.reel-title em{color:#d8b878;font-style:italic}
.reel-sub{color:#a7a39b;max-width:34ch;margin:0 0 24px}
.reel-frame,.cp-video{position:relative;aspect-ratio:9/16;border-radius:14px;overflow:hidden;background:#000 center/cover;box-shadow:0 0 0 1px rgba(216,184,120,.35),0 24px 60px rgba(0,0,0,.6)}
.reel-frame video,.cp-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.cp-video{max-width:360px;margin:28px auto}
@media (max-width:760px){.reel-sec{padding:56px 18px}.reel-in{grid-template-columns:1fr;gap:28px;text-align:center}.reel-sub{margin-left:auto;margin-right:auto}.reel-frame{max-width:320px;width:100%;margin:0 auto}}
