:root{--bg: #0b0c10;--panel: #101218;--panel-2: #14171f;--line: #262a34;--line-bright: #363b48;--text: #e9ebf0;--text-dim: #9aa1af;--text-faint: #6b7280;--accent: #f5a623;--accent-soft: rgba(245, 166, 35, .14);--blue: #5b74b8;--serif: "Barlow Condensed", "Arial Narrow", Impact, sans-serif;--sans: "IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--nav-h: 60px;--wrap: 1120px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:16px}body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 1 0'/></filter><rect width='160' height='160' filter='url(%23n)'/></svg>");background-size:160px 160px}img{max-width:100%;display:block;height:auto}a{color:var(--text);text-decoration:none}code,pre{font-family:var(--mono)}p code,li code,td code{font-size:.86em;background:#ffffff12;padding:1px 5px;border-radius:3px;color:var(--text)}em{font-style:italic}.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:24px}.nav{position:absolute;top:0;left:0;right:0;z-index:20;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 24px;pointer-events:none}.nav>a{pointer-events:auto}.brand{display:inline-flex;align-items:center;gap:11px;font-family:var(--serif);font-weight:700;font-size:22px}.brand span{display:inline-block;letter-spacing:.22em;transform:scaleX(1.12);transform-origin:left center}.nav-gh{display:inline-flex;padding:6px;color:var(--text-dim);transition:color .15s}.nav-gh:hover{color:var(--text)}.hero{padding:88px 0 72px}.hero-copy{margin-bottom:64px}.hero-block{width:fit-content;margin-inline:auto}.kicker{margin-bottom:28px}.stamp{display:inline-block;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;color:var(--accent);border:2.5px solid var(--accent);border-radius:6px;padding:6px 11px 5px;transform:rotate(-1.5deg);transform-origin:left center;opacity:.82;-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  2.2 0 0 0 -0.35'/></filter><rect width='120' height='120' filter='url(%23n)'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  2.2 0 0 0 -0.35'/></filter><rect width='120' height='120' filter='url(%23n)'/></svg>");-webkit-mask-size:120px 120px;mask-size:120px 120px}.hero h1{font-family:var(--serif);font-weight:700;font-size:clamp(44px,6.4vw,92px);line-height:.92;letter-spacing:-.005em;text-transform:uppercase;white-space:nowrap;margin-bottom:22px}.h1-last{position:relative;display:inline-block;color:var(--accent)}.h1-alts{position:absolute;left:calc(100% + .14em);top:.08em;font-family:var(--mono);font-size:clamp(11px,.95vw,13.5px);font-weight:400;line-height:1.45;letter-spacing:.02em;text-transform:lowercase;white-space:nowrap;color:var(--text-dim);text-decoration:line-through;text-decoration-color:var(--accent);text-decoration-thickness:1.5px}.h1-alts span{display:block;animation:fade-in .5s ease-out both}.h1-alts span:nth-child(1){animation-delay:.35s}.h1-alts span:nth-child(2){animation-delay:.55s}.h1-alts span:nth-child(3){animation-delay:.75s}@keyframes fade-in{0%{opacity:0}}.sub-row{display:flex;align-items:center;justify-content:space-between;gap:36px;contain:inline-size}.sub{flex:1 1 0;min-width:0;font-size:clamp(15px,1.3vw,17px);color:var(--text-dim)}.cta{flex:none}@media(max-width:1100px){.sub-row{flex-direction:column;align-items:flex-start;gap:22px}.sub{flex:none;width:100%}}@media(max-width:720px){.hero-block{width:auto}.hero h1{white-space:normal}.sub-row{contain:none}}.cta{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;font-family:var(--mono);font-size:14px;font-weight:500;letter-spacing:.02em;border:1.5px solid var(--text);color:var(--text);background:transparent;cursor:pointer;transition:background .15s,color .15s,transform .15s,box-shadow .15s}.btn{border-radius:8px}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--bg)}.btn-primary:hover{background:#ffb63a;border-color:#ffb63a}.btn-ghost:hover{background:var(--text);color:var(--bg)}.loop{border:1px solid var(--line);background:var(--panel);border-radius:18px;overflow:hidden;box-shadow:0 30px 80px -40px #000c,0 0 0 1px #ffffff05 inset}.rail{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--line)}.rail button{position:relative;width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;background:none;border:0;border-right:1px solid var(--line);color:var(--text-faint);font-family:var(--serif);font-weight:600;font-size:20px;letter-spacing:.02em;text-transform:uppercase;cursor:pointer;text-align:left;transition:color .2s,background .2s}.rail li:last-child button{border-right:0}.rail button i{display:none}.rail button:hover{color:var(--text);background:#ffffff08}.rail button.is-done{color:var(--text-dim)}.rail button.is-active{color:var(--text);background:#ffffff06}.rail .arrow{flex:none;overflow:visible;color:var(--line-bright)}.rail .arrow .shaft{stroke:currentColor;stroke-width:2;stroke-linecap:round}.rail .arrow .head{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.rail button.is-active .arrow{color:var(--accent)}.rail button.is-done .arrow{color:var(--text-faint)}.loop-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,46%);min-height:420px}.loop-body>*{min-width:0}.pane{padding:26px 28px 24px;border-right:1px solid var(--line);display:flex;flex-direction:column}.pane-stage{display:flex;flex-direction:column;gap:16px;flex:1}.pane-stage[hidden]{display:none}.pane-title{font-family:var(--serif);font-weight:600;font-size:28px;line-height:1;text-transform:uppercase;letter-spacing:.01em}.pane-line{font-size:14.5px;color:var(--text-dim)}.pane-note{margin-top:auto;font-size:13.5px;color:var(--text-faint);padding-top:8px;border-top:1px solid var(--line)}.ty{white-space:pre-wrap}.ty.typing:after{content:"";display:inline-block;width:.55em;height:1em;background:var(--accent);vertical-align:-.15em;margin-left:2px;animation:blink .9s steps(2) infinite}@keyframes blink{to{opacity:0}}.chat{display:flex;flex-direction:column;gap:10px}.msg{font-family:var(--mono);font-size:13.5px;line-height:1.6;padding:10px 14px;min-height:44px;border-radius:10px}.msg-user{background:#1c2029;color:var(--text)}.msg-ai{background:var(--panel-2);border:1px solid var(--line);color:var(--text-dim)}.code{font-size:12.5px;line-height:1.7;color:var(--text);background:var(--panel-2);border:1px solid var(--line);padding:14px 16px;overflow-x:auto;border-radius:10px}.code .ty{display:block;min-height:1.7em}.prm{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;height:28px;background:var(--panel-2);border:1px solid var(--line-bright);border-radius:7px;font-family:var(--mono);font-size:12.5px;overflow:hidden;cursor:ew-resize}.prm-fill{position:absolute;inset:0 auto 0 0;background:var(--blue);opacity:.85;pointer-events:none;transition:width .06s linear}.prm-label,.prm-value{position:relative;z-index:1;padding:0 10px;pointer-events:none}.prm-value{font-weight:500}.prm input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:ew-resize}.prm:focus-within{outline:2px solid var(--accent);outline-offset:1px}.readout{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}.readout div{border:1px solid var(--line);padding:8px 12px;background:var(--panel-2);border-radius:8px}.readout dt{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);margin-bottom:4px}.readout dd{font-family:var(--mono);font-size:15px;font-weight:500;font-variant-numeric:tabular-nums}.task{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:12.5px}.task td{padding:7px 8px;border-bottom:1px solid var(--line);vertical-align:middle}.task td:first-child{color:var(--accent);font-size:11px;letter-spacing:.1em;text-transform:uppercase;width:84px}.task td:nth-child(3){width:34%}.task td:last-child{text-align:right;color:var(--text-dim);font-variant-numeric:tabular-nums}.task i{display:block;height:6px;width:var(--w);background:#3fb37f;border-radius:3px}.task i.neg{background:var(--accent)}.curve{width:100%;height:auto;display:block;border:1px solid var(--line);background:var(--panel-2);border-radius:10px}.phase-a,.phase-b{display:none}.loop[data-phase=a] .phase-a,.loop[data-phase=b] .phase-b{display:block}.loop[data-phase=b] .readout.phase-b{display:grid}.code .ty.phase-b{display:none}.loop[data-phase=b] .code .ty.phase-b{display:block}.scene{position:relative;display:flex;align-items:stretch;background:var(--panel-2)}.scene-svg{width:100%;height:100%;display:block}.sc-grid line{stroke:#ffffff0b;stroke-width:1}.sc-floor line{stroke:var(--text-dim);stroke-width:1.2}.sc-floor .hatch{stroke:var(--line-bright);stroke-width:1}.sc-ghost rect{fill:none;stroke:var(--line-bright);stroke-width:1.5;stroke-dasharray:6 5}.sc-ghost text{font-family:var(--serif);font-size:48px;fill:var(--line-bright);font-weight:700}.sc-ghost{opacity:0;transition:opacity .4s}.loop[data-stage="0"] .sc-ghost{opacity:1}.sc-robot{opacity:0;transition:opacity .4s}.loop:not([data-stage="0"]) .sc-robot{opacity:1}.sc-robot .part{fill:#5b74b829;stroke:var(--text);stroke-width:1.6;stroke-linejoin:round}.sc-robot .part-servo{fill:#ffffff0f;stroke:var(--text-dim);stroke-width:1.2}.sc-robot .part-batt{fill:#f5a6231f;stroke:var(--text-dim);stroke-width:1.2}.sc-robot .part-hub{fill:var(--text)}.sc-robot .part-eye{fill:var(--accent)}.sc-robot .spokes line{stroke:var(--text-dim);stroke-width:1.2}.sc-robot.drawing .part,.sc-robot.drawing .spokes line,.sc-robot.drawing .part-servo,.sc-robot.drawing .part-batt{stroke-dasharray:600;stroke-dashoffset:600;animation:draw 1.3s ease-out forwards;fill-opacity:0}@keyframes draw{to{stroke-dashoffset:0;fill-opacity:1}}.sc-dims,.sc-obs{opacity:0;transition:opacity .35s}.loop[data-stage="1"][data-phase=a] .sc-dims,.loop[data-stage="2"] .sc-obs{opacity:1}.sc-dims .dim{stroke:var(--accent);stroke-width:1}.sc-dims .dim-t{font-family:var(--mono);font-size:11px;fill:var(--accent)}.sc-obs .obs-arc{fill:none;stroke:var(--accent);stroke-width:1.4}.sc-obs .obs-ref{stroke:var(--text-faint);stroke-width:1;stroke-dasharray:4 3}.sc-obs .obs-l{stroke:var(--text-dim);stroke-width:1}.sc-obs .obs-act{fill:none;stroke:var(--blue);stroke-width:1.6;stroke-dasharray:4 3}.sc-obs .obs-t{font-family:var(--mono);font-size:10.5px;fill:var(--text-dim)}.sc-push{opacity:0;transition:opacity .15s}.sc-push .push-l{stroke:var(--accent);stroke-width:2}.sc-push .push-h{fill:var(--accent)}.sc-push .push-t{font-family:var(--mono);font-size:11px;fill:var(--accent)}.sc-status{font-family:var(--mono);font-size:10.5px;fill:var(--text-faint);letter-spacing:.06em}@media(max-width:1000px){.rail button{font-size:16px;padding:12px 12px 14px;gap:6px}}@media(max-width:900px){.loop-body{grid-template-columns:1fr}.pane{border-right:0;border-bottom:1px solid var(--line)}.scene{min-height:300px}.scene-svg{max-height:360px}}@media(max-width:520px){.hero{padding-top:76px}.hero-copy{margin-bottom:52px}.rail{grid-template-columns:repeat(2,1fr)}.rail li button{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.rail li:nth-child(2n) button,.rail li:last-child button{border-right:0}.rail li:last-child{grid-column:1 / -1}.rail li:last-child button{border-bottom:0}.rail button span{font-size:16px}.pane{padding:20px 18px}}.about{margin-top:56px;display:grid;grid-template-columns:1fr 1fr;gap:0 48px}.about-kicker{grid-column:1 / -1;font-family:var(--mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}.about-p{font-size:clamp(15px,1.3vw,17px);color:var(--text-dim);margin-bottom:18px}@media(max-width:720px){.about{grid-template-columns:1fr}}.about-p em{color:var(--text)}.footer{max-width:var(--wrap);margin:0 auto;padding:24px 24px 40px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:var(--mono);font-size:12px;color:var(--text-faint);border-top:1px solid var(--line)}.footer a{color:var(--text-dim)}.footer>p:first-child{flex:1 1 360px;max-width:640px}.footer-right{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.footer-version{letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--line);border-radius:999px;padding:3px 9px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}.h1-alts span{animation:none}.sc-robot.drawing .part{animation:none;stroke-dashoffset:0;fill-opacity:1}}
