:root{
  --bg:#0b0c0e; --surface:#131518; --surface-2:#1a1d21; --line:rgba(236,233,228,.12); --line-2:rgba(236,233,228,.22);
  --text:#ece9e4; --muted:#a8a39c; --faint:#8a857e;
  --heat:#ff5a1f; --heat-ink:#0b0c0e;
  --panel:#e8e5df; --ink:#0b0c0e; --ink-muted:#4d4943;
  --live:#5fd08a;
  --display:'Clash Grotesk','Switzer',system-ui,sans-serif;
  --body:'Switzer',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'JetBrains Mono',ui-monospace,Menlo,monospace;
  --text-xs:clamp(.75rem,.7rem + .25vw,.875rem);
  --text-sm:clamp(.875rem,.8rem + .35vw,1rem);
  --text-base:clamp(1rem,.95rem + .25vw,1.125rem);
  --text-lg:clamp(1.125rem,1rem + .75vw,1.5rem);
  --text-xl:clamp(1.5rem,1.2rem + 1.25vw,2.25rem);
  --text-2xl:clamp(2rem,1.2rem + 2.5vw,3.5rem);
  --text-hero:clamp(3rem,.4rem + 6vw,6.4rem);
  --wrap:1240px; --pad:clamp(1.25rem,4vw,3rem);
  --sec:clamp(4.5rem,9vw,8.5rem);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:72px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--bg);color:var(--text);font:400 var(--text-base)/1.6 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.02;letter-spacing:-.02em;margin:0;text-wrap:balance}
p{margin:0;text-wrap:pretty}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.skip{position:absolute;left:-999px;top:8px;background:var(--heat);color:var(--heat-ink);padding:.5rem 1rem;z-index:100;font-weight:600}
.skip:focus{left:8px}
:focus-visible{outline:2px solid var(--heat);outline-offset:3px;border-radius:2px}

.label{font:500 var(--text-xs)/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:1.25rem}
.label span{color:var(--heat)}
.label--ink{color:var(--ink-muted)}

/* nav */
.nav{position:sticky;top:0;z-index:50;background:rgba(11,12,14,.82);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav__row{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:inline-flex;align-items:center;gap:.6rem;color:var(--text);text-decoration:none}
.brand .kova-mark{width:28px;height:28px}
.brand .kova-wordmark{height:15px;width:auto}
.nav__links{display:flex;gap:2rem}
.nav__links a{font:500 var(--text-xs)/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-decoration:none;padding:.5rem 0;transition:color .18s}
.nav__links a:hover{color:var(--text)}
.nav__menu{display:none;width:44px;height:44px;background:none;border:0;color:var(--text);cursor:pointer;padding:0;position:relative}
.nav__menu span{position:absolute;left:12px;right:12px;height:2px;background:currentColor;transition:transform .2s}
.nav__menu span:first-child{top:17px}.nav__menu span:last-child{top:25px}
.nav__menu[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}
.nav__menu[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:.5rem;min-height:48px;padding:0 1.4rem;background:var(--heat);color:var(--heat-ink);font:600 var(--text-sm)/1 var(--body);text-decoration:none;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);transition:background .18s,transform .18s}
.btn:hover{background:#ff7a47}
.btn:active{transform:translateY(1px)}
.btn--ghost{background:transparent;color:var(--text);box-shadow:inset 0 0 0 1px var(--line-2);clip-path:none}
.btn--ghost:hover{background:var(--surface-2)}

/* dots */
.dot{display:inline-flex;align-items:center;gap:.45rem;font:500 var(--text-xs)/1 var(--mono);letter-spacing:.06em;text-transform:none;font-style:normal;color:var(--heat)}
.dot::before{content:"";width:7px;height:7px;background:var(--heat);flex:none}
.dot--live{color:var(--live)}.dot--live::before{background:var(--live);border-radius:50%}
.dot--off{color:var(--faint)}.dot--off::before{background:transparent;box-shadow:inset 0 0 0 1px var(--faint)}

/* hero */
.hero{padding:clamp(3rem,7vw,6rem) 0 clamp(2.5rem,5vw,4rem);position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(var(--line) 1px,transparent 1px) 0 0/100% 96px;mask-image:linear-gradient(180deg,#000 0%,transparent 70%);-webkit-mask-image:linear-gradient(180deg,#000 0%,transparent 70%);opacity:.35;pointer-events:none}
.hero__grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(2rem,5vw,5rem);align-items:center;position:relative}
.hero h1{font-size:var(--text-hero);font-weight:600;letter-spacing:-.035em;line-height:.94}
.hero h1 span{color:var(--muted)}
.hero__lede{font-size:var(--text-lg);line-height:1.45;color:var(--muted);max-width:34ch;margin-top:2rem}
.hero__cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2.5rem}
.hero__fig{margin:0;background:var(--panel);clip-path:polygon(28px 0,100% 0,100% calc(100% - 28px),calc(100% - 28px) 100%,0 100%,0 28px);position:relative}
.hero__fig img{width:100%;aspect-ratio:9/10;object-fit:cover;object-position:50% 45%}
.hero__fig figcaption{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1.25rem 1.1rem;font:500 .72rem/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);border-top:1px solid rgba(11,12,14,.12)}
.hero__fig figcaption span:first-child{color:var(--ink)}
.hero__fig figcaption{flex-wrap:wrap;row-gap:.35rem}.hero__fig figcaption span{white-space:nowrap}

