/* ZnakOS site. Sharp edges only: no border-radius anywhere. Chamfered corners, hairline grid, mono labels. */
@font-face{font-family:"Inter Tight";font-weight:100 900;font-display:swap;src:url(/site-static/fonts/it-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215}
@font-face{font-family:"Inter Tight";font-weight:100 900;font-display:swap;src:url(/site-static/fonts/it-cyr.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"JetBrains Mono";font-weight:100 800;font-display:swap;src:url(/site-static/fonts/jb-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215}
@font-face{font-family:"JetBrains Mono";font-weight:100 800;font-display:swap;src:url(/site-static/fonts/jb-cyr.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Doto";font-weight:900;font-display:swap;src:url(/site-static/fonts/doto.woff2) format("woff2");unicode-range:U+0020-007E}

:root{--f-sans:"Inter Tight",system-ui,"Segoe UI",Tahoma,"Noto Sans Arabic","Microsoft YaHei","PingFang SC","Noto Sans SC",Arial,sans-serif;
--f-mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,"Noto Sans Arabic","Microsoft YaHei","PingFang SC",monospace;--f-dot:"Doto","JetBrains Mono",ui-monospace,monospace;
--hh:56px;--pad:clamp(16px,3vw,44px);--cut:14px;--ease:cubic-bezier(.2,.7,.1,1)}
:root[data-theme=dark]{color-scheme:dark;--bg:#06090c;--bg2:#0a0f14;--panel:#0d141a;--line:#1b2730;--line2:#2c3d49;--text:#eaf0ed;--muted:#8d9ba3;--dim:#5a6a73;--accent:#2bb3a3;--accent-ink:#031210;--amber:#e8a33d;--danger:#ff5d47;--grain:.07}
:root[data-theme=light]{color-scheme:light;--bg:#f2f0ea;--bg2:#eae7de;--panel:#f8f7f2;--line:#d6d3c8;--line2:#b4b0a2;--text:#0a0e11;--muted:#4f5a5f;--dim:#868c8f;--accent:#0b7d71;--accent-ink:#f8f7f2;--amber:#b36a05;--danger:#c42f1c;--grain:.05}
*,*::before,*::after{box-sizing:border-box;border-radius:0}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--hh) + 12px)}
body{margin:0;background:var(--bg);color:var(--text);font:400 17px/1.55 var(--f-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
body::after{content:"";position:fixed;inset:0;z-index:90;pointer-events:none;opacity:var(--grain);background:url(/site-static/img/grain.png);mix-blend-mode:overlay}
a{color:inherit;text-decoration:none}
img,svg,canvas{display:block;max-width:100%}
h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0;list-style:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
::selection{background:var(--accent);color:var(--accent-ink)}
.sprite{position:absolute;width:0;height:0;overflow:hidden}
.ic{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:square;stroke-linejoin:miter;flex:none}
.skip{position:absolute;inset-inline-start:-999px;top:8px;background:var(--accent);color:var(--accent-ink);padding:8px 14px;z-index:200}
.skip:focus{inset-inline-start:8px}
.gridlines{position:fixed;inset:0;z-index:0;pointer-events:none;display:flex;justify-content:space-between;padding-inline:var(--pad);max-width:1600px;margin-inline:auto}
.gridlines i{width:1px;background:var(--line);opacity:.55}
.wrap{width:100%;max-width:1600px;margin-inline:auto;padding-inline:var(--pad);position:relative;z-index:1}
main,footer,header{position:relative;z-index:2}
.mono,.tag,.lab{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;font-weight:500}
.muted{color:var(--muted)}.small{font-size:13.5px}
:lang(ar) *,:lang(ar) *::before{letter-spacing:0!important}
:lang(zh) h1,:lang(zh) h2{letter-spacing:0!important;line-height:1.12!important}
.cross{width:15px;height:15px;color:var(--dim);background:linear-gradient(currentColor,currentColor) 50%/1px 100% no-repeat,linear-gradient(currentColor,currentColor) 50%/100% 1px no-repeat;position:absolute;pointer-events:none}

/* ---------- header ---------- */
.top{position:sticky;top:0;z-index:60;height:var(--hh);background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.top-in{height:100%;display:flex;align-items:center;gap:28px}
.brand{display:inline-flex;align-items:center;gap:10px;font:700 15px var(--f-mono);letter-spacing:.14em;text-transform:uppercase}
.brand .logo{height:20px;width:auto;color:var(--accent)}
.dnav{display:flex;gap:2px;margin-inline-start:auto}
.dnav a{font:500 11.5px var(--f-mono);letter-spacing:.09em;text-transform:uppercase;padding:9px 12px;color:var(--muted);position:relative;transition:color .2s}
.dnav a::after{content:"";position:absolute;inset-inline:12px;bottom:3px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.dnav a:hover,.dnav a[aria-current]{color:var(--text)}
.dnav a:hover::after,.dnav a[aria-current]::after{transform:scaleX(1)}
:root[dir=rtl] .dnav a::after{transform-origin:right}
.tools{display:flex;align-items:center;gap:8px;margin-inline-start:12px}
.top-in>.tools:only-of-type{margin-inline-start:auto}
.ibtn{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line2);transition:background .2s,color .2s,border-color .2s}
.ibtn:hover{background:var(--text);color:var(--bg);border-color:var(--text)}
.sun{display:none}:root[data-theme=light] .sun{display:block}:root[data-theme=light] .moon{display:none}
.lang{position:relative}
.lang summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:7px;height:36px;padding:0 12px;border:1px solid var(--line2);font:500 11.5px var(--f-mono);letter-spacing:.09em}
.lang summary::-webkit-details-marker{display:none}
.lang summary:hover,.lang[open] summary{background:var(--text);color:var(--bg);border-color:var(--text)}
.lang ul{position:absolute;inset-inline-end:0;top:calc(100% + 6px);min-width:170px;background:var(--panel);border:1px solid var(--line2);z-index:70}
.lang li a{display:block;padding:11px 16px;font-size:14.5px;border-bottom:1px solid var(--line)}
.lang li:last-child a{border-bottom:0}
.lang li a:hover{background:var(--accent);color:var(--accent-ink)}
.lang li a[aria-current]{color:var(--accent);font-weight:700}
.lang li a[aria-current]:hover{color:var(--accent-ink)}

/* ---------- buttons (primary is chamfered, ghost is a plain frame) ---------- */
.btn{display:inline-flex;align-items:center;gap:12px;min-height:52px;padding:0 26px;background:var(--accent);color:var(--accent-ink);font:600 12.5px var(--f-mono);letter-spacing:.1em;text-transform:uppercase;clip-path:polygon(0 0,calc(100% - var(--cut)) 0,100% var(--cut),100% 100%,0 100%);transition:background .2s,color .2s,transform .25s var(--ease)}
:root[dir=rtl] .btn{clip-path:polygon(var(--cut) 0,100% 0,100% 100%,0 100%,0 var(--cut))}
.btn:hover{background:var(--text);color:var(--bg)}
.btn .arr{transition:transform .3s var(--ease)}
.btn:hover .arr{transform:translateX(5px)}
:root[dir=rtl] .btn .arr{transform:scaleX(-1)}:root[dir=rtl] .btn:hover .arr{transform:scaleX(-1) translateX(5px)}
.btn[disabled]{opacity:.5;pointer-events:none}
.btn-ghost{background:transparent;color:var(--text);box-shadow:inset 0 0 0 1px var(--line2);clip-path:none!important}
.btn-ghost:hover{background:var(--text);color:var(--bg);box-shadow:none}
.btn-sm{min-height:36px;padding:0 16px;font-size:11px;--cut:9px}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.center-a{justify-content:center}

/* ---------- reveal ---------- */
html.js [data-r]{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--d,0)*70ms)}
html.js [data-r].in{opacity:1;transform:none}
.w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.w>span{display:inline-block;transform:translateY(105%);transition:transform 1s var(--ease);transition-delay:calc(var(--i,0)*55ms + 120ms)}
.in .w>span,.w.in>span{transform:none}
html:not(.js) .w>span{transform:none}
#bar{position:fixed;top:0;inset-inline:0;height:4px;z-index:80;background:var(--accent);transform:scaleX(0);transform-origin:left}
:root[dir=rtl] #bar{transform-origin:right}
#barcar{position:fixed;top:0;left:0;width:100%;height:48px;z-index:85;pointer-events:none}
.has-barcar #bar{display:none}

/* ---------- hero ---------- */
.hero{position:relative;min-height:calc(100svh - var(--hh));display:flex;flex-direction:column;border-bottom:1px solid var(--line);overflow:hidden}
.hero canvas{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair;z-index:0}
.hero-copy{position:relative;z-index:2;padding-top:clamp(40px,9vh,110px);pointer-events:none}
.hero-copy a,.hero-copy .actions{pointer-events:auto}
.pill{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border:1px solid var(--line2);background:color-mix(in srgb,var(--bg) 70%,transparent);font:500 11px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;max-width:100%}
.pill i{width:7px;height:7px;background:var(--accent);flex:none;animation:blink 1.6s steps(2) infinite}
@keyframes blink{50%{opacity:.15}}
.hero .tag{color:var(--accent);margin-bottom:22px;display:flex;align-items:center;gap:12px}.hero .tag::after{content:"";height:1px;width:64px;background:var(--accent)}
.hero h1{font-weight:700;font-size:clamp(42px,8.2vw,150px);line-height:.93;letter-spacing:-.028em;margin:0 0 26px;max-width:15ch;text-wrap:balance;overflow-wrap:anywhere}
.hero .lead{max-width:56ch;font-size:clamp(17px,1.5vw,21px);color:var(--muted);line-height:1.5}
.hero-hint{position:absolute;z-index:2;inset-inline-end:var(--pad);top:clamp(40px,9vh,110px);font:500 10.5px var(--f-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:10px;pointer-events:none}
.hero-hint::before{content:"";width:28px;height:1px;background:var(--accent)}
.hero .spacer{flex:1;min-height:60px}
.ro{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr 1fr 2fr;border-top:1px solid var(--line);background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(8px)}
.ro>div{padding:16px var(--pad);border-inline-end:1px solid var(--line)}
.ro>div:last-child{border:0}
.ro dt{color:var(--dim);margin-bottom:6px}
.ro dd{font:500 15px var(--f-mono);letter-spacing:.02em}
.ro dd b{color:var(--accent);font-weight:500}

/* ---------- ticker ---------- */
.ticker{overflow:hidden;border-bottom:1px solid var(--line);background:var(--accent);color:var(--accent-ink);direction:ltr}
.ticker div{display:flex;width:max-content;animation:tick 48s linear infinite}
.ticker span{padding:13px 26px;font:600 12px var(--f-mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;display:flex;align-items:center;gap:26px}
.ticker span::after{content:"";width:7px;height:7px;background:currentColor;transform:rotate(45deg)}
@keyframes tick{to{transform:translateX(-50%)}}

/* ---------- sections ---------- */
.sec{padding:clamp(72px,11vw,170px) 0;border-bottom:1px solid var(--line);position:relative}
.sec.alt{background:var(--bg2)}
.sec.tight{padding-top:clamp(24px,3.5vw,52px)}
.sh{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin-bottom:clamp(36px,5vw,76px)}
.sh .tag{color:var(--accent);display:flex;align-items:center;gap:12px}
.sh .tag::after{content:"";height:1px;flex:1;background:var(--line2)}
.sh h2{font-weight:700;font-size:clamp(34px,5.6vw,98px);line-height:.96;letter-spacing:-.028em;max-width:18ch;text-wrap:balance;overflow-wrap:anywhere}
.sh .sub{max-width:60ch;color:var(--muted);font-size:clamp(17px,1.4vw,20px)}

/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.stats>div{position:relative;padding:clamp(22px,3vw,40px) clamp(16px,2vw,30px);border:1px solid var(--line2);margin:0 -1px -1px 0;min-width:0}
.stats dd{font:900 clamp(24px,3.3vw,62px)/1 var(--f-dot);letter-spacing:0;color:var(--text);font-variant-numeric:tabular-nums;margin-bottom:16px;direction:ltr;text-align:start;white-space:nowrap}
.stats dt{color:var(--muted);max-width:22ch}
.stats>div::before,.stats>div::after{content:"";position:absolute;width:10px;height:10px;border:2px solid var(--accent)}
.stats>div::before{top:-1px;inset-inline-start:-1px;border-width:2px 0 0 2px}
.stats>div::after{bottom:-1px;inset-inline-end:-1px;border-width:0 2px 2px 0}
:root[dir=rtl] .stats>div::before{border-width:2px 2px 0 0}:root[dir=rtl] .stats>div::after{border-width:0 0 2px 2px}
.stats-note{margin-top:22px;color:var(--muted)}

/* pinned story */
.story{height:430vh;position:relative;border-bottom:1px solid var(--line)}
.story-pin{position:sticky;top:var(--hh);height:calc(100svh - var(--hh));display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);overflow:hidden}
.story-text{display:flex;flex-direction:column;justify-content:center;padding:32px var(--pad);border-inline-end:1px solid var(--line);position:relative;z-index:2;background:var(--bg)}
.story-text .tag{color:var(--accent);margin-bottom:18px}
.story-text h2{font-weight:700;font-size:clamp(30px,3.9vw,66px);line-height:.98;letter-spacing:-.028em;margin-bottom:clamp(20px,3vh,40px);overflow-wrap:anywhere}
.steps{position:relative;display:grid;gap:0;padding-inline-start:26px}
.steps::before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:1px;background:var(--line2)}
.steps::after{content:"";position:absolute;inset-inline-start:-1px;top:0;width:3px;height:100%;background:var(--accent);transform:scaleY(var(--p,0));transform-origin:top}
.steps li{padding:12px 0;border-top:1px solid var(--line);opacity:.38;transition:opacity .5s}
.steps li:first-of-type{border-top:0}
.steps li.on{opacity:1}
.steps li b{display:flex;align-items:baseline;gap:14px;font-weight:700;font-size:clamp(19px,1.9vw,30px);letter-spacing:-.02em;line-height:1.1}
.steps li b em{font:500 11px var(--f-mono);font-style:normal;color:var(--accent);letter-spacing:.09em}
.steps li p{color:var(--muted);font-size:15.5px;line-height:1.45;max-height:0;overflow:hidden;opacity:0;transition:max-height .6s var(--ease),opacity .5s,margin .5s}
.steps li.on p{max-height:9em;opacity:1;margin-top:8px}
.story-scene{position:relative;overflow:hidden;background:var(--bg2)}
.story-scene canvas{position:absolute;inset:0;width:100%;height:100%}
.scene-meta{position:absolute;inset-inline-start:18px;top:16px;color:var(--muted);z-index:3;display:flex;gap:18px}
.scene-meta b{color:var(--accent);font-weight:500}
.pop{position:absolute;z-index:4;width:min(270px,46%);background:var(--panel);border:1px solid var(--accent);opacity:0;transform:translateY(12px);transition:opacity .45s var(--ease),transform .45s var(--ease);pointer-events:none}
.pop.on{opacity:1;transform:none}
.pop header{display:flex;justify-content:space-between;gap:10px;padding:7px 12px;background:var(--accent);color:var(--accent-ink);font:600 10px var(--f-mono);letter-spacing:.1em;text-transform:uppercase}
.pop .b{padding:12px 14px 14px;font-size:15px;line-height:1.3;font-weight:600}
.pop .b small{display:block;margin-top:6px;font:400 12px var(--f-mono);letter-spacing:.02em;color:var(--muted);text-transform:none}
.pop-1{inset-inline-start:7%;top:12%}.pop-2{inset-inline-end:6%;top:20%}.pop-3{inset-inline-start:8%;bottom:30%}
.pop-4{inset-inline-end:6%;bottom:9%;width:min(300px,50%)}
.pop-4 header{background:var(--danger);color:#fff}.pop-4{border-color:var(--danger)}
.pop-4 .big{font-size:21px;line-height:1.1;letter-spacing:-.02em}
.pop-4 .dist{float:inline-end;font:900 30px/1 var(--f-dot);color:var(--danger)}
.pop-4 .l3{display:block;margin-top:10px;padding:8px 10px;background:var(--text);color:var(--bg);font:600 11px var(--f-mono);letter-spacing:.06em;text-transform:uppercase}
.chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}
.chips i{font:500 10px var(--f-mono);font-style:normal;letter-spacing:.07em;text-transform:uppercase;padding:4px 7px;border:1px solid var(--line2);color:var(--muted)}
.chips i.hot{background:var(--amber);color:#1a1000;border-color:var(--amber)}

/* signal / resonance */
.signal-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,5vw,90px);align-items:center}
.signal-grid.solo{grid-template-columns:1fr;align-items:start}
.signal-grid.solo>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,5vw,90px);align-items:start}
.signal-grid.solo .sh{margin-bottom:0}.signal-grid.solo .sig-note{grid-column:1/-1}
.lv{display:grid;margin-top:26px}
.signal-grid.solo .lv{margin-top:0}
.lv label{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:16px 4px;border-top:1px solid var(--line2);cursor:pointer;transition:padding .35s var(--ease),background .2s,color .2s}
.lv label:last-child{border-bottom:1px solid var(--line2)}
.lv input{position:absolute;opacity:0;pointer-events:none}
.lv .n{font:500 11px var(--f-mono);color:var(--dim)}
.lv .t{font-weight:700;font-size:clamp(20px,2vw,30px);letter-spacing:-.02em;line-height:1}
.lv .d{font:500 12px var(--f-mono);color:var(--muted);letter-spacing:.04em}
.lv label:hover{padding-inline:14px}
.lv input:checked+.n,.lv input:checked~.t{color:var(--accent)}
.lv label:has(input:checked){background:var(--panel);padding-inline:14px}
.lv label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:-2px}
.sig-note{margin-top:18px;color:var(--dim)}
.sig-strip{grid-column:1/-1;border:1px solid var(--line2);background:var(--bg);height:140px;position:relative}
.sig-strip canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
:root[lang=ar] .sig-strip canvas{direction:ltr}

