@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";
:root{--bg-primary:#080b14;--bg-secondary:#0d1117;--surface:#111827;--border:#1f2937;--accent:#00d4ff;--accent-violet:#7c3aed;--accent-glow:#00d4ff26;--accent-glow-strong:#00d4ff14;--text-primary:#f0f6ff;--text-secondary:#8b9cb8;--text-muted:#4b5563;--success:#10b981;--font-heading:"Space Grotesk",sans-serif;--font-body:"Inter",sans-serif;--font-mono:"JetBrains Mono",monospace;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-6:48px;--space-8:64px;--space-12:96px;--space-16:128px;--max-width:1200px;--nav-height:64px;--scroll-progress:0%}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-body);cursor:none;font-size:16px;line-height:1.6;overflow-x:hidden}a{color:inherit;cursor:none;text-decoration:none}button{cursor:none;background:0 0;border:none;font-family:inherit}input,textarea{cursor:none;font-family:inherit}ul,ol{list-style:none}img{max-width:100%;display:block}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes scrollDown{0%{opacity:1;transform:translateY(0)}75%{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes orbFloat{0%,to{transform:translate(0)scale(1)}33%{transform:translate(20px,-20px)scale(1.05)}66%{transform:translate(-10px,10px)scale(.95)}}.cursor-dot{background:var(--accent);pointer-events:none;z-index:10000;border-radius:50%;width:8px;height:8px;transition:transform .1s;position:fixed;transform:translate(-50%,-50%)}.cursor-ring{border:1px solid var(--accent);pointer-events:none;z-index:9999;opacity:.4;border-radius:50%;width:32px;height:32px;transition:all .15s ease-out;position:fixed;transform:translate(-50%,-50%)}.cursor-dot.hover,.cursor-ring.hover{transform:translate(-50%,-50%)scale(1.5)}.scroll-progress-bar{height:2px;width:var(--scroll-progress);background:linear-gradient(90deg,var(--accent),var(--accent-violet));z-index:10001;transition:width .1s linear;position:fixed;top:0;left:0}.navbar{height:var(--nav-height);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border);z-index:1000;background:#080b14d9;animation:.6s .3s both fadeIn;position:fixed;top:2px;left:0;right:0}.navbar-inner{max-width:var(--max-width);padding:0 var(--space-3);justify-content:space-between;align-items:center;height:100%;margin:0 auto;display:flex}.logo{border:1px solid var(--accent);width:36px;height:36px;font-family:var(--font-heading);color:var(--accent);border-radius:4px;justify-content:center;align-items:center;font-size:14px;font-weight:700;text-decoration:none;transition:all .2s;display:flex}.logo:hover{background:var(--accent);color:var(--bg-primary)}.nav-links{gap:var(--space-4);align-items:center;display:flex}.nav-links a{font-family:var(--font-body);color:var(--text-secondary);padding-bottom:4px;font-size:14px;font-weight:500;transition:color .2s;position:relative}.nav-links a:hover,.nav-links a.active{color:var(--text-primary)}.nav-links a.active:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:0;left:0;right:0}.hamburger{background:0 0;border:none;flex-direction:column;gap:5px;padding:4px;display:none}.hamburger span{background:var(--text-secondary);width:22px;height:2px;transition:all .3s;display:block}.hamburger.open span:first-child{transform:rotate(45deg)translate(5px,5px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.btn-primary{align-items:center;gap:var(--space-1);border:1px solid var(--accent);color:var(--accent);font-family:var(--font-body);background:0 0;border-radius:4px;padding:12px 28px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary:hover{background:var(--accent);color:var(--bg-primary);box-shadow:0 0 24px var(--accent-glow)}.btn-ghost{align-items:center;gap:var(--space-1);border:1px solid var(--accent-violet);color:var(--accent-violet);font-family:var(--font-body);background:0 0;border-radius:4px;padding:12px 28px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn-ghost:hover{background:var(--accent-violet);color:var(--text-primary);box-shadow:0 0 24px #7c3aed26}.section-label{font-family:var(--font-mono);color:var(--accent);letter-spacing:.15em;text-transform:uppercase;margin-bottom:var(--space-6);font-size:12px}.hero{min-height:100vh;padding:var(--space-12)var(--space-3);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hero-grid-bg{pointer-events:none;background-image:linear-gradient(#00d4ff0a 1px,#0000 1px),linear-gradient(90deg,#00d4ff0a 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0}.hero-orb{background:radial-gradient(circle,var(--accent)0%,var(--accent-violet)50%,transparent 70%);opacity:.1;filter:blur(80px);pointer-events:none;width:400px;height:400px;animation:8s ease-in-out infinite orbFloat;position:absolute;top:50%;right:10%;transform:translateY(-50%)}.hero-available{top:calc(var(--nav-height) + var(--space-4));left:var(--space-4);align-items:center;gap:var(--space-1);font-family:var(--font-mono);color:var(--text-muted);font-size:12px;animation:.6s .8s both fadeUp;display:flex;position:absolute}.hero-available .dot{background:var(--success);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse}.hero-content{text-align:center;z-index:2;max-width:700px}.hero-mono-label{font-family:var(--font-mono);color:var(--accent);letter-spacing:.15em;text-transform:uppercase;margin-bottom:var(--space-3);font-size:12px;animation:.6s .2s both fadeUp}.hero-name{font-family:var(--font-heading);letter-spacing:-.03em;color:var(--text-primary);margin-bottom:var(--space-3);font-size:80px;font-weight:700;line-height:1.05;animation:.6s .4s both fadeUp}.hero-name .highlight{color:var(--accent)}.hero-subtitle{color:var(--text-secondary);margin-bottom:var(--space-2);font-size:20px;font-weight:500;animation:.6s .6s both fadeUp}.hero-subtitle .cursor{background:var(--accent);vertical-align:text-bottom;width:2px;height:24px;margin-left:4px;animation:1s step-end infinite blink;display:inline-block}.hero-tagline{color:var(--text-muted);max-width:480px;margin:0 auto var(--space-4);font-size:16px;line-height:1.7;animation:.6s .8s both fadeUp}.hero-ctas{gap:var(--space-2);justify-content:center;animation:.6s 1s both fadeUp;display:flex}.hero-scroll{bottom:var(--space-4);color:var(--text-secondary);opacity:.6;font-size:24px;animation:2s infinite scrollDown;position:absolute;left:50%;transform:translate(-50%)}.hero-scroll svg{width:24px;height:24px;stroke:var(--text-secondary)}.about{padding:var(--space-12)var(--space-3)}.about-inner{max-width:var(--max-width);margin:0 auto}.about-grid{gap:var(--space-8);margin-bottom:var(--space-8);grid-template-columns:5fr 7fr;display:grid}.about-image-wrapper{border:1px solid var(--border);background:linear-gradient(145deg,var(--bg-secondary),var(--surface));border-radius:8px;width:100%;max-width:320px;height:380px;position:relative;overflow:hidden}.about-image-wrapper:after{content:"";background:linear-gradient(#0000 50%,#00d4ff0d 100%);position:absolute;inset:0}.about-image-placeholder{width:100%;height:100%;color:var(--text-muted);font-family:var(--font-mono);justify-content:center;align-items:center;font-size:14px;display:flex}.about-social-links{gap:var(--space-2);margin-top:var(--space-3);display:flex}.about-social-links a{color:var(--text-muted);align-items:center;transition:color .2s;display:flex}.about-social-links a:hover{color:var(--accent)}.about-social-links a svg{width:22px;height:22px}.about-heading{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:var(--space-3);font-size:32px;font-weight:700}.about-bio{color:var(--text-secondary);margin-bottom:var(--space-4);font-size:16px;line-height:1.8}.about-bio p{margin-bottom:var(--space-2)}.skills-heading{font-family:var(--font-mono);color:var(--accent);letter-spacing:.15em;text-transform:uppercase;margin-bottom:var(--space-2);font-size:12px}.skills-grid{gap:var(--space-1);flex-wrap:wrap;display:flex}.skill-pill{font-family:var(--font-mono);color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);border-radius:100px;padding:6px 14px;font-size:12px;transition:all .2s}.skill-pill:hover{border-color:var(--accent);color:var(--accent)}.timeline{max-width:var(--max-width);margin:0 auto}.timeline-heading{font-family:var(--font-mono);color:var(--accent);letter-spacing:.15em;text-transform:uppercase;margin-bottom:var(--space-4);font-size:12px}.timeline-list{padding-left:var(--space-4);position:relative}.timeline-list:before{content:"";background:var(--border);width:1px;position:absolute;top:0;bottom:0;left:4px}.timeline-item{padding-bottom:var(--space-6);padding-left:var(--space-3);position:relative}.timeline-item:last-child{padding-bottom:0}.timeline-item:before{content:"";background:var(--accent);width:10px;height:10px;box-shadow:0 0 12px var(--accent-glow);border-radius:50%;position:absolute;top:6px;left:-28px}.timeline-company{font-family:var(--font-body);color:var(--text-primary);margin-bottom:4px;font-size:18px;font-weight:700}.timeline-role{font-family:var(--font-body);color:var(--accent);margin-bottom:4px;font-size:14px;font-weight:500}.timeline-date{font-family:var(--font-mono);color:var(--text-muted);margin-bottom:var(--space-1);font-size:12px}.timeline-desc{font-family:var(--font-body);color:var(--text-secondary);max-width:560px;font-size:14px;line-height:1.7}.work{padding:var(--space-12)var(--space-3)}.work-inner{max-width:var(--max-width);margin:0 auto}.filter-tabs{gap:var(--space-3);margin-bottom:var(--space-6);display:flex}.filter-tab{font-family:var(--font-mono);color:var(--text-secondary);padding:var(--space-1)0;background:0 0;border:none;font-size:14px;transition:color .2s;position:relative}.filter-tab:hover,.filter-tab.active{color:var(--text-primary)}.filter-tab.active:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:0;left:0;right:0}.projects-grid{gap:var(--space-3);grid-template-columns:repeat(3,1fr);display:grid}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;transition:all .3s;overflow:hidden}.project-card:hover{border-color:var(--accent);box-shadow:0 0 24px var(--accent-glow-strong);transform:translateY(-4px)}.project-card.hidden{display:none}.project-thumbnail{width:100%;height:200px;position:relative;overflow:hidden}.project-thumbnail:after{content:"";background-image:linear-gradient(#00d4ff0f 1px,#0000 1px),linear-gradient(90deg,#00d4ff0f 1px,#0000 1px);background-size:20px 20px;position:absolute;inset:0}.project-body{padding:var(--space-3)}.project-title{font-family:var(--font-body);color:var(--text-primary);margin-bottom:var(--space-1);font-size:18px;font-weight:700}.project-tags{margin-bottom:var(--space-1);flex-wrap:wrap;gap:6px;display:flex}.project-tag{font-family:var(--font-mono);color:var(--text-secondary);border:1px solid var(--border);background:0 0;border-radius:100px;padding:4px 10px;font-size:11px}.project-desc{color:var(--text-muted);margin-bottom:var(--space-2);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.6;display:-webkit-box;overflow:hidden}.project-details{margin:0 0 var(--space-2)0;padding:0;list-style:none}.project-details li{color:var(--text-secondary);margin-bottom:4px;padding-left:16px;font-size:13px;line-height:1.6;position:relative}.project-details li:before{content:"▸";color:var(--accent);font-size:12px;position:absolute;left:0}.project-links{padding:0 var(--space-3)var(--space-3);gap:var(--space-2);display:flex}.project-links a{font-family:var(--font-body);color:var(--accent);font-size:13px;transition:opacity .2s}.project-links a:hover{opacity:.7}.contact{padding:var(--space-12)var(--space-3)}.contact-inner{max-width:var(--max-width);margin:0 auto}.contact-grid{gap:var(--space-8);grid-template-columns:1fr 1fr;display:grid}.contact-heading{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:var(--space-3);font-size:48px;font-weight:700;line-height:1.1}.contact-heading .highlight{color:var(--accent)}.contact-subtext{color:var(--text-secondary);margin-bottom:var(--space-4);font-size:16px;line-height:1.8}.contact-email{font-family:var(--font-mono);color:var(--accent);margin-bottom:var(--space-2);border-bottom:1px solid #00d4ff4d;padding-bottom:2px;font-size:18px;text-decoration:none;transition:border-color .2s;display:inline-block}.contact-email:hover{border-color:var(--accent)}.contact-location{color:var(--text-muted);font-size:14px}.contact-form{gap:var(--space-2);flex-direction:column;display:flex}.contact-form input,.contact-form textarea{background:var(--bg-secondary);border:1px solid var(--border);width:100%;color:var(--text-primary);font-size:14px;font-family:var(--font-body);border-radius:4px;outline:none;padding:14px 16px;transition:border-color .2s}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--text-muted)}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent)}.contact-form textarea{resize:vertical;min-height:140px}.contact-form .btn-primary{justify-content:center;width:100%}.contact-social{gap:var(--space-2);margin-top:var(--space-3);display:flex}.contact-social a{color:var(--text-muted);align-items:center;transition:color .2s;display:flex}.contact-social a:hover{color:var(--accent)}.contact-social a svg{width:22px;height:22px}.footer{padding:var(--space-4)var(--space-3);border-top:1px solid var(--border)}.footer-inner{max-width:var(--max-width);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.footer-text{color:var(--text-muted);font-size:13px}.footer-text a{color:var(--accent);transition:opacity .2s}.footer-text a:hover{opacity:.7}.footer-back-top{color:var(--text-muted);border:1px solid var(--border);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:color .2s;display:flex}.footer-back-top:hover{color:var(--accent);border-color:var(--accent)}.footer-back-top svg{width:18px;height:18px}.mobile-menu{inset:0;top:calc(var(--nav-height) + 2px);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:999;justify-content:center;align-items:center;gap:var(--space-4);background:#080b14fa;flex-direction:column;display:none;position:fixed}.mobile-menu.open{display:flex}.mobile-menu a{font-family:var(--font-heading);color:var(--text-secondary);font-size:28px;font-weight:700;transition:color .2s}.mobile-menu a:hover{color:var(--accent)}@media (max-width:1024px){.projects-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){:root{--nav-height:56px}body{cursor:auto}.cursor-dot,.cursor-ring,.nav-links{display:none}.hamburger{display:flex}.hero-name{font-size:48px}.hero-subtitle{font-size:18px}.hero-ctas{align-items:center;gap:var(--space-1);flex-direction:column}.hero-ctas .btn-primary,.hero-ctas .btn-ghost{justify-content:center;width:100%;max-width:280px}.hero-orb{opacity:.08;width:250px;height:250px;right:-20%}.hero-available{margin-bottom:var(--space-3);justify-content:center;position:relative;top:auto;left:auto}.about-grid{gap:var(--space-4);grid-template-columns:1fr}.about-image-wrapper{max-width:100%;height:280px}.projects-grid{grid-template-columns:1fr}.contact-grid{gap:var(--space-4);grid-template-columns:1fr}.contact-heading{font-size:36px}.filter-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow-x:auto}.filter-tabs::-webkit-scrollbar{display:none}.footer-inner{gap:var(--space-2);text-align:center;flex-direction:column}}@media (max-width:480px){.hero-name{font-size:38px}.hero,.about,.work,.contact{padding:var(--space-8)var(--space-2)}}