.rail{list-style:none;margin:clamp(3rem,6vw,5rem) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.rail li+li{border-left:1px solid var(--line)}
.rail a{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"n b" "n e" "n i";column-gap:1rem;row-gap:.3rem;padding:1.5rem 1.5rem 1.25rem 0;text-decoration:none;transition:background .18s}
.rail li+li a{padding-left:1.5rem}
.rail a:hover{background:var(--surface)}
.rail__n{grid-area:n;font:500 var(--text-xs)/1.4 var(--mono);color:var(--heat)}
.rail b{grid-area:b;font:500 var(--text-xs)/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.rail em{grid-area:e;font:600 var(--text-xl)/1.1 var(--display);font-style:normal;letter-spacing:-.01em}
.rail .dot{grid-area:i;margin-top:.4rem}

/* meaning */
.meaning{background:var(--panel);color:var(--ink);padding:var(--sec) 0}
.meaning__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(2.5rem,6vw,6rem);align-items:center}
.meaning h2{font-size:var(--text-2xl)}
.meaning__lede{margin-top:1.5rem;font-size:var(--text-lg);line-height:1.5;color:var(--ink-muted);max-width:38ch}
.meaning__lede i{color:var(--ink)}
.dict{margin:0;border-top:2px solid var(--ink)}
.dict div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:baseline;gap:1.5rem;padding:1.4rem 0;border-bottom:1px solid rgba(11,12,14,.16)}
.dict dt{font:600 clamp(2.25rem,1.4rem + 3vw,4.25rem)/1 var(--display);letter-spacing:-.03em}
.dict dd{margin:0;font-size:var(--text-lg);line-height:1.3}
.dict dd span{display:block;font:500 .72rem/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:.45rem}

/* products */
.products{padding:var(--sec) 0}
.sec__head{margin-bottom:clamp(2.5rem,5vw,4.5rem)}
.sec__head h2{font-size:var(--text-2xl);max-width:18ch}
.prod__kicker{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1rem;font:500 var(--text-xs)/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:1.25rem}
.prod{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,5vw,5rem);padding:clamp(2rem,4vw,3.5rem) 0;border-top:1px solid var(--line)}
.prod h3,.hand h3{font-size:var(--text-2xl)}
.prod h3 small{display:block;font:500 var(--text-sm)/1.3 var(--body);letter-spacing:0;color:var(--muted);margin-top:.6rem}
.prod__copy>p{margin-top:1.5rem;color:var(--muted);max-width:44ch}
.facts{list-style:none;padding:0;margin:1.75rem 0 2rem;border-top:1px solid var(--line)}
.facts li{padding:.85rem 0;border-bottom:1px solid var(--line);font-size:var(--text-sm);color:var(--muted)}
.facts b{color:var(--text);font-weight:600}
.screens{display:grid;grid-template-columns:1fr 1fr;gap:clamp(.75rem,1.5vw,1.25rem);align-content:start}
.screen{margin:0;background:#050506;padding:clamp(.5rem,1vw,.85rem);border:1px solid var(--line)}
.screen--main{grid-column:1/-1}
.pix{width:100%;image-rendering:pixelated;image-rendering:crisp-edges}
.screens__cap{grid-column:1/-1;font:400 var(--text-xs)/1.4 var(--mono);color:var(--faint)}

.hand{padding:clamp(2rem,4vw,3.5rem) 0;border-top:1px solid var(--line)}
.hand__head{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,5vw,5rem);align-items:end;margin-bottom:clamp(2rem,4vw,3rem)}
.hand__lede{font-size:var(--text-lg);line-height:1.45;color:var(--muted);max-width:42ch}
.hand__lede a{color:var(--text);text-decoration-color:var(--heat);text-underline-offset:3px}
.poses{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(.5rem,1vw,1rem)}
.poses figure{margin:0;background:var(--panel);position:relative}
.poses img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:50% 50%}
.poses figcaption{position:absolute;left:.85rem;top:.8rem;font:500 .7rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}
.hand__body{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(2rem,5vw,5rem);margin-top:clamp(2rem,4vw,3rem)}
.spec{margin:0;border-top:1px solid var(--line-2)}
.spec div{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:1.5rem;padding:.9rem 0;border-bottom:1px solid var(--line)}
.spec dt{font:500 var(--text-xs)/1.5 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.spec dd{margin:0;font-size:var(--text-sm)}
.status{background:var(--surface);border-left:3px solid var(--heat);padding:1.75rem;align-self:start}
.status__tag{font:500 var(--text-xs)/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--heat);margin-bottom:1rem;display:flex;align-items:center}
.status p:not(.status__tag){color:var(--muted);font-size:var(--text-sm)}
.status b{color:var(--text);display:block;font-size:var(--text-base);margin-bottom:.5rem}
.status .btn{margin-top:1.5rem}

