/* CARNOVA "Top of the Line" layer — additive. Hero (video/poster/slogan) untouched. */
@view-transition { navigation: auto; }
:root{--g:#c9a962;--g2:#e8d29a;--g3:#8a6d2f;--cr:#f4f1ea;--mu:#bfb8ad;--bg:#07070a;--card:rgba(20,19,18,.72);--ln:rgba(232,210,154,.22);
  --chrome:linear-gradient(135deg,#f7f3ea 0%,#b9b4aa 22%,#fdfbf6 40%,#8e8a82 62%,#e9e5dc 80%,#a7a296 100%);--ease:cubic-bezier(.2,.8,.2,1)}
/* Home: allow scrolling below the locked full-screen hero (hero stays fixed, first view identical) */
html.tl-home,html.tl-home body{height:auto;overflow-x:hidden;overflow-y:auto}
.tl-page{background:var(--bg);color:var(--cr);font-family:Inter,system-ui,sans-serif;min-height:100dvh;margin:0}
.tl-page *{box-sizing:border-box}
.tl-main{position:relative;z-index:30;margin-top:100svh;background:linear-gradient(180deg,rgba(7,7,10,0) 0,rgba(7,7,10,.92) 120px,var(--bg) 220px)}
.tl-sub{padding-top:0}
.tl a{color:inherit;text-decoration:none}
.tl button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.tl .wrap{width:min(1180px,100% - 32px);margin-inline:auto}
/* Sticky glass header */
.tl-head{position:sticky;top:0;z-index:40;backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);background:rgba(7,7,10,.62);border-bottom:1px solid var(--ln)}
.tl-head .wrap{display:flex;align-items:center;gap:14px;height:62px}
.tl-logo{font-family:"Cormorant Garamond",serif;font-size:1.35rem;letter-spacing:.24em;font-weight:600;white-space:nowrap}
.tl-logo b{font-weight:600;background:var(--chrome);-webkit-background-clip:text;background-clip:text;color:transparent}
.tl-logo span{color:var(--g)}
.tl-nav{display:flex;gap:18px;margin-left:auto;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(244,241,234,.78)}
.tl-nav a:hover,.tl-nav a[aria-current=page]{color:var(--g2)}
.tl-lang{display:flex;border:1px solid var(--ln);border-radius:999px;overflow:hidden;font-size:.76rem;letter-spacing:.12em}
.tl-lang button{padding:7px 10px;color:rgba(244,241,234,.65)}
.tl-lang button.active{background:var(--g);color:#111}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 20px;font-size:.76rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;border-radius:999px;transition:transform .2s var(--ease),filter .2s,border-color .2s}
.btn:hover{transform:translateY(-1px);filter:brightness(1.07)}
.btn-gold{background:linear-gradient(180deg,var(--g2),var(--g) 55%,#b08f4a);color:#111!important;box-shadow:0 8px 24px rgba(201,169,98,.25)}
.btn-line{border:1px solid rgba(244,241,234,.32)}
.btn-line:hover{border-color:var(--g2)}
.tl-head .btn{min-height:38px;padding:9px 16px}
@media (max-width:860px){.tl-nav{display:none}.tl-head .btn-apply{display:none}}
/* Sections */
.sec{padding:clamp(56px,9vw,112px) 0;position:relative}
.eyebrow2{color:var(--g);font-size:.76rem;letter-spacing:.22em;text-transform:uppercase;font-weight:600;margin:0 0 12px}
.h2{font-family:"Cormorant Garamond",serif;font-weight:500;font-size:clamp(2rem,4.6vw,3.3rem);line-height:1.05;margin:0 0 14px}
.h2 em{font-style:italic;color:var(--g2)}
.lead{color:var(--mu);max-width:44rem;line-height:1.6;margin:0 0 26px}
.glass{background:var(--card);border:1px solid var(--ln);border-radius:22px;backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);box-shadow:0 24px 60px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.05)}
.grid3{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.pill{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;border:1px solid var(--ln);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:var(--g2)}
.why .glass{padding:24px}
.why h3,.team h3{font-family:"Cormorant Garamond",serif;font-size:1.5rem;font-weight:600;margin:10px 0 6px}
.why p,.team p{color:var(--mu);line-height:1.55;margin:0}
.ico{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 30% 30%,#2a2620,#0e0d0c);border:1px solid var(--ln);color:var(--g2)}
.ico svg{width:20px;height:20px}
.ctas2{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.gold-rule{height:1px;background:linear-gradient(90deg,transparent,var(--g),transparent);opacity:.5}
/* Inventory cards */
.cars{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
.car{container-type:inline-size;overflow:hidden;display:flex;flex-direction:column}
.car[hidden]{display:none}
.gal{position:relative;aspect-ratio:4/3;background:#111}
.gal-track{display:flex;height:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.gal-track::-webkit-scrollbar{display:none}
.gal-track picture{flex:0 0 100%;scroll-snap-align:center}
.gal-track img{width:100%;height:100%;object-fit:cover;display:block}
.gal-dots{position:absolute;left:0;right:0;bottom:8px;display:flex;justify-content:center;gap:5px;pointer-events:none}
.gal-dots i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.45)}
.gal-dots i.on{background:var(--g2);width:16px;border-radius:4px}
.gal-nav{position:absolute;top:50%;translate:0 -50%;width:34px;height:34px;border-radius:50%;background:rgba(0,0,0,.5);border:1px solid var(--ln)!important;color:#fff;display:grid;place-items:center;opacity:0;transition:opacity .2s}
.gal:hover .gal-nav,.gal-nav:focus-visible{opacity:1}
.gal-prev{left:8px}.gal-next{right:8px}
@media (hover:none){.gal-nav{display:none}}
.badge-body{position:absolute;top:10px;left:10px;padding:5px 10px;border-radius:999px;background:rgba(7,7,10,.66);border:1px solid var(--ln);font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;color:var(--g2)}
.car-b{padding:16px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.car-t{font-family:"Cormorant Garamond",serif;font-size:1.35rem;line-height:1.15;font-weight:600;margin:0}
.car-m{font-size:.76rem;color:var(--mu);letter-spacing:.04em}
.price{font-size:1.25rem;font-weight:600;background:var(--chrome);-webkit-background-clip:text;background-clip:text;color:transparent}
.price.call{font-size:.95rem;color:var(--g2);-webkit-text-fill-color:var(--g2)}
.car-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.car-cta{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:auto;padding-top:8px}
.car-cta .btn{min-height:42px;padding:10px 12px;font-size:.76rem}
.car-links{display:flex;justify-content:space-between;font-size:.76rem;color:var(--g2);padding-top:4px}
@container (min-width:360px){.car-t{font-size:1.45rem}}
/* Filters */
.filters{position:sticky;top:62px;z-index:35;padding:12px;margin-bottom:18px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.filters select,.filters input{background:rgba(0,0,0,.35);color:var(--cr);border:1px solid var(--ln);border-radius:999px;padding:10px 14px;font:inherit;font-size:.80rem;min-height:42px}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{padding:9px 13px;border-radius:999px;border:1px solid var(--ln)!important;font-size:.76rem!important;letter-spacing:.12em;text-transform:uppercase;min-height:40px}
.chip[aria-pressed=true]{background:var(--g);color:#111!important;border-color:var(--g)!important}
.count{margin-left:auto;font-size:.76rem;color:var(--mu)}
@media (max-width:640px){.filters{top:62px;border-radius:16px}.filters select{flex:1 1 44%}.count{margin-left:0;width:100%}}
.note{font-size:.76rem;color:rgba(244,241,234,.5);line-height:1.5}
/* Estimator */
.est{display:grid;gap:18px;grid-template-columns:1fr}
@media (min-width:900px){.est{grid-template-columns:1.1fr .9fr}}
.est .glass{padding:clamp(18px,3vw,30px)}
.fld{display:grid;gap:8px;margin-bottom:18px}
.fld label{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--g2);display:flex;justify-content:space-between}
.fld output{color:var(--cr);letter-spacing:0;text-transform:none;font-weight:600}
.fld input[type=range]{accent-color:var(--g);width:100%}
.fld input[type=number]{background:rgba(0,0,0,.35);color:var(--cr);border:1px solid var(--ln);border-radius:12px;padding:12px 14px;font:inherit;min-height:46px}
.seg{display:flex;flex-wrap:wrap;gap:6px}
.seg button{padding:10px 14px;border-radius:999px;border:1px solid var(--ln)!important;min-height:42px;font-size:.78rem}
.seg button[aria-pressed=true]{background:var(--g);color:#111!important}
.pay{font-family:"Cormorant Garamond",serif;font-size:clamp(3rem,9vw,4.6rem);line-height:1;margin:6px 0;background:var(--chrome);-webkit-background-clip:text;background-clip:text;color:transparent}
.brk{list-style:none;padding:0;margin:14px 0;display:grid;gap:8px;font-size:.86rem;color:var(--mu)}
.brk li{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.07);padding-top:8px}
.brk b{color:var(--cr);font-weight:600}
.disc{border:1px solid rgba(232,210,154,.35);background:rgba(201,169,98,.07);border-radius:14px;padding:12px 14px;font-size:.76rem;line-height:1.55;color:rgba(244,241,234,.8)}
/* Visit / footer */
.visit{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}
.visit .glass{padding:26px}
.nap2{font-size:1.05rem;line-height:1.7}
.nap2 a{color:var(--g2)}
.foot{border-top:1px solid var(--ln);padding:34px 0 120px;color:var(--mu);font-size:.80rem;line-height:1.7}
.foot .tl-logo{font-size:1.6rem}
/* Mobile sticky CTA bar */
.cta-bar{position:fixed;left:0;right:0;bottom:0;z-index:55;display:none;grid-template-columns:1fr 1fr 1.3fr;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));
  background:rgba(7,7,10,.78);backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);border-top:1px solid var(--ln);transform:translateY(110%);transition:transform .35s var(--ease)}
.cta-bar a{min-height:48px;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;border:1px solid rgba(244,241,234,.22);color:var(--cr);text-decoration:none}
.cta-bar a svg{width:18px;height:18px}
.cta-bar a.gold{background:linear-gradient(180deg,var(--g2),var(--g) 55%,#b08f4a);color:#111;border-color:transparent;font-size:.76rem}
@media (max-width:760px){.cta-bar{display:grid}.show-bar .cta-bar{transform:none}.show-bar .cta-bar{padding-right:74px}.show-bar .sl-launch{right:12px!important;bottom:calc(9px + env(safe-area-inset-bottom))!important;padding:2px!important;gap:0!important;z-index:56}.show-bar .sl-launch .sl-label{display:none}.show-bar .sl-launch .sl-ring{width:46px;height:46px}}
/* Scroll-driven reveal (CSS scroll timelines) with IO fallback */
@media (prefers-reduced-motion:no-preference){
  @supports (animation-timeline: view()){
    .rv{animation:rv linear both;animation-timeline:view();animation-range:entry 0% cover 28%}
  }
  @supports not (animation-timeline: view()){
    .rv{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
    .rv.in{opacity:1;transform:none}
  }
}
@keyframes rv{from{opacity:0;transform:translateY(28px) scale(.985)}to{opacity:1;transform:none}}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:2px solid var(--g2);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.btn,.cta-bar{transition:none}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}

.tl-sub .car{content-visibility:auto;contain-intrinsic-size:auto 560px}

/* polish: icon buttons (e.g. phone) keep a compact icon + single-line label */
.btn svg{width:17px;height:17px;flex:none}.btn:has(svg){white-space:nowrap}