/* principles */
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line2)}
.pgrid>div{padding:clamp(22px,2.4vw,38px);min-height:clamp(240px,26vw,380px);display:flex;flex-direction:column;border-inline-end:1px solid var(--line2);transition:background .35s var(--ease),color .35s;position:relative}
.pgrid>div:last-child{border:0}
.pgrid .n{font:500 11px var(--f-mono);color:var(--dim);letter-spacing:.09em;margin-bottom:auto;display:flex;justify-content:space-between}
.pgrid .ic{width:34px;height:34px;stroke-width:1.2;color:var(--accent);margin-bottom:28px;transition:color .3s}
.pgrid h3{font-weight:700;font-size:clamp(21px,1.9vw,30px);line-height:1.04;letter-spacing:-.025em;margin-bottom:12px}
.pgrid p{color:var(--muted);font-size:15px;line-height:1.45;transition:color .3s}
.pgrid>div:hover{background:var(--accent);color:var(--accent-ink)}
.pgrid>div:hover .ic,.pgrid>div:hover p,.pgrid>div:hover .n{color:var(--accent-ink)}

/* who rows */
.rows{border-top:1px solid var(--line2)}
.row{display:grid;grid-template-columns:70px minmax(0,1.1fr) minmax(0,1.6fr) 56px;gap:24px;align-items:center;padding:clamp(24px,3vw,44px) 4px;border-bottom:1px solid var(--line2);transition:padding .45s var(--ease),background .25s}
.row .n{font:500 11px var(--f-mono);color:var(--dim);letter-spacing:.09em}
.row h3{font-weight:700;font-size:clamp(26px,3.4vw,58px);letter-spacing:-.025em;line-height:1;transition:color .25s;overflow-wrap:anywhere}
.row p{color:var(--muted);max-width:52ch}
.row .go{width:48px;height:48px;border:1px solid var(--line2);display:grid;place-items:center;transition:background .25s,color .25s,transform .4s var(--ease)}
.row:hover{padding-inline:clamp(10px,1.6vw,26px);background:var(--panel)}
.row:hover h3{color:var(--accent)}
.row:hover .go{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);transform:translateX(4px)}
:root[dir=rtl] .row .go .ic{transform:scaleX(-1)}

