@font-face{font-family:Bricolage Grotesque;src:url(/fonts/bricolage-grotesque-latin-opsz-normal.woff2)format("woff2");font-weight:200 800;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/geist-latin-wght-normal.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/geist-mono-latin-wght-normal.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{color-scheme:dark;--ink:#060a14;--navy:#0a1121;--panel:#0e1729;--line:#a0b9e11c;--line-2:#a0b9e138;--fg:#edf1f7;--fg-2:#bac5d7;--muted:#8e9bb3;--build:#3dd6c3;--teach:#e8935a;--lead:#d9b46f;--explore:#97b6ff;--font-display:"Bricolage Grotesque","Avenir Next","Segoe UI",system-ui,sans-serif;--font-body:"Geist",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:"Geist Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;--ease:cubic-bezier(.2,.7,.2,1);--nav-h:64px;--gap:20px;--head-gap:56px;--sec-pad:clamp(80px,12vw,160px)}*,:before,:after{box-sizing:border-box}html{background:var(--ink);scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 16px)}body{background:var(--ink);color:var(--fg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6;overflow-x:clip}body:before{content:"";height:env(safe-area-inset-top,0px);z-index:60;background:var(--ink);position:fixed;inset:0 0 auto}img,svg{max-width:100%}a{color:inherit}:focus-visible{outline:2px solid var(--build);outline-offset:3px;border-radius:6px}.nw{white-space:nowrap}.vh{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip{z-index:100;background:var(--fg);color:var(--ink);border-radius:8px;padding:10px 14px;font-weight:600;text-decoration:none;position:absolute;top:-60px;left:16px}.skip:focus{top:calc(12px + env(safe-area-inset-top,0px))}.wrap{max-width:1240px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));margin-inline:auto}@media (width>=700px){.wrap{padding-left:max(40px,env(safe-area-inset-left,0px));padding-right:max(40px,env(safe-area-inset-right,0px))}}.atmos{z-index:-2;pointer-events:none;transform:translate3d(0,calc(var(--sy,0) * -60px),0);background:radial-gradient(42vw 42vw at 80% 14%,#3dd6c31a,#0000 62%),radial-gradient(46vw 46vw at 6% 92%,#e8935a13,#0000 62%),radial-gradient(70vw 50vw at 50% 45%,#1c306247,#0000 70%);position:fixed;inset:-20vh -10vw}.grain{z-index:90;pointer-events:none;opacity:.055;background-image:url(/grain.svg);position:fixed;inset:0}.nav{top:env(safe-area-inset-top,0px);z-index:50;backdrop-filter:saturate(140%)blur(16px);border-bottom:1px solid var(--line);background:#060a149e;position:sticky}.nav-inner{height:var(--nav-h);justify-content:space-between;align-items:center;gap:12px;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:12px;min-height:44px;font-size:16.5px;font-weight:600;text-decoration:none;display:flex}.zmark{width:28px;height:28px;transition:transform .5s var(--ease);flex:none;display:block}.brand:hover .zmark{transform:scale(1.08)}.nav ul{gap:2px;margin:0;padding:0;list-style:none;display:flex;position:relative}.nav ul a{color:var(--muted);white-space:nowrap;padding:12px;font-size:14px;text-decoration:none;transition:color .25s;display:block}.nav ul a:hover,.nav ul a[aria-current=true]{color:var(--fg)}.menu-btn{display:none}.nav-ink{background:linear-gradient(90deg,var(--build),var(--teach));opacity:0;width:0;height:2px;transition:transform .45s var(--ease),width .45s var(--ease),opacity .3s;border-radius:2px;position:absolute;bottom:4px;left:0}.nav-progress{background:linear-gradient(90deg,var(--build),var(--lead),var(--teach));transform-origin:0;height:1px;transform:scaleX(var(--prog,0));position:absolute;bottom:-1px;left:0;right:0}@media (width<=679px){.menu-btn{border:1px solid var(--line-2);min-height:44px;color:var(--fg);font:500 11.5px var(--font-mono);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:#0e172999;border-radius:999px;align-items:center;gap:10px;padding:0 14px 0 16px;display:inline-flex}.menu-btn i{width:16px;height:10px;display:block;position:relative}.menu-btn i:before,.menu-btn i:after{content:"";height:1.5px;transition:transform .35s var(--ease),top .35s var(--ease);background:currentColor;border-radius:2px;position:absolute;left:0;right:0}.menu-btn i:before{top:1px}.menu-btn i:after{top:7.5px}.nav.open .menu-btn i:before{top:4.25px;transform:rotate(45deg)}.nav.open .menu-btn i:after{top:4.25px;transform:rotate(-45deg)}.nav ul{padding:8px max(16px,env(safe-area-inset-right,0px)) 24px max(16px,env(safe-area-inset-left,0px));background:var(--ink);border-bottom:1px solid var(--line-2);opacity:0;visibility:hidden;transition:opacity .3s var(--ease),transform .35s var(--ease),visibility 0s .35s;flex-direction:column;gap:0;position:absolute;top:100%;left:0;right:0;transform:translateY(-8px);box-shadow:0 30px 60px -20px #000000b3}.nav.open ul{opacity:1;visibility:visible;transition:opacity .3s var(--ease),transform .35s var(--ease),visibility 0s;transform:none}.nav ul a{border-bottom:1px solid var(--line);min-height:60px;font-family:var(--font-display);letter-spacing:-.03em;color:var(--fg-2);justify-content:space-between;align-items:center;padding:14px 2px;font-size:28px;font-weight:600;display:flex}.nav ul li:nth-last-child(2) a{border-bottom:0}.nav ul a:after{content:"";border-top:1.5px solid var(--muted);border-right:1.5px solid var(--muted);width:9px;height:9px;margin-right:6px;transform:rotate(45deg)}.nav ul a[aria-current=true]:after{border-color:var(--build)}.nav-ink{display:none}}.eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--c,var(--teach));align-items:center;gap:10px;margin:0;font-size:12px;font-weight:500;display:flex}.live{background:var(--build);width:7px;height:7px;animation:live 2.4s var(--ease) infinite;border-radius:50%;box-shadow:0 0 #3dd6c38c}@keyframes live{70%{box-shadow:0 0 0 8px #3dd6c300}to{box-shadow:0 0 #3dd6c300}}.h2{font-family:var(--font-display);letter-spacing:-.03em;text-wrap:balance;font-variation-settings:"opsz" 96;margin:18px 0 0;font-size:clamp(2.3rem,1.3rem + 3.6vw,4.4rem);font-weight:600;line-height:1}.sec-sub{max-width:34em;color:var(--muted);margin:20px 0 0;font-size:clamp(1rem,.95rem + .3vw,1.15rem)}.block{padding-block:var(--sec-pad);position:relative}.block+.block:before{content:"";background:linear-gradient(90deg,transparent,var(--line-2) 20%,var(--line-2) 80%,transparent);width:min(1160px,92vw);height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.hero{isolation:isolate;align-items:center;min-height:clamp(640px,88vh,900px);padding-block:72px 96px;display:flex;overflow:hidden}.hero-canvas{z-index:-1;position:absolute;inset:0}.hero-canvas canvas{width:100%;height:100%;display:block}.hero:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(transparent,var(--ink));height:140px;position:absolute;inset:auto 0 0}.hero-inner{width:100%}.hero-copy{min-width:0;max-width:min(700px,58%)}.display{font-family:var(--font-display);letter-spacing:-.035em;text-wrap:balance;font-variation-settings:"opsz" 96;margin:26px 0 0;font-size:clamp(2.6rem,1rem + 4.7vw,5.6rem);font-weight:600;line-height:.96}.display em{color:var(--c);background:linear-gradient(var(--c),var(--c)) 0 96%/0% .055em no-repeat;animation:underline 1.1s 1.15s var(--ease) forwards;font-style:normal}@keyframes underline{to{background-size:100% .055em}}.js .display .w{animation:rise 1s var(--ease) both;animation-delay:calc(var(--i) * 55ms + .1s);display:inline-block}@keyframes rise{0%{opacity:0;filter:blur(8px);transform:translateY(.4em)}to{opacity:1;filter:none;transform:none}}.lede{max-width:33em;color:var(--fg-2);text-wrap:pretty;margin:28px 0 0;font-size:clamp(1.05rem,.95rem + .4vw,1.26rem);line-height:1.55}.js .hero .fade{animation:rise 1s var(--ease) both;animation-delay:var(--d,.75s)}.chips{flex-wrap:wrap;gap:10px;margin:34px 0 0;padding:0;list-style:none;display:flex}@media (width>=641px){.chips{grid-template-columns:repeat(2,max-content);display:grid}}.chip{border:1px solid var(--line-2);backdrop-filter:blur(8px);min-height:44px;color:var(--muted);transition:border-color .3s,color .3s,transform .3s var(--ease),background .3s;background:#0a112199;border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-size:13.5px;text-decoration:none;display:inline-flex}.chip b{color:var(--c);font-weight:600}.chip:hover{color:var(--fg);border-color:color-mix(in srgb,var(--c) 55%,transparent);background:color-mix(in srgb,var(--c) 8%,#0a1121b3);transform:translateY(-2px)}.cue{pointer-events:none;position:absolute;bottom:30px;left:0;right:0}.cue span{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);align-items:center;gap:12px;font-size:11px;display:inline-flex}.cue i{background:var(--line-2);width:48px;height:1px;display:block;position:relative;overflow:hidden}.cue i:after{content:"";background:var(--build);width:40%;animation:cue 2.4s var(--ease) infinite;position:absolute;inset:0}@keyframes cue{0%{transform:translate(-100%)}to{transform:translate(260%)}}.hero-stage{display:none}@media (width<=899px){.hero{min-height:0;padding-block:36px 40px;display:block}.hero-copy{max-width:none}.display{margin-top:18px}.hero-stage{height:clamp(290px,78vw,420px);margin-top:8px;display:block}.lede{margin-top:8px}.hero:after{height:32px}.cue{display:none}}@media (width<=640px){.chips{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:28px;display:grid}.chips li{display:flex}.chip{border-radius:14px;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;width:100%;min-height:68px;padding:12px 14px;font-size:13.5px;line-height:1.35}}.arc-grid{margin-top:var(--head-gap);grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:clamp(40px,7vw,112px);display:grid}.arc-sticky{top:calc(var(--nav-h) + 56px + env(safe-area-inset-top,0px));position:sticky}.arc-read{align-items:flex-end;gap:18px;min-height:96px;display:flex}.arc-num{font-family:var(--font-display);letter-spacing:-.06em;color:var(--c,var(--build));font-variant-numeric:tabular-nums;font-size:96px;font-weight:500;line-height:.78;transition:color .6s}.arc-num.tick{animation:tick .6s var(--ease)}@keyframes tick{0%{opacity:.2;transform:translateY(12px)}to{opacity:1;transform:none}}.arc-role{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:22px;font-weight:600;line-height:1.1}.arc-when{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:6px 0 0;font-size:11.5px}#stack{width:100%;max-width:330px;height:auto;margin-top:18px;display:block;overflow:visible}.slab{transition:transform .8s var(--ease)}.slab polygon{stroke-width:1px;stroke-linejoin:round;transition:fill .7s,stroke .7s,filter .7s}.slab .top{fill:#0a112140;stroke:var(--line-2);stroke-dasharray:3 5}.slab .l,.slab .r{fill:#0000;stroke:var(--line)}.slab.is-reached .top{fill:color-mix(in srgb,var(--c) 20%,var(--navy));stroke:var(--c);stroke-dasharray:none}.slab.is-reached .l{fill:color-mix(in srgb,var(--c) 42%,var(--ink));stroke:color-mix(in srgb,var(--c) 60%,transparent)}.slab.is-reached .r{fill:color-mix(in srgb,var(--c) 24%,var(--ink));stroke:color-mix(in srgb,var(--c) 50%,transparent)}.slab.is-active{transform:translateY(-12px)}.slab.is-active .top{fill:color-mix(in srgb,var(--c) 46%,var(--navy));filter:drop-shadow(0 0 16px color-mix(in srgb,var(--c) 75%,transparent))}.slab--base .top,.slab--base.is-reached .top{stroke-dasharray:4 4}.arc-cap{max-width:26em;color:var(--muted);margin:22px 0 0;font-size:14px}.steps{flex-direction:column;gap:clamp(48px,8vh,88px);margin:0;padding:0 0 0 44px;list-style:none;display:flex;position:relative}.steps:before,.rail-fill{content:"";width:1px;position:absolute;top:14px;left:11px}.steps:before{background:var(--line-2);bottom:14px}.rail-fill{height:calc((100% - 28px) * var(--p,0));background:linear-gradient(var(--build),var(--build) 40%,var(--lead) 58%,var(--teach) 78%,var(--explore));box-shadow:0 0 14px #3dd6c38c}.step{position:relative}.step-mark{border:1px solid var(--line-2);background:var(--ink);border-radius:50%;place-items:center;width:23px;height:23px;transition:border-color .5s,box-shadow .6s;display:grid;position:absolute;top:4px;left:-44px}.step-mark span{background:var(--line-2);width:7px;height:7px;transition:background .5s,transform .5s var(--ease);border-radius:50%}.step.is-reached .step-mark{border-color:var(--c)}.step.is-reached .step-mark span{background:var(--c)}.step.is-active .step-mark{box-shadow:0 0 0 7px color-mix(in srgb,var(--c) 14%,transparent),0 0 26px color-mix(in srgb,var(--c) 60%,transparent)}.step.is-active .step-mark span{transform:scale(1.35)}.step-meta{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--c);gap:16px;margin:0 0 10px;font-size:12px;display:flex}.step-n{color:var(--muted);font-variant-numeric:tabular-nums}.step-title{font-family:var(--font-display);letter-spacing:-.035em;color:var(--fg-2);text-wrap:balance;margin:0 0 12px;font-size:clamp(1.65rem,1.1rem + 1.7vw,2.6rem);font-weight:600;line-height:1.04;transition:color .5s}.step.is-active .step-title,.step.is-reached .step-title{color:var(--fg)}.step-body{max-width:33em;color:var(--fg-2);margin:0;font-size:1.06rem}.earlier{border:1px dashed color-mix(in srgb,var(--teach) 40%,transparent);background:linear-gradient(135deg,#e8935a0f,#0000 60%);border-radius:20px;margin-bottom:clamp(48px,8vh,88px);padding:28px 28px 30px 72px;position:relative}.earlier .step-mark{border-style:dashed;top:30px;left:24px}@media (width<=899px){.arc-grid{grid-template-columns:minmax(0,1fr)}.arc-panel{display:none}.earlier{padding:24px 20px 26px 60px}.earlier .step-mark{top:26px;left:18px}.step-n{border:1px solid color-mix(in srgb,var(--c) 45%,transparent);color:var(--c);border-radius:999px;padding:2px 8px}.step-meta{align-items:center}}@media (width<=640px){.steps{padding-left:40px}.step-mark{left:-40px}.step-body{font-size:1rem}}.filters{margin:var(--head-gap) 0 40px;flex-wrap:wrap;gap:8px;display:flex}.fbtn{border:1px solid var(--line-2);min-height:44px;color:var(--fg-2);font:500 14px var(--font-body);cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:9px;padding:0 18px;transition:background .3s,border-color .3s,color .3s;display:inline-flex}.fbtn i{background:var(--c);border-radius:50%;width:7px;height:7px}.fbtn[data-filter=all] i{background:conic-gradient(var(--build),var(--teach),var(--lead),var(--explore),var(--build))}.fbtn:hover{color:var(--fg);border-color:color-mix(in srgb,var(--c,var(--fg)) 50%,transparent)}.fbtn[aria-pressed=true]{color:var(--fg);background:color-mix(in srgb,var(--c,var(--build)) 13%,transparent);border-color:color-mix(in srgb,var(--c,var(--build)) 60%,transparent)}.board{gap:40px var(--gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.lane{min-width:0}.board:not([data-filter=all]){grid-template-columns:minmax(0,1fr)}.board:not([data-filter=all]) .lane:not(.on){display:none}.board:not([data-filter=all]) .lane.on .cards{grid-template-columns:repeat(3,minmax(0,1fr))}.lane-head{font:500 12.5px var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--fg);align-items:center;gap:10px;margin:0 0 16px;display:flex}.lane-head svg{color:var(--c);flex:none}.lane-head small{color:var(--muted);letter-spacing:.1em;margin-left:auto;font-size:11px}.cards{gap:var(--gap);margin:0;padding:0;list-style:none;display:grid}.cap{border:1px solid var(--line);height:100%;transition:border-color .35s,transform .35s var(--ease),box-shadow .35s;background:linear-gradient(#121d33b8,#0b1323b8);border-radius:16px;position:relative;overflow:hidden}.cap:before{content:"";pointer-events:none;opacity:0;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),color-mix(in srgb,var(--c) 20%,transparent),transparent 62%);transition:opacity .35s;position:absolute;inset:0}.cap:hover,.cap.open{border-color:color-mix(in srgb,var(--c) 45%,transparent)}.cap:hover{box-shadow:0 18px 40px -24px color-mix(in srgb,var(--c) 60%,transparent);transform:translateY(-3px)}.cap:hover:before,.cap:focus-within:before,.cap.open:before{opacity:1}.cap-label{flex-direction:column;gap:6px;min-width:0;display:flex}.cap-stat{font:500 11.5px/1.3 var(--font-mono);letter-spacing:.06em;color:var(--c);font-variant-numeric:tabular-nums}.cap-btn{width:100%;min-height:88px;color:var(--fg);font:600 15px/1.35 var(--font-body);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:16px;justify-content:space-between;align-items:center;gap:14px;padding:18px 18px 24px;display:flex;position:relative}.cap-btn:focus-visible{outline:2px solid var(--c);outline-offset:-2px}.cap-plus{border:1px solid var(--line-2);width:24px;height:24px;transition:transform .45s var(--ease),border-color .3s,background .3s;border-radius:50%;flex:none;position:relative}.cap-plus:before,.cap-plus:after{content:"";background:var(--fg-2);width:9px;height:1.5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cap-plus:after{transform:translate(-50%,-50%)rotate(90deg)}.cap.open .cap-plus{border-color:var(--c);background:color-mix(in srgb,var(--c) 18%,transparent);transform:rotate(45deg)}.cap-trace{background:var(--line-2);height:1px;position:absolute;bottom:12px;left:18px;right:18px;overflow:hidden}.cap-trace:after{content:"";background:linear-gradient(90deg,transparent,var(--c),transparent);width:45%;position:absolute;inset:0;transform:translate(-110%)}.cap:hover .cap-trace:after,.cap.open .cap-trace:after{animation:trace 1.6s var(--ease) infinite}@keyframes trace{to{transform:translate(240%)}}.cap-more{transition:grid-template-rows .5s var(--ease);grid-template-rows:0fr;display:grid}.cap.open .cap-more{grid-template-rows:1fr}.cap-more>div{visibility:hidden;transition:visibility 0s .5s;overflow:hidden}.cap.open .cap-more>div{visibility:visible;transition:visibility}.cap-more p{color:var(--fg-2);margin:0;padding:0 18px 22px;font-size:14.5px;line-height:1.55}@media (width<=1060px){.board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.board,.board:not([data-filter=all]) .lane.on .cards{grid-template-columns:minmax(0,1fr)}.filters{scrollbar-width:none;flex-wrap:nowrap;margin-left:-16px;margin-right:-16px;padding:2px 16px;scroll-padding-inline:16px;overflow-x:auto}.filters::-webkit-scrollbar{display:none}.fbtn{flex:none}.cap-btn,.cap-more p{font-size:16px}}.now-grid{gap:var(--gap);margin-top:var(--head-gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.now-card{border:1px solid var(--line);background:radial-gradient(120% 80% at 0% 0%,color-mix(in srgb,var(--c) 9%,transparent),transparent 60%),#0c142499;border-radius:22px;min-width:0;padding:30px 28px 34px;position:relative;overflow:hidden}.now-top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px;display:flex}.now-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--c);margin:0;font-size:12px}.wave{width:92px;height:22px;color:var(--c);flex:none}.wave path{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-dasharray:6 6;animation:2.8s linear infinite wave}@keyframes wave{to{stroke-dashoffset:-48px}}.now-card p.now-text{color:var(--fg);text-wrap:pretty;margin:0;font-size:clamp(1.1rem,1rem + .35vw,1.3rem);line-height:1.45}@media (width<=699px){.now-grid{grid-template-columns:minmax(0,1fr)}}@media (width>=700px) and (width<=899px){.now-card{padding:24px 22px 28px}}.posts{gap:var(--gap);margin-top:var(--head-gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.post{border:1px solid var(--line);min-width:0;transition:border-color .35s,transform .35s var(--ease);background:#0c142499;border-radius:22px;flex-direction:column;display:flex;position:relative;overflow:hidden}.post:hover{border-color:var(--line-2);transform:translateY(-3px)}.thumb{border-bottom:1px solid var(--line);background:radial-gradient(90% 120% at 50% 100%,#1c306273,transparent 70%),var(--navy);height:180px;position:relative}.thumb svg{width:100%;height:100%;position:absolute;inset:0}.post-body{flex-direction:column;flex:1;gap:10px;padding:22px 24px 24px;display:flex}.badge{color:var(--teach);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;background:#e8935a1f;border-radius:6px;align-self:flex-start;padding:4px 9px;font-size:11px}.post h3{font-family:var(--font-display);letter-spacing:-.025em;text-wrap:balance;margin:4px 0 0;font-size:1.4rem;font-weight:600;line-height:1.12}.post p{color:var(--fg-2);margin:0;font-size:15px}.post .meta{font-family:var(--font-mono);color:var(--muted);margin-top:auto;padding-top:10px;font-size:12px}@media (width<=960px){.posts{grid-template-columns:minmax(0,1fr)}}@media (width>=641px) and (width<=960px){.post{flex-direction:row}.thumb{border-bottom:0;border-right:1px solid var(--line);flex:0 0 40%;height:auto;min-height:210px}}@media (width<=640px){.post p{font-size:16px}}.t1-dot{animation:t1 5s var(--ease) infinite}@keyframes t1{0%{transform:translate(0)}30%,55%{transform:translate(90px)}85%,to{transform:translate(180px)}}.t1-check{opacity:.25;animation:5s infinite t1c}@keyframes t1c{0%,28%{opacity:.25}33%,55%{opacity:1}62%,to{opacity:.25}}.t2-arc{stroke-dasharray:214;stroke-dashoffset:160px;animation:t2 6s var(--ease) infinite}@keyframes t2{50%{stroke-dashoffset:20px}to{stroke-dashoffset:160px}}.t2-ring{transform-origin:160px 86px;animation:3s ease-out infinite t2r}@keyframes t2r{0%{opacity:.5;transform:scale(.6)}to{opacity:0;transform:scale(1.6)}}.t3-bar{transform-box:fill-box;transform-origin:50% 100%;animation:t3 4.8s var(--ease) infinite;animation-delay:calc(var(--k) * .18s)}@keyframes t3{0%{transform:scaleY(.15)}40%,80%{transform:scaleY(1)}to{transform:scaleY(.15)}}.foot{padding-block:var(--sec-pad) 40px;position:relative;overflow:hidden}.foot:before{content:"";background:linear-gradient(90deg,transparent,var(--line-2) 20%,var(--line-2) 80%,transparent);width:min(1160px,92vw);height:1px;position:absolute;top:0;left:50%;transform:translate(-50%)}.foot-loop{font-family:var(--font-display);letter-spacing:-.035em;color:#bac5d72e;flex-wrap:wrap;align-items:baseline;gap:.15em .32em;margin:0;font-size:clamp(1.75rem,.5rem + 2.75vw,3.35rem);font-weight:600;line-height:1.08;display:flex}@media (width>=900px){.foot-loop{white-space:nowrap;flex-wrap:nowrap}}.foot-loop span{transition:color .6s}.foot-loop .g{white-space:nowrap;align-items:baseline;gap:.32em;font-style:normal;display:inline-flex}.foot-loop span.on{color:var(--c)}.foot-loop b{color:#bac5d72e;font-weight:400}.foot-row{margin-top:var(--head-gap);border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding-top:20px;font-size:14px;line-height:1.4;display:flex}.foot-row p{align-items:center;min-height:44px;margin:0;display:flex}.foot-row a{color:var(--fg-2);align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.foot-row a:hover{color:var(--fg)}.foot-z{flex:none;width:20px;height:20px;margin-right:12px}@media (width<=640px){.foot-row{flex-direction:column;align-items:flex-start;gap:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.display em{background-size:100% .055em}.zpacket{display:none}}.post-link{color:inherit;align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.post-link:after{content:"";border-radius:22px;position:absolute;inset:0}.post-link:focus-visible{outline:0}.post:has(.post-link:focus-visible){outline:2px solid var(--build);outline-offset:3px}.article .eyebrow a{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.article .eyebrow a:hover{color:var(--fg)}.article .h2{margin-top:10px}.article-meta{font-family:var(--font-mono);color:var(--muted);margin:18px 0 0;font-size:12px}.prose{max-width:65ch;margin-top:var(--head-gap);font-family:var(--font-body);color:var(--fg-2);font-size:1.06rem;line-height:1.7}.prose>:first-child{margin-top:0}.prose p,.prose ul,.prose ol,.prose blockquote,.prose pre{margin:0 0 1.2em}.prose h2,.prose h3{font-family:var(--font-display);letter-spacing:-.025em;color:var(--fg);text-wrap:balance;margin:2em 0 .6em;font-weight:600;line-height:1.1}.prose h2{font-size:clamp(1.5rem,1.2rem + 1vw,2rem)}.prose h3{font-size:1.3rem}.prose strong{color:var(--fg)}.prose a{color:var(--build);text-underline-offset:3px}.prose a:hover{color:var(--fg)}.prose ul,.prose ol{padding-left:1.3em}.prose li{margin:.35em 0}.prose li::marker{color:var(--muted)}.prose blockquote{border-left:2px solid var(--teach);color:var(--fg);padding-left:18px}.prose code{font-family:var(--font-mono);background:var(--panel);color:var(--fg);border-radius:6px;padding:.1em .35em;font-size:.88em}.prose pre{border:1px solid var(--line);background:var(--navy);border-radius:16px;padding:18px 20px;font-size:14px;line-height:1.55;overflow-x:auto}.prose pre code{background:0 0;padding:0}.prose img{border-radius:16px;height:auto}.prose hr{background:var(--line-2);border:0;height:1px;margin:2.4em 0}@media (width<=640px){.prose{font-size:1rem}}.page-404{min-height:clamp(420px,62vh,680px)}.nf-back{margin:34px 0 0}@media (prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}.music{left:max(16px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom));z-index:55;position:fixed}.music-pill{border:1px solid var(--line-2);backdrop-filter:blur(14px);background:#0a1121b8;border-radius:999px;align-items:stretch;transition:border-color .3s;display:inline-flex}.music-pill:has(.music-btn[aria-pressed=true]){border-color:color-mix(in srgb,var(--build) 55%,transparent)}.music-btn,.music-next{min-height:44px;font-family:var(--font-mono);letter-spacing:.08em;cursor:pointer;background:0 0;border:0;align-items:center;font-size:12px;transition:color .3s;display:inline-flex}.music-btn{color:var(--fg-2);border-radius:999px 0 0 999px;gap:10px;padding:0 12px 0 14px}.music-btn[aria-pressed=true]{color:var(--fg)}.music-next{border-left:1px solid var(--line-2);color:var(--teach);border-radius:0 999px 999px 0;gap:6px;min-width:44px;padding:0 14px 0 12px}.music-btn:hover,.music-next:hover{color:var(--fg)}.music-btn:focus-visible,.music-next:focus-visible{outline:2px solid var(--build);outline-offset:2px}.music-genre{letter-spacing:.1em;text-transform:uppercase;font-size:11px}.music-pill{isolation:isolate}.music-btn,.music-next{box-sizing:border-box;flex:none;margin:0;position:relative}.music-next{z-index:1}.music-label{text-align:left;white-space:nowrap;min-width:calc(16ch + 1.28em);display:inline-block}.music-genre{text-align:left;white-space:nowrap;min-width:calc(10ch + 1em);display:inline-block}.music-live{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.music-eq{align-items:flex-end;gap:2px;width:14px;height:12px;display:inline-flex}.music-eq i{background:linear-gradient(var(--build),var(--teach));transform-origin:bottom;border-radius:1px;flex:1;height:30%;display:block}.music-eq i:nth-child(2){height:55%}.music-btn.is-playing .music-eq i{animation:1s ease-in-out infinite alternate eq}.music-btn.is-playing .music-eq i:first-child{animation-duration:.8s}.music-btn.is-playing .music-eq i:nth-child(2){animation-duration:1.1s;animation-delay:-.4s}.music-btn.is-playing .music-eq i:nth-child(3){animation-duration:.9s;animation-delay:-.2s}@keyframes eq{0%{height:25%}to{height:100%}}.foot-row{margin-bottom:60px}@media (width<=380px){.music-btn{gap:8px;padding:0 10px 0 12px}.music-next{padding:0 12px 0 10px}}@media (prefers-reduced-motion:reduce){.music-btn.is-playing .music-eq i{height:70%;animation:none}}.thumb svg *{transform-box:fill-box}.tx-spokes path{stroke-dasharray:90;stroke-dashoffset:0;animation:txDraw 6s var(--ease) infinite}.tx-s2{animation-delay:.4s!important}.tx-s3{animation-delay:.8s!important}.tx-s4{animation-delay:1.2s!important}.tx-s5{animation-delay:1.6s!important}.tx-s6{animation-delay:2s!important}@keyframes txDraw{0%{stroke-dashoffset:90px}25%,80%{stroke-dashoffset:0}to{stroke-dashoffset:90px}}[class^=tx-n]{fill:#0a1121;animation:6s infinite txLit}.tx-n2{animation-delay:.4s}.tx-n3{animation-delay:.8s}.tx-n4{animation-delay:1.2s}.tx-n5{animation-delay:1.6s}.tx-n6{animation-delay:2s}@keyframes txLit{0%,18%{fill:#0a1121}28%,80%{fill:#3dd6c3}to{fill:#0a1121}}.tx-pulse,.tx-pulse-c,.tx-pulse-h{transform-origin:50%;opacity:0;animation:3s ease-out infinite txPulse}@keyframes txPulse{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(2.4)}}.tx-loop-arc{stroke-dasharray:352;stroke-dashoffset:0;transform-origin:50%;animation:7s linear infinite txLoopArc;transform:rotate(-90deg)}@keyframes txLoopArc{0%{stroke-dashoffset:352px}70%,to{stroke-dashoffset:0}}.tx-orbit{transform-box:view-box;transform-origin:160px 86px;animation:7s linear infinite txSpin}@keyframes txSpin{to{transform:rotate(360deg)}}.tx-flow{animation:1.6s linear infinite txFlow}@keyframes txFlow{to{stroke-dashoffset:-18px}}.tx-choke{animation:2.4s ease-in-out infinite txChoke}@keyframes txChoke{50%{stroke-width:6px;stroke:#f2a974}}.tx-choke-ring{transform-origin:50%;animation:2.4s ease-out infinite txPulse}.tx-gate-glow{transform-origin:50%;animation:5s ease-in-out infinite txGlow}@keyframes txGlow{0%,40%{opacity:.3;transform:scale(.8)}55%,75%{opacity:1;transform:scale(1.15)}to{opacity:.3;transform:scale(.8)}}.tx-runner{transform-box:view-box;animation:txRun 5s var(--ease) infinite}@keyframes txRun{0%{transform:translate(0)}20%,30%{transform:translate(72px)}45%,70%{transform:translate(154px)}90%,to{transform:translate(236px)}}.tx-steps{stroke-dasharray:340;stroke-dashoffset:0;animation:txSteps 6s var(--ease) infinite}@keyframes txSteps{0%{stroke-dashoffset:340px}60%,90%{stroke-dashoffset:0}to{stroke-dashoffset:340px}}.tx-target{transform-origin:50%;animation:6s infinite txBeat}@keyframes txBeat{0%,55%{transform:scale(1)}62%{transform:scale(2)}70%,to{transform:scale(1)}}[class^=tx-b]{animation:txSnap 6s var(--ease) infinite}.tx-b1{--dx:-40px;--dy:-20px;--r:-8deg}.tx-b2{--dx:-56px;--dy:16px;--r:10deg;animation-delay:.15s}.tx-b3{--dx:50px;--dy:-24px;--r:12deg;animation-delay:.3s}.tx-b4{--dx:44px;--dy:22px;--r:-10deg;animation-delay:.45s}@keyframes txSnap{0%,12%{transform:translate(var(--dx),var(--dy)) rotate(var(--r));opacity:.55}38%,85%{opacity:1;transform:none}to{transform:translate(var(--dx),var(--dy)) rotate(var(--r));opacity:.55}}.tx-spiral{stroke-dasharray:420;stroke-dashoffset:0;animation:txSpiral 7s var(--ease) infinite}@keyframes txSpiral{0%{stroke-dashoffset:420px}65%,90%{stroke-dashoffset:0}to{stroke-dashoffset:420px}}.tx-up{animation:1.8s linear infinite reverse txFlow}.tx-down{animation:1.8s linear infinite txFlow}
