@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/af21ab248943f479-s.3gj6ciom31zjc.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/4ae66b896b591e96-s.0_kz_z3o_slvt.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(../media/21ca8f3f56c22ca2-s.p.1cp9-4nby68jc.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo Fallback;src:local(Arial);ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.0%;size-adjust:98.7%}.Lxw7qa_className{font-family:Archivo,Archivo Fallback;font-style:normal}.Lxw7qa_variable{--font-display:"Archivo", "Archivo Fallback"}
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.3p2_lha1f2xer.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.1qq4vpdcun5oj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.390ncx5urfkfu.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.21jp631_3pja2.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0wgildi0cnwt9.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.slFXaq_className{font-family:Geist,Geist Fallback;font-style:normal}.slFXaq_variable{--font-body:"Geist", "Geist Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/04c5164763c40239-s.1kd-r_s9smv5m.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/26f284dcc38c84c0-s.3hlisc-pwq13z.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7e7f32a39836f228-s.0-oo9_1x_xmvg.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fa39153a3fc630ba-s.36fqqi66-3tjb.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3_z45zcoc-xoz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/051742360c26797e-s.p.1bkzbscqrt8rl.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/04c5164763c40239-s.1kd-r_s9smv5m.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/26f284dcc38c84c0-s.3hlisc-pwq13z.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7e7f32a39836f228-s.0-oo9_1x_xmvg.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fa39153a3fc630ba-s.36fqqi66-3tjb.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/6a5386fd6038edbe-s.3_z45zcoc-xoz.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/051742360c26797e-s.p.1bkzbscqrt8rl.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}._7Ns5vW_className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}._7Ns5vW_variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
@layer reset{*,:before,:after,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}small{font-size:80%}ol,ul,menu{list-style:none}img,svg,video,canvas{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,textarea{font:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::placeholder{opacity:1;color:color-mix(in oklab, currentcolor 50%, transparent)}textarea{resize:vertical}[hidden]:where(:not([hidden=until-found])){display:none!important}}:root{--blue:#123a86;--paper:#edf0f2;--ink:#0f2550;--red:#ff4a2e;--line-on-blue:#edf0f247;--line-on-paper:#0f255033;--display:var(--font-display), "Archivo", system-ui, sans-serif;--body:var(--font-body), system-ui, sans-serif;--mono:var(--font-mono), ui-monospace, monospace;--ease:cubic-bezier(.2, .8, .2, 1);--gutter:clamp(18px, 3.4vw, 52px)}html{background:var(--blue);-webkit-text-size-adjust:100%}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{color:var(--paper);background:var(--blue);font:400 16px/1.6 var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}::selection{background:var(--red);color:#fff}:focus-visible{outline:2px solid var(--red);outline-offset:3px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{z-index:100;background:var(--red);color:#fff;font:500 13px var(--mono);padding:12px 16px;position:fixed;top:14px;left:14px;transform:translateY(-200%)}.skip:focus{transform:none}.mono{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:11px;line-height:1.5}.sheet{top:var(--stick,0px);min-height:100svh;padding:calc(var(--gutter) + 64px) var(--gutter) calc(var(--gutter) + 92px);isolation:isolate;position:sticky;overflow:hidden;box-shadow:0 -24px 60px #040e2852}.sheet--blue{background-color:var(--blue);color:var(--paper);--rule:var(--line-on-blue)}.sheet--paper{background-color:var(--paper);color:var(--ink);--rule:var(--line-on-paper)}.sheet:before{content:"";z-index:-1;pointer-events:none;opacity:.55;background-image:linear-gradient(var(--rule) 1px, transparent 1px), linear-gradient(90deg, var(--rule) 1px, transparent 1px);background-size:96px 96px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 18% 82%,#0000);mask-image:linear-gradient(#0000,#000 18% 82%,#0000)}.sheet--blue:before{opacity:.32}.frame{border:1px solid var(--rule);pointer-events:none;position:absolute;inset:12px}.frame:before,.frame:after{content:"";opacity:.8;border:0 solid;width:18px;height:18px;position:absolute}.frame:before{border-top-width:2px;border-left-width:2px;top:-1px;left:-1px}.frame:after{border-bottom-width:2px;border-right-width:2px;bottom:-1px;right:-1px}.title-block{border-top:1px solid var(--rule);border-left:1px solid var(--rule);font:400 10px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;grid-template-columns:auto auto auto;display:grid;position:absolute;bottom:12px;right:12px}.title-block>div{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);min-width:92px;padding:8px 12px}.title-block span{opacity:.6;font-size:9px;display:block}.title-block b{margin-top:3px;font-weight:500;display:block}.title-block .tb-sheet b{font:800 22px/1 var(--display);letter-spacing:0;font-stretch:125%}.sheet-head{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;margin-bottom:clamp(36px,6vw,80px);padding-bottom:22px;display:grid}.sheet-head h2{font:800 clamp(44px, 7.4vw, 128px)/.86 var(--display);text-transform:uppercase;letter-spacing:-.01em;font-stretch:125%}.sheet-head p{opacity:.78;text-align:right;max-width:34ch;font-size:15px;line-height:1.6}.red{color:var(--red)}.plot{position:relative}.plot-text{color:#0000}.plot-ink{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.plot-ink text{font:inherit;font-stretch:inherit;letter-spacing:inherit;fill:currentColor;fill-opacity:0;stroke:currentColor;stroke-width:1.2px;stroke-dasharray:9em;stroke-dashoffset:9em}.sheet--blue .plot{color:var(--paper)}.plot.is-drawn .plot-ink text{animation:plot-trace 1.6s cubic-bezier(.45, 0, .2, 1) forwards, plot-ink .7s 1.25s var(--ease) forwards}@keyframes plot-trace{to{stroke-dashoffset:0}}@keyframes plot-ink{to{fill-opacity:1;stroke-width:0}}@media (scripting:none){.plot-ink{display:none}.plot-text{color:inherit}}.reveal{opacity:0;transition:opacity .9s var(--ease), transform .9s var(--ease);transform:translateY(26px)}.reveal.is-in{opacity:1;transform:none}.nav{z-index:50;background:var(--paper);height:52px;color:var(--ink);border:1px solid var(--ink);justify-content:space-between;align-items:center;gap:16px;padding:0 8px 0 18px;display:flex;position:fixed;top:12px;left:12px;right:12px}.nav-mark{align-items:center;gap:12px;text-decoration:none;display:flex}.nav-mark b{font:800 19px/1 var(--display);font-stretch:125%}.nav-mark span{font:400 10px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;opacity:.6}.nav-index{gap:2px;display:flex}.nav-index a{font:400 11px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;opacity:.62;align-items:baseline;gap:6px;padding:9px 11px;text-decoration:none;transition:opacity .2s,background .2s;display:flex}.nav-index a i{opacity:.7;font-size:9px;font-style:normal}.nav-index a:hover{opacity:1}.nav-index a[aria-current=true]{opacity:1;background:var(--ink);color:var(--paper)}.nav-resume{background:var(--red);height:36px;font:500 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:8px;margin-left:auto;padding:0 14px;text-decoration:none;display:inline-flex;color:#fff!important}.nav-resume:hover{background:#e23b20}.cover{grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);column-gap:clamp(20px,4vw,64px);display:grid}.cover-meta{border-bottom:1px solid var(--rule);flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;gap:10px 24px;padding-bottom:14px;display:flex}.cover-meta span{align-items:center;gap:8px;display:inline-flex}.cover-meta .live:before{content:"";background:var(--red);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #ff4a2e40}.cover-text{z-index:2;grid-column:1;align-self:end;padding-top:40px;position:relative}.cover h1{font:800 clamp(54px, 7.4vw, 150px)/.82 var(--display);letter-spacing:-.015em;text-transform:uppercase;font-stretch:125%}.cover h1 .line{padding-bottom:.04em;display:block;overflow:hidden}.cover h1 .line>span{display:block}.cover-lede{color:#edf0f2db;max-width:44ch;margin-top:clamp(24px,3vw,40px);font-size:clamp(16px,1.3vw,19px);line-height:1.55}.cover-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.btn{height:50px;font:500 12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;transition:background .25s, color .25s, transform .25s var(--ease);border:1px solid;align-items:center;gap:12px;padding:0 22px;text-decoration:none;display:inline-flex}.btn:active{transform:translateY(1px)}.btn--solid{background:var(--paper);color:var(--ink);border-color:var(--paper)}.btn--solid:hover{background:#fff}.btn--ghost:hover{background:#edf0f21a}.btn--red{background:var(--red);border-color:var(--red);color:#fff}.btn--red:hover{background:#e23b20;border-color:#e23b20}.portrait{grid-area:2/2/4;align-self:stretch;min-height:520px;position:relative}.portrait canvas{touch-action:pan-y;width:100%;height:100%;display:block;position:absolute;inset:0}.portrait-fallback{filter:grayscale()contrast(1.1);mix-blend-mode:screen;opacity:.5;background:url(/work/portrait.jpg) 50%/contain no-repeat;position:absolute;inset:8% 6%}.portrait.is-live .portrait-fallback{display:none}.fig{font:400 10px/1.5 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#edf0f2c7;position:absolute}.fig b{color:var(--paper);font-weight:500;display:block}.fig-a{top:4%;left:2%}.fig-b{text-align:right;top:44%;right:0}.fig-c{bottom:6%;left:4%}.fig:after{content:"";background:var(--red);width:clamp(30px,5vw,80px);height:1px;position:absolute;top:50%}.fig-a:after{left:calc(100% + 10px)}.fig-b:after{right:calc(100% + 10px)}.fig-c:after{left:calc(100% + 10px)}.crosshair{width:22px;height:22px;color:var(--red);position:absolute}.crosshair:before,.crosshair:after{content:"";background:currentColor;position:absolute}.crosshair:before{width:1px;top:0;bottom:0;left:50%}.crosshair:after{height:1px;top:50%;left:0;right:0}.ch-1{top:0;right:0}.ch-2{bottom:0;right:30%}.profile{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:clamp(32px,6vw,110px);display:grid}.statement{font:500 clamp(28px, 3.6vw, 60px)/1.12 var(--display);letter-spacing:-.02em;font-stretch:100%}.statement .w{opacity:.14;transition:opacity .2s linear}.statement .w.on{opacity:1}.statement em{color:var(--red);font-style:normal}.notes h3{border-bottom:1px solid var(--rule);margin-bottom:6px;padding-bottom:12px}.notes li{border-bottom:1px solid var(--rule);grid-template-columns:34px 1fr;gap:8px;padding:14px 0;font-size:15px;line-height:1.5;display:grid}.notes li>span:first-child{font:500 11px/1.7 var(--mono);color:var(--red)}.notes small{font:400 11px/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;opacity:.6;margin-top:2px;display:block}.why{border-top:2px solid var(--ink);margin-top:clamp(60px,8vw,120px);padding-top:18px}.why h3{color:var(--red);margin-bottom:clamp(20px,3vw,36px)}.why-body{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:clamp(24px,4vw,64px);display:grid}.why-lead{font:800 clamp(24px, 2.4vw, 40px)/1.02 var(--display);text-transform:uppercase;font-stretch:112%}.why-text p{font-size:15.5px;line-height:1.7}.why-text p+p{margin-top:14px}.legend{border-top:1px solid var(--rule);margin:0}.legend>div{border-bottom:1px solid var(--rule);padding:12px 0}.legend dt{font:500 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:10px;display:flex}.legend dd{opacity:.8;margin:6px 0 0 30px;font-size:14px;line-height:1.5}.lg{flex-shrink:0;width:20px;height:14px;display:inline-block}.lg-sheet{border:1.5px solid var(--ink);box-shadow:3px -3px 0 -1.5px var(--paper), 3px -3px 0 0 var(--ink)}.lg-red{background:var(--red);height:2px}.lg-flow{border:1.5px solid var(--ink);background:linear-gradient(var(--ink), var(--ink)) center / 6px 1.5px no-repeat}.lg-stamp{border:2px solid var(--red);transform:rotate(-9deg)}.register{border-top:1px solid #edf0f299}.register-head,.entry-row button{grid-template-columns:92px minmax(0,1.5fr) minmax(0,.9fr) minmax(0,1.1fr) 40px;align-items:center;gap:20px;display:grid}.register-head{border-bottom:1px solid var(--rule);opacity:.6;padding:12px 0}.entry{border-bottom:1px solid var(--rule)}.entry-row{margin:0}.entry-row button{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:clamp(20px,2.4vw,32px) 0;position:relative}.entry-row button:after{content:"";background:var(--red);transform-origin:0;height:2px;transition:transform .6s var(--ease);position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.entry-row button:hover:after,.is-open .entry-row button:after{transform:scaleX(1)}.entry-no{color:#edf0f299;transition:color .3s}.entry-name{font:800 clamp(28px, 3.5vw, 60px)/.9 var(--display);text-transform:uppercase;letter-spacing:-.01em;transition:transform .5s var(--ease);font-stretch:118%}.entry-kind,.entry-stack{opacity:.7}.entry-icon{transition:transform .5s var(--ease), color .3s;justify-self:end}.entry-row button:hover .entry-no,.is-open .entry-no,.is-open .entry-icon{color:var(--red)}.entry-row button:hover .entry-name{transform:translate(10px)}.is-open .entry-icon{transform:rotate(45deg)}.entry-body{transition:grid-template-rows .6s var(--ease);grid-template-rows:0fr;display:grid}.is-open .entry-body{grid-template-rows:1fr}.entry-inner{min-height:0;overflow:hidden}.detail{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(28px,5vw,90px);padding:12px 0 clamp(40px,5vw,64px) 112px;display:grid}.detail-tagline{font:500 11px/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--red);margin-bottom:10px}.detail dl>div{border-top:1px solid var(--rule);grid-template-columns:120px minmax(0,1fr);gap:16px;padding:14px 0;display:grid}.detail dt{opacity:.62;padding-top:3px}.detail dd{color:#edf0f2e6;margin:0;font-size:15px;line-height:1.6}.detail .tags{margin-top:18px}.detail-links{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.tags{flex-wrap:wrap;gap:6px;display:flex}.tags li{border:1px solid var(--rule);font:400 11px/1.3 var(--mono);padding:4px 8px}.schematic{background:#0d2c6973;border:1px solid #edf0f280;align-self:start;padding:18px 20px 22px}.schematic figcaption{border-bottom:1px solid var(--rule);opacity:.7;justify-content:space-between;gap:12px;margin-bottom:18px;padding-bottom:14px;display:flex}.flow{display:grid}.step{opacity:0;transition:opacity .45s var(--ease), transform .45s var(--ease);grid-template-columns:34px minmax(0,1fr);align-items:start;padding-bottom:22px;transition-delay:0s;display:grid;position:relative;transform:translateY(8px)}.step:last-child{padding-bottom:0}.is-open .step{opacity:1;transition-delay:calc(var(--i) * 90ms + .2s);transform:none}.step-no{opacity:.55;padding-top:12px}.step-box{transition:background .35s var(--ease), color .35s var(--ease), border-color .35s;background:var(--blue);border:1px solid #edf0f299;padding:10px 14px;display:block;position:relative}.step-box b{font:600 15px/1.3 var(--body);display:block}.step-box small{font:400 11px/1.4 var(--mono);letter-spacing:.04em;opacity:.7;margin-top:3px;display:block}.step:not(:last-child):before{content:"";background:#edf0f299;width:1px;height:18px;position:absolute;bottom:2px;left:56px}.step:not(:last-child):after{content:"";border:4px solid #0000;border-top:6px solid #edf0f2cc;border-bottom:0;position:absolute;bottom:0;left:52px}.step--accent .step-box{border-color:var(--red);box-shadow:4px 4px 0 var(--red)}.flow-wrap{position:relative}.is-running .step:not(.is-active):not(.is-passed) .step-box{opacity:.55}.step.is-active .step-box{background:var(--red);border-color:var(--red);color:#fff}.step.is-active .step-box small{opacity:.9}.step.is-passed .step-box{border-color:var(--paper)}.step.is-passed .step-no:after{content:" ✓";color:var(--red)}.packet{background:var(--red);pointer-events:none;width:12px;height:12px;transition:transform .7s cubic-bezier(.65,0,.35,1),opacity .3s;position:absolute;top:-6px;left:28px;box-shadow:0 0 0 4px #ff4a2e40}.flow-compact{display:none}.run-bar{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:14px;margin:-4px 0 20px;padding-bottom:14px;display:flex}.run-log{min-height:3em;font:400 13px/1.5 var(--body);color:#edf0f2d9}.run-btn{background:var(--paper);height:40px;color:var(--ink);font:500 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:0;flex-shrink:0;align-items:center;gap:8px;padding:0 16px;display:inline-flex}.run-btn:hover{background:#fff}.run-btn:disabled{color:var(--paper);border:1px solid var(--rule);cursor:progress;background:0 0}.step--accent .step-box b:after{content:"Key";vertical-align:2px;background:var(--red);color:#fff;font:500 9px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;margin-left:10px;padding:2px 6px}.chart{margin-bottom:clamp(40px,6vw,80px);position:relative}.chart-axis{border-top:1px solid var(--ink);grid-template-columns:repeat(11,1fr);display:grid}.chart-axis span{border-left:1px solid var(--rule);font:400 10px var(--mono);letter-spacing:.08em;padding-top:8px;padding-left:6px}.chart-rows{gap:14px;margin-bottom:16px;display:grid;position:relative}.span{height:34px;position:relative}.span-bar{height:1px;top:18px;left:var(--from);width:var(--len);transform-origin:0;background:currentColor;position:absolute}.span-bar:before,.span-bar:after{content:"";background:currentColor;width:1px;height:13px;position:absolute;top:-6px}.span-bar:before{left:0}.span-bar:after{right:0}.span-bar.open:after{display:none}.span-bar.open{background:linear-gradient(90deg,currentColor 70%,#0000)}.span-label{top:0;left:var(--from);white-space:nowrap;font:500 11px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;position:absolute}.span--work{color:var(--red)}.span--now .span-label:after{content:"Now";background:var(--red);color:#fff;margin-left:8px;padding:2px 6px;font-size:9px}.roles{display:grid}.role{border-top:1px solid var(--rule);grid-template-columns:minmax(0,.9fr) minmax(0,2fr);gap:clamp(20px,4vw,70px);padding:clamp(26px,3vw,40px) 0;display:grid}.role:last-child{border-bottom:1px solid var(--rule)}.role-meta h3{font:800 clamp(30px, 3.4vw, 56px)/.9 var(--display);text-transform:uppercase;font-stretch:118%}.role-meta p{margin-top:10px}.role-meta .role-title{font:500 16px/1.4 var(--body);text-transform:none;letter-spacing:0;margin-top:12px}.role ul{gap:10px;display:grid}.role li{padding-left:22px;font-size:15px;line-height:1.6;position:relative}.role li:before{content:"";background:var(--red);width:12px;height:1px;position:absolute;top:.72em;left:0}.bom{border-top:1px solid #edf0f299;border-left:1px solid var(--rule);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.bom-group{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}.bom-group h3{border-bottom:1px solid var(--rule);font:800 18px/1.1 var(--display);text-transform:uppercase;justify-content:space-between;gap:12px;padding:14px 16px;font-stretch:112%;display:flex}.bom-group h3 span{font:400 10px/1.8 var(--mono);letter-spacing:.1em;opacity:.7}.bom-group li{font:400 13px/1.4 var(--mono);border-bottom:1px solid #edf0f21a;grid-template-columns:52px 1fr;gap:8px;padding:9px 16px;transition:background .2s;display:grid}.bom-group li:last-child{border-bottom:0}.bom-group li:hover{background:#edf0f212}.bom-group li span{opacity:.55;font-size:11px}.contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:start;gap:clamp(32px,5vw,90px);display:grid}.contact-grid>.contact-big{grid-column:1/-1}.contact-big{font:800 clamp(48px, 10.4vw, 200px)/.82 var(--display);text-transform:uppercase;letter-spacing:-.015em;font-stretch:125%}.contact-direct{margin-top:0}.email-row{flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px;display:flex}.email{font:500 clamp(18px, 2vw, 28px)/1.2 var(--body);border-bottom:1px solid var(--red);overflow-wrap:anywhere;text-decoration:none}.copy{border:1px solid var(--rule);height:38px;font:500 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;align-items:center;gap:8px;padding:0 12px;display:inline-flex}.copy:hover{border-color:currentColor}.links{border-top:1px solid var(--rule);margin-top:30px;display:grid}.links a{border-bottom:1px solid var(--rule);font:500 15px var(--body);transition:padding .3s var(--ease), color .2s;justify-content:space-between;align-items:center;padding:15px 0;text-decoration:none;display:flex}.links a:hover{color:var(--red);padding-left:10px}.rfi{border:1px solid #edf0f299}.rfi-head{border-bottom:1px solid #edf0f299;justify-content:space-between;padding:12px 16px;display:flex}.rfi-row{grid-template-columns:1fr 1fr;display:grid}.field{border-bottom:1px solid var(--rule);position:relative}.rfi-row .field+.field{border-left:1px solid var(--rule)}.field label{font:400 10px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;opacity:.7;position:absolute;top:10px;left:16px}.field input,.field textarea{background:0 0;border:0;border-radius:0;width:100%;padding:30px 16px 14px;font-size:16px;display:block}.field textarea{resize:vertical;min-height:150px}.field input::placeholder,.field textarea::placeholder{color:#edf0f273}.field:focus-within{background:#edf0f20f}.field:focus-within label{opacity:1;color:var(--red)}.field input:focus,.field textarea:focus{outline:none}.rfi-foot{justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.rfi-foot p{opacity:.7;max-width:36ch;font-size:12px;line-height:1.5}.rfi button[type=submit]{background:var(--red);color:#fff;height:48px;font:500 12px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:0;flex-shrink:0;padding:0 22px}.rfi button[type=submit]:hover{background:#e23b20}.rfi button[type=submit]:disabled{opacity:.6;cursor:progress}.status:not(:empty){border-top:1px solid var(--rule);font:400 13px/1.5 var(--body);padding:12px 16px}.status.error{color:#ffb4a5}.stamp{z-index:3;border:3px solid var(--red);color:var(--red);font:800 26px/1 var(--display);text-transform:uppercase;letter-spacing:.04em;opacity:0;pointer-events:none;padding:12px 18px;font-stretch:125%;position:absolute;top:clamp(110px,16vh,180px);right:clamp(24px,6vw,110px);transform:rotate(-9deg)scale(2.4)}.stamp small{font:500 10px/1 var(--mono);letter-spacing:.14em;margin-top:4px;display:block}.stamp.is-down{animation:.42s cubic-bezier(.3,1.6,.5,1) forwards stamp}@keyframes stamp{0%{opacity:0;transform:rotate(-9deg)scale(2.4)}60%{opacity:1;transform:rotate(-9deg)scale(.94)}to{opacity:.92;transform:rotate(-9deg)scale(1)}}.colophon{border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:clamp(60px,8vw,110px);padding-top:16px;display:flex}.sheet-tab{display:none}@media (max-width:820px){.sheet-tab{z-index:60;pointer-events:none;display:block;position:fixed;bottom:0;left:0;right:0}.sheet-tab>*{pointer-events:auto}.sheet-tab-pill{left:50%;bottom:calc(16px + env(safe-area-inset-bottom));background:var(--paper);height:48px;color:var(--ink);border:1px solid var(--ink);font:600 15px/1 var(--body);cursor:pointer;transition:transform .35s var(--ease);white-space:nowrap;align-items:center;gap:10px;padding:0 16px 0 18px;display:flex;position:absolute;overflow:hidden;transform:translate(-50%);box-shadow:0 10px 30px #040e2859}.sheet-tab-pill .mono{color:var(--red);font-size:11px}.sheet-tab-pill svg{transition:transform .35s var(--ease)}.is-open .sheet-tab-pill svg{transform:rotate(180deg)}.sheet-tab-pill i{background:var(--red);transform-origin:0;height:2px;position:absolute;bottom:0;left:0;right:0}.sheet-tab-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade .25s var(--ease);background:#040e288c;border:0;position:fixed;inset:0}.sheet-tab-panel{left:12px;right:12px;bottom:calc(76px + env(safe-area-inset-bottom));background:var(--paper);color:var(--ink);border:1px solid var(--ink);animation:rise-up .35s var(--ease);padding:16px 18px 8px;position:absolute}.sheet-tab-panel[hidden]{display:none}.sheet-tab-panel>p{border-bottom:1px solid var(--line-on-paper);opacity:.7;padding-bottom:10px}.sheet-tab-panel a{border-bottom:1px solid var(--line-on-paper);font:800 22px/1 var(--display);text-transform:uppercase;align-items:baseline;gap:14px;padding:14px 4px;font-stretch:112%;text-decoration:none;display:flex}.sheet-tab-panel li:last-child a{border-bottom:0}.sheet-tab-panel a .mono{color:var(--red);font-size:11px;font-weight:500}.sheet-tab-panel a[aria-current=true]{background:var(--ink);color:var(--paper);padding-left:12px}@keyframes rise-up{0%{opacity:0;transform:translateY(16px)}}@keyframes fade{0%{opacity:0}}}@media (scripting:enabled){html:not(.loaded) .cover h1 .line>span{transform:translateY(105%)}html:not(.loaded) :is(.cover-meta,.cover-lede,.cover-actions,.fig){opacity:0}html:not(.loaded) :is(.cover h1 .line>span,.cover-meta,.cover-lede,.cover-actions,.fig){animation:0s 3s forwards reveal-fallback}}@keyframes reveal-fallback{to{opacity:1;transform:none}}.loaded .cover h1 .line>span{transition:transform 1.2s var(--ease)}.loaded .cover h1 .line:nth-child(2)>span{transition-delay:.12s}.loaded :is(.cover-meta,.cover-lede,.cover-actions,.fig){transition:opacity .9s .5s var(--ease)}@media (max-width:1100px){.nav-index a span{display:none}.bom{grid-template-columns:repeat(2,minmax(0,1fr))}.detail{padding-left:0}}@media (max-width:820px){.nav{height:48px}.nav nav,.nav-mark span{display:none}.nav{padding:0 6px 0 14px}.nav-mark b{font-size:17px}.nav-resume{height:34px;padding:0 11px}.sheet{padding-top:92px;padding-bottom:150px}.title-block{left:12px;bottom:calc(80px + env(safe-area-inset-bottom));grid-template-columns:repeat(3,minmax(0,1fr))}.title-block>div{min-width:0;padding:7px 9px}.cover{grid-template-rows:auto auto auto;grid-template-columns:minmax(0,1fr)}.cover h1{font-size:12.6vw}.portrait{width:calc(100% + 16px);min-height:0;height:min(calc(100vw - 2 * var(--gutter) + 16px), 560px);grid-area:2/1;align-self:start;margin:18px -8px 0}.cover-text{grid-row:3;padding-top:6px}.fig-b{display:none}.profile,.contact-grid,.role,.why-body{grid-template-columns:minmax(0,1fr)}.contact-big{font-size:9.6vw}.sheet-head{grid-template-columns:minmax(0,1fr)}.sheet-head p{text-align:left}.register-head{display:none}.entry-row button{grid-template-columns:minmax(0,1fr) 28px;grid-template-areas:"no icon""name icon";gap:8px 12px}.entry-no{grid-area:no}.entry-name{grid-area:name}.entry-icon{grid-area:icon}.entry-kind,.entry-stack{display:none}.detail{grid-template-columns:minmax(0,1fr)}.schematic .run-bar,.schematic .flow-wrap{display:none}.schematic{padding:14px 16px}.schematic figcaption{margin-bottom:12px;padding-bottom:10px}.flow-compact{font:500 13px/1.4 var(--body);flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0;padding:0;list-style:none;display:flex}.flow-compact li{align-items:center;gap:8px;display:inline-flex}.flow-compact li+li:before{content:"→";color:var(--red)}.flow-compact .is-key{color:var(--red)}.detail dl>div{grid-template-columns:minmax(0,1fr);gap:4px}.chart-rows{gap:18px}.span{height:auto;padding-bottom:16px}.span-label,.span-label[style]{white-space:normal;font-size:10px;line-height:1.4;display:block;position:static}.span-bar{top:auto;bottom:4px}.chart-axis span:nth-child(2n){color:#0000}.chart-axis span{padding-left:3px;font-size:9px}.bom,.rfi-row{grid-template-columns:1fr}.rfi-row .field+.field{border-left:0}.rfi-foot{flex-direction:column;align-items:stretch}.stamp{top:auto;bottom:200px;right:30px}}@media (max-width:520px){.sheet-head h2,.entry-name,.role-meta h3{overflow-wrap:anywhere;font-stretch:100%}.sheet-head h2{font-size:min(13vw,64px)}.sheet-head h2#experience-title,.sheet-head h2#materials-title{font-size:min(10.4vw,64px)}.entry-name{overflow-wrap:normal;font-size:clamp(18px,6.6vw,34px)}.schematic figcaption span:last-child{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.reveal{opacity:1;transform:none}.plot-ink text{stroke-dashoffset:0;fill-opacity:1;stroke-width:0}.statement .w{opacity:1}}
