:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}}body{margin:0}#root{text-align:left;box-sizing:border-box;border:none;flex-direction:column;width:100%;max-width:100%;min-height:100svh;margin:0 auto;display:flex}*,:before,:after{box-sizing:border-box}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}:root{--bg-primary:#0a0a0f;--bg-secondary:#0f0f1a;--bg-tertiary:#161625;--bg-card:#1a1a2e;--bg-card-hover:#1f1f35;--text-primary:#fff;--text-secondary:#a0a0b0;--text-muted:#6b6b7b;--accent-primary:#6366f1;--accent-secondary:#8b5cf6;--accent-gradient:linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--accent-glow:#6366f126;--border-color:#ffffff14;--border-hover:#ffffff26;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 8px 24px #0006;--shadow-lg:0 16px 48px #00000080;--shadow-glow:0 0 40px #6366f14d;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:32px;--max-width:1200px;--header-height:80px;--font-heading:"Space Grotesk", sans-serif;--font-body:"Inter", sans-serif;--transition-fast:.15s ease;--transition-normal:.3s ease;--transition-slow:.5s ease}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:var(--header-height)}body{font-family:var(--font-body);background:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}.noise-overlay{pointer-events:none;z-index:9999;opacity:.02;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");width:100%;height:100%;position:fixed;top:0;left:0}.container{max-width:var(--max-width);margin:0 auto;padding:0 24px}a{color:inherit;transition:color var(--transition-fast);text-decoration:none}ul{list-style:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}img{max-width:100%;display:block}.header{height:var(--header-height);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-color);z-index:1000;transition:all var(--transition-normal);background:#0a0a0fd9;position:fixed;top:0;left:0;right:0}.header.scrolled{box-shadow:var(--shadow-md);background:#0a0a0ff2}.header-content{justify-content:space-between;align-items:center;gap:16px;height:100%;display:flex}.logo-link{flex-shrink:0;align-items:center;gap:12px;display:flex}.logo-text{font-family:var(--font-heading);color:var(--text-primary);white-space:nowrap;font-size:18px;font-weight:600}.nav{align-items:center;gap:2px;display:flex}.nav-link{color:var(--text-secondary);border-radius:var(--radius-sm);transition:all var(--transition-fast);white-space:nowrap;padding:8px 12px;font-size:13px;font-weight:500;position:relative}.nav-link:after{content:"";background:var(--accent-gradient);width:0;height:2px;transition:width var(--transition-normal);border-radius:2px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.nav-link:hover{color:var(--text-primary)}.nav-link:hover:after{width:20px}.header-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.lang-toggle{background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border-color);align-items:center;gap:4px;padding:4px;display:flex}.lang-btn{color:var(--text-muted);transition:all var(--transition-fast);border-radius:6px;padding:6px 12px;font-size:12px;font-weight:600}.lang-btn.active{background:var(--accent-gradient);color:#fff}.lang-btn:hover:not(.active){color:var(--text-primary)}.btn{border-radius:var(--radius-sm);transition:all var(--transition-normal);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:600;display:inline-flex}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 16px #6366f14d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #6366f166}.btn-ghost{color:var(--text-primary);border:1px solid var(--border-color);background:0 0}.btn-ghost:hover{background:var(--bg-tertiary);border-color:var(--border-hover)}.btn-lg{padding:16px 32px;font-size:15px}.mobile-menu-toggle{z-index:1002;cursor:pointer;flex-direction:column;gap:5px;padding:8px;display:flex;position:relative}.mobile-menu-toggle span{background:var(--text-primary);border-radius:2px;width:24px;height:2px;transition:all .3s}.mobile-menu-toggle.active span:first-child{transform:rotate(45deg)translate(5px,5px)}.mobile-menu-toggle.active span:nth-child(2){opacity:0}.mobile-menu-toggle.active span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}@media (width>=901px){.mobile-menu-toggle{display:none}}.hero{flex-direction:column;justify-content:center;min-height:100vh;padding:120px 0 80px;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background:radial-gradient(ellipse at center, var(--accent-glow) 0%, transparent 60%);pointer-events:none;width:80%;height:150%;position:absolute;top:-50%;right:-20%}.hero:after{content:"";pointer-events:none;background:radial-gradient(#8b5cf614 0%,#0000 60%);width:60%;height:100%;position:absolute;bottom:-30%;left:-20%}.hero-content{z-index:1;grid-template-columns:1fr 1fr;align-items:center;gap:80px;display:grid;position:relative}.hero-title{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.hero-greeting{color:var(--text-secondary);font-size:20px;font-weight:500}.hero-name{font-family:var(--font-heading);background:linear-gradient(135deg,#fff 0%,#a0a0b0 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:clamp(40px,6vw,64px);font-weight:700;line-height:1.1}.hero-role{color:var(--accent-primary);margin-bottom:20px;font-size:20px;font-weight:500}.hero-description{color:var(--text-secondary);max-width:520px;margin-bottom:32px;font-size:17px;line-height:1.7}.hero-cta{gap:16px;margin-bottom:48px;display:flex}.hero-visual{justify-content:center;align-items:center;display:flex;position:relative}.hero-photo-wrapper{width:380px;height:460px;position:relative}.photo-frame{border-radius:var(--radius-xl);z-index:2;border:1px solid var(--border-color);width:100%;height:100%;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.profile-photo{object-fit:cover;width:100%;height:100%}.photo-placeholder{background:var(--bg-tertiary);width:100%;height:100%;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;font-size:14px;display:flex}.photo-decoration{border-radius:var(--radius-xl);background:var(--accent-gradient);opacity:.3;filter:blur(40px);z-index:1;width:100%;height:100%;position:absolute;top:-20px;right:-20px}.hero-scroll{color:var(--text-muted);text-transform:uppercase;letter-spacing:2px;flex-direction:column;align-items:center;gap:8px;font-size:12px;font-weight:500;display:flex;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.scroll-line{background:linear-gradient(to bottom, var(--accent-primary), transparent);width:1px;height:40px;animation:2s infinite scrollDown}@keyframes scrollDown{0%{opacity:0;transform:translateY(-100%)}50%{opacity:1}to{opacity:0;transform:translateY(100%)}}.section{padding:120px 0;position:relative}.section-dark{background:var(--bg-secondary)}.section-header{text-align:center;margin-bottom:64px}.section-tag{background:var(--accent-glow);color:var(--accent-primary);text-transform:uppercase;letter-spacing:1px;border:1px solid #6366f14d;border-radius:100px;margin-bottom:16px;padding:8px 16px;font-size:13px;font-weight:600;display:inline-block}.section-title{font-family:var(--font-heading);color:var(--text-primary);font-size:clamp(32px,4vw,48px);font-weight:700;line-height:1.2}.about-content{grid-template-columns:1.2fr 1fr;align-items:start;gap:64px;display:grid}.about-main{flex-direction:column;gap:20px;display:flex}.about-text{color:var(--text-secondary);font-size:16px;line-height:1.8}.about-highlights{flex-direction:column;gap:20px;display:flex}.highlight-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-normal);align-items:flex-start;gap:16px;padding:24px;display:flex}.highlight-card:hover{background:var(--bg-card-hover);border-color:var(--border-hover);transform:translate(8px)}.highlight-icon{background:var(--accent-glow);border-radius:var(--radius-sm);width:48px;height:48px;color:var(--accent-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.highlight-card h4{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:4px;font-size:16px;font-weight:600}.highlight-card p{color:var(--text-secondary);font-size:14px}.skills-showcase{grid-template-columns:repeat(3,1fr);gap:32px;display:grid}.skill-group{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-normal);padding:32px}.skill-group:hover{border-color:var(--border-hover);box-shadow:var(--shadow-glow);transform:translateY(-4px)}.skill-group-header{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;margin-bottom:24px;padding-bottom:16px;display:flex}.skill-group-icon{background:var(--accent-gradient);border-radius:var(--radius-sm);color:#fff;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.skill-group-header h3{font-family:var(--font-heading);color:var(--text-primary);font-size:18px;font-weight:600}.skill-tags{flex-wrap:wrap;gap:10px;display:flex}.skill-tag{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition-fast);padding:10px 18px;font-size:13px;font-weight:500}.skill-tag:hover{background:var(--accent-glow);border-color:var(--accent-primary);color:var(--accent-primary);transform:translateY(-2px)}.projects-grid{grid-template-columns:repeat(2,1fr);gap:32px;display:grid}.project-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);transition:all var(--transition-normal);overflow:hidden}.project-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-lg);transform:translateY(-8px)}.project-image{background:var(--bg-tertiary);height:240px;position:relative;overflow:hidden}.project-image-placeholder{width:100%;height:100%;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.project-overlay{opacity:0;transition:opacity var(--transition-normal);background:#0009;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.project-card:hover .project-overlay{opacity:1}.project-github{width:48px;height:48px;color:var(--bg-primary);transition:transform var(--transition-fast);background:#fff;border-radius:50%;justify-content:center;align-items:center;display:flex}.project-github:hover{transform:scale(1.1)}.project-content{padding:28px}.project-meta{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.project-type{color:var(--accent-primary);text-transform:uppercase;letter-spacing:1px;font-size:12px;font-weight:600}.project-year{color:var(--text-muted);font-size:12px}.project-title{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:12px;font-size:24px;font-weight:700}.project-description{color:var(--text-secondary);margin-bottom:20px;font-size:15px;line-height:1.7}.project-features{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.project-features span{background:var(--bg-tertiary);color:var(--text-secondary);border-radius:100px;padding:6px 12px;font-size:12px;font-weight:500}.project-tech-stack{border-top:1px solid var(--border-color);flex-wrap:wrap;gap:8px;padding-top:20px;display:flex}.tech-tag{background:var(--accent-glow);border-radius:var(--radius-sm);color:var(--accent-primary);border:1px solid #6366f14d;padding:6px 12px;font-size:12px;font-weight:600}.timeline{max-width:800px;margin:0 auto;padding-left:40px;position:relative}.timeline:before{content:"";background:linear-gradient(to bottom, var(--accent-primary), var(--accent-secondary), transparent);width:2px;position:absolute;top:0;bottom:0;left:15px}.timeline-item{margin-bottom:40px;position:relative}.timeline-item:last-child{margin-bottom:0}.timeline-marker{background:var(--accent-gradient);border:3px solid var(--bg-secondary);width:16px;height:16px;box-shadow:0 0 0 4px var(--accent-glow);border-radius:50%;position:absolute;top:24px;left:-33px}.timeline-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-normal);padding:28px}.timeline-content:hover{border-color:var(--border-hover);transform:translate(8px)}.timeline-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.timeline-role{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:4px;font-size:20px;font-weight:700}.timeline-company{color:var(--accent-primary);font-size:14px;font-weight:500}.timeline-date{background:var(--bg-tertiary);color:var(--text-muted);border-radius:100px;padding:6px 12px;font-size:12px;font-weight:600}.timeline-description{color:var(--text-secondary);margin-bottom:20px;font-size:15px;line-height:1.7}.timeline-techs{flex-wrap:wrap;gap:8px;display:flex}.timeline-techs span{background:var(--accent-glow);border-radius:var(--radius-sm);color:var(--accent-primary);border:1px solid #6366f14d;padding:6px 12px;font-size:12px;font-weight:600}.education-section{border-top:1px solid var(--border-color);margin-top:80px;padding-top:80px}.education-title{font-family:var(--font-heading);color:var(--text-primary);text-align:center;margin-bottom:48px;font-size:28px;font-weight:700}.education-timeline{flex-direction:column;gap:0;max-width:700px;margin:0 auto;display:flex;position:relative}.education-timeline:before{content:"";background:linear-gradient(to bottom, var(--accent-primary), var(--accent-secondary), transparent);width:2px;position:absolute;top:0;bottom:0;left:31px}.education-item{align-items:flex-start;gap:24px;padding:28px 0;display:flex;position:relative}.education-icon{background:var(--bg-card);border:2px solid var(--accent-primary);width:64px;height:64px;color:var(--accent-primary);z-index:2;box-shadow:0 0 20px var(--accent-glow);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.education-details{flex:1;padding-top:8px}.education-period{background:var(--accent-glow);color:var(--accent-primary);border:1px solid #6366f14d;border-radius:100px;margin-bottom:12px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.education-details h4{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:6px;font-size:18px;font-weight:600;line-height:1.4}.education-center{color:var(--text-secondary);font-size:14px}.contact-wrapper{grid-template-columns:1.2fr 1fr;align-items:start;gap:64px;display:grid}.contact-info{flex-direction:column;gap:32px;display:flex}.contact-title{font-family:var(--font-heading);color:var(--text-primary);margin-top:16px;font-size:clamp(28px,4vw,40px);font-weight:700;line-height:1.2}.contact-description{color:var(--text-secondary);font-size:16px;line-height:1.7}.contact-methods{flex-direction:column;gap:16px;display:flex}.contact-method{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-normal);align-items:center;gap:16px;padding:20px;display:flex}.contact-method:hover{background:var(--bg-card-hover);border-color:var(--accent-primary);transform:translate(8px)}.contact-method-icon{background:var(--accent-glow);border-radius:var(--radius-sm);width:48px;height:48px;color:var(--accent-primary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-method-info{flex-direction:column;gap:2px;display:flex}.contact-method-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;font-size:12px;font-weight:600}.contact-method-value{color:var(--text-primary);font-size:15px;font-weight:500}.contact-visual{justify-content:center;display:flex}.contact-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:360px;padding:32px;position:sticky;top:100px}.contact-card-header{border-bottom:1px solid var(--border-color);align-items:center;gap:16px;margin-bottom:24px;padding-bottom:24px;display:flex}.contact-card-avatar{border-radius:50%;flex-shrink:0;width:64px;height:64px;overflow:hidden}.contact-card-avatar img{object-fit:cover;width:100%;height:100%}.avatar-placeholder{background:var(--accent-gradient);color:#fff;justify-content:center;align-items:center;width:100%;height:100%;font-size:20px;font-weight:700;display:flex}.contact-card-info h4{font-family:var(--font-heading);color:var(--text-primary);margin-bottom:4px;font-size:18px;font-weight:700}.contact-card-info p{color:var(--text-secondary);font-size:14px}.contact-card-details{flex-direction:column;gap:16px;display:flex}.contact-detail{color:var(--text-secondary);align-items:center;gap:12px;font-size:14px;display:flex}.contact-detail svg{color:var(--accent-primary);flex-shrink:0}.footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:48px 0}.footer-content{text-align:center;flex-direction:column;align-items:center;gap:16px;display:flex}.footer-brand{font-family:var(--font-heading);color:var(--text-primary);align-items:center;gap:12px;font-size:18px;font-weight:600;display:flex}.footer-text{color:var(--text-secondary);font-size:14px}.footer-copyright{color:var(--text-muted);font-size:13px}.reveal{opacity:0;transition:all .8s;transform:translateY(30px)}.reveal.active{opacity:1;transform:translateY(0)}@media (width<=1024px){.hero-content{text-align:center;grid-template-columns:1fr;gap:48px}.hero-description{margin:0 auto 32px}.hero-cta{justify-content:center}.hero-visual{order:-1}.hero-photo-wrapper{width:280px;height:340px}.about-content{grid-template-columns:1fr;gap:48px}.skills-showcase,.projects-grid{grid-template-columns:1fr}.contact-wrapper{grid-template-columns:1fr;gap:48px}.contact-visual{order:-1}.contact-card{position:static}}@media (width<=900px){.nav{top:var(--header-height);background:var(--bg-secondary);border-bottom:1px solid var(--border-color);z-index:999;opacity:0;pointer-events:none;flex-direction:column;align-items:stretch;gap:2px;padding:8px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;left:0;right:0;transform:translateY(-100%);box-shadow:0 16px 32px #0000004d}.nav.mobile-open{opacity:1;pointer-events:auto;transform:translateY(0)}.nav .nav-link{text-align:left;width:100%;color:var(--text-secondary);border-radius:var(--radius-sm);transition:all var(--transition-fast);border-bottom:1px solid var(--border-color);padding:14px 16px;font-size:15px}.nav .nav-link:last-child{border-bottom:none}.nav .nav-link:hover{background:var(--bg-card);color:var(--text-primary)}.nav .nav-link:after,.header-actions .btn{display:none}.hero{padding:100px 0 60px}.section{padding:80px 0}.education-timeline:before{left:23px}.education-icon{width:48px;height:48px}.education-item{gap:16px;padding:20px 0}.timeline{padding-left:32px}.timeline:before{left:11px}.timeline-marker{width:12px;height:12px;left:-29px}}@media (width<=480px){.hero-photo-wrapper{width:220px;height:280px}.hero-cta{flex-direction:column;width:100%}.hero-cta .btn{width:100%}}
