@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.00az9qtie3ho1.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.3j-a226dh71aj.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.2gwoz23eiro2t.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0i3h3th1vs4m7.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.0zr6hhvz-h9nw.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_e799d87a-module__u8MhCG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_e799d87a-module__u8MhCG__variable{--font-geist:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.27spqqad3wyeo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.3f4zuumv8svu0.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.34r5yzckw0h2s.woff2)format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7d817b4c03b0c5f1-s.2jyz_zw3a8jit.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.30bdpjkrtcces.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.1v5bejj26fx9h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_42eec60-module__Gb1_vG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_42eec60-module__Gb1_vG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/99c6cdb74b1a9f21-s.3-72worm-ib39.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/9b2952c75e1b82c6-s.3_mjd9z78cbbb.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Pixelify Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/01d67e7cc17e7674-s.p.0wyelkczeev99.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Pixelify Sans Fallback;src:local(Arial);ascent-override:81.7%;descent-override:24.87%;line-gap-override:0.0%;size-adjust:112.61%}.pixelify_sans_2ce6a24d-module__f7Hsra__className{font-family:Pixelify Sans,Pixelify Sans Fallback;font-style:normal}.pixelify_sans_2ce6a24d-module__f7Hsra__variable{--font-pixelify:"Pixelify Sans", "Pixelify Sans Fallback"}
:root,:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3efe3;--bg-raised:#e9e3d2;--panel:#fbf8ef;--line:#d9d1bc;--line-strong:#a79e86;--ink:#1d1b16;--ink-soft:#413c32;--ink-mute:#6b6453;--ink-faint:#a0987f;--accent:#4a9a22;--accent-ink:#2f6d12;--accent-contrast:#0f2206;--diamond:#16918b;--gold:#b27800;--redstone:#c02d20;--splash:#e8a800;--splash-shadow:#5a3d00;--gui:#c6c6c6;--gui-ink:#3f3f3f;--gui-hi:#fff;--gui-lo:#555;--slot:#6f6f6f;--stone-btn:#7a7a7a;--edge:#1d1b16;--shadow:#1d1b16;--text-shadow:color-mix(in srgb, var(--ink) 16%, transparent);--sky-top:#8fc6ff;--sky-mid:#cfe7f8;--grid:color-mix(in srgb, var(--ink) 5%, transparent)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1115;--bg-raised:#161920;--panel:#171a21;--line:#262b34;--line-strong:#3d4450;--ink:#ece8dd;--ink-soft:#c3beb0;--ink-mute:#8d8878;--ink-faint:#5f5b51;--accent:#6fcf3a;--accent-ink:#8ade58;--accent-contrast:#0b1a04;--diamond:#4ee6dd;--gold:#ffd43b;--redstone:#ff5a4a;--splash:#ff5;--splash-shadow:#3f3f15;--gui:#23262e;--gui-ink:#e0ddd3;--gui-hi:#3c414c;--gui-lo:#0a0b0e;--slot:#13151a;--stone-btn:#3a3e47;--edge:#000;--shadow:#000;--text-shadow:#0009;--sky-top:#060a1f;--sky-mid:#0d1430;--grid:#ffffff06}:root{--gutter:clamp(20px, 4.5vw, 72px);--content-max:1480px;--container:min(100% - 2 * var(--gutter), var(--content-max));--section-pad:clamp(64px, 9vh, 112px);--nav-height:64px;--commandbar-height:44px;--px:4px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-snap:cubic-bezier(.2, .9, .3, 1.25);--fs-display:clamp(2.6rem, 6.4vw, 6.75rem);--fs-h2:clamp(2rem, 3.9vw, 3.75rem);--fs-statement:clamp(1.3rem, 1.8vw, 2rem);--fs-project:clamp(1.2rem, 1.5vw, 1.55rem);--fs-email:clamp(1.25rem, 2.8vw, 2.75rem);--fs-lead:clamp(.98rem, .3vw + .9rem, 1.15rem);--fs-role:clamp(1rem, .6vw + .8rem, 1.4rem);--fs-body:clamp(.92rem, .2vw + .86rem, 1.02rem);--fs-nav:.72rem;--fs-mono:clamp(.7rem, .15vw + .68rem, .82rem);--fs-pixel:clamp(.78rem, .15vw + .72rem, .9rem);--font-display:var(--font-pixelify), system-ui, sans-serif;--font-pixel:var(--font-pixelify), system-ui, sans-serif;--font-body:var(--font-geist), system-ui, sans-serif;--font-mono:var(--font-geist-mono), ui-monospace, monospace}
*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg);-webkit-text-size-adjust:100%}html.lenis,html.lenis body{scroll-behavior:auto;height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis.lenis-smooth iframe{pointer-events:none}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;line-height:1.65;overflow-x:clip}h1,h2,h3,p{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit;color:inherit}::selection{background:var(--accent);color:var(--accent-contrast)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.page{z-index:1;position:relative}
