:root{--color-bg: #fafafa;--color-bg-alt: #f5f5f5;--color-surface: #ffffff;--color-text-primary: #1a1a1a;--color-text-secondary: #666666;--color-text-muted: #999999;--color-accent: #10b981;--color-accent-light: #d1fae5;--color-accent-dark: #059669;--color-dark: #1f2937;--color-dark-light: #374151;--gradient-hero: linear-gradient(135deg, #10b981 0%, #059669 100%);--gradient-accent: linear-gradient(135deg, #10b981 0%, #059669 100%);--gradient-dark: linear-gradient(135deg, #0a0a0a 0%, #171717 100%);--color-green: #10b981;--color-border: rgba(255, 255, 255, .1);--font-display: "JetBrains Mono", monospace;--font-body: "Inter", sans-serif;--font-mono: "JetBrains Mono", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--text-7xl: 4.5rem;--text-8xl: 6rem;--text-9xl: 8rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease;--transition-spring: .5s cubic-bezier(.34, 1.56, .64, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;cursor:url(/cursor.svg) 1 1,auto}body{font-family:var(--font-body);font-size:var(--text-base);cursor:url(/cursor.svg) 1 1,auto;line-height:1.6;color:var(--color-text-primary);background-color:var(--color-bg);overflow-x:hidden}html,body,*,*:before,*:after{cursor:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNMSAxTDguNSAxOC41TDExLjUgMTEuNUwxOC41IDguNUwxIDFaIiBmaWxsPSJibGFjayIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9zdmc+Cg==) 1 1,auto!important}a{text-decoration:none;color:inherit}ul,ol{list-style:none}img{max-width:100%;height:auto;display:block}button{background:none;border:none;cursor:pointer;font-family:inherit}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 var(--space-8)}.text-giant{font-family:var(--font-display);font-size:clamp(4rem,15vw,12rem);font-weight:800;line-height:.9;letter-spacing:-.04em;color:var(--color-text-primary)}.text-highlight{color:var(--color-green)}.section-label-mono{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-green);margin-bottom:var(--space-4);display:block}.grid-background{background-image:radial-gradient(circle at 2px 2px,var(--color-border) 1px,transparent 0);background-size:40px 40px}[data-reveal]{opacity:0;transition:all .8s cubic-bezier(.2,.8,.2,1)}[data-reveal=fade]{transform:translateY(20px)}[data-reveal=left]{transform:translate(-30px)}[data-reveal=right]{transform:translate(30px)}[data-reveal].revealed{opacity:1;transform:translate(0)}.navbar{position:fixed;top:var(--space-6);left:50%;transform:translate(-50%);z-index:1000;width:calc(100% - var(--space-8));max-width:700px}.nav-container{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-4);background:#1a1a1a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-full);box-shadow:0 4px 20px #0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all var(--transition-base)}.nav-container:hover{border-color:var(--color-green);box-shadow:0 8px 30px #00000059,0 0 25px #10b98133;transform:scale(1.02) translateY(-2px)}.nav-container.scrolled{background:#1a1a1ab3;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000004d;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.nav-container.on-dark{background:#ffffffe6;border:1px solid rgba(0,0,0,.08);box-shadow:0 8px 32px #00000026;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.nav-container.on-dark .nav-logo{color:#1a1a1a}.nav-container.on-dark .nav-link{color:#0009}.nav-container.on-dark .nav-link:hover,.nav-container.on-dark .nav-link.active{color:#1a1a1a;background:#0000000d}.nav-container.on-dark .nav-cta{color:var(--color-green);border-color:var(--color-green)}.nav-container.on-dark .nav-cta:hover{background:var(--color-green);color:#fff}.nav-logo{font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);color:#fff;display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3);transition:opacity var(--transition-fast)}.logo-separator{color:var(--color-green);font-weight:300;opacity:.5;transition:all var(--transition-base)}.nav-logo:hover .logo-separator{opacity:1;text-shadow:0 0 10px var(--color-green),0 0 20px var(--color-green);transform:scaleY(1.2)}.nav-logo:hover{opacity:.8}.nav-menu{display:flex;align-items:center;gap:var(--space-1)}.nav-link{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:500;color:#ffffffb3;border-radius:var(--radius-full);transition:all var(--transition-fast)}.nav-link:hover,.nav-link.active{color:#fff;background:#ffffff1a}.nav-cta{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:transparent;color:var(--color-green);font-size:var(--text-sm);font-weight:500;border:1px solid var(--color-green);border-radius:var(--radius-full);transition:all var(--transition-base)}.nav-cta:hover{background:var(--color-green);color:#fff}.cta-icon{font-size:var(--text-base)}.mobile-menu-btn{display:none;flex-direction:column;gap:4px;padding:var(--space-2)}.mobile-menu-btn span{width:20px;height:2px;background:#fff;border-radius:2px;transition:all var(--transition-fast)}.hero{min-height:100vh;display:flex;align-items:center;position:relative;padding:var(--space-24) 0 var(--space-16)}.hero-container{width:100%;max-width:1400px;margin:0 auto;padding:0 var(--space-6);display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12);align-items:center}.hero-content{width:100%}.hero-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-accent-light);color:var(--color-accent-dark);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-full);margin-bottom:var(--space-6);animation:pulse 2s infinite}.badge-dot{width:8px;height:8px;background:var(--color-accent);border-radius:50%;animation:blink 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}@keyframes blink{0%,to{opacity:1}50%{opacity:.4}}.hero-title{font-family:var(--font-display);line-height:1.1;margin-bottom:var(--space-6)}.hero-greeting{display:block;font-size:var(--text-2xl);font-weight:400;color:var(--color-text-secondary);margin-bottom:var(--space-2)}.hero-role-container{display:block}.hero-role{display:block;font-size:clamp(var(--text-5xl),8vw,var(--text-8xl));font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em;line-height:1}.hero-role-secondary{display:block;font-size:clamp(var(--text-5xl),8vw,var(--text-8xl));font-weight:700;background:var(--gradient-accent);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em;line-height:1}.hero-description{font-size:var(--text-lg);color:var(--color-text-secondary);margin-bottom:var(--space-8);max-width:480px}.hero-actions{display:flex;gap:var(--space-4);flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-6);font-size:var(--text-base);font-weight:600;border-radius:var(--radius-xl);transition:all var(--transition-base)}.btn-primary{background:var(--gradient-dark);color:#fff;box-shadow:var(--shadow-lg)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.btn-secondary{background:var(--color-surface);color:var(--color-text-primary);border:2px solid var(--color-dark)}.btn-secondary:hover{background:var(--color-dark);color:#fff}.btn-large{padding:var(--space-5) var(--space-8);font-size:var(--text-lg)}.btn-arrow{transition:transform var(--transition-fast)}.btn:hover .btn-arrow{transform:translate(4px)}.btn-icon{font-size:var(--text-xl)}.hero-visual{position:relative;display:flex;justify-content:center;align-items:center}.hero-image-wrapper{position:relative;width:100%;max-width:500px}.hero-image{width:100%;height:auto;filter:drop-shadow(0 20px 40px rgba(0,0,0,.1));animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.floating-badge{position:absolute;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);font-size:var(--text-sm);font-weight:600;white-space:nowrap;animation:floatBadge 4s ease-in-out infinite}.chat-bubble{bottom:15%;right:-10%;background:var(--color-accent);color:#fff;animation-delay:0s}.bubble-icon{font-size:var(--text-lg)}.tech-badge{background:var(--color-surface);color:var(--color-text-primary)}.tech-1{top:10%;right:0;animation-delay:.5s}.tech-2{top:40%;left:-5%;animation-delay:1s}.tech-3{bottom:5%;left:10%;animation-delay:1.5s}.tech-4{bottom:30%;right:-8%;animation-delay:2s}.tech-5{top:65%;right:5%;animation-delay:2.5s}@keyframes floatBadge{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-5px) rotate(1deg)}75%{transform:translateY(5px) rotate(-1deg)}}.hero-bg-pattern{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;background:radial-gradient(circle,var(--color-accent-light) 0%,transparent 70%);opacity:.5;z-index:-1;border-radius:50%}.scroll-indicator{position:absolute;bottom:var(--space-8);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);animation:bounce 2s infinite}.mouse{width:24px;height:40px;border:2px solid var(--color-text-muted);border-radius:12px;display:flex;justify-content:center;padding-top:8px}.wheel{width:4px;height:8px;background:var(--color-text-muted);border-radius:2px;animation:scroll 2s infinite}@keyframes bounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(10px)}}@keyframes scroll{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}section{padding:var(--space-24) 0}.section-header{text-align:center;margin-bottom:var(--space-16)}.section-label{display:inline-block;padding:var(--space-2) var(--space-4);background:var(--color-accent-light);color:var(--color-accent-dark);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-full);margin-bottom:var(--space-4)}.section-title{font-family:var(--font-display);font-size:clamp(var(--text-3xl),5vw,var(--text-5xl));font-weight:700;color:var(--color-text-primary);letter-spacing:-.02em}.about{padding:var(--space-24) 0;border-top:1px solid var(--color-border)}.about-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:var(--space-12)}.about-title-side{position:sticky;top:100px;height:fit-content}.about-title-side .decorative-bar{width:100px;height:8px;background:var(--color-green);margin-top:var(--space-6)}.about-content-side{display:flex;flex-direction:column;gap:var(--space-12)}.about-bio{font-size:var(--text-2xl);line-height:1.4;color:var(--color-text-primary);max-width:800px}.skills-container{display:flex;flex-direction:column;gap:var(--space-6)}.skills-label{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-muted)}.skills-list{display:flex;flex-wrap:wrap;gap:var(--space-3)}.skill-pill{font-family:var(--font-mono);font-size:var(--text-sm);padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);transition:all var(--transition-fast)}.skill-pill:hover{border-color:var(--color-green);color:var(--color-green);background:#10b9810d}.current-status{font-family:var(--font-mono);font-size:var(--text-lg);color:var(--color-green);padding:var(--space-4);background:#10b9810d;border-radius:var(--radius-lg);display:inline-block}.work{padding:var(--space-24) 0;border-top:1px solid var(--color-border)}.work-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:var(--space-16)}.work-title-group .path-decoration{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-muted);display:block;margin-bottom:var(--space-2)}.work-title{font-size:var(--text-5xl);font-weight:800;margin:0}.github-cta{font-family:var(--font-mono);font-size:var(--text-sm);padding:var(--space-2) var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-full);display:flex;align-items:center;gap:var(--space-2);transition:all var(--transition-base)}.github-cta:hover{border-color:var(--color-text-primary);background:var(--color-text-primary);color:#fff}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-8)}.project-card{display:flex;flex-direction:column;gap:var(--space-4);background:transparent}.project-image-container{width:100%;aspect-ratio:16/9;border-radius:var(--radius-2xl);overflow:hidden;border:1px solid var(--color-border);background:var(--color-bg-alt)}.project-image-container img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.project-card:hover img{transform:scale(1.05)}.project-info{padding:0}.project-title{font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:700;display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.project-title span{transition:transform var(--transition-fast)}.project-card:hover .project-title span{transform:translate(5px)}.project-description{color:var(--color-text-secondary);font-size:var(--text-base);margin-bottom:var(--space-4)}.project-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.project-tag{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-text-muted)}.contact{padding:var(--space-24) 0;background:#000;color:#fff;border-top:1px solid var(--color-border)}.contact-header{text-align:center;margin-bottom:var(--space-12)}.contact-headline{font-family:var(--font-display);font-size:clamp(2rem,8vw,5rem);font-weight:800;line-height:1;margin-bottom:var(--space-4);color:#fff}.contact-status-msg{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-green)}.contact-form-container{max-width:800px;margin:0 auto;background:#0a0a0a;padding:var(--space-8);border-radius:var(--radius-2xl);border:1px solid var(--color-border);box-shadow:0 20px 50px #00000080}.modern-form{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}.form-group.full-width{grid-column:1 / -1}.form-label{display:block;font-family:var(--font-mono);font-size:var(--text-sm);color:#fff9;margin-bottom:var(--space-2)}.form-label span{color:var(--color-green)}.form-input,.form-textarea{width:100%;padding:var(--space-4);background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);color:#fff;font-family:inherit;font-size:var(--text-base);transition:all var(--transition-base)}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--color-green);background:#ffffff0d;box-shadow:0 0 0 4px #10b9811a;transform:translateY(-2px)}.form-textarea{resize:vertical;min-height:150px}.form-submit{grid-column:1 / -1;width:100%;padding:var(--space-5);background:var(--color-green);color:#fff;border-radius:var(--radius-lg);font-weight:600;font-size:var(--text-lg);transition:all var(--transition-base);cursor:pointer;border:none}.form-submit:hover{background:var(--color-accent-dark);transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.social-links{display:flex;justify-content:center;gap:var(--space-4);margin-top:var(--space-8)}.social-link{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border-radius:var(--radius-full);color:#fff;transition:all var(--transition-base)}.social-link:hover{background:var(--color-accent);transform:translateY(-4px)}.social-link svg{width:20px;height:20px}.footer{padding:var(--space-8) 0;background:#000;text-align:center;border-top:1px solid var(--color-border)}.footer p{color:#ffffff80;font-size:var(--text-sm)}@media(max-width:1024px){.hero-container{grid-template-columns:1fr;text-align:center}.hero-content{max-width:100%;order:2;padding:0 var(--space-4)}.hero-visual{order:1;margin-bottom:var(--space-8)}.hero-actions{justify-content:center}.hero-description{margin-left:auto;margin-right:auto}.about-layout{grid-template-columns:1fr;gap:var(--space-8)}.about-title-side{position:static;margin-bottom:var(--space-6)}.about-bio{font-size:var(--text-lg)}.project-featured{grid-template-columns:1fr}}@media(max-width:768px){.navbar{width:calc(100% - var(--space-4))}.nav-menu,.nav-cta{display:none}.mobile-menu-btn{display:flex}.hero{padding-top:var(--space-20)}.hero-image-wrapper{max-width:350px}.floating-badge{font-size:var(--text-xs);padding:var(--space-2) var(--space-3)}.tech-1,.tech-2,.tech-3{display:none}.projects-grid,.skills-grid{grid-template-columns:1fr}.scroll-indicator{display:none}}@media(max-width:480px){.hero-actions{flex-direction:column;width:100%}.btn{width:100%;justify-content:center}}.fade-in{opacity:0;transform:translateY(20px);transition:all .6s ease}.fade-in.visible{opacity:1;transform:translateY(0)}@keyframes revealText{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}.reveal-text{animation:revealText 1s ease forwards}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.loading{background:linear-gradient(90deg,var(--color-bg-alt) 25%,var(--color-surface) 50%,var(--color-bg-alt) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}
