@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/88da59c891d37117-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:Source Sans\ 3;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/1e377d93cbdd6b44-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/36d711d427a06e51-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Source Sans\ 3;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/f1f7cdf240180e28-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:Source Sans\ 3;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/55fbdf033607a0e1-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:Source Sans\ 3;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/b6a6f0b43d027304-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:Source Sans\ 3;font-style:normal;font-weight:200 900;font-display:swap;src:url(/_next/static/media/9cf9c6e84ed13b5e-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:Source Sans\ 3 Fallback;src:local("Arial");ascent-override:109.21%;descent-override:42.66%;line-gap-override:0.00%;size-adjust:93.76%}.__className_1fdbab{font-family:Source Sans\ 3,Source Sans\ 3 Fallback;font-style:normal}.__variable_1fdbab{--font-sans:"Source Sans 3","Source Sans 3 Fallback"}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-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:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-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:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-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:Fraunces Fallback;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_eb41fe{font-family:Fraunces,Fraunces Fallback;font-style:normal}.__variable_eb41fe{--font-display:"Fraunces","Fraunces Fallback"}:root,[data-theme=light]{--color-bg:#f3f7f6;--color-bg-elevated:#f6faf9;--color-surface:#e6efed;--color-border:#c5d8d4;--color-text:#0f1a18;--color-text-muted:#4f635f;--color-primary:#0f766e;--color-primary-hover:#115e59;--color-on-primary:#ffffff;--color-accent:#0891b2;--color-nav:#f3f7f6;--nav-rest-mix:72%;--nav-scroll-mix:20%;--color-footer:#eef4f2;--color-shadow:rgba(15,26,24,0.08);--color-hero-start:#e6f1ef;--color-hero-end:#e4eeec;--color-focus:#0d9488;--ambient-opacity:0.42;--ambient-star:rgba(15,118,110,0.55);--ambient-dot:rgba(13,148,136,0.38);--ambient-line:rgba(15,118,110,0.14);--ambient-wash-a:rgba(13,148,136,0.07);--ambient-wash-b:rgba(8,145,178,0.05);--color-subscribe:#b87506;--color-subscribe-hover:#d4900a;--color-on-subscribe:#ffffff;--color-subscribe-glow:rgba(212,144,10,0.35);--color-neon:#14b8a6;--color-neon-strong:#0f766e;--color-neon-glow:rgba(20,184,166,0.28);--color-neon-glow-soft:rgba(13,148,136,0.16);--color-neon-scan:rgba(15,118,110,0.08);--neon-text-blur:5px;--neon-box-blur:10px;--neon-intensity:0.5;--color-term-atmosphere:#eef4f3;--color-term-atmosphere-mid:#eef3f2;--color-term-atmosphere-end:#f0f5f4;--color-term-glow-secondary:rgba(8,145,178,0.18);--color-term-panel:#f6faf9;--color-term-panel-mid:#eef4f2;--color-term-panel-end:#e6efec;--color-term-text:#0f1a18;--color-term-text-muted:#4f635f;--color-term-border:rgba(15,118,110,0.26);--color-term-cmd-bg:rgba(255,255,255,0.9);--color-term-hero-fg:#0f172a;--color-term-hero-muted:#45605b;--color-term-noise:0.03;--color-term-scan-opacity:0.2;--color-term-shadow:rgba(15,23,42,0.1)}[data-theme=dark]{--color-bg:#0b1418;--color-bg-elevated:#121c22;--color-surface:#152028;--color-border:#24333a;--color-text:#e8f5f1;--color-text-muted:#9bb8b0;--color-primary:#2dd4bf;--color-primary-hover:#5eead4;--color-on-primary:#0b1418;--color-accent:#22d3ee;--color-nav:#0b1418;--nav-rest-mix:28%;--nav-scroll-mix:8%;--color-footer:#0d171c;--color-shadow:rgba(11,18,32,0.4);--color-hero-start:#0f1f24;--color-hero-end:#122033;--color-focus:#2dd4bf;--ambient-opacity:0.78;--ambient-star:rgba(94,234,212,0.72);--ambient-dot:rgba(45,212,191,0.55);--ambient-line:rgba(45,212,191,0.26);--ambient-wash-a:rgba(45,212,191,0.12);--ambient-wash-b:rgba(34,211,238,0.09);--color-subscribe:#e6a817;--color-subscribe-hover:#f5c340;--color-on-subscribe:#0b1418;--color-subscribe-glow:rgba(230,168,23,0.55);--color-neon:#2dd4bf;--color-neon-strong:#5eead4;--color-neon-glow:rgba(45,212,191,0.55);--color-neon-glow-soft:rgba(45,212,191,0.22);--color-neon-scan:rgba(45,212,191,0.12);--neon-text-blur:10px;--neon-box-blur:18px;--neon-intensity:1;--color-term-atmosphere:#071016;--color-term-atmosphere-mid:#0a161c;--color-term-atmosphere-end:#0c1218;--color-term-glow-secondary:rgba(34,211,238,0.28);--color-term-panel:#050a0c;--color-term-panel-mid:#081216;--color-term-panel-end:#0a1418;--color-term-text:#c6efe6;--color-term-text-muted:#9bb8b0;--color-term-border:rgba(45,212,191,0.38);--color-term-cmd-bg:rgba(7,16,22,0.88);--color-term-hero-fg:#f2fffb;--color-term-hero-muted:#b7dcd3;--color-term-noise:0.05;--color-term-scan-opacity:0.45;--color-term-shadow:rgba(11,18,32,0.55)}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--color-bg);-webkit-user-select:none;-moz-user-select:none;user-select:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;min-height:100vh;font-family:var(--font-sans),"Source Sans 3","Segoe UI",sans-serif;font-size:1rem;line-height:1.55;color:var(--color-text);background:var(--color-bg);-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .25s ease,color .25s ease}img{max-width:100%}a{color:inherit}button,input,textarea{font:inherit}:focus:not(:focus-visible){outline:none}.text-muted{color:var(--color-text-muted)}.page-title{font-family:var(--font-display),"Fraunces",Georgia,serif;font-size:2.25rem;font-weight:600;line-height:1.2;margin:0 0 .75rem;letter-spacing:-.02em;text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.25) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.25) var(--color-neon-glow)}.page-lead{font-size:1.125rem;color:var(--color-text-muted);max-width:42rem;margin:0 0 2rem;line-height:1.7}.section-title{font-family:var(--font-display),"Fraunces",Georgia,serif;font-size:1.75rem;font-weight:600;margin:0 0 1rem}@keyframes fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes wave-ripple{0%{transform:translate(-50%,-50%) scale(0);opacity:.45}70%{opacity:.2}to{transform:translate(-50%,-50%) scale(28);opacity:0}}@keyframes neon-pulse{0%,to{opacity:calc(.72 + .18*var(--neon-intensity, 1));filter:brightness(1)}50%{opacity:1;filter:brightness(calc(1 + .12 * var(--neon-intensity, 1)))}}@keyframes neon-breath{0%,to{box-shadow:0 0 0 1px color-mix(in srgb,var(--color-neon) 28%,transparent),0 0 calc(var(--neon-box-blur, 12px)*.55) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.9) var(--color-neon-glow)}50%{box-shadow:0 0 0 1px color-mix(in srgb,var(--color-neon) 55%,transparent),0 0 calc(var(--neon-box-blur, 12px)*.9) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*1.55) var(--color-neon-glow)}}@keyframes neon-text-breath{0%,to{text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.35) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.75) var(--color-neon-glow)}50%{text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.65) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*1.35) var(--color-neon-glow),0 0 calc(var(--neon-text-blur, 6px)*2.1) var(--color-neon-glow-soft)}}@keyframes neon-cursor{0%,49%{opacity:1;box-shadow:0 0 4px var(--color-neon-glow),0 0 10px var(--color-neon-glow-soft)}50%,to{opacity:.15;box-shadow:0 0 2px var(--color-neon-glow-soft)}}@keyframes terminal-boot{0%{opacity:0;transform:translateY(10px) scale(.985);filter:brightness(1.35)}55%{opacity:1;transform:translateY(0) scale(1);filter:brightness(1.12)}to{opacity:1;transform:translateY(0) scale(1);filter:brightness(1)}}@keyframes terminal-boot-glow{0%{opacity:0}40%{opacity:calc(.55*var(--neon-intensity, 1))}to{opacity:0}}@keyframes scanline-sweep{0%{transform:translateY(-120%);opacity:0}8%{opacity:1}92%{opacity:1}to{transform:translateY(220%);opacity:0}}@keyframes terminal-type{to{max-width:calc(var(--typed-ch, 12)*1ch + .5ch)}}@keyframes ambient-twinkle{0%,to{opacity:.55}40%{opacity:1}70%{opacity:.7}}.anim-fade-up{animation:fade-up .55s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--stagger, 0)*.08s)}.anim-fade-in{animation:fade-in .4s ease both;animation-delay:calc(var(--stagger, 0)*.08s)}.anim-slide-up{animation:slide-up .55s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--stagger, 0)*.08s)}.anim-slide-down{animation:slide-down .4s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--stagger, 0)*.08s)}.anim-terminal-boot{animation:terminal-boot .85s cubic-bezier(.22,1,.36,1) both}.anim-neon-pulse{animation:neon-pulse 2.4s cubic-bezier(.4,0,.2,1) infinite}.anim-neon-breath{animation:neon-breath 4.5s cubic-bezier(.45,0,.55,1) infinite}.anim-delay-1{--stagger:1;animation-delay:.1s}.anim-delay-2{--stagger:2;animation-delay:.2s}.anim-delay-3{--stagger:3;animation-delay:.3s}.anim-delay-4{--stagger:4;animation-delay:.4s}.anim-delay-5{--stagger:5;animation-delay:.5s}.anim-stagger{animation-delay:calc(var(--stagger, 0)*.08s)}.motion-lift{transition:transform .2s cubic-bezier(.22,1,.36,1),background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s cubic-bezier(.22,1,.36,1)}.motion-lift:hover{transform:translateY(-2px)}.motion-lift:active{transform:translateY(0)}.motion-card{transition:transform .2s cubic-bezier(.22,1,.36,1),border-color .2s ease}.motion-card:hover{transform:translateY(-3px)}.motion-card:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;transition:outline-offset .15s cubic-bezier(.22,1,.36,1)}.motion-focus:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;transition:outline-offset .15s cubic-bezier(.22,1,.36,1)}.has-wave{position:relative;overflow:hidden;isolation:isolate;--ripple-x:50%;--ripple-y:50%}.has-wave:after{content:"";position:absolute;left:var(--ripple-x);top:var(--ripple-y);width:8px;height:8px;border-radius:50%;background:rgba(15,23,42,.14);transform:translate(-50%,-50%) scale(0);opacity:0;pointer-events:none;z-index:1}.has-wave.is-wave:after{animation:wave-ripple .55s cubic-bezier(.22,1,.36,1)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.anim-fade-in,.anim-fade-up,.anim-slide-down,.anim-slide-up,.anim-terminal-boot{animation:none!important;opacity:1;transform:none;filter:none}.anim-neon-breath,.anim-neon-pulse{animation:none!important}.ambient-bg__star--1,.ambient-bg__star--2,.ambient-bg__star--3{animation:none!important;opacity:.85}.has-wave.is-wave:after,.has-wave:after{animation:none!important;display:none}.btn:hover,.cv-download:hover,.experience-card:focus-within,.experience-card:hover,.icon-button:hover,.motion-card:hover,.motion-lift:hover,.nav-button:hover,.project-card:hover{transform:none}.experience-card__overlay{transition:none!important;transform:none!important}.experience-card:focus-within .experience-card__overlay,.experience-card:hover .experience-card__overlay{opacity:1}.experience-timeline__dot{transition:none!important}}.btn,.cv-download,.nav-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1.2rem;border-radius:2px;border:1px solid color-mix(in srgb,var(--color-neon) 28%,var(--color-border));font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875rem;font-weight:500;letter-spacing:.05em;line-height:1;text-decoration:none;cursor:pointer;--btn-corner:var(--color-neon);--btn-corner-alpha:48%;--btn-corner-size:7px;--btn-corner-thick:1.5px;--btn-hud-ink:color-mix(in srgb,var(--btn-corner) var(--btn-corner-alpha),transparent);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 2px,var(--color-neon-scan) 2px,var(--color-neon-scan) 3px),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink));background-size:100% 100%,var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size);background-position:0 0,2px 2px,2px 2px,calc(100% - 2px) 2px,calc(100% - 2px) 2px,2px calc(100% - 2px),2px calc(100% - 2px),calc(100% - 2px) calc(100% - 2px),calc(100% - 2px) calc(100% - 2px);background-repeat:repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff calc(14% * var(--neon-intensity, 1) + 8%),transparent),inset 0 -1px 0 color-mix(in srgb,#000 calc(18% * var(--neon-intensity, 1) + 10%),transparent);transition:transform .2s cubic-bezier(.22,1,.36,1),background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s cubic-bezier(.22,1,.36,1)}.btn:hover,.cv-download:hover,.nav-button:hover{transform:translateY(-2px)}.btn:active,.cv-download:active,.nav-button:active{transform:translateY(0)}.btn:focus-visible,.cv-download:focus-visible,.nav-button:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;transition:outline-offset .15s cubic-bezier(.22,1,.36,1)}.btn,.cv-download,.nav-button{position:relative;overflow:hidden;isolation:isolate;--ripple-x:50%;--ripple-y:50%}.btn:after,.cv-download:after,.nav-button:after{content:"";position:absolute;left:var(--ripple-x);top:var(--ripple-y);width:8px;height:8px;border-radius:50%;background:rgba(15,23,42,.14);transform:translate(-50%,-50%) scale(0);opacity:0;pointer-events:none;z-index:1}.btn.is-wave:after,.is-wave.cv-download:after,.is-wave.nav-button:after{animation:wave-ripple .55s cubic-bezier(.22,1,.36,1)}.btn,.cv-download,.nav-button{--btn-corner-alpha:42%;transition:transform .2s cubic-bezier(.22,1,.36,1),background-color .2s ease,border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1),text-shadow .2s cubic-bezier(.4,0,.2,1),--btn-corner-alpha .2s cubic-bezier(.4,0,.2,1)}.btn--primary{background-color:var(--color-primary);color:var(--color-on-primary);position:relative;overflow:hidden;isolation:isolate;--ripple-x:50%;--ripple-y:50%}.btn--primary:after{content:"";position:absolute;left:var(--ripple-x);top:var(--ripple-y);width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.42);transform:translate(-50%,-50%) scale(0);opacity:0;pointer-events:none;z-index:1}.btn--primary.is-wave:after{animation:wave-ripple .55s cubic-bezier(.22,1,.36,1)}.btn--primary:hover{background-color:var(--color-primary-hover);border-color:var(--color-neon);--btn-corner-alpha:88%;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff calc(16% * var(--neon-intensity, 1) + 8%),transparent),inset 0 -1px 0 color-mix(in srgb,#000 calc(20% * var(--neon-intensity, 1) + 10%),transparent),0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * .65 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*.65) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.65) var(--color-neon-glow);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.25) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.25) var(--color-neon-glow)}.btn--secondary,.cv-download{background-color:color-mix(in srgb,var(--color-bg-elevated) 72%,transparent);color:var(--color-text)}.btn--secondary:hover,.cv-download:hover{color:var(--color-neon-strong);border-color:var(--color-neon);--btn-corner-alpha:88%;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff calc(16% * var(--neon-intensity, 1) + 8%),transparent),inset 0 -1px 0 color-mix(in srgb,#000 calc(20% * var(--neon-intensity, 1) + 10%),transparent),0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * .65 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*.65) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.65) var(--color-neon-glow);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.35) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.35) var(--color-neon-glow)}.btn--subscribe{background-color:var(--color-subscribe);color:var(--color-on-subscribe);border-color:color-mix(in srgb,var(--color-subscribe) 60%,var(--color-border));position:relative;overflow:hidden;isolation:isolate;--ripple-x:50%;--ripple-y:50%}.btn--subscribe:after{content:"";position:absolute;left:var(--ripple-x);top:var(--ripple-y);width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.3);transform:translate(-50%,-50%) scale(0);opacity:0;pointer-events:none;z-index:1}.btn--subscribe.is-wave:after{animation:wave-ripple .55s cubic-bezier(.22,1,.36,1)}.btn--subscribe:hover:not(:disabled){background-color:var(--color-subscribe-hover);box-shadow:0 0 var(--neon-box-blur) var(--color-subscribe-glow);border-color:var(--color-neon);--btn-corner-alpha:88%;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff calc(16% * var(--neon-intensity, 1) + 8%),transparent),inset 0 -1px 0 color-mix(in srgb,#000 calc(20% * var(--neon-intensity, 1) + 10%),transparent),0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * .65 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*.65) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.65) var(--color-neon-glow);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.25) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.25) var(--color-neon-glow)}.btn:disabled,.btn[aria-disabled=true],.cv-download:disabled,.nav-button:disabled,[aria-disabled=true].cv-download,[aria-disabled=true].nav-button{cursor:not-allowed;opacity:.55;color:var(--color-text-muted);background-color:var(--color-surface);border-color:var(--color-border);box-shadow:none;transform:none;pointer-events:none}.btn--ghost,.nav-button{background-color:rgba(0,0,0,0);color:var(--color-text);padding:.55rem .9rem;border-color:rgba(0,0,0,0);--btn-corner-alpha:0%;box-shadow:none;background-image:none}.btn--ghost:hover,.nav-button:hover{color:var(--color-neon-strong);--btn-corner:var(--color-neon);--btn-corner-alpha:48%;--btn-corner-size:7px;--btn-corner-thick:1.5px;--btn-hud-ink:color-mix(in srgb,var(--btn-corner) var(--btn-corner-alpha),transparent);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 2px,var(--color-neon-scan) 2px,var(--color-neon-scan) 3px),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink));background-size:100% 100%,var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size);background-position:0 0,2px 2px,2px 2px,calc(100% - 2px) 2px,calc(100% - 2px) 2px,2px calc(100% - 2px),2px calc(100% - 2px),calc(100% - 2px) calc(100% - 2px),calc(100% - 2px) calc(100% - 2px);background-repeat:repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat;border-color:var(--color-neon);--btn-corner-alpha:88%;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff calc(16% * var(--neon-intensity, 1) + 8%),transparent),inset 0 -1px 0 color-mix(in srgb,#000 calc(20% * var(--neon-intensity, 1) + 10%),transparent),0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * .55 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*.55) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.55) var(--color-neon-glow);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.35) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.35) var(--color-neon-glow)}.nav-button{font-weight:500;letter-spacing:.05em;color:var(--color-text-muted);transition:color .2s cubic-bezier(.4,0,.2,1),text-shadow .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.22,1,.36,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),--btn-corner-alpha .2s cubic-bezier(.4,0,.2,1)}.nav-button.is-active{color:var(--color-neon-strong);--btn-corner:var(--color-neon);--btn-corner-alpha:48%;--btn-corner-size:7px;--btn-corner-thick:1.5px;--btn-hud-ink:color-mix(in srgb,var(--btn-corner) var(--btn-corner-alpha),transparent);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 2px,var(--color-neon-scan) 2px,var(--color-neon-scan) 3px),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink));background-size:100% 100%,var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size);background-position:0 0,2px 2px,2px 2px,calc(100% - 2px) 2px,calc(100% - 2px) 2px,2px calc(100% - 2px),2px calc(100% - 2px),calc(100% - 2px) calc(100% - 2px),calc(100% - 2px) calc(100% - 2px);background-repeat:repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat;border-color:var(--color-neon);--btn-corner-alpha:88%;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff calc(16% * var(--neon-intensity, 1) + 8%),transparent),inset 0 -1px 0 color-mix(in srgb,#000 calc(20% * var(--neon-intensity, 1) + 10%),transparent),0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * .55 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*.55) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.55) var(--color-neon-glow);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.45) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.45) var(--color-neon-glow)}.nav-button:hover{color:var(--color-neon-strong);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.35) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.35) var(--color-neon-glow)}.hamburger,.icon-button,.theme-switch{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border:1px solid color-mix(in srgb,var(--color-neon) 28%,var(--color-border));border-radius:2px;background:var(--color-bg-elevated);color:var(--color-text);cursor:pointer;--btn-corner:var(--color-neon);--btn-corner-alpha:48%;--btn-corner-size:7px;--btn-corner-thick:1.5px;--btn-hud-ink:color-mix(in srgb,var(--btn-corner) var(--btn-corner-alpha),transparent);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 2px,var(--color-neon-scan) 2px,var(--color-neon-scan) 3px),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink));background-size:100% 100%,var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size);background-position:0 0,2px 2px,2px 2px,calc(100% - 2px) 2px,calc(100% - 2px) 2px,2px calc(100% - 2px),2px calc(100% - 2px),calc(100% - 2px) calc(100% - 2px),calc(100% - 2px) calc(100% - 2px);background-repeat:repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff calc(14% * var(--neon-intensity, 1) + 8%),transparent),inset 0 -1px 0 color-mix(in srgb,#000 calc(18% * var(--neon-intensity, 1) + 10%),transparent);transition:transform .2s cubic-bezier(.22,1,.36,1),background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s cubic-bezier(.22,1,.36,1)}.hamburger:hover,.icon-button:hover,.theme-switch:hover{transform:translateY(-2px)}.hamburger:active,.icon-button:active,.theme-switch:active{transform:translateY(0)}.hamburger:focus-visible,.icon-button:focus-visible,.theme-switch:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;transition:outline-offset .15s cubic-bezier(.22,1,.36,1)}.hamburger,.icon-button,.theme-switch{position:relative;overflow:hidden;isolation:isolate;--ripple-x:50%;--ripple-y:50%}.hamburger:after,.icon-button:after,.theme-switch:after{content:"";position:absolute;left:var(--ripple-x);top:var(--ripple-y);width:8px;height:8px;border-radius:50%;background:rgba(15,23,42,.14);transform:translate(-50%,-50%) scale(0);opacity:0;pointer-events:none;z-index:1}.icon-button.is-wave:after,.is-wave.hamburger:after,.is-wave.theme-switch:after{animation:wave-ripple .55s cubic-bezier(.22,1,.36,1)}.hamburger,.icon-button,.theme-switch{--btn-corner-alpha:42%;transition:transform .2s cubic-bezier(.22,1,.36,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),color .2s ease,text-shadow .2s cubic-bezier(.4,0,.2,1),--btn-corner-alpha .2s cubic-bezier(.4,0,.2,1)}.hamburger:hover,.icon-button:hover,.theme-switch:hover{color:var(--color-neon-strong);border-color:var(--color-neon);--btn-corner-alpha:88%;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff calc(16% * var(--neon-intensity, 1) + 8%),transparent),inset 0 -1px 0 color-mix(in srgb,#000 calc(20% * var(--neon-intensity, 1) + 10%),transparent),0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * .55 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*.55) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.55) var(--color-neon-glow);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.3) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.3) var(--color-neon-glow)}.hamburger img,.hamburger svg,.icon-button img,.icon-button svg,.theme-switch img,.theme-switch svg{width:1.1rem;height:1.1rem;position:relative;z-index:2}.icon-button.is-active,.is-active.hamburger,.is-active.theme-switch{color:var(--color-neon-strong);border-color:var(--color-neon);--btn-corner-alpha:88%;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff calc(16% * var(--neon-intensity, 1) + 8%),transparent),inset 0 -1px 0 color-mix(in srgb,#000 calc(20% * var(--neon-intensity, 1) + 10%),transparent),0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * .65 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*.65) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.65) var(--color-neon-glow);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.35) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.35) var(--color-neon-glow)}.lang-switch{display:inline-flex;gap:.35rem}.cv-download{white-space:nowrap}.cv-download svg{width:.95rem;height:.95rem;flex-shrink:0}.hamburger{display:none;flex-direction:column;gap:4px}.hamburger span{display:block;width:1rem;height:2px;background:var(--color-text);transition:transform .2s ease,opacity .2s ease;position:relative;z-index:2}.hamburger.is-open span:first-child{transform:translateY(6px) rotate(45deg)}.hamburger.is-open span:nth-child(2){opacity:0}.hamburger.is-open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.form{display:grid;grid-gap:1rem;gap:1rem;max-width:32rem}.form label{display:grid;grid-gap:.35rem;gap:.35rem;font-size:.875rem;font-weight:500}.form input,.form textarea{width:100%;padding:.7rem .85rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-elevated);color:var(--color-text);font:inherit;transition:border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1)}.form input:focus,.form textarea:focus{outline:none;border-color:var(--color-neon);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * .45 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*.45) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.45) var(--color-neon-glow)}.form input:disabled,.form input[aria-disabled=true],.form textarea:disabled,.form textarea[aria-disabled=true]{cursor:not-allowed;opacity:.55;color:var(--color-text-muted);background-color:var(--color-surface);pointer-events:none}.form textarea{min-height:8rem;resize:vertical}.project-card{display:grid;grid-gap:.85rem;gap:.85rem;padding:0;background:rgba(0,0,0,0);transition:transform .2s cubic-bezier(.22,1,.36,1),border-color .2s ease}.project-card:hover{transform:translateY(-3px)}.project-card:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;transition:outline-offset .15s cubic-bezier(.22,1,.36,1)}.project-card__media{aspect-ratio:16/10;background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;overflow:hidden;transition:border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1)}.project-card__media img{width:100%;height:100%;object-fit:cover;display:block}.project-card:hover .project-card__media{border-color:var(--color-neon);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * .7 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*.7) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.7) var(--color-neon-glow)}.project-card__title{margin:0;font-size:1.35rem;font-weight:600;transition:text-shadow .2s cubic-bezier(.4,0,.2,1),color .2s cubic-bezier(.4,0,.2,1)}.project-card:hover .project-card__title{color:var(--color-neon-strong);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.35) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.35) var(--color-neon-glow)}.project-card__desc{margin:0;color:var(--color-text-muted);line-height:1.7}.experience-timeline{--timeline-rail:8.75rem;--timeline-dot:0.7rem;--timeline-gap:1.25rem;--card-h:17.5rem;list-style:none;margin:0;padding:0;display:grid;grid-gap:1.25rem;gap:1.25rem;position:relative}.experience-timeline:before{content:"";position:absolute;top:1.35rem;bottom:1.35rem;left:calc(var(--timeline-rail) + var(--timeline-gap) + var(--timeline-dot)/2 - 1px);width:2px;background:linear-gradient(180deg,color-mix(in srgb,var(--color-neon) 55%,transparent),color-mix(in srgb,var(--color-neon) 22%,var(--color-border)),color-mix(in srgb,var(--color-neon) 40%,transparent));box-shadow:0 0 12px -2px var(--color-neon-glow-soft);pointer-events:none}.experience-timeline__item{display:grid;grid-template-columns:var(--timeline-rail) var(--timeline-dot) minmax(0,1fr);grid-column-gap:var(--timeline-gap);column-gap:var(--timeline-gap);align-items:start;height:var(--card-h)}.experience-timeline__item:first-child .experience-card{--stagger:1}.experience-timeline__item:nth-child(2) .experience-card{--stagger:2}.experience-timeline__item:nth-child(3) .experience-card{--stagger:3}.experience-timeline__item:nth-child(4) .experience-card{--stagger:4}.experience-timeline__item:nth-child(5) .experience-card{--stagger:5}.experience-timeline__item:nth-child(6) .experience-card{--stagger:6}.experience-timeline__item:nth-child(7) .experience-card{--stagger:7}.experience-timeline__item:nth-child(8) .experience-card{--stagger:8}.experience-timeline__item:nth-child(9) .experience-card{--stagger:9}.experience-timeline__item:nth-child(10) .experience-card{--stagger:10}.experience-timeline__item:nth-child(11) .experience-card{--stagger:11}.experience-timeline__item:nth-child(12) .experience-card{--stagger:12}.experience-timeline__date{display:block;text-align:right;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;font-weight:500;letter-spacing:.04em;line-height:1.35;color:var(--color-text-muted);padding-top:1.2rem;position:relative;z-index:1}.experience-timeline__dot{width:var(--timeline-dot);height:var(--timeline-dot);margin-top:1.35rem;border-radius:50%;background:var(--color-bg);border:2px solid var(--color-neon);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-bg) 88%,transparent),0 0 10px -1px var(--color-neon-glow);justify-self:center;position:relative;z-index:1;transition:box-shadow .2s cubic-bezier(.4,0,.2,1),border-color .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.22,1,.36,1)}.experience-timeline__item:focus-within .experience-timeline__dot,.experience-timeline__item:hover .experience-timeline__dot{transform:scale(1.15);border-color:var(--color-neon-strong);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-bg) 88%,transparent),0 0 14px 0 var(--color-neon-glow)}.experience-timeline__card{min-width:0;height:100%}@media(max-width:720px){.experience-timeline{--card-h:18.5rem;--timeline-gap:0.85rem}.experience-timeline:before{left:calc(.15rem + var(--timeline-dot)/2 - 1px);top:2.4rem;bottom:.55rem}.experience-timeline__item{grid-template-columns:var(--timeline-dot) minmax(0,1fr);grid-template-rows:auto var(--card-h);height:auto;padding-left:.15rem}.experience-timeline__dot{grid-column:1;grid-row:1;margin-top:.35rem}.experience-timeline__date{grid-column:2;grid-row:1;text-align:left;font-size:.875rem;padding-top:.15rem;padding-bottom:.55rem}.experience-timeline__card{grid-column:2;grid-row:2;height:var(--card-h)}}.experience-card{--card-pad-y:1.15rem;--card-pad-x:1.25rem;position:relative;display:flex;flex-direction:column;height:100%;max-height:100%;overflow:hidden;padding:var(--card-pad-y) var(--card-pad-x);border:1px solid color-mix(in srgb,var(--color-neon) 18%,var(--color-border));border-radius:10px;background:linear-gradient(145deg,color-mix(in srgb,var(--color-neon) 6%,var(--color-bg-elevated)),var(--color-bg-elevated));box-shadow:inset 0 1px 0 color-mix(in srgb,#fff calc(14% * var(--neon-intensity, 1) + 8%),transparent),inset 0 -1px 0 color-mix(in srgb,#000 calc(18% * var(--neon-intensity, 1) + 10%),transparent)}.experience-card:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;transition:outline-offset .15s cubic-bezier(.22,1,.36,1)}.experience-card{outline:none;transition:transform .2s cubic-bezier(.22,1,.36,1),border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1)}.experience-card:focus-within,.experience-card:hover{transform:scale(1.012);border-color:color-mix(in srgb,var(--color-neon) 55%,var(--color-border));box-shadow:inset 0 1px 0 color-mix(in srgb,#fff calc(16% * var(--neon-intensity, 1) + 8%),transparent),inset 0 -1px 0 color-mix(in srgb,#000 calc(20% * var(--neon-intensity, 1) + 10%),transparent),0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * .55 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*.55) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.55) var(--color-neon-glow)}.experience-card__main{display:flex;flex-direction:column;gap:.85rem;height:100%;min-height:0}.experience-card__header{display:grid;grid-gap:.35rem;gap:.35rem}.experience-card__role{margin:0;font-family:var(--font-display),"Fraunces",Georgia,serif;font-size:1.35rem;font-weight:600;line-height:1.2;letter-spacing:-.01em}.experience-card__company{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875rem;font-weight:500;letter-spacing:.03em;color:var(--color-primary)}.experience-card__location{margin:0;font-size:.75rem;color:var(--color-text-muted)}.experience-card__stack{display:flex;flex-wrap:wrap;gap:.4rem}.experience-card__stack span{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;padding:.28rem .55rem;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-muted);background:color-mix(in srgb,var(--color-surface) 70%,transparent)}.experience-card__teaser{margin:auto 0 0;font-size:.875rem;line-height:1.7;color:var(--color-text-muted);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.experience-card__overlay{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;gap:.65rem;padding:var(--card-pad-y) var(--card-pad-x);border-radius:inherit;background:linear-gradient(160deg,color-mix(in srgb,var(--color-neon) 12%,var(--color-bg-elevated)),var(--color-bg-elevated));opacity:0;pointer-events:none;transform:scale(.985);transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.22,1,.36,1)}.experience-card__overlay .experience-card__role{color:var(--color-neon-strong);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.45) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.45) var(--color-neon-glow)}.experience-card__overlay .experience-card__company{color:var(--color-neon-strong);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.28) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.28) var(--color-neon-glow)}.experience-card__overlay .experience-card__stack span{border-color:color-mix(in srgb,var(--color-neon) 50%,var(--color-border));color:var(--color-text);background:color-mix(in srgb,var(--color-neon) 12%,var(--color-surface));box-shadow:0 0 14px -6px var(--color-neon-glow-soft)}.experience-card:focus-within .experience-card__overlay,.experience-card:hover .experience-card__overlay{opacity:1;transform:scale(1)}.experience-card__summary{color:var(--color-text);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.experience-card__list,.experience-card__summary{margin:0;font-size:.875rem;line-height:1.7;overflow:hidden}.experience-card__list{padding-left:1.05rem;color:var(--color-text-muted);flex:1 1;min-height:0}.experience-card__list li+li{margin-top:.3rem}.skip-link{position:absolute;left:1rem;top:-100px;z-index:200;padding:.65rem 1rem;border-radius:6px;background:var(--color-primary);color:#fff;font-weight:600;text-decoration:none;transition:top .15s ease}.skip-link:focus{top:1rem;outline:2px solid var(--color-focus);outline-offset:2px}.site-shell{position:relative;isolation:isolate;min-height:100vh;min-height:100dvh;background:var(--color-bg);color:var(--color-text)}.ambient-bg{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;opacity:var(--ambient-opacity,.5)}.ambient-bg__wash{position:absolute;inset:0;background:radial-gradient(ellipse 70% 50% at 12% 18%,var(--ambient-wash-a),transparent 60%),radial-gradient(ellipse 55% 45% at 88% 12%,var(--ambient-wash-b),transparent 58%),radial-gradient(ellipse 60% 50% at 70% 88%,var(--ambient-wash-a),transparent 62%),radial-gradient(ellipse 50% 40% at 20% 78%,var(--ambient-wash-b),transparent 55%)}.ambient-bg__canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.ambient-bg__star--1{animation:ambient-twinkle 7.5s cubic-bezier(.45,0,.55,1) infinite}.ambient-bg__star--2{animation:ambient-twinkle 9.2s cubic-bezier(.45,0,.55,1) 1.4s infinite}.ambient-bg__star--3{animation:ambient-twinkle 11s cubic-bezier(.45,0,.55,1) 2.8s infinite}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:100;border-bottom:1px solid color-mix(in srgb,var(--color-border) 70%,var(--color-neon));background:linear-gradient(180deg,color-mix(in srgb,var(--color-neon) 4%,transparent),transparent),color-mix(in srgb,var(--color-nav) var(--nav-rest-mix,28%),transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:none;transition:background .2s ease,box-shadow .2s ease,border-color .2s cubic-bezier(.4,0,.2,1),-webkit-backdrop-filter .2s ease;transition:background .2s ease,backdrop-filter .2s ease,box-shadow .2s ease,border-color .2s cubic-bezier(.4,0,.2,1);transition:background .2s ease,backdrop-filter .2s ease,box-shadow .2s ease,border-color .2s cubic-bezier(.4,0,.2,1),-webkit-backdrop-filter .2s ease}.site-header.is-scrolled{background:linear-gradient(180deg,color-mix(in srgb,var(--color-neon) 5%,transparent),transparent),color-mix(in srgb,var(--color-nav) var(--nav-scroll-mix,8%),transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 1px 0 color-mix(in srgb,var(--color-neon) 10%,transparent)}.site-header__inner{max-width:1100px;margin:0 auto;padding:.75rem 1.25rem;display:flex;align-items:center;gap:.75rem}.brand{display:inline-flex;align-items:center;flex-shrink:0;text-decoration:none}.brand:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;transition:outline-offset .15s cubic-bezier(.22,1,.36,1)}.brand,.brand__mark{border-radius:999px}.brand__mark{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;font-family:var(--font-display),"Fraunces",Georgia,serif;font-size:.78rem;font-weight:600;letter-spacing:.04em;color:var(--color-neon-strong);background:color-mix(in srgb,var(--color-neon) 12%,var(--color-bg));border:1px solid color-mix(in srgb,var(--color-neon) 45%,var(--color-border));box-shadow:0 0 0 0 rgba(0,0,0,0);transition:color .2s cubic-bezier(.4,0,.2,1),background-color .2s ease,border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),text-shadow .2s cubic-bezier(.4,0,.2,1)}.brand:hover .brand__mark{color:var(--color-neon-strong);background:color-mix(in srgb,var(--color-neon) 18%,var(--color-bg));border-color:var(--color-neon);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.45) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.45) var(--color-neon-glow);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * .55 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*.55) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.55) var(--color-neon-glow)}.site-nav{flex:1 1;gap:.35rem;min-width:0}.site-nav,.site-nav__links{display:flex;align-items:center}.site-nav__links{gap:.15rem}.site-nav__actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}.site-main{min-height:calc(100vh - 8rem);background:rgba(0,0,0,0)}.site-footer,.site-main{position:relative;z-index:1}.site-footer{border-top:1px solid color-mix(in srgb,var(--color-border) 75%,var(--color-neon));padding:1.5rem 1.25rem;text-align:center;color:var(--color-text-muted);font-size:.875rem;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--color-neon) 5%,transparent)),color-mix(in srgb,var(--color-footer,var(--color-bg)) 92%,var(--color-surface))}.container{max-width:1100px;margin:0 auto;padding:2.5rem 1.25rem 3.5rem}.hero{position:relative;display:grid;grid-template-columns:1.15fr .85fr;grid-gap:2.5rem;gap:2.5rem;align-items:center;padding:3rem 0 2rem;isolation:isolate;background:radial-gradient(ellipse at 20% 20%,var(--color-hero-start),transparent 55%),radial-gradient(ellipse at 80% 0,var(--color-hero-end),transparent 50%)}.hero__atmosphere{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;opacity:.55}.hero__atmosphere-img{object-fit:cover}.hero__copy,.hero__media{position:relative;z-index:1}.hero__copy h1{font-family:var(--font-display),"Fraunces",Georgia,serif;font-size:clamp(2.25rem,4vw,3.25rem);font-weight:600;line-height:1.2;margin:0 0 1rem;letter-spacing:-.03em}.hero__copy p{margin:0;font-size:1.125rem;color:var(--color-text-muted);line-height:1.7;max-width:36rem}.hero__media{justify-self:end}.hero__media img{width:min(100%,320px);height:auto;display:block;border:1px solid color-mix(in srgb,var(--color-neon) 28%,transparent);border-radius:12px;background:rgba(0,0,0,0);box-shadow:0 0 28px -14px var(--color-neon-glow-soft)}.bio{padding:1rem 0 2rem;max-width:42rem;color:var(--color-text-muted);line-height:1.7}.home-page{position:relative;z-index:1;width:100%;max-width:none;margin:0;padding:0}.home-section{position:relative;isolation:isolate;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;padding:4.5rem max(1.5rem,(100% - 1280px)/2 + 1.5rem) 3.5rem}.home-section--hero{color:var(--color-term-hero-fg);background:rgba(0,0,0,0)}.home-section--focus{border-top:1px solid color-mix(in srgb,var(--color-border) 80%,transparent);padding-block:6rem 5.5rem;background:rgba(0,0,0,0)}.home-section--connect{border-top:1px solid color-mix(in srgb,var(--color-primary) 18%,var(--color-border));padding-block:6rem 5.5rem;background:radial-gradient(ellipse at 70% 20%,color-mix(in srgb,var(--color-neon) 10%,transparent),transparent 55%),linear-gradient(180deg,color-mix(in srgb,var(--color-hero-start) 55%,transparent),color-mix(in srgb,var(--color-bg) 78%,transparent))}.terminal-shell{position:relative;isolation:isolate}.terminal-shell__atmosphere{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}.terminal-shell__atmosphere:before{content:"";position:absolute;inset:0;opacity:.5;background:radial-gradient(ellipse at 20% 30%,color-mix(in srgb,var(--color-neon) 18%,transparent),transparent 55%),radial-gradient(ellipse at 85% 15%,var(--color-term-glow-secondary),transparent 50%),linear-gradient(165deg,color-mix(in srgb,var(--color-term-atmosphere) 88%,transparent) 0,color-mix(in srgb,var(--color-term-atmosphere-mid) 82%,transparent) 48%,color-mix(in srgb,var(--color-term-atmosphere-end) 75%,transparent) 100%)}.terminal-shell__glow{position:absolute;border-radius:50%;filter:blur(52px);opacity:calc(.4 + .25*var(--neon-intensity, 1))}.terminal-shell__glow--left{width:min(52vw,440px);height:min(52vw,440px);left:-6%;top:12%;background:radial-gradient(circle,var(--color-neon-glow),transparent 70%)}.terminal-shell__glow--right{width:min(44vw,360px);height:min(44vw,360px);right:-2%;top:22%;background:radial-gradient(circle,var(--color-term-glow-secondary),transparent 72%)}.terminal-shell__grid{position:absolute;inset:0;opacity:calc(.18 + .12*var(--neon-intensity, 1));-webkit-mask-image:radial-gradient(ellipse at 40% 40%,#000 18%,transparent 78%);mask-image:radial-gradient(ellipse at 40% 40%,#000 18%,transparent 78%)}.terminal-shell__noise{position:absolute;inset:0;opacity:var(--color-term-noise);background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px}.terminal-shell__intro{position:relative;z-index:1;margin-bottom:1.75rem;max-width:42rem}.terminal-shell__role{margin:0 0 .65rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-neon-strong);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.4) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.4) var(--color-neon-glow)}.terminal-shell__brand{margin:0 0 .5rem;font-size:clamp(2rem,4.6vw,3.15rem);letter-spacing:-.035em;color:var(--color-term-hero-fg);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.45) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.45) var(--color-neon-glow)}.terminal-shell__brand,.terminal-shell__slogan{font-family:var(--font-display),"Fraunces",Georgia,serif;font-weight:600;line-height:1.2}.terminal-shell__slogan{margin:0;font-size:clamp(1.35rem,3vw,1.95rem);letter-spacing:-.025em;color:var(--color-term-hero-muted);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.4) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.4) var(--color-neon-glow);animation:neon-text-breath 4.5s cubic-bezier(.45,0,.55,1) infinite}.terminal-shell__stage{position:relative;z-index:1;display:grid;grid-template-columns:1.25fr .75fr;grid-gap:2.75rem;gap:2.75rem;align-items:center}.terminal-shell__prompt{min-width:0}.terminal-shell__window{position:relative;overflow:hidden;margin:0 0 1.1rem;border-radius:12px;border:1px solid color-mix(in srgb,var(--color-term-border) 70%,transparent);background:color-mix(in srgb,var(--color-term-panel) 14%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-neon) 10%,transparent),0 0 32px -14px var(--color-neon-glow-soft);color:var(--color-term-text)}.terminal-shell__scanlines{position:absolute;inset:0;z-index:2;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 2px,var(--color-neon-scan) 3px);opacity:var(--color-term-scan-opacity);mix-blend-mode:soft-light}.terminal-shell__crt{position:absolute;left:0;right:0;height:28%;z-index:2;pointer-events:none;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--color-neon) 10%,transparent),transparent);animation:scanline-sweep 6s linear infinite;opacity:calc(.35 + .25*var(--neon-intensity, 1))}.terminal-shell__body{position:relative;z-index:1;min-height:14rem;max-height:min(42vh,22rem);overflow:auto;padding:1.15rem 1.2rem 1.25rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875rem;line-height:1.55}.terminal-shell__line+.terminal-shell__line{margin-top:.35rem}.terminal-shell__cmd-line,.terminal-shell__out{margin:0}.terminal-shell__cmd-line--idle{margin-top:.15rem}.terminal-shell__dollar{color:var(--color-neon-strong);font-weight:600;text-shadow:0 0 8px var(--color-neon-glow-soft)}.terminal-shell__out{color:var(--color-term-text);padding-left:.1rem}.terminal-shell__out--muted{color:var(--color-term-text-muted)}.terminal-shell__out--ok{color:var(--color-neon-strong);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.35) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.35) var(--color-neon-glow)}.terminal-shell__cursor{display:inline-block;width:.55rem;height:1.05em;margin-left:.12rem;background:var(--color-neon);border-radius:1px;vertical-align:text-bottom;animation:neon-cursor 1.05s steps(1) infinite}.terminal-shell__exec{margin-top:.55rem;padding-top:.5rem;border-top:1px dashed color-mix(in srgb,var(--color-neon) 28%,transparent)}.terminal-shell.is-busy .terminal-shell__window{box-shadow:0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * 1.15 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*1.15) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*1.15) var(--color-neon-glow)}.terminal-shell.is-busy .terminal-shell__cmd:disabled:not(.is-active){opacity:.55;cursor:wait}.terminal-shell.is-busy .terminal-shell__cmd.is-active:disabled{cursor:wait;opacity:1}.terminal-shell__hint{margin:0 0 .95rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875rem;color:var(--color-term-text-muted)}.terminal-shell__commands{display:flex;flex-wrap:wrap;gap:.55rem}.terminal-shell__cmd{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.15rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875rem;font-weight:500;letter-spacing:.05em;line-height:1;color:var(--color-neon-strong);border:1px solid color-mix(in srgb,var(--color-neon) 28%,var(--color-border));background-color:color-mix(in srgb,var(--color-term-cmd-bg) 22%,transparent);border-radius:2px;padding:.65rem 1.1rem;cursor:pointer;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);overflow:hidden;isolation:isolate;--btn-corner:var(--color-neon);--btn-corner-alpha:48%;--btn-corner-size:7px;--btn-corner-thick:1.5px;--btn-hud-ink:color-mix(in srgb,var(--btn-corner) var(--btn-corner-alpha),transparent);background-image:repeating-linear-gradient(to bottom,transparent 0,transparent 2px,var(--color-neon-scan) 2px,var(--color-neon-scan) 3px),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink)),linear-gradient(var(--btn-hud-ink),var(--btn-hud-ink));background-size:100% 100%,var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size),var(--btn-corner-size) var(--btn-corner-thick),var(--btn-corner-thick) var(--btn-corner-size);background-position:0 0,2px 2px,2px 2px,calc(100% - 2px) 2px,calc(100% - 2px) 2px,2px calc(100% - 2px),2px calc(100% - 2px),calc(100% - 2px) calc(100% - 2px),calc(100% - 2px) calc(100% - 2px);background-repeat:repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff calc(14% * var(--neon-intensity, 1) + 8%),transparent),inset 0 -1px 0 color-mix(in srgb,#000 calc(18% * var(--neon-intensity, 1) + 10%),transparent);transition:transform .2s cubic-bezier(.22,1,.36,1),background-color .2s ease,border-color .2s cubic-bezier(.4,0,.2,1),color .2s ease,box-shadow .2s cubic-bezier(.4,0,.2,1),text-shadow .2s cubic-bezier(.4,0,.2,1),filter .2s cubic-bezier(.4,0,.2,1),--btn-corner-alpha .2s cubic-bezier(.4,0,.2,1)}.terminal-shell__cmd:hover:not(:disabled){transform:translateY(-2px);color:var(--color-neon-strong,var(--color-neon));border-color:var(--color-neon);--btn-corner-alpha:88%;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff calc(16% * var(--neon-intensity, 1) + 8%),transparent),inset 0 -1px 0 color-mix(in srgb,#000 calc(20% * var(--neon-intensity, 1) + 10%),transparent),0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * .65 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*.65) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.65) var(--color-neon-glow);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.35) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.35) var(--color-neon-glow)}.terminal-shell__cmd:active:not(:disabled){transform:translateY(0)}.terminal-shell__cmd:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;transition:outline-offset .15s cubic-bezier(.22,1,.36,1)}.terminal-shell__cmd{--btn-corner-alpha:42%}.terminal-shell__cmd:hover:not(:disabled){background-color:color-mix(in srgb,var(--color-neon) 10%,transparent)}.terminal-shell__cmd.is-active{border-color:var(--color-neon);background-color:color-mix(in srgb,var(--color-neon) 14%,transparent);--btn-corner-alpha:88%;box-shadow:inset 0 1px 0 color-mix(in srgb,#fff calc(16% * var(--neon-intensity, 1) + 8%),transparent),inset 0 -1px 0 color-mix(in srgb,#000 calc(20% * var(--neon-intensity, 1) + 10%),transparent),0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * .65 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*.65) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.65) var(--color-neon-glow);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.35) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.35) var(--color-neon-glow)}.terminal-shell__cmd-prefix{color:var(--color-term-text-muted);margin-right:.2rem}.terminal-shell__portrait{justify-self:end;width:min(100%,340px);transform-style:preserve-3d}.terminal-shell__portrait-frame{position:relative;padding:0;border-radius:22px;background:rgba(0,0,0,0);box-shadow:none;perspective:1400px;transform-style:preserve-3d}.terminal-shell__portrait-inner{position:relative;overflow:visible;border-radius:22px;width:100%;aspect-ratio:1;min-height:0;border:0;background:rgba(0,0,0,0);container-type:inline-size}.terminal-shell__portrait-flip{display:block;width:100%;height:100%;padding:0;margin:0;border:0;background:rgba(0,0,0,0);pointer-events:none;border-radius:inherit;color:inherit;text-align:inherit;font:inherit;perspective:inherit}.terminal-shell__portrait-flip.is-flipped .terminal-shell__portrait-flip-inner{transform:rotateY(180deg)}.terminal-shell__portrait-flip-inner{display:block;position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .95s cubic-bezier(.4,.05,.2,1);border-radius:inherit}.terminal-shell__portrait-face{display:block;position:absolute;inset:0;width:100%;height:100%;border-radius:inherit;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:rgba(0,0,0,0)}.terminal-shell__portrait-face--front{transform:rotateY(0deg);background:rgba(0,0,0,0)}.terminal-shell__portrait-face--back{transform:rotateY(180deg);display:grid;place-items:center;background:rgba(0,0,0,0)}.terminal-shell__portrait-ascii{margin:0;box-sizing:border-box;padding:0;overflow:hidden;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:600;font-size:calc(100cqw/var(--portrait-cols, 112));line-height:calc(100cqw/var(--portrait-rows, 56));letter-spacing:0;white-space:pre;text-align:center;color:#2dd4bf;text-shadow:0 0 8px color-mix(in srgb,#2dd4bf 55%,transparent),0 0 18px color-mix(in srgb,#14b8a6 35%,transparent);background:rgba(0,0,0,0)}.terminal-shell__portrait-ascii,.terminal-shell__portrait-photo{width:100%;height:100%;display:block;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.terminal-shell__portrait-photo{object-fit:cover;object-position:center top;filter:drop-shadow(0 0 22px color-mix(in srgb,var(--color-neon) 28%,transparent))}.terminal-shell__portrait-slot{width:100%;height:100%;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,color-mix(in srgb,var(--color-neon) 12%,transparent),transparent 55%),radial-gradient(circle at 70% 80%,color-mix(in srgb,var(--color-term-glow-secondary) 70%,transparent),transparent 60%)}.terminal-shell__portrait-slot-label{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-term-text-muted);border:1px dashed color-mix(in srgb,var(--color-neon) 35%,transparent);border-radius:6px;padding:.55rem .85rem;background:rgba(0,0,0,0)}.connect-section__atmosphere,.focus-section__atmosphere{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}.focus-section__atmosphere:before{content:"";position:absolute;inset:0;opacity:.5;background:radial-gradient(ellipse at 30% 20%,color-mix(in srgb,var(--color-surface) 55%,transparent),transparent 55%),radial-gradient(ellipse at 80% 70%,color-mix(in srgb,var(--color-neon) 8%,transparent),transparent 50%),linear-gradient(180deg,color-mix(in srgb,var(--color-surface) 42%,transparent),color-mix(in srgb,var(--color-bg) 55%,transparent) 100%)}.focus-section__grid{position:absolute;inset:0;opacity:.22;background-image:linear-gradient(color-mix(in srgb,var(--color-border) 55%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--color-border) 55%,transparent) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse at 50% 30%,#000 15%,transparent 72%);mask-image:radial-gradient(ellipse at 50% 30%,#000 15%,transparent 72%)}.connect-section__inner,.focus-section__inner{position:relative;z-index:1;width:100%;max-width:56rem;margin-inline:auto;padding-inline:.5rem}.connect-section__eyebrow,.focus-section__eyebrow{margin:0 0 .55rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary)}.focus-section__title{margin:0 0 .75rem;font-family:var(--font-display),"Fraunces",Georgia,serif;font-size:clamp(1.75rem,3.4vw,2.5rem);font-weight:600;letter-spacing:-.03em;line-height:1.2}.connect-section__lead,.focus-section__lead{margin:0 0 2rem;max-width:40rem;color:var(--color-text-muted);font-size:1.125rem;line-height:1.7}.focus-section__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;grid-gap:1.25rem 1.75rem;gap:1.25rem 1.75rem}.focus-section__item{display:grid;grid-template-columns:auto 1fr;grid-gap:.75rem;gap:.75rem;align-items:start;padding:.15rem 0}.focus-section__item h3{margin:0 0 .35rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.875rem;font-weight:600;color:var(--color-primary);letter-spacing:.04em}.focus-section__item p{margin:0;color:var(--color-text-muted);line-height:1.7;font-size:1rem}.focus-section__prompt{color:var(--color-neon);font-weight:600;line-height:1.4}.focus-section__building,.focus-section__prompt{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.focus-section__building{margin:2rem 0 0;font-size:.875rem;color:var(--color-text-muted);padding-top:1.25rem;border-top:1px dashed color-mix(in srgb,var(--color-border) 85%,var(--color-primary))}.connect-section__glow{position:absolute;width:min(60vw,480px);height:min(60vw,480px);right:-8%;bottom:5%;border-radius:50%;filter:blur(60px);background:radial-gradient(circle,var(--color-neon-glow-soft),transparent 70%);opacity:.7}.connect-section__slogan{margin:0 0 .85rem;font-family:var(--font-display),"Fraunces",Georgia,serif;font-size:clamp(1.75rem,3.6vw,2.65rem);font-weight:600;letter-spacing:-.03em;line-height:1.2;color:var(--color-text);text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.35) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.35) var(--color-neon-glow)}.connect-section__actions{margin:0 0 2.25rem}.connect-section .subscribe{max-width:32rem;padding:1.35rem 0 0;border-top:1px solid color-mix(in srgb,var(--color-border) 85%,transparent)}.cta-row{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.5rem 0 2.5rem}.subscribe{max-width:28rem;padding-top:.5rem}.subscribe h2{margin:0 0 .5rem;font-size:1.35rem}.subscribe p{margin:0 0 1rem;color:var(--color-text-muted)}.subscribe .subscribe__row{display:flex;gap:.5rem;flex-wrap:wrap}.subscribe .subscribe__row input{flex:1 1 12rem;padding:.7rem .85rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-elevated);color:var(--color-text);font:inherit;transition:border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1)}.subscribe .subscribe__row input:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-color:var(--color-neon);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-neon) calc(35% * .4 * var(--neon-intensity, 1)),transparent),0 0 calc(var(--neon-box-blur, 12px)*.5*.4) var(--color-neon-glow-soft),0 0 calc(var(--neon-box-blur, 12px)*.4) var(--color-neon-glow)}.subscribe .subscribe__row input:disabled,.subscribe .subscribe__row input[aria-disabled=true]{cursor:not-allowed;opacity:.55;color:var(--color-text-muted);background-color:var(--color-surface);pointer-events:none}.subscribe .subscribe__row input.is-invalid{border-color:#b91c1c}.subscribe .subscribe__feedback{margin:.65rem 0 0;font-size:.875rem}.subscribe .subscribe__feedback--error{color:#b91c1c}.subscribe .subscribe__feedback--success{color:var(--color-neon-strong)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:1.75rem;gap:1.75rem}.projects-grid>:first-child{--stagger:1}.projects-grid>:nth-child(2){--stagger:2}.projects-grid>:nth-child(3){--stagger:3}.projects-grid>:nth-child(4){--stagger:4}.projects-grid>:nth-child(5){--stagger:5}.projects-grid>:nth-child(6){--stagger:6}.projects-grid>:nth-child(7){--stagger:7}.projects-grid>:nth-child(8){--stagger:8}.projects-grid>:nth-child(9){--stagger:9}.projects-grid>:nth-child(10){--stagger:10}.projects-grid>:nth-child(11){--stagger:11}.projects-grid>:nth-child(12){--stagger:12}.contact-layout{display:grid;grid-template-columns:1fr 1fr;grid-gap:2.5rem;gap:2.5rem;align-items:start}.contact-details{display:grid;grid-gap:.65rem;gap:.65rem;margin-bottom:1.5rem}.contact-details a{color:var(--color-neon-strong);text-decoration:none;transition:text-shadow .2s cubic-bezier(.4,0,.2,1)}.contact-details a:hover{text-decoration:underline;text-shadow:0 0 calc(var(--neon-text-blur, 6px)*.4*.4) var(--color-neon-glow-soft),0 0 calc(var(--neon-text-blur, 6px)*.4) var(--color-neon-glow)}.map-embed{width:100%;min-height:280px;border:1px solid color-mix(in srgb,var(--color-border) 80%,var(--color-neon));border-radius:10px;overflow:hidden;box-shadow:0 0 24px -16px var(--color-neon-glow-soft)}.map-embed iframe{width:100%;height:280px;border:0;display:block}@media(prefers-reduced-motion:reduce){.terminal-shell__cursor{animation:none!important;opacity:1}.terminal-shell__cmd.is-active,.terminal-shell__cmd:hover:not(:disabled){transform:none}.terminal-shell__portrait,.terminal-shell__portrait-frame{animation:none!important}.terminal-shell__portrait-flip-inner{transition:none}.terminal-shell__crt,.terminal-shell__glow--left,.terminal-shell__slogan,.terminal-shell__window{animation:none!important}}@media(max-width:860px){.home-page{padding:0}.home-section{padding:3.5rem 1.15rem 2.75rem;min-height:auto}.home-section--hero{min-height:100vh;min-height:100dvh}.home-section--connect,.home-section--focus{padding:4.25rem 1.15rem 4rem}.hero,.terminal-shell__stage{grid-template-columns:1fr;text-align:left}.hero__media,.terminal-shell__portrait{justify-self:start;width:min(100%,280px)}.terminal-shell__body{min-height:11rem;max-height:none}.contact-layout,.focus-section__list{grid-template-columns:1fr}.hamburger{display:inline-flex;margin-left:auto}.site-nav{position:absolute;top:100%;left:0;right:0;display:none;flex:none;flex-direction:column;align-items:stretch;gap:.75rem;padding:1rem 1.25rem 1.25rem;background:linear-gradient(180deg,color-mix(in srgb,var(--color-neon) 5%,transparent),transparent),color-mix(in srgb,var(--color-nav) 88%,var(--color-surface));border-bottom:1px solid color-mix(in srgb,var(--color-border) 75%,var(--color-neon));animation:slide-down .2s ease both}.site-nav.is-open{display:flex}.site-nav__actions,.site-nav__links{flex-direction:column;align-items:stretch;margin-left:0;gap:.5rem}.site-header__inner{position:relative}}