:root{
  --bg:#f3f1ec; --surface:#ffffff; --alt:#e9e6df; --ink:#131517; --muted:#5d6166; --line:#d9d5cc;
  --accent:#0f8f68; --accent-2:#5fe3b3; --accent-ink:#ffffff; --accent-soft:#d6f2e6;
  --dk:#111315; --dk-2:#1a1d20; --dk-line:#2a2e33; --dk-ink:#eef0ec; --dk-muted:#9aa1a7;
  --font-display:'Unbounded','Manrope',sans-serif;
  --font-body:'Manrope','Segoe UI',sans-serif;
  --text-xs:clamp(.75rem,.72rem + .15vw,.8125rem);
  --text-sm:clamp(.875rem,.85rem + .15vw,.9375rem);
  --text-base:1rem;
  --text-lg:clamp(1.0625rem,1rem + .35vw,1.25rem);
  --text-xl:clamp(1.6rem,1.2rem + 1.7vw,2.6rem);
  --text-hero:clamp(2.1rem,1.3rem + 3.4vw,4.1rem);
  --r:14px; --r-lg:22px;
  --pad:clamp(4rem,8vw,7rem);
  --ease:cubic-bezier(.2,.7,.2,1);
}
[data-theme="dark"]{
  --bg:#0d0f10; --surface:#15181a; --alt:#121517; --ink:#eef0ec; --muted:#9aa1a7; --line:#262a2e;
  --accent:#5fe3b3; --accent-ink:#06261b; --accent-soft:#143128;
  --dk:#08090a; --dk-2:#131618;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:76px;-webkit-text-size-adjust:100%}
body{font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;transition:background .3s,color .3s;overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:var(--surface);padding:.5rem 1rem;z-index:99}
.wrap{width:min(1200px,100% - 2.5rem);margin-inline:auto}
@media(max-width:480px){.wrap{width:calc(100% - 2rem)}}

/* nav */
.nav{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 84%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:border-color .3s}
.nav.is-scrolled{border-color:var(--line)}
.nav__in{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:66px}
.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1.15;white-space:nowrap}
.brand__name{font-family:var(--font-display);font-weight:500;font-size:1.0625rem;letter-spacing:-.01em}
.brand__sub{font-size:.6875rem;color:var(--muted);font-weight:600;letter-spacing:.04em}
.nav__links{display:flex;gap:1.6rem}
.nav__links a{font-size:var(--text-sm);text-decoration:none;color:var(--muted);font-weight:600;transition:color .2s}
.nav__links a:hover{color:var(--ink)}
.nav__act{display:flex;align-items:center;gap:.6rem}
.icon-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:transparent;display:grid;place-items:center;cursor:pointer}
.icon-btn:hover{border-color:var(--ink)}
@media(max-width:1060px){.nav__links{display:none}}
@media(max-width:440px){.nav__act .btn--sm{display:none}}

/* buttons */
.btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.5rem;border-radius:999px;background:var(--accent);color:var(--accent-ink);text-decoration:none;font-weight:700;font-size:var(--text-sm);border:1px solid var(--accent);cursor:pointer;transition:transform .2s var(--ease),filter .2s,box-shadow .2s}
.btn:hover{filter:brightness(1.07);transform:translateY(-1px);box-shadow:0 10px 24px -12px color-mix(in srgb,var(--accent) 70%,transparent)}
.btn--ghost{background:transparent;color:inherit;border-color:currentColor;border-color:color-mix(in srgb,currentColor 30%,transparent)}
.btn--ghost:hover{border-color:currentColor;box-shadow:none}
.btn--sm{padding:.6rem 1.1rem}
.btn--full{width:100%}
.link{background:none;border:0;color:var(--accent);text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-size:inherit;padding:0}

