*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#080b10;--bg2:#0d1117;--surface:#111820;--border:#1c2433;--accent:#a855f7;--accent2:#ff6b35;--accent3:#00d4ff;--text:#cdd9e5;--muted:#4d5f72;--white:#e8f0f8}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);cursor:none;font-family:JetBrains Mono,monospace;overflow-x:hidden}.cursor{background:var(--accent);pointer-events:none;z-index:9999;mix-blend-mode:screen;border-radius:50%;width:10px;height:10px;transition:transform .1s,opacity .2s;position:fixed}.cursor-ring{pointer-events:none;z-index:9998;border:1px solid #a855f766;border-radius:50%;width:32px;height:32px;transition:transform .15s,width .2s,height .2s;position:fixed}body:after{content:"";pointer-events:none;z-index:1;opacity:.4;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");position:fixed;inset:0}nav{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(#080b10f2,#0000);border-bottom:1px solid #1c243380;justify-content:space-between;align-items:center;padding:20px 40px;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{color:var(--white);letter-spacing:-.02em;font-family:Fraunces,serif;font-size:20px;font-weight:900}.nav-logo span{color:var(--accent)}.nav-links{gap:32px;list-style:none;display:flex}.nav-links a{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:11px;text-decoration:none;transition:color .2s;position:relative}.nav-links a:after{content:"";background:var(--accent);height:1px;transition:transform .2s;position:absolute;bottom:-4px;left:0;right:0;transform:scaleX(0)}.nav-links a:hover{color:var(--accent)}.nav-links a:hover:after{transform:scaleX(1)}@media (max-width:640px){.nav-links{display:none}}#hero{align-items:center;min-height:100vh;padding:120px 40px 80px;display:flex;position:relative;overflow:hidden}.hero-grid{background-image:linear-gradient(#a855f70a 1px,#0000 1px),linear-gradient(90deg,#a855f70a 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 60%,#000 30%,#0000 100%);mask-image:radial-gradient(80% 60%,#000 30%,#0000 100%)}.hero-glow{pointer-events:none;background:radial-gradient(circle,#a855f714 0%,#0000 70%);width:600px;height:600px;position:absolute;top:-100px;right:-100px}.hero-glow2{pointer-events:none;background:radial-gradient(circle,#ff6b350f 0%,#0000 70%);width:400px;height:400px;position:absolute;bottom:0;left:-50px}.hero-content{z-index:2;max-width:900px;position:relative}.hero-eyebrow{align-items:center;gap:12px;margin-bottom:28px;animation:.8s both fadeUp;display:flex}.hero-eyebrow span{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);font-size:11px}.eyebrow-line{background:var(--accent);width:40px;height:1px}.blink{background:var(--accent);vertical-align:middle;width:8px;height:16px;margin-left:4px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}h1.hero-name{letter-spacing:-.04em;color:var(--white);font-family:Fraunces,serif;font-size:clamp(3.5rem,10vw,8rem);font-weight:900;line-height:.95;animation:.8s .1s both fadeUp}h1.hero-name em{color:var(--accent);font-style:italic;font-weight:300}.hero-title{letter-spacing:.06em;color:var(--muted);margin-top:24px;font-size:13px;animation:.8s .2s both fadeUp}.hero-title span{color:var(--text)}.hero-summary{max-width:560px;color:var(--muted);margin-top:32px;font-family:JetBrains Mono,monospace;font-size:14px;line-height:1.8;animation:.8s .3s both fadeUp}.hero-cta{flex-wrap:wrap;gap:16px;margin-top:48px;animation:.8s .4s both fadeUp;display:flex}.btn{letter-spacing:.1em;text-transform:uppercase;border-radius:3px;align-items:center;gap:8px;padding:12px 28px;font-family:JetBrains Mono,monospace;font-size:12px;text-decoration:none;transition:all .25s;display:inline-flex}.btn-primary{background:var(--accent);color:var(--bg);border:1px solid var(--accent);font-weight:700}.btn-primary:hover{color:var(--accent);background:0 0;box-shadow:0 0 24px #a855f733}.btn-ghost{border:1px solid var(--border);color:var(--muted)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.hero-contacts{flex-wrap:wrap;gap:24px;margin-top:60px;animation:.8s .5s both fadeUp;display:flex}.contact-chip{color:var(--muted);align-items:center;gap:8px;font-size:11px;text-decoration:none;transition:color .2s;display:flex}.contact-chip:hover{color:var(--accent)}.contact-chip svg{flex-shrink:0;width:14px;height:14px}section{z-index:2;padding:100px 40px;position:relative}section:nth-child(2n){background:var(--bg2)}.section-header{align-items:center;gap:20px;margin-bottom:60px;display:flex}.section-num{color:var(--accent);letter-spacing:.15em;font-size:11px}.section-title{color:var(--white);letter-spacing:-.03em;font-family:Fraunces,serif;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700}.section-line{background:var(--border);flex:1;max-width:400px;height:1px}.inner{max-width:1000px;margin:0 auto}.skills-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;display:grid}.skill-chip{background:var(--surface);border:1px solid var(--border);color:var(--text);text-align:center;cursor:default;border-radius:4px;padding:10px 14px;font-size:12px;transition:all .2s}.skill-chip:hover{border-color:var(--accent);color:var(--accent);background:#a855f70a;transform:translateY(-2px)}.skill-chip.tool:hover{border-color:var(--accent2);color:var(--accent2);background:#ff6b350a}.skill-chip.soft:hover{border-color:var(--accent3);color:var(--accent3);background:#00d4ff0a}.skills-category{margin-bottom:40px}.skills-cat-label{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);align-items:center;gap:10px;margin-bottom:16px;font-size:10px;display:flex}.skills-cat-label:after{content:"";background:var(--border);flex:1;height:1px}.exp-list{flex-direction:column;gap:0;display:flex}.exp-item{border-bottom:1px solid var(--border);grid-template-columns:1fr 3fr;gap:40px;padding:48px 0;display:grid;position:relative}.exp-item:first-child{padding-top:0}.exp-item:last-child{border-bottom:none}@media (max-width:700px){.exp-item{grid-template-columns:1fr;gap:16px}}.exp-period{color:var(--accent);letter-spacing:.1em;margin-bottom:8px;font-size:11px}.exp-company{color:var(--white);margin-bottom:4px;font-family:Fraunces,serif;font-size:18px;font-weight:700}.exp-location{color:var(--muted);font-size:11px}.exp-role{color:var(--text);align-items:center;gap:10px;margin-bottom:20px;font-size:15px;font-weight:700;display:flex}.exp-role:before{content:">";color:var(--accent)}.exp-bullets{flex-direction:column;gap:12px;list-style:none;display:flex}.exp-bullets li{color:var(--muted);padding-left:16px;font-size:13px;line-height:1.7;position:relative}.exp-bullets li:before{content:"—";color:var(--border);position:absolute;left:0}.edu-card{background:var(--surface);border:1px solid var(--border);border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:36px 40px;transition:border-color .2s;display:flex}.edu-card:hover{border-color:var(--accent)}.edu-degree{color:var(--white);margin-bottom:8px;font-family:Fraunces,serif;font-size:22px;font-weight:700}.edu-inst{color:var(--accent);font-size:13px}.edu-period{color:var(--muted);text-align:right;font-size:12px}.lang-grid{flex-wrap:wrap;gap:20px;display:flex}.lang-card{background:var(--surface);border:1px solid var(--border);border-radius:6px;flex:1;min-width:160px;padding:28px 36px;transition:border-color .2s,transform .2s}.lang-card:hover{border-color:var(--accent3);transform:translateY(-3px)}.lang-name{color:var(--white);margin-bottom:6px;font-family:Fraunces,serif;font-size:24px;font-weight:700}.lang-level{color:var(--accent3);letter-spacing:.15em;text-transform:uppercase;font-size:11px}#contact{background:var(--bg)}.contact-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (max-width:640px){.contact-grid{grid-template-columns:1fr}}.contact-card{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:6px;align-items:center;gap:16px;padding:24px 28px;text-decoration:none;transition:all .2s;display:flex}.contact-card:hover{border-color:var(--accent);background:#a855f708;transform:translate(4px)}.contact-card svg{width:20px;height:20px;color:var(--accent);flex-shrink:0}.contact-card-label{color:var(--muted);text-transform:uppercase;letter-spacing:.15em;margin-bottom:4px;font-size:10px}.contact-card-value{color:var(--white);font-size:13px}footer{border-top:1px solid var(--border);background:var(--bg);z-index:2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:32px 40px;display:flex;position:relative}.footer-text{color:var(--muted);font-size:11px}.footer-text span{color:var(--accent)}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}.reveal.visible{opacity:1;transform:none}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
