:root{--bg:#0d0d14;--bg-card:#13131f;--bg-card-hover:#1a1a2e;--border:#1e1e32;--accent:#7c6af7;--accent-dim:#3d3480;--text:#e4e4f0;--muted:#6b6b8a;--label:#4a4a6a;--white:#fff;--font-mono:"JetBrains Mono", "Fira Code", "Courier New", monospace;--font-sans:"Inter", "Segoe UI", system-ui, sans-serif;--radius:10px;--max-w:1100px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;line-height:1.7}a{color:inherit;text-decoration:none}.navbar{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:#0d0d14d9;justify-content:space-between;align-items:center;height:60px;padding:0 2rem;display:flex;position:sticky;top:0}.nav-logo{font-family:var(--font-mono);color:var(--accent);letter-spacing:.05em;font-size:1.1rem;font-weight:700}.cursor{animation:1s step-end infinite blink}.nav-links{gap:2rem;display:flex}.nav-links a{color:var(--muted);letter-spacing:.02em;font-size:.85rem;transition:color .2s}.nav-links a:hover{color:var(--accent)}.hero{max-width:var(--max-w);justify-content:space-between;align-items:center;gap:3rem;margin:0 auto;padding:6rem 2rem;display:flex}.hero-text{flex:1}.greeting{font-family:var(--font-mono);color:var(--accent);letter-spacing:.05em;margin-bottom:.75rem;font-size:.9rem}.hero-name{color:var(--white);letter-spacing:-.02em;margin-bottom:.5rem;font-size:clamp(2.5rem,5vw,3.8rem);font-weight:800;line-height:1.1}.blink{color:var(--accent);animation:1s step-end infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.hero-role{color:var(--muted);letter-spacing:.01em;margin-bottom:1.5rem;font-size:1.1rem;font-weight:400}.hero-intro{max-width:480px;color:var(--muted);margin-bottom:2.5rem;font-size:1rem}.hero-actions{flex-wrap:wrap;gap:1rem;display:flex}.btn{border-radius:var(--radius);letter-spacing:.02em;cursor:pointer;padding:.65rem 1.5rem;font-size:.9rem;font-weight:600;transition:all .2s;display:inline-block}.btn-primary{background:var(--accent);color:var(--white)}.btn-primary:hover{background:#9585ff;transform:translateY(-1px)}.btn-outline{border:1px solid var(--border);color:var(--text);background:0 0}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}.hero-image{flex-shrink:0}.image-ring{background:linear-gradient(135deg, var(--accent), var(--accent-dim));border-radius:50%;width:220px;height:220px;padding:4px}.image-ring img{object-fit:cover;border:3px solid var(--bg);border-radius:50%;width:100%;height:100%}.section{max-width:var(--max-w);border-top:1px solid var(--border);margin:0 auto;padding:5rem 2rem}.section-label{font-family:var(--font-mono);color:var(--accent);letter-spacing:.08em;text-transform:lowercase;margin-bottom:.5rem;font-size:.75rem}.section-title{color:var(--white);letter-spacing:-.01em;margin-bottom:2.5rem;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:700}.about-text{max-width:640px;color:var(--muted);font-size:1.05rem}.cards-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;display:grid}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.75rem;transition:border-color .2s,background .2s,transform .2s;position:relative;overflow:hidden}.card:hover{border-color:var(--accent-dim);background:var(--bg-card-hover);transform:translateY(-3px)}.card-accent{background:var(--accent);opacity:0;width:3px;height:100%;transition:opacity .2s;position:absolute;top:0;left:0}.card:hover .card-accent{opacity:1}.card-year{font-family:var(--font-mono);color:var(--accent);letter-spacing:.05em;margin-bottom:.5rem;font-size:.75rem;display:block}.card h3{color:var(--white);margin-bottom:.4rem;font-size:1rem;font-weight:600}.card p{color:var(--muted);margin-bottom:.75rem;font-size:.9rem}.badge{font-family:var(--font-mono);background:var(--accent-dim);color:var(--accent);letter-spacing:.03em;border-radius:20px;padding:.2rem .65rem;font-size:.72rem;display:inline-block}.project-tags{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.project-tags span{font-family:var(--font-mono);border:1px solid var(--border);color:var(--muted);border-radius:4px;padding:.2rem .6rem;font-size:.7rem}.skills-grid{flex-wrap:wrap;gap:.75rem;display:flex}.skill-chip{font-family:var(--font-mono);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:.45rem 1rem;font-size:.85rem;transition:border-color .2s,color .2s}.skill-chip:hover{border-color:var(--accent);color:var(--accent)}.contact-intro{color:var(--muted);margin-bottom:2rem;font-size:1rem}.contact-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.contact-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--muted);align-items:center;gap:.9rem;padding:1rem 1.25rem;font-size:.88rem;transition:border-color .2s,color .2s;display:flex}.contact-item:hover{border-color:var(--accent);color:var(--text)}.contact-icon{color:var(--accent);text-align:center;width:20px;font-size:1rem;font-family:var(--font-mono);flex-shrink:0;font-weight:700}footer{text-align:center;border-top:1px solid var(--border);color:var(--label);font-size:.8rem;font-family:var(--font-mono);padding:2rem}@media (width<=700px){.hero{text-align:center;flex-direction:column-reverse;padding:4rem 1.5rem}.hero-intro{margin:0 auto 2rem}.hero-actions{justify-content:center}.image-ring{width:160px;height:160px}.nav-links{gap:1.2rem}.section{padding:3.5rem 1.5rem}}@media (prefers-reduced-motion:reduce){.blink,.cursor{animation:none}.card,.btn,.skill-chip,.contact-item{transition:none}}
