@font-face{font-family:Outfit;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/98848575513c9742-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:Outfit;font-style:normal;font-weight:300;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-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:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/98848575513c9742-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:Outfit;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-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:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98848575513c9742-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:Outfit;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-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:Outfit;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/98848575513c9742-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:Outfit;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7b0b24f36b1a6d0b-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:Outfit Fallback;src:local("Arial");ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.00%;size-adjust:99.82%}.__className_543835{font-family:Outfit,Outfit Fallback;font-style:normal}.__variable_543835{--font-outfit:"Outfit","Outfit Fallback"}@font-face{font-family:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8b44c7e6549520b2-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:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6c25f6e897d845a3-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:Bebas Neue Fallback;src:local("Arial");ascent-override:117.32%;descent-override:39.11%;line-gap-override:0.00%;size-adjust:76.72%}.__className_d758cf{font-family:Bebas Neue,Bebas Neue Fallback;font-weight:400;font-style:normal}.__variable_d758cf{--font-bebas:"Bebas Neue","Bebas Neue Fallback"}@font-face{font-family:Fragment Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/2e87b23cef325683-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:Fragment Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c95d0e421d34c90b-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:Fragment Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d8848e31105c7f17-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:Fragment Mono Fallback;src:local("Arial");ascent-override:68.53%;descent-override:18.03%;line-gap-override:0.00%;size-adjust:138.63%}.__className_21d4b3{font-family:Fragment Mono,Fragment Mono Fallback;font-weight:400;font-style:normal}.__variable_21d4b3{--font-fragment:"Fragment Mono","Fragment Mono Fallback"}:root{--void:#050508;--bg:#08080d;--surface:#0d0d14;--elevated:#13131e;--border:#1c1c2e;--text:#eae8e3;--sub:#888898;--ghost:#444455;--accent:#00e5a0;--accent-dim:#00e5a044;--cyan:#00c8ff;--warm:#ff7744;--gold:#d4a853}*,:after,:before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;overflow-x:hidden;background:var(--bg);color:var(--text);font-family:var(--font-outfit),Arial,sans-serif}a{color:inherit}.site{position:relative;background:var(--bg);color:var(--text);min-height:100vh}.site-core{background:transparent}h1,h2,h3,h4,p{color:inherit}.section{padding:120px 0 80px}.section-narrow{max-width:900px;margin:0 auto}.section-inner{padding:0 32px;margin-bottom:48px}.section-work{padding:120px 0 80px}.kicker{font-family:var(--font-fragment),monospace;font-size:11px;letter-spacing:.2em;color:var(--accent);margin-bottom:12px}.section-title{font-family:var(--font-bebas),sans-serif;font-size:clamp(48px,8vw,90px);color:var(--text);line-height:.9;letter-spacing:.02em;margin:0}.section-title.small-title{font-size:clamp(48px,8vw,80px)}.title-outline{color:transparent;-webkit-text-stroke:2px var(--text)}.title-dot{color:var(--accent)}.nav{position:fixed;inset:0 0 auto 0;z-index:1000;padding:20px 32px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid transparent;transition:all .4s ease}.nav-scrolled{padding-top:12px;padding-bottom:12px;background:rgba(8,8,13,.9);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-color:var(--border)}.nav-brand{display:flex;align-items:center;gap:12px;font-family:var(--font-bebas),sans-serif;font-size:28px;color:var(--text);letter-spacing:.05em}.nav-brand-dot{color:var(--accent)}.nav-meta{font-family:var(--font-fragment),monospace;font-size:10px;color:var(--ghost);padding:3px 8px;border:1px solid var(--border);border-radius:3px;white-space:nowrap}.nav-links{display:flex;gap:24px;align-items:center}.github-link,.nav-link{background:none;border:none;cursor:pointer;font-family:var(--font-fragment),monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--sub);text-decoration:none}.github-link:focus,.github-link:hover,.nav-link:focus,.nav-link:hover{color:var(--accent)}.github-link{color:var(--void);background:var(--accent);padding:7px 16px;border-radius:0}.github-link:focus,.github-link:hover{background:var(--text)}.hero{min-height:100vh;position:relative;overflow:hidden;padding:100px 32px 60px;display:flex;align-items:center}.hero-ghost{position:absolute;right:-5%;top:50%;transform:translateY(-50%);font-family:var(--font-bebas),sans-serif;font-size:clamp(300px,45vw,600px);color:transparent;-webkit-text-stroke:1px var(--border);line-height:.85;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:.3}.hero-grid{max-width:1100px;margin:0 auto;width:100%;display:grid;grid-template-columns:1fr auto;grid-gap:clamp(40px,6vw,80px);gap:clamp(40px,6vw,80px);align-items:center;position:relative;z-index:2}.hero-content{min-width:0}.hero-pill{display:inline-flex;align-items:center;gap:10px;padding:8px 18px;border:1px solid var(--border);border-radius:100px;margin-bottom:32px;opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(.16,1,.3,1) .3s,transform .7s cubic-bezier(.16,1,.3,1) .3s}.hero-pill.is-loaded{opacity:1;transform:translateY(0)}.hero-dot{width:7px;height:7px;border-radius:50%;box-shadow:0 0 10px var(--accent);animation:statusPulse 2s ease-in-out infinite}.hero-pill-role{letter-spacing:.08em;color:var(--sub)}.hero-pill-location,.hero-pill-role{font-family:var(--font-outfit),sans-serif;font-size:12px}.hero-pill-location{color:var(--ghost)}.hero-title{font-family:var(--font-bebas),sans-serif;font-size:clamp(52px,10vw,130px);font-weight:400;line-height:.9;letter-spacing:.02em;margin:0 0 28px}.hero-title-bottom,.hero-title-top{display:block}.hero-title-top{color:var(--text)}.hero-title-bottom{background:linear-gradient(135deg,var(--accent),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-actions,.hero-stats,.hero-text,.hero-title{opacity:0}.hero-actions.is-loaded,.hero-stats.is-loaded,.hero-text.is-loaded,.hero-title.is-loaded{animation:heroSlideUp .8s cubic-bezier(.16,1,.3,1) both}.hero-title.is-loaded{animation-delay:.4s}.hero-text{max-width:500px;font-family:var(--font-outfit),sans-serif;font-size:17px;line-height:1.75;color:var(--sub);margin-bottom:36px;transition:opacity .8s ease .5s}.hero-text.is-loaded{animation-delay:.9s}.hero-badge{color:var(--accent);font-weight:500}.hero-actions{display:flex;gap:16px;flex-wrap:wrap;transition:opacity .8s cubic-bezier(.16,1,.3,1) 1.1s}.hero-actions.is-loaded{opacity:1}.hero-stats{display:flex;gap:40px;margin-top:56px;padding-top:28px;border-top:1px solid var(--border);opacity:0;transition:opacity 1s 1.3s}.hero-stats.is-loaded{opacity:1}.hero-stat-number{font-family:var(--font-bebas),sans-serif;font-size:36px;color:var(--text);line-height:1}.hero-stat-label{font-family:var(--font-fragment),monospace;font-size:9px;color:var(--ghost);letter-spacing:.15em;margin-top:4px}.hero-avatar{opacity:0;transform:translateX(40px) scale(.95);transition:opacity 1s cubic-bezier(.16,1,.3,1) .8s,transform 1s cubic-bezier(.16,1,.3,1) .8s}.hero-avatar.is-loaded{opacity:1;transform:translateX(0) scale(1)}.hero-scroll-hint{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;opacity:.3;animation:floatY 2.5s ease-in-out infinite;pointer-events:none}.hero-scroll-hint span:first-child{font-family:var(--font-fragment),monospace;font-size:9px;color:var(--ghost);letter-spacing:.25em}.hero-scroll-line{width:1px;height:32px;background:linear-gradient(var(--ghost),transparent)}.btn{font-family:var(--font-outfit),sans-serif;font-size:14px;letter-spacing:.04em;padding:16px 36px;border:none;cursor:pointer;transition:all .3s}.btn-primary{color:#000;font-weight:600;background:linear-gradient(135deg,var(--accent),#00b87a)}.btn-secondary{color:var(--accent);background:transparent;border:1px solid var(--accent-dim)}.btn-primary:focus,.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px var(--accent-dim)}.btn-secondary:focus,.btn-secondary:hover{background:var(--accent-dim);border-color:var(--accent)}.marquee-band{padding:40px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.marquee{overflow:hidden;white-space:nowrap;position:relative;mask-image:linear-gradient(90deg,transparent,black 8%,black 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,black 8%,black 92%,transparent)}.marquee-track{animation:marquee linear infinite}.marquee-item,.marquee-track{display:inline-flex;align-items:center;gap:24px}.marquee-item{white-space:nowrap}.marquee-dot{color:var(--accent);font-size:8px;opacity:.4}.marquee-band-main .marquee-item,.marquee-band-tech{font-family:var(--font-bebas),sans-serif;font-size:clamp(32px,5vw,56px);color:var(--text);letter-spacing:.04em;opacity:.15}.marquee-band-roles .marquee-item{font-family:var(--font-fragment),monospace;font-size:12px;color:var(--accent);letter-spacing:.12em;opacity:.5}.section-head-row{display:flex;align-items:flex-end;justify-content:space-between}.section-counter{font-family:var(--font-bebas),sans-serif;font-size:72px;color:var(--border);line-height:1}.projects-strip{display:flex;gap:24px;overflow-x:auto;padding:0 32px 24px;scroll-snap-type:x mandatory;scrollbar-width:none}.projects-strip::-webkit-scrollbar{display:none}.project-card{min-width:clamp(340px,42vw,520px);scroll-snap-align:start;background:var(--surface);border:1px solid var(--border);padding:36px;display:flex;flex-direction:column}.project-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.project-number{font-family:var(--font-bebas),sans-serif;font-size:48px;color:var(--border);line-height:1}.project-status{font-size:9px;letter-spacing:.12em;padding:4px 10px;border:1px solid transparent}.project-status,.project-tag{font-family:var(--font-fragment),monospace}.project-tag{font-size:10px;letter-spacing:.1em;margin-bottom:8px}.project-title{font-family:var(--font-bebas),sans-serif;font-size:36px;color:var(--text);letter-spacing:.03em;margin:0 0 12px;line-height:1}.project-description{font-family:var(--font-outfit),sans-serif;font-size:14px;color:var(--sub);line-height:1.7;margin-bottom:auto}.project-stack{display:flex;flex-wrap:wrap;gap:6px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.project-stack-tag{font-family:var(--font-fragment),monospace;font-size:10px;padding:3px 10px;border:1px solid var(--border);color:var(--ghost)}.projects-trailer{min-width:16px;flex-shrink:0}.project-dots{display:flex;gap:8px;justify-content:center;margin-top:24px}.project-dot{display:block;height:3px;border-radius:2px;transition:all .3s ease}.project-hint{font-family:var(--font-fragment),monospace;font-size:10px;color:var(--ghost);letter-spacing:.15em;text-align:center;margin-top:12px}.experience-row{display:grid;grid-template-columns:180px 1fr;grid-gap:32px;gap:32px;padding:32px 0;border-bottom:1px solid var(--border)}.experience-type{font-size:10px;letter-spacing:.1em;margin-bottom:4px}.experience-period,.experience-type{font-family:var(--font-fragment),monospace}.experience-period{font-size:11px;color:var(--ghost)}.experience-role{font-family:var(--font-bebas),sans-serif;font-size:32px;color:var(--text);letter-spacing:.02em;margin:0 0 4px;line-height:1}.experience-company{font-family:var(--font-outfit),sans-serif;font-size:15px;color:var(--sub)}.education-card{margin-top:48px;padding:32px;background:var(--surface);border:1px solid var(--border);position:relative;overflow:hidden}.education-accent{position:absolute;top:0;left:0;width:3px;height:100%;background:linear-gradient(180deg,var(--gold),transparent)}.education-title{font-family:var(--font-fragment),monospace;font-size:10px;color:var(--gold);letter-spacing:.12em;margin-bottom:12px}.education-item{margin-bottom:16px}.education-degree{font-family:var(--font-bebas),sans-serif;font-size:28px;color:var(--text);letter-spacing:.02em;line-height:1;margin-bottom:4px}.education-school{font-family:var(--font-outfit),sans-serif;font-size:15px;color:var(--sub)}.stack-section{padding:100px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.stack-row{margin-bottom:16px}.stack-marquee-item{display:inline-flex;align-items:center;gap:16px}.stack-group{font-family:var(--font-fragment),monospace;font-size:9px;color:inherit;letter-spacing:.1em;opacity:.6}.stack-value{font-family:var(--font-bebas),sans-serif;font-size:clamp(28px,4vw,44px);color:var(--text);letter-spacing:.03em;opacity:.25}.contact-section{max-width:800px}.contact-title{font-family:var(--font-bebas),sans-serif;font-size:clamp(56px,10vw,120px);line-height:.9;letter-spacing:.02em;margin:0 0 20px;background:linear-gradient(135deg,var(--text) 40%,var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.contact-intro{font-family:var(--font-outfit),sans-serif;font-size:17px;line-height:1.75;color:var(--sub);margin-bottom:48px;max-width:520px}.contact-intro-accent{color:var(--accent)}.contact-links{display:flex;flex-direction:column;gap:2px;background:var(--border);margin-bottom:48px}.contact-link{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:var(--surface);text-decoration:none;transition:all .4s cubic-bezier(.16,1,.3,1)}.contact-link:focus,.contact-link:hover{background:var(--elevated);padding-left:36px}.contact-link-title{font-family:var(--font-bebas),sans-serif;font-size:22px;color:var(--text);letter-spacing:.03em}.contact-link-sub{font-family:var(--font-fragment),monospace;font-size:10px;color:var(--ghost);margin-top:2px}.contact-link-arrow{font-family:var(--font-bebas),sans-serif;font-size:20px;color:var(--accent)}.contact-note{padding:28px 32px;background:var(--accent-dim);border:1px solid var(--accent)33;position:relative}.contact-note:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--accent)}.contact-note p{font-family:var(--font-outfit),sans-serif;font-size:14px;line-height:1.7;color:var(--sub)}.contact-note-label{color:var(--accent);font-weight:600}.footer-marquee{border-top:1px solid var(--border);padding:16px 0}.footer-marquee-item{font-family:var(--font-bebas),sans-serif;font-size:14px;letter-spacing:.15em;color:var(--ghost);opacity:.4}.footer{padding:24px 32px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border)}.footer,.footer span{font-family:var(--font-fragment),monospace;font-size:10px;color:var(--ghost)}.footer-italic{font-family:var(--font-outfit),sans-serif;font-size:11px;font-style:italic}.scroll-progress{position:fixed;top:0;left:0;height:2px;background:linear-gradient(90deg,var(--accent),var(--cyan));z-index:9999;transition:width .05s linear}.avatar-wrap{position:relative;width:clamp(280px,24vw,380px)}.avatar-canvas{width:100%;height:auto;display:block}.holo-overlay{position:fixed;inset:0;z-index:10000;background:#050508}.holo-canvas{position:absolute;inset:0;width:100%;height:100%}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes statusPulse{0%,to{opacity:1;box-shadow:0 0 10px var(--accent)}50%{opacity:.5;box-shadow:0 0 4px var(--accent)}}@keyframes heroSlideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes floatY{0%,to{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}@keyframes holoFadeOut{to{opacity:0}}@keyframes bootLine{0%{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}@media (max-width:1200px){.nav{padding-inline:16px}.contact-section,.footer,.hero,.section-inner{padding-left:16px;padding-right:16px}.nav-links{gap:12px}}@media (max-width:980px){.hero-grid{grid-template-columns:1fr}.hero-avatar{order:-1;justify-self:center}.hero{padding-top:120px}.hero-stats{gap:24px}.section-head-row{flex-direction:column;align-items:flex-start;gap:16px}.section-counter{font-size:48px}.contact-title{font-size:clamp(48px,14vw,72px)}}@media (max-width:600px){.nav-meta{display:none}.nav{flex-wrap:wrap;justify-content:space-between}.nav,.nav-links{gap:8px}.github-link,.nav-link{font-size:10px}.github-link{padding-inline:10px}.contact-section,.marquee-band,.section,.section-work,.stack-section{padding-top:80px}.hero{padding-bottom:84px}.experience-row{grid-template-columns:1fr;gap:10px}.section-title,.section-title.small-title{font-size:clamp(42px,12vw,74px)}.project-card{min-width:86vw;padding:24px}.footer{flex-direction:column;gap:12px;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.floatY,.hero-scroll-hint,.scroll-progress{animation:none}}