/* cta + share */
.cta{padding:clamp(80px,12vw,200px) 0 clamp(60px,8vw,120px);border-bottom:1px solid var(--line);background:var(--accent);color:var(--accent-ink);position:relative;overflow:hidden}
.cta h2{font-weight:700;font-size:clamp(40px,8.4vw,150px);line-height:.92;letter-spacing:-.028em;max-width:14ch;text-wrap:balance;overflow-wrap:anywhere}
.cta .sub{margin-top:26px;max-width:46ch;font-size:clamp(17px,1.5vw,21px);opacity:.82}
.cta .btn{background:var(--accent-ink);color:var(--text)}
.cta .btn:hover{background:var(--bg);color:var(--text)}
:root[data-theme=light] .cta .btn{color:#f2f0ea}
.cta .btn-ghost{background:transparent;box-shadow:inset 0 0 0 1px currentColor;color:var(--accent-ink)}
.cta .btn-ghost:hover{background:var(--accent-ink);color:var(--accent)}
.share{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:clamp(40px,6vw,90px);padding-top:22px;border-top:1px solid color-mix(in srgb,var(--accent-ink) 35%,transparent)}
.share .lab{margin-inline-end:10px;opacity:.75}
.share a,.share button{font:600 11px var(--f-mono);letter-spacing:.09em;text-transform:uppercase;padding:10px 14px;border:1px solid color-mix(in srgb,var(--accent-ink) 55%,transparent);transition:background .2s,color .2s}
.share a:hover,.share button:hover{background:var(--accent-ink);color:var(--accent)}

/* footer */
.foot{padding-top:clamp(50px,6vw,90px);background:var(--bg);overflow:hidden}
.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:clamp(28px,4vw,70px);padding-bottom:clamp(40px,5vw,70px)}
.foot h2{font:500 11px var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--dim);margin-bottom:16px}
.foot li a{display:inline-block;padding:5px 0;font-size:15.5px;position:relative}
.foot li a::after{content:"";position:absolute;inset-inline:0;bottom:3px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.foot li a:hover{color:var(--accent)}.foot li a:hover::after{transform:scaleX(1)}
.foot p a{color:var(--accent)}
.foot .brand{margin-bottom:18px}
.legalline{padding:18px 0;border-top:1px solid var(--line)}
.mark{font-weight:800;font-size:clamp(70px,24vw,440px);line-height:.74;letter-spacing:-.07em;color:var(--text);text-align:center;margin-top:10px;user-select:none;white-space:nowrap;direction:ltr;opacity:.96;margin-bottom:-.06em;mask-image:linear-gradient(#000 40%,transparent 98%);-webkit-mask-image:linear-gradient(#000 40%,transparent 98%)}

/* ---------- inner pages ---------- */
.phead{padding:clamp(56px,10vh,130px) 0 clamp(36px,5vw,70px);border-bottom:1px solid var(--line);position:relative}
.phead .tag{color:var(--accent);margin-bottom:22px;display:flex;align-items:center;gap:12px}
.phead .tag::after{content:"";height:1px;width:64px;background:var(--accent)}
.phead h1{font-weight:700;font-size:clamp(38px,7vw,128px);line-height:.94;letter-spacing:-.028em;max-width:16ch;text-wrap:balance;overflow-wrap:anywhere}
.phead .lead{margin-top:28px;max-width:60ch;color:var(--muted);font-size:clamp(17px,1.5vw,21px)}
.phead.center{text-align:center}.phead.center h1{margin-inline:auto}.phead.center .tag{justify-content:center}
.narrow>*{max-width:900px}
.note{margin-top:34px;padding:18px 20px;border:1px solid var(--line2);color:var(--muted);max-width:70ch;position:relative;font-size:15.5px}
.note::before{content:"//";font:600 11px var(--f-mono);color:var(--amber);margin-inline-end:10px;letter-spacing:.1em}
.cells{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line2)}
.cells li{padding:clamp(22px,2.4vw,38px);min-height:clamp(240px,24vw,360px);display:flex;flex-direction:column;border-inline-end:1px solid var(--line2);transition:background .3s}
.cells li:last-child{border:0}
.cells li:hover{background:var(--panel)}
.cells .num{font:900 clamp(48px,5vw,84px)/1 var(--f-dot);color:var(--accent);margin-bottom:auto;padding-bottom:28px}
.cells h2,.cells h3{font-weight:700;font-size:clamp(22px,2vw,32px);letter-spacing:-.025em;line-height:1.05;margin-bottom:12px}
.cells p{color:var(--muted);font-size:15.5px;line-height:1.45}
.trio{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line2)}
.trio>div{padding:clamp(24px,3vw,46px);min-height:300px;display:flex;flex-direction:column;border-inline-end:1px solid var(--line2)}
.trio>div:last-child{border:0}
.trio .n{font:500 11px var(--f-mono);color:var(--accent);letter-spacing:.09em;margin-bottom:auto;padding-bottom:30px}
.trio h2{font-weight:700;font-size:clamp(26px,2.8vw,46px);letter-spacing:-.025em;line-height:1;margin-bottom:14px}
.trio p{color:var(--muted)}
.prose p{margin-bottom:1.3em;font-size:clamp(18px,1.6vw,23px);line-height:1.5;max-width:60ch}
.prose p:first-child{font-size:clamp(22px,2.4vw,36px);line-height:1.2;letter-spacing:-.02em;font-weight:500}
.ticks{display:grid;gap:0;border-top:1px solid var(--line2)}
.ticks li{display:flex;gap:18px;align-items:flex-start;padding:20px 4px;border-bottom:1px solid var(--line2);font-size:clamp(17px,1.5vw,22px);font-weight:500}
.ticks .ic{color:var(--accent);margin-top:3px}
.bigmail{display:inline-block;font-weight:700;font-size:clamp(28px,6vw,100px);letter-spacing:-.028em;line-height:1;border-bottom:3px solid var(--accent);padding-bottom:6px;overflow-wrap:anywhere;transition:color .2s}
.bigmail:hover{color:var(--accent)}
.mails{display:grid;gap:0;margin-top:48px;border-top:1px solid var(--line2);max-width:760px}
.mails a{display:flex;justify-content:space-between;gap:14px;padding:18px 4px;border-bottom:1px solid var(--line2);font:500 14px var(--f-mono);transition:padding .35s var(--ease),color .2s}
.mails a:hover{padding-inline:14px;color:var(--accent)}
.mails span{color:var(--dim)}

/* forms */
.two{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,90px);align-items:start}
.form{display:grid;gap:22px;padding:clamp(22px,3vw,44px);border:1px solid var(--line2);background:var(--panel);position:relative}
.form label{display:grid;gap:8px;font:500 11px var(--f-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.form input[type=text],.form input[type=email],.form select{width:100%;min-height:52px;padding:0 14px;background:var(--bg);color:var(--text);border:1px solid var(--line2);font:400 17px var(--f-sans);letter-spacing:0;text-transform:none;appearance:none;-webkit-appearance:none;transition:border-color .2s}
.form select{background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 20px) 23px,calc(100% - 14px) 23px;background-size:6px 6px;background-repeat:no-repeat;padding-inline-end:38px}
:root[dir=rtl] .form select{background-position:20px 23px,14px 23px}
.form input:hover,.form select:hover{border-color:var(--muted)}
.form input:focus,.form select:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.form .check{display:flex;gap:14px;align-items:flex-start;font:400 15px/1.4 var(--f-sans);letter-spacing:0;text-transform:none;color:var(--text)}
.form .check a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.form input[type=checkbox]{appearance:none;-webkit-appearance:none;flex:none;width:22px;height:22px;border:1px solid var(--line2);background:var(--bg);margin:1px 0 0;position:relative;cursor:pointer}
.form input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}
.form input[type=checkbox]:checked::after{content:"";position:absolute;inset:5px 4px 6px;background:var(--accent-ink);clip-path:polygon(0 55%,18% 38%,40% 62%,85% 8%,100% 25%,40% 100%)}
.hp{position:absolute!important;left:-9999px;opacity:0;height:0;width:0}
.msg{min-height:1.4em;font:500 13px var(--f-mono);letter-spacing:.02em}.msg.err{color:var(--danger)}
.ok{padding:clamp(22px,3vw,44px);border:1px solid var(--accent);background:var(--panel);display:grid;gap:20px}
.ok .big{width:40px;height:40px}.good{color:var(--accent)}
.ok h2{font-weight:700;font-size:clamp(24px,2.6vw,38px);letter-spacing:-.03em;line-height:1.05}
.ok label{display:grid;gap:8px;font:500 11px var(--f-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.ok input{width:100%;min-height:48px;padding:0 12px;background:var(--bg);color:var(--text);border:1px solid var(--line2);font:400 14px var(--f-mono)}
.ok .actions{margin:0}
.ok .share{margin:0;padding:0;border:0}
.ok .share a{border-color:var(--line2);color:var(--text)}.ok .share a:hover{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.perks{margin-top:34px}

/* legal */
.legal{counter-reset:s}
.legal h2{counter-increment:s;font-weight:700;font-size:clamp(22px,2.2vw,32px);letter-spacing:-.025em;margin:2.4em 0 .7em;padding-top:1.1em;border-top:1px solid var(--line2);display:flex;gap:16px;align-items:baseline}
.legal h2::before{content:counter(s,decimal-leading-zero);font:500 11px var(--f-mono);color:var(--accent);letter-spacing:.09em}
.legal h3{font-weight:700;font-size:19px;margin:1.6em 0 .5em}
.legal p,.legal li{font-size:16.5px;line-height:1.65;color:color-mix(in srgb,var(--text) 86%,var(--bg))}
.legal p{margin-bottom:1em}
.legal ul{list-style:none;margin:0 0 1.2em}
.legal li{padding:7px 0 7px 22px;position:relative}
.legal li::before{content:"";position:absolute;inset-inline-start:0;top:1.05em;width:8px;height:1px;background:var(--accent)}
.legal a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}
.legal table{width:100%;border-collapse:collapse;margin:1em 0 1.6em;font-size:15px}
.legal th,.legal td{text-align:start;padding:11px 12px;border:1px solid var(--line2);vertical-align:top}
.legal th{font:500 11px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:var(--panel)}
.legal .prose p:first-child{font-size:inherit;letter-spacing:0;font-weight:400}

/* ---------- try-it ---------- */
.sandbox{padding:clamp(28px,4vw,56px) 0 clamp(60px,8vw,120px);border-bottom:1px solid var(--line)}
.sb-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,1fr);gap:clamp(20px,3vw,48px);align-items:start}
.sb-bar,.sb-bar2{display:flex;flex-wrap:wrap;gap:14px 26px;align-items:end;margin-bottom:14px}
.sb-bar2{margin:14px 0 0;justify-content:space-between;align-items:center}
.seg{border:0;padding:0;margin:0;min-width:0;display:flex;flex-wrap:wrap}
.seg legend{padding:0;margin-bottom:8px;font:500 11px var(--f-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.seg label{position:relative}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg span{display:block;padding:11px 15px;border:1px solid var(--line2);margin-inline-end:-1px;font:500 12px var(--f-mono);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s}
.seg span:hover{background:var(--panel)}
.seg input:checked+span{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);position:relative;z-index:1}
.seg input:focus-visible+span{outline:2px solid var(--text);outline-offset:2px;z-index:2}
.canvas-wrap{position:relative;border:1px solid var(--line2);background:var(--bg2)}
.canvas-wrap canvas{width:100%;aspect-ratio:1000/625;cursor:crosshair;touch-action:manipulation}
.hint{position:absolute;inset-inline:0;bottom:16px;margin-inline:auto;width:max-content;max-width:90%;padding:10px 16px;background:var(--text);color:var(--bg);font:500 11.5px var(--f-mono);letter-spacing:.07em;text-transform:uppercase;pointer-events:none;transition:opacity .4s}
.hint.gone{opacity:0}
.switch{display:inline-flex;align-items:center;gap:12px;cursor:pointer;font:500 12px var(--f-mono);letter-spacing:.06em;text-transform:uppercase}
.switch input{position:absolute;opacity:0}
.sw{width:44px;height:22px;border:1px solid var(--line2);position:relative;background:var(--bg);flex:none;transition:background .2s,border-color .2s}
.sw::after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:14px;height:14px;background:var(--muted);transition:transform .25s var(--ease),background .2s}
.switch input:checked+.sw{background:var(--accent);border-color:var(--accent)}
.switch input:checked+.sw::after{transform:translateX(22px);background:var(--accent-ink)}
:root[dir=rtl] .switch input:checked+.sw::after{transform:translateX(-22px)}
.switch input:focus-visible+.sw{outline:2px solid var(--accent);outline-offset:3px}
.tabs{display:flex;border-bottom:1px solid var(--line2);margin-bottom:18px}
.tabs button{padding:12px 16px;font:500 11.5px var(--f-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);position:relative}
.tabs button[aria-selected=true]{color:var(--text)}
.tabs button[aria-selected=true]::after{content:"";position:absolute;inset-inline:0;bottom:-1px;height:2px;background:var(--accent)}
.phone{width:min(100%,300px);margin-inline:auto;border:2px solid var(--line2);background:var(--bg);padding:10px;position:relative}
.ph-notch{width:70px;height:6px;background:var(--line2);margin:2px auto 10px}
.ph-body{min-height:340px;padding:18px;background:var(--panel);display:flex;flex-direction:column;gap:14px;border-top:4px solid var(--line2);transition:border-color .3s}
.phone[data-level=aware] .ph-body{border-top-color:#3a7bd5}.phone[data-level=prepare] .ph-body{border-top-color:var(--amber)}
.phone[data-level=act] .ph-body{border-top-color:var(--danger)}.phone[data-level=caution] .ph-body{border-top-color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,var(--panel))}
.ph-chip{align-self:flex-start;padding:5px 10px;background:var(--line2);font:600 11px var(--f-mono);letter-spacing:.09em;text-transform:uppercase}
.phone[data-level=aware] .ph-chip{background:#3a7bd5;color:#fff}.phone[data-level=prepare] .ph-chip{background:var(--amber);color:#1a1000}
.phone[data-level=act] .ph-chip,.phone[data-level=caution] .ph-chip{background:var(--danger);color:#fff}
.ph-title{font-weight:700;font-size:25px;line-height:1.08;letter-spacing:-.025em}
.ph-dist{font:900 54px/1 var(--f-dot);direction:ltr;text-align:start}
.ph-act{font-size:17px;font-weight:500;color:var(--muted);min-height:1.5em}
.ph-bar{display:flex;gap:4px;margin-top:auto}.ph-bar i{flex:1;height:6px;background:var(--line2);transition:background .3s}
.ph-l3{padding:11px 12px;background:var(--text);color:var(--bg);font:600 11.5px var(--f-mono);letter-spacing:.06em;text-transform:uppercase}
.payload{margin:0;padding:18px;background:var(--panel);border:1px solid var(--line2);font:400 13px/1.55 var(--f-mono);overflow:auto;min-height:340px;white-space:pre-wrap;word-break:break-word}
.trail{margin-top:22px;border-top:1px solid var(--line2)}
.trail li{display:flex;align-items:center;gap:14px;padding:13px 2px;border-bottom:1px solid var(--line2);color:var(--dim);font-size:15.5px;transition:color .3s}
.trail .ic{width:18px;height:18px;border:1px solid var(--line2);padding:2px;color:transparent;transition:all .3s}
.trail li.on{color:var(--text)}.trail li.on .ic{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}

/* ---------- mobile app shell ---------- */
.bnav,.sheet,.sheet-bg{display:none}
@media (max-width:1100px){
 .stats{grid-template-columns:repeat(2,1fr)}.pgrid{grid-template-columns:repeat(2,1fr)}.pgrid>div:nth-child(2){border-inline-end:0}.pgrid>div:nth-child(-n+2){border-bottom:1px solid var(--line2)}
 .cells{grid-template-columns:repeat(2,1fr)}.cells li:nth-child(2){border-inline-end:0}.cells li:nth-child(-n+2){border-bottom:1px solid var(--line2)}
 .dnav a{padding:9px 8px}
}
@media (max-width:860px){
 :root{--hh:52px}
 .dnav,.dcta{display:none}.tools{margin-inline-start:auto}
 body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
 .gridlines i:nth-child(2),.gridlines i:nth-child(4){display:none}
 .hero h1{max-width:none}.hero-hint{display:none}
 .ro{grid-template-columns:1fr 1fr}.ro>div:nth-child(2){border-inline-end:0}.ro>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.ro>div{padding:12px var(--pad)}.ro .wide{grid-column:1/-1;border-top:1px solid var(--line)}.ro dd{font-size:13px}
 .story{height:400vh}
 .story-pin{grid-template-columns:1fr;grid-template-rows:minmax(0,46%) minmax(0,54%)}
 .story-scene{order:-1;border-bottom:1px solid var(--line)}.story-text{border:0;padding:18px var(--pad);justify-content:flex-start;overflow:hidden}
 .story-text .tag,.story-text h2{display:none}
 .steps li{padding:8px 0}.steps li b{font-size:19px}.steps li p{font-size:14.5px}
 .pop{width:min(210px,56%)}.pop .b{padding:9px 11px 11px;font-size:13.5px}.pop header{padding:5px 10px;font-size:9px}
 .pop-1{inset-inline-start:4%;top:10%}.pop-2{inset-inline-end:4%;top:14%}.pop-3{inset-inline-start:4%;bottom:26%}.pop-4{inset-inline-end:3%;bottom:5%;width:min(230px,62%)}.pop-4 .big{font-size:17px}.pop-4 .dist{font-size:24px}
 .scene-meta{display:none}
 .signal-grid,.sb-grid,.two,.signal-grid.solo>div{grid-template-columns:1fr}
 .signal-grid.solo .sh{margin-bottom:24px}
 .row{grid-template-columns:34px 1fr 40px;gap:14px}.row p{grid-column:2/3;grid-row:2}.row .go{grid-row:1/3;grid-column:3;width:40px;height:40px}.row h3{grid-column:2}
 .foot-grid{grid-template-columns:1fr 1fr}.foot-grid>div:first-child{grid-column:1/-1}
 .trio{grid-template-columns:1fr}.trio>div{border-inline-end:0;border-bottom:1px solid var(--line2);min-height:0}.trio>div:last-child{border-bottom:0}
 .bnav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;inset-inline:0;bottom:0;z-index:70;height:calc(64px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line2)}
 .bnav a,.bnav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--muted);font:500 9.5px var(--f-mono);letter-spacing:.07em;text-transform:uppercase;position:relative;-webkit-tap-highlight-color:transparent}
 .bnav a::before,.bnav button::before{content:"";position:absolute;top:-1px;inset-inline:22%;height:2px;background:var(--accent);transform:scaleX(0);transition:transform .3s var(--ease)}
 .bnav [aria-current]{color:var(--text)}.bnav [aria-current]::before{transform:scaleX(1)}
 .bnav .ic{width:22px;height:22px}
 .bnav a:nth-child(3){background:var(--accent);color:var(--accent-ink)}
 .bnav a:nth-child(3)::before{display:none}
 .sheet-bg{display:block;position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.6);animation:fade .25s}
 .sheet{display:block;position:fixed;inset-inline:0;bottom:0;z-index:110;max-height:86svh;overflow:auto;background:var(--panel);border-top:2px solid var(--accent);padding:10px var(--pad) calc(24px + env(safe-area-inset-bottom));animation:up .35s var(--ease)}
 .sheet[hidden],.sheet-bg[hidden]{display:none}
 .sheet-grip{width:44px;height:3px;background:var(--line2);margin:4px auto 14px}
 .sheet-list li a,.sheet-sub summary{display:flex;align-items:center;gap:16px;padding:16px 2px;border-bottom:1px solid var(--line2);font-weight:600;font-size:18px;cursor:pointer;list-style:none}
 .sheet-sub summary::-webkit-details-marker{display:none}
 .sheet-list li a span,.sheet-sub summary span{flex:1}
 .chev{color:var(--dim);transition:transform .25s}.sheet-sub[open] .chev{transform:rotate(90deg)}
 :root[dir=rtl] .sheet-list .chev{transform:scaleX(-1)}
 .sheet-sub ul a{display:block;padding:13px 2px 13px 36px;border-bottom:1px solid var(--line);color:var(--muted);font-size:16px}
 .sheet-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 2px;border-bottom:1px solid var(--line2)}
 .sheet-row .chips{margin:0;justify-content:flex-end}
 .sheet-row .chip{padding:8px 12px;border:1px solid var(--line2);font-size:13.5px}
 .sheet-row .chip[aria-current]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
 @keyframes up{from{transform:translateY(100%)}}@keyframes fade{from{opacity:0}}
}
@media (max-width:620px){
 .stats>div{padding:20px 14px}.cells,.pgrid{grid-template-columns:1fr}.cells li,.pgrid>div{border-inline-end:0!important;border-bottom:1px solid var(--line2);min-height:0}.cells li:last-child,.pgrid>div:last-child{border-bottom:0}
 .cells .num{margin-bottom:22px;padding-bottom:0}.pgrid .n{margin-bottom:28px}
 .btn{width:100%;justify-content:space-between}.actions{gap:10px}.hero .actions .btn{width:100%}
 .sb-bar{gap:14px}.seg span{padding:10px 11px;font-size:11px}
 .legal table{display:block;overflow-x:auto}
}
@media (prefers-reduced-motion:reduce){
 *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
 .ticker div{animation:none}
 html.js [data-r],.w>span{opacity:1;transform:none}
 .story{height:auto}.story-pin{position:static;height:auto;display:block}.story-scene{height:60vh}.pop{opacity:1;transform:none;position:absolute}
 .steps li{opacity:1}.steps li p{max-height:none;opacity:1;margin-top:8px}
}
@media print{.top,.bnav,.gridlines,body::after,#bar,#barcar{display:none}body{background:#fff;color:#000}}

.foot .share{margin-top:24px;padding-top:0;border-top:0}
.foot .share a,.foot .share button{border-color:var(--line2);color:var(--text)}
.foot .share a:hover,.foot .share button:hover{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
fieldset.lv{border:0;padding:0;min-width:0;margin-inline:0}
.d1{--d:1}.d2{--d:2}.d3{--d:3}.d4{--d:4}
.phead .mono{margin-top:22px}
.phead .mono{margin-top:22px}
.hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 58% 46% at 24% 46%,var(--bg) 35%,transparent 100%)}
.hero .btn-ghost{background:color-mix(in srgb,var(--bg) 75%,transparent)}
[dir=rtl] .hero::after{background:radial-gradient(ellipse 58% 46% at 76% 46%,var(--bg) 35%,transparent 100%)}
.bnav a,.bnav button{min-width:0;padding:0 1px}.bnav span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}
@media (max-width:860px){.hero .spacer{min-height:min(46svh,380px)}.hero{min-height:calc(100svh - var(--hh) - 64px)}}
@media (max-width:620px){.hero .tag::after{display:none}.hero .tag{line-height:1.5}}
[hidden]{display:none!important}
@media (max-width:860px){.bnav a,.bnav button{font-size:9px;letter-spacing:.02em}}

