:root{--ink:#121212;--muted:#5c5c58;--faint:#6e6d69;--rule:#e6e5e0;--off:#d6d5d0;--paper:#fafaf8;--card:#fff;--well:#f4f3ef;--accent:#c2410c;--accent-tint:#c2410c14;--sans:"Geist", ui-sans-serif, system-ui, sans-serif;--mono:"Geist Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--gutter:160px;--content:960px;--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{font-family:var(--sans);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0}a{color:var(--ink);text-decoration:none;transition:color .16s}a:hover{color:var(--muted)}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}::selection{background:var(--accent);color:var(--paper)}.mono{font-family:var(--mono)}.muted{color:var(--muted)}.wrap{width:100%;max-width:calc(var(--content) + 2 * 24px);margin:0 auto;padding:0 24px}.section{border-top:1px solid var(--rule);padding:96px 0}.section-head{flex-direction:column;gap:16px;margin-bottom:48px;display:flex}.section-head.tight{margin-bottom:40px}.eyebrow{font-family:var(--mono);color:var(--muted);font-size:14px}.h2{letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:40px;font-weight:500;line-height:1.15}.lede{color:var(--muted);text-wrap:pretty;max-width:680px;margin:0;font-size:18px;line-height:1.55}.footnote{color:var(--muted);margin:0;font-size:15px;line-height:1.6}.btn{height:48px;transition:background .16s ease, border-color .16s ease, transform .16s var(--ease), color .16s ease;white-space:nowrap;border:1px solid #0000;border-radius:6px;align-items:center;gap:8px;padding:0 22px;font-size:16px;font-weight:500;display:inline-flex}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--ink);color:var(--paper)}.btn-primary:hover{color:var(--paper);background:#2a2a28}.btn-secondary{border-color:var(--off);background:0 0}.btn-secondary:hover{border-color:var(--ink);color:var(--ink);background:var(--card)}.btn-sm{height:40px;padding:0 16px;font-size:15px}.btn .arrow{transition:transform .2s var(--ease)}.btn:hover .arrow{transform:translate(3px)}.cta-row{flex-wrap:wrap;gap:12px;display:flex}.nav{z-index:50;-webkit-backdrop-filter:saturate(160%)blur(12px);background:#fafaf8d1;border-bottom:1px solid #0000;height:72px;transition:border-color .2s;position:sticky;top:0}.nav.scrolled{border-bottom-color:var(--rule)}.nav .wrap{justify-content:space-between;align-items:center;height:100%;display:flex}.logo{font-family:var(--mono);letter-spacing:-.01em;align-items:center;gap:10px;font-size:17px;font-weight:500;display:inline-flex}.logo-mark{background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 4px var(--accent-tint);border-radius:50%}.nav-links{align-items:center;gap:32px;font-size:15px;display:flex}.nav-links a:not(.btn){position:relative}.nav-links a:not(.btn):after{content:"";background:var(--ink);transform-origin:0;height:1px;transition:transform .22s var(--ease);position:absolute;bottom:-6px;left:0;right:0;transform:scaleX(0)}.nav-links a:not(.btn):hover{color:var(--ink)}.nav-links a:not(.btn):hover:after{transform:scaleX(1)}.nav-links .btn{height:44px;padding:0 18px;font-size:15px}.nav-toggle{border:1px solid var(--rule);background:var(--card);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:44px;height:44px;display:none}.mobile-menu{background:var(--paper);border-bottom:1px solid var(--rule);flex-direction:column;padding:8px 24px 24px;display:none}.mobile-menu a:not(.btn){border-bottom:1px solid var(--rule);padding:14px 0;font-size:17px}.mobile-menu .btn{justify-content:center;margin-top:16px}.hero{padding:128px 0 120px;position:relative;overflow:hidden}.hero:before{content:"";background-image:linear-gradient(to right, var(--rule) 1px, transparent 1px), linear-gradient(to bottom, var(--rule) 1px, transparent 1px);opacity:.55;pointer-events:none;background-size:48px 48px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 70% 0,#000 0%,#0000 70%);mask-image:radial-gradient(70% 60% at 70% 0,#000 0%,#0000 70%)}.hero .wrap{flex-direction:column;gap:28px;display:flex;position:relative}.pill{font-family:var(--mono);color:var(--muted);align-self:flex-start;align-items:center;gap:10px;font-size:14px;display:inline-flex}.pill-dot{background:var(--accent);border-radius:50%;width:6px;height:6px;animation:2.4s ease-in-out infinite pulse}@keyframes pulse{0%,to{box-shadow:0 0 #c2410c59}50%{box-shadow:0 0 0 5px #c2410c00}}.h1{letter-spacing:-.035em;text-wrap:balance;max-width:880px;margin:0;font-size:68px;font-weight:500;line-height:1.04}.hero-lede{max-width:680px;font-size:20px}.hero .cta-row{padding-top:12px}.card{border:1px solid var(--rule);background:var(--card);border-radius:8px}.terminal{max-width:880px;margin-top:36px;overflow:hidden;box-shadow:0 1px #12121205,0 24px 48px -24px #12121224}.terminal-bar{border-bottom:1px solid var(--rule);height:40px;font-family:var(--mono);color:var(--muted);justify-content:space-between;align-items:center;padding:0 12px 0 20px;font-size:13px;display:flex}.terminal-body{font-family:var(--mono);white-space:pre;padding:24px 24px 26px;font-size:15px;line-height:1.75;overflow-x:auto}.t-line{opacity:0;transition:opacity .36s var(--ease), transform .36s var(--ease);display:block;transform:translateY(4px)}.t-line.on{opacity:1;transform:none}.t-prompt{color:var(--accent)}.t-out{color:var(--muted)}.t-ok{color:#15803d}.caret{vertical-align:-.2em;background:var(--ink);width:8px;height:1.1em;margin-left:2px;animation:1.1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.copy-btn{height:28px;font-family:var(--mono);color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;align-items:center;gap:6px;padding:0 10px;font-size:12px;transition:background .16s,color .16s,border-color .16s;display:inline-flex}.copy-btn:hover{background:var(--well);color:var(--ink)}.copy-btn.done{color:var(--accent)}.flow{flex-direction:column;gap:28px;padding:32px;display:flex}.flow-grid{grid-template-columns:168px minmax(0,1fr) 168px minmax(0,1fr) 216px minmax(0,1fr) 168px;align-items:center;display:grid}.col{flex-direction:column;gap:6px;display:flex}.col-label{font-family:var(--mono);color:var(--muted);padding-bottom:6px;font-size:12px}.chip{text-align:left;height:44px;font-family:var(--mono);border:1px solid var(--rule);background:var(--card);color:var(--ink);border-radius:6px;align-items:center;padding:0 14px;font-size:14px;transition:background .22s,border-color .22s,color .22s;display:flex}button.chip{cursor:pointer}button.chip:hover:not(.on){border-color:var(--off);background:var(--paper)}.chip.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}.chip.dim{color:var(--muted)}.chip.lit{border-color:var(--ink)}.chip .tick{color:var(--accent);opacity:0;margin-left:auto;transition:opacity .26s}.chip.lit .tick{opacity:1}.arrow-link{align-items:center;padding:18px 8px 0;display:flex;position:relative}.arrow-line{background:var(--off);flex-grow:1;height:1px;position:relative;overflow:hidden}.arrow-line:after{content:"";background:var(--accent);transform-origin:0;transition:transform .7s var(--ease);position:absolute;inset:0;transform:scaleX(0)}.arrow-link.on .arrow-line:after{transform:scaleX(1)}.arrow-head{fill:var(--off);transition:fill .2s .5s}.arrow-link.on .arrow-head{fill:var(--accent)}.arrow-link.on .packet{animation:packet 1.2s var(--ease) 1}.packet{background:var(--accent);opacity:0;border-radius:50%;width:6px;height:6px;margin-top:-3px;position:absolute;top:calc(50% + 9px);left:8px}@keyframes packet{0%{opacity:0;left:8px}15%{opacity:1}85%{opacity:1}to{opacity:0;left:calc(100% - 14px)}}.node{border:1px solid var(--rule);background:var(--card);border-radius:8px;flex-direction:column;gap:6px;padding:18px;transition:border-color .26s,box-shadow .26s;display:flex}.node.on{border-color:var(--ink);box-shadow:0 12px 24px -16px #12121240}.node-kicker{font-family:var(--mono);color:var(--muted);font-size:12px}.node-title{font-family:var(--mono);color:var(--muted);font-size:15px;font-weight:500;transition:color .26s}.node.on .node-title{color:var(--ink)}.node-sub{color:var(--muted);font-size:13px;line-height:1.5}.node-types{font-family:var(--mono);flex-direction:column;gap:2px;padding-top:6px;font-size:12px;line-height:1.5;display:flex}.node-types div{color:var(--muted);transition:color .26s}.node-types div.on{color:var(--accent);font-weight:500}.event{background:var(--well);font-family:var(--mono);border-radius:6px;align-items:center;gap:20px;padding:14px 16px 14px 20px;font-size:14px;line-height:1.5;display:flex}.event-verb{width:64px;color:var(--accent);flex-shrink:0;font-weight:500}.event-text{min-width:0;color:var(--ink);animation:fadeIn .36s var(--ease);flex-grow:1}@keyframes fadeIn{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.event .btn{background:var(--card);border-color:var(--off);cursor:pointer;flex-shrink:0;height:44px;padding:0 16px;font-size:14px}.event .btn:hover{border-color:var(--ink)}.event .btn:disabled{cursor:default;color:var(--muted)}.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:40px;display:grid}.step{text-align:left;border:1px solid var(--rule);background:var(--card);cursor:pointer;font-family:var(--sans);color:var(--ink);transition:border-color .22s ease, transform .22s var(--ease), box-shadow .22s ease;border-radius:8px;flex-direction:column;gap:10px;padding:20px;display:flex;position:relative;overflow:hidden}.step:hover{transform:translateY(-2px);box-shadow:0 16px 32px -24px #1212124d}.step.on{border-color:var(--ink)}.step-label{font-family:var(--mono);color:var(--accent);font-size:14px}.step-title{letter-spacing:-.01em;font-size:20px;font-weight:500}.step-body{color:var(--muted);font-size:15px;line-height:1.6}.step-progress{background:var(--accent);transform-origin:0;width:100%;height:2px;position:absolute;bottom:0;left:0;transform:scaleX(0)}.step.running .step-progress{animation:1.3s linear forwards progress}@keyframes progress{to{transform:scaleX(1)}}.mem-grid{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:32px;margin-bottom:48px;display:grid}.mem-list{flex-direction:column;gap:6px;display:flex}.mem-item{text-align:left;cursor:pointer;min-height:60px;font-family:var(--sans);color:var(--ink);background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:14px;padding:10px 16px;transition:border-color .2s,background .2s;display:flex}.mem-item:hover:not(.on){background:#12121208}.mem-item.on{border-color:var(--ink);background:var(--card)}.mem-n{width:14px;font-family:var(--mono);color:var(--accent);flex-shrink:0;font-size:13px}.mem-text{flex-direction:column;gap:2px;display:flex}.mem-name{font-family:var(--mono);font-size:15px;font-weight:500}.mem-life{color:var(--muted);font-size:13px}.mem-detail{flex-direction:column;gap:16px;display:flex}.session-head{border-bottom:1px solid var(--rule);height:40px;font-family:var(--mono);color:var(--muted);justify-content:space-between;align-items:center;padding:0 20px;font-size:13px;display:flex}.session-head .live{align-items:center;gap:8px;display:inline-flex}.session-body{flex-direction:column;gap:4px;padding:12px;display:flex}.turn{color:var(--faint);border-radius:6px;grid-template-columns:72px minmax(0,1fr);gap:16px;padding:10px 12px;font-size:15px;line-height:1.5;transition:background .28s,color .28s;display:grid;position:relative}.turn:before{content:"";background:var(--accent);width:2px;transition:transform .28s var(--ease);border-radius:2px;position:absolute;top:10px;bottom:10px;left:0;transform:scaleY(0)}.turn.on{background:var(--accent-tint);color:var(--ink)}.turn.on:before{transform:scaleY(1)}.turn-who{font-family:var(--mono);color:var(--muted);padding-top:2px;font-size:13px}.record{border:1px solid var(--ink);background:var(--card);border-radius:8px;flex-direction:column;gap:14px;padding:20px 24px;display:flex}.record>*{animation:fadeIn .32s var(--ease)}.record-head{font-family:var(--mono);color:var(--muted);justify-content:space-between;align-items:baseline;gap:16px;font-size:13px;display:flex}.record-head strong{color:var(--accent);font-weight:500}.record-row{font-family:var(--mono);white-space:pre-wrap;font-size:16px;font-weight:500}.record-holds{color:var(--muted);font-size:15px;line-height:1.55}.record-meta{border-top:1px solid var(--rule);grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding-top:12px;font-size:14px;line-height:1.5;display:grid}.record-meta div{flex-direction:column;gap:2px;display:flex}.record-meta .k{font-family:var(--mono);color:var(--muted);font-size:12px}.harness-grid{font-family:var(--mono);grid-template-columns:repeat(4,minmax(0,1fr));column-gap:32px;margin-bottom:48px;font-size:15px;display:grid}.harness{border-top:1px solid var(--rule);align-items:center;gap:10px;padding:14px 0;transition:color .16s;display:flex}.harness:before{content:"";background:var(--off);border-radius:50%;flex-shrink:0;width:5px;height:5px;transition:background .16s,transform .16s}.harness:hover:before{background:var(--accent);transform:scale(1.3)}.specs{flex-direction:column;font-size:16px;line-height:1.6;display:flex}.spec{border-top:1px solid var(--rule);grid-template-columns:240px minmax(0,1fr);gap:32px;padding:20px 0;display:grid}.spec:last-child{border-bottom:1px solid var(--rule)}.spec-k{font-family:var(--mono);color:var(--muted);padding-top:2px;font-size:14px}.spec-v{text-wrap:pretty}.spec-v.mono{font-size:15px}.cta{border-top:1px solid var(--rule);padding:96px 0 120px}.cta .wrap{flex-direction:column;gap:28px;display:flex}.install{max-width:880px;font-family:var(--mono);align-items:center;gap:16px;padding:12px 12px 12px 24px;font-size:15px;display:flex}.install code{white-space:pre;flex:1;min-width:0;font-family:inherit;overflow-x:auto}.footer{border-top:1px solid var(--rule);color:var(--muted);font-size:14px}.footer .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;min-height:96px;padding-top:24px;padding-bottom:24px;display:flex}.footer-links{gap:28px;display:flex}.footer a{color:var(--muted)}.footer a:hover{color:var(--ink)}.reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(16px)}.reveal.in{opacity:1;transform:none}.hero .reveal:nth-child(2){transition-delay:60ms}.hero .reveal:nth-child(3){transition-delay:.12s}.hero .reveal:nth-child(4){transition-delay:.18s}.hero .reveal:nth-child(5){transition-delay:.26s}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal,.t-line{opacity:1;transform:none}}@media (width<=1040px){.flow-grid{grid-template-columns:1fr;gap:4px}.flow-grid .col{flex-flow:wrap;align-items:center}.flow-grid .col-label{width:100%}.flow-grid .chip{flex:140px}.arrow-link{flex-direction:column;justify-content:center;height:40px;padding:0}.arrow-line{flex-grow:1;width:1px;height:auto}.arrow-line:after{transform-origin:top;transform:scaleY(0)}.arrow-link.on .arrow-line:after{transform:scaleY(1)}.arrow-link svg{transform:rotate(90deg)}.packet{display:none}.node-types{flex-flow:wrap;column-gap:14px}}@media (width<=900px){.nav-links{display:none}.nav-toggle{display:inline-flex}.mobile-menu.open{display:flex}.h1{font-size:52px}.mem-grid{grid-template-columns:1fr}.mem-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.steps{grid-template-columns:1fr}.harness-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spec{grid-template-columns:180px minmax(0,1fr);gap:24px}}@media (width<=600px){.wrap{padding:0 16px}.hero{padding:72px 0 80px}.section{padding:72px 0}.cta{padding:72px 0 88px}.h1{letter-spacing:-.03em;font-size:40px}.h2{font-size:30px}.hero-lede{font-size:18px}.lede{font-size:17px}.terminal-body{padding:18px;font-size:13px}.flow{padding:16px}.event{flex-wrap:wrap;gap:8px 16px}.event-text{overflow-wrap:anywhere;flex-basis:100%;order:3}.event .btn{height:36px;margin-left:auto}.mem-list{grid-template-columns:1fr}.turn{grid-template-columns:1fr;gap:2px}.record{padding:16px}.record-meta{grid-template-columns:1fr;gap:12px}.harness-grid{column-gap:16px;font-size:14px}.spec{grid-template-columns:1fr;gap:4px;padding:16px 0}.install{padding-left:16px;font-size:13px}.cta-row .btn{flex:auto;justify-content:center}}
