@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Fira+Code:wght@400;500&display=swap);*{box-sizing:border-box;margin:0;padding:0}:root{--bg-primary:#0a0a0f;--bg-secondary:#12121a;--bg-card:#1a1a2e;--bg-card-hover:#1f1f35;--text-primary:#e4e4e7;--text-secondary:#a1a1aa;--text-muted:#71717a;--accent:#3b82f6;--accent-light:#60a5fa;--accent-glow:#3b82f626;--accent-secondary:#8b5cf6;--gradient-1:linear-gradient(135deg,#3b82f6,#8b5cf6);--gradient-2:linear-gradient(135deg,#3b82f6,#06b6d4);--border:#27272a;--border-light:#3f3f46;--radius:12px;--radius-sm:8px;--shadow:0 4px 6px -1px #0000004d;--shadow-lg:0 10px 25px -3px #0006;--transition:all 0.3s cubic-bezier(0.4,0,0.2,1)}html{scroll-behavior:smooth;scrollbar-color:#3b82f6 #12121a;scrollbar-color:var(--accent) var(--bg-secondary);scrollbar-width:thin}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0a0a0f;background-color:var(--bg-primary);color:#e4e4e7;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.6;overflow-x:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#12121a;background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#3b82f6;background:var(--accent);border-radius:3px}a{color:#60a5fa;color:var(--accent-light);text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition)}a:hover{color:#3b82f6;color:var(--accent)}::selection{background:#3b82f6;background:var(--accent);color:#fff}.section{padding:100px 0;position:relative}.container{margin:0 auto;max-width:1100px;padding:0 24px}.section-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#8b5cf6);background:var(--gradient-1);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:700;margin-bottom:.5rem}.section-subtitle{color:#71717a;color:var(--text-muted);font-size:1rem;margin-bottom:3rem}.fade-in{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.fade-in.visible{opacity:1;transform:translateY(0)}.navbar{background:#0000;left:0;padding:1rem 0;position:fixed;right:0;top:0;transition:var(--transition);z-index:1000}.navbar.scrolled{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0a0fd9;border-bottom:1px solid var(--border);padding:.7rem 0}.navbar-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1100px;padding:0 24px}.navbar-logo{-webkit-text-fill-color:#0000;background:var(--gradient-1);-webkit-background-clip:text;background-clip:text;font-family:Fira Code,monospace;font-size:1.3rem;font-weight:600}.navbar-links{display:flex;gap:2rem;list-style:none}.navbar-links a{color:var(--text-secondary);font-size:.9rem;font-weight:500;padding:4px 0;position:relative}.navbar-links a:after{background:var(--gradient-1);border-radius:1px;bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.navbar-links a:hover{color:var(--text-primary)}.navbar-links a:hover:after{width:100%}.navbar-toggle{background:none;border:none;color:var(--text-primary);cursor:pointer;display:none;font-size:1.5rem}@media (max-width:768px){.navbar-toggle{display:block}.navbar-links{background:var(--bg-secondary);border-left:1px solid var(--border);flex-direction:column;gap:1.5rem;height:100vh;padding:5rem 2rem;position:fixed;right:-100%;top:0;transition:right .3s ease;width:70%}.navbar-links.active{right:0}}.hero{align-items:center;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding-top:80px;position:relative}.hero-bg-grid{animation:gridPulse 8s ease-in-out infinite;background-image:linear-gradient(#3b82f60a 1px,#0000 0),linear-gradient(90deg,#3b82f60a 1px,#0000 0);background-size:40px 40px;inset:0;mask-image:radial-gradient(ellipse at center,#000 30%,#0000 70%);-webkit-mask-image:radial-gradient(ellipse at center,#000 30%,#0000 70%);position:absolute}@keyframes gridPulse{0%,to{opacity:.5}50%{opacity:1}}.hero-glow{animation:glowFloat 6s ease-in-out infinite;background:radial-gradient(circle,#3b82f61f 0,#8b5cf60f 40%,#0000 70%);height:700px;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:700px}@keyframes glowFloat{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.1)}}.hero-content{animation:fadeUp .8s ease forwards;padding:0 24px;text-align:center;z-index:1}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-photo-wrapper{align-items:center;display:flex;flex-direction:column;margin-bottom:1.5rem}.hero-photo-ring{animation:ringRotate 6s linear infinite;background:var(--gradient-1);border-radius:50%;height:140px;padding:3px;position:relative;width:140px}@keyframes ringRotate{0%{background:linear-gradient(0deg,#3b82f6,#8b5cf6)}to{background:linear-gradient(1turn,#3b82f6,#8b5cf6)}}.hero-photo{align-items:center;background:var(--bg-card);border:3px solid var(--bg-primary);border-radius:50%;display:flex;height:100%;justify-content:center;overflow:hidden;width:100%}.hero-photo img{height:100%;object-fit:cover;width:100%}.hero-photo-status{align-items:center;background:#22c55e1a;border:1px solid #22c55e33;border-radius:100px;color:#4ade80;display:inline-flex;font-size:.75rem;gap:6px;margin-top:.75rem;padding:6px 14px}.status-dot{animation:pulse 2s ease-in-out infinite;background:#4ade80;border-radius:50%;height:6px;width:6px}@keyframes pulse{0%,to{box-shadow:0 0 0 0 #4ade8066;opacity:1}50%{box-shadow:0 0 0 6px #4ade8000;opacity:.7}}.hero-greeting{color:var(--accent-light);font-family:Fira Code,monospace;font-size:1rem;letter-spacing:2px;margin-bottom:.75rem}.hero-name{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#fff,#a1a1aa);-webkit-background-clip:text;background-clip:text;font-size:clamp(2.5rem,8vw,5rem);font-weight:800;line-height:1.1;margin-bottom:1rem}.hero-role{color:var(--text-secondary);font-size:clamp(1.1rem,3vw,1.5rem);font-weight:400;margin-bottom:1.5rem;min-height:2rem}.hero-role-text{-webkit-text-fill-color:#0000;background:var(--gradient-1);-webkit-background-clip:text;background-clip:text;font-weight:600}.hero-cursor{animation:blink 1s step-end infinite;color:var(--accent);font-weight:300}@keyframes blink{50%{opacity:0}}.hero-description{color:var(--text-muted);font-size:1.05rem;line-height:1.7;margin:0 auto 2rem;max-width:550px}.hero-links{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:2rem}.hero-btn{align-items:center;border:1px solid #0000;border-radius:var(--radius-sm);display:inline-flex;font-size:.95rem;font-weight:500;gap:8px;padding:12px 24px;transition:var(--transition)}.hero-btn-primary{background:var(--gradient-1);color:#fff}.hero-btn-primary:hover{box-shadow:0 8px 25px #3b82f64d;color:#fff;transform:translateY(-2px)}.hero-btn-outline{border-color:var(--border-light);color:var(--text-primary);font-size:.85rem}.hero-btn-outline:hover{background:var(--accent-glow);border-color:var(--accent);color:var(--text-primary)}.hero-tech-tags{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.hero-tech-tag{background:#3b82f614;border:1px solid #3b82f626;border-radius:100px;color:var(--text-muted);font-family:Fira Code,monospace;font-size:.7rem;padding:4px 12px;transition:var(--transition)}.hero-tech-tag:hover{background:var(--accent-glow);border-color:var(--accent);color:var(--accent-light);transform:translateY(-2px)}.hero-scroll{animation:bounce 2s infinite;bottom:2rem;color:var(--text-muted);font-size:1.5rem;left:50%;position:absolute;transform:translateX(-50%)}@keyframes bounce{0%,to{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(10px)}}@media (max-width:768px){.hero-links{align-items:center;flex-direction:column}.hero-photo-ring{height:120px;width:120px}}.about-grid{grid-gap:3rem;align-items:start;display:grid;gap:3rem;grid-template-columns:1.2fr .8fr}.about-text p{color:var(--text-secondary);font-size:1.05rem;line-height:1.8;margin-bottom:1.2rem}.about-text strong{color:var(--text-primary);font-weight:600}.about-highlights{display:flex;flex-direction:column;gap:1rem}.about-highlight-card{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);display:flex;gap:1rem;padding:1rem 1.25rem;transition:var(--transition)}.about-highlight-card:hover{background:var(--bg-card-hover);border-color:var(--accent);transform:translateX(4px)}.about-highlight-icon{align-items:center;background:var(--accent-glow);border-radius:var(--radius-sm);color:var(--accent-light);display:flex;flex-shrink:0;font-size:1.1rem;height:40px;justify-content:center;width:40px}.about-highlight-label{color:var(--text-muted);display:block;font-size:.75rem;letter-spacing:1px;text-transform:uppercase}.about-highlight-value{color:var(--text-primary);display:block;font-size:.95rem;font-weight:600}@media (max-width:768px){.about-grid{grid-template-columns:1fr}}.skills-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(2,1fr)}.skills-category{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;transition:var(--transition)}.skills-category:hover{border-color:var(--accent);box-shadow:0 0 30px var(--accent-glow)}.skills-category-title{color:var(--accent-light);font-size:.85rem;font-weight:600;letter-spacing:1.5px;margin-bottom:1rem;text-transform:uppercase}.skills-list{display:flex;flex-wrap:wrap;gap:.6rem}.skill-chip{align-items:center;background:var(--bg-secondary);border:1px solid var(--border);border-radius:100px;color:var(--text-secondary);display:inline-flex;font-size:.85rem;gap:6px;padding:8px 14px;transition:var(--transition)}.skill-chip:hover{background:var(--accent-glow);border-color:var(--accent);color:var(--text-primary)}.skill-icon{color:var(--accent-light);display:flex;font-size:1rem}@media (max-width:768px){.skills-grid{grid-template-columns:1fr}}.timeline{padding-left:3rem;position:relative}.timeline:before{background:linear-gradient(to bottom,var(--accent),var(--accent-secondary),#0000);bottom:0;content:"";left:18px;position:absolute;top:0;width:2px}.timeline-item{margin-bottom:2.5rem;position:relative}.timeline-item:last-child{margin-bottom:0}.timeline-marker{align-items:center;background:var(--bg-card);border:2px solid var(--accent);border-radius:50%;display:flex;height:38px;justify-content:center;left:-3rem;position:absolute;top:0;width:38px;z-index:1}.timeline-icon{color:var(--accent-light);display:flex;font-size:1rem}.timeline-content{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;transition:var(--transition)}.timeline-content:hover{border-color:var(--accent);transform:translateX(4px)}.timeline-period{color:var(--accent-light);font-family:Fira Code,monospace;font-size:.8rem}.timeline-title{color:var(--text-primary);font-size:1.2rem;font-weight:700;margin:.4rem 0 .2rem}.timeline-company{color:var(--text-muted);font-size:.9rem}.timeline-description{color:var(--text-secondary);font-size:.95rem;line-height:1.7;margin:.8rem 0}.timeline-tags{display:flex;flex-wrap:wrap;gap:.5rem}.timeline-tag{background:var(--accent-glow);border:1px solid #3b82f633;border-radius:100px;color:var(--accent-light);font-size:.75rem;padding:4px 10px}@media (max-width:768px){.timeline{padding-left:2.5rem}.timeline-marker{height:32px;left:-2.5rem;width:32px}}.project-featured{background:linear-gradient(135deg,var(--bg-card) 0,#3b82f614 100%);border:1px solid #3b82f64d;border-radius:var(--radius);margin-bottom:3rem;overflow:hidden;padding:2rem;position:relative}.project-featured:before{background:var(--gradient-1);content:"";height:3px;left:0;position:absolute;right:0;top:0}.project-featured-badge{background:var(--gradient-1);border-radius:100px;color:#fff;display:inline-block;font-family:Fira Code,monospace;font-size:.7rem;letter-spacing:1px;margin-bottom:1.5rem;padding:4px 12px;text-transform:uppercase}.project-featured-content{grid-gap:2rem;align-items:center;display:grid;gap:2rem;grid-template-columns:1fr 1fr}.project-featured-title{-webkit-text-fill-color:#0000;background:var(--gradient-1);-webkit-background-clip:text;background-clip:text;font-size:1.8rem;font-weight:800;margin-bottom:1rem}.project-featured-description{color:var(--text-secondary);line-height:1.8;margin-bottom:1.5rem}.project-featured-tags{display:flex;flex-wrap:wrap;gap:.5rem}.project-featured-tags span{background:var(--accent-glow);border:1px solid #3b82f633;border-radius:100px;color:var(--accent-light);font-size:.8rem;padding:6px 14px;transition:var(--transition)}.project-featured-tags span:hover{background:#3b82f633;transform:translateY(-2px)}.project-featured-mockup{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);overflow:hidden}.mockup-bar{border-bottom:1px solid var(--border);display:flex;gap:6px;padding:12px 16px}.mockup-bar span{background:var(--border-light);border-radius:50%;height:10px;width:10px}.mockup-bar span:first-child{background:#ef4444}.mockup-bar span:nth-child(2){background:#eab308}.mockup-bar span:nth-child(3){background:#22c55e}.mockup-content{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem}.mockup-line{animation:shimmer 2s ease-in-out infinite alternate;background:var(--border);border-radius:4px;height:10px}.mockup-line.w80{width:80%}.mockup-line.w60{width:60%}.mockup-line.w90{width:90%}.mockup-line.w40{width:40%}.mockup-block{background:var(--accent-glow);border:1px solid #3b82f626;border-radius:var(--radius-sm);height:80px;margin-top:.5rem}@keyframes shimmer{0%{opacity:.5}to{opacity:1}}.carousel-wrapper{overflow:hidden;padding:2rem 0;position:relative}.carousel-track{align-items:center;display:flex;height:350px;justify-content:center;position:relative}.carousel-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);display:flex;flex-direction:column;max-width:90vw;padding:1.5rem;position:absolute;transition:all .5s cubic-bezier(.4,0,.2,1);width:380px}.carousel-card.active{border-color:#3b82f64d;box-shadow:0 12px 40px #0000004d,0 0 40px var(--accent-glow)}.carousel-card.active:hover{border-color:var(--accent)}.project-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.project-folder-icon{color:var(--accent-light);font-size:1.5rem}.project-card-links{display:flex;gap:.75rem}.project-card-links a{color:var(--text-muted);font-size:1.1rem;transition:var(--transition)}.project-card-links a:hover{color:var(--accent-light)}.project-card-title{color:var(--text-primary);font-size:1.15rem;font-weight:700;margin-bottom:.5rem}.project-card-description{color:var(--text-secondary);flex:1 1;font-size:.9rem;line-height:1.6;margin-bottom:1rem}.project-card-footer{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between}.project-lang{align-items:center;color:var(--accent-light);display:inline-flex;font-size:.8rem;font-weight:500;gap:5px}.project-tags{display:flex;flex-wrap:wrap;gap:.4rem}.project-tags span{background:var(--bg-secondary);border:1px solid var(--border);border-radius:100px;color:var(--text-muted);font-size:.7rem;padding:3px 8px}.carousel-btn{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:50%;color:var(--text-primary);cursor:pointer;display:flex;font-size:1.2rem;height:44px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:var(--transition);width:44px;z-index:10}.carousel-btn:hover{background:var(--accent-glow);border-color:var(--accent);color:var(--accent-light)}.carousel-btn-prev{left:0}.carousel-btn-next{right:0}.carousel-dots{display:flex;gap:8px;justify-content:center;margin-top:1.5rem}.carousel-dot{background:var(--border-light);border:none;border-radius:50%;cursor:pointer;height:8px;padding:0;transition:var(--transition);width:8px}.carousel-dot.active{background:var(--accent);border-radius:4px;width:24px}.projects-more{margin-top:2rem;text-align:center}.projects-more-link{align-items:center;border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-secondary);display:inline-flex;font-weight:500;gap:8px;padding:12px 28px;transition:var(--transition)}.projects-more-link:hover{background:var(--accent-glow);border-color:var(--accent);color:var(--accent-light)}@media (max-width:768px){.project-featured-content{grid-template-columns:1fr}.project-featured-visual{display:none}.carousel-card{width:300px}.carousel-btn-prev{left:-5px}.carousel-btn-next{right:-5px}}.achievements-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr)}.achievement-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;position:relative;text-align:center;transition:var(--transition)}.achievement-card:hover{border-color:var(--accent);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.achievement-card.highlight{background:linear-gradient(135deg,var(--bg-card) 0,#8b5cf60f 100%);border-color:#8b5cf64d}.achievement-card.highlight:hover{border-color:var(--accent-secondary)}.achievement-icon{align-items:center;background:var(--accent-glow);border-radius:50%;color:var(--accent-light);display:inline-flex;font-size:1.2rem;height:48px;justify-content:center;margin-bottom:1rem;width:48px}.achievement-card.highlight .achievement-icon{background:#8b5cf626;color:#a78bfa}.achievement-title{color:var(--text-primary);font-size:1rem;font-weight:700;margin-bottom:.5rem}.achievement-description{color:var(--text-secondary);font-size:.85rem;line-height:1.6}@media (max-width:900px){.achievements-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.achievements-grid{grid-template-columns:1fr}}.contact-grid{grid-gap:3rem;align-items:start;display:grid;gap:3rem;grid-template-columns:1.2fr .8fr}.contact-text{color:var(--text-secondary);font-size:1.05rem;line-height:1.8;margin-bottom:2rem}.contact-text strong{color:var(--accent-light)}.contact-cards{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(2,1fr)}.contact-card{align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);display:flex;gap:1rem;padding:1rem;transition:var(--transition)}.contact-card:hover{border-color:var(--accent);transform:translateY(-2px)}.contact-card-icon{align-items:center;background:var(--accent-glow);border-radius:var(--radius-sm);color:var(--accent-light);display:flex;flex-shrink:0;font-size:1.1rem;height:40px;justify-content:center;width:40px}.contact-card-label{color:var(--text-muted);display:block;font-size:.7rem;letter-spacing:1px;text-transform:uppercase}.contact-card-value{color:var(--text-primary);display:block;font-size:.85rem;font-weight:500}a.contact-card-value:hover{color:var(--accent-light)}.contact-cta-box{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;text-align:center}.contact-cta-icon{color:var(--accent-light);font-size:2rem;margin-bottom:1rem}.contact-cta-box h3{font-size:1.2rem;font-weight:700;margin-bottom:.5rem}.contact-cta-box p{color:var(--text-muted);font-size:.9rem;margin-bottom:1.5rem}.contact-cta-btn{align-items:center;background:var(--gradient-1);border-radius:var(--radius-sm);color:#fff;display:inline-flex;font-weight:600;gap:8px;padding:12px 28px;transition:var(--transition)}.contact-cta-btn:hover{box-shadow:0 8px 25px #3b82f64d;color:#fff;transform:translateY(-2px)}@media (max-width:768px){.contact-cards,.contact-grid{grid-template-columns:1fr}}.footer{background:var(--bg-secondary);border-top:1px solid var(--border);padding:2rem 0}.footer-content{align-items:center;display:flex;justify-content:space-between}.footer-logo{-webkit-text-fill-color:#0000;background:var(--gradient-1);-webkit-background-clip:text;background-clip:text;font-family:Fira Code,monospace;font-size:1.1rem;font-weight:600}.footer-links{display:flex;gap:1.2rem}.footer-links a{color:var(--text-muted);font-size:1.2rem;transition:var(--transition)}.footer-links a:hover{color:var(--accent-light);transform:translateY(-2px)}.footer-copy{align-items:center;color:var(--text-muted);display:flex;font-size:.8rem;gap:4px}.footer-heart{color:#ef4444;font-size:.9rem}@media (max-width:768px){.footer-content{flex-direction:column;gap:1rem;text-align:center}}
/*# sourceMappingURL=main.50e887ec.css.map*/