/* ---- About: core team + roadmap ---- */
.tmw{margin-top:clamp(28px,4vw,56px)}
.nxbar{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(20px,4vw,70px);align-items:end;padding:clamp(24px,3vw,44px) clamp(20px,3vw,44px);border:1px solid var(--line2);background:var(--bg)}
.nx-prod{display:flex;align-items:center;gap:clamp(12px,1.6vw,22px)}
.nx-prod .logo{height:clamp(34px,4.6vw,72px);width:auto;color:var(--accent);flex:none}
.nx-pn{font:800 clamp(34px,4.8vw,76px)/1 var(--f-sans);letter-spacing:-.02em;text-transform:uppercase;color:var(--text)}
.nx-by{display:flex;align-items:center;flex-wrap:wrap;gap:6px clamp(12px,1.4vw,20px);margin-top:clamp(18px,2vw,28px);padding-top:clamp(14px,1.6vw,20px);border-top:1px solid var(--line2)}
.nx-l{color:var(--muted);display:block}
.nx-word{margin:0;font:900 clamp(22px,2.6vw,40px)/1 var(--f-dot);letter-spacing:0;text-transform:uppercase;white-space:nowrap;color:var(--accent)}
.nx-link{display:inline-flex;align-items:center;gap:.22em;position:relative;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-decoration:none;white-space:nowrap}
.nx-link::after{content:"";position:absolute;inset-inline:0;bottom:-.14em;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s var(--ease)}
.nx-link .arr{width:.46em;height:.46em;min-width:11px;min-height:11px;flex:none;stroke-width:2;transform:rotate(-45deg);transition:transform .2s var(--ease)}
.nx-link:hover::after,.nx-link:focus-visible::after{transform:scaleX(1)}
.nx-link:hover .arr,.nx-link:focus-visible .arr{transform:rotate(-45deg) translate(2px,0)}
.nx-link:focus-visible{outline:2px solid var(--accent);outline-offset:6px}
@media (pointer:coarse){.nx-link{padding-block:max(0px,calc((44px - 1em)/2));margin-block:calc(-1*max(0px,calc((44px - 1em)/2)))}}
@media (prefers-reduced-motion:reduce){.nx-link::after,.nx-link .arr{transition:none}.nx-link:hover .arr,.nx-link:focus-visible .arr{transform:rotate(-45deg)}}
.nx-desc{margin:0 0 18px;color:var(--muted);font-size:15.5px;line-height:1.6;max-width:52ch}
.nx-disc{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.nx-disc li{padding:7px 11px;border:1px solid var(--line2);color:var(--dim);animation:nxchip 10s steps(1) infinite}
.nx-disc .k2{animation-delay:2s}.nx-disc .k3{animation-delay:4s}.nx-disc .k4{animation-delay:6s}.nx-disc .k5{animation-delay:8s}
@keyframes nxchip{0%{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}20%,100%{color:var(--dim);background:transparent;border-color:var(--line2)}}

.tm{display:flex;align-items:stretch;border:0;padding:0;min-width:0;margin:56px 0 0}
.tmi{position:relative;flex:1 1 0;min-width:0;border:1px solid var(--line2);margin-inline-end:-1px;background:var(--bg);transition:flex-grow .65s var(--ease),background .3s}
.tmi:has(input:checked){flex-grow:2.7;background:var(--panel)}
.tmi::before{content:"";position:absolute;top:-57px;height:57px;inset-inline-start:30px;width:1px;background:var(--line2);transform:scaleY(0);transform-origin:bottom;transition:transform .8s var(--ease),background .3s}
.tmw.in .tmi::before{transform:scaleY(1)}.tmw.in .tmi:nth-child(2)::before{transition-delay:.15s}.tmw.in .tmi:nth-child(3)::before{transition-delay:.3s}
.tmi:has(input:checked)::before{background:var(--accent);width:2px}
.tmi::after{content:"";position:absolute;top:-57px;inset-inline-start:28px;width:6px;height:6px;background:var(--accent);opacity:0}
.tmi:has(input:checked)::after{opacity:1;animation:tmdrop 2.2s var(--ease) infinite}
@keyframes tmdrop{from{transform:translateY(0);opacity:1}to{transform:translateY(57px);opacity:0}}
.tmi label{display:grid;gap:8px;padding:clamp(18px,2vw,28px) clamp(16px,2vw,30px) clamp(14px,1.6vw,22px);cursor:pointer;position:relative}
.tmi input{position:absolute;opacity:0;pointer-events:none}
.tmi label::before,.tmi label::after{content:"";position:absolute;inset-inline-end:clamp(16px,2vw,28px);top:clamp(22px,2.4vw,34px);width:14px;height:2px;background:var(--dim);transition:transform .4s var(--ease),background .3s}
.tmi label::after{transform:rotate(90deg)}
.tmi:hover label::before,.tmi:hover label::after{background:var(--accent)}
.tmi:has(input:checked) label::before,.tmi:has(input:checked) label::after{background:var(--accent)}
.tmi:has(input:checked) label::after{transform:rotate(0)}
.tmi .n{font:500 11px var(--f-mono);color:var(--dim);padding-inline-start:0;margin-top:6px;display:flex;align-items:center;gap:10px}
.tmi .t{font-weight:800;font-size:clamp(26px,3.2vw,56px);letter-spacing:-.02em;line-height:1;text-transform:uppercase;transition:color .3s}
.tmi .d{font:500 11.5px var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
:root[lang=ar] .tmi .d{letter-spacing:0}
.tmi:has(input:checked) .t,.tmi:has(input:checked) .n{color:var(--accent)}
.tmi:hover .t{color:var(--accent)}
.tmi label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:-2px}
.tmd{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s var(--ease)}
.tmd>.tmb{overflow:hidden;min-height:0;visibility:hidden;opacity:0;transition:visibility 0s .55s,opacity .35s}
.tmi:has(input:checked) .tmd{grid-template-rows:1fr}
.tmi:has(input:checked) .tmb{visibility:visible;opacity:1;transition:opacity .5s .2s}
.tmb dl{margin:0;padding:6px clamp(16px,2vw,30px) 28px;display:grid;gap:18px}
.tmb dt{color:var(--accent);margin-bottom:5px}
.tmb dd{margin:0;font-size:15.5px;line-height:1.55;color:var(--text)}
html:not(.js) .tmd{grid-template-rows:1fr}html:not(.js) .tmb{visibility:visible;opacity:1}

.rm-grid{margin-top:clamp(28px,4vw,52px)}
.rm-list{list-style:none;margin:0;padding:0;padding-inline-start:34px;position:relative}
.rm-list::before{content:"";position:absolute;inset-inline-start:5px;top:0;bottom:0;width:1px;background:var(--line2)}
.rm-list li .st{justify-self:start}
.rm-node{position:absolute;inset-inline-start:-34px;top:clamp(26px,3.4vw,40px);width:11px;height:11px;border:1px solid var(--dim);background:var(--bg);box-sizing:border-box;z-index:1}
.rm-live .rm-node{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 24%,transparent);animation:rmping 2.4s var(--ease) infinite}
.rm-dev .rm-node{border-color:var(--amber);background:linear-gradient(90deg,var(--amber) 50%,var(--bg) 50%)}
@keyframes rmping{0%,100%{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 26%,transparent)}50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--accent) 0%,transparent)}}
.rm-bar{position:absolute;inset-inline:0;bottom:-1px;height:2px;background:var(--line2)}
.rm-bar::after{content:"";position:absolute;inset:0;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform 1.5s var(--ease) .35s}
:root[lang=ar] .rm-bar::after{transform-origin:right}
.rm-live.in .rm-bar::after{transform:scaleX(1)}
.rm-dev .rm-bar::after{background:var(--amber)}.rm-dev.in .rm-bar::after{transform:scaleX(.5)}
.rm-plan .rm-bar{background:repeating-linear-gradient(90deg,var(--line2) 0 6px,transparent 6px 12px)}
.rm-list li{transition:background .3s var(--ease)}.rm-list li:hover{background:color-mix(in srgb,var(--panel) 70%,transparent)}
.rm-list li{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 190px minmax(0,1.5fr);gap:clamp(16px,3vw,48px);align-items:start;padding:clamp(22px,3vw,36px) 0;border-top:1px solid var(--line2);outline-offset:-2px}
.rm-list li:last-child{border-bottom:1px solid var(--line2)}
.rm-t .n{color:var(--dim);display:block;margin-bottom:10px}
.rm h3,.rm-list h3{font-size:clamp(22px,2.2vw,32px);letter-spacing:-.02em;line-height:1.08;margin-bottom:0}
:root[lang=ar] .rm-list h3{letter-spacing:0}
.rm-d{margin:0;max-width:56ch;color:var(--muted);font-size:16px;line-height:1.6}
.st{display:inline-flex;align-items:center;gap:9px;margin:0;padding:7px 12px;border:1px solid var(--line2);color:var(--dim);white-space:nowrap}
.st i{width:7px;height:7px;background:currentColor;flex:none}
.rm-live .st{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}
.rm-live .st i{animation:blink 1.6s steps(2) infinite}
.rm-dev .st{color:var(--amber);border-color:var(--amber)}
.rm-plan .st{color:var(--muted)}.rm-plan .st i{background:transparent;box-shadow:inset 0 0 0 1px currentColor}

