@font-face{font-family:Anton;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/anton-latin-400-normal-Byf51wtH.woff2)format("woff2"),url(/assets/anton-latin-400-normal-AUNGEG_V.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2)format("woff2"),url(/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff)format("woff")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2)format("woff2"),url(/assets/space-grotesk-latin-700-normal-CwsQ-cCU.woff)format("woff")}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/caveat-latin-700-normal-D8_1Nw6V.woff2)format("woff2"),url(/assets/caveat-latin-700-normal-cPyBTTZN.woff)format("woff")}@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")}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}:root{--bg:#07070a;--bg-2:#101015;--text:#f4f4f5;--muted:#a1a1aa;--accent:#fb1f20;--blue:#2563eb;--blue-text:#60a5fa;--card:#ffffff08;--border:#ffffff1a;--border-strong:#ffffff47;--pill-bg:#101015eb;--handle-fill:#fff;--font-display:"Anton", "Impact", sans-serif;--font-sans:"Space Grotesk", system-ui, sans-serif;--font-script:"Caveat", cursive;--font-mono:"JetBrains Mono", ui-monospace, monospace}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;overflow-x:clip}.page{z-index:1;position:relative}a{color:inherit}html.is-loading,html.is-loading body{touch-action:none;overflow:hidden}html.is-loading .header__logo{visibility:hidden}:focus-visible{outline:2px solid var(--blue-text);outline-offset:3px}main:focus{outline:none}::selection{background:var(--accent);color:#fff}.is-unbuilt{pointer-events:none;position:relative;color:#0000!important;-webkit-text-stroke-color:transparent!important;box-shadow:none!important;background:0 0!important;border-color:#0000!important}.is-unbuilt *{visibility:hidden}.is-unbuilt:before{content:"";border-radius:inherit;pointer-events:none;visibility:visible;border:1px dashed #ffffff3d;position:absolute;inset:0}.is-unbuilt:after{content:attr(data-size);color:#fff6;font:400 9px/1 var(--font-mono);letter-spacing:.04em;visibility:visible;position:absolute;bottom:3px;right:5px}.caret{vertical-align:text-bottom;width:0;height:1em;display:inline-block;position:relative}.caret:after{content:"";background:var(--text);width:2px;height:100%;animation:.9s step-end infinite blink;position:absolute;top:0;left:1px}@keyframes blink{50%{opacity:0}}.agent-cursor{z-index:60;pointer-events:none;color:var(--agent-color);opacity:0;visibility:hidden;will-change:transform;position:fixed;top:0;left:0}html.is-loading .agent-cursor{z-index:101}.agent-cursor__arrow{display:block}.agent-cursor__ibeam{filter:drop-shadow(0 0 1px #000);display:none;position:absolute;top:-12px;left:-8px}.agent-cursor[data-mode=ibeam] .agent-cursor__arrow{display:none}.agent-cursor[data-mode=ibeam] .agent-cursor__ibeam{display:block}.agent-cursor__tag{background:var(--agent-color);color:#fff;font:500 12px/1.2 var(--font-mono);white-space:nowrap;border-radius:4px;padding:3px 8px;transition:transform .18s ease-out;position:absolute;top:0;left:0;transform:translate(16px,20px)}.agent-cursor[data-side=tl] .agent-cursor__tag{transform:translate(calc(-100% - 6px),calc(-100% - 4px))}.agent-cursor[data-side=tr] .agent-cursor__tag{transform:translate(14px,calc(-100% - 4px))}.agent-cursor[data-side=bl] .agent-cursor__tag{transform:translate(calc(-100% - 6px),18px)}.agent-cursor[data-side=br] .agent-cursor__tag{transform:translate(16px,20px)}.background{z-index:0;pointer-events:none;background:radial-gradient(55% 45% at 72% 28%,#fb1f201a,#0000 70%),radial-gradient(60% 40% at 50% 105%,#ff783c17,#0000 70%),radial-gradient(40% 40% at 0 60%,#3b82f60d,#0000 70%);position:fixed;inset:0}.background:after{content:"";background-image:linear-gradient(90deg,#ffffff09 1px,#0000 1px),linear-gradient(#ffffff09 1px,#0000 1px);background-size:64px 64px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 70% at 50% 40%,#000,#0000);mask-image:radial-gradient(70% 70% at 50% 40%,#000,#0000)}.header{z-index:30;background:linear-gradient(var(--bg) 70%, transparent);height:68px;font:500 12px/1 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:1rem;padding:0 5vw;display:flex;position:fixed;top:0;left:0;right:0}.header a{text-decoration:none}.header__logo{border-radius:8px;width:36px;height:36px;display:block}.header__logo img{width:100%;height:100%;display:block}.header__nav{color:var(--muted);gap:2rem;display:flex}.header__nav a:hover{color:var(--text)}.header__right{align-items:center;gap:1.25rem;display:flex}.header__status{color:var(--text);align-items:center;gap:.5rem;display:flex}.header__status i{background:#22c55e;border-radius:50%;width:7px;height:7px;position:relative}.header__status i:after{content:"";background:#22c55e;border-radius:50%;animation:1.8s ease-out infinite pulse-ring;position:absolute;inset:0}@keyframes pulse-ring{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(3.2)}}@media (prefers-reduced-motion:reduce){.header__status i:after{animation:none;display:none}}.header__dispatch{color:var(--blue-text);text-underline-offset:4px;text-decoration:underline!important}.lang-switch{border:1px solid var(--border-strong);border-radius:6px;display:flex;overflow:hidden}.lang-switch__button{color:var(--muted);font:inherit;letter-spacing:.1em;cursor:pointer;background:0 0;border:0;padding:.4rem .6rem}.lang-switch__button:hover{color:var(--text)}.lang-switch__button[aria-pressed=true]{background:var(--text);color:var(--bg);cursor:default}.skip-link{background:var(--text);color:var(--bg);border-radius:6px;padding:.6rem 1rem;position:absolute;top:-60px;left:12px}.skip-link:focus{top:12px}@media (width<=860px){.header__nav{display:none}}@media (width<=640px){.header__status{display:none}}@media (width<=400px){.header__dispatch{display:none}}.loader{z-index:100;pointer-events:none;position:fixed;inset:0}.loader__panel{background:var(--bg);width:50.2%;position:absolute;top:0;bottom:0}.loader__panel--l{left:0}.loader__panel--r{right:0}.loader__center{flex-direction:column;justify-content:center;align-items:center;gap:2rem;display:flex;position:absolute;inset:0}.loader__glow{aspect-ratio:1;opacity:0;background:radial-gradient(closest-side,#fb1f2047,#0000);width:min(80vw,520px);position:absolute;top:50%;left:50%;transform:translate(-50%,-62%)}.loader__logo{width:120px;height:120px;display:block;position:relative}.loader__info{flex-direction:column;align-items:center;gap:.9rem;display:flex;position:relative}.loader__track{background:var(--border);width:min(220px,60vw);height:2px;overflow:hidden}.loader__bar{background:var(--accent);transform-origin:0;width:100%;height:100%;display:block;transform:scaleX(0)}.loader__text{color:var(--muted);font:500 .72rem var(--font-mono);letter-spacing:.22em;margin:0}.selection-box{z-index:50;pointer-events:none;will-change:transform;width:0;height:0;position:fixed;top:0;left:0}.selection-box__frame{opacity:0;visibility:hidden;position:absolute;top:0;left:0}.sb-fill,.sb-line{transform-origin:0 0;width:1px;height:1px;position:absolute;top:0;left:0}.sb-fill{background:color-mix(in srgb, var(--agent-color) 7%, transparent)}.sb-line{background:var(--agent-color)}.sb-handle{width:8px;height:8px;position:absolute;top:0;left:0}.sb-handle i{background:var(--handle-fill);border:1px solid var(--agent-color);width:100%;height:100%;transition:transform .18s cubic-bezier(.3,1.7,.5,1);display:block}.selection-box--drawing .sb-handle i{transition:none;transform:scale(0)}.sb-tag{background:var(--agent-color);color:#fff;font:500 11px/1.3 var(--font-mono);white-space:nowrap;border-radius:3px;padding:2px 6px;position:absolute;top:0;left:0}.status-pill{left:50%;bottom:max(16px, env(safe-area-inset-bottom));z-index:40;border:1px solid var(--border);background:var(--pill-bg);max-width:calc(100vw - 24px);color:var(--text);font:400 12px/1.2 var(--font-mono);white-space:nowrap;pointer-events:none;border-radius:999px;align-items:center;gap:.75rem;padding:.6rem 1.1rem;display:flex;position:fixed;transform:translate(-50%)}.status-pill__info{align-items:center;gap:.85rem;display:flex}.status-pill__dots{display:flex}.status-pill__dot{border:1.5px solid var(--bg);border-radius:50%;width:9px;height:9px;margin-left:-3px}.status-pill__dot:first-child{margin-left:0}.status-pill__text{color:var(--muted)}.status-pill__text [data-pill]{color:var(--text);font-weight:700}.status-pill__track{background:var(--border);border-radius:3px;width:64px;height:3px;overflow:hidden}.status-pill__bar{background:var(--blue);transform-origin:0;width:100%;height:100%;display:block;transform:scaleX(0)}.status-pill__mode{background:var(--blue);color:#fff;border-radius:999px;padding:.2rem .55rem;font-weight:700}.status-pill__replay{pointer-events:auto;border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:.2rem .65rem}.status-pill__replay:hover{border-color:var(--text)}@media (width<=520px){.status-pill{gap:.5rem;padding:.5rem .8rem;font-size:10.5px}.status-pill__info{gap:.55rem}.status-pill__track{display:none}}@media (width<=380px){.status-pill__layers{display:none}}.section{flex-direction:column;padding:clamp(5rem,14vh,9rem) 5vw 0;scroll-margin-top:64px;display:flex}.section--center{text-align:center;align-items:center}.eyebrow{color:var(--accent);font:500 clamp(.72rem, 1.4vw, .85rem) / 1.2 var(--font-mono);letter-spacing:.16em;text-transform:uppercase;margin:0 0 1rem}.section__title{font:700 clamp(2.2rem, 6.4vw, 5rem) / 1 var(--font-sans);letter-spacing:-.035em;align-self:flex-start;margin:0 0 clamp(1.75rem,4vw,3rem)}.section--center .section__title{align-self:center}.card{border:1px solid var(--border);background:var(--card);border-radius:10px;padding:1.4rem}.card__title{font:700 clamp(1.2rem, 2.2vw, 1.5rem) / 1.2 var(--font-sans);letter-spacing:-.02em;margin:0 0 .6rem}.card__title--small{font-size:1.05rem}.card__text{color:var(--muted);margin:0;line-height:1.65}.card__index{color:var(--accent);font:500 .75rem var(--font-mono);margin-bottom:.75rem;display:block}.tags{flex-wrap:wrap;gap:.45rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.tag{border:1px solid var(--border);color:var(--text);font:500 .72rem var(--font-mono);border-radius:6px;padding:.3rem .65rem}.chip{color:var(--accent);font:500 .68rem var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:#fb1f2024;border-radius:4px;padding:.25rem .6rem}.button{border:1.5px solid var(--accent);background:var(--accent);color:#fff;font:700 .8rem var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border-radius:6px;align-items:center;gap:.6rem;padding:.95rem 1.5rem;text-decoration:none;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.button:hover{color:var(--accent);background:0 0}.button--ghost{border-color:var(--border-strong);color:var(--text);background:0 0}.button--ghost:hover{border-color:var(--text);color:var(--text)}.button--big{padding:1.2rem 2.4rem;font-size:clamp(.85rem,2.2vw,1.05rem)}.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:1rem;display:grid}.cards--projects{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr))}.hero{--title-size:min(19.5vw, 34vh, 25rem);flex-direction:column;justify-content:center;min-height:100dvh;padding:5rem 5vw 5.5rem;display:flex}.hero__title{font:400 var(--title-size) / .88 var(--font-display);text-transform:uppercase;color:#0000;-webkit-text-stroke:1.5px var(--accent);-webkit-user-select:none;user-select:none;margin:0}.hero__grid{margin-top:calc(var(--title-size) * -.14);grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:center;gap:clamp(1.5rem,4vw,4rem);display:grid}.hero__copy{flex-direction:column;align-items:flex-start;display:flex}.hero__greeting{z-index:1;font:700 clamp(1.9rem, 4.6vw, 3.4rem) / 1 var(--font-script);transform-origin:0 100%;margin:0 0 -.35em .1em;position:relative;transform:rotate(-4deg)}.hero__name{background:var(--accent);color:#fff;font:700 clamp(2.6rem, 8vw, 6.5rem) / 1 var(--font-sans);letter-spacing:-.04em;margin:0;padding:.04em .28em .08em}.hero__role{border:1px solid var(--border-strong);font:500 clamp(.68rem, 1.3vw, .8rem) var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border-radius:4px;align-items:center;gap:.6rem;margin:1.5rem 0 0;padding:.5rem .8rem;display:flex}.hero__role i{background:var(--accent);border-radius:50%;width:7px;height:7px}.hero__subline{max-width:34rem;color:var(--muted);margin:1.5rem 0 0;font-size:clamp(.95rem,1.6vw,1.1rem);line-height:1.7}.hero__actions{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.hero__photo{aspect-ratio:4/5;border:2px solid var(--accent);background:var(--bg-2);justify-self:end;width:100%;max-width:24rem;margin:0;position:relative;overflow:hidden;box-shadow:14px 14px #fb1f202e}.hero__photo img{object-fit:cover;object-position:50% 18%;width:100%;height:100%;display:block}.hero__photo-tag{color:var(--text);font:500 10px/1.3 var(--font-mono);letter-spacing:.04em;background:#07070ac7;border-radius:3px;padding:3px 7px;position:absolute;bottom:10px;left:10px}.stats{flex-wrap:wrap;gap:clamp(1.5rem,5vw,4rem);margin:clamp(2rem,5vh,3.5rem) 0 0;padding:0;list-style:none;display:flex}.stat{flex-direction:column;gap:.25rem;display:flex}.stat strong{color:var(--accent);font:700 clamp(1.6rem, 3.4vw, 2.4rem) / 1 var(--font-sans);letter-spacing:-.03em}.stat span{color:var(--muted);font:500 .7rem var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.about{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:start;gap:1.5rem;display:grid}.about__text{align-self:start;max-width:42rem}.about__text p{color:var(--muted);margin:0 0 1.1rem;font-size:clamp(1rem,1.8vw,1.2rem);line-height:1.75}.about__text p:first-child{color:var(--text)}.facts{gap:1rem;margin:0;display:grid}.facts dt{color:var(--accent);font:500 .7rem var(--font-mono);letter-spacing:.12em;text-transform:uppercase}.facts dd{margin:.25rem 0 0;line-height:1.5}.highlights{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.jobs{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.job__head{flex-wrap:wrap;justify-content:space-between;gap:.25rem 1rem;display:flex}.job__period{color:var(--accent);font:500 .75rem var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.job__company{margin:0 0 1rem;font-weight:500}.job__company span{color:var(--muted);margin-left:.5rem;font-weight:400}.job__points{color:var(--muted);gap:.5rem;margin:0;padding-left:1.1rem;line-height:1.6;display:grid}.job__points li::marker{color:var(--accent)}.subhead{color:var(--accent);font:500 .85rem var(--font-mono);letter-spacing:.16em;text-transform:uppercase;margin:clamp(2.5rem,6vw,4rem) 0 1rem}.education{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.project{flex-direction:column;display:flex}.project__top{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.project__id{color:var(--muted);font:500 .7rem var(--font-mono)}.project .tags{margin-top:auto;padding-top:1rem}.project__link{color:var(--accent);font:500 .8rem var(--font-mono);margin-top:1rem}.contact__text{max-width:34rem;color:var(--muted);margin:0 0 2rem;font-size:clamp(1rem,1.8vw,1.2rem);line-height:1.7}.links{flex-wrap:wrap;justify-content:center;gap:.75rem 2rem;margin:2.5rem 0 0;padding:0;list-style:none;display:flex}.links a{color:var(--muted);font:500 .85rem var(--font-mono);overflow-wrap:anywhere;display:inline-block}.links a:hover{color:var(--text)}.footer{color:var(--muted);font:400 .75rem var(--font-mono);text-align:center;padding:6rem 5vw 7rem}.footer p{margin:0}@media (width<=860px){.hero__grid,.about{grid-template-columns:1fr}.hero__photo{justify-self:start;max-width:18rem}}.hero__actions .button{white-space:nowrap}.chip--live{color:#4ade80;background:#22c55e24;align-items:center;gap:.45rem;display:inline-flex}.chip--live i{background:#22c55e;border-radius:50%;width:6px;height:6px;position:relative}.chip--live i:after{content:"";background:#22c55e;border-radius:50%;animation:1.8s ease-out infinite pulse-ring;position:absolute;inset:0}.project--wip{border-style:dashed;border-color:var(--border-strong)}.wip{margin-top:auto;padding-top:1.25rem}.wip__track{background:var(--border);border-radius:4px;height:4px;position:relative;overflow:hidden}.wip__track i{background:linear-gradient(90deg, transparent, var(--accent), transparent);border-radius:4px;width:40%;height:100%;animation:1.6s ease-in-out infinite wip-slide;position:absolute;top:0;left:0}@keyframes wip-slide{0%{transform:translate(-100%)}to{transform:translate(250%)}}.wip__log{color:var(--muted);font:400 .75rem var(--font-mono);margin:.8rem 0 0}.wip__caret{vertical-align:text-bottom;background:var(--accent);width:7px;height:.95em;margin-left:3px;animation:.9s step-end infinite blink;display:inline-block}@media (prefers-reduced-motion:reduce){.chip--live i:after{animation:none;display:none}.wip__track i{width:55%;animation:none;transform:none}.wip__caret{animation:none}}.open-banner{border:1.5px solid var(--accent);background:radial-gradient(70% 90% at 50% 0%, #fb1f2029, transparent 70%), var(--card);text-align:center;border-radius:14px;flex-direction:column;align-items:center;width:min(100%,56rem);padding:clamp(1.75rem,4vw,3rem);display:flex;position:relative;box-shadow:0 24px 80px -30px #fb1f2073}.open-banner__badge{color:#4ade80;font:700 .72rem var(--font-mono);letter-spacing:.16em;background:#22c55e24;border-radius:999px;align-items:center;gap:.6rem;padding:.4rem .9rem;display:inline-flex}.open-banner__badge i{background:#22c55e;border-radius:50%;width:8px;height:8px;position:relative}.open-banner__badge i:after{content:"";background:#22c55e;border-radius:50%;animation:1.8s ease-out infinite pulse-ring;position:absolute;inset:0}.open-banner__headline{font:700 clamp(1.6rem, 4.4vw, 3rem) / 1.12 var(--font-sans);letter-spacing:-.03em;margin:1.4rem 0 0}.open-banner__headline mark{color:var(--accent);background:0 0}.open-banner__text{max-width:34rem;color:var(--muted);margin:1.1rem 0 0;font-size:clamp(1rem,1.8vw,1.15rem);line-height:1.7}.open-banner__tags{justify-content:center}.open-banner__actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:2rem;display:flex}@media (prefers-reduced-motion:reduce){.open-banner__badge i:after{animation:none;display:none}}.contact-links{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:.75rem;width:min(100%,56rem);margin:1.5rem 0 0;padding:0;list-style:none;display:grid}.contact-link{border:1px solid var(--border);background:var(--card);height:100%;color:var(--text);font:500 .85rem var(--font-mono);text-align:left;overflow-wrap:anywhere;border-radius:10px;flex-direction:column;gap:.35rem;padding:1rem 1.15rem;text-decoration:none;transition:border-color .2s,background-color .2s;display:flex}.contact-link span{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;font-size:.68rem}.contact-link:hover{border-color:var(--border-strong);background:#ffffff0f}
