@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-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 Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-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 Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-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 Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-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 Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-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 Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/73cb51aac9c97f90-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 Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d26bbd13d6b70f89-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 Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/20535187d867b7b9-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 Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/5356a6a4f2c8c8d8-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 Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/db96af6b531dc71f-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 Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_595324{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_595324{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-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:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-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:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/_next/static/media/36966cca54120369-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:Space Grotesk Fallback;src:local("Arial");ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.00%;size-adjust:109.69%}.__className_dd5b2f{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.__variable_dd5b2f{--font-sans:"Space Grotesk","Space Grotesk Fallback"}:root{--bg:#fff6e3;--bg-soft:#ffe7c2;--ink:#2b1a0f;--muted:#7a4d2a;--accent:#ff9f1c;--accent-dark:#e2750f;--chip:#fff1d6;--card:#fffaf1;--border:#f2c48e;--shadow:0 20px 60px rgba(0,0,0,0.08);--radius-lg:28px;--radius-md:20px;--radius-sm:12px;--radius-xs:6px;--scanline:none;--font:var(--font-sans),system-ui,sans-serif}html[data-theme=command]{--bg:#000000;--bg-soft:#050505;--ink:#00ff3b;--muted:#00b32a;--accent:#00ff3b;--accent-dark:#00cc31;--chip:#000000;--card:#000000;--border:#00b32a;--shadow:none;--radius-lg:6px;--radius-md:6px;--radius-sm:6px;--radius-xs:4px;--scanline:repeating-linear-gradient(180deg,rgba(0,255,59,0.03),rgba(0,255,59,0.03) 1px,transparent 0,transparent 3px);--font:var(--font-mono),ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*{box-sizing:border-box;padding:0;margin:0}body,html{height:100%}html{scroll-behavior:smooth}body{font-family:var(--font);background:linear-gradient(180deg,#fff5db,#ffe8bf 35%,#fff2de);color:var(--ink);line-height:1.6}html[data-theme=command] body{background:var(--bg)}a{color:inherit;text-decoration:none}button{font-family:inherit}.page{max-width:1100px;margin:0 auto;padding:64px 24px 48px;position:relative}.page:before{content:"";position:fixed;inset:0;pointer-events:none;background:var(--scanline);mix-blend-mode:screen;opacity:.25}.hero{background:linear-gradient(120deg,#fff9f1,#f1e6d8);border:1px solid var(--border);border-radius:var(--radius-lg);padding:48px;box-shadow:var(--shadow);display:grid;grid-gap:24px;gap:24px}html[data-theme=command] .hero{background:transparent;border-radius:var(--radius-xs);padding:32px}.hero-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:600;color:var(--muted)}html[data-theme=command] .eyebrow{letter-spacing:.25em}h1{font-size:clamp(2.4rem,4vw,4rem);line-height:1.1;display:grid;grid-gap:12px;gap:12px}h1 span{font-size:clamp(1.1rem,2vw,1.7rem);font-weight:400;color:var(--muted)}.hero-copy{font-size:1.05rem;max-width:720px}.hero-links{display:flex;gap:10px;flex-wrap:wrap}.chip{background:var(--chip);border-radius:999px;padding:8px 16px;font-size:.9rem;font-weight:600;border:1px solid transparent;transition:transform .2s ease,border .2s ease}html[data-theme=command] .chip{background:transparent;border-color:var(--border);color:var(--ink);border-radius:var(--radius-xs);padding:6px 12px}.chip:hover{transform:translateY(-2px);border-color:var(--accent);color:var(--accent)}.hero-cta{display:flex;gap:12px;flex-wrap:wrap}.ghost,.primary{border-radius:999px;padding:12px 24px;border:1px solid var(--accent);font-weight:600;background:var(--accent);color:#fff;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}html[data-theme=command] .ghost,html[data-theme=command] .primary{background:transparent;color:var(--accent);border-radius:var(--radius-xs);padding:10px 18px}.ghost:hover,.primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(44,125,90,.25)}html[data-theme=command] .ghost:hover,html[data-theme=command] .primary:hover{transform:translateY(-1px);box-shadow:none}.ghost{background:transparent;color:var(--accent-dark);border-color:var(--accent-dark)}html[data-theme=command] .ghost{color:var(--accent);border-color:var(--accent)}.section{margin-top:56px;display:grid;grid-gap:24px;gap:24px}.section-head h2{font-size:clamp(1.7rem,3vw,2.4rem)}.section-head p{color:var(--muted);max-width:600px}.grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:20px;gap:20px}.card,.grid{display:grid}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);padding:24px;grid-gap:12px;gap:12px;min-height:200px;transition:transform .2s ease,box-shadow .2s ease,border .2s ease}.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.08);border-color:var(--accent)}html[data-theme=command] .card{border-radius:var(--radius-xs);padding:20px}html[data-theme=command] .card:hover{transform:translateY(-2px);box-shadow:none}.card h3{font-size:1.2rem}.tags{display:flex;gap:8px;flex-wrap:wrap}.tags span{font-size:.75rem;padding:4px 10px;border-radius:999px;background:rgba(44,125,90,.12);color:var(--accent-dark);font-weight:600}html[data-theme=command] .tags span{background:transparent;border:1px solid var(--border);color:var(--accent);border-radius:var(--radius-xs);padding:2px 8px}.stack{display:grid;grid-gap:20px;gap:20px}.experience-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.experience-grid .card{background:transparent;border:none;padding:0;box-shadow:none}.row{display:grid;grid-template-columns:minmax(160px,1fr) 2fr;grid-gap:20px;gap:20px;padding:20px 24px;background:var(--bg-soft);border-radius:var(--radius-sm);border:1px solid var(--border)}html[data-theme=command] .row{border-radius:var(--radius-xs);padding:16px 20px}.profile-row{grid-template-columns:1fr}.education-row{grid-template-columns:minmax(180px,1fr) 2fr auto;align-items:center}.education-link{text-decoration:none;color:inherit;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.education-link:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(0,0,0,.2);border-color:var(--accent)}.education-link:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.education-icon{width:48px;height:48px;color:var(--accent)}.education-icon svg{width:100%;height:100%;fill:currentColor}.card{perspective:1200px;cursor:pointer}.card:focus-visible{outline:2px solid var(--accent);outline-offset:6px;border-radius:var(--radius-md)}.card-inner{position:relative;min-height:300px;border-radius:var(--radius-md);transform-style:preserve-3d;transition:transform .6s ease}.card:hover .card-inner{transform:translateY(-6px)}.card.is-flipped{position:relative;z-index:5}.card.is-flipped .card-inner{transform:rotateY(180deg)}.card.is-flipped:hover .card-inner{transform:rotateY(180deg) translateY(-6px)}.card-face{position:absolute;inset:0;background:var(--card);border-radius:var(--radius-md);border:1px solid var(--border);padding:20px;display:grid;align-content:space-between;-webkit-backface-visibility:hidden;backface-visibility:hidden;color:var(--ink);overflow:hidden}html[data-theme=command] .card-face{border-radius:var(--radius-xs);background:var(--bg)}.card-front{background:var(--card)}.card-back{transform:rotateY(180deg);overflow-y:auto}.card-back .bullet-list{padding-right:8px}.card-back::-webkit-scrollbar{width:6px}.card-back::-webkit-scrollbar-thumb{background:rgba(44,125,90,.35);border-radius:999px}html[data-theme=command] .card-back::-webkit-scrollbar-thumb{background:rgba(0,255,59,.4)}.flip-hint{color:var(--muted);font-size:.85rem}.row h3{font-size:1.1rem}.time{font-weight:600;color:var(--accent-dark);margin-bottom:6px}html[data-theme=command] .time{color:var(--accent)}.muted{color:var(--muted)}.skill-groups{display:grid;grid-gap:20px;gap:20px}.skill-group h3{font-size:.95rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:10px}.skills{display:flex;flex-wrap:wrap;gap:12px}.skills span{background:#fff;border:1px solid var(--border);border-radius:999px;padding:10px 16px;font-weight:600}html[data-theme=command] .skills span{background:transparent;color:var(--ink);border-radius:var(--radius-xs);padding:6px 10px}.bullet-list{list-style:none;display:grid;grid-gap:8px;gap:8px;margin:0;padding:0}.bullet-list li:before{content:"•";color:var(--accent);margin-right:8px}.contact-card{border-radius:var(--radius-md);padding:32px;background:var(--card);color:var(--ink);display:grid;grid-gap:16px;gap:16px}html[data-theme=command] .contact-card{border-radius:var(--radius-xs);padding:20px;background:var(--bg);border:1px solid var(--border);color:var(--accent)}.footer{margin-top:64px;text-align:center;color:var(--muted);font-size:.9rem}@media (max-width:720px){.hero{padding:32px 24px}.row{grid-template-columns:1fr}}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 16px;margin-bottom:24px;background:var(--bg-soft)}html[data-theme=command] .topbar{border-radius:var(--radius-xs);background:var(--bg)}.topbar-left{gap:10px;flex-wrap:wrap;font-size:.9rem}.topbar-left,.topbar-right{display:flex;align-items:center}.topbar-right{gap:14px}.topbar-right .chip{cursor:pointer}.scene{min-width:140px;display:flex;align-items:center;justify-content:center;position:relative;padding:6px 8px}.cmd{display:grid;grid-gap:4px;gap:4px;font-size:.75rem;color:var(--accent)}.cmd-line{white-space:nowrap}.typing-wrap{display:inline-block;width:0;overflow:hidden;vertical-align:bottom;animation:typing 6s steps(16) infinite}.typing-text{white-space:nowrap;padding-right:.4ch}.caret,.typing-text{display:inline-block}.caret{margin-left:.15ch;color:var(--accent);animation:blink 1s step-end infinite;font-weight:700;font-size:.8em;line-height:1;vertical-align:baseline}@keyframes typing{0%{width:0}15%{width:0}50%{width:16ch}75%{width:16ch}to{width:0}}@keyframes blink{0%{opacity:1}50%{opacity:0}to{opacity:1}}.goal-card{border-radius:var(--radius-md);padding:28px 32px;background:var(--card);border:1px solid var(--border);display:grid;grid-gap:20px;gap:20px}html[data-theme=command] .goal-card{border-radius:var(--radius-xs);background:var(--bg)}.goal-card>p{font-size:1.05rem;max-width:640px}.marathon-track{position:relative;height:90px;border-bottom:2px dashed var(--border);overflow:hidden}.marathon-runner{position:absolute;bottom:4px;width:40px;height:40px}.runner-svg{width:100%;height:100%;fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;overflow:visible}.runner-figure{transform-box:view-box;transform-origin:20px 24px}.phase-running .runner-figure{animation:stride-bob .25s ease-in-out infinite}.phase-celebrating .runner-figure{animation:celebrate-bounce .5s ease-in-out infinite}.runner-head{fill:none}.runner-limb{transform-box:view-box;transition:transform .35s ease}.runner-arm-back,.runner-arm-front{transform-origin:20px 14.5px}.runner-leg-back,.runner-leg-front{transform-origin:19.5px 24px}.phase-running .runner-arm-back,.phase-running .runner-arm-front{animation:arm-swing .5s cubic-bezier(.37,0,.63,1) infinite}.phase-running .runner-arm-front{animation-delay:-.25s}.phase-running .runner-leg-back,.phase-running .runner-leg-front{animation:leg-swing .5s cubic-bezier(.37,0,.63,1) infinite}.phase-running .runner-leg-front{animation-delay:-.25s}@keyframes arm-swing{0%,to{transform:rotate(50deg)}50%{transform:rotate(-46deg)}}@keyframes leg-swing{0%,to{transform:rotate(-52deg)}50%{transform:rotate(48deg)}}@keyframes stride-bob{0%,to{transform:rotate(8deg) translateY(0)}50%{transform:rotate(10deg) translateY(-2.4px)}}.phase-celebrating .runner-arm-back{transform:rotate(74deg)}.phase-celebrating .runner-arm-front{transform:rotate(-74deg) scaleX(-1)}.phase-celebrating .runner-leg-back{transform:rotate(-10deg)}.phase-celebrating .runner-leg-front{transform:rotate(10deg)}@keyframes celebrate-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.phase-idle .runner-arm-back,.phase-idle .runner-arm-front,.phase-idle .runner-leg-back,.phase-idle .runner-leg-front{transform:rotate(0deg)}.marathon-flag{position:absolute;bottom:4px;right:12px;width:22px;height:30px}.flag-svg{width:100%;height:100%}.flag-pole{stroke:var(--muted);stroke-width:2}.flag-cloth{fill:var(--accent);stroke:var(--accent-dark);stroke-width:1;transform-box:view-box;transform-origin:2px 8px;animation:flag-wave 2.4s ease-in-out infinite}@keyframes flag-wave{0%,to{transform:rotate(0deg) scaleX(1)}50%{transform:rotate(-3deg) scaleX(.96)}}@media (prefers-reduced-motion:reduce){.flag-cloth,.marathon-runner,.runner-arm-back,.runner-arm-front,.runner-figure,.runner-leg-back,.runner-leg-front{animation:none}.marathon-runner{transition:none!important}.runner-limb{transition:none}}