/* type */
h1,h2{font-family:var(--font-display);font-weight:500;letter-spacing:-.025em;line-height:1.08}
h1{font-size:var(--text-hero)}
h2{font-size:var(--text-xl);max-width:22ch}
h3{font-size:var(--text-lg);font-weight:700;line-height:1.3;letter-spacing:-.01em}
.hl{background:linear-gradient(90deg,var(--accent),color-mix(in srgb,var(--accent) 55%,#3b82f6));-webkit-background-clip:text;background-clip:text;color:transparent}
.kicker,.mini{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--muted)}
.kicker{color:var(--accent);margin-bottom:1rem;display:flex;align-items:center;gap:.6rem}
.kicker::before{content:"";width:22px;height:2px;background:currentColor;border-radius:2px}
.lead{font-size:var(--text-lg);color:var(--muted);max-width:44ch;line-height:1.55}
.sub{color:var(--muted);max-width:62ch;margin-top:.9rem}

/* sections */
.section{padding:var(--pad) 0;position:relative}
.section--alt{background:var(--alt)}
.section--ink{background:var(--dk);color:var(--dk-ink);--muted:var(--dk-muted);--line:var(--dk-line);--surface:var(--dk-2);--accent:var(--accent-2);--accent-ink:#06261b;--accent-soft:#143128}
.sec-head{margin-bottom:clamp(2rem,4vw,3.25rem)}

/* hero */
.hero{padding:clamp(2.5rem,6vw,5rem) 0 clamp(3rem,6vw,5rem);position:relative;overflow:hidden}
.hero__glow{position:absolute;inset:-20% -10% auto auto;width:70vw;height:70vw;max-width:900px;max-height:900px;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 22%,transparent),transparent);pointer-events:none;filter:blur(10px)}
.hero__grid{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(2rem,5vw,4.5rem);align-items:center;position:relative}
.pill{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .85rem;border:1px solid var(--line);border-radius:999px;font-size:var(--text-xs);font-weight:700;color:var(--muted);background:var(--surface)}
.dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 25%,transparent)}
.hero__text h1{margin:1.25rem 0 1.25rem}
.hero__cta{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.75rem}
.hero__chips{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1.75rem}
.hero__chips li{font-size:var(--text-xs);font-weight:600;padding:.3rem .75rem;border-radius:999px;background:var(--alt);color:var(--muted)}
@media(max-width:900px){.hero__grid{grid-template-columns:1fr}}