/* footer: legal line + share hook + TENET link */
.legalline{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 28px}
.built{display:inline-flex;align-items:center;gap:6px}
.tenet{display:inline-flex;align-items:center;gap:6px;position:relative;color:var(--text);font:600 12px var(--f-mono);letter-spacing:.14em;padding:4px 2px;transition:color .25s}
.foot p a.tenet{color:var(--text)}
.tenet::after{content:"";position:absolute;inset-inline:0;bottom:0;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.tenet .arr{width:13px;height:13px;transform:rotate(-45deg);transition:transform .3s var(--ease)}
:root[dir=rtl] .tenet .arr{transform:rotate(-135deg)}
.tenet:hover,.tenet:focus-visible{color:var(--accent)}.foot p a.tenet:hover{color:var(--accent)}
.tenet:hover::after,.tenet:focus-visible::after{transform:scaleX(1)}
.tenet:hover .arr{transform:rotate(-45deg) translate(3px,0)}
:root[dir=rtl] .tenet:hover .arr{transform:rotate(-135deg) translate(3px,0)}
.share-hook{flex:0 0 100%;width:100%;margin:0 0 6px;color:var(--text);line-height:1.5;text-wrap:balance}
.foot .share{margin-top:24px;padding-top:0;border-top:0}

@media (max-width:860px){
 .nxbar{grid-template-columns:1fr;align-items:start}
 .tm{flex-direction:column;margin-top:0}
 .tmi{margin-inline-end:0;margin-bottom:-1px}
 .tmi::before,.tmi::after{display:none}
 .rm-list li{grid-template-columns:1fr;gap:14px}
 .rm-list li .st{justify-self:start}
.rm-node{position:absolute;inset-inline-start:-34px;top:clamp(26px,3.4vw,40px);width:11px;height:11px;border:1px solid var(--dim);background:var(--bg);box-sizing:border-box;z-index:1}
.rm-live .rm-node{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 24%,transparent);animation:rmping 2.4s var(--ease) infinite}
.rm-dev .rm-node{border-color:var(--amber);background:linear-gradient(90deg,var(--amber) 50%,var(--bg) 50%)}
@keyframes rmping{0%,100%{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 26%,transparent)}50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--accent) 0%,transparent)}}
.rm-bar{position:absolute;inset-inline:0;bottom:-1px;height:2px;background:var(--line2)}
.rm-bar::after{content:"";position:absolute;inset:0;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform 1.5s var(--ease) .35s}
:root[lang=ar] .rm-bar::after{transform-origin:right}
.rm-live.in .rm-bar::after{transform:scaleX(1)}
.rm-dev .rm-bar::after{background:var(--amber)}.rm-dev.in .rm-bar::after{transform:scaleX(.5)}
.rm-plan .rm-bar{background:repeating-linear-gradient(90deg,var(--line2) 0 6px,transparent 6px 12px)}
.rm-list li{transition:background .3s var(--ease)}.rm-list li:hover{background:color-mix(in srgb,var(--panel) 70%,transparent)}
}
@media (prefers-reduced-motion:reduce){.nx-disc li{animation:none}.tmi:has(input:checked)::after{animation:none}}