.lab{padding:clamp(2rem,4vw,3.5rem) 0 0;border-top:1px solid var(--line)}
.lab__row{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,5vw,5rem);align-items:baseline}
.lab h3{font-size:var(--text-xl)}
.lab p{color:var(--muted);max-width:52ch}

/* now/next */
.now{padding:var(--sec) 0;background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.now__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,4rem)}
.now__col h3{display:flex;align-items:center;gap:.75rem;font:500 var(--text-xs)/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text);padding-bottom:1rem;border-bottom:1px solid var(--line-2)}
.now__col h3 .dot::before{width:9px;height:9px}
.now__col ul{list-style:none;margin:0;padding:0}
.now__col li{padding:1.25rem 0;border-bottom:1px solid var(--line);font-size:var(--text-lg);line-height:1.4;color:var(--muted)}
.now__col li b{color:var(--text);font-weight:600}
.now__col a{color:var(--text);text-decoration-color:var(--heat);text-underline-offset:3px}

/* contact */
.contact{padding:var(--sec) 0}
.contact__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,5vw,5rem);align-items:end}
.contact h2{font-size:var(--text-2xl)}
.contact__grid>div:first-child p:not(.label){margin-top:1.25rem;color:var(--muted);max-width:40ch}
.contact__mail a{display:inline-block;font:600 clamp(1.6rem,.9rem + 3.2vw,4rem)/1.05 var(--display);letter-spacing:-.02em;text-decoration:none;border-bottom:3px solid var(--heat);padding-bottom:.25rem;overflow-wrap:anywhere;transition:color .18s}
.contact__mail a:hover{color:var(--heat)}
.contact__mail p{margin-top:1.5rem;color:var(--faint);font-size:var(--text-sm)}

/* reveal (JS only) */
.js .rv{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}
.js .rv.in{opacity:1;transform:none}

/* responsive (v1) */
@media (max-width:960px){
  .hero__grid,.meaning__grid,.prod,.hand__head,.hand__body,.lab__row,.contact__grid{grid-template-columns:1fr}
  .hero__fig{max-width:520px}
  .poses{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:720px){
  .nav__menu{display:block}
  .nav__links{position:absolute;top:64px;left:0;right:0;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--line);padding:.5rem var(--pad) 1rem;display:none}
  .nav__links.open{display:flex}
  .nav__links a{padding:1rem 0;border-bottom:1px solid var(--line);font-size:.85rem}
  .rail{grid-template-columns:1fr}
  .rail li+li{border-left:0;border-top:1px solid var(--line)}
  .rail li+li a,.rail a{padding:1.1rem 0}
  .dict div{grid-template-columns:1fr;gap:.5rem}
  .now__grid{grid-template-columns:1fr}
  .spec div{grid-template-columns:1fr;gap:.25rem}
  .hero__fig figcaption{flex-direction:column;gap:.35rem}
}

