:root{
  --bg:#F5F2EA; --ink:#14130F; --mute:#6B675C; --line:#DDD8CB; --card:#FBF9F3; --accent:#E8532B; --accent-ink:#fff;
  --term:#14130F; --term-ink:#EDE9DD; --term-mute:#8F8A7C;
  --serif:'Instrument Serif',Georgia,serif; --sans:Inter,system-ui,sans-serif; --mono:'JetBrains Mono',ui-monospace,monospace;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#12110E; --ink:#F2EFE6; --mute:#9A9588; --line:#2A2822; --card:#1A1915; --term:#0B0A08; }}
:root[data-theme="dark"]{--bg:#12110E; --ink:#F2EFE6; --mute:#9A9588; --line:#2A2822; --card:#1A1915; --term:#0B0A08;}

*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{width:min(1120px,100% - 32px);margin-inline:auto}
em{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--accent)}
code{font-family:var(--mono);font-size:.85em;background:var(--card);border:1px solid var(--line);padding:1px 6px;border-radius:6px}

/* nav */
.nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:14px max(16px,calc((100% - 1120px)/2));background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;font-weight:600;letter-spacing:-.01em}
.brand i{font-family:var(--serif);font-weight:400;color:var(--accent);font-size:1.15em}
.dot{width:10px;height:10px;border-radius:50%;background:var(--accent)}
.nav nav{display:flex;gap:26px;font-size:14px;color:var(--mute)}
.nav nav a{text-decoration:none}.nav nav a:hover{color:var(--ink)}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:999px;background:var(--ink);color:var(--bg);
  text-decoration:none;font-weight:500;font-size:15px;border:1px solid var(--ink);transition:transform .15s,background .15s}
.btn:hover{transform:translateY(-1px);background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.btn.sm{padding:8px 16px;font-size:14px}.btn.big{padding:16px 30px;font-size:16px}
.btn.ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn.ghost:hover{background:var(--card);color:var(--ink);border-color:var(--ink)}
.fine{font-size:13px;color:var(--mute)}.fine a{text-underline-offset:3px}.center{text-align:center}

/* hero */
.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;padding:88px 0 64px}
.eyebrow{font:500 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin-bottom:22px}
h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.02em;line-height:1.02}
h1{font-size:clamp(44px,6.4vw,84px)}
h2{font-size:clamp(34px,4.4vw,56px);margin-bottom:36px}
.lede{font-size:18px;color:var(--mute);max-width:52ch;margin:26px 0 30px}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:18px}

/* terminal */
.term{background:var(--term);color:var(--term-ink);border-radius:18px;overflow:hidden;border:1px solid var(--line);box-shadow:0 30px 60px -30px rgba(20,19,15,.45)}
.term-bar{display:flex;align-items:center;gap:7px;padding:12px 16px;border-bottom:1px solid #2a2822}
.term-bar span{width:10px;height:10px;border-radius:50%;background:#3a372f}
.term-bar b{margin-left:auto;font:400 12px var(--mono);color:var(--term-mute)}
.term-body{padding:20px 20px 8px;min-height:340px;font:400 13px/1.7 var(--mono)}
.ln{opacity:0;transform:translateY(4px);transition:opacity .35s,transform .35s;margin-bottom:10px}
.ln.on{opacity:1;transform:none}
.ln .who{color:var(--term-mute)}
.ln.tool{color:var(--accent)}.ln.tool small{color:var(--term-mute);font-size:inherit;display:block;padding-left:2ch}
.ln.sys{color:#6fbf8a}
.meter{display:flex;justify-content:space-between;align-items:baseline;padding:14px 20px;border-top:1px solid #2a2822;font:400 12px var(--mono);color:var(--term-mute)}
.meter strong{font:400 28px var(--serif);color:var(--term-ink)}

/* facts */
.facts{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}
.facts div{padding:30px 24px;border-right:1px solid var(--line)}
.facts div:last-child{border:0}
.facts b{display:block;font:400 56px/1 var(--serif);margin-bottom:10px}
.facts span{font-size:14px;color:var(--mute);display:block;max-width:24ch}

/* blocks */
.block{padding:104px 0 0}
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.steps li{padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--card)}
.n{font:500 12px var(--mono);color:var(--accent)}
.steps h3,.layers h3{font:400 28px var(--serif);margin:14px 0 10px}
.steps p,.layers p{color:var(--mute);font-size:15px}

.layers{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:40px}
.layers article{padding:28px;border-radius:18px;border:1px solid var(--line);background:var(--card)}
.layers ul{list-style:none;padding:0;margin-top:18px;border-top:1px solid var(--line)}
.layers li{padding:9px 0;border-bottom:1px solid var(--line);font-size:14px}
.layers li::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:10px;vertical-align:middle}

.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:var(--card)}
.cmp{width:100%;border-collapse:collapse;font-size:15px;min-width:480px}
.cmp th,.cmp td{padding:15px 22px;text-align:center;border-bottom:1px solid var(--line)}
.cmp th:first-child,.cmp td:first-child{text-align:left}
.cmp thead th{font:500 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.cmp tr:last-child td{border-bottom:0}
.cmp .pro{color:var(--accent);font-weight:600}
.cmp thead .pro{color:var(--accent)}

/* proof */
.proof{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.proof h2{margin-bottom:24px}
.ba{position:relative;width:100%;max-width:440px;aspect-ratio:1;justify-self:center;border-radius:18px;overflow:hidden;border:1px solid var(--line);background:#000;user-select:none}
.ba-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ba-after{clip-path:inset(0 0 0 50%)}
.tag{position:absolute;top:12px;font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;background:rgba(20,19,15,.7);color:#fff;padding:4px 9px;border-radius:999px}
.tag.l{left:12px}.tag.r{right:12px}
.ba-line{position:absolute;top:0;bottom:0;left:50%;width:2px;background:#fff;pointer-events:none}
.ba-line i{position:absolute;top:50%;left:50%;width:34px;height:34px;margin:-17px;border-radius:50%;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.4)}
.ba input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}

/* limits */
.limits{padding-bottom:0}
.lim{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 48px}
.lim li{padding:18px 0;border-top:1px solid var(--line);color:var(--mute);font-size:15px}
.lim b{color:var(--ink);font-weight:600}

/* pricing */
.price-card{display:grid;grid-template-columns:.9fr 1.1fr;border:1px solid var(--ink);border-radius:24px;background:var(--card);overflow:hidden;margin-bottom:20px}
.price-l{padding:44px;border-right:1px solid var(--line)}
.price-l h3{font:400 30px var(--serif)}
.amt{display:flex;align-items:flex-start;gap:4px;margin:14px 0 26px}
.amt .cur{font:400 32px var(--serif);margin-top:12px}
.amt #price{font:400 104px/1 var(--serif);letter-spacing:-.03em}
.amt small{align-self:flex-end;margin:0 0 14px 10px;font:500 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.price-l .btn{width:100%}
.price-l .fine{margin-top:14px}
.price-r{list-style:none;padding:44px;display:flex;flex-direction:column;justify-content:center}
.price-r li{padding:13px 0 13px 30px;border-bottom:1px solid var(--line);position:relative}
.price-r li:last-child{border:0}
.price-r li::before{content:"";position:absolute;left:0;top:21px;width:14px;height:8px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg) scale(.9)}

/* faq */
.faq{max-width:780px}
.faq details{border-top:1px solid var(--line);padding:20px 0}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;font-size:18px;font-weight:500}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:300 26px/1 var(--sans);color:var(--accent);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq p{color:var(--mute);margin-top:12px;max-width:62ch}

/* closer + footer */
.closer{text-align:center;padding:120px 0 96px}
.closer h2{font-size:clamp(40px,6vw,76px);margin-bottom:34px}
.foot{display:flex;flex-wrap:wrap;gap:16px 40px;align-items:center;justify-content:space-between;padding:28px 0 40px;border-top:1px solid var(--line);font-size:13px;color:var(--mute)}
.foot p{flex:1 1 380px;max-width:640px}

/* responsive */
@media(max-width:900px){
  .nav nav{display:none}
  .hero{grid-template-columns:1fr;gap:40px;padding-top:56px}
  .facts{grid-template-columns:1fr 1fr}.facts div:nth-child(2){border-right:0}.facts div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .steps,.layers,.proof,.lim,.price-card{grid-template-columns:1fr}
  .price-l{border-right:0;border-bottom:1px solid var(--line)}
  .price-l,.price-r{padding:30px 24px}
  .block{padding-top:72px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* v2: problem, install, you-type, flags */
.brand i{font-family:var(--serif);font-weight:400;color:var(--accent);font-size:1.15em;margin:0 1px}
.pain{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:28px}
.pain article{padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--card)}
.pain h3{font:400 28px var(--serif);margin:14px 0 10px}
.pain p{color:var(--mute);font-size:15px}
.pain a{text-underline-offset:3px}
.pain .wm{border-color:var(--accent)}
.flags{display:flex;flex-wrap:wrap;gap:10px;margin:2px 0 14px}
.flags span{display:inline-flex;align-items:center;gap:8px;padding:5px 12px 5px 6px;border:1px solid var(--line);border-radius:999px;font-size:13px;background:var(--bg)}
.flags img{border-radius:4px;display:block;height:20px;width:auto}
.vs .cmp td:nth-child(2){color:var(--mute)}
.vs .cmp{min-width:560px}
.how{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:stretch}
.steps.v{grid-template-columns:1fr;gap:14px}
.steps.v li{padding:22px 26px}
.steps.v h3{margin:8px 0 6px;font-size:24px}
.cmd{background:var(--term);color:var(--term-ink);border-radius:18px;overflow:hidden;border:1px solid var(--line)}
.cmd pre{margin:0;padding:22px;font:400 13px/1.8 var(--mono);overflow-x:auto;white-space:pre}
.cmd .c{color:var(--term-mute)}
.typeget{display:grid;grid-template-columns:1fr 1.2fr;gap:20px;margin-top:20px}
.typeget>div{padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--card)}
.typeget .eyebrow{margin-bottom:14px}
.say{font:500 16px/1.6 var(--mono);color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:16px}
.typeget ul{list-style:none;padding:0}
.typeget li{padding:9px 0 9px 26px;border-bottom:1px solid var(--line);position:relative;font-size:15px}
.typeget li:last-child{border:0}
.typeget li::before{content:"";position:absolute;left:0;top:16px;width:12px;height:7px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg)}
.layers.four{grid-template-columns:repeat(4,1fr)}
.layers.four h3{font-size:24px}
@media(max-width:1000px){.layers.four{grid-template-columns:1fr 1fr}}
@media(max-width:900px){.pain,.how,.typeget,.layers.four{grid-template-columns:1fr}}
.how>*,.typeget>*,.pain>*{min-width:0}
@media(max-width:900px){.how,.typeget,.pain{grid-template-columns:minmax(0,1fr)}.cmd pre{font-size:12px}}

/* models */
.lede.narrow{margin-top:0;max-width:70ch;font-size:16px}
.sub{font:400 28px var(--serif);margin:36px 0 14px}
.cmp.left th,.cmp.left td{text-align:left;vertical-align:top}
.cmp.left td:nth-child(n+2){white-space:normal}
.cmp .mut{color:var(--mute);font-size:12px}
.cmp .warn{display:inline-block;margin-top:4px;font:500 11px var(--mono);letter-spacing:.04em;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:1px 8px}
.cmp .ok,.cmp .pr{display:inline-block;font:500 12px var(--mono);border-radius:999px;padding:3px 10px;white-space:nowrap}
.cmp .ok{background:color-mix(in srgb,#6FBF8A 22%,transparent);color:var(--ink)}
.cmp .pr{border:1px solid var(--line);color:var(--mute)}
#models .table-wrap .cmp{min-width:680px}
.notes{list-style:none;padding:0;margin-top:22px;display:grid;gap:0}
.notes li{padding:12px 0;border-top:1px solid var(--line);font-size:15px;color:var(--mute)}
.notes b{color:var(--ink)}

/* film */
.film{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#0B0A08;box-shadow:0 30px 60px -30px rgba(20,19,15,.45)}
.film video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#0B0A08}
#watch .fine{margin-top:14px}