/* ---- Who it's for: four audiences, each with a small point-and-hairline graphic ---- */
.wg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--line2);background:var(--bg)}
.wc{position:relative;display:flex;flex-direction:column;min-width:0;border-inline-end:1px solid var(--line2);border-bottom:1px solid var(--line2);transition:background .35s var(--ease)}
.wc:nth-child(2n){border-inline-end:0}.wc:nth-child(n+3){border-bottom:0}
.wc::before{content:"";position:absolute;inset-inline:0;top:0;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform 1.1s var(--ease) .15s}
:root[lang=ar] .wc::before{transform-origin:right}
.wc.in::before{transform:scaleX(1)}.wc:nth-child(2)::before{transition-delay:.3s}.wc:nth-child(3)::before{transition-delay:.45s}.wc:nth-child(4)::before{transition-delay:.6s}
.wc::after{content:"";position:absolute;inset-inline-end:16px;bottom:16px;width:14px;height:14px;border-inline-end:1px solid var(--accent);border-bottom:1px solid var(--accent);opacity:0;transition:opacity .3s}
.wc:hover{background:var(--panel)}.wc:hover::after{opacity:1}
.wb{padding:clamp(22px,2.4vw,34px);display:flex;flex-direction:column;gap:8px;flex:1}
.wh{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}
.wi{width:52px;height:52px;border:1px solid var(--line2);display:grid;place-items:center;color:var(--accent);transition:background .3s,color .3s,border-color .3s}
.gl{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:square;stroke-linejoin:miter}
.gl path{stroke-dasharray:1;stroke-dashoffset:1}
.wc.in .gl path{stroke-dashoffset:0;transition:stroke-dashoffset 1.3s var(--ease) .35s}
.wc:hover .wi{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.wn{font:700 clamp(46px,4.6vw,66px)/.85 var(--f-mono);letter-spacing:-.05em;color:transparent;-webkit-text-stroke:1px var(--line2);transition:-webkit-text-stroke-color .35s}
.wc:hover .wn{-webkit-text-stroke-color:var(--accent)}
.wb h3{font-weight:700;font-size:clamp(20px,1.75vw,26px);letter-spacing:-.02em;line-height:1.1;margin:0;transition:color .25s}
:root[lang=ar] .wb h3,:root[lang=ar] .wn{letter-spacing:0}
.wc:hover .wb h3{color:var(--accent)}
.wb .ws{color:var(--muted);margin:0 0 8px;line-height:1.5}
.wb dl{margin:6px 0 0;padding-top:18px;border-top:1px solid var(--line2);display:grid;grid-template-columns:1fr 1fr;gap:16px 28px}
.wb dt{font-weight:700;font-size:14px;margin-bottom:4px;display:flex;align-items:center;gap:8px;line-height:1.3}
.wb dt::before{content:"";width:5px;height:5px;background:var(--accent);flex:none;transition:transform .3s var(--ease)}
.wc:hover dt::before{transform:rotate(45deg) scale(1.3)}
.wb dd{margin:0;color:var(--muted);font-size:13.5px;line-height:1.5}
@media (max-width:1100px){.wb dl{grid-template-columns:1fr}}
@media (max-width:860px){.wg{grid-template-columns:1fr}.wc,.wc:nth-child(2n){border-inline-end:0}.wc:nth-child(n+3){border-bottom:1px solid var(--line2)}.wc:last-child{border-bottom:0}}

/* what's next: three concept scenes */
.nx-head{display:grid;grid-template-columns:auto 1fr auto;gap:clamp(16px,3vw,48px);align-items:start;margin-bottom:clamp(24px,3vw,44px)}
.nx-idx{font:900 clamp(56px,9vw,150px)/.8 var(--f-dot);color:var(--accent);letter-spacing:-.02em}
.nx-head h2{font-weight:700;font-size:clamp(28px,4.4vw,72px);line-height:.98;letter-spacing:-.028em;text-wrap:balance;overflow-wrap:anywhere}
.nx-head p{margin-top:16px;max-width:52ch;color:var(--muted);font-size:clamp(16px,1.4vw,20px)}
.nx-chip{font:500 11px var(--f-mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line2);padding:6px 12px;color:var(--amber);white-space:nowrap}
.nx-scene{position:relative;border:1px solid var(--line2);background:var(--bg);height:clamp(380px,44vw,560px);overflow:hidden}
.nx-scene canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
:root[dir=rtl] .nx-scene canvas{direction:ltr}
.nx-hear{position:absolute;inset-inline-start:clamp(12px,2vw,24px);bottom:clamp(12px,2vw,24px)}
.nx-facts{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line2);border-top:0}
.nx-facts li{padding:16px clamp(14px,2vw,28px);font:500 11.5px var(--f-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);border-inline-end:1px solid var(--line2);display:flex;gap:10px;align-items:center}
.nx-facts li::before{content:"";width:6px;height:6px;background:var(--accent);flex:none}
.nx-facts li:last-child{border-inline-end:0}
.nx-note{max-width:70ch;margin-bottom:28px}
@media (max-width:760px){.nx-head{grid-template-columns:auto 1fr}.nx-chip{grid-column:1/-1;justify-self:start}.nx-facts{grid-template-columns:1fr}.nx-facts li{border-inline-end:0;border-bottom:1px solid var(--line2)}.nx-facts li:last-child{border-bottom:0}.nx-scene{height:clamp(380px,100vw,440px)}}
@media print{.nx-scene{display:none}}