/* ===== v2: multi-page ===== */
.label a{color:inherit;text-decoration:none}.label a:hover{color:var(--text)}
.nav__links a[aria-current=page]{color:var(--text);box-shadow:inset 0 -2px 0 var(--heat)}
.hero__fig--dark{background:#000}
.hero__fig--dark img{object-position:50% 30%}
.hero--k2 .hero__fig img{aspect-ratio:4/5}
.sec__head--row{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(1.5rem,4vw,4rem);align-items:end}
.sec__aside{color:var(--muted);max-width:46ch;font-size:var(--text-base)}
.h-sm{font-size:var(--text-xl);margin-bottom:1.25rem}

/* chips + tags */
.chip{display:inline-flex;align-items:center;gap:.45rem;font:500 .72rem/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;font-style:normal;padding:.4rem .6rem;border:1px solid currentColor;white-space:nowrap}
.chip::before{content:"";width:6px;height:6px;background:currentColor;flex:none}
.chip--live{color:var(--live)}.chip--live::before{border-radius:50%}
.chip--concept{color:#c9b8ff}.chip--concept::before{background:transparent;box-shadow:inset 0 0 0 1.5px currentColor}
.chip--proto{color:var(--heat)}
.chip--lg{font-size:.78rem;padding:.55rem .75rem;margin-top:1.5rem;white-space:normal;line-height:1.3}
.tag{display:inline-block;font:500 .65rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;font-style:normal;padding:.3rem .45rem;vertical-align:.1em;white-space:nowrap}
.tag--c{color:var(--text);box-shadow:inset 0 0 0 1px var(--line-2)}
.tag--d{color:#8ec5ff;box-shadow:inset 0 0 0 1px rgba(142,197,255,.4)}
.tag--e{color:#ffb38f;box-shadow:inset 0 0 0 1px rgba(255,140,90,.5);background:rgba(255,90,31,.08)}

/* platform cards */
.platforms{padding:var(--sec) 0}
.cards{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(.75rem,1.5vw,1.25rem)}
.card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--surface);border:1px solid var(--line);text-decoration:none;color:var(--text);transition:border-color .2s,transform .2s;min-height:420px}
.card:hover{border-color:var(--line-2);transform:translateY(-2px)}
.card--k2{grid-column:span 7}.card--hand{grid-column:span 5}.card--calcx{grid-column:span 7}
.card--hand{grid-template-columns:1fr;grid-template-rows:240px auto}
.card__img{overflow:hidden;display:flex;align-items:center;justify-content:center}
.card__img img{width:100%;height:100%;object-fit:cover}
.card__img--dark{background:#000}.card__img--light{background:var(--panel)}
.card__img--light img{object-fit:contain;padding:.75rem}
.card__img--screen{background:#050506;padding:1.25rem}
.card__img--screen img{height:auto;object-fit:contain}
.card__body{padding:clamp(1.25rem,2vw,1.75rem);display:flex;flex-direction:column;gap:.85rem}
.card__meta{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap;font:500 var(--text-xs)/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.card h3{font-size:var(--text-xl)}
.card__body>p:not(.card__meta){color:var(--muted);font-size:var(--text-sm)}
.card__nums{list-style:none;padding:0;margin:.25rem 0 0;display:flex;flex-wrap:wrap;gap:1.25rem;border-top:1px solid var(--line);padding-top:1rem}
.card__nums li{font:400 .72rem/1.3 var(--mono);color:var(--faint);letter-spacing:.04em;display:flex;flex-direction:column;gap:.2rem}
.card__nums b{font:600 var(--text-lg)/1 var(--display);color:var(--text);letter-spacing:-.01em}
.card__go{margin-top:auto;padding-top:.5rem;font:600 var(--text-sm)/1 var(--body);color:var(--heat)}

/* honesty */
.honest{padding:var(--sec) 0;background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.honest__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.honest h2{font-size:var(--text-2xl)}
.honest__lede{margin-top:1.25rem;color:var(--muted);max-width:44ch}
.tags{margin:0;border-top:1px solid var(--line-2)}
.tags div{display:grid;grid-template-columns:9rem minmax(0,1fr);gap:1.25rem;align-items:baseline;padding:1.1rem 0;border-bottom:1px solid var(--line)}
.tags dd{margin:0;color:var(--muted);font-size:var(--text-sm)}

/* family */
.family{padding:var(--sec) 0}
.sec__head h2{font-size:var(--text-2xl)}
.wide-fig{margin:0;background:#000;border:1px solid var(--line)}
.wide-fig img{width:100%}
.wide-fig figcaption,.gallery figcaption{font:400 .72rem/1.4 var(--mono);color:var(--faint);padding:.75rem 1rem;letter-spacing:.04em;background:var(--bg)}
.family__links{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(.75rem,1.5vw,1.25rem)}

/* product pages */
.phero{padding:clamp(2.5rem,6vw,5rem) 0 clamp(3rem,6vw,5rem);border-bottom:1px solid var(--line)}
.phero__grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.phero h1{font-size:var(--text-hero);letter-spacing:-.035em;line-height:.94}
.phero__sub{font:500 var(--text-sm)/1.3 var(--mono);letter-spacing:.06em;color:var(--muted);margin-top:1rem}
.phero__lede{font-size:var(--text-lg);line-height:1.45;color:var(--muted);max-width:40ch;margin-top:1.5rem}
.phero__lede a{color:var(--text);text-decoration-color:var(--heat);text-underline-offset:3px}
.phero__fig{margin:0;clip-path:polygon(24px 0,100% 0,100% calc(100% - 24px),calc(100% - 24px) 100%,0 100%,0 24px)}
.phero__fig img{width:100%}
.screen--hero{clip-path:none}
.specs,.gallery-sec,.table-sec,.lite{padding:var(--sec) 0}
.gallery-sec{padding-top:0}
.sgrid{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.sgrid div{background:var(--bg);padding:1.5rem;display:flex;flex-direction:column;gap:.55rem;align-items:flex-start}
.sgrid dt{font:500 var(--text-xs)/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}
.sgrid dd{margin:0;font:600 var(--text-xl)/1.1 var(--display);letter-spacing:-.01em}
.sgrid__big dd{font-size:var(--text-2xl);letter-spacing:-.025em}
.sgrid p{color:var(--muted);font-size:var(--text-sm);line-height:1.5}
.gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(.5rem,1vw,1rem)}
.gallery figure{margin:0;background:#000;border:1px solid var(--line);display:flex;flex-direction:column}
.gallery img{width:100%;flex:1;object-fit:cover}
.g--tall{grid-column:span 2}.g--wide{grid-column:span 3}.g--wide2{grid-column:span 4}.g--full{grid-column:1/-1}
.gallery .g--tall img{aspect-ratio:4/5}
.gallery .g--wide img{aspect-ratio:7/5}
.gallery .g--wide2 img{aspect-ratio:4/3}
.tbl-wrap{overflow-x:auto;border:1px solid var(--line)}
.tbl{width:100%;border-collapse:collapse;font-size:var(--text-sm);min-width:560px}
.tbl th{text-align:left;font:500 var(--text-xs)/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint);padding:1rem 1.25rem;border-bottom:1px solid var(--line-2);background:var(--surface)}
.tbl td{padding:.9rem 1.25rem;border-bottom:1px solid var(--line);color:var(--muted);font-variant-numeric:tabular-nums}
.tbl td:first-child{color:var(--text);font-weight:500}
.tbl tr:last-child td{border-bottom:0}
.caveats{padding:var(--sec) 0;background:var(--surface);border-top:1px solid var(--line)}
.caveats__grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(2rem,5vw,5rem)}
.caveats h2{font-size:var(--text-2xl)}
.cav{list-style:none;margin:0;padding:0;border-top:1px solid var(--line-2)}
.cav li{padding:1.1rem 0 1.1rem 1.5rem;border-bottom:1px solid var(--line);color:var(--muted);position:relative}
.cav li::before{content:"";position:absolute;left:0;top:1.65rem;width:8px;height:2px;background:var(--heat)}
.cav b{color:var(--text)}
.nextpage{padding:clamp(2.5rem,5vw,4rem) 0;border-top:1px solid var(--line)}
.nextpage__row{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap}
.nextpage__link{text-decoration:none;font:600 var(--text-xl)/1.1 var(--display);text-align:right}
.nextpage__link span:first-child{display:block;font:500 var(--text-xs)/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:.5rem}
.nextpage__link:hover{color:var(--heat)}
.hand__body{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.screens--grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.screens--grid figcaption{font:400 .72rem/1 var(--mono);color:var(--faint);padding:.6rem .1rem 0}
.price__grid,.lite__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.price__grid h2,.lite h2{font-size:var(--text-2xl);margin-bottom:1.25rem}
.table-sec.price,.table-sec{border-top:1px solid var(--line)}
.facts--price{margin:0}
.facts--price li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.25rem 1rem;padding:1.1rem 0}
.facts--price span{font:500 var(--text-xs)/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}
.facts--price b{grid-row:span 2;align-self:center;font:600 var(--text-xl)/1 var(--display)}
.lite{background:var(--surface);border-top:1px solid var(--line)}
.screen--mono{background:#b9c0a8;border:0;padding:1rem}

/* footer v2 */
.foot{border-top:1px solid var(--line);padding:clamp(2.5rem,5vw,4rem) 0 2rem}
.foot__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:2rem}
.foot .kova-logo{height:44px;width:auto}
.foot__brand p{margin-top:1rem;font:400 var(--text-xs)/1.4 var(--mono);color:var(--muted)}
.foot__nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.foot__nav p{font:500 .7rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:.9rem}
.foot__nav a{display:block;padding:.3rem 0;color:var(--muted);text-decoration:none;font-size:var(--text-sm)}
.foot__nav a:hover{color:var(--text)}
.foot__fine{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--line)}
.foot__copy{font:400 var(--text-xs)/1.4 var(--mono);color:var(--muted);margin-bottom:.75rem}
.foot__fine p:not(.foot__copy){font-size:.78rem;line-height:1.55;color:var(--faint);max-width:100ch}
.lab{margin-top:clamp(3rem,6vw,4.5rem)}
.lab .prod__kicker{margin-bottom:1rem}

@media (max-width:960px){
  .sec__head--row,.honest__grid,.phero__grid,.caveats__grid,.price__grid,.lite__grid,.foot__grid{grid-template-columns:1fr}
  .card--k2,.card--hand,.card--calcx{grid-column:1/-1}
  .sgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .g--tall,.g--wide,.g--wide2{grid-column:span 1}
  .gallery .g--wide img,.gallery .g--wide2 img{aspect-ratio:4/5}
  .screens--grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .phero__fig{max-width:480px}
  .screen--hero{max-width:none}
}
@media (max-width:720px){
  .card,.card--hand{grid-template-columns:1fr;grid-template-rows:auto auto;min-height:0}
  .card__img{aspect-ratio:4/3}
  .card--calcx .card__img{aspect-ratio:auto}
  .sgrid{grid-template-columns:1fr}
  .tags div{grid-template-columns:1fr;gap:.5rem}
  .pair{grid-template-columns:1fr}
  .foot__nav{grid-template-columns:1fr 1fr}
  .nextpage__link{text-align:left}
  .hero__cta .btn{flex:1 1 auto;justify-content:center}
}
.hero__fig--dark figcaption{color:var(--faint);border-top-color:var(--line)}
.hero__fig--dark figcaption span:first-child{color:var(--text)}
.contact__mail a{font-size:clamp(1.35rem,.7rem + 2.7vw,3.25rem);overflow-wrap:normal}
.status .btn{max-width:100%}
.foot__fine{border-top:0;padding-top:0}
.foot__copy{border-top:1px solid var(--line);padding-top:1.5rem}
.cav li::before{top:calc(1.1rem + .8em)}
.pair img{aspect-ratio:4/3;object-fit:cover}
.gallery .g--band img{aspect-ratio:2/1;object-position:50% 35%}

/* ===== v3 ===== */
.cards--2 .card{grid-column:auto}
.cxstrip{display:grid;grid-template-columns:200px minmax(0,1fr) auto;gap:clamp(1rem,3vw,2.5rem);align-items:center;margin-top:clamp(.75rem,1.5vw,1.25rem);padding:1.25rem;background:var(--surface);border:1px solid var(--line);text-decoration:none;color:var(--text);transition:border-color .2s}
.cxstrip:hover{border-color:var(--line-2)}
.cxstrip img{width:100%;background:#050506}
.cxstrip__txt{display:flex;flex-direction:column;gap:.55rem;color:var(--muted);font-size:var(--text-sm)}
.cxstrip__txt .card__meta{justify-content:flex-start}
.cxstrip__txt b{font:600 var(--text-xl)/1.1 var(--display);color:var(--text)}
.cxstrip__go{font:600 var(--text-sm)/1 var(--body);color:var(--heat);white-space:nowrap}
.feature{padding:0 0 var(--sec)}
.footnote{margin-top:1.25rem;font-size:.8rem;line-height:1.55;color:var(--faint);max-width:80ch}
@media (max-width:720px){
  .cxstrip{grid-template-columns:1fr;gap:1rem}
}
