@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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_f9e569;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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_f9e569;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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_f9e569;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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_f9e569;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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_f9e569;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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_f9e569;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__JetBrains_Mono_f9e569;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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_f9e569;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__JetBrains_Mono_Fallback_f9e569;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_f9e569{font-family:__JetBrains_Mono_f9e569,__JetBrains_Mono_Fallback_f9e569;font-style:normal}.__variable_f9e569{--font-mono:"__JetBrains_Mono_f9e569","__JetBrains_Mono_Fallback_f9e569"}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:__IBM_Plex_Sans_1bc20f;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__IBM_Plex_Sans_Fallback_1bc20f;src:local("Arial");ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.00%;size-adjust:101.17%}.__className_1bc20f{font-family:__IBM_Plex_Sans_1bc20f,__IBM_Plex_Sans_Fallback_1bc20f;font-style:normal}.__variable_1bc20f{--font-sans:"__IBM_Plex_Sans_1bc20f","__IBM_Plex_Sans_Fallback_1bc20f"}:root{--accent-h:150;--font-scale:1;--bg:oklch(0.165 0.01 255);--bg-2:oklch(0.205 0.012 255);--bg-3:oklch(0.245 0.014 255);--border:oklch(0.32 0.013 255);--border-soft:oklch(0.27 0.012 255);--text:oklch(0.94 0.006 255);--muted:oklch(0.7 0.012 255);--faint:oklch(0.55 0.012 255);--accent:oklch(0.84 0.16 var(--accent-h));--accent-dim:oklch(0.84 0.16 var(--accent-h)/0.16);--accent-line:oklch(0.84 0.16 var(--accent-h)/0.32);--accent-text:oklch(0.88 0.13 var(--accent-h));--mono:var(--font-mono),ui-monospace,"SF Mono",Menlo,monospace;--sans:var(--font-sans),system-ui,sans-serif;--maxw:1080px;--pad:clamp(20px,5vw,64px)}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:calc(16px * var(--font-scale));line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9;background:radial-gradient(120% 80% at 50% 0,transparent 55%,oklch(.1 .01 255/.5) 100%)}[data-scanlines=on] body:after,html[data-scanlines=on] body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:8;opacity:.4;background:repeating-linear-gradient(180deg,transparent 0,transparent 2px,oklch(.1 .01 255/.35) 3px,transparent 4px);background-size:100% 4px}a{color:inherit;text-decoration:none}h1,h2,h3{margin:0;font-weight:600}p,ul{margin:0}ul{padding:0;list-style:none}pre{margin:0}::selection{background:var(--accent-dim);color:var(--text)}.nav{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;gap:24px;padding:16px var(--pad);font-family:var(--mono);font-size:13px;background:oklch(.165 .01 255/.72);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-soft)}.nav,.nav-brand{align-items:center}.nav-brand{font-weight:700;letter-spacing:.02em;color:var(--text);display:inline-flex}.brand-bracket{color:var(--accent)}.brand-cursor{width:7px;height:14px;background:var(--accent);margin-left:4px;display:inline-block;animation:blink 1.1s steps(1) infinite}@keyframes blink{50%{opacity:0}}[data-motion=off] .brand-cursor,[data-motion=off] .cmd-caret,[data-motion=off] .type-caret{animation:none}.nav-links{display:flex;gap:22px;margin-left:auto;color:var(--muted)}.nav-links a{position:relative;transition:color .2s}.nav-links a:before{content:""}.nav-links a:hover,.nav-resume{color:var(--accent-text)}.nav-resume{font-family:var(--mono);white-space:nowrap;padding:7px 14px;border:1px solid var(--accent-line);border-radius:6px;transition:background .2s,border-color .2s}.nav-resume:hover{background:var(--accent-dim);border-color:var(--accent)}.dl-arrow{display:inline-block}@media (max-width:720px){.nav-links{display:none}}.hero{position:relative;min-height:100vh;padding:120px var(--pad) 60px;display:flex;flex-direction:column;overflow:hidden}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(var(--border-soft) 1px,transparent 1px),linear-gradient(90deg,var(--border-soft) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(120% 90% at 70% 20%,#000 0,transparent 70%);mask-image:radial-gradient(120% 90% at 70% 20%,#000 0,transparent 70%);opacity:.5;pointer-events:none}.hero-inner{position:relative;z-index:2;margin:auto;width:100%;max-width:var(--maxw);display:grid;grid-template-columns:1fr 1fr;grid-gap:clamp(32px,6vw,80px);gap:clamp(32px,6vw,80px);align-items:center}@media (max-width:900px){.hero-inner{grid-template-columns:1fr;gap:40px}.hero-right{width:100%;min-width:0}}@media (max-width:480px){.term-body{padding:14px;font-size:12px}.term-bar{padding:9px 12px}.term-title{font-size:11px}.ascii{font-size:11.5px}}.badge{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:12px;color:var(--accent-text);padding:6px 12px;border:1px solid var(--accent-line);border-radius:100px;background:var(--accent-dim);margin-bottom:26px}.pulse{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 0 var(--accent);animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 oklch(.84 .16 var(--accent-h)/.6)}70%{box-shadow:0 0 0 9px oklch(.84 .16 var(--accent-h)/0)}to{box-shadow:0 0 0 0 oklch(.84 .16 var(--accent-h)/0)}}[data-motion=off] .pulse{animation:none}.hero-name{font-size:clamp(24px,3.8vw,48px);line-height:1.02;letter-spacing:-.02em;margin-bottom:16px;white-space:nowrap}.hero-name,.hero-role{font-family:var(--mono)}.hero-role{font-size:clamp(15px,2vw,19px);color:var(--accent-text);margin-bottom:22px}.role-prompt{color:var(--faint)}.hero-tag{font-size:clamp(16px,2.1vw,20px);color:var(--muted);max-width:30ch;margin-bottom:34px;text-wrap:pretty}.hero-cta{gap:14px;margin-bottom:30px}.hero-cta,.hero-meta{display:flex;flex-wrap:wrap}.hero-meta{align-items:center;gap:12px;font-family:var(--mono);font-size:12.5px;color:var(--faint)}.hero-meta .dot{color:var(--border)}.hero-scroll{position:relative;z-index:2;margin:28px auto 0;font-family:var(--mono);font-size:12px;color:var(--faint);display:flex;gap:8px;align-items:center}.hero-scroll span{animation:bob 1.8s ease-in-out infinite}@keyframes bob{50%{transform:translateY(4px)}}[data-motion=off] .hero-scroll span{animation:none}.btn{font-family:var(--mono);font-size:13.5px;padding:12px 20px;border-radius:8px;display:inline-flex;align-items:center;gap:9px;border:1px solid transparent;transition:transform .15s,background .2s,border-color .2s,box-shadow .2s;cursor:pointer}.btn-lg{padding:15px 26px;font-size:15px}.btn-primary{background:var(--accent);color:oklch(.18 .02 var(--accent-h));font-weight:600;box-shadow:0 0 0 0 var(--accent-line)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px oklch(.84 .16 var(--accent-h)/.3)}.btn-ghost{border-color:var(--border);color:var(--text);background:transparent}.btn-ghost:hover{border-color:var(--accent-line);background:var(--bg-2)}.btn-arrow{transition:transform .2s}.btn:hover .btn-arrow{transform:translateX(4px)}[data-motion=off] .btn:hover{transform:none}.term{border:1px solid var(--border);border-radius:12px;background:oklch(.145 .01 255);box-shadow:0 30px 80px -30px oklch(.05 .02 255/.9);overflow:hidden;width:100%;min-width:0}.term-bar{display:flex;align-items:center;padding:11px 14px;background:var(--bg-2);border-bottom:1px solid var(--border-soft)}.term-dots{display:flex;gap:7px}.term-dots span{width:11px;height:11px;border-radius:50%;background:var(--border)}.term-dots span:first-child{background:oklch(.7 .16 25)}.term-dots span:nth-child(2){background:oklch(.82 .13 85)}.term-dots span:nth-child(3){background:oklch(.78 .15 145)}.term-title{flex:1 1;text-align:center;font-family:var(--mono);font-size:12px;color:var(--faint)}.term-spacer{width:40px}.term-body{padding:20px;font-family:var(--mono);font-size:13.5px;line-height:1.7}.term-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:0}.term-line-tight{margin-top:6px}.t-prompt{color:var(--accent-text)}.t-sep{color:var(--faint)}.t-path{color:oklch(.78 .1 230)}.t-dollar{margin-left:6px}.t-dollar,.t-typed,.typer{color:var(--text)}.term-out{margin-top:10px}.ascii{font-family:var(--mono);font-size:13px;color:var(--muted);white-space:pre;margin:4px 0 8px;overflow-x:auto;color:oklch(.8 .05 230)}.reveal-fast{animation:fadeUp .5s ease both}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}}[data-motion=off] .reveal-fast{animation:none}.cmd-caret,.type-caret{display:inline-block;width:8px;height:1.05em;background:var(--accent);vertical-align:text-bottom;margin-left:2px;animation:blink 1.1s steps(1) infinite}.content{position:relative;z-index:2}.section{max-width:var(--maxw);margin:0 auto;padding:clamp(64px,9vw,120px) var(--pad);border-top:1px solid var(--border-soft)}.section-head{margin-bottom:44px}.cmd{font-family:var(--mono);font-size:13px;color:var(--muted);display:inline-flex;align-items:baseline;gap:8px}.cmd-prompt{color:var(--accent)}.cmd-text{color:var(--accent-text)}.cmd-caret{width:7px;height:13px}.section-title{font-family:var(--mono);font-size:clamp(26px,4vw,40px);letter-spacing:-.02em;margin-top:16px}.section-kicker{color:var(--muted);margin-top:10px}.about-wrap{display:grid;grid-template-columns:1.6fr 1fr;grid-gap:clamp(32px,6vw,72px);gap:clamp(32px,6vw,72px)}@media (max-width:820px){.about-wrap{grid-template-columns:1fr;gap:40px}}.about-copy{display:flex;flex-direction:column;gap:18px}.about-copy p{font-size:clamp(16px,2vw,18px);text-wrap:pretty}.about-copy p,.about-copy p:first-child{color:var(--text)}.about-copy p{color:var(--muted)}.about-copy p:first-child{color:oklch(.94 .006 255)}.about-stats{display:flex;flex-direction:column;gap:18px}.stat{border:1px solid var(--border-soft);border-left:2px solid var(--accent-line);border-radius:8px;padding:18px 20px;background:var(--bg-2)}.stat-value{font-family:var(--mono);font-size:30px;color:var(--accent-text);letter-spacing:-.02em}.stat-label{font-family:var(--mono);font-size:12.5px;color:var(--faint);margin-top:4px}.stack-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:20px;gap:20px}@media (max-width:820px){.stack-grid{grid-template-columns:repeat(2,1fr);gap:24px}}@media (max-width:480px){.stack-grid{grid-template-columns:1fr}}.stack-group{font-family:var(--mono);font-size:14px;color:var(--text);margin-bottom:14px;padding-bottom:10px;border-bottom:1px dashed var(--border)}.folder{color:var(--accent)}.stack-list{display:flex;flex-direction:column;gap:9px}.stack-list li{font-family:var(--mono);font-size:13.5px;color:var(--muted);transition:color .2s,transform .2s}.stack-list li:hover{color:var(--accent-text);transform:translateX(3px)}.stack-bullet{color:var(--faint)}.proj-list{display:flex;flex-direction:column}.proj{border-top:1px solid var(--border-soft);padding:26px 8px;cursor:pointer;transition:background .25s,padding .25s}.proj:last-child{border-bottom:1px solid var(--border-soft)}.proj:hover{background:var(--bg-2);padding-left:16px;padding-right:16px}.proj-row{display:grid;grid-template-columns:48px 1fr auto;grid-gap:20px;gap:20px;align-items:start}.proj-id{font-family:var(--mono);font-size:14px;color:var(--faint);padding-top:4px}.proj:hover .proj-id{color:var(--accent)}.proj-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.proj-name{font-family:var(--mono);font-size:clamp(20px,2.6vw,26px);letter-spacing:-.01em}.proj-metric{font-family:var(--mono);font-size:12px;color:var(--accent-text);padding:3px 9px;border:1px solid var(--accent-line);border-radius:100px;background:var(--accent-dim)}.proj-blurb{color:var(--muted);margin:10px 0 14px;max-width:56ch;text-wrap:pretty}.proj-tags{display:flex;flex-wrap:wrap;gap:8px}.tag{font-size:11.5px;color:var(--muted);padding:3px 9px;border:1px solid var(--border);border-radius:5px;background:var(--bg-3)}.proj-meta,.tag{font-family:var(--mono)}.proj-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:12.5px;color:var(--faint);text-align:right}.proj-role{color:var(--muted)}.proj-chev{color:var(--accent);font-size:16px;transition:transform .3s;margin-top:6px}.proj-chev.up{transform:rotate(-90deg)}.proj-detail{overflow:hidden;transition:max-height .35s cubic-bezier(.3,.7,.2,1)}.proj-detail-inner{padding:16px 0 6px 68px;display:flex;flex-direction:column;gap:14px}@media (max-width:640px){.proj-detail-inner{padding-left:0}}.proj-detail-inner p{color:var(--muted);max-width:60ch;text-wrap:pretty}.proj-link{font-family:var(--mono);font-size:13px;color:var(--accent-text);display:inline-flex;gap:7px;align-items:center;width:-moz-fit-content;width:fit-content}.proj-link span{transition:transform .2s}.proj-link:hover span{transform:translateX(4px)}@media (max-width:640px){.proj-row{grid-template-columns:32px 1fr}.proj-meta{grid-column:1/-1;flex-direction:row;align-items:center;gap:12px;text-align:left}}.exp-list{display:flex;flex-direction:column}.exp{display:grid;grid-template-columns:28px 1fr;grid-gap:18px;gap:18px;padding-bottom:38px}.exp:last-child{padding-bottom:0}.exp-node{position:relative;display:flex;justify-content:center;padding-top:5px}.exp-commit{width:13px;height:13px;border-radius:50%;border:2px solid var(--border);background:var(--bg);z-index:2}.exp-commit.now{border-color:var(--accent);background:var(--accent-dim);box-shadow:0 0 0 4px var(--accent-dim)}.exp-line{position:absolute;top:18px;bottom:-38px;width:1px;background:var(--border-soft)}.exp-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.exp-role{font-size:clamp(17px,2.2vw,21px)}.exp-at,.exp-role{font-family:var(--mono)}.exp-at{font-size:14px;color:var(--accent-text)}.exp-period{font-family:var(--mono);font-size:12.5px;color:var(--faint);margin:6px 0 12px;display:flex;align-items:center;gap:10px}.exp-now{color:var(--accent)}.exp-points{display:flex;flex-direction:column;gap:8px}.exp-points li{color:var(--muted);text-wrap:pretty}.exp-arrow{color:var(--accent);font-family:var(--mono);margin-right:6px}.writing-list{display:flex;flex-direction:column}.post{display:grid;grid-template-columns:110px 1fr auto auto;align-items:center;grid-gap:18px;gap:18px;padding:18px 8px;border-top:1px solid var(--border-soft);transition:background .2s,padding .2s}.post:last-child{border-bottom:1px solid var(--border-soft)}.post:hover{background:var(--bg-2);padding-left:14px}.post-tag{font-family:var(--mono);font-size:11.5px;color:var(--accent-text);border:1px solid var(--accent-line);border-radius:5px;padding:3px 8px;text-align:center;background:var(--accent-dim)}.post-title{font-size:17px;color:var(--text)}.post:hover .post-title{color:var(--accent-text)}.post-meta{font-family:var(--mono);font-size:12.5px;color:var(--faint);white-space:nowrap}.post-meta .dot{color:var(--border)}.post-arrow{color:var(--faint);transition:transform .2s,color .2s}.post:hover .post-arrow{color:var(--accent);transform:translateX(4px)}@media (max-width:680px){.post{grid-template-columns:1fr auto;gap:8px 14px}.post-tag{grid-row:1}.post-title{grid-column:1/-1;grid-row:2}.post-meta{grid-row:1}.post-arrow{display:none}}.contact-wrap{display:grid;grid-template-columns:1fr 1fr;grid-gap:clamp(32px,6vw,64px);gap:clamp(32px,6vw,64px);align-items:start}@media (max-width:820px){.contact-wrap{grid-template-columns:1fr;gap:36px}}.contact-copy p{color:var(--muted);font-size:17px;margin-bottom:26px;max-width:40ch;text-wrap:pretty}.contact-links{border:1px solid var(--border-soft);border-radius:10px;overflow:hidden;background:var(--bg-2)}.link-row{display:flex;align-items:center;gap:12px;padding:15px 18px;font-family:var(--mono);font-size:14px;border-bottom:1px solid var(--border-soft);transition:background .2s}.link-row:last-child{border-bottom:none}.link-row:hover{background:var(--bg-3)}.link-key{color:var(--accent-text);width:80px}.link-dots{flex:1 1;border-bottom:1px dotted var(--border);height:1px}.link-val{color:var(--muted)}.link-arrow{color:var(--faint);transition:transform .2s,color .2s}.link-row:hover .link-arrow{color:var(--accent);transform:translate(2px,-2px)}.footer{justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:64px;padding-top:24px;border-top:1px solid var(--border-soft);font-size:12px;color:var(--faint)}.footer,.switcher{display:flex;font-family:var(--mono)}.switcher{position:fixed;right:18px;bottom:18px;z-index:40;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--border);border-radius:100px;background:oklch(.165 .01 255/.82);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 12px 40px -16px oklch(.05 .02 255/.9);font-size:11px}.switcher-label{color:var(--faint);letter-spacing:.04em}.switcher-swatches{display:flex;gap:7px}.swatch{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--border);cursor:pointer;padding:0;transition:transform .15s,border-color .15s}.swatch:hover{transform:scale(1.12)}.swatch[data-on="1"]{border-color:var(--text);box-shadow:0 0 0 2px var(--bg),0 0 0 3.5px currentColor}.switcher-sep{width:1px;height:18px;background:var(--border)}.switcher-motion{font-family:var(--mono);font-size:11px;color:var(--muted);background:transparent;border:1px solid var(--border);border-radius:100px;padding:4px 10px;cursor:pointer;transition:color .15s,border-color .15s}.switcher-motion:hover{color:var(--accent-text);border-color:var(--accent-line)}@media (max-width:520px){.switcher-label{display:none}}