/* what's next: audio toggles */
.nx-bar{display:flex;flex-wrap:wrap;gap:10px;padding:12px clamp(12px,2vw,24px);border:1px solid var(--line2);border-top:0}
.nx-bar:empty{display:none}
.nx-tog{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:0 16px;border:1px solid var(--line2);background:transparent;color:var(--muted);font:500 11.5px var(--f-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:border-color .2s,color .2s}
.nx-tog[hidden]{display:none}
.nx-tog:hover{border-color:var(--muted);color:var(--text)}
.nx-tog:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.nx-tog[aria-checked=true]{border-color:var(--accent);color:var(--text)}
.nx-vol{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:square;stroke-linejoin:miter}
.nx-vol .w{opacity:0}.nx-vol .x{opacity:1}
.nx-tog[aria-checked=true] .nx-vol .w{opacity:1}.nx-tog[aria-checked=true] .nx-vol .x{opacity:0}
.nx-tog[aria-checked=true] .nx-vol{stroke:var(--accent)}
.nx-sw{display:flex;align-items:center;justify-content:flex-start;width:36px;height:18px;padding:2px;border:1px solid currentColor;flex:none}
.nx-sw i{display:block;width:12px;height:12px;background:currentColor;transition:transform .2s}
.nx-tog[aria-checked=true] .nx-sw{border-color:var(--accent)}
.nx-tog[aria-checked=true] .nx-sw i{background:var(--accent);transform:translateX(18px)}
:root[dir=rtl] .nx-tog[aria-checked=true] .nx-sw i{transform:translateX(-18px)}
.nx-st{min-width:3.2em;color:var(--muted)}
.nx-tog[aria-checked=true] .nx-st{color:var(--accent)}
@media (max-width:760px){.nx-bar{flex-direction:column}.nx-tog{width:100%;justify-content:flex-start}.nx-sw{margin-inline-start:auto}.nx-st{min-width:0}}
@media (prefers-reduced-motion:reduce){.nx-sw i,.nx-tog{transition:none}}
.nx-bar[hidden]{display:none}
