@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2)format("woff2-variations");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:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2)format("woff2-variations");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2)format("woff2-variations");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-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQQAAAQuAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVF4AdBEICoRkhAALIAABNgIkAzoEIAWFAAeBFAwHG2oHKJ6DceNW4lJEFHn9tEOE37LNsvkjHr7f739rn3u+OSrSxLQytE91Dw2PYtNVq3Qaw/vJ7fUBMdOj/u2ImB98cT5WUx9F13ZKt06mU7tG1sAYcM26yCRX4f/0904bmwq8hwkUUMTRX61pa9C3xlpAGYw1vOu8C2SBZZFlld7DAW82RJWmwYMI1AJCKBNCIASqdZGFmtPSNQRhMpR0EKjWTwm6z6sJ+4jqhxjovTinVdRpZaQjaQzAYjI8NgAKDJCokgunCn9oUQE8VZd/F//+v6P4F1U9gLr58yNI/dJX9BAshEoJbTDogz7ocKoUsPvES8UK/aQIUQgpGgECBVLkOEV6iASTYgNAPKdNXayhDPL7IJuAZnEYSZ0eOLc9i5Rv5/+lEi3sW/kfnCf/+fTe0sxS7CKLx5erRJkKOixEqQaoqrvx5HN4iz4VhX0gS6DjFIWUzn/fIXJRVFY1NFRVNVeFt+SYmrK6vCU6eJsnKnJj5HTESMTQZOTI3Y/tzr3rUcOsiRy/ciP50s3Mycgxmhz9GMXhjzVH30ut796NHP0UUa31/Zoa6vCH6iPvdIM0IRANaT60FablmZlZd+UKNFy9NrvnFGxb5NC2CRxR0/rIyF/WNn+35sv9r+tHVhkseuWGKkCPPh96+GXt8Lc/Sh24ujfjf+tNw1lZWreiPuHb/PSpyjdv2rf/++ZE5TSKjFdZxYsBvr1sEHl5STuHZqYR7jGYGvGBBdjcaB5bODY1GAxMjsd0wDMIzXAXODRd74DxNMtO4YuYHclgLQRzp9KlUmxptCwv9bYgvWGD2xBW7r9413fdJu+mxzvzAUYeeONQvZP4kgfqZle4jhH/MWh+UbxgtJdrLdXLymNL53PRU0D3Q6FcXTfGqGcul6vrqhgLGAVSv+IVIfZOHpu+mlLqSlnj903j8mazXDsba/wbxhS/4Oubh1c5/uXDgt4j5KtnGEy5BIJHo0ur+jD+r2qCkuP1aRVM8EpUoRYSJyqNRA38uwDvHBNo0AejO2Z+ZYLLal1QiFyFh1EDQOgSCSCpjwwKU8yDbIjroEwne0G5Qca49cYp4AlqtQNZfWTQoFb1tRpFYAmRD+HXTkV4uQhG2bg4OKmyoypAsUGtWgQXyFxYrkpODeUxvGqIZA61erXo0sFG1UBGuPgpuon8RNUG2DhovAjZCBuZwtXrU3mQGki9+pm0eVZAXoWxLWTQoYHBPrJR4WunNxIFbCHfkTyPK+sqxjxDmGArZvf79JGJ3GwEqjwc7a7NIrl/7bJ7Nzu4+n1Ow6shEPnUrtVo7cnd5Wi5qCUbBIQbNKCP95FMCSZylEV5VCiiMqqiOmrKZ/I/C0gI1fyuulVcM2E1r4MhtcV/fbCD+HwEvVzH1dGNAzFE0FTbKzyQz3gootrNbN2a4PuG0j0JOgE=)format("woff2"),url(data:font/woff;base64,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)format("woff");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-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff");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-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff)format("woff");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-display:swap;font-weight:400;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff)format("woff");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-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff)format("woff");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff");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}:root{--bg:#030305;--ink:#e9edf6;--dim:#e9edf680;--faint:#e9edf638;--sans:"Space Grotesk Variable", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace;--gutter:clamp(20px, 3vw, 44px)}*{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg)}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;cursor:crosshair;overflow-x:hidden}body:not(.ready){overflow:hidden}html{scrollbar-width:none}html::-webkit-scrollbar{display:none}::selection{color:#000;background:#fff}.stage{z-index:0;position:fixed;inset:0}.track{pointer-events:none;width:1px;position:relative}.chapters{z-index:2;pointer-events:none;position:fixed;inset:0}.beat{padding:0 var(--gutter);will-change:opacity, transform, filter;flex-direction:column;justify-content:center;display:flex;position:absolute;inset:0}.beat--identity,.beat--center{text-align:center;align-items:center}.beat--left{align-items:flex-start;padding-left:clamp(24px,9vw,160px)}.eyebrow{font-family:var(--mono);letter-spacing:.32em;color:var(--dim);margin-bottom:clamp(1rem,3.2vh,2.2rem);font-size:11px}.name{letter-spacing:.06em;white-space:nowrap;text-shadow:0 0 60px #03030599;font-size:clamp(2.4rem,min(11.5vw,19vh),11rem);font-weight:300;line-height:1}.name span{opacity:0;display:inline-block}.lede{text-shadow:0 0 24px #030305,0 0 48px #030305;color:#e9edf6b8;margin-top:clamp(1.4rem,11vh,9rem);font-size:clamp(.95rem,1.35vw,1.2rem);font-weight:300;line-height:1.6}.hint{font-family:var(--mono);letter-spacing:.35em;text-transform:uppercase;color:var(--dim);align-items:center;gap:14px;margin-top:clamp(1.2rem,6vh,4.5rem);font-size:10px;display:flex}.hint i{background:linear-gradient(var(--ink), transparent);transform-origin:top;width:1px;height:34px;animation:2.2s ease-in-out infinite drip}@keyframes drip{0%{transform:scaleY(0)}55%{transform:scaleY(1)}to{opacity:0;transform:scaleY(1)}}.display{letter-spacing:-.02em;font-size:clamp(2.2rem,min(8vw,14vh),7.5rem);font-weight:300;line-height:1}.display--sm{font-size:clamp(1.7rem,min(5vw,9vh),4.5rem)}.statement{letter-spacing:-.015em;font-size:clamp(1.6rem,min(4.2vw,8vh),4rem);font-weight:300;line-height:1.12}.aside{max-width:30rem;color:var(--dim);margin-top:2rem;font-size:.95rem;font-weight:300;line-height:1.7}.beat--tech-title{padding:clamp(84px, 16vh, 150px) var(--gutter) 0;justify-content:flex-start;align-items:flex-start}.beat--tech-readout{text-align:left;justify-content:flex-end;align-items:flex-start;padding-bottom:clamp(72px,14vh,150px)}.tech-label{font-family:var(--mono);letter-spacing:.26em;text-transform:uppercase;color:var(--ink);white-space:nowrap;text-shadow:0 0 12px #030305;opacity:0;font-size:10px;transition:opacity .4s}.readout{max-width:26rem;min-height:6.5rem;transition:opacity .4s}.readout__meta{font-family:var(--mono);letter-spacing:.3em;text-transform:uppercase;color:var(--dim);font-size:10px}.readout__desc{margin-top:1rem;font-size:clamp(1.05rem,1.7vw,1.4rem);font-weight:300;line-height:1.4}.readout__links{font-family:var(--mono);letter-spacing:.16em;color:var(--dim);text-transform:uppercase;margin-top:1rem;font-size:10px}.beat--world{justify-content:center}.beat--world-left{align-items:flex-start;padding-left:clamp(24px,6vw,110px)}.beat--world-right{align-items:flex-end;padding-right:clamp(24px,6vw,110px)}.project{max-width:25rem}.beat--world-right .project{text-align:left}.project__name{letter-spacing:.04em;font-size:clamp(2.2rem,min(6.2vw,10vh),5.6rem);font-weight:300;line-height:1}.project__role{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--dim);margin-top:1rem;font-size:11px}.project__blurb{color:#e9edf6c7;margin-top:1.6rem;font-size:1rem;font-weight:300;line-height:1.6}.project__layers{gap:.9rem;margin-top:2rem;list-style:none;display:grid}.project__layers li{grid-template-columns:2rem 1fr;align-items:baseline;column-gap:.4rem;display:grid}.project__layers i{font-style:normal;font-family:var(--mono);color:var(--dim);grid-row:span 2;font-size:10px}.project__layers b{letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;font-weight:400}.project__layers span{color:var(--dim);font-size:.82rem;font-weight:300;line-height:1.45}.project__stack{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--dim);margin-top:2rem;font-size:10px;line-height:1.9}.world-label{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--ink);white-space:nowrap;opacity:0;text-shadow:0 0 12px #030305;font-size:10px}.world-label i{color:var(--dim);margin-right:.6em;font-style:normal}@media (width<=900px){.beat--world-left,.beat--world-right{padding:0 var(--gutter) 9vh;justify-content:flex-end;align-items:flex-start}.project__layers{display:none}.project{max-width:100%}}.beat--eng{justify-content:center;align-items:flex-start;padding-left:clamp(24px,6vw,110px)}.engineering{max-width:27rem}.principles{gap:1.3rem;margin-top:clamp(1.2rem,4vh,2.6rem);list-style:none;display:grid}.principles li{opacity:.3;grid-template-columns:2rem 1fr;column-gap:.4rem;transition:opacity .5s;display:grid}.principles li.is-active{opacity:1}.principles i{font-style:normal;font-family:var(--mono);color:var(--dim);grid-row:span 2;padding-top:.2rem;font-size:10px}.principles b{letter-spacing:.14em;text-transform:uppercase;font-size:.92rem;font-weight:400}.principles span{color:var(--dim);max-height:0;margin-top:.3rem;font-size:.86rem;font-weight:300;line-height:1.5;transition:max-height .6s;overflow:hidden}.principles li.is-active span{max-height:6rem}.beat--caption{padding:0 var(--gutter) clamp(72px, 14vh, 150px);justify-content:flex-end;align-items:flex-start}.caption{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink);text-shadow:0 0 18px #030305;font-size:11px}.caption i{color:var(--dim);margin-right:1.2em;font-style:normal}.caption span{max-width:26rem;font-family:var(--sans);letter-spacing:0;text-transform:none;color:var(--dim);margin-top:.9rem;font-size:.9rem;font-weight:300;line-height:1.5;display:block}.human{color:#ffe9d2d1;font-size:clamp(1.1rem,2vw,1.6rem);font-weight:300;line-height:1.6}.philosophy{letter-spacing:-.015em;max-width:46rem;font-size:clamp(1.5rem,min(3.8vw,7vh),3.3rem);font-weight:300;line-height:1.22}.philosophy span{opacity:.07}.statement--sm{color:var(--dim);font-size:clamp(1.3rem,2.6vw,2.2rem)}.beat--contact{justify-content:center;align-items:flex-start;padding-left:clamp(24px,7vw,130px)}.contact form{pointer-events:auto;grid-template-columns:1fr 1fr;gap:clamp(.9rem,2.4vh,1.6rem) 1.8rem;margin-top:clamp(1.2rem,4vh,2.6rem);display:grid}.contact label{gap:.5rem;display:grid}.contact label.wide{grid-column:span 2}.contact label span{font-family:var(--mono);letter-spacing:.28em;text-transform:uppercase;color:var(--dim);font-size:10px}.contact input,.contact textarea{border:0;border-bottom:1px solid var(--faint);width:100%;min-width:0;color:var(--ink);font:inherit;resize:none;cursor:text;background:0 0;outline:none;padding:.4rem 0 .6rem;font-size:1.05rem;font-weight:300;transition:border-color .3s}.contact input:focus,.contact textarea:focus{border-color:var(--ink)}.contact button{border:1px solid var(--faint);color:var(--ink);font-family:var(--mono);letter-spacing:.28em;text-transform:uppercase;cursor:pointer;background:0 0;grid-column:span 2;justify-self:start;margin-top:.4rem;padding:1.05rem 1.6rem;font-size:11px;transition:background .3s,color .3s,border-color .3s}.contact button:hover:not(:disabled){background:var(--ink);color:#030305;border-color:var(--ink)}.contact button:disabled{opacity:.6;cursor:default}@media (width<=900px){.beat--eng,.beat--contact{padding:0 var(--gutter) 6vh;justify-content:flex-end;align-items:flex-start}.principles span{display:none}.contact form{grid-template-columns:1fr;gap:1.1rem;margin-top:1.4rem}.contact label.wide,.contact button{grid-column:auto}.contact .display{font-size:2.4rem}}.reveal{opacity:0;transition:opacity 2.2s 1.2s}body.ready .reveal{opacity:1}.hud{z-index:3;pointer-events:none;font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--dim);opacity:0;font-size:10px;transition:opacity 1.6s .6s;position:fixed;inset:0}body.ready .hud{opacity:1}.hud__tl{top:var(--gutter);left:var(--gutter);flex-direction:column;gap:6px;display:flex;position:absolute}.hud__tl b{color:var(--ink);letter-spacing:.4em;font-weight:400}.hud__tr{top:var(--gutter);right:var(--gutter);position:absolute}.hud__bl{bottom:var(--gutter);left:var(--gutter);white-space:pre;font-variant-numeric:tabular-nums;position:absolute}.hud__rail{right:var(--gutter);bottom:var(--gutter);background:var(--faint);width:1px;height:96px;position:absolute}.hud__rail div{background:var(--ink);transform-origin:top;width:100%;height:100%;transform:scaleY(var(--p,0))}.boot{z-index:10;pointer-events:none;font-family:var(--mono);letter-spacing:.14em;color:var(--dim);font-size:11px;position:fixed;inset:0}.boot__log{left:var(--gutter);bottom:var(--gutter);flex-direction:column;gap:7px;display:flex;position:absolute}.boot__log div:before{content:"> ";color:var(--dim)}.boot__count{top:var(--gutter);right:var(--gutter);color:var(--ink);font-size:clamp(2.4rem,6vw,5rem);font-weight:300;font-family:var(--sans);letter-spacing:.02em;font-variant-numeric:tabular-nums;position:absolute}.boot__count em{color:var(--dim);margin-left:6px;font-size:.35em;font-style:normal}.boot__skip{right:var(--gutter);bottom:var(--gutter);letter-spacing:.3em;text-transform:uppercase;color:var(--dim);font-size:10px;position:absolute}@media (width<=640px){.hud__bl{display:none}.name{letter-spacing:.02em;font-size:12vw}}@media (prefers-reduced-motion:reduce){.hint i{animation:none}}@media (width<=900px){.hud__rail{width:auto;height:2px;bottom:0;left:0;right:0}.hud__rail div{transform-origin:0;transform:scaleX(var(--p,0))}}@media (height<=820px){.project__layers span{display:none}.project__layers{gap:.5rem;margin-top:1.2rem}.project__blurb{margin-top:1rem;font-size:.92rem}.project__stack{margin-top:1.2rem}.readout{min-height:0}.readout__links{display:none}.principles{gap:.9rem}}@media (height<=640px){.project__layers,.principles span,.caption span{display:none}.beat--tech-readout,.beat--caption{padding-bottom:64px}}@media (height<=480px){.project__blurb,.readout__desc{display:none}.beat--tech-title{padding-top:72px}.beat--tech-readout,.beat--caption{padding-bottom:52px}.lede{display:none}.hint{margin-top:1.4rem}}@media (height<=520px){.beat--contact{justify-content:center}.contact .contact__sub,.contact .contact__rows{display:none}.contact .letter__line{line-height:1.7}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:1px solid var(--ink);outline-offset:4px}.contact input:focus-visible,.contact textarea:focus-visible{outline:none}.experience{display:contents}body.has-cursor,body.has-cursor *{cursor:none}body.has-cursor input,body.has-cursor textarea{cursor:text}.cursor{z-index:300;pointer-events:none;position:fixed;inset:0}.cursor__dot,.cursor__ring{opacity:0;will-change:transform, opacity;border-radius:50%;position:fixed;top:0;left:0}.cursor__dot{mix-blend-mode:difference;background:#fff;width:6px;height:6px;margin:-3px 0 0 -3px}.cursor__ring{border:1px solid #e9edf6b3;width:36px;height:36px;margin:-18px 0 0 -18px}.btn{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--ink);border:1px solid var(--faint);cursor:pointer;pointer-events:auto;background:0 0;align-items:center;gap:.7em;padding:.85rem 1.2rem;font-size:11px;text-decoration:none;transition:background .3s,color .3s,border-color .3s;display:inline-flex}.btn:hover{background:var(--ink);color:#030305;border-color:var(--ink)}.btn--ghost{color:var(--dim);border-color:#0000;padding-left:.4rem;padding-right:.4rem}.btn--ghost:hover{color:var(--ink);background:0 0;border-color:#0000}.project__cta{pointer-events:auto;flex-wrap:wrap;gap:.6rem .8rem;margin-top:1.8rem;display:flex}.hud__nav{pointer-events:none}.hud__chapter{pointer-events:auto;color:var(--dim);font:inherit;letter-spacing:inherit;text-transform:uppercase;cursor:pointer;background:0 0;border:0;align-items:center;gap:.9rem;padding:.2rem 0;transition:color .3s;display:flex}.hud__chapter:hover,.hud__chapter[aria-expanded=true]{color:var(--ink)}.hud__chapter i{text-align:center;width:1.1em;color:var(--ink);font-style:normal}.hud__menu{-webkit-backdrop-filter:blur(16px);border:1px solid var(--faint);opacity:0;visibility:hidden;background:#030305db;min-width:16rem;padding:.5rem 0;list-style:none;transition:opacity .3s,transform .3s,visibility .3s;position:absolute;top:calc(100% + 16px);right:0;transform:translateY(-6px)}.hud__menu.is-open{opacity:1;visibility:visible;transform:none}.hud__menu button{pointer-events:auto;text-align:left;width:100%;color:var(--dim);font:inherit;letter-spacing:inherit;text-transform:uppercase;cursor:pointer;background:0 0;border:0;gap:1.4rem;padding:.75rem 1.3rem;transition:color .25s,background .25s;display:flex}.hud__menu button i{color:var(--dim);font-style:normal}.hud__menu button:hover{color:var(--ink);background:#e9edf60f}.hud__menu button.is-current,.hud__menu button.is-current i{color:var(--ink)}.cs{z-index:50;overscroll-behavior:contain;scrollbar-width:none;background:radial-gradient(70rem 40rem at 85% -10%, #788cff1a, transparent 60%), radial-gradient(50rem 34rem at -10% 60%, #ff78be0f, transparent 60%), var(--bg);outline:none;animation:.7s both cs-in;position:fixed;inset:0;overflow:hidden auto}.cs::-webkit-scrollbar{display:none}@keyframes cs-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.cs__bar{z-index:3;padding:var(--gutter);font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--dim);background:linear-gradient(var(--bg) 40%, transparent);justify-content:space-between;align-items:center;gap:1rem;font-size:10px;display:flex;position:sticky;top:0}.cs__back{color:var(--ink);font:inherit;letter-spacing:inherit;text-transform:uppercase;cursor:pointer;background:0 0;border:0;align-items:center;gap:.8em;padding:.3rem 0;display:flex}.cs__back:hover{opacity:.7}.cs__esc{border:1px solid var(--faint);padding:.25rem .55rem}.cs__main{max-width:1240px;padding:0 var(--gutter) 6vh;margin:0 auto}.cs__hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(1.5rem,5vw,5rem);min-height:calc(100vh - 8rem);padding-bottom:4rem;display:grid}.cs__hero-text>*{animation:.9s cubic-bezier(.2,.7,.2,1) both rise}.cs__hero-text>:nth-child(2){animation-delay:80ms}.cs__hero-text>:nth-child(3){animation-delay:.16s}.cs__hero-text>:nth-child(4){animation-delay:.24s}.cs__hero-text>:nth-child(5){animation-delay:.32s}@keyframes rise{0%{opacity:0;filter:blur(8px);transform:translateY(26px)}to{opacity:1;filter:none;transform:none}}.cs__title{letter-spacing:.04em;font-size:clamp(3rem,min(10vw,17vh),9rem);font-weight:300;line-height:1}.cs__role{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--dim);margin-top:1.4rem;font-size:11px}.cs__lede{color:#e9edf6cc;max-width:30rem;margin-top:2rem;font-size:clamp(1.05rem,1.5vw,1.25rem);font-weight:300;line-height:1.6}.cs__cta{flex-wrap:wrap;gap:.6rem .8rem;margin-top:2.4rem;display:flex}.cs__meta{border-top:1px solid var(--faint);border-bottom:1px solid var(--faint);grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;margin:0;padding:1.6rem 0;display:grid}.cs__meta dt{font-family:var(--mono);letter-spacing:.26em;text-transform:uppercase;color:var(--dim);font-size:10px}.cs__meta dd{margin-top:.6rem;font-size:1rem;font-weight:300}.cs__section{border-bottom:1px solid var(--faint);grid-template-columns:minmax(0,1fr) minmax(0,2.4fr);gap:2rem;padding:clamp(2.5rem,7vh,5rem) 0;display:grid}.cs__h{font-family:var(--mono);letter-spacing:.3em;text-transform:uppercase;color:var(--dim);font-size:11px;font-weight:400}.cs__p{letter-spacing:-.01em;max-width:40rem;font-size:clamp(1.25rem,2.1vw,1.9rem);font-weight:300;line-height:1.4}.cs__layers{list-style:none;display:grid}.cs__layers>li{border-top:1px solid var(--faint);grid-template-columns:3rem minmax(0,1.3fr) minmax(0,1fr);align-items:baseline;gap:1.2rem;padding:1.4rem 0;display:grid}.cs__layers>li:first-child{border-top:0;padding-top:0}.cs__layers i{font-style:normal;font-family:var(--mono);color:var(--dim);font-size:11px}.cs__layers h3{letter-spacing:.16em;text-transform:uppercase;font-size:.95rem;font-weight:400}.cs__layers p{color:var(--dim);margin-top:.5rem;font-size:.95rem;font-weight:300;line-height:1.5}.cs__layers ul{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;list-style:none;display:flex}.cs__layers ul li{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--dim);border:1px solid var(--faint);padding:.3rem .6rem;font-size:10px}.cs__outcomes{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;list-style:none;display:grid}.cs__outcomes b{letter-spacing:-.02em;font-size:clamp(2.2rem,5.4vw,4.6rem);font-weight:300;line-height:1;display:block}.cs__outcomes span{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--dim);margin-top:.9rem;font-size:10px;display:block}.cs-reveal{opacity:0;transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.2,1);transform:translateY(26px)}.cs-reveal.is-in{opacity:1;transform:none}@media (width<=900px){.cs__hero{grid-template-columns:1fr;min-height:0;padding-top:1rem}.cs__meta{grid-template-columns:repeat(2,minmax(0,1fr))}.cs__section{grid-template-columns:1fr;gap:1.2rem}.cs__layers>li{grid-template-columns:2.4rem minmax(0,1fr)}.cs__layers ul{grid-column:2;justify-content:flex-start}.cs__outcomes{grid-template-columns:1fr;gap:1.6rem}.cs__esc{display:none}}@media (prefers-reduced-motion:reduce){.cs,.cs__hero-text>*,.cs-reveal{opacity:1;filter:none;transition:none;animation:none;transform:none}}@media (height<=820px){.project__cta{margin-top:1.1rem}}@media (height<=480px){.project__cta .btn--ghost{display:none}}.hud__menu{max-height:calc(100vh - var(--gutter) * 2 - 60px);overscroll-behavior:contain;scrollbar-width:none;overflow-y:auto}.hud__menu::-webkit-scrollbar{display:none}@media (height<=640px){.hud__menu button{padding:.5rem 1.1rem}}.beat--gitlog{padding:0 var(--gutter) clamp(56px, 11vh, 120px);justify-content:flex-end;align-items:flex-start}.gitlog{font-family:var(--mono);letter-spacing:.02em;text-shadow:0 0 14px #030305,0 0 28px #030305;max-width:min(36rem,100%);font-size:11px;line-height:1.75}.gitlog__prompt{color:var(--ink);margin-bottom:.5rem}.gitlog__prompt b{color:#7fd6ff;margin-right:.8ch;font-weight:400}.gitlog__caret{vertical-align:text-bottom;background:var(--ink);width:.55em;height:1.05em;margin-left:.5ch;animation:1.05s step-end infinite caret;display:inline-block}@keyframes caret{50%{opacity:0}}.gitlog ol{list-style:none}.gitlog li{white-space:nowrap;will-change:opacity, transform;grid-template-columns:2.6rem 4.4rem minmax(0,1fr) auto;column-gap:.5rem;display:grid}.gitlog li .m{text-overflow:ellipsis;color:#e9edf6db;overflow:hidden}.gitlog code{font:inherit}.gitlog .g{color:#7fd6ff}.gitlog .h{color:#ff8a5c}.gitlog em{color:var(--dim);margin-left:1.2ch;font-style:normal}.beat--stats{padding:0 var(--gutter) clamp(72px, 16vh, 170px);text-align:center;justify-content:flex-end;align-items:center}.stats{flex-wrap:wrap;justify-content:center;gap:1.6rem clamp(1.6rem,5vw,4.5rem);list-style:none;display:flex}.stats b{letter-spacing:-.02em;text-shadow:0 0 30px #030305;font-size:clamp(2rem,min(5vw,9vh),4.4rem);font-weight:300;line-height:1;display:block}.stats span{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--dim);margin-top:.7rem;font-size:10px;display:block}.beat--stats .btn{margin-top:clamp(1.4rem,4vh,2.6rem)}@media (height<=700px){.gitlog li:nth-child(-n+5){display:none}}@media (width<=900px){.beat--gitlog{padding-bottom:6vh}.gitlog{font-size:10px}.gitlog li{grid-template-columns:2rem 3.8rem minmax(0,1fr) auto}.gitlog li:nth-child(-n+6){display:none}.stats{grid-template-columns:1fr 1fr;gap:1.4rem 2rem;display:grid}}@media (height<=480px){.gitlog li:nth-child(-n+10){display:none}.stats{flex-wrap:nowrap;gap:1.2rem}.stats b{font-size:1.8rem}}.boot__wait{left:var(--gutter);bottom:var(--gutter);color:var(--dim);animation:1.6s ease-in-out infinite pulse-soft;position:absolute}@keyframes pulse-soft{50%{opacity:.45}}.hud{visibility:hidden;transition:opacity 1.6s .6s,visibility 0s linear .6s}body.ready .hud{visibility:visible}.stage__notice{left:50%;bottom:calc(var(--gutter) + 2.6rem);max-width:min(30rem, calc(100vw - var(--gutter) * 2));text-align:center;font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--dim);font-size:10px;line-height:1.7;position:absolute;transform:translate(-50%)}.contact__status{color:#e9edf6d1;pointer-events:auto;min-height:0;margin-top:1rem;font-size:.9rem;font-weight:300;line-height:1.6}.contact__status:empty{display:none}.contact__status b{color:var(--ink);overflow-wrap:anywhere;font-weight:400}@media (height<=640px){.contact__status{margin-top:.6rem;font-size:.8rem}}@media (height<=640px){.contact--done .display{display:none}}@media (width<=900px){.contact .display{font-size:clamp(2rem,8.5vw,3rem)}}.cs__contact{border-bottom:1px solid var(--faint);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.2rem 2rem;padding:clamp(2rem,6vh,3.5rem) 0;display:flex}.cs__contact-line{letter-spacing:-.01em;font-size:clamp(1.3rem,2.4vw,2rem);font-weight:300}.hud__tools{align-items:center;gap:1.1rem;display:flex}.hud__nav{position:relative}.hud__menu-sep{border-top:1px solid var(--faint);margin-top:.4rem;padding-top:.4rem}.hud__menu a{pointer-events:auto;width:100%;color:var(--dim);text-transform:uppercase;gap:1.4rem;padding:.75rem 1.3rem;text-decoration:none;transition:color .25s,background .25s;display:flex}.hud__menu a i{color:var(--dim);font-style:normal}.hud__menu a:hover{color:var(--ink);background:#e9edf60f}.hp{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;left:-9999px}.contact__legal{font-family:var(--mono);letter-spacing:.14em;color:var(--dim);margin-top:1.2rem;font-size:10px;line-height:1.7}@media (height<=640px){.contact__legal{display:none}}.beat--human{justify-content:center;align-items:flex-start;padding-left:clamp(24px,6vw,110px)}.human-panel{max-width:27rem}.human-panel__lede{color:#ffe9d2d1;margin-top:1.4rem;font-size:1rem;font-weight:300;line-height:1.6}.human-panel .btn{pointer-events:auto}@media (width<=900px){.beat--human{padding:0 var(--gutter) 6vh;justify-content:flex-end;align-items:flex-start}.human-panel__lede{display:none}}.avatar{--mx:50%;--my:40%;--rx:0deg;--ry:0deg;aspect-ratio:4/5;perspective:900px;justify-self:center;width:min(100%,26rem);position:relative}.avatar__ring{filter:blur(34px);opacity:.4;background:conic-gradient(#6ea8ff,#c77dff,#ff8fb1,#ffd08a,#6ea8ff);border-radius:50%;animation:14s linear infinite ring;position:absolute;inset:-10%}@keyframes ring{to{transform:rotate(360deg)}}.avatar__frame{border:1px solid var(--faint);width:100%;height:100%;transform:rotateX(var(--rx)) rotateY(var(--ry));clip-path:polygon(0 0,calc(100% - 30px) 0,100% 30px,100% 100%,30px 100%,0 calc(100% - 30px));background:#05060c;transition:transform .25s;position:relative;overflow:hidden}.avatar__frame img{object-fit:cover;filter:grayscale()contrast(1.12)brightness(.86);width:100%;height:100%;transition:filter .6s;display:block}.avatar:hover .avatar__frame img{filter:grayscale(0)contrast(1.05)brightness()}.avatar__mono{width:100%;height:100%;display:block}.avatar__sheen{background:radial-gradient(circle at var(--mx) var(--my), #ffffff47, transparent 45%);mix-blend-mode:overlay;pointer-events:none;position:absolute;inset:0}.avatar__scan{pointer-events:none;background:repeating-linear-gradient(0deg,#ffffff09 0 1px,#0000 1px 3px);position:absolute;inset:0;overflow:hidden}.avatar__scan:after{content:"";background:linear-gradient(#0000,#a0beff24,#0000);height:22%;animation:4.5s linear infinite sweep;position:absolute;left:0;right:0}@keyframes sweep{0%{top:-25%}to{top:110%}}@media (prefers-reduced-motion:reduce){.avatar__ring,.avatar__scan:after{animation:none}}.about__title{font-size:clamp(2.6rem,min(8.5vw,14vh),7.5rem)}.about__job{border-top:1px solid var(--faint);grid-template-columns:minmax(0,11rem) minmax(0,1fr);gap:1.6rem;padding:1.6rem 0;display:grid}.about__job:first-child{border-top:0;padding-top:0}.about__when{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink);font-size:11px;line-height:1.6}.about__when span{color:var(--dim);margin-top:.4rem;display:block}.about__role{letter-spacing:-.01em;font-size:1.45rem;font-weight:300}.about__company{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--dim);margin-top:.4rem;font-size:11px}.about__points{gap:.9rem;margin-top:1.4rem;list-style:none;display:grid}.about__points li{color:#e9edf6d6;padding-left:1.5rem;font-size:.98rem;font-weight:300;line-height:1.6;position:relative}.about__points li:before{content:"";background:var(--dim);width:.7rem;height:1px;position:absolute;top:.78em;left:0}.about__skills{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.2rem 2rem;display:grid}.about__skills h3{font-family:var(--mono);letter-spacing:.26em;text-transform:uppercase;color:var(--dim);font-size:11px;font-weight:400}.about__skills ul{flex-wrap:wrap;gap:.45rem;margin-top:.9rem;list-style:none;display:flex}.about__skills li{border:1px solid var(--faint);padding:.35rem .75rem;font-size:.85rem;font-weight:300}.about__work{list-style:none}.about__work li+li{border-top:1px solid var(--faint)}.about__work a{color:var(--ink);grid-template-columns:minmax(0,10rem) minmax(0,1fr) auto;align-items:baseline;gap:1rem;padding:1.2rem 0;text-decoration:none;transition:padding-left .4s;display:grid}.about__work a:hover{padding-left:.8rem}.about__work-name{letter-spacing:.04em;font-size:1.6rem;font-weight:300}.about__work-role{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--dim);font-size:11px}.about__foot{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:.6rem 1.8rem;padding:2.6rem 0 1rem;font-size:10px;display:flex}.about__foot a{color:var(--dim);text-decoration:none;transition:color .3s}.about__foot a:hover{color:var(--ink)}.about__foot span{color:var(--dim);margin-left:auto}@media (width<=900px){.about__job{grid-template-columns:1fr;gap:.8rem}.about__skills{grid-template-columns:1fr}.about__work a{grid-template-columns:1fr auto}.about__work-role{grid-column:1}.about__foot span{width:100%;margin-left:0}}.human-panel .display--sm{font-size:clamp(1.6rem,min(3.4vw,6.5vh),3rem)}.about .cs__main{overflow-x:clip}@media (width<=1100px){.avatar__ring{filter:blur(26px);inset:-2%}}:root{--accent:#6b95ff;--accent-2:#ff8a5c}.cursor__sel{opacity:0;border:1px solid var(--accent);will-change:transform, width, height, opacity;position:fixed;top:0;left:0;box-shadow:0 0 0 1px #6b95ff1f,inset 0 0 24px #6b95ff0f}.cursor__sel i{border:1px solid var(--accent);background:#030305;width:6px;height:6px;position:absolute}.cursor__sel i:first-child{top:-4px;left:-4px}.cursor__sel i:nth-child(2){top:-4px;right:-4px}.cursor__sel i:nth-child(3){bottom:-4px;left:-4px}.cursor__sel i:nth-child(4){bottom:-4px;right:-4px}.cursor__sel span{white-space:nowrap;background:var(--accent);color:#030305;font-family:var(--mono);letter-spacing:.08em;border-radius:2px;padding:.2rem .5rem;font-size:10px;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%)}.process{font-family:var(--mono);letter-spacing:.26em;text-transform:uppercase;color:var(--dim);flex-wrap:wrap;justify-content:center;gap:.5rem 0;margin-top:clamp(1.4rem,4vh,2.6rem);font-size:10px;list-style:none;display:flex}.process li{padding:0 1.1rem;position:relative}.process li+li:before{content:"";background:var(--accent);opacity:.7;width:.6rem;height:1px;position:absolute;top:50%;left:-.2rem}.process li:nth-child(odd){color:var(--ink)}@media (width<=640px){.process{letter-spacing:.16em;font-size:9px}.process li{padding:0 .7rem}}@media (height<=640px){.process{display:none}}.hud__tl b{text-shadow:0 0 18px #6b95ff8c}.hud__rail div{background:linear-gradient(to bottom, var(--accent), var(--accent-2))}.eyebrow:before{content:"";vertical-align:.05em;border:1px solid var(--accent);width:7px;height:7px;margin-right:.9em;display:inline-block}.project__stack{color:var(--accent)}.about__more{list-style:none;display:grid}.about__more li{border-top:1px solid var(--faint);grid-template-columns:minmax(0,13rem) minmax(0,15rem) minmax(0,1fr);align-items:baseline;gap:.4rem 1.6rem;padding:1rem 0;display:grid}.about__more li:first-child{border-top:0;padding-top:0}.about__more b{font-size:1.15rem;font-weight:300}.about__more em{font-style:normal;font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-size:10px}.about__more span{color:var(--dim);font-size:.92rem;font-weight:300;line-height:1.5}.about__certs{list-style:none;display:grid}.about__certs li{border-top:1px solid var(--faint);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;align-items:baseline;gap:.4rem 1.6rem;padding:.95rem 0;display:grid}.about__certs li:first-child{border-top:0;padding-top:0}.about__certs b{font-size:1.05rem;font-weight:300}.about__certs span{color:var(--dim);font-size:.9rem;font-weight:300;line-height:1.5}.about__certs em{font-style:normal;font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--dim);font-size:10px}.about__langs{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--dim);margin-top:1.6rem;font-size:11px}@media (width<=900px){.about__more li,.about__certs li{grid-template-columns:1fr}}@media (width<=640px){.eyebrow:before{display:none}}.beat--identity:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(#03030580 0%,#0303055c 45%,#03030500 72%);width:min(1100px,96vw);height:min(620px,78vh);position:absolute;top:52%;left:50%;transform:translate(-50%,-50%)}.beat--identity .eyebrow{color:#e9edf6d9;text-shadow:0 0 14px #030305,0 0 28px #030305}.beat--identity .name{text-shadow:0 0 40px #030305e6,0 2px 24px #030305cc}.beat--identity .lede{color:#f5f7fcf0;text-shadow:0 0 10px #030305,0 0 24px #030305,0 0 48px #030305}.beat--identity .process{color:#e9edf6cc;text-shadow:0 0 10px #030305,0 0 22px #030305}.beat--identity .process li:nth-child(odd){color:#fff}.beat--identity .hint{color:#e9edf6bf;text-shadow:0 0 10px #030305,0 0 22px #030305}.display--lines{white-space:nowrap}.cs__bar{gap:1.2rem}.cs__toc{scrollbar-width:none;gap:.15rem;min-width:0;display:flex;overflow-x:auto}.cs__toc::-webkit-scrollbar{display:none}.cs__toc button{color:var(--dim);font:inherit;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:.45rem .7rem;font-size:10px;transition:color .25s;position:relative}.cs__toc button:hover,.cs__toc button.is-on{color:var(--ink)}.cs__toc button.is-on:after{content:"";background:var(--c,var(--accent));height:1px;position:absolute;bottom:.1rem;left:.7rem;right:.7rem}.cs__progress{background:linear-gradient(90deg, var(--accent), var(--accent-2));transform-origin:0;height:2px;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}@media (width<=1180px){.cs__index{display:none}}@media (width<=900px){.cs__toc{display:none}}.cs__sub{font-family:var(--mono);letter-spacing:.26em;text-transform:uppercase;color:var(--dim);margin:2.2rem 0 .9rem;font-size:10px}.cs__bullets{gap:.9rem;max-width:42rem;list-style:none;display:grid}.cs__bullets li{color:#e9edf6db;padding-left:1.5rem;font-size:1.05rem;font-weight:300;line-height:1.55;position:relative}.cs__bullets li:before{content:"";background:var(--c,var(--accent));width:.7rem;height:1px;position:absolute;top:.8em;left:0}.cs__chips{flex-wrap:wrap;gap:.45rem;list-style:none;display:flex}.cs__chips li{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--faint);padding:.4rem .8rem;font-size:11px}.cs__goals{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;list-style:none;display:grid}.cs__goals li{border:1px solid var(--faint);align-content:start;gap:.8rem;padding:1.1rem 1.1rem 1.3rem;display:grid}.cs__goals i{font-style:normal;font-family:var(--mono);letter-spacing:.2em;color:var(--c,var(--accent));font-size:10px}.cs__goals span{font-size:.98rem;font-weight:300;line-height:1.5}.cs__users{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.cs__users article{border:1px solid var(--faint);background:linear-gradient(160deg,#e9edf60a,#0000 60%);padding:1.4rem}.cs__avatar{background:var(--c,var(--accent));color:#030305;border-radius:50%;place-items:center;width:42px;height:42px;font-size:1.1rem;font-weight:500;display:grid}.cs__users h3{margin-top:1rem;font-size:1.3rem;font-weight:300}.cs__users ul{gap:.6rem;margin-top:1rem;list-style:none;display:grid}.cs__users li{color:#e9edf6c7;padding-left:1.2rem;font-size:.92rem;font-weight:300;line-height:1.5;position:relative}.cs__users li:before{content:"";background:var(--dim);width:.5rem;height:1px;position:absolute;top:.7em;left:0}.cs__decisions{gap:1rem;list-style:none;display:grid}.cs__decisions li{border:1px solid var(--faint);grid-template-columns:3rem minmax(0,1fr);gap:.4rem 1rem;padding:1.4rem 1.4rem 1.5rem;transition:border-color .3s,background .3s;display:grid}.cs__decisions li:hover{border-color:var(--c,var(--accent));background:#e9edf608}.cs__decisions i{font-style:normal;font-family:var(--mono);color:var(--c,var(--accent));grid-row:span 3;padding-top:.35rem;font-size:11px}.cs__decisions h3{letter-spacing:-.01em;font-size:1.35rem;font-weight:300}.cs__decisions p{color:#e9edf6cc;max-width:44rem;font-size:.98rem;font-weight:300;line-height:1.6}.cs__effect{margin-top:.4rem;color:var(--ink)!important}.cs__effect b{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--c,var(--accent));margin-right:.9rem;font-size:10px;font-weight:400}.cs__learn{gap:1.2rem;max-width:44rem;list-style:none;display:grid}.cs__learn li{border-left:2px solid var(--c,var(--accent));padding-left:1.4rem;font-size:clamp(1.1rem,1.7vw,1.4rem);font-weight:300;line-height:1.5}.cs__section--wide{grid-template-columns:1fr;gap:1.6rem}.mock{width:100%;height:auto;display:block}@media (width<=900px){.cs__goals,.cs__users{grid-template-columns:1fr}.cs__decisions li{grid-template-columns:2.2rem minmax(0,1fr);padding:1.1rem}}@media (prefers-reduced-motion:reduce){.cs__progress{transition:none}}.process-panel .principles span em{font-style:normal;font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-top:.7rem;font-size:10px;display:block}.process-panel .principles li.is-active span{max-height:9rem}.lab-size{white-space:nowrap;background:var(--accent);color:#030305;font-family:var(--mono);letter-spacing:.08em;pointer-events:none;border-radius:2px;padding:.2rem .5rem;font-size:10px;transform:translate(-50%,10px)}.project__layers--decisions li{opacity:.42;transition:opacity .35s}.project__layers--decisions li.is-active{opacity:1}.project__layers--decisions i{color:var(--dim);font-size:11px}.project__layers--decisions li.is-active i{color:var(--accent)}.project__layers--decisions span{display:block}.hs-pin{width:22px;height:22px;font-family:var(--mono);color:#030305;background:var(--pin,var(--accent));box-shadow:0 0 0 1px var(--pin,var(--accent));opacity:.55;pointer-events:none;border:2px solid #05060d;border-radius:50%;place-items:center;font-size:11px;font-weight:600;transition:transform .3s,box-shadow .3s;display:grid;transform:translate(-50%,-50%)}.hs-pin.is-active{box-shadow:0 0 0 1px var(--pin), 0 0 0 7px color-mix(in srgb, var(--pin) 28%, transparent);animation:1.8s ease-out infinite pinPulse;transform:translate(-50%,-50%)scale(1.25)}@keyframes pinPulse{0%{box-shadow:0 0 0 1px var(--pin), 0 0 0 0 color-mix(in srgb, var(--pin) 45%, transparent)}to{box-shadow:0 0 0 1px var(--pin), 0 0 0 14px color-mix(in srgb, var(--pin) 0%, transparent)}}.lab-size--tag{background:var(--tag,var(--accent));max-width:20rem;transform:translate(16px,calc(-100% - 5px))}@media (prefers-reduced-motion:reduce){.hs-pin.is-active{animation:none}}.to-top{right:calc(var(--gutter) - 12px);bottom:calc(var(--gutter) + 112px);-webkit-backdrop-filter:blur(6px);width:46px;height:46px;color:var(--ink);cursor:pointer;opacity:0;pointer-events:none;background:#03030599;border:0;border-radius:50%;place-items:center;padding:0;transition:opacity .5s,transform .5s cubic-bezier(.2,.7,.2,1),filter .3s;display:grid;position:absolute;transform:translateY(14px)scale(.9)}.to-top.is-shown{opacity:1;pointer-events:auto;transform:none}.to-top:hover{filter:drop-shadow(0 0 12px #6b95ff8c);transform:translateY(-2px)scale(1.06)}.to-top__arrow{width:16px;height:16px;display:block;position:relative;overflow:hidden}.to-top__arrow svg{transition:transform .4s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0}.to-top__arrow svg:nth-child(2){transform:translateY(110%)}.to-top:hover .to-top__arrow svg:first-child{transform:translateY(-110%)}.to-top:hover .to-top__arrow svg:nth-child(2){transform:none}.to-top__label{opacity:0;font-family:var(--mono);letter-spacing:.28em;text-transform:uppercase;color:var(--ink);pointer-events:none;font-size:10px;transition:opacity .3s,transform .35s;position:absolute;top:50%;right:58px;transform:translate(8px,-50%)}.to-top:hover .to-top__label{opacity:1;transform:translateY(-50%)}@media (width<=900px){.to-top{bottom:22px;right:14px}.to-top__label{display:none}}@media (prefers-reduced-motion:reduce){.to-top,.to-top__arrow svg{transition:none}}.aside--tight{max-width:30rem;margin-top:1.4rem;line-height:1.6}.beat--left .statement{line-height:1.12}.project__count{font-family:var(--mono);letter-spacing:.3em;color:var(--accent);margin-bottom:clamp(.8rem,2.4vh,1.6rem);font-size:11px}.project__count span{color:var(--faint)}.btn--solid{background:var(--ink);color:#030305;border-color:var(--ink);padding:1.05rem 1.7rem;font-size:12px;animation:2.8s ease-out infinite ctaPulse;box-shadow:0 0 #e9edf659}.btn--solid:hover{background:var(--accent);border-color:var(--accent);color:#030305;animation:none}@keyframes ctaPulse{0%{box-shadow:0 0 #e9edf652}70%{box-shadow:0 0 0 14px #e9edf600}to{box-shadow:0 0 #e9edf600}}.beat--cs{pointer-events:none}.cs-float{white-space:nowrap;position:absolute;top:75%;transform:translate(-50%)}.project__cta--inline{display:none}@media (aspect-ratio<=13/10),(width<=900px){.beat--cs{display:none}.project__cta--inline{display:flex}}@media (prefers-reduced-motion:reduce){.btn--solid{animation:none}}.beat--more{padding:0 var(--gutter) clamp(56px, 12vh, 130px);justify-content:flex-end;align-items:center}.more-card{pointer-events:auto;min-width:min(24rem,90vw);color:var(--ink);text-align:left;-webkit-backdrop-filter:blur(10px);background:#06080f80;border:1px solid #e9edf629;gap:.35rem;padding:1.1rem 1.5rem 1.2rem;text-decoration:none;transition:border-color .3s,transform .4s,background .3s;display:grid}.more-card:hover{border-color:var(--accent);background:#0a0d1ab3;transform:translateY(-3px)}.more-card__kicker{font-family:var(--mono);letter-spacing:.28em;text-transform:uppercase;color:var(--accent);font-size:10px}.more-card__title{letter-spacing:-.01em;font-size:1.5rem;font-weight:300}.more-card__names{color:var(--dim);font-size:.85rem;font-weight:300}.more-card__go{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;margin-top:.5rem;font-size:10px}.beat--procword{pointer-events:none}.process-word{text-align:center;position:absolute;top:79%;left:68.6%;transform:translate(-50%)}.process-word i{font-style:normal;font-family:var(--mono);letter-spacing:.32em;color:var(--dim);font-size:10px;display:block}.process-word i span{color:var(--faint)}.process-word b{letter-spacing:.2em;text-transform:uppercase;color:#e9edf633;margin-top:.4rem;font-size:clamp(1.8rem,3.6vw,3.4rem);font-weight:300;animation:.7s cubic-bezier(.2,.7,.2,1) both wordIn;display:block}@keyframes wordIn{0%{opacity:0;letter-spacing:.32em;filter:blur(6px);transform:translateY(10px)}to{opacity:1;letter-spacing:.2em;filter:none;transform:none}}@media (aspect-ratio<=13/10),(width<=900px){.beat--procword{display:none}}@media (height>=560px){.human-panel__lede{font-size:.95rem;display:block}}@media (width<=900px){.human-panel__lede{display:none}}.portrait-hover{pointer-events:auto;cursor:crosshair;outline:none;width:min(21vw,320px);height:min(43vh,440px);position:absolute;top:52%;left:66%;transform:translate(-50%,-50%)}.ptile{-webkit-backdrop-filter:blur(10px);opacity:0;transition:opacity .45s ease calc(var(--i) * 80ms), transform .6s cubic-bezier(.2, .9, .2, 1.2) calc(var(--i) * 80ms);pointer-events:none;white-space:nowrap;background:#0c0a08b8;border:1px solid #ffe2c43d;gap:.15rem;padding:.65rem .95rem .75rem;display:grid;position:absolute;transform:translateY(10px)scale(.85)}.ptile span{font-family:var(--mono);letter-spacing:.28em;text-transform:uppercase;color:#ffe2c499;font-size:9px}.ptile b{letter-spacing:.01em;color:#fff3e6;font-size:1.15rem;font-weight:300}.ptile:before{content:"";background:#ffe2c466;width:22px;height:1px;position:absolute;top:50%}.ptile--1{top:-2%;left:-16%}.ptile--1:before{left:100%}.ptile--2{top:20%;right:-50%}.ptile--2:before{right:100%}.ptile--3{bottom:20%;left:-40%}.ptile--3:before{left:100%}.ptile--4{bottom:5%;right:-56%}.ptile--4:before{right:100%}.portrait-hover.is-on .ptile{opacity:1;transform:none}.portrait-hover__hint{white-space:nowrap;font-family:var(--mono);letter-spacing:.28em;text-transform:uppercase;color:#ffe2c499;font-size:10px;transition:opacity .3s;position:absolute;bottom:-2.4rem;left:50%;transform:translate(-50%)}.portrait-hover__hint:before{content:"↖ "}.portrait-hover.is-on .portrait-hover__hint{opacity:0}@media (aspect-ratio<=13/10),(width<=900px){.portrait-hover{width:44vw;height:34vh;top:32%;left:50%}.ptile{padding:.45rem .7rem .55rem}.ptile b{font-size:.95rem}.ptile--1{left:-48%}.ptile--2{right:-48%}.ptile--3{left:-48%}.ptile--4{right:-48%}}@media (prefers-reduced-motion:reduce){.ptile{transition:opacity .2s;transform:none}}.beat--caption-right{text-align:right;align-items:flex-end}.beat--caption-right .caption span{margin-left:auto}.contact__socials a{border:1px solid var(--faint);width:40px;height:40px;color:var(--dim);border-radius:50%;place-items:center;transition:color .25s,border-color .25s,transform .3s,box-shadow .3s;display:grid}.contact__socials a:hover{color:var(--ink);border-color:var(--accent);transform:translateY(-3px);box-shadow:0 6px 20px #6b95ff40}.contact .contact__legal{text-align:right;white-space:nowrap;margin:0;display:block}@media (width<=520px){.contact__foot{flex-wrap:wrap}.contact .contact__legal{text-align:left}}.projects__hero{padding:clamp(3rem,10vh,7rem) 0 clamp(2rem,5vh,3.5rem)}.projects__h{margin:2.4rem 0 1.4rem}.pgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;list-style:none;display:grid}.pcard{height:100%;color:var(--ink);border:1px solid var(--faint);text-decoration:none;transition:border-color .3s,transform .45s cubic-bezier(.2,.7,.2,1);display:grid;overflow:hidden}.pcard:hover{border-color:var(--c,var(--accent));transform:translateY(-4px)}.pcard__shot{border-bottom:1px solid var(--faint);background:#05060d;padding:.9rem;display:block}.pcard__body{align-content:start;gap:.5rem;padding:1.2rem 1.3rem 1.4rem;display:grid}.pcard__idx{font-family:var(--mono);letter-spacing:.3em;color:var(--c,var(--accent));font-size:11px}.pcard__body b{letter-spacing:.04em;font-size:1.8rem;font-weight:300}.pcard__body em{font-style:normal;font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--dim);font-size:10px}.pcard__body>span:not(.pcard__idx):not(.pcard__go){color:#e9edf6c7;font-size:.95rem;font-weight:300;line-height:1.55}.pcard__go{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--c,var(--accent));margin-top:.4rem;font-size:10px}.mgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;list-style:none;display:grid}.mcard{border:1px solid var(--faint);align-content:start;gap:.5rem;padding:1.3rem;transition:border-color .3s,background .3s;display:grid}.mcard:hover{background:#e9edf608;border-color:#e9edf666}.mcard__year{font-family:var(--mono);letter-spacing:.24em;color:var(--accent);font-size:10px}.mcard b{font-size:1.3rem;font-weight:300}.mcard em{font-style:normal;font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--dim);font-size:10px}.mcard>span:not(.mcard__year):not(.mcard__soon){color:#e9edf6bf;font-size:.92rem;font-weight:300;line-height:1.5}.mcard__soon{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--faint);margin-top:.4rem;font-size:10px}@media (width<=900px){.pgrid{grid-template-columns:1fr}.mgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.mgrid{grid-template-columns:1fr}}.aside--tight{max-width:24rem}.contact .display{font-size:clamp(2.4rem,min(5.2vw,9vh),4.8rem)}.contact__sub{color:var(--dim);margin:0;font-size:.95rem;font-weight:300;line-height:1.6}.contact .contact__letter{pointer-events:auto;margin-top:clamp(1.1rem,3vh,1.8rem);display:block}.letter__line{color:#e9edf6e6;font-size:clamp(1.15rem,min(1.7vw,3vh),1.65rem);font-weight:300;line-height:2}.contact .blank{vertical-align:baseline;display:inline-block}.contact .blank input{color:#fff;width:100%;min-width:0;font:inherit;background:0 0;border:0;border-bottom:1px solid #e9edf666;border-radius:0;outline:none;padding:0 .15em;font-weight:300;transition:border-color .25s,background .25s}.contact .blank--name{width:9.5ch}.contact .blank--email{width:14ch}.contact .blank input::placeholder{color:#e9edf647}.contact .blank input:focus{background:#e9edf60f;border-bottom-color:#fff}.contact .letter__msg{gap:.3rem;margin-top:.6rem;display:grid}.contact .letter__msg>span{color:#e9edf6e6;font-size:clamp(1.15rem,min(1.7vw,3vh),1.65rem);font-weight:300}.contact .letter__msg textarea{color:#fff;width:100%;font:inherit;resize:none;background:0 0;border:0;border-bottom:1px solid #e9edf666;border-radius:0;outline:none;padding:.3rem .15em .5rem;font-size:1.1rem;font-weight:300;line-height:1.5;transition:border-color .25s,background .25s}.contact .letter__msg textarea::placeholder{color:#e9edf647}.contact .letter__msg textarea:focus{background:#e9edf60f;border-bottom-color:#fff}.contact .letter__send{color:var(--ink);font-family:var(--mono);letter-spacing:.28em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #e9edf680;align-items:center;gap:1rem;margin-top:clamp(1rem,3vh,1.8rem);padding:1rem 1.6rem;font-size:11px;transition:background .3s,color .3s,border-color .3s,gap .3s;display:inline-flex}.contact .letter__send:hover:not(:disabled){background:var(--ink);color:#030305;border-color:var(--ink);gap:1.5rem}.contact .letter__send:disabled{opacity:.6;cursor:default}.contact .contact__rows{border-top:1px solid var(--faint);pointer-events:auto;margin-top:clamp(1.2rem,3.4vh,2rem);list-style:none}.contact .contact__rows li{border-bottom:1px solid var(--faint);color:var(--dim);align-items:center;gap:.9rem;padding:.7rem 0;display:flex}.contact .contact__rows button,.contact .contact__rows a{text-align:left;color:var(--ink);font-family:var(--mono);letter-spacing:.06em;cursor:pointer;background:0 0;border:0;flex:1;justify-content:space-between;align-items:baseline;gap:1rem;margin:0;padding:0;font-size:12px;text-decoration:none;display:flex}.contact .contact__rows button:hover:not(:disabled),.contact .contact__rows a:hover{color:#fff;background:0 0}.contact .contact__rows em{letter-spacing:.24em;text-transform:uppercase;color:var(--dim);font-size:9px;font-style:normal;transition:color .25s}.contact .contact__rows li:hover em{color:var(--ink)}.contact__foot{justify-content:space-between;align-items:center;gap:1rem;margin-top:clamp(.9rem,2.4vh,1.4rem);display:flex}.contact__socials{pointer-events:auto;gap:.5rem;display:flex}.contact__socials a{border:1px solid var(--faint);width:38px;height:38px;color:var(--dim);border-radius:50%;place-items:center;transition:color .25s,border-color .25s,background .25s;display:grid;position:relative}.contact__socials a:hover{color:#030305;background:var(--ink);border-color:var(--ink)}.contact__socials a:after{content:attr(data-tip);white-space:nowrap;background:var(--ink);color:#030305;font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;opacity:0;pointer-events:none;padding:.25rem .55rem;font-size:9px;transition:opacity .2s,transform .25s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px)}.contact__socials a:hover:after{opacity:1;transform:translate(-50%)}.contact .contact__legal{text-align:right;white-space:nowrap;font-family:var(--mono);letter-spacing:.14em;color:var(--dim);margin:0;font-size:10px;display:block}@media (height<=700px){.contact .letter__msg textarea{min-height:2.6rem}.contact .contact__rows li{padding:.5rem 0}}@media (width<=900px){.contact .blank--name{width:8.5ch}.contact .blank--email{width:12ch}.contact .blank--phone{width:9ch}}.skip{z-index:400;background:var(--ink);color:#030305;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;padding:.55rem 1rem;font-size:11px;text-decoration:none;transition:transform .25s;position:fixed;top:10px;left:50%;transform:translate(-50%,-160%)}.skip:focus,.skip:focus-visible{outline-offset:3px;outline:2px solid #fff;transform:translate(-50%)}a:focus-visible,button:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline-offset:3px;outline:2px solid #e9edf6e6}.contact .blank input:focus-visible,.contact .letter__msg textarea:focus-visible{outline:none}.hud__quick{pointer-events:auto;color:var(--ink);font:inherit;letter-spacing:inherit;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #e9edf647;align-items:center;gap:.5em;padding:.55rem .9rem;text-decoration:none;transition:background .3s,color .3s,border-color .3s;display:inline-flex}.hud__quick:hover{background:var(--ink);color:#030305;border-color:var(--ink)}.hud__quick--resume{color:var(--dim);border-color:#0000}.hud__quick--resume:hover{color:var(--ink);background:0 0;border-color:#0000}@media (width<=720px){.hud__quick--resume{display:none}.hud__quick{padding:.45rem .7rem}}.boot__skip{opacity:.85}.project__layers--decisions li{opacity:.6}.project__layers--decisions li span{opacity:0;max-height:0;margin-top:0;transition:max-height .5s,opacity .4s,margin-top .4s;display:block;overflow:hidden}.project__layers--decisions li.is-active span{opacity:1;max-height:8rem;margin-top:.3rem}.mcard__soon{color:var(--dim)}.contact__sub span{color:#e9edf699}.ptile span,.portrait-hover__hint{color:#ffe2c4c7}.process-word i span,.project__count span{color:#e9edf68c}@media (width<=1000px),(height<=640px){.hud__bl{display:none}}.beat--caption-right{padding-right:calc(var(--gutter) + 72px)}@media (width<=900px){.beat--gitlog,.beat--stats{padding-right:64px}.contact__foot{padding-right:52px}}@media (height<=480px){.engineering .display,.process-panel .display{display:none}.principles{gap:.5rem;margin-top:0}.human-panel .display--sm{font-size:1.3rem}.human-panel .btn{padding:.55rem .9rem}.human-panel{max-width:22rem}.beat--eng,.beat--human{justify-content:center;padding-top:56px;padding-bottom:12px}.principles li b{letter-spacing:.1em;font-size:.78rem}.principles li{row-gap:0}}.portrait-hover{width:calc(min(39.3vh,26.2vw)/1.25);height:min(39.3vh,26.2vw);top:51.5%;left:67%}.ptile{--gap:46px;--in:12px;margin-top:-1.6rem}.ptile--1,.ptile--2,.ptile--3,.ptile--4{inset:auto}.ptile--1{top:8%;right:calc(100% + var(--gap))}.ptile--3{top:66%;right:calc(100% + var(--gap))}.ptile--2{top:22%;left:calc(100% + var(--gap))}.ptile--4{top:82%;left:calc(100% + var(--gap))}.ptile:before,.ptile:after{content:"";position:absolute;top:50%}.ptile:before{width:calc(var(--gap) + var(--in));height:1px;transition:transform .5s cubic-bezier(.2, .7, .2, 1) calc(var(--i) * 80ms + .12s);background:#ffe2c48c;margin-top:-.5px;transform:scaleX(0)}.ptile:after{width:7px;height:7px;transition:transform .35s ease calc(var(--i) * 80ms + 80ms);background:#ffe2c4;border-radius:50%;margin-top:-3.5px;transform:scale(0);box-shadow:0 0 10px #ffe2c4b3}.ptile--1:before,.ptile--3:before{transform-origin:100%;left:100%}.ptile--1:after,.ptile--3:after{left:calc(100% + var(--gap) + var(--in) - 3.5px)}.ptile--2:before,.ptile--4:before{transform-origin:0;right:100%}.portrait-hover.is-on .ptile:before{transform:scaleX(1)}.portrait-hover.is-on .ptile:after{transform:scale(1)}@media (aspect-ratio<=13/10),(width<=900px){.portrait-hover{width:17.8vh;height:22.2vh;top:36.6%;left:50%}.ptile{--gap:28px;--in:8px;margin-top:-1.3rem}.ptile--1{top:8%;right:calc(100% + var(--gap))}.ptile--3{top:66%;right:calc(100% + var(--gap))}.ptile--2{top:22%;left:calc(100% + var(--gap))}.ptile--4{top:82%;left:calc(100% + var(--gap))}}@media (prefers-reduced-motion:reduce){.ptile:before,.ptile:after{transition:none}}.contact .letter__msg>span{font-family:var(--sans);letter-spacing:0;text-transform:none;color:#e9edf6e6;font-size:clamp(1.15rem,min(1.7vw,3vh),1.65rem);font-weight:300;line-height:2}.contact .letter__msg textarea{font-family:var(--sans)}.pin-screen{perspective:1400px;width:100%;padding:.4rem .6rem;position:relative}.pin-screen__tilt{transform-style:preserve-3d;border-radius:12px;transition:transform .7s cubic-bezier(.2,.7,.2,1);position:relative;transform:rotateY(-9deg)rotateX(3deg);box-shadow:0 30px 70px #0000008c,0 0 0 1px #e9edf614}.pin-screen:hover .pin-screen__tilt{transform:rotateY(-3deg)rotateX(1deg)}.pin-screen .mock{border-radius:12px}.pin-screen__sheen{pointer-events:none;background:linear-gradient(105deg,#0000 38%,#a0b9ff21 50%,#0000 62%) 0 0/260% 100%;border-radius:12px;animation:6s ease-in-out infinite sheen;position:absolute;inset:0}@keyframes sheen{0%{background-position:120% 0}to{background-position:-80% 0}}.pin-screen__frame{pointer-events:none;border:1px solid var(--c);box-shadow:0 0 22px color-mix(in srgb, var(--c) 32%, transparent);transition:left .55s cubic-bezier(.2,.7,.2,1),top .55s cubic-bezier(.2,.7,.2,1),width .55s cubic-bezier(.2,.7,.2,1),height .55s cubic-bezier(.2,.7,.2,1);position:absolute}.pin-screen__frame i{border:1px solid var(--c);background:#05060d;width:6px;height:6px;position:absolute}.pin-screen__frame i:first-child{top:-4px;left:-4px}.pin-screen__frame i:nth-child(2){top:-4px;right:-4px}.pin-screen__frame i:nth-child(3){bottom:-4px;left:-4px}.pin-screen__frame i:nth-child(4){bottom:-4px;right:-4px}.pin-screen__tag{white-space:nowrap;text-overflow:ellipsis;background:var(--c);color:#030305;max-width:22rem;font-family:var(--mono);letter-spacing:.06em;padding:.22rem .55rem;font-size:10px;animation:.4s both tagIn;position:absolute;bottom:calc(100% + 5px);left:16px;overflow:hidden}@keyframes tagIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.pin-screen__pin.hs-pin{position:absolute}.pin-screen--compact .pin-screen__tag{font-size:9px}.pin-screen--compact .pin-screen__pin.hs-pin{width:18px;height:18px;font-size:10px}@media (width<=900px){.pin-screen__tilt,.pin-screen:hover .pin-screen__tilt{transform:none}}@media (prefers-reduced-motion:reduce){.pin-screen__sheen{animation:none}.pin-screen__frame,.pin-screen__tilt{transition:none}.pin-screen__tag{animation:none}}.pcard__shot{padding:1.4rem 1.2rem 1rem}.cs{scrollbar-width:thin;scrollbar-color:#e9edf647 transparent}.cs::-webkit-scrollbar{width:7px;display:block}.cs::-webkit-scrollbar-track{background:0 0}.cs::-webkit-scrollbar-thumb{background:#e9edf63d;border-radius:4px}.cs::-webkit-scrollbar-thumb:hover{background:#e9edf66b}.cs__bar{padding:1.05rem var(--gutter);-webkit-backdrop-filter:blur(14px);background:#030305db;border-bottom:1px solid #e9edf614}.cs{scroll-padding-top:76px}.cs__hero{min-height:calc(100vh - 6rem)}@media (width<=900px){.cs__hero{min-height:0}}.pin-screen__tag{max-width:min(22rem,78vw)}.pin-screen__tag--r{left:auto;right:16px}.pin-screen__tag{white-space:normal;text-overflow:clip;width:max-content;max-width:min(20rem,56vw);line-height:1.35;overflow:visible}.cs__hero-visual{gap:.8rem;min-width:0;display:grid}.hero-decisions{gap:.3rem;padding:0 .6rem;list-style:none;display:grid}.hero-decisions button{text-align:left;border:0;border-top:1px solid var(--faint);width:100%;color:var(--dim);font:inherit;cursor:pointer;background:0 0;align-items:baseline;gap:.9rem;padding:.55rem .2rem;font-size:.95rem;font-weight:300;transition:color .25s,padding-left .35s;display:flex}.hero-decisions li:last-child button{border-bottom:1px solid var(--faint)}.hero-decisions button i{font-style:normal;font-family:var(--mono);color:var(--faint);font-size:10px;transition:color .25s}.hero-decisions button.is-on{color:var(--ink);padding-left:.5rem}.hero-decisions button.is-on i{color:var(--c,var(--accent))}.hero-decisions button:hover{color:var(--ink)}.cs__pn{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:clamp(3rem,10vh,6rem) 0 2rem;display:grid}.pn{text-align:left;border:1px solid var(--faint);color:var(--ink);font:inherit;cursor:pointer;background:0 0;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:1rem;padding:.9rem;transition:border-color .3s,transform .4s,background .3s;display:grid}.pn:hover{border-color:var(--c,var(--accent));background:#e9edf608;transform:translateY(-3px)}.pn--next{direction:rtl}.pn--next>*{direction:ltr}.pn__shot{border:1px solid var(--faint);background:#05060d;border-radius:6px;display:block;overflow:hidden}.pn__shot .mock{display:block}.pn__text{gap:.35rem;display:grid}.pn__text small{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--c,var(--accent));font-size:10px}.pn__text b{letter-spacing:.03em;font-size:clamp(1.2rem,2vw,1.8rem);font-weight:300}.pn__text em{font-style:normal;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--dim);font-size:10px}.pn--next .pn__text{text-align:right}@media (width<=720px){.cs__pn{grid-template-columns:1fr}.pn--next{direction:ltr}.pn--next .pn__text{text-align:left}}.pin-screen__img{aspect-ratio:640/400;object-fit:cover;border-radius:12px;width:100%;display:block}.chips{flex-wrap:wrap;gap:.5rem;margin:0 0 .6rem;display:flex}.chip{border:1px solid var(--faint);color:var(--dim);font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:99px;padding:.5rem .95rem;font-size:10px;transition:color .25s,border-color .25s,background .25s}.chip:hover{color:var(--ink);border-color:#e9edf680}.chip.is-on{background:var(--ink);color:#030305;border-color:var(--ink)}.projects__empty{color:var(--dim);padding:1.4rem 0;font-size:.95rem;font-weight:300}.cs__title{overflow-wrap:anywhere;font-size:clamp(2.6rem,min(7.2vw,15vh),8rem)}@media (width<=900px){.cs__title{font-size:clamp(2.6rem,13vw,5rem)}}@media (width<=480px){.hud__tl span,.beat--tech-title .aside,.world-label--layer,.readout__meta{display:none}.lab-size--tag{white-space:normal;max-width:150px}}.ptile{--h:calc(var(--gap) * .5);--len:calc((var(--gap) * .5 + var(--in)) / .82);--ang:35deg}.ptile:before{width:var(--h)}.ptile:after{width:var(--len);height:1px;box-shadow:none;opacity:0;transform:rotate(var(--r));transition:opacity .3s ease calc(var(--i) * 80ms + .42s);background:#ffe2c48c;border-radius:0;margin-top:-.5px}.ptile--1:after,.ptile--3:after{left:calc(100% + var(--h));transform-origin:0;right:auto}.ptile--2:after,.ptile--4:after{right:calc(100% + var(--h));transform-origin:100%;left:auto}.ptile--1{--r:var(--ang)}.ptile--3,.ptile--2{--r:calc(var(--ang) * -1)}.ptile--4{--r:var(--ang)}.portrait-hover.is-on .ptile:after{opacity:1;transform:rotate(var(--r))}.ptile--2,.ptile--4{--x:38px}.ptile--2:before,.ptile--4:before{width:calc(var(--h) + var(--x))}.ptile--2:after,.ptile--4:after{right:calc(100% + var(--h) + var(--x))}.about__now{gap:0;display:grid}.about__now div{border-top:1px solid var(--faint);grid-template-columns:minmax(0,11rem) minmax(0,1fr);gap:1.6rem;padding:1rem 0;display:grid}.about__now div:first-child{border-top:0;padding-top:0}.about__now dt{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--dim);padding-top:.3rem;font-size:10px}.about__now dd{color:var(--ink);font-size:1.05rem;font-weight:300;line-height:1.6}.about__quotes{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem;display:grid}.about__quotes figure{border:1px solid var(--faint);align-content:start;gap:1.1rem;margin:0;padding:1.4rem;display:grid}.about__quotes blockquote{color:var(--ink);margin:0;font-size:1.1rem;font-weight:300;line-height:1.6}.about__quotes figcaption{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--dim);flex-wrap:wrap;align-items:baseline;gap:.3rem .9rem;font-size:10px;display:flex}.about__quotes figcaption b{color:var(--ink);font-weight:400}.about__quotes figcaption em{border:1px solid var(--faint);border-radius:99px;padding:.1rem .5rem;font-style:normal}@media (width<=720px){.about__now div{grid-template-columns:1fr;gap:.3rem}.about__quotes{grid-template-columns:1fr}}.resume{z-index:50;overscroll-behavior:contain;padding:0 var(--gutter) 4rem;background:#05060d;outline:none;position:fixed;inset:0;overflow-y:auto}.resume__tools{z-index:2;border-bottom:1px solid var(--faint);max-width:52rem;font-family:var(--mono);letter-spacing:.2em;background:#05060d;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem 1.4rem;margin:0 auto;padding:1rem 0;font-size:11px;display:flex;position:sticky;top:0}.resume__actions{flex-wrap:wrap;gap:.6rem;display:flex}.resume__page{color:#14161c;background:#fff;max-width:52rem;margin:2rem auto 0;padding:clamp(1.4rem,5vw,3rem);font-size:.95rem;line-height:1.55}.resume__page h1{letter-spacing:.01em;font-size:2rem;font-weight:500}.resume__role{color:#3a3f4d;margin-top:.15rem;font-size:1.05rem}.resume__contact{color:#3a3f4d;overflow-wrap:anywhere;margin-top:.5rem;font-size:.85rem}.resume__head{border-bottom:2px solid #14161c;padding-bottom:1rem}.resume__page section{break-inside:avoid-page;margin-top:1.4rem}.resume__page h2{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:#14161c;border-bottom:1px solid #c9ccd6;margin-bottom:.5rem;padding-bottom:.3rem;font-size:.72rem;font-weight:500}.resume__page p{margin:.25rem 0}.resume__page ul{gap:.3rem;margin:.3rem 0 .9rem 1.1rem;list-style:outside;display:grid}.resume__row{justify-content:space-between;gap:1rem;display:flex}.resume__row>span:last-child{white-space:nowrap;color:#3a3f4d}.resume__job{break-inside:avoid}@media (width<=560px){.resume__row{flex-direction:column;gap:0}}@media print{@page{margin:14mm}html,body{background:#fff!important;height:auto!important;overflow:visible!important}#root>:not(.resume),canvas{display:none!important}.resume{background:#fff;padding:0;position:static;overflow:visible}.resume__tools{display:none}.resume__page{max-width:none;margin:0;padding:0;font-size:10.5pt}}.scrollnav{right:var(--gutter);bottom:var(--gutter);pointer-events:none;width:34px;height:clamp(96px,20vh,160px);position:absolute}.scrollnav .hud__rail{width:1px;height:auto;margin-left:-.5px;position:absolute;inset:0 auto 0 50%}.scrollnav .hud__rail div{transform:scaleY(var(--p,0));transform-origin:top}.scrollnav .to-top{bottom:auto;left:0;right:auto;top:calc(var(--p,0) * (100% - 34px));touch-action:none;cursor:grab;background:#030305d9;border:1px solid #e9edf659;width:34px;height:34px;transition:opacity .4s,transform .4s,border-color .3s;position:absolute;transform:scale(.85)}.scrollnav .to-top.is-shown{transform:none}.scrollnav .to-top:hover{filter:none;border-color:var(--ink);transform:scale(1.08)}.scrollnav .to-top:active{cursor:grabbing}.scrollnav .to-top__label{right:44px}@media (width<=900px){.scrollnav{position:static}.scrollnav .hud__rail{width:auto;height:2px;margin:0;position:absolute;inset:auto 0 0}.scrollnav .hud__rail div{transform:scaleX(var(--p,0));transform-origin:0}.scrollnav .to-top{position:absolute;inset:auto 14px 22px auto}}.aside,.cs__lede,.human-panel__lede,.contact__sub{text-wrap-style:pretty}.aside,.display,.cs__title,.cs__h{text-wrap-style:balance}.cs p,.cs li,.cs dd,.cs blockquote,.cs figcaption,.resume p,.resume li,.human-panel p,.contact p,.beat p,.beat li,.beat dd{text-wrap-style:pretty}.cs h3,.pn__text b,.mcard h3,.mcard p{text-wrap-style:balance}.project__name{white-space:nowrap}.project__name--long{font-size:clamp(2rem,min(5.2vw,8.6vh),4.8rem)}.beat--more{padding:0 var(--gutter);justify-content:center}.more{place-items:center;width:min(100%,44rem);padding:clamp(3rem,12vh,6rem) 0;display:grid;position:relative}.more__lines{color:#e9edf614;pointer-events:none;width:min(150vw,60rem);height:auto;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.more .more-card{text-align:center;justify-items:center;position:relative}@media (width<=720px){.more__lines{width:130vw}}.projects__hero{position:relative;overflow:clip}.projects__hero>:not(.pfield){z-index:1;position:relative}.pfield{pointer-events:none;opacity:.85;width:min(52%,34rem);height:100%;position:absolute;top:0;bottom:0;right:-4%;-webkit-mask-image:radial-gradient(closest-side,#000 55%,#0000 100%);mask-image:radial-gradient(closest-side,#000 55%,#0000 100%)}@media (width<=720px){.pfield{opacity:.45;width:70%;right:-20%}}.portrait-hover__hint{white-space:nowrap}.ptile--5{top:52%;left:calc(100% + var(--gap));--r:0deg;--x:38px}.ptile--5:before{width:calc(var(--h) + var(--x));transform-origin:0;left:auto;right:100%}.ptile--5:after{right:calc(100% + var(--h) + var(--x));transform-origin:100%;left:auto}.human-panel__lede{margin-bottom:1.8rem}.ptile--1{--gap:34px;top:-4%}.ptile--3{--gap:84px;top:80%}.ptile--2{--gap:78px;top:6%}.ptile--5{--gap:30px;top:44%}.ptile--4{--gap:52px;top:92%}@media (width<=900px){.ptile--1{--gap:22px}.ptile--3,.ptile--2{--gap:40px}.ptile--5{--gap:20px}.ptile--4{--gap:28px}}.cs__title{white-space:nowrap;overflow-wrap:normal;font-size:clamp(2.4rem,min(5.4vw,12vh),6rem)}@media (width<=900px){.cs__title{font-size:clamp(2.2rem,10.5vw,4.4rem)}}.cs__hero-visual{justify-self:center;width:min(100%,27rem)}.pcard__shot .pin-screen{width:66%;margin:0 auto}@media (width<=900px){.cs__hero-visual{width:min(100%,24rem)}.pcard__shot .pin-screen{width:84%}}.shotgrid+.shotgrid{margin-top:clamp(2rem,6vh,3.4rem)}.shotgrid__title{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--dim);margin-bottom:1rem;font-size:11px;font-weight:400}.shotgrid__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.slot{min-width:0;margin:0}.slot img{aspect-ratio:16/10;object-fit:cover;border:1px solid var(--faint);background:#05060d;width:100%;display:block}.slot__empty{aspect-ratio:16/10;background:repeating-linear-gradient(135deg,#e9edf605 0 10px,#0000 10px 20px);border:1px dashed #e9edf633;place-items:center;display:grid}.slot__empty span{font-family:var(--mono);letter-spacing:.3em;color:#e9edf64d;font-size:12px}.slot figcaption{font-family:var(--mono);letter-spacing:.14em;color:var(--dim);margin-top:.6rem;font-size:10px}@media (width<=720px){.shotgrid__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}}@media (width<=480px){.contact .contact__sub{display:none}}.cs__back,.hud__chapter{min-height:36px}.about__foot a{align-items:center;min-height:36px;display:inline-flex}@media (pointer:coarse){.cs__back,.hud__chapter,.about__foot a{min-height:44px}.about__foot{gap:.4rem 1.2rem}}@media (width<=640px){.boot__count{font-size:clamp(3.4rem,15vw,4.4rem)}}.contact{max-width:min(36rem,50vw)}.contact .blank--phone{width:13.5ch}.contact .contact__rows button,.contact .contact__rows a{align-items:center;min-height:0}.contact .contact__rows li{padding:.75rem 0}.contact .blank input:user-invalid{background:#e9edf614;border-bottom-style:dashed;border-bottom-color:#fff}.contact .letter__msg textarea:user-invalid{border-bottom-style:dashed}@media (width<=900px){.contact{max-width:none}}@media (width<=480px){.contact .blank--phone{width:12ch}}.layers{display:contents}.soon{z-index:80;align-items:flex-end;display:flex;position:fixed;inset:0}.soon__backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;background:#0303059e;border:0;padding:0;animation:.5s both soon-fade;position:absolute;inset:0}.soon__sheet{width:100%;max-height:92vh;box-shadow:0 -30px 90px #0009, 0 -1px 0 var(--c);background:linear-gradient(#0a0c16f7,#05060d 70%);border-top:1px solid #e9edf647;transition:transform .35s cubic-bezier(.2,.7,.2,1);animation:.75s cubic-bezier(.16,.9,.2,1) both soon-up;position:relative;overflow:hidden}@keyframes soon-up{0%{transform:translateY(105%)}to{transform:none}}@keyframes soon-fade{0%{opacity:0}to{opacity:1}}.soon__tape{opacity:.55;background:repeating-linear-gradient(-45deg,#e9edf6d9 0 10px,#05060d 10px 20px) 0 0/28.28px 28.28px;height:7px;animation:2.4s linear infinite soon-tape}@keyframes soon-tape{to{background-position:28.28px 0}}.soon__handle{cursor:grab;touch-action:none;place-items:center;padding:.7rem 0 .2rem;display:grid}.soon__handle:active{cursor:grabbing}.soon__handle i{background:#e9edf64d;border-radius:4px;width:44px;height:4px}.soon__close{top:1.3rem;right:var(--gutter);z-index:3;width:38px;height:38px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #e9edf640;border-radius:50%;place-items:center;padding:0;font-size:1.3rem;line-height:1;transition:background .25s,color .25s;display:grid;position:absolute}.soon__close:hover{background:var(--ink);color:#030305}.soon__grid{max-width:76rem;padding:clamp(1rem, 4vh, 2.4rem) var(--gutter) clamp(1.6rem, 6vh, 3.4rem);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(1.5rem,5vw,5rem);margin:0 auto;display:grid}.soon__copy{gap:1.1rem;min-width:0;display:grid}.soon__copy>*{animation:.8s cubic-bezier(.2,.7,.2,1) both rise}.soon__copy>:first-child{animation-delay:.25s}.soon__copy>:nth-child(2){animation-delay:.33s}.soon__copy>:nth-child(3){animation-delay:.41s}.soon__copy>:nth-child(4){animation-delay:.49s}.soon__copy>:nth-child(5){animation-delay:.57s}.soon__eyebrow{font-family:var(--mono);letter-spacing:.26em;text-transform:uppercase;color:var(--dim);align-items:center;gap:.7rem;font-size:10px;display:flex}.soon__eyebrow i{background:var(--c);width:7px;height:7px;box-shadow:0 0 0 0 var(--c);border-radius:50%;flex:none;animation:2s ease-out infinite soon-ping}@keyframes soon-ping{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--c) 60%, transparent)}70%,to{box-shadow:0 0 0 10px #0000}}.soon__title{letter-spacing:.04em;white-space:nowrap;font-size:clamp(2.2rem,min(6vw,9vh),4.6rem);font-weight:300;line-height:1}.soon__title span{letter-spacing:0;color:#e9edf6cc;white-space:normal;text-wrap-style:balance;margin-top:.7rem;font-size:clamp(1.1rem,2.2vw,1.6rem);line-height:1.3;display:block}.soon__text{max-width:34rem;color:var(--dim);text-wrap-style:pretty;font-size:1rem;font-weight:300;line-height:1.65}.soon__steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem;margin-top:.3rem;list-style:none;display:grid}.soon__steps li{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:#e9edf659;gap:.5rem;padding-top:.9rem;font-size:9.5px;display:grid;position:relative}.soon__steps li i{background:#e9edf624;height:2px;position:absolute;top:0;left:0;right:0;overflow:hidden}.soon__steps li i:after{content:"";background:var(--c);transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.soon__steps li.is-done{color:var(--ink)}.soon__steps li.is-done i:after{animation:.9s cubic-bezier(.2,.7,.2,1) .6s both soon-fill}.soon__steps li.is-active{color:var(--ink)}.soon__steps li.is-active i:after{animation:2.4s ease-in-out 1.5s infinite alternate both soon-work}@keyframes soon-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes soon-work{0%{transform:scaleX(calc(var(--w,.7) - .16))}to{transform:scaleX(var(--w,.7))}}.soon__actions{flex-wrap:wrap;gap:.8rem;margin-top:.4rem;display:flex}.soon__viz{place-items:center;min-width:0;padding:clamp(1rem,4vw,2.6rem);animation:.9s cubic-bezier(.2,.7,.2,1) .3s both rise;display:grid;position:relative}.soon__viz .pfield{opacity:.75;width:128%;height:160%;position:absolute;inset:-30% auto auto -14%;-webkit-mask-image:radial-gradient(closest-side,#000 50%,#0000 100%);mask-image:radial-gradient(closest-side,#000 50%,#0000 100%)}.soon__viz:before{content:"";background-image:linear-gradient(#e9edf60d 1px,#0000 1px),linear-gradient(90deg,#e9edf60d 1px,#0000 1px);background-size:28px 28px;position:absolute;inset:6% 4%;-webkit-mask-image:radial-gradient(closest-side,#000 40%,#0000 100%);mask-image:radial-gradient(closest-side,#000 40%,#0000 100%)}.soon__frame{aspect-ratio:640/400;background:#05060d;border:1px solid #e9edf629;width:100%;max-width:30rem;position:relative;box-shadow:0 30px 70px #0000008c}.soon__frame .mock{width:100%;height:100%;position:absolute;inset:0}.soon__hi{clip-path:inset(0 100% 0 0);animation:5.5s ease-in-out .9s infinite soon-wipe;position:absolute;inset:0}.soon__scan{background:var(--c);width:2px;box-shadow:0 0 18px 2px var(--c);animation:5.5s ease-in-out .9s infinite soon-scan;position:absolute;top:0;bottom:0;left:0}@keyframes soon-wipe{0%{clip-path:inset(0 100% 0 0)}45%,62%{clip-path:inset(0)}to{clip-path:inset(0 0 0 100%)}}@keyframes soon-scan{0%{opacity:1;left:0}45%{opacity:1;left:calc(100% - 2px)}62%{opacity:0;left:calc(100% - 2px)}63%{opacity:0;left:0}to{opacity:0;left:0}}.soon__c{border:0 solid #e9edf6bf;width:14px;height:14px;position:absolute}.soon__c--tl{border-width:1px 0 0 1px;top:-7px;left:-7px}.soon__c--tr{border-width:1px 1px 0 0;top:-7px;right:-7px}.soon__c--bl{border-width:0 0 1px 1px;bottom:-7px;left:-7px}.soon__c--br{border-width:0 1px 1px 0;bottom:-7px;right:-7px}.soon__dim{font-family:var(--mono);letter-spacing:.2em;color:#e9edf673;font-size:9px;position:absolute}.soon__dim--w{text-align:center;bottom:-22px;left:0;right:0}.soon__dim--h{top:50%;right:-30px;transform:translateY(-50%)rotate(90deg)}.soon__chip{font-family:var(--mono);letter-spacing:.26em;text-transform:uppercase;color:var(--ink);background:#05060dd9;border:1px solid #e9edf638;align-items:center;gap:.6rem;padding:.35rem .8rem;font-size:9.5px;display:inline-flex;position:absolute;top:clamp(1rem,4vw,2.6rem);left:50%;transform:translate(-50%,-2.4rem)}.soon__chip i{background:var(--c);border-radius:50%;width:6px;height:6px;animation:1.2s steps(2,end) infinite soon-blink}@keyframes soon-blink{50%{opacity:.2}}@media (width<=900px){.soon__sheet{overscroll-behavior:contain;max-height:94vh;overflow:hidden auto}.soon__viz{overflow:clip}.soon__grid{grid-template-columns:1fr;gap:1.6rem;padding-top:.6rem}.soon__viz{order:-1;padding:1.6rem .4rem 1.2rem}.soon__frame{max-width:22rem}.soon__dim--h,.soon__chip{display:none}.soon__title{white-space:normal}}@media (width<=520px){.soon__steps{gap:.3rem}.soon__steps li{letter-spacing:.1em;font-size:8px}.soon__actions .btn{flex:100%;justify-content:center}}@media (height<=640px) and (width>=901px){.soon__text{display:none}.soon__viz{padding:.6rem 2rem 1.4rem}}@media (prefers-reduced-motion:reduce){.soon__backdrop,.soon__sheet,.soon__copy>*,.soon__viz,.soon__tape,.soon__eyebrow i,.soon__chip i,.soon__scan{animation:none}.soon__hi{clip-path:inset(0);animation:none}.soon__scan{display:none}.soon__steps li.is-active i:after{transform:scaleX(var(--w,.7));animation:none}.soon__steps li.is-done i:after{animation:none;transform:scaleX(1)}}@media (width<=520px){.soon__eyebrow{letter-spacing:.16em;font-size:9px}}@media (width<=560px){.hud__quick--lite{display:none}}
