@import "https://fonts.googleapis.com/css2?family=Archivo:wdth,wght@75..100,400..900&family=Inter+Tight:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap";:root{--font-display:"Archivo", ui-sans-serif, system-ui, "Segoe UI", sans-serif;--font-sans:"Inter Tight", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", "Menlo", monospace;--void:#08070a;--night:#0c0a0f;--night-2:#121016;--night-3:#1a1720;--night-4:#241f2c;--line:#ffffff12;--line-strong:#ffffff21;--fg:#f4efe9;--fg-2:#ada49c;--fg-3:#8a807a;--ember:#ff4a17;--ember-2:#ff6438;--ember-soft:#ff7a52;--on-ember:#0c0a0f;--ember-wash:#ff4a1717;--ember-line:#ff4a1747;--violet:#9b7bff;--violet-glow:#7c4dff38;--danger:#ff6b66;--win:#47d19a;--glow-ember:0 0 60px -12px #ff4a1773;--glow-lift:0 24px 70px -30px #000000e6;--r-sm:8px;--r-md:14px;--r-lg:22px;--r-xl:32px;--r-pill:999px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--s-10:128px;--s-11:176px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-fast:.16s;--dur-base:.26s;--dur-slow:.5s;--t-scene:clamp(38px, 5.2vw, 80px);--t-h2:clamp(32px, 4.2vw, 62px);--t-h3:clamp(22px, 2.4vw, 32px);--t-lead:clamp(16.5px, 1.25vw, 19px);--t-body:16px;--t-sm:14.5px;--t-rail:10.5px;--tr-tight:-.035em;--tr-rail:.22em}.t-scene,.t-h2,.t-h3{font-family:var(--font-display);color:var(--fg);text-wrap:balance;margin:0}.t-scene{font-size:var(--t-scene);font-variation-settings:"wdth" 96, "wght" 760;letter-spacing:var(--tr-tight);line-height:.96}.t-h2{font-size:var(--t-h2);font-variation-settings:"wdth" 97, "wght" 720;letter-spacing:var(--tr-tight);line-height:1.02}.t-h3{font-size:var(--t-h3);font-variation-settings:"wdth" 98, "wght" 660;letter-spacing:-.025em;line-height:1.14}.t-ghost{color:#0000;-webkit-text-stroke:1.2px var(--fg-3);paint-order:stroke fill}@supports not (-webkit-text-stroke:1px red){.t-ghost{color:var(--fg-3)}}.t-lead{font-family:var(--font-sans);font-size:var(--t-lead);color:var(--fg-2);text-wrap:pretty;margin:0;line-height:1.6}.t-rail{font-family:var(--font-mono);font-size:var(--t-rail);letter-spacing:var(--tr-rail);text-transform:uppercase;color:var(--fg-3);font-weight:500}.t-fig{font-family:var(--font-display);font-variation-settings:"wdth" 92, "wght" 700;font-variant-numeric:tabular-nums;letter-spacing:-.04em;color:var(--fg);line-height:.9}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}html,body{margin:0;padding:0}body{background:var(--night);color:var(--fg);font-family:var(--font-sans);font-size:var(--t-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.55;overflow-x:hidden}a{color:inherit;text-decoration:none}::selection{background:var(--ember);color:var(--on-ember)}.chapter{min-height:100vh;padding:var(--s-11) 0;isolation:isolate;flex-direction:column;justify-content:center;display:flex;position:relative}.chapter.alt{background:var(--night-2)}.chapter.tall{min-height:auto}.wrap{width:100%;max-width:1240px;margin:0 auto;padding:0 clamp(20px,5vw,64px)}.wrap-wide{max-width:1560px}.ch-foot{border-top:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.08em;color:var(--fg-3);grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin-top:clamp(38px,6vh,76px);padding-top:20px;font-size:11px;display:grid}.ch-foot .b{text-align:center;color:var(--fg-2)}.ch-foot .c{color:var(--ember-2);justify-self:end}.thesis{align-items:center;min-height:min(74vh,660px);display:flex;position:relative}.thesis-media{top:0;bottom:0;right:calc(-1 * (max(0px, (100vw - var(--sbw,0px) - 1240px) / 2) + clamp(20px, 5vw, 64px)));z-index:0;-webkit-mask-composite:source-in;width:min(74%,1040px);position:absolute;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 52%),linear-gradient(#0000 0%,#000 15% 85%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 52%),linear-gradient(#0000 0%,#000 15% 85%,#0000 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.thesis-media img{object-fit:cover;object-position:62% center;mix-blend-mode:screen;width:100%;height:100%}.thesis-copy{z-index:2;width:min(640px,100%);position:relative}.thesis-copy .t-h2{font-size:clamp(32px,4.8vw,70px)}.thesis-note{z-index:2;max-width:40ch;color:var(--fg-2);margin:0;font-size:15px;line-height:1.62;position:absolute;top:0;right:0}.thesis-note b{color:var(--fg);font-weight:600}@media (width<=1024px){.thesis{min-height:0;display:block}.thesis-media{border-radius:var(--r-lg);width:auto;margin-top:32px;position:relative;right:auto;overflow:hidden;-webkit-mask-image:none;mask-image:none}.thesis-media img{object-position:center;mix-blend-mode:normal}.thesis-note{max-width:none;margin-top:22px;position:relative;top:auto;right:auto}}.ch-head{max-width:860px;margin-bottom:clamp(40px,6vw,88px)}.ch-head .t-rail{margin-bottom:22px;display:block}.ch-head .t-lead{max-width:620px;margin-top:24px}.atmos{pointer-events:none;z-index:-1;position:absolute;inset:0;overflow:hidden}.atmos .orb{filter:blur(90px);opacity:.55;border-radius:50%;position:absolute}.atmos .orb.ember{background:radial-gradient(circle,#ff4a178c,#0000 68%)}.atmos .orb.violet{background:radial-gradient(circle,#7c4dff6b,#0000 68%)}.stars{pointer-events:none;z-index:-1;position:absolute;inset:0;overflow:hidden}.stars i{background:var(--fg);width:2px;height:2px;animation:twinkle 4s var(--ease-in-out) infinite;border-radius:50%;display:block;position:absolute}.stars i.lit{box-shadow:0 0 6px 1px}@keyframes twinkle{0%,to{opacity:var(--o,.5)}50%{opacity:calc(var(--o,.5) * .25)}}@media (prefers-reduced-motion:reduce){.stars i{animation:none}}.contours{pointer-events:none;z-index:-1;height:46vh;position:absolute;bottom:0;left:0;right:0}.contours svg{width:100%;height:100%;display:block}.contours path{fill:none;stroke:var(--line-strong);stroke-width:1px}.rail{z-index:50;pointer-events:none;flex-direction:column;align-items:center;gap:18px;display:flex;position:fixed;top:50%;right:22px;translate:0 -50%}.rail .tick{background:var(--line-strong);width:1px;height:22px;transition:background var(--dur-base) var(--ease-out), height var(--dur-base) var(--ease-out)}.rail .tick.on{background:var(--ember);height:38px}.rail .now{writing-mode:vertical-rl;font-family:var(--font-mono);letter-spacing:var(--tr-rail);text-transform:uppercase;color:var(--fg-3);white-space:nowrap;max-height:220px;font-size:10px;overflow:hidden;rotate:180deg}@media (width<=1280px){.rail{display:none}}.btn{font-family:var(--font-sans);border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;color:var(--fg);transition:background var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:10px;padding:16px 26px;font-size:15px;font-weight:500;line-height:1;display:inline-flex}.btn .arr{transition:transform var(--dur-base) var(--ease-out);display:inline-flex}.btn:hover .arr{transform:translate(4px)}.btn-primary{background:var(--ember);color:var(--on-ember);font-weight:600}.btn-primary:hover{background:var(--ember-soft);box-shadow:var(--glow-ember);transform:translateY(-1px)}.btn-secondary{border-color:var(--line-strong);color:var(--fg)}.btn-secondary:hover{border-color:var(--fg-3);background:#ffffff0a}.btn-ghost{color:var(--fg-2);padding:12px 16px}.btn-ghost:hover{color:var(--fg);background:#ffffff0d}.btn-lg{padding:19px 32px;font-size:16px}.btn:focus-visible{outline:2px solid var(--ember);outline-offset:3px}.chip{font-family:var(--font-mono);letter-spacing:.04em;color:var(--fg-3);border:1px solid var(--line);border-radius:var(--r-pill);white-space:nowrap;padding:6px 13px;font-size:11.5px}.nav{z-index:60;pointer-events:none;justify-content:center;padding:0 clamp(16px,4vw,40px);display:flex;position:fixed;top:18px;left:0;right:0}.nav-bar{pointer-events:auto;border-radius:var(--r-pill);width:100%;max-width:1180px;height:62px;transition:background var(--dur-slow) var(--ease-out), border-color var(--dur-slow) var(--ease-out), backdrop-filter var(--dur-slow) var(--ease-out);border:1px solid #0000;justify-content:space-between;align-items:center;gap:24px;padding:0 10px 0 20px;display:flex}.nav.stuck .nav-bar{border-color:var(--line);-webkit-backdrop-filter:blur(20px)saturate(1.4);backdrop-filter:blur(20px)saturate(1.4);background:#0c0a0fb8}.nav-logo{align-items:center;gap:10px;display:flex}.nav-logo img{width:28px;height:28px;display:block}.nav-logo .word{font-family:var(--font-display);font-variation-settings:"wdth" 96, "wght" 700;letter-spacing:-.03em;font-size:18px}.nav-logo .word .dev{color:var(--ember-2)}.nav-links{align-items:center;gap:4px;display:flex}.nav-link{color:var(--fg-3);border-radius:var(--r-pill);transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);padding:8px 14px;font-size:14px}.nav-link:hover{color:var(--fg)}.nav-link.active{color:var(--fg);background:#ffffff0f}.nav-cta{align-items:center;gap:10px;display:flex}.nav-cta .btn{padding:12px 20px;font-size:14px}.lang{font-family:var(--font-mono);color:var(--fg-3);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:var(--r-pill);gap:4px;padding:8px 10px;font-size:11.5px;display:flex}.lang:hover{color:var(--fg-2);background:#ffffff0d}.lang .on{color:var(--ember-2)}.lang:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.scene{background:radial-gradient(78% 58% at 76% 34%, #7c4dff33, transparent 64%), radial-gradient(72% 55% at 14% 92%, #ff4a1729, transparent 64%), var(--void);flex-direction:column;justify-content:center;min-height:100svh;padding:clamp(112px,15vh,168px) 0 clamp(40px,6vh,72px);display:flex;position:relative;overflow:hidden}.scene-split{grid-template-columns:.94fr 1.06fr;align-items:center;gap:clamp(30px,4.5vw,72px);display:grid}.scene-copy{min-width:0}.scene h1{margin:0}.scene .t-lead{max-width:46ch;margin-top:clamp(20px,2.6vh,30px)}.scene-actions{flex-wrap:wrap;gap:12px;margin-top:clamp(24px,3.4vh,36px);display:flex}.scene-figs{flex-wrap:wrap;gap:clamp(20px,2.8vw,44px);margin-top:clamp(28px,4vh,48px);display:flex}.scene-figs .fig .n{font-family:var(--font-display);font-variation-settings:"wdth" 92, "wght" 700;letter-spacing:-.03em;color:var(--fg);font-size:26px;display:block}.scene-figs .fig .n u{color:var(--ember-2);text-decoration:none}.scene-figs .fig .l{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--fg-3);margin-top:7px;font-size:10px;display:block}.eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--fg-2);align-items:center;gap:14px;margin-bottom:clamp(18px,2.6vh,28px);font-size:11px;font-weight:500;display:inline-flex}.eyebrow:before{content:"";background:linear-gradient(90deg, transparent, var(--ember));flex:none;width:clamp(28px,4vw,52px);height:1px}.scene-visual{min-width:0;position:relative}.visual{border-radius:var(--r-lg);border:1px solid var(--line-strong);background:var(--night-2);box-shadow:var(--glow-lift), 0 0 100px -34px #7c4dff80;position:relative;overflow:hidden}.visual img,.visual video{object-fit:cover;width:100%;height:100%;display:block}.visual:after{content:"";pointer-events:none;background:linear-gradient(#08070a47,#0000 32%,#08070a6b);position:absolute;inset:0}.visual-holder{background:radial-gradient(80% 70% at 50% 96%, #ff4a1733, transparent 62%), var(--night-2);place-items:center;display:grid;position:absolute;inset:0}.visual-holder .ring{border:1px solid var(--line);animation:pulse-ring 7s var(--ease-in-out) infinite;border-radius:50%;position:absolute}.visual-holder .floor{background:linear-gradient(90deg, transparent, var(--ember-line), transparent);height:1px;position:absolute;bottom:26%;left:6%;right:6%}.visual-holder .duo-scene{z-index:1;position:relative;translate:0 12%}.note-card{z-index:3;-webkit-backdrop-filter:blur(16px)saturate(1.3);backdrop-filter:blur(16px)saturate(1.3);border:1px solid var(--line-strong);border-radius:var(--r-md);max-width:250px;box-shadow:var(--glow-lift);animation:bob 7s var(--ease-in-out) infinite;background:#121016db;padding:13px 16px;position:absolute}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media (prefers-reduced-motion:reduce){.note-card{animation:none}}.note-card .k{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ember-2);align-items:center;gap:7px;margin-bottom:8px;font-size:9.5px;display:inline-flex}.note-card .k:before{content:"";background:var(--ember);width:5px;height:5px;box-shadow:0 0 0 3px var(--ember-wash);border-radius:50%}.note-card .h{color:var(--fg);font-size:14px;font-weight:600;display:block}.note-card .p{font-family:var(--font-mono);color:var(--fg-3);margin-top:4px;font-size:11px;display:block}.note-a{animation-delay:0s;top:12%;left:-22px}.note-b{animation-delay:2.2s;bottom:10%;right:-18px}.edge-rail{z-index:2;writing-mode:vertical-rl;font-family:var(--font-mono);letter-spacing:.24em;text-transform:uppercase;color:var(--fg-3);opacity:.8;pointer-events:none;align-items:center;gap:18px;font-size:10px;display:flex;position:absolute;top:50%;left:20px;translate:0 -50%;rotate:180deg}.edge-rail:after{content:"";background:linear-gradient(var(--fg-3), transparent);width:1px;height:72px}@media (width<=1240px){.edge-rail{display:none}}.router{text-align:center}.router .ch-head{text-align:center;margin-left:auto;margin-right:auto}.router .ch-head .t-lead{margin-left:auto;margin-right:auto}.router-box{border:1px solid var(--line-strong);border-radius:var(--r-xl);max-width:780px;box-shadow:var(--glow-lift);transition:border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out);background:linear-gradient(#ffffff0b,#ffffff04);margin:0 auto;padding:clamp(22px,3vw,34px)}.router-box:focus-within{border-color:var(--ember-line);box-shadow:var(--glow-lift), var(--glow-ember)}.router-field{align-items:center;gap:12px;display:flex}.router-input{min-width:0;font-family:var(--font-sans);color:var(--fg);background:0 0;border:0;outline:none;flex:1;padding:12px 4px;font-size:clamp(16px,1.6vw,20px)}.router-input::placeholder{color:var(--fg-3)}.router-send{flex:none}.router-chips{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:center;gap:9px;margin-top:22px;padding-top:22px;display:flex}.router-chip{font-family:var(--font-sans);color:var(--fg-2);border:1px solid var(--line);border-radius:var(--r-pill);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);background:#ffffff0a;padding:9px 16px;font-size:14px}.router-chip:hover{color:var(--fg);border-color:var(--line-strong);background:#ffffff12}.router-chip.sel{background:var(--ember);border-color:var(--ember);color:var(--on-ember);font-weight:600}.router-chip:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.router-note{font-family:var(--font-mono);color:var(--fg-3);margin-top:26px;font-size:11.5px}.router-sectors{flex-wrap:wrap;justify-content:center;gap:8px 26px;max-width:900px;margin-top:54px;margin-left:auto;margin-right:auto;display:flex}.router-sectors span{color:var(--fg-3);font-size:13.5px}.caps{min-height:auto;padding-top:var(--s-11);padding-bottom:var(--s-11)}.caps-layout{grid-template-columns:.95fr 1.05fr;align-items:start;gap:clamp(32px,6vw,90px);display:grid}.caps-pin{position:sticky;top:22vh}.caps-stage{aspect-ratio:1;border-radius:var(--r-xl);background:radial-gradient(90% 80% at 50% 100%, #ff4a1729, transparent 60%), var(--night-3);border:1px solid var(--line);place-items:center;width:100%;max-width:460px;display:grid;position:relative;overflow:hidden}.caps-glyph{opacity:0;transition:opacity var(--dur-slow) var(--ease-out), scale var(--dur-slow) var(--ease-out);color:var(--ember-2);place-items:center;display:grid;position:absolute;inset:0;scale:.94}.caps-glyph.on{opacity:1;scale:1}.caps-stage .ring{border:1px solid var(--line);animation:pulse-ring 6s var(--ease-in-out) infinite;border-radius:50%;position:absolute}@keyframes pulse-ring{0%,to{opacity:.5;scale:1}50%{opacity:.15;scale:1.06}}@media (prefers-reduced-motion:reduce){.caps-stage .ring{animation:none}}.caps-list{flex-direction:column;display:flex}.cap-item{border-top:1px solid var(--line);opacity:.4;transition:opacity var(--dur-slow) var(--ease-out);padding:clamp(36px,6vh,72px) 0}.cap-item:first-child{border-top:0}.cap-item.on{opacity:1}.cap-item .n{font-family:var(--font-mono);letter-spacing:.18em;color:var(--ember-2);margin-bottom:16px;font-size:11px;display:block}.cap-item h3{margin-bottom:14px}.cap-item p{color:var(--fg-2);max-width:46ch;margin:0 0 18px;font-size:15.5px;line-height:1.62}.cap-item .tags{flex-wrap:wrap;gap:8px;display:flex}.case{padding:clamp(64px,9vh,104px) 0;position:relative;overflow:hidden}.case+.case{border-top:1px solid var(--line)}.case-bg{z-index:-1;opacity:.09;filter:saturate(.5);background-position:top;background-size:cover;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 30%,#0000);mask-image:linear-gradient(#0000,#000 30%,#0000)}.case-grid{grid-template-columns:.88fr 1.12fr;align-items:center;gap:clamp(26px,4vw,62px);display:grid}.case.flip .case-grid{grid-template-columns:1.12fr .88fr}.case.flip .case-media{order:-1}.case-meta{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:18px;display:flex}.case-meta .no{font-family:var(--font-mono);color:var(--ember-2);letter-spacing:.16em;font-size:12px}.case-meta .tag{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);font-size:10.5px}.case-title{font-family:var(--font-display);font-variation-settings:"wdth" 95, "wght" 760;letter-spacing:-.035em;color:var(--fg);margin:0;font-size:clamp(32px,4.2vw,58px);line-height:.98}.case-body p{color:var(--fg-2);max-width:48ch;margin:16px 0 0;font-size:15px;line-height:1.62}.case-deltas{flex-direction:column;gap:10px;margin-top:22px;display:flex}.case-delta{align-items:baseline;gap:10px;font-size:13.5px;line-height:1.45;display:flex}.case-delta .was{color:var(--fg-3);text-decoration:line-through;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong)}.case-delta .to{color:var(--ember-2);flex:none}.case-delta .now{color:var(--fg)}.case-foot{flex-wrap:wrap;align-items:center;gap:18px;margin-top:24px;display:flex}.case-stack{flex-wrap:wrap;gap:7px;display:flex}.case-link{color:var(--ember-2);transition:gap var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);align-items:center;gap:8px;font-size:14px;display:inline-flex}.case-link:hover{color:var(--ember-soft);gap:12px}.case-media{min-width:0;position:relative}.case-frame{border-radius:var(--r-md);border:1px solid var(--line-strong);background:var(--night-2);box-shadow:var(--glow-lift);transition:transform var(--dur-slow) var(--ease-out), border-color var(--dur-slow) var(--ease-out);display:block;overflow:hidden}a.case-frame:hover{border-color:var(--ember-line);transform:translateY(-4px)}.case-bar{border-bottom:1px solid var(--line);background:#0000004d;align-items:center;gap:6px;padding:10px 13px;display:flex}.case-bar .dot{background:var(--night-4);border-radius:50%;width:8px;height:8px}.case-bar .url{min-width:0;font-family:var(--font-mono);color:var(--fg-3);white-space:nowrap;text-overflow:ellipsis;flex:1;margin-left:8px;font-size:11px;overflow:hidden}a.case-frame:hover .case-bar .url{color:var(--ember-2)}.case-shot{background:var(--night-3);font-size:0}.case-shot img{width:100%;height:auto;display:block}.case-shot video{aspect-ratio:16/9;object-fit:cover;width:100%;height:auto;display:block}.method-list{max-width:880px;margin-left:auto;position:relative}.method-spine{background:var(--line);width:1px;position:absolute;top:8px;bottom:8px;left:0}.method-spine i{background:var(--ember);width:100%;height:var(--p,0%);transition:height .12s linear;display:block}.method-step{padding:0 0 clamp(48px,8vh,96px) clamp(32px,5vw,64px);position:relative}.method-step:last-child{padding-bottom:0}.method-step:before{content:"";background:var(--night);border:1px solid var(--line-strong);width:9px;height:9px;transition:background var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out);border-radius:50%;position:absolute;top:9px;left:-4px}.method-step.on:before{background:var(--ember);border-color:var(--ember);box-shadow:0 0 0 5px var(--ember-wash)}.method-step .n{font-family:var(--font-mono);letter-spacing:.18em;color:var(--fg-3);margin-bottom:14px;font-size:11px;display:block}.method-step.on .n{color:var(--ember-2)}.method-step p{color:var(--fg-2);max-width:52ch;margin:12px 0 0;font-size:15.5px;line-height:1.62}.faq-layout{grid-template-columns:.75fr 1.25fr;align-items:start;gap:clamp(32px,6vw,88px);display:grid}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-q{cursor:pointer;text-align:left;width:100%;font-family:var(--font-display);font-variation-settings:"wdth" 98, "wght" 600;letter-spacing:-.02em;color:var(--fg);transition:color var(--dur-fast) var(--ease-out);background:0 0;border:0;justify-content:space-between;align-items:center;gap:24px;padding:26px 0;font-size:18px;display:flex}.faq-q:hover{color:var(--ember-2)}.faq-q:focus-visible{outline:2px solid var(--ember);outline-offset:2px;border-radius:var(--r-sm)}.faq-icon{width:24px;height:24px;transition:rotate var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out);flex:none;position:relative}.faq-icon:before,.faq-icon:after{content:"";background:currentColor;position:absolute;top:50%;left:50%;translate:-50% -50%}.faq-icon:before{width:13px;height:1.5px}.faq-icon:after{width:1.5px;height:13px;transition:opacity var(--dur-base) var(--ease-out)}.faq-item.open .faq-icon{color:var(--ember-2);rotate:90deg}.faq-item.open .faq-icon:after{opacity:0}.faq-a{max-height:0;transition:max-height var(--dur-slow) var(--ease-out);overflow:hidden}.faq-item.open .faq-a{max-height:360px}.faq-a p{color:var(--fg-2);max-width:62ch;margin:0;padding:0 0 28px;font-size:15.5px;line-height:1.68}.close{text-align:center;background:radial-gradient(100% 70% at 50% 115%, #ff4a1738, transparent 62%), var(--night);overflow:hidden}.close .t-scene{max-width:18ch;margin:0 auto}.close .t-lead{max-width:46ch;margin:28px auto 0}.close-actions{flex-direction:column;align-items:center;gap:20px;margin-top:44px;display:flex}.close-alt{font-family:var(--font-mono);color:var(--fg-3);font-size:12.5px}.close-alt a{color:var(--ember-2);border-bottom:1px solid var(--ember-line);padding-bottom:1px}.close-alt a:hover{border-bottom-color:var(--ember)}.footer{border-top:1px solid var(--line);background:var(--void);padding:54px 0 40px}.footer-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:48px;display:flex}.footer-brand{max-width:300px}.footer-logo{align-items:center;gap:10px;display:flex}.footer-logo img{width:26px;height:26px}.footer-logo .word{font-family:var(--font-display);font-variation-settings:"wdth" 96, "wght" 700;letter-spacing:-.03em;font-size:17px}.footer-logo .word .dev{color:var(--ember-2)}.footer-brand p{color:var(--fg-3);margin:14px 0 0;font-size:14px;line-height:1.6}.footer-cols{flex-wrap:wrap;gap:clamp(32px,6vw,72px);display:flex}.footer-col .h{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--fg-3);margin-bottom:16px;font-size:10px;display:block}.footer-col a{color:var(--fg-2);transition:color var(--dur-fast) var(--ease-out);margin-bottom:11px;font-size:14px;display:block}.footer-col a:hover{color:var(--ember-2)}.footer-col .row{align-items:center;gap:8px;display:inline-flex}.footer-bottom{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin-top:44px;padding-top:22px;display:flex}.footer-note,.footer-rights{font-family:var(--font-mono);color:var(--fg-3);font-size:11px}.modal-overlay{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fade .22s var(--ease-out);background:#08070ad1;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:linear-gradient(180deg, var(--night-3), var(--night-2));border:1px solid var(--line-strong);border-radius:var(--r-xl);width:100%;max-width:560px;max-height:92vh;box-shadow:var(--glow-lift);animation:rise .3s var(--ease-out);padding:clamp(24px,4vw,40px);position:relative;overflow-y:auto}@keyframes rise{0%{opacity:0;transform:translateY(16px)scale(.985)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.modal-overlay,.modal{animation:none}}.modal h3{font-family:var(--font-display);font-variation-settings:"wdth" 97, "wght" 700;letter-spacing:-.03em;margin:14px 0 10px;font-size:clamp(24px,3vw,32px);line-height:1.04}.modal .sub{color:var(--fg-2);margin:0 0 26px;font-size:15px;line-height:1.6}.kind-chips{flex-wrap:wrap;gap:8px;margin-bottom:22px;display:flex}.kind-chip{font-family:var(--font-sans);color:var(--fg-2);border:1px solid var(--line);border-radius:var(--r-pill);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);background:#ffffff0a;padding:9px 15px;font-size:13.5px}.kind-chip:hover{color:var(--fg);border-color:var(--line-strong)}.kind-chip.sel{background:var(--ember);border-color:var(--ember);color:var(--on-ember);font-weight:600}.field-group{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.field-row{gap:12px;display:flex}.field-row .field-group{flex:1;min-width:0}.field-group label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--fg-3);align-items:center;gap:6px;font-size:10px;display:flex}.field-group label .req{color:var(--ember-2)}.field{border:1px solid var(--line);border-radius:var(--r-md);font-family:var(--font-sans);color:var(--fg);width:100%;transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);background:#0000004d;padding:14px 16px;font-size:15px}.field::placeholder{color:var(--fg-3)}.field:focus{border-color:var(--ember-line);box-shadow:0 0 0 3px var(--ember-wash);outline:none}textarea.field{resize:vertical;min-height:88px;line-height:1.55}.modal-trust{color:var(--fg-3);text-align:center;justify-content:center;align-items:center;gap:8px;margin:18px 0 0;font-size:12.5px;display:flex}.modal-error{color:var(--danger);text-align:center;margin:18px 0 0;font-size:13px}.modal-error a{color:var(--ember-2);font-weight:600;text-decoration:underline}.modal-alt{text-align:center;border-top:1px solid var(--line);color:var(--fg-3);margin-top:20px;padding-top:20px;font-size:13px}.modal-alt a{color:var(--ember-2);align-items:center;gap:6px;font-weight:500;display:inline-flex}.modal-success{text-align:center;padding:14px 0}.modal-close{position:absolute;top:16px;right:16px}.reveal{opacity:0;transition:opacity .8s var(--ease-out), transform .8s var(--ease-out);transform:translateY(22px)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}}@media (width<=1024px){.chapter{padding:var(--s-10) 0;min-height:auto}.scene-split{grid-template-columns:1fr;align-items:start;gap:40px}.case-grid{grid-template-columns:1fr;gap:28px}.case.flip .case-media{order:0}.caps-layout{grid-template-columns:1fr;gap:40px}.caps-pin{position:static}.caps-stage{max-width:320px;margin:0 auto}.cap-item{opacity:1}.faq-layout{grid-template-columns:1fr;gap:32px}.method-list{margin-left:0}}@media (width<=760px){.nav{top:10px}.nav-bar{height:56px;padding:0 8px 0 14px}.nav-links{display:none}.nav-cta .btn{padding:11px 16px;font-size:13px}.nav-logo .word{font-size:16px}.nav-logo img{width:25px;height:25px}.chapter{padding:72px 0}.scene{min-height:auto;padding-top:80px;padding-bottom:28px}.scene-split{gap:22px}.scene .t-lead{margin-top:16px}.scene-actions{flex-wrap:nowrap;gap:10px;margin-top:20px}.scene-actions>*{flex:1 1 0;min-width:0}.scene-actions .btn{width:100%;padding:16px 10px;font-size:14px}.scene-figs{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px;display:grid}.scene-figs .fig .n{font-size:21px}.scene-figs .fig .l{letter-spacing:.08em;margin-top:5px;font-size:9px}.scene .ch-foot{display:none}.scene-visual{grid-template-columns:1fr 1fr;gap:10px;display:grid}.scene-visual>.visual{grid-column:1/-1}.note-card{-webkit-backdrop-filter:none;backdrop-filter:none;max-width:none;padding:12px 13px;animation:none;position:static}.note-card .h{font-size:13px}.note-card .p{font-size:10.5px}.ch-foot{margin-top:30px;padding-top:16px}.router-sectors{justify-content:flex-start;gap:6px 18px;margin-top:34px}.router-sectors span{font-size:12.5px}.caps-pin{display:none}.caps-layout{margin-top:0!important}.case-bg{display:none}.router-field{flex-direction:column;align-items:stretch;gap:10px}.router-send{width:100%}.router-box{border-radius:var(--r-lg)}.case{padding:60px 0}.case-delta{flex-direction:column;gap:2px}.case-delta .to{display:none}.case-delta .now{padding-left:15px;position:relative}.case-delta .now:before{content:"↳";color:var(--ember-2);font-size:12px;position:absolute;top:-1px;left:0}.note-card{max-width:196px;padding:11px 13px}.note-a{top:6%;left:-6px}.note-b{bottom:6%;right:-6px}.ch-foot{grid-template-columns:1fr;gap:8px}.ch-foot .b,.ch-foot .c{text-align:left;justify-self:start}.field-row{flex-direction:column;gap:0}.footer-top{gap:32px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:10px}}@media (width<=420px){.nav{padding:0 12px}.nav-bar{gap:8px;padding:0 6px 0 12px}.nav-logo{gap:8px}.nav-logo .word{font-size:15px}.nav-cta{gap:4px}.lang{gap:3px;padding:6px 5px;font-size:11px}.nav-cta .btn{padding:10px 13px;font-size:12.5px}}@media (height<=800px) and (width>=1025px){.scene{--t-scene:clamp(32px, 4vw, 56px);padding-top:116px}.scene .t-lead{margin-top:18px}.scene-figs{margin-top:26px}}.duo{filter:drop-shadow(0 12px 24px #080a0e80);rotate:var(--duo-lean,0deg);transform-origin:50% 92%;transition:rotate .4s var(--ease-out);opacity:0;line-height:0;display:inline-block;position:relative;translate:0 20px;scale:.62}.duo.is-in{opacity:1;transition:rotate .4s var(--ease-out), scale .62s cubic-bezier(.34, 1.56, .64, 1), translate .62s cubic-bezier(.34, 1.56, .64, 1), opacity .38s var(--ease-out);translate:0;scale:1}.duo-svg{display:block;overflow:visible}.duo-hit{cursor:pointer;border-radius:var(--r-lg);transition:transform var(--dur-base) var(--ease-out);background:0 0;border:0;padding:0;line-height:0;display:block}.duo-hit:hover{transform:translateY(-3px)scale(1.03)}.duo-hit:active{transform:translateY(0)scale(.98)}.duo-hit:focus-visible{box-shadow:var(--focus-ring);outline:none}.duo-all{transform-box:fill-box;transform-origin:50% 95%;rotate:calc(var(--duo-scroll,0) * -7deg);transition:rotate .22s var(--ease-out)}.duo-svg{animation:duo-float 5.5s var(--ease-in-out) infinite}@keyframes duo-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.duo-eyes{transform-box:fill-box;transform-origin:50%;transition:transform .12s var(--ease-out);animation:duo-blink 6.2s var(--ease-out) infinite}@keyframes duo-blink{0%,92%,to{scale:1}94%{scale:1 .08}96%{scale:1}98%{scale:1 .08}99%{scale:1}}.duo-bulb{transform-box:fill-box;transform-origin:50%;animation:duo-bulb 2.6s var(--ease-in-out) infinite}@keyframes duo-bulb{0%,to{opacity:1;scale:1}50%{opacity:.55;scale:.82}}.duo-core{transform-box:fill-box;transform-origin:50%;animation:duo-bulb 2.6s var(--ease-in-out) infinite .4s}.duo-antenna{transform-box:fill-box;transform-origin:50% 100%;rotate:calc(var(--duo-scroll,0) * 9deg);transition:rotate .3s var(--ease-out)}.duo-arm{transform-box:fill-box;transform:rotate(var(--arm,0deg));transition:transform .32s var(--ease-out)}.duo-brk-stretch .duo-arm,.duo-brk-shrug .duo-arm{transform:none}.duo-arm-l{transform-origin:100%}.duo-arm-r{transform-origin:0%}.duo-wave .duo-arm-r{animation:duo-wave 1.5s var(--ease-in-out) infinite}@keyframes duo-wave{0%,to{rotate:0deg}25%{rotate:-16deg}75%{rotate:14deg}}.duo-think .duo-arm-r{animation:duo-tap 2.4s var(--ease-in-out) infinite}@keyframes duo-tap{0%,60%,to{rotate:0deg}70%,90%{rotate:-7deg}}.duo-cheer .duo-arm-r{animation:duo-pump .9s var(--ease-in-out) infinite}.duo-cheer .duo-arm-l{animation:duo-pump-l .9s var(--ease-in-out) infinite}@keyframes duo-pump{0%,to{rotate:0deg}50%{rotate:-12deg}}@keyframes duo-pump-l{0%,to{rotate:0deg}50%{rotate:12deg}}.duo-leg{transform-box:fill-box;transform-origin:50% 0}.duo-torso{transform-box:fill-box;transform-origin:50% 100%}.duo-flag-cloth{transform-box:fill-box;transform-origin:100%;animation:duo-flap 2.8s var(--ease-in-out) infinite}@keyframes duo-flap{0%,to{transform:skewY(0)scaleX(1)}50%{transform:skewY(-3.5deg)scaleX(.93)}}.duo-peek .duo-svg{animation:duo-peek-bob 4.5s var(--ease-in-out) infinite}@keyframes duo-peek-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)rotate(-1.5deg)}}.duo.is-hopping .duo-svg{animation:duo-hop .62s var(--ease-out)}@keyframes duo-hop{0%{transform:translateY(0)scale(1)}22%{transform:translateY(4px)scale(1.08,.9)}55%{transform:translateY(-22px)scale(.94,1.08)rotate(-5deg)}80%{transform:translateY(2px)scale(1.05,.95)}to{transform:translateY(0)scale(1)}}.duo-break{transform-box:fill-box;transform-origin:50% 95%}.duo-brk-stretch .duo-break{animation:duo-stretch 1.5s var(--ease-in-out)}.duo-brk-stretch .duo-arm-l{animation:duo-stretch-l 1.5s var(--ease-in-out)}.duo-brk-stretch .duo-arm-r{animation:duo-stretch-r 1.5s var(--ease-in-out)}@keyframes duo-stretch{0%,to{transform:none}35%,62%{transform:translateY(-7px)scaleY(1.05)}}@keyframes duo-stretch-l{0%,to{rotate:0deg}35%,62%{rotate:72deg}}@keyframes duo-stretch-r{0%,to{rotate:0deg}35%,62%{rotate:-72deg}}.duo-brk-look .duo-head{animation:duo-look 2.2s var(--ease-in-out)}.duo-head{transform-box:fill-box;transform-origin:50% 100%}@keyframes duo-look{0%,to{translate:0;rotate:0deg}22%{translate:-3px;rotate:-10deg}58%{translate:3px;rotate:10deg}}.duo-brk-spin .duo-break{animation:duo-flip 1s var(--ease-in-out)}@keyframes duo-flip{0%{scale:1}50%{scale:-1 1}to{scale:1}}.duo-brk-shrug .duo-torso{animation:duo-shrug 1.1s var(--ease-in-out)}.duo-brk-shrug .duo-arm-l{animation:duo-shrug-l 1.1s var(--ease-in-out)}.duo-brk-shrug .duo-arm-r{animation:duo-shrug-r 1.1s var(--ease-in-out)}@keyframes duo-shrug{0%,to{transform:none}45%{transform:translateY(-5px)}}@keyframes duo-shrug-l{0%,to{rotate:0deg}45%{rotate:-26deg}}@keyframes duo-shrug-r{0%,to{rotate:0deg}45%{rotate:26deg}}.duo-brk-boot .duo-break{animation:.7s step-end duo-glitch}.duo-brk-boot .duo-eyes{animation:.7s step-end duo-flicker}@keyframes duo-glitch{0%,to{transform:none}15%,45%{transform:translate(2.5px)}30%,60%,75%{transform:translate(-2.5px)}}@keyframes duo-flicker{0%,to{opacity:1}15%,45%,75%{opacity:.15}30%,60%{opacity:1}}.duo-bubble{z-index:5;width:max-content;max-width:240px;font-family:var(--font-sans);text-align:center;color:var(--fg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--glow-lift);animation:duo-say .3s var(--ease-out);background:#1a1720f0;padding:12px 16px;font-size:13.5px;line-height:1.5;position:absolute;bottom:calc(100% + 16px);left:50%;translate:-50%}.duo-bubble:after{content:"";border:7px solid #0000;border-top-color:#1a1720f0;position:absolute;top:100%;left:50%;translate:-50%}@keyframes duo-say{0%{opacity:0;transform:translateY(8px)scale(.94)}to{opacity:1;transform:none}}@keyframes duo-step-a{0%,to{rotate:22deg}50%{rotate:-22deg}}@keyframes duo-step-b{0%,to{rotate:-22deg}50%{rotate:22deg}}@keyframes duo-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2.5px)}}.duo-scene{z-index:1;pointer-events:auto;position:relative}.duo-faq{margin:34px 0 0 -10px;display:block}.duo-close{margin:0 auto 20px;display:block}.duo-modal{margin:0 auto 6px;display:block}@media (width<=900px){.duo-cta{display:none}}@media (width<=680px){.duo-faq{margin:24px 0 0}}@media (prefers-reduced-motion:reduce){.duo,.duo-svg,.duo-eyes,.duo-bulb,.duo-core,.duo-antenna,.duo-arm,.duo-leg,.duo-torso,.duo-head,.duo-all,.duo-break,.duo-flag-cloth,.duo-bubble,.duo.is-hopping .duo-svg,.duo{opacity:1;translate:0;rotate:0deg;scale:1}.duo-all,.duo-antenna{rotate:0deg}.duo-hit:hover{transform:none}}.bit{z-index:3;pointer-events:auto;position:absolute;top:12%;right:7%}.bit-hit{cursor:pointer;border-radius:var(--r-pill);background:0 0;border:0;padding:6px;line-height:0;display:block}.bit-hit:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.bit-craft{animation:bit-bob 3.4s var(--ease-in-out) infinite;filter:drop-shadow(0 10px 18px #0000008c);display:block}@keyframes bit-bob{0%,to{transform:translateY(0)rotate(-1.5deg)}50%{transform:translateY(-9px)rotate(1.5deg)}}.bit-rotor{transform-origin:50%;animation:.5s linear infinite bit-spin}.bit-rotor-l{transform-box:fill-box}.bit-rotor-r{transform-box:fill-box;animation-delay:-.25s}@keyframes bit-spin{0%{transform:scaleX(1)}50%{transform:scaleX(.25)}to{transform:scaleX(1)}}.bit-lens{animation:bit-scan 2.2s var(--ease-in-out) infinite;transform-origin:50%;transform-box:fill-box}@keyframes bit-scan{0%,to{opacity:1}50%{opacity:.55}}.bit-pip{animation:1.8s steps(2,end) infinite bit-blink}@keyframes bit-blink{50%{opacity:.2}}.bit.is-rolling .bit-craft{animation:bit-roll .72s var(--ease-in-out)}@keyframes bit-roll{0%{transform:rotate(0)translateY(0)}50%{transform:rotate(180deg)translateY(-14px)}to{transform:rotate(360deg)translateY(0)}}@media (width<=760px){.bit{top:8%;right:4%}.bit-craft svg{width:56px;height:34px}}@media (prefers-reduced-motion:reduce){.bit-craft,.bit-rotor,.bit-lens,.bit-pip,.bit.is-rolling .bit-craft{animation:none}}
