@import "https://fonts.googleapis.com/css2?family=Syne:wght@400;600;700;800&family=DM+Mono:ital,wght@0,300;0,400;1,300&display=swap";:root{--bg:#080b0f;--bg2:#0d1117;--bg3:#111820;--surface:#161d27;--border:#1e2a38;--accent:#00d4ff;--accent2:#00ff9d;--accent-dim:#00d4ff14;--text:#e8edf3;--text-muted:#6b7e94;--text-dim:#3a4d62;--font-display:"Syne", sans-serif;--font-mono:"DM Mono", monospace}*,: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-display);cursor:none;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:1;opacity:.6;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");position:fixed;inset:0}section{z-index:2;position:relative}.section-label{font-family:var(--font-mono);letter-spacing:.3em;color:var(--accent);text-transform:uppercase;align-items:center;gap:1rem;margin-bottom:1rem;font-size:.72rem;display:flex}.section-label:before{content:"";background:var(--accent);width:30px;height:1px;display:block}.section-title{letter-spacing:-.03em;margin-bottom:1.5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:800;line-height:1}.btn-primary{background:var(--accent);color:var(--bg);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:none;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));border:none;align-items:center;gap:.6rem;padding:.85rem 2rem;font-size:.78rem;font-weight:500;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px #00d4ff59}.btn-outline{color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--border);cursor:none;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px));background:0 0;align-items:center;gap:.6rem;padding:.85rem 2rem;font-size:.78rem;text-decoration:none;transition:color .2s,border-color .2s,transform .2s;display:inline-flex}.btn-outline:hover{color:var(--accent);border-color:var(--accent);transform:translateY(-2px)}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeLeft{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scrollPulse{0%,to{opacity:.3}50%{opacity:1}}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}.reveal.visible{opacity:1;transform:translateY(0)}@media (width<=900px){.about-grid{text-align:center;grid-template-columns:1fr!important;gap:4rem!important}.about-avatar{max-width:300px;margin:0 auto}.about-facts{text-align:left}.hero-stats{display:none!important}}@media (width<=768px){nav{flex-wrap:wrap;justify-content:center;gap:.8rem;padding:1.2rem 1.5rem!important}.nav-logo{margin-bottom:.3rem}.nav-links{flex-wrap:wrap;justify-content:center;gap:1rem!important}#hero,#about,#projects,#experience,#contact,#skills{padding-left:1.5rem!important;padding-right:1.5rem!important}.hero-name{font-size:clamp(3.5rem,12vw,5rem)}.hero-cta{justify-content:center}#hero{text-align:center;align-items:center}.hero-scroll{bottom:1.5rem;left:50%;transform:translate(-50%)}.section-label{justify-content:center}.section-title{text-align:center}.about-facts{grid-template-columns:1fr!important}.projects-grid{grid-template-columns:1fr}footer{text-align:center!important;flex-direction:column!important;gap:1rem!important}}@media (width<=480px){nav{padding:1rem!important}.nav-links a{font-size:.65rem}.hero-desc{font-size:.8rem}.btn-primary,.btn-outline{justify-content:center;width:100%;padding:.7rem 1.2rem;font-size:.7rem}.contact-headline{font-size:clamp(2rem,10vw,3rem)}.contact-links{flex-direction:column;align-items:center;gap:1rem}.contact-link{justify-content:center;width:100%}.timeline-item{padding:0 0 3rem 1.5rem}.timeline:before{left:5px}.timeline-dot{width:8px;height:8px;top:.4rem;left:-1.35rem}}@media (pointer:coarse){.cursor,.cursor-ring{display:none!important}body{cursor:auto!important}a,button{cursor:pointer!important}}.cursor{background:var(--accent);pointer-events:none;z-index:9999;mix-blend-mode:screen;border-radius:50%;width:10px;height:10px;transition:transform .15s;position:fixed;top:0;left:0}.cursor-ring{pointer-events:none;z-index:9998;border:1px solid #00d4ff66;border-radius:50%;width:36px;height:36px;transition:transform .4s cubic-bezier(.16,1,.3,1),width .3s,height .3s;position:fixed;top:0;left:0}nav{z-index:100;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;padding:1.4rem 3rem;transition:background .4s,border-color .4s,-webkit-backdrop-filter .4s,backdrop-filter .4s;display:flex;position:fixed;top:0;left:0;right:0}nav.scrolled,nav.menu-open{border-color:var(--border);-webkit-backdrop-filter:blur(25px);background:#080b0f99}.nav-logo{font-family:var(--font-mono);color:var(--accent);letter-spacing:.12em;z-index:101;font-size:.85rem;text-decoration:none}.nav-links{gap:2.5rem;margin:0;padding:0;list-style:none;display:flex}.nav-links a{font-family:var(--font-mono);letter-spacing:.1em;color:var(--text-muted);text-transform:uppercase;font-size:.75rem;text-decoration:none;transition:color .2s;position:relative}.nav-links a:after{content:"";background:var(--accent);width:0;height:1px;transition:width .3s;position:absolute;bottom:-3px;left:0}.nav-links a:hover{color:var(--accent)}.nav-links a:hover:after{width:100%}.hamburger{color:var(--text);cursor:pointer;z-index:101;font-size:1.5rem;display:none}@media (width<=768px){nav{padding:1.2rem 1.5rem!important}.hamburger{display:block}.nav-links{-webkit-backdrop-filter:blur(10px);opacity:0;pointer-events:none;visibility:hidden;z-index:100;background-color:#080b0ffa;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100vh;transition:opacity .3s,visibility .3s;position:fixed;top:0;left:0;gap:3rem!important}.nav-links.active{opacity:1;pointer-events:all;visibility:visible}.nav-links a{font-size:1.5rem}}#hero{flex-direction:column;justify-content:center;min-height:100vh;padding:8rem 3rem 4rem;display:flex;overflow:hidden}.hero-grid-bg{background-image:linear-gradient(#00d4ff08 1px,#0000 1px),linear-gradient(90deg,#00d4ff08 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 70%,#000,#0000);mask-image:radial-gradient(80% 70%,#000,#0000)}.hero-glow{pointer-events:none;background:radial-gradient(circle,#00d4ff12 0%,#0000 65%);width:600px;height:600px;position:absolute;top:10%;left:-10%}.hero-glow-2{pointer-events:none;background:radial-gradient(circle,#00ff9d0d 0%,#0000 65%);width:400px;height:400px;position:absolute;bottom:10%;right:5%}.hero-eyebrow{font-family:var(--font-mono);letter-spacing:.25em;color:var(--accent);text-transform:uppercase;opacity:0;margin-bottom:1.5rem;font-size:.78rem;animation:.8s .2s forwards fadeUp}.hero-name{letter-spacing:-.03em;opacity:0;margin-bottom:1.5rem;font-size:clamp(4rem,10vw,9rem);font-weight:800;line-height:.92;animation:.9s .35s forwards fadeUp}.hero-name span{background:linear-gradient(135deg, var(--text) 40%, var(--accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;display:block}.hero-role{font-family:var(--font-mono);color:var(--text-muted);opacity:0;margin-bottom:2rem;font-size:clamp(1rem,2.5vw,1.4rem);animation:.9s .5s forwards fadeUp}.hero-role .highlight{color:var(--accent);font-style:italic}.hero-desc{max-width:520px;font-family:var(--font-mono);color:var(--text-muted);opacity:0;margin-bottom:3rem;font-size:.88rem;line-height:1.8;animation:.9s .65s forwards fadeUp}.hero-cta{opacity:0;flex-wrap:wrap;gap:1.2rem;animation:.9s .8s forwards fadeUp;display:flex}.hero-scroll{font-family:var(--font-mono);letter-spacing:.15em;color:var(--text-dim);text-transform:uppercase;opacity:0;align-items:center;gap:1rem;font-size:.7rem;animation:1s 1.2s forwards fadeUp;display:flex;position:absolute;bottom:2.5rem;left:3rem}.scroll-line{background:linear-gradient(90deg, transparent, var(--accent));width:50px;height:1px;animation:2s infinite scrollPulse}.hero-stats{opacity:0;flex-direction:column;gap:1.5rem;animation:1s 1s forwards fadeLeft;display:flex;position:absolute;bottom:4rem;right:3rem}.stat{text-align:right}.stat-num{color:var(--accent);font-size:2rem;font-weight:800;line-height:1;display:block}.stat-label{font-family:var(--font-mono);letter-spacing:.15em;color:var(--text-dim);text-transform:uppercase;font-size:.65rem}#about{max-width:1200px;margin:0 auto;padding:8rem 3rem}.about-grid{grid-template-columns:1fr;gap:3rem;max-width:900px;margin-top:4rem;display:grid}.about-avatar-wrap{position:relative}.about-avatar{aspect-ratio:1;background:var(--surface);border:1px solid var(--border);clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,20px 100%,0 calc(100% - 20px));justify-content:center;align-items:center;width:100%;max-width:380px;font-size:6rem;display:flex;position:relative;overflow:hidden}.about-avatar:before{content:"";background:linear-gradient(135deg,#00d4ff0d,#0000);position:absolute;inset:0}.avatar-corner{border:2px solid var(--accent);width:60px;height:60px;position:absolute}.avatar-corner.tl{border-bottom:none;border-right:none;top:-1px;left:-1px}.avatar-corner.br{border-top:none;border-left:none;bottom:-1px;right:-1px}.about-text p{font-family:var(--font-mono);color:var(--text-muted);margin-bottom:1.5rem;font-size:.88rem;line-height:1.9}.about-text p strong{color:var(--accent);font-style:normal}.about-facts{grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem;display:grid}.fact{border:1px solid var(--border);background:var(--surface);padding:1rem}.fact-key{font-family:var(--font-mono);letter-spacing:.15em;color:var(--accent);text-transform:uppercase;margin-bottom:.3rem;font-size:.65rem}.fact-val{font-family:var(--font-mono);color:var(--text);font-size:.85rem}@keyframes blink{0%{opacity:1}50%{opacity:0}to{opacity:1}}.blink-dot{background-color:var(--accent);width:6px;height:6px;box-shadow:0 0 6px var(--accent);border-radius:50%;animation:1.5s ease-in-out infinite blink;display:inline-block}#skills{background:var(--bg2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:8rem 3rem}.skills-inner{max-width:1200px;margin:0 auto}.skills-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-top:4rem;display:grid}.skill-cat{border:1px solid var(--border);background:var(--surface);padding:2rem;transition:border-color .3s,transform .3s;position:relative;overflow:hidden}.skill-cat:before{content:"";background:linear-gradient(90deg, var(--accent), transparent);opacity:0;height:2px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.skill-cat:hover{border-color:#00d4ff4d;transform:translateY(-4px)}.skill-cat:hover:before{opacity:1}.skill-cat-icon{margin-bottom:1rem;font-size:1.8rem;display:block}.skill-cat-name{letter-spacing:.05em;color:var(--text);margin-bottom:1.2rem;font-size:.9rem;font-weight:700}.skill-tags{flex-wrap:wrap;gap:.5rem;display:flex}.skill-tag{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.05em;background:#00d4ff0f;border:1px solid #00d4ff26;align-items:center;gap:.4rem;padding:.3rem .7rem;font-size:.7rem;transition:background .2s,color .2s;display:inline-flex}.skill-tag:hover{color:var(--accent);background:#00d4ff1f}#projects{max-width:1200px;margin:0 auto;padding:8rem 3rem}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem;margin-top:4rem;display:grid}.project-card{border:1px solid var(--border);background:var(--surface);cursor:none;padding:2rem;transition:border-color .3s,transform .3s;position:relative;overflow:hidden}.project-card:after{content:"";background:linear-gradient(90deg, var(--accent), var(--accent2));height:1px;transition:transform .4s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.project-card:hover{border-color:#00d4ff4d;transform:translateY(-5px)}.project-card:hover:after{transform:scaleX(1)}.project-num{font-family:var(--font-mono);color:var(--text-dim);letter-spacing:.2em;margin-bottom:1.5rem;font-size:.65rem;display:block}.project-title{letter-spacing:-.01em;margin-bottom:.8rem;font-size:1.25rem;font-weight:700}.project-desc{font-family:var(--font-mono);color:var(--text-muted);margin-bottom:1.5rem;font-size:.8rem;line-height:1.75}.project-stack{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.stack-pill{font-family:var(--font-mono);border:1px solid var(--border);color:var(--text-dim);letter-spacing:.05em;padding:.2rem .6rem;font-size:.65rem}.project-link{font-family:var(--font-mono);color:var(--accent);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:.5rem;font-size:.72rem;text-decoration:none;transition:gap .2s;display:inline-flex}.project-link:hover{gap:.8rem}#experience{background:var(--bg2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:8rem 3rem}.experience-inner{max-width:900px;margin:0 auto}.timeline{margin-top:4rem;padding-left:2rem;position:relative}.timeline:before{content:"";background:linear-gradient(to bottom, var(--accent), transparent);width:1px;position:absolute;top:0;bottom:0;left:0}.timeline-item{opacity:0;padding:0 0 3.5rem 2.5rem;transition:opacity .6s,transform .6s;position:relative;transform:translate(-20px)}.timeline-item.visible{opacity:1;transform:translate(0)}.timeline-dot{background:var(--accent);width:10px;height:10px;box-shadow:0 0 12px var(--accent);border-radius:50%;position:absolute;top:.35rem;left:-2rem;transform:translate(calc(.5px - 50%))}.exp-meta{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.exp-period{font-family:var(--font-mono);color:var(--accent);letter-spacing:.15em;background:#00d4ff0a;border:1px solid #00d4ff33;padding:.2rem .6rem;font-size:.7rem}.exp-company{font-family:var(--font-mono);color:var(--text-muted);letter-spacing:.05em;font-size:.75rem}.exp-role{margin-bottom:.8rem;font-size:1.2rem;font-weight:700}.exp-desc{font-family:var(--font-mono);color:var(--text-muted);font-size:.8rem;line-height:1.8}.exp-desc li{margin-bottom:.4rem;padding-left:1rem;list-style:none;position:relative}.exp-desc li:before{content:"→";color:var(--accent);font-size:.7rem;position:absolute;left:0}#contact{text-align:center;max-width:900px;margin:0 auto;padding:8rem 3rem}.contact-headline{letter-spacing:-.04em;margin-bottom:1.5rem;font-size:clamp(2.5rem,6vw,5rem);font-weight:800;line-height:1}.contact-headline span{color:var(--accent)}.contact-sub{font-family:var(--font-mono);color:var(--text-muted);margin-bottom:3rem;font-size:.88rem;line-height:1.8}.contact-links{flex-wrap:wrap;justify-content:center;gap:1.5rem;margin-bottom:4rem;display:flex}.contact-link{font-family:var(--font-mono);letter-spacing:.1em;color:var(--text-muted);text-transform:uppercase;border:1px solid var(--border);align-items:center;gap:.6rem;padding:.8rem 1.5rem;font-size:.78rem;text-decoration:none;transition:color .2s,border-color .2s,transform .2s;display:flex}.contact-link:hover{color:var(--accent);border-color:var(--accent);transform:translateY(-3px)}footer{border-top:1px solid var(--border);z-index:2;justify-content:space-between;align-items:center;padding:2rem 3rem;display:flex;position:relative}.footer-copy{font-family:var(--font-mono);color:var(--text-dim);letter-spacing:.1em;font-size:.7rem}.footer-tag{font-family:var(--font-mono);color:var(--text-dim);letter-spacing:.08em;font-size:.7rem}.footer-tag span{color:var(--accent)}
