/* CARNOVA ivory homepage (2026-11-03) — ivory #F5F1E9 · espresso #211D19 · champagne #B69A6B */
:root{--iv-bg:#F5F1E9;--iv-bg2:#EFE9DE;--iv-ink:#211D19;--iv-ink2:#4A433B;--iv-mute:#6B6259;--iv-ch:#B69A6B;--iv-ch2:#8C7247;--iv-line:rgba(33,29,25,.14);--iv-line2:rgba(182,154,107,.45);
--iv-serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--iv-sans:Manrope,system-ui,-apple-system,"Segoe UI",sans-serif;--iv-head:76px}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html,body.iv{height:auto;overflow-x:hidden;overflow-y:visible;background:var(--iv-bg)!important;color:var(--iv-ink)}
body.iv{margin:0;font-family:var(--iv-sans);font-weight:400;line-height:1.6;font-size:16px}
.iv *,.iv *::before,.iv *::after{box-sizing:border-box}
.iv a{color:inherit}
.iv-wrap{width:min(1240px,100% - 2*clamp(20px,4vw,48px));margin-inline:auto}
.iv-skip{position:absolute;left:12px;top:-60px;z-index:200;background:var(--iv-ink);color:var(--iv-bg)!important;padding:10px 16px;border-radius:2px}
.iv-skip:focus{top:12px}
.iv :focus-visible{outline:2px solid var(--iv-ch2);outline-offset:3px}
/* header */
.iv-head{position:sticky;top:0;z-index:60;background:rgba(245,241,233,.94);backdrop-filter:saturate(1.2) blur(10px);-webkit-backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--iv-line)}
.iv-head-in{display:flex;align-items:center;justify-content:space-between;gap:24px;height:var(--iv-head)}
.iv-logo{display:flex;flex-direction:column;align-items:center;text-decoration:none;line-height:1;color:var(--iv-ink)!important}
.iv-logo-w{font-family:var(--iv-serif);font-weight:500;font-size:1.7rem;letter-spacing:.24em;margin-right:-.24em}
.iv-logo-s{font:500 .62rem/1 var(--iv-sans);letter-spacing:.42em;text-transform:uppercase;margin-top:6px;color:var(--iv-ink2);display:flex;align-items:center;gap:10px}
.iv-logo-s::before,.iv-logo-s::after{content:"";width:22px;height:1px;background:var(--iv-ch)}
.iv-nav{display:flex;gap:clamp(20px,3vw,44px);margin-left:auto}
.iv-nav a,.iv-menu nav a{font:500 .95rem/1 var(--iv-sans);text-decoration:none;color:var(--iv-ink);padding:8px 0;border-bottom:1px solid transparent;transition:border-color .25s,color .25s}
.iv-nav a:hover{border-color:var(--iv-ch)}
.iv-head-r{display:flex;align-items:center;gap:20px;padding-left:clamp(12px,2vw,28px);border-left:1px solid var(--iv-line)}
.iv-lang{display:flex;align-items:center;gap:6px;font:500 .8rem/1 var(--iv-sans);letter-spacing:.08em}
.iv-lang a{text-decoration:none;padding:8px 2px;color:var(--iv-mute)}
.iv-lang a[aria-current]{color:var(--iv-ink);border-bottom:1px solid var(--iv-ch)}
.iv-lang span{color:var(--iv-line2)}
.iv-burger{display:none;width:44px;height:44px;border:1px solid var(--iv-line);border-radius:2px;background:transparent;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:0}
.iv-burger span{display:block;width:18px;height:1.5px;background:var(--iv-ink);transition:transform .25s,opacity .25s}
.iv-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.iv-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.iv-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.iv-menu{border-top:1px solid var(--iv-line);background:var(--iv-bg);padding:12px clamp(20px,4vw,48px) 24px}
.iv-menu nav{display:flex;flex-direction:column}
.iv-menu nav a{font-size:1.1rem;padding:16px 0;border-bottom:1px solid var(--iv-line)}
.iv-menu .iv-btn{margin-top:20px;width:100%}
.iv-menu .iv-lang{margin-top:16px;justify-content:center;font-size:.95rem}
/* buttons */
.iv-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 24px;border-radius:2px;font:500 .95rem/1.2 var(--iv-sans);text-decoration:none;border:1px solid var(--iv-ink);transition:background .25s,color .25s,border-color .25s,transform .25s}
.iv-btn svg{width:18px;height:18px;transition:transform .25s}
.iv-btn:hover svg{transform:translateX(3px)}
.iv-btn-dark{background:var(--iv-ink);color:var(--iv-bg)!important}
.iv-btn-dark:hover{background:#3a332c}
.iv-btn-line{background:transparent;color:var(--iv-ink)!important}
.iv-btn-line:hover{background:var(--iv-ink);color:var(--iv-bg)!important}
.iv-btn-ghost{border-color:transparent;background:transparent;color:var(--iv-ink)!important;padding-inline:4px;text-decoration:underline;text-decoration-color:var(--iv-ch);text-underline-offset:6px}
.iv-btn-ghost:hover{text-decoration-color:var(--iv-ink)}
.iv-book{min-height:42px;padding:10px 20px;font-size:.9rem}
.iv-link{display:inline-flex;align-items:center;gap:8px;font:500 .92rem/1.2 var(--iv-sans);text-decoration:none;color:var(--iv-ink);border-bottom:1px solid var(--iv-ch);padding-bottom:4px}
.iv-link svg{width:16px;height:16px;transition:transform .25s}.iv-link:hover svg{transform:translateX(3px)}
/* type */
.iv h1,.iv h2,.iv h3{font-family:var(--iv-serif);font-weight:500;color:var(--iv-ink);letter-spacing:0;margin:0}
.iv-eyebrow{font:600 .74rem/1.4 var(--iv-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--iv-ch2);margin:0 0 18px}
.iv h2{font-size:clamp(2rem,3.6vw,3rem);line-height:1.1}
.iv-lead{color:var(--iv-ink2);font-size:1.05rem;max-width:36rem;margin:16px 0 0}
.iv-center{text-align:center}.iv-center .iv-lead{margin-inline:auto}
/* hero */
.iv-hero{position:relative;background:var(--iv-bg2);overflow:hidden}
.iv-media{position:relative;width:100%;height:min(56.25vw,calc(100svh - var(--iv-head)));min-height:560px;max-height:900px}
.iv video#hero,.iv .iv-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 22%;background:var(--iv-bg2);display:block}
.iv-fade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(245,241,233,.97) 0%,rgba(245,241,233,.9) 26%,rgba(245,241,233,.55) 40%,rgba(245,241,233,0) 52%)}
.iv-copy{position:absolute;z-index:3;left:max(clamp(20px,4vw,48px),calc((100% - 1240px)/2));top:50%;transform:translateY(-50%);width:min(560px,44%)}
.iv-copy h1{font-size:clamp(2.8rem,5.4vw,5rem);line-height:1.02;letter-spacing:-.005em}
.iv-sub{font-size:clamp(1.02rem,1.3vw,1.2rem);line-height:1.55;color:var(--iv-ink2);margin:22px 0 30px}
.iv-ctas{display:flex;flex-wrap:wrap;gap:14px 18px;align-items:center}
.iv-loc{display:flex;align-items:center;gap:10px;margin:30px 0 0;font:500 .74rem/1.4 var(--iv-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--iv-ink2)}
.iv-loc svg{width:16px;height:16px;color:var(--iv-ch2);flex:none}
.iv-hbar{position:absolute;z-index:4;left:max(clamp(20px,4vw,48px),calc((100% - 1240px)/2));bottom:clamp(20px,3vw,36px);display:flex;flex-direction:row-reverse;align-items:center;gap:10px}
.iv-vctl{display:flex;gap:8px}
.iv-vb{width:44px;height:44px;border-radius:50%;border:1px solid rgba(245,241,233,.55);background:rgba(33,29,25,.55);color:#F5F1E9;display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .25s,transform .25s;padding:0}
.iv-vb:hover{background:rgba(33,29,25,.8)}.iv-vb svg{width:20px;height:20px}
.iv-vb[data-v="sound"] svg:last-child,.iv-vb[data-v="sound"][aria-pressed="true"] svg:first-child{display:none}
.iv-vb[data-v="sound"][aria-pressed="true"] svg:last-child{display:block}
.iv-vb[data-v="play"] svg:last-child,.iv-vb[data-v="play"].is-paused svg:first-child{display:none}
.iv-vb[data-v="play"].is-paused svg:last-child{display:block}
.iv-pill{display:flex;align-items:center;min-height:44px;border:1px solid rgba(245,241,233,.55);border-radius:999px;background:rgba(33,29,25,.55);color:#F5F1E9;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);font:500 .72rem/1 var(--iv-sans);letter-spacing:.16em;text-transform:uppercase}
.iv-pill-l{padding:0 16px}
.iv-pill-b{display:flex;align-items:center;gap:8px;align-self:stretch;padding:0 16px;border-left:1px solid rgba(245,241,233,.35);text-decoration:none;color:#F5F1E9!important;letter-spacing:.04em;text-transform:none;font-size:.85rem;border-radius:0 999px 999px 0;transition:background .25s}
.iv-pill-b:hover{background:rgba(245,241,233,.14)}.iv-pill-b svg{width:16px;height:16px}
/* steps */
.iv-steps{border-bottom:1px solid var(--iv-line)}
.iv-steps ol{list-style:none;margin:0 auto;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--iv-line2)}
.iv-steps li{display:flex;gap:20px;padding:36px clamp(16px,2.4vw,36px);border-left:1px solid var(--iv-line)}
.iv-steps li:first-child{border-left:0;padding-left:0}
.iv-n{font:500 1.35rem/1.2 var(--iv-serif);color:var(--iv-ch2)}
.iv-steps h3{font-size:1.55rem;line-height:1.2;margin-bottom:8px}.iv-steps h3 a{text-decoration:none}.iv-steps h3 a:hover{text-decoration:underline;text-decoration-color:var(--iv-ch);text-underline-offset:5px}
.iv-steps p{margin:0;color:var(--iv-ink2);font-size:.95rem}
/* sections */
.iv-sec{padding:clamp(64px,9vw,120px) 0}
.iv-sec-h{margin-bottom:clamp(36px,5vw,56px)}
.iv-rule{display:flex;align-items:center;gap:28px;justify-content:center}
.iv-rule::before,.iv-rule::after{content:"";flex:1;max-width:260px;height:1px;background:var(--iv-line2)}
.iv-cars{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.4vw,32px)}
.iv-car{background:#FBF8F2;border:1px solid var(--iv-line);transition:transform .3s,box-shadow .3s;display:flex;flex-direction:column}
.iv-car:hover{transform:translateY(-3px);box-shadow:0 18px 40px -24px rgba(33,29,25,.35)}
.iv-car-img{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--iv-bg2)}
.iv-car-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}
.iv-car:hover .iv-car-img img{transform:scale(1.03)}
.iv-car-b{padding:22px 22px 24px;display:flex;flex-direction:column;gap:6px;flex:1}
.iv-car h3{font-size:1.45rem;line-height:1.2}.iv-car h3 a{text-decoration:none}
.iv-car-m{margin:0;color:var(--iv-mute);font-size:.88rem}
.iv-car-p{margin:6px 0 14px;display:flex;align-items:baseline;gap:10px}
.iv-car-p span{font:600 .72rem/1 var(--iv-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--iv-ch2)}
.iv-car-p b{font:500 1.5rem/1 var(--iv-serif)}
.iv-car .iv-link{margin-top:auto;align-self:flex-start}
.iv-fees{text-align:center;color:var(--iv-mute);font-size:.85rem;margin:28px 0 24px}
.iv-fin{background:var(--iv-bg2);border-block:1px solid var(--iv-line)}
.iv-split{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(32px,6vw,96px);align-items:center}
.iv-card{background:var(--iv-bg);border:1px solid var(--iv-line);padding:clamp(28px,4vw,44px)}
.iv-list{list-style:none;margin:0 0 28px;padding:0}
.iv-list li{padding:14px 0 14px 28px;border-bottom:1px solid var(--iv-line);position:relative}
.iv-list li::before{content:"";position:absolute;left:0;top:23px;width:12px;height:1px;background:var(--iv-ch)}
.iv-note{margin:18px 0 0;color:var(--iv-mute);font-size:.85rem}
.iv-agg{margin:14px 0 0;color:var(--iv-ink2)}.iv-agg b{color:var(--iv-ch2);font-weight:600}
.iv-rv-list{list-style:none;margin:0 0 36px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.4vw,32px)}
.iv-rv{border-top:1px solid var(--iv-line2);padding:28px 4px 0;display:flex;flex-direction:column;gap:14px}
.iv-rv .rv-stars{color:var(--iv-ch);letter-spacing:3px;font-size:.95rem}
.iv-rv .rv-text{margin:0;font:500 1.3rem/1.45 var(--iv-serif);color:var(--iv-ink)}
.iv-rv .rv-name{margin:0;font-weight:600;font-size:.9rem}.iv-rv .rv-tr{margin:0;font-size:.78rem;color:var(--iv-mute)}
/* trade-in form (existing, restyled) */
.iv-trade .sec.trade{padding:0 0 clamp(64px,9vw,110px);background:transparent}
.iv-trade .wrap{width:min(1240px,100% - 2*clamp(20px,4vw,48px));margin-inline:auto;max-width:none;padding:0}
.iv-trade .glass{background:#FBF8F2!important;border:1px solid var(--iv-line)!important;border-radius:0!important;box-shadow:none!important;color:var(--iv-ink)!important;backdrop-filter:none!important}
.iv-trade .h2{font-family:var(--iv-serif)!important;font-weight:500!important;color:var(--iv-ink)!important}
.iv-trade .h2 em{color:var(--iv-ch2)!important}
.iv-trade .eyebrow2{color:var(--iv-ch2)!important;font-family:var(--iv-sans)!important}
.iv-trade .lead,.iv-trade .note,.iv-trade label,.iv-trade .ff span{color:var(--iv-ink2)!important;font-family:var(--iv-sans)!important}
.iv-trade input,.iv-trade select{background:var(--iv-bg)!important;border:1px solid var(--iv-line)!important;color:var(--iv-ink)!important;border-radius:2px!important;font-family:var(--iv-sans)!important}
.iv-trade .btn-gold{background:var(--iv-ink)!important;color:var(--iv-bg)!important;border-radius:2px!important;border:0!important;font-family:var(--iv-sans)!important}
.iv-contact{border-top:1px solid var(--iv-line)}
.iv-contact .iv-ctas{margin-top:32px}
.iv-dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--iv-line2)}
.iv-dl>div{padding:24px 20px 24px 0;border-bottom:1px solid var(--iv-line)}
.iv-dl dt{font:600 .72rem/1.4 var(--iv-sans);letter-spacing:.18em;text-transform:uppercase;color:var(--iv-ch2);margin-bottom:8px}
.iv-dl dd{margin:0;font-size:1rem;line-height:1.6}.iv-dl a{text-decoration:none;border-bottom:1px solid var(--iv-line2)}
/* existing footer + quick bar in the ivory palette */
.iv .foot{background:var(--iv-ink)!important;color:#E9E2D5!important;border-top:0!important}
.iv .foot a{color:#F5F1E9!important}.iv .foot .ft-h{color:var(--iv-ch)!important}.iv .foot .tl-logo{color:#F5F1E9!important}
.iv .cta-bar{background:rgba(245,241,233,.96)!important;border-top:1px solid var(--iv-line)!important}.iv .cta-bar a{background:var(--iv-ink)!important;color:#F5F1E9!important;border:0!important;border-radius:2px!important;font-family:var(--iv-sans)!important}.iv .cta-bar a.gold{background:var(--iv-ch)!important;color:var(--iv-ink)!important}
/* responsive */
@media (max-width:1100px){.iv-nav{gap:22px}.iv-head-r{gap:14px}}
@media (max-width:999px){
 .iv-nav{display:none}.iv-burger{display:inline-flex}.iv-head-r{border-left:0;padding-left:0}.iv-head-r>.iv-lang{display:none}
 .iv-media{height:auto;min-height:0;max-height:none;aspect-ratio:16/9}
 .iv-fade{background:linear-gradient(0deg,rgba(245,241,233,.35),rgba(245,241,233,0) 30%)}
 .iv-copy{position:static;transform:none;width:auto;max-width:680px;padding:40px clamp(20px,4vw,48px) 56px}
 .iv-hbar{left:16px;right:16px;bottom:16px;justify-content:space-between}
 .iv-steps ol{grid-template-columns:1fr}.iv-steps li{border-left:0;border-bottom:1px solid var(--iv-line);padding:26px 0}.iv-steps li:last-child{border-bottom:0}
 .iv-cars,.iv-rv-list{grid-template-columns:1fr 1fr}.iv-split{grid-template-columns:1fr}
}
@media (max-width:600px){
 :root{--iv-head:64px}
 .iv-logo-w{font-size:1.35rem}.iv-logo-s{font-size:.55rem}
 .iv-book{display:none}
 .iv-media{aspect-ratio:4/5}
 .iv video#hero{object-position:50% 20%}
 .iv-copy{padding:32px 20px 48px}.iv-copy h1{font-size:clamp(2.5rem,11vw,3.1rem)}
 .iv-ctas .iv-btn{flex:1 1 100%}.iv-ctas .iv-btn-ghost{flex:0 1 auto}
 .iv-loc{letter-spacing:.12em;font-size:.7rem}
 .iv-hbar{position:static}.iv-pill{position:absolute;z-index:4;left:12px;bottom:12px;letter-spacing:.12em;font-size:.66rem}.iv-pill-l{padding:0 12px}.iv-pill-b{padding:0 14px}
 .iv-vctl{position:absolute;z-index:4;right:12px;top:12px;gap:6px}
 .iv-cars,.iv-rv-list,.iv-dl{grid-template-columns:1fr}
 .iv-rule{gap:14px}.iv-rule::before,.iv-rule::after{max-width:40px}
 .iv-dl>div{padding-right:0}
}
@media (prefers-reduced-motion:reduce){.iv *{transition:none!important;scroll-behavior:auto!important}.iv-car:hover,.iv-car:hover .iv-car-img img{transform:none}}
.iv .foot{padding:56px 0 calc(40px + env(safe-area-inset-bottom))!important}
.iv .foot .wrap{width:min(1240px,100% - 2*clamp(20px,4vw,48px))!important;margin-inline:auto!important;max-width:none!important;padding:0!important}
.iv .foot,.iv .foot p,.iv .foot .note{font-family:var(--iv-sans)!important}
.iv .foot .tl-logo{font-family:var(--iv-serif)!important}
.iv .cn-greet{background:#FBF8F2!important;color:#211D19!important;border:1px solid rgba(33,29,25,.16)!important;box-shadow:0 14px 34px -18px rgba(33,29,25,.45)!important}
.iv .cn-greet *{color:#211D19!important}
@media (max-width:860px){.iv .foot{padding-bottom:110px!important}}
@media (max-width:600px){.iv-cars .iv-car:nth-child(n+5){display:none}}

/* 2026-11-04 accessibility: WCAG AA contrast for champagne small text, form divider, footer note; screen-reader-only heading */
:root{--iv-ch2:#735C34}
.iv .ff-or{color:#6F6A62!important}
.iv .foot .note span{color:#A39A8E!important}
.iv-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
