@import"https://fonts.googleapis.com/css2?family=Cabinet+Grotesk:wght@400;500;700;800;900&family=DM+Mono:wght@300;400;500&family=Instrument+Serif:ital@0;1&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}:root{--bg: #0A0A0A;--bg2: #111111;--bg3: #1A1A1A;--text: #F0F0F0;--muted: #888888;--faint: #444444;--border: rgba(255,255,255,.07);--border2: rgba(255,255,255,.14);--indigo: #6366F1;--indigo2: #818CF8;--indigo3: rgba(99,102,241,.12);--nav-bg: rgba(10,10,10,.85)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Cabinet Grotesk,sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased}.blobs{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0}.blob{position:absolute;opacity:.18}.blob path{fill:var(--indigo)}.blob-1{width:520px;height:520px;top:-120px;left:-80px;animation:float1 18s ease-in-out infinite}.blob-2{width:400px;height:400px;top:30px;right:-60px;animation:float2 22s ease-in-out infinite}.blob-2 path{fill:var(--indigo2)}.blob-3{width:300px;height:300px;bottom:-60px;left:30%;animation:float3 15s ease-in-out infinite}.blob-3 path{fill:#8b5cf6}.blob-4{width:220px;height:220px;top:50%;right:15%;animation:float1 20s ease-in-out infinite reverse}.blob-4 path{fill:var(--indigo2)}@keyframes float1{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(30px,-20px) rotate(5deg)}66%{transform:translate(-20px,30px) rotate(-3deg)}}@keyframes float2{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(-25px,15px) rotate(-4deg)}66%{transform:translate(20px,-25px) rotate(6deg)}}@keyframes float3{0%,to{transform:translate(0) scale(1)}50%{transform:translate(15px,-20px) scale(1.05)}}.dot-pulse{display:inline-block;width:7px;height:7px;background:var(--indigo);border-radius:50%;animation:dp 2s infinite}@keyframes dp{0%,to{box-shadow:0 0 #6366f199}50%{box-shadow:0 0 0 7px #6366f100}}.nav{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:space-between;padding:0 72px;height:68px;background:var(--nav-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}.nav-logo{font-size:22px;font-weight:900;color:var(--text);letter-spacing:-.04em}.nav-logo span{color:var(--indigo)}.nav-links{display:flex;gap:40px;list-style:none}.nav-links a{font-family:DM Mono,monospace;font-size:12px;letter-spacing:.12em;text-transform:lowercase;color:var(--muted);text-decoration:none;transition:color .2s}.nav-links a:hover{color:var(--text)}.nav-end{display:flex;align-items:center;gap:20px}.nav-avail{display:flex;align-items:center;gap:7px;font-family:DM Mono,monospace;font-size:10px;letter-spacing:.1em;color:var(--indigo)}.nav-burger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}.nav-burger span{display:block;width:22px;height:1.5px;background:var(--text);transition:all .3s}.nav-burger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.nav-burger.open span:nth-child(2){opacity:0}.nav-burger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.mob{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:199;background:var(--bg);flex-direction:column;align-items:center;justify-content:center;gap:24px;opacity:0;pointer-events:none;transition:opacity .3s}.mob--open{opacity:1;pointer-events:all}.mob a{font-size:52px;font-weight:900;color:var(--text);text-decoration:none;transition:color .2s;letter-spacing:-.03em}.mob a:hover{color:var(--indigo)}.hero{min-height:100vh;padding:120px 72px 80px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.hero-content{position:relative;z-index:1;text-align:center;max-width:900px;width:100%}.hero-eyebrow{display:flex;align-items:center;justify-content:center;gap:10px;font-family:DM Mono,monospace;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#fff;background:#0a0a0a80;padding:6px 14px;border-radius:999px;margin-bottom:32px;position:relative;z-index:2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hero-title{font-size:clamp(72px,11vw,148px);font-weight:900;line-height:.88;letter-spacing:-.04em;margin-bottom:36px}.hero-line-1{display:block;color:var(--muted);font-size:.45em;font-weight:700;letter-spacing:-.02em;margin-bottom:8px}.hero-line-2{display:block;color:var(--text)}.hero-line-3{display:block;color:var(--indigo)}.hero-line-3 em{font-style:normal;color:var(--text)}.hero-sub{font-size:18px;font-weight:400;line-height:1.7;color:var(--muted);max-width:560px;margin:0 auto 44px}.hero-sub strong{color:var(--text)}.hero-ctas{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}.cta-main{font-family:DM Mono,monospace;font-size:13px;letter-spacing:.1em;background:var(--indigo);color:#fff;border:2px solid var(--indigo);padding:16px 32px;cursor:pointer;position:relative;overflow:hidden;transition:color .35s;z-index:1}.cta-main:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:#fff;transition:left .35s cubic-bezier(.4,0,.2,1);z-index:-1}.cta-main:hover:before{left:0}.cta-main:hover{color:var(--indigo)}.cta-ghost{font-family:DM Mono,monospace;font-size:13px;letter-spacing:.1em;color:var(--muted);text-decoration:none;padding:16px 0;transition:color .2s;border-bottom:1px solid var(--faint)}.cta-ghost:hover{color:var(--text);border-color:var(--text)}.hero-img-wrap{position:relative;z-index:1}.hero-img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center 10%;display:block;transform:scale(1.1);transform-origin:top center;filter:grayscale(20%);transition:filter .5s}.hero-img-wrap:hover .hero-img{filter:grayscale(0%)}.hero-img-tag{position:absolute;bottom:20px;left:20px;font-family:DM Mono,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--indigo);background:var(--bg);border:1px solid var(--indigo);padding:8px 16px;display:flex;align-items:center;gap:8px}.hero-img-tag:before{content:"";width:7px;height:7px;background:var(--indigo);border-radius:50%;animation:dp 2s infinite}.about{padding:140px 72px;position:relative;border-top:1px solid var(--border)}.about-inner{display:grid;grid-template-columns:1fr 1fr;gap:100px;margin-bottom:80px;align-items:start}.about-big-text{font-family:"Instrument Serif",serif;font-size:clamp(52px,6vw,88px);font-weight:400;line-height:1.05;color:var(--text)}.about-big-text span{font-style:italic;color:var(--indigo)}.about-body{padding-top:12px}.about-body p{font-size:16px;line-height:1.85;color:var(--muted);margin-bottom:20px}.about-body strong{color:var(--text);font-weight:600}.about-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.about-pills span{font-family:DM Mono,monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--indigo2);background:#6366f114;border:1px solid rgba(99,102,241,.2);padding:7px 18px;border-radius:999px;transition:all .25s;cursor:default}.about-pills span:hover{background:#6366f12e;color:#fff}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.stat-item{background:var(--bg2);padding:32px 28px;transition:background .3s;cursor:default}.stat-item:hover{background:var(--bg3)}.stat-n{font-size:clamp(20px,2.5vw,30px);font-weight:900;color:var(--indigo);letter-spacing:-.02em;margin-bottom:8px}.stat-l{font-family:DM Mono,monospace;font-size:11px;color:var(--muted);line-height:1.5}.skills{padding:140px 72px;border-top:1px solid var(--border)}.section-heading{font-family:"Instrument Serif",serif;font-size:clamp(52px,7vw,96px);font-weight:400;line-height:.95;letter-spacing:-.02em;color:var(--text);margin-bottom:64px}.section-heading span{font-style:italic;color:var(--indigo)}.skills-wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border)}.skill-group{background:var(--bg2);padding:36px 32px;transition:background .3s}.skill-group:hover{background:var(--bg3)}.skill-group-num{font-family:DM Mono,monospace;font-size:10px;color:var(--faint);letter-spacing:.12em;margin-bottom:10px}.skill-group-cat{font-size:18px;font-weight:800;color:var(--text);margin-bottom:16px;letter-spacing:-.02em}.skill-group-items{display:flex;flex-wrap:wrap;gap:7px}.skill-group-items span{font-family:DM Mono,monospace;font-size:11px;color:var(--muted);background:#ffffff0a;border:1px solid rgba(255,255,255,.08);padding:5px 14px;border-radius:999px;transition:all .2s}.skill-group:hover .skill-group-items span{border-color:#6366f14d;color:var(--indigo2);background:#6366f114}.projects{padding:140px 72px;border-top:1px solid var(--border)}.proj{padding:56px 0;border-bottom:1px solid var(--border);transition:background .3s}.proj:first-of-type{border-top:1px solid var(--border)}.proj:last-of-type{border-bottom:none}.proj:hover{background:transparent}.proj-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.proj-meta{display:flex;align-items:center;gap:16px}.proj-num{font-family:DM Mono,monospace;font-size:11px;color:var(--faint);letter-spacing:.12em}.proj-tag{font-family:DM Mono,monospace;font-size:11px;color:var(--indigo2);background:#6366f114;border:1px solid rgba(99,102,241,.2);padding:4px 14px;border-radius:999px;letter-spacing:.08em}.proj-gh{font-family:DM Mono,monospace;font-size:11px;letter-spacing:.1em;color:var(--muted);text-decoration:none;border:1px solid var(--border2);padding:6px 16px;border-radius:999px;transition:all .25s}.proj-gh:hover{color:var(--indigo);border-color:var(--indigo)}.proj-lock{font-family:DM Mono,monospace;font-size:11px;color:var(--faint);letter-spacing:.08em}.proj-name{font-family:"Instrument Serif",serif;font-size:clamp(40px,5vw,72px);font-weight:400;color:var(--text);line-height:1;margin-bottom:18px;letter-spacing:-.02em;transition:color .3s}.proj:hover .proj-name{color:var(--indigo2)}.proj-desc{font-size:15px;color:var(--muted);line-height:1.8;max-width:720px;margin-bottom:20px}.proj-pts{list-style:none;display:flex;flex-direction:column;gap:8px;margin-bottom:24px;max-width:680px}.proj-pts li{font-size:13px;color:var(--muted);display:flex;gap:10px;line-height:1.6}.proj-pts li:before{content:"→";color:var(--indigo);flex-shrink:0}.proj-stack{display:flex;flex-wrap:wrap;gap:6px}.proj-stack span{font-family:DM Mono,monospace;font-size:10px;color:var(--muted);padding:4px 12px;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:#ffffff08}.exp{padding:140px 72px;border-top:1px solid var(--border)}.exp-item{display:grid;grid-template-columns:220px 1fr;gap:80px;padding:56px 0;margin-top:40px}.exp-period{font-family:DM Mono,monospace;font-size:11px;color:var(--indigo);letter-spacing:.08em;margin-bottom:8px}.exp-co{font-size:28px;font-weight:900;color:var(--text);margin-bottom:6px;letter-spacing:-.03em}.exp-badge{font-family:DM Mono,monospace;font-size:10px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}.exp-role{font-family:"Instrument Serif",serif;font-size:28px;font-style:italic;color:var(--indigo2);margin-bottom:24px}.exp-pts{list-style:none;display:flex;flex-direction:column;gap:12px}.exp-pts li{font-size:14px;color:var(--muted);display:flex;gap:12px;line-height:1.7}.exp-pts li:before{content:"▸";color:var(--indigo);flex-shrink:0;margin-top:2px}.contact{padding:140px 72px;border-top:1px solid var(--border);background:var(--bg2)}.contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact-sub{font-size:16px;color:var(--muted);line-height:1.8;margin-bottom:36px}.contact-links{display:flex;flex-direction:column;gap:12px}.contact-link{display:flex;align-items:center;gap:14px;font-family:DM Mono,monospace;font-size:12px;letter-spacing:.1em;color:var(--muted);text-decoration:none;border-bottom:1px solid var(--border);padding:14px 0;transition:all .25s}.contact-link:hover{color:var(--indigo2);border-color:var(--indigo)}.cform{display:flex;flex-direction:column;gap:14px}.cform-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cform-group{display:flex;flex-direction:column;gap:6px}.cform-group label{font-family:DM Mono,monospace;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.cform-group input,.cform-group textarea{background:var(--bg3);border:1px solid var(--border);color:var(--text);font-family:Cabinet Grotesk,sans-serif;font-size:14px;padding:13px 16px;outline:none;transition:border-color .25s;width:100%;resize:none}.cform-group input:focus,.cform-group textarea:focus{border-color:var(--indigo)}.cform-group input::placeholder,.cform-group textarea::placeholder{color:var(--faint)}.cform-group textarea{min-height:130px}.cform button{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;background:var(--indigo);color:#fff;border:none;padding:14px 28px;font-family:DM Mono,monospace;font-size:12px;letter-spacing:.1em;cursor:pointer;transition:all .25s}.cform button:hover{background:var(--indigo2);transform:translateY(-2px)}.cform button:disabled{opacity:.6;cursor:not-allowed;transform:none}.cform-ok{font-family:DM Mono,monospace;font-size:11px;color:#4ade80;border:1px solid rgba(74,222,128,.2);padding:12px 16px;background:#4ade800d}.cform-err{font-family:DM Mono,monospace;font-size:11px;color:#f87171;border:1px solid rgba(248,113,113,.2);padding:12px 16px;background:#f871710d}.footer{background:var(--bg);border-top:1px solid var(--border);padding:28px 72px;display:flex;align-items:center;justify-content:space-between;font-family:DM Mono,monospace;font-size:11px;letter-spacing:.1em;color:var(--faint)}.egg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:var(--indigo);opacity:0;pointer-events:none;transition:opacity .4s}.egg--show{opacity:1;pointer-events:all}.egg-inner{text-align:center;padding:48px}.egg-inner>*{opacity:0}.egg-tag{font-family:DM Mono,monospace;font-size:11px;letter-spacing:.2em;color:#ffffff80;margin-bottom:24px}.egg-name{font-family:"Instrument Serif",serif;font-size:clamp(52px,9vw,100px);font-style:italic;color:#fff;line-height:.9;margin-bottom:20px}.egg-role{font-family:DM Mono,monospace;font-size:13px;color:#ffffffb3;letter-spacing:.12em;margin-bottom:8px}.egg-email{font-family:DM Mono,monospace;font-size:14px;color:#fff;letter-spacing:.1em;margin-bottom:8px}.egg-hint{font-family:DM Mono,monospace;font-size:11px;color:#ffffff59;margin-bottom:36px}.egg-close{background:#ffffff1f;border:1px solid rgba(255,255,255,.25);color:#fff;font-family:DM Mono,monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:12px 28px;cursor:pointer;transition:background .25s}.egg-close:hover{background:#ffffff38}@media (max-width:1100px){.nav,.footer{padding-left:40px;padding-right:40px}.hero{padding:110px 40px 80px;grid-template-columns:1fr;gap:52px}.hero-img-wrap{max-width:400px}.about{padding:100px 40px}.about-inner{grid-template-columns:1fr;gap:48px}.stats-row{grid-template-columns:repeat(2,1fr)}.skills{padding:100px 40px}.skills-wrap{grid-template-columns:repeat(2,1fr)}.projects,.exp{padding:100px 40px}.exp-item{grid-template-columns:160px 1fr;gap:48px}.contact{padding:100px 40px}.contact-wrap{grid-template-columns:1fr;gap:56px}}@media (max-width:768px){.nav{padding:0 20px}.nav-links,.nav-avail{display:none}.nav-burger,.mob{display:flex}.hero{padding:90px 20px 80px;min-height:auto}.blob-1{width:180px;height:180px;top:-60px;left:-60px}.blob-2{width:160px;height:160px;top:-40px;right:-50px}.blob-3,.blob-4{display:none}.hero-ctas{flex-direction:column;align-items:center}.about{padding:80px 20px}.stats-row{grid-template-columns:repeat(2,1fr)}.skills{padding:60px 20px}.skills-wrap{grid-template-columns:1fr}.projects{padding:40px 20px 60px}.proj{padding:40px 0}.proj-name{font-size:clamp(36px,10vw,56px)}.proj-header{flex-direction:column;align-items:flex-start;gap:10px}.exp{padding:40px 20px 60px}.exp-item{grid-template-columns:1fr;gap:24px;padding:40px 0}.contact{padding:60px 20px}.cform-row{grid-template-columns:1fr}.cform button{width:100%;justify-content:center}.footer{padding:20px;flex-direction:column;gap:8px;text-align:center}}@media (max-width:420px){.hero,.about,.skills,.projects,.exp,.contact{padding-left:16px;padding-right:16px}}.about,.skills,.projects,.exp,.contact,.footer{visibility:visible}.about-big-text,.about-body p,.stat-item,.skill-group,.proj,.exp-item,.contact-left,.contact-right,.section-heading{will-change:transform,opacity}.skill-bars{margin-top:16px;display:flex;flex-direction:column;gap:10px}.sbar-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-family:DM Mono,monospace;font-size:10px;color:var(--muted);letter-spacing:.06em}.sbar-pct{color:var(--indigo);font-weight:500}.sbar-track{height:2px;background:var(--border2);overflow:hidden;border-radius:2px}.sbar-fill{height:100%;background:linear-gradient(90deg,var(--indigo),var(--indigo2));border-radius:2px;transition:none}