/* dashboard card */
.dash{background:var(--dk);color:var(--dk-ink);border-radius:var(--r-lg);padding:1.5rem;box-shadow:0 40px 80px -40px #0008;border:1px solid #ffffff12;position:relative}
.dash__head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem}
.dash__title{font-weight:700}
.dash__sub{font-size:var(--text-xs);color:var(--dk-muted)}
.live{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:700;color:var(--accent-2);background:#5fe3b31a;padding:.3rem .65rem;border-radius:999px}
.live i{width:6px;height:6px;border-radius:50%;background:var(--accent-2);animation:pulse 1.6s infinite}
@keyframes pulse{50%{opacity:.25}}
.dash__kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}
.dash__kpis div{background:var(--dk-2);border-radius:12px;padding:.75rem;min-width:0}
.dash__kpis span{display:block;font-size:.6875rem;color:var(--dk-muted);font-weight:600;line-height:1.3;min-height:2.6em}
.dash__kpis b{font-size:1.75rem;font-weight:600;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.dash__kpis em{font-style:normal;font-size:.6875rem;color:var(--dk-muted);margin-left:.15rem}
.dash__chart{width:100%;height:110px;margin:1.1rem 0 .9rem;color:var(--accent-2)}
.dash__chart .plan{stroke:#ffffff40;stroke-width:1.5;stroke-dasharray:4 4}
.dash__chart .fact{stroke:var(--accent-2);stroke-width:2.5;stroke-dasharray:420;stroke-dashoffset:420;animation:draw 2s var(--ease) .3s forwards}
.dash__chart .fact-area{opacity:0;animation:fadeIn 1s 1.2s forwards}
@keyframes draw{to{stroke-dashoffset:0}}@keyframes fadeIn{to{opacity:1}}
.dash__ai{border-top:1px solid #ffffff14;padding-top:.9rem}
.dash__ai .mini{color:var(--dk-muted);margin-bottom:.25rem}
#aiLine{font-size:var(--text-sm);min-height:3em;transition:opacity .3s}

.trust{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;margin-top:clamp(2.5rem,5vw,4rem);background:var(--line);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;position:relative}
.trust div{background:var(--bg);padding:1.25rem}
.trust b{display:block;font-family:var(--font-display);font-weight:500;font-size:1.75rem;letter-spacing:-.03em;color:var(--accent)}
.trust span{font-size:var(--text-sm);color:var(--muted);line-height:1.4;display:block;margin-top:.25rem}
@media(max-width:900px){.trust{grid-template-columns:repeat(2,1fr)}.trust div:last-child{grid-column:span 2}}

/* why */
.why{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.why__card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.5rem;transition:transform .3s var(--ease),border-color .3s}
.why__card:hover{transform:translateY(-3px);border-color:var(--accent)}
.why__n{font-family:var(--font-display);font-size:.875rem;color:var(--accent);display:block;margin-bottom:1.5rem}
.why__card h3{margin-bottom:.5rem}
.why__card p{font-size:var(--text-sm);color:var(--muted)}
@media(max-width:1000px){.why{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.why{grid-template-columns:1fr}}

/* method */
.formula{display:flex;align-items:stretch;gap:.6rem;flex-wrap:wrap;margin-bottom:2rem}
.formula div{flex:1 1 140px;border:1px solid var(--line);border-radius:var(--r);padding:1rem;background:var(--surface)}
.formula b{display:block;font-family:var(--font-display);font-weight:500;font-size:1.0625rem}
.formula span{font-size:var(--text-xs);color:var(--muted)}
.formula i{font-style:normal;align-self:center;color:var(--muted);font-size:1.25rem}
.formula .is-ai{border-color:var(--accent)}
.formula .is-ai b{color:var(--accent)}
.formula .is-res{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.formula .is-res span{color:inherit;opacity:.8}
@media(max-width:760px){.formula i{display:none}.formula div{flex:1 1 calc(50% - .6rem)}.formula .is-res{flex-basis:100%}}
.steps{display:grid;grid-template-columns:300px 1fr;gap:1rem}
.steps__nav{display:flex;flex-direction:column;gap:.4rem}
.step-btn{display:flex;gap:.9rem;align-items:center;text-align:left;padding:.9rem 1rem;border-radius:var(--r);border:1px solid var(--line);background:transparent;cursor:pointer;font-weight:600;transition:all .25s var(--ease)}
.step-btn span{font-family:var(--font-display);font-size:.8125rem;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);flex:0 0 auto}
.step-btn:hover{border-color:var(--muted)}
.step-btn.is-on{background:var(--surface);border-color:var(--accent)}
.step-btn.is-on span{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.steps__panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.25rem,3vw,2.25rem);display:grid;grid-template-columns:1.1fr 1fr;gap:2rem}
.steps__left h3{font-family:var(--font-display);font-weight:500;font-size:clamp(1.3rem,1.1rem + .8vw,1.75rem);margin:.4rem 0 .75rem;letter-spacing:-.02em}
.steps__left p:last-child{color:var(--muted)}
.checks{list-style:none;margin-top:.5rem}
.checks li{position:relative;padding:.35rem 0 .35rem 1.6rem;font-size:var(--text-sm)}
.checks li::before{content:"";position:absolute;left:0;top:.62rem;width:14px;height:14px;border-radius:50%;background:var(--accent-soft);box-shadow:inset 0 0 0 4px var(--accent-soft),inset 0 0 0 10px var(--accent)}
.tools{font-size:var(--text-sm);color:var(--muted);margin-top:.35rem}
.fade{animation:fade .4s var(--ease)}
@keyframes fade{from{opacity:.2;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:900px){.steps{grid-template-columns:1fr}.steps__nav{flex-direction:row;overflow-x:auto;scrollbar-width:none;padding-bottom:.25rem}.step-btn{flex:0 0 auto}.steps__panel{grid-template-columns:1fr}}

/* expertise */
.exp{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.exp__card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.5rem;display:flex;flex-direction:column;gap:.6rem;transition:transform .3s var(--ease),border-color .3s}
.exp__card:hover{transform:translateY(-3px);border-color:var(--accent)}
.exp__card--wide{grid-column:span 4;display:grid;grid-template-columns:auto 1fr 1fr;align-items:center;gap:1.5rem;background:var(--dk);color:var(--dk-ink);border-color:var(--dk);--muted:var(--dk-muted)}
.exp__card--wide h3{font-family:var(--font-display);font-weight:500;font-size:clamp(1.2rem,1rem + .8vw,1.6rem);letter-spacing:-.02em}
.exp__card--wide p{color:var(--dk-muted)}
.exp__card--wide .tags{grid-column:2 / -1}
.exp__card--wide .exp__icon{grid-row:span 2;width:64px;height:64px;background:#5fe3b31a;color:var(--accent-2)}
.exp__icon{width:44px;height:44px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center}
.exp__icon svg{width:22px;height:22px}
.exp__card p{font-size:var(--text-sm);color:var(--muted)}
.tags{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem}
.tags li{font-size:var(--text-xs);font-weight:600;padding:.3rem .75rem;border-radius:999px;border:1px solid #ffffff26}
@media(max-width:1000px){.exp{grid-template-columns:1fr 1fr}.exp__card--wide{grid-column:span 2;grid-template-columns:auto 1fr}.exp__card--wide p,.exp__card--wide .tags{grid-column:1 / -1}.exp__card--wide .exp__icon{grid-row:auto}}
@media(max-width:560px){.exp{grid-template-columns:1fr}.exp__card--wide{grid-column:auto;display:flex}}

/* ai lab */
.ai{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(2rem,4vw,4rem);align-items:start}
.ai__list{display:flex;flex-direction:column;gap:.4rem;margin-top:1.75rem}
.ai-btn{text-align:left;display:grid;grid-template-columns:1fr auto;gap:.15rem 1rem;padding:1rem 1.1rem;border-radius:var(--r);border:1px solid var(--line);background:var(--surface);cursor:pointer;transition:all .25s var(--ease)}
.ai-btn b{font-weight:700}
.ai-btn small{grid-column:1;color:var(--muted);font-size:var(--text-xs)}
.ai-btn i{grid-row:span 2;align-self:center;font-style:normal;color:var(--muted);transition:transform .25s}
.ai-btn.is-on{border-color:var(--accent);box-shadow:0 12px 30px -20px #0006}
.ai-btn.is-on i{color:var(--accent);transform:translateX(3px)}
.ai__screen{position:sticky;top:90px;background:var(--dk);color:var(--dk-ink);border-radius:var(--r-lg);overflow:hidden;border:1px solid #ffffff14;box-shadow:0 40px 80px -40px #0007}
.screen__bar{display:flex;align-items:center;gap:.4rem;padding:.8rem 1rem;border-bottom:1px solid #ffffff12;font-size:var(--text-xs);color:var(--dk-muted);font-weight:600}
.screen__bar i{width:10px;height:10px;border-radius:50%;background:#ffffff22}
.screen__bar span{margin-left:.6rem}
.screen__body{padding:1.25rem;min-height:340px}
.scr-row{display:flex;justify-content:space-between;gap:1rem;padding:.6rem 0;border-bottom:1px dashed #ffffff14;font-size:var(--text-sm)}
.scr-row b{font-variant-numeric:tabular-nums}
.ok{color:var(--accent-2)}.warn{color:#f6b56b}.bad{color:#ff8a80}
.bars{display:flex;align-items:flex-end;gap:8px;height:120px;margin:1rem 0}
.bars div{flex:1;border-radius:6px 6px 0 0;background:#5fe3b340;position:relative;transition:height .8s var(--ease)}
.bars div.p{background:#ffffff1f}
.msg{background:var(--dk-2);border-radius:14px;padding:.85rem 1rem;font-size:var(--text-sm);margin-bottom:.6rem;max-width:90%}
.msg.me{margin-left:auto;background:#5fe3b322}
.msg .mini{color:var(--dk-muted);display:block;margin-bottom:.2rem;font-size:.6875rem}
.scr-note{font-size:var(--text-xs);color:var(--dk-muted);margin-top:1rem}
@media(max-width:900px){.ai{grid-template-columns:1fr}.ai__screen{position:relative;top:0}}

/* products */
.ladder{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.prod{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.6rem;display:flex;flex-direction:column;gap:.6rem;transition:transform .3s var(--ease),border-color .3s}
.prod:hover{transform:translateY(-3px);border-color:var(--accent)}
.prod__lvl{font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
.prod > p:not(.prod__lvl):not(.prod__meta){font-size:var(--text-sm);color:var(--muted)}
.prod__meta{margin-top:auto;padding-top:.85rem;border-top:1px dashed var(--line);font-size:var(--text-xs);font-weight:700;color:var(--muted)}
.prod--hero{grid-row:span 2;background:var(--dk);color:var(--dk-ink);border-color:var(--dk);--muted:var(--dk-muted);--line:var(--dk-line);--accent:var(--accent-2);--accent-ink:#06261b;--accent-soft:#143128;position:relative;overflow:hidden}
.prod--hero::after{content:"";position:absolute;right:-30%;top:-20%;width:80%;height:60%;background:radial-gradient(closest-side,#5fe3b333,transparent);pointer-events:none}
.prod--hero h3{font-family:var(--font-display);font-weight:500;font-size:clamp(1.25rem,1.1rem + .6vw,1.6rem);letter-spacing:-.02em}
.prod--hero .btn{margin-top:.75rem}
@media(max-width:1000px){.ladder{grid-template-columns:1fr 1fr}.prod--hero{grid-row:auto;grid-column:span 2}}
@media(max-width:600px){.ladder{grid-template-columns:1fr}.prod--hero{grid-column:auto}}

/* test */
.test{display:grid;grid-template-columns:1fr 1.3fr;gap:clamp(2rem,5vw,4rem);align-items:start}
.quiz{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.25rem,3vw,2rem);min-height:360px}
.quiz__bar{height:4px;background:var(--line);border-radius:4px;overflow:hidden;margin-bottom:1.5rem}
.quiz__bar i{display:block;height:100%;width:0;background:var(--accent);transition:width .4s var(--ease)}
.q__n{font-size:var(--text-xs);color:var(--muted);font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.q__t{font-size:clamp(1.125rem,1rem + .5vw,1.375rem);font-weight:700;margin:.5rem 0 1.25rem;line-height:1.35}
.q__opts{display:grid;gap:.5rem}
.q__opt{text-align:left;padding:.95rem 1.1rem;border-radius:var(--r);border:1px solid var(--line);background:transparent;cursor:pointer;font-weight:600;transition:all .2s}
.q__opt:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}
.q__back{margin-top:1rem;background:none;border:0;color:var(--muted);cursor:pointer;font-size:var(--text-sm)}
.res__score{display:flex;align-items:baseline;gap:.5rem}
.res__score b{font-family:var(--font-display);font-weight:500;font-size:clamp(3rem,2.4rem + 2vw,4.5rem);color:var(--accent);letter-spacing:-.04em;line-height:1}
.res__score span{color:var(--muted);font-weight:600}
.res__lvl{font-size:var(--text-lg);font-weight:700;margin:.75rem 0 .5rem}
.res__txt{color:var(--muted);font-size:var(--text-sm)}
.res__rec{margin:1.25rem 0;padding:1rem 1.1rem;border-radius:var(--r);border:1px solid var(--accent);background:color-mix(in srgb,var(--accent) 8%,transparent)}
.res__rec b{display:block}
.res__rec span{font-size:var(--text-sm);color:var(--muted)}
.res__act{display:flex;gap:.6rem;flex-wrap:wrap}
@media(max-width:900px){.test{grid-template-columns:1fr}}

/* cases */
.cases{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:1rem}
.case{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.6rem;transition:transform .3s var(--ease),border-color .3s}
.case:hover{transform:translateY(-3px);border-color:var(--accent)}
.case--big{grid-row:span 2;display:flex;flex-direction:column;justify-content:flex-end;background:var(--dk);color:var(--dk-ink);border-color:var(--dk);--muted:var(--dk-muted);--accent:var(--accent-2)}
.case__tag{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700}
.case__metric{font-family:var(--font-display);font-weight:500;font-size:clamp(2.4rem,2rem + 2vw,3.5rem);line-height:1;color:var(--accent);margin:1rem 0 .4rem;letter-spacing:-.04em}
.case--big .case__metric{font-size:clamp(4.5rem,3.5rem + 4vw,7.5rem)}
.case h3{margin-bottom:.5rem}
.case p:last-child{color:var(--muted);font-size:var(--text-sm)}
.results{display:grid;grid-template-columns:repeat(3,1fr);margin-top:2rem;border-top:1px solid var(--line)}
.results div{padding:1.5rem 1rem 0 0}
.results b{font-family:var(--font-display);font-weight:500;font-size:2rem;display:block;line-height:1;letter-spacing:-.03em}
.results span{color:var(--muted);font-size:var(--text-sm)}
@media(max-width:960px){.cases{grid-template-columns:1fr 1fr}.case--big{grid-column:span 2;grid-row:auto}}
@media(max-width:600px){.cases,.results{grid-template-columns:1fr}.case--big{grid-column:auto}}

/* media */
.media{display:grid;grid-template-columns:1.2fr 1fr;gap:1.5rem}
.topics{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.6rem}
.topics ol{list-style:none;counter-reset:t;margin-top:.75rem}
.topics li{counter-increment:t;display:grid;grid-template-columns:2.25rem 1fr;gap:0 .5rem;padding:.85rem 0;border-bottom:1px dashed var(--line)}
.topics li:last-child{border-bottom:0}
.topics li::before{content:counter(t,decimal-leading-zero);font-family:var(--font-display);font-size:.8125rem;color:var(--accent);grid-row:span 2;padding-top:.15rem}
.topics b{font-weight:700}
.topics span{font-size:var(--text-sm);color:var(--muted)}
.channels{display:flex;flex-direction:column;gap:.6rem}
.channels .mini{margin-bottom:.15rem}
.ch{display:grid;grid-template-columns:1fr auto;gap:.2rem 1rem;padding:1.1rem 1.25rem;border-radius:var(--r);border:1px solid var(--line);background:var(--surface);text-decoration:none;transition:all .25s var(--ease)}
.ch:hover{border-color:var(--accent);transform:translateX(3px)}
.ch__name{font-weight:700}
.ch__desc{grid-column:1;font-size:var(--text-sm);color:var(--muted)}
.ch__go{grid-row:1 / span 2;grid-column:2;align-self:center;color:var(--accent);font-weight:700}
@media(max-width:900px){.media{grid-template-columns:1fr}}

/* formats */
.formats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.fmt{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.4rem;cursor:pointer;display:flex;flex-direction:column;gap:.5rem;transition:all .25s var(--ease)}
.fmt:hover{border-color:var(--muted);transform:translateY(-2px)}
.fmt[aria-pressed="true"]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--surface))}
.fmt__top{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.fmt__for{font-size:var(--text-xs);color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.fmt__check{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;flex:0 0 auto;transition:all .2s}
.fmt[aria-pressed="true"] .fmt__check{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.fmt__check svg{opacity:0}.fmt[aria-pressed="true"] .fmt__check svg{opacity:1}
.fmt h3{font-size:1.0625rem}
.fmt p{font-size:var(--text-sm);color:var(--muted)}
.basket{margin-top:1.25rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:1.2rem 1.5rem;border-radius:var(--r-lg);background:var(--dk);color:var(--dk-ink);--accent:var(--accent-2);--accent-ink:#06261b}
.basket .mini{color:var(--dk-muted)}
#basketText{font-weight:600}
@media(max-width:960px){.formats{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.formats{grid-template-columns:1fr}}

/* contact */
.contact{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(2rem,5vw,5rem);align-items:start}
.contacts{list-style:none;margin-top:2rem}
.contacts li{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem 1rem;padding:1rem 0;border-bottom:1px solid var(--line)}
.contacts .mini{width:100%}
.contacts a{font-weight:700;text-decoration:none;word-break:break-word}
.contacts a:hover{color:var(--accent)}
.copy{border:1px solid var(--line);background:transparent;border-radius:999px;padding:.2rem .7rem;font-size:var(--text-xs);cursor:pointer}
.copy:hover{border-color:var(--accent)}
.form{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(1.25rem,3vw,2.25rem);display:flex;flex-direction:column;gap:1rem}
.form label{display:flex;flex-direction:column;gap:.4rem;font-size:var(--text-sm);font-weight:600}
.form input:not([type=radio]):not([type=checkbox]),.form textarea{width:100%;padding:.8rem 1rem;border:1px solid var(--line);border-radius:10px;background:var(--dk);font-weight:400;font-size:var(--text-base);transition:border-color .2s}
.form textarea{resize:vertical}
.form input:focus,.form textarea:focus{outline:none;border-color:var(--accent)}
.form ::placeholder{color:#7d858c}
.form .is-bad{border-color:#ff8a80 !important}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
fieldset{border:0}
legend{font-size:var(--text-sm);font-weight:600;margin-bottom:.5rem}
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chip{position:relative}
.chip input{position:absolute;opacity:0;inset:0}
.chip span{display:inline-block;padding:.5rem 1rem;border:1px solid var(--line);border-radius:999px;font-weight:600;cursor:pointer;transition:all .2s}
.chip input:checked+span{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.chip input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}
.form .agree{flex-direction:row;align-items:flex-start;gap:.6rem;font-weight:400;color:var(--muted)}
.agree input{margin-top:.3rem;accent-color:var(--accent)}
.form__err{color:#ff8a80;font-size:var(--text-sm)}
.form__err:empty{display:none}
.form__ok{background:var(--accent-soft);border-radius:var(--r);padding:1rem 1.25rem;font-size:var(--text-sm)}
@media(max-width:860px){.contact{grid-template-columns:1fr}}
@media(max-width:520px){.row2{grid-template-columns:1fr}}

.footer{padding:2rem 0;background:var(--dk);color:var(--dk-muted);font-size:var(--text-sm);border-top:1px solid var(--dk-line)}
.footer__in{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.footer a{text-decoration:none}.footer a:hover{color:var(--accent-2)}

.toast{position:fixed;left:50%;bottom:1.5rem;transform:translate(-50%,150%);background:var(--ink);color:var(--bg);padding:.7rem 1.2rem;border-radius:999px;font-size:var(--text-sm);font-weight:700;transition:transform .35s var(--ease),visibility .35s;z-index:100;visibility:hidden}
.toast.is-on{transform:translate(-50%,0);visibility:visible}

.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal.is-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.dash__chart .fact{stroke-dashoffset:0}.dash__chart .fact-area{opacity:1}}
@media(min-width:1001px){.prod--wide{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1.3fr 1fr;column-gap:2rem;align-items:start}.prod--wide .prod__lvl{grid-column:1}.prod--wide h3{grid-column:1}.prod--wide > p:not(.prod__lvl):not(.prod__meta){grid-column:2;grid-row:1/3}.prod--wide .checks{grid-column:3;grid-row:1/4;margin:0}.prod--wide .prod__meta{grid-column:1;border-top:0;padding-top:0}}
@media(max-width:1000px) and (min-width:601px){.prod--wide{grid-column:span 2}}
/* protocol */
.proto{position:relative;overflow:hidden}
.proto::before{content:"";position:absolute;inset:-20% auto auto -10%;width:60%;height:80%;background:radial-gradient(closest-side,#5fe3b324,transparent);pointer-events:none}
.proto__grid{position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:start}
.proto h2{font-family:var(--font-display);font-size:clamp(2rem,1.2rem + 3.4vw,3.6rem);line-height:1.05;font-weight:600;margin:.6rem 0 1rem;letter-spacing:-.02em}
.proto .hl{color:var(--accent-2)}
.proto .sub{color:var(--dk-muted);max-width:52ch}
.proto__facts{display:grid;gap:.75rem;margin:1.75rem 0}
.proto__facts>div{display:grid;grid-template-columns:9.5rem 1fr;gap:1rem;padding:.9rem 0;border-top:1px solid var(--dk-line)}
.proto__facts .mini{color:var(--accent-2);padding-top:.15rem}
.proto__facts p:last-child{font-size:var(--text-sm);color:var(--dk-ink)}
.proto__price{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;flex-wrap:wrap;padding:1.25rem 1.4rem;border-radius:var(--r-lg);background:linear-gradient(135deg,#5fe3b31f,#5fe3b308);border:1px solid #5fe3b340}
.proto__price .mini{color:var(--dk-muted)}
.proto__price b{display:block;font-family:var(--font-display);font-size:clamp(1.6rem,1.2rem + 1.6vw,2.2rem);font-weight:600;color:var(--accent-2);line-height:1.15;font-variant-numeric:lining-nums}
.proto__price span{font-size:var(--text-sm);color:var(--dk-muted)}
.proto__plan{background:var(--dk-2);border:1px solid var(--dk-line);border-radius:var(--r-lg);padding:1.5rem}
.proto__list{list-style:none;margin-top:.75rem;display:grid}
.proto__list li{display:grid;grid-template-columns:2.4rem 1fr;gap:.75rem;padding:.8rem 0;border-top:1px dashed var(--dk-line)}
.proto__list li:first-child{border-top:0}
.proto__list b{font-family:var(--font-display);font-size:var(--text-sm);color:var(--accent-2);font-weight:500;padding-top:.1rem}
.proto__list h3{font-size:var(--text-base);font-weight:700;color:var(--dk-ink)}
.proto__list p{font-size:var(--text-sm);color:var(--dk-muted);margin-top:.15rem}
@media(max-width:900px){.proto__grid{grid-template-columns:1fr}}
@media(max-width:520px){.proto__facts>div{grid-template-columns:1fr;gap:.25rem}.proto__price .btn{width:100%}}
/* brand logo */
.brand{flex-direction:row;align-items:center;gap:.7rem}
.brand__txt{display:flex;flex-direction:column;line-height:1.15}
.brand__logo{width:40px;height:42px;object-fit:cover;border-radius:10px;background:#fff;box-shadow:0 0 0 1px #00000014,0 4px 12px -6px #0003;flex:none}
[data-theme="dark"] .brand__logo{box-shadow:0 0 0 1px #ffffff1f}
@media(max-width:440px){.brand__logo{width:34px;height:36px;border-radius:8px}}
/* legal */
.agree a,.proto__legal a,.form__fail a{color:var(--accent);text-underline-offset:2px}
.form__note{font-size:var(--text-xs);color:var(--muted);text-align:center;margin-top:-.25rem}
.form__fail{background:#ff8a801a;border:1px solid #ff8a8055;border-radius:var(--r);padding:1rem 1.25rem;font-size:var(--text-sm)}
.form__fail[hidden],.form__ok[hidden]{display:none}
.proto__legal{font-size:var(--text-xs);color:var(--dk-muted);margin-top:.85rem}
.btn[disabled]{opacity:.6;cursor:progress}
.footer{padding:2.5rem 0 1.5rem}
.footer__in{align-items:flex-start;padding-bottom:1.5rem;border-bottom:1px solid var(--dk-line);margin-bottom:1.25rem}
.footer__brand{display:flex;gap:.9rem;align-items:center}
.footer__brand img{width:48px;height:50px;border-radius:12px;background:#fff;object-fit:cover}
.footer__name{font-family:var(--font-display);color:var(--dk-ink);font-weight:500}
.footer__legal{display:grid;grid-template-columns:repeat(2,auto);gap:.45rem 2rem}
.footer__bottom{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:var(--text-xs)}
@media(max-width:700px){.footer__legal{grid-template-columns:1fr}}
