:root{--primary-color:#3b82f6;--secondary-color:#1e293b;--accent-color:#06b6d4;--text-primary:#fff;--text-secondary:#e2e8f0;--text-muted:#94a3b8;--accent-color-rgb:6,182,212;--primary-color-rgb:59,130,246;--text-color-rgb:255,255,255;--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--bg-code:#1e293b;--gradient-primary:linear-gradient(135deg,#3b82f6,#06b6d4);--gradient-secondary:linear-gradient(135deg,#1e293b,#334155);--gradient-dark:linear-gradient(135deg,#0f172a,#1e293b);--nav-bg:rgba(15,23,42,.95);--nav-bg-scroll:rgba(15,23,42,.98);--nav-border:rgba(51,65,85,.6);--nav-border-scroll:rgba(51,65,85,.8);--font-primary:"Inter",sans-serif;--font-mono:"JetBrains Mono",monospace;--font-xs:0.75rem;--font-sm:0.875rem;--font-base:1rem;--font-lg:1.125rem;--font-xl:1.25rem;--font-2xl:1.5rem;--font-3xl:1.875rem;--font-4xl:2.25rem;--font-5xl:3rem;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.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;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--radius-sm:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--radius-2xl:1rem;--transition-fast:none;--transition-normal:none;--transition-slow:none}*{margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{background:#0f172a;background:var(--bg-primary);color:#fff;color:var(--text-primary);font-family:Inter,sans-serif;font-family:var(--font-primary);line-height:1.6;min-height:100vh}a{color:inherit;text-decoration:none}button{background:none;border:none;cursor:pointer;font-family:inherit}img{display:block;height:auto;max-width:100%}ul{list-style:none}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#1e293b;background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#334155;background:var(--bg-tertiary);border-radius:.375rem;border-radius:var(--radius-md)}::-webkit-scrollbar-thumb:hover{background:#94a3b8;background:var(--text-muted)}.section-animate{opacity:0;transform:translateY(30px);transition:opacity .6s ease-out,transform .6s ease-out}.section-animate.animate-in{opacity:1;transform:translateY(0)}@media (min-width:769px){.hero.section-animate{transform:scale(.95) translateY(20px)}.hero.animate-in{transform:scale(1) translateY(0)}.about.section-animate{transform:translateX(-50px) rotateY(-10deg)}.about.animate-in{transform:translateX(0) rotateY(0deg)}.skills.section-animate{transform:rotateX(15deg) translateY(30px)}.skills.animate-in{transform:rotateX(0deg) translateY(0)}.projects.section-animate{transform:perspective(1000px) rotateX(20deg) translateY(40px)}.projects.animate-in{transform:perspective(1000px) rotateX(0deg) translateY(0)}.experience.section-animate{transform:perspective(1000px) rotateY(15deg) translateX(30px)}.experience.animate-in{transform:perspective(1000px) rotateY(0deg) translateX(0)}.contact.section-animate{transform:scale(.8) translateY(50px)}.contact.animate-in{transform:scale(1) translateY(0)}}@media (max-width:768px){.section-animate{transition:none!important}.about.animate-in,.about.section-animate,.contact.animate-in,.contact.section-animate,.experience.animate-in,.experience.section-animate,.hero.animate-in,.hero.section-animate,.projects.animate-in,.projects.section-animate,.section-animate,.section-animate.animate-in,.skills.animate-in,.skills.section-animate{opacity:1!important;transform:none!important}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.fade-in{animation:fadeIn .6s ease-out}.slide-in-left{animation:slideInLeft .6s ease-out}.slide-in-right{animation:slideInRight .6s ease-out}.loading{opacity:0;transform:translateY(20px);transition:all .6s ease}.loaded{opacity:1;transform:translateY(0)}.container{margin:0 auto;padding:0 1.5rem;padding:0 var(--space-6)}.section-header{margin-bottom:4rem;margin-bottom:var(--space-16);text-align:center}.section-title{background:linear-gradient(135deg,#3b82f6,#06b6d4);background:var(--gradient-primary);-webkit-background-clip:text;font-size:2.25rem;font-size:var(--font-4xl);font-weight:700;margin-bottom:1rem;margin-bottom:var(--space-4);-webkit-text-fill-color:transparent;background-clip:text}.section-subtitle{color:#e2e8f0;color:var(--text-secondary);font-size:1.125rem;font-size:var(--font-lg);margin:0 auto;max-width:600px}.nav{backdrop-filter:blur(10px);background:rgba(15,23,42,.95);background:var(--nav-bg);border-bottom:1px solid rgba(51,65,85,.6);border-bottom:1px solid var(--nav-border);left:0;position:fixed;top:0;transition:all none;transition:all var(--transition-normal);width:100%;z-index:1000}.nav-container{box-sizing:border-box;height:70px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 1.5rem;padding:0 var(--space-6);width:100%}.nav-container,.nav-logo{align-items:center;display:flex}.nav-logo{color:#3b82f6;color:var(--primary-color);font-size:1.25rem;font-size:var(--font-xl);font-weight:700;gap:.75rem;gap:var(--space-3)}.logo-avatar{border:2px solid #3b82f6;border:2px solid var(--primary-color);border-radius:50%;cursor:pointer;height:45px;-o-object-fit:cover;object-fit:cover;transition:all none;transition:all var(--transition-fast);width:45px}.logo-avatar:hover{box-shadow:0 4px 12px rgba(59,130,246,.3);transform:scale(1.1)}.logo-name{color:#fff;color:var(--text-primary);font-family:Inter,sans-serif;font-family:var(--font-primary);font-size:1.125rem;font-size:var(--font-lg);font-weight:700;transition:color none;transition:color var(--transition-fast);white-space:nowrap}.logo-name:hover{color:#3b82f6;color:var(--primary-color)}.nav-menu{display:flex;gap:2rem;gap:var(--space-8);list-style:none}.nav-link{color:#fff;color:var(--text-primary);font-weight:500;position:relative;text-decoration:none;transition:all none;transition:all var(--transition-fast)}.nav-link:hover{color:#3b82f6;color:var(--primary-color)}.nav-link:after{background:#3b82f6;background:var(--primary-color);bottom:-4px;content:"";height:2px;left:0;position:absolute;transition:width none;transition:width var(--transition-fast);width:0}.nav-link:hover:after{width:100%}.nav-actions{align-items:center;display:flex;gap:.5rem;gap:var(--space-2)}.share-toggle{background:none;border:none;border-radius:.375rem;border-radius:var(--radius-md);color:#fff;color:var(--text-primary);cursor:pointer;padding:.5rem;padding:var(--space-2);position:relative;transition:all none;transition:all var(--transition-fast)}.share-toggle:hover{background:#334155;background:var(--bg-tertiary);color:#3b82f6;color:var(--primary-color);transform:translateY(-1px)}.share-toggle i{font-size:1rem;font-size:var(--font-base);transition:all none;transition:all var(--transition-fast)}.hamburger{cursor:pointer;display:none;flex-direction:column;gap:4px}.hamburger span{background:#fff;background:var(--text-primary);height:3px;transition:all none;transition:all var(--transition-fast);width:25px}.hamburger.active span:first-child{transform:rotate(45deg) translate(5px,5px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}.nav-menu.mobile-open{background:#0f172a!important;background:var(--bg-primary)!important;border:1px solid rgba(51,65,85,.6)!important;border:1px solid var(--nav-border)!important;border-top:none!important;box-shadow:0 10px 15px -3px rgba(0,0,0,.3),0 4px 6px -4px rgba(0,0,0,.2)!important;display:flex!important;flex-direction:column!important;gap:.5rem!important;gap:var(--space-2)!important;left:0!important;padding:1rem!important;padding:var(--space-4)!important;position:absolute!important;right:0!important;top:100%!important;width:100%!important;z-index:999!important}.nav-menu.mobile-open .nav-link{border-bottom:1px solid rgba(51,65,85,.6)!important;border-bottom:1px solid var(--nav-border)!important;border-radius:.375rem!important;border-radius:var(--radius-md)!important;padding:.75rem 1rem!important;padding:var(--space-3) var(--space-4)!important;text-align:center!important}.nav-menu.mobile-open .nav-link:last-child{border-bottom:none!important}.nav-menu.mobile-open .nav-link:hover{background:#334155!important;background:var(--bg-tertiary)!important}.btn{align-items:center;border:none;border-radius:.5rem;border-radius:var(--radius-lg);cursor:pointer;display:inline-flex;font-size:1rem;font-size:var(--font-base);font-weight:500;gap:.5rem;gap:var(--space-2);padding:1rem 1.5rem;padding:var(--space-4) var(--space-6);text-decoration:none;transition:all none;transition:all var(--transition-normal)}.btn-primary{background:linear-gradient(135deg,#3b82f6,#06b6d4);background:var(--gradient-primary);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);box-shadow:var(--shadow-md);color:#fff}.btn-primary:hover{box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);box-shadow:var(--shadow-lg)}.btn-accent{background:linear-gradient(135deg,#27ae60,#2ecc71);box-shadow:0 4px 15px rgba(39,174,96,.3);color:#fff}.btn-accent:hover{box-shadow:0 8px 25px rgba(39,174,96,.4)}.btn-secondary{background:#1e293b;background:var(--bg-secondary);border:2px solid #334155;border:2px solid var(--bg-tertiary);color:#fff;color:var(--text-primary)}.btn-secondary:hover{background:#334155;background:var(--bg-tertiary);border-color:#3b82f6;border-color:var(--primary-color)}.btn-outline{background:transparent;border:2px solid #3b82f6;border:2px solid var(--primary-color);color:#3b82f6;color:var(--primary-color)}.btn-outline:hover{background:#3b82f6;background:var(--primary-color);color:#fff}.glow-on-hover:hover{box-shadow:0 0 20px rgba(59,130,246,.5)}.hero{align-items:center;background:#0f172a;background:var(--bg-primary);display:flex;min-height:100vh;overflow:hidden;padding-top:70px;position:relative}.hero:before{background:radial-gradient(circle at 20% 80%,rgba(59,130,246,.1) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(6,182,212,.1) 0,transparent 50%);content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.hero-container{margin:0 auto;max-width:1200px;padding:0 1.5rem;padding:0 var(--space-6);position:relative}.hero-content{align-items:center;display:grid;gap:4rem;gap:var(--space-16);grid-template-columns:1fr 1fr;padding:2rem}.hero-text{z-index:2}.greeting{color:#e2e8f0;color:var(--text-secondary);font-size:1.125rem;font-size:var(--font-lg)}.greeting,.name{display:block;margin-bottom:.5rem;margin-bottom:var(--space-2)}.name{color:#fff;color:var(--text-primary);font-size:3rem;font-size:var(--font-5xl);font-weight:700}.role{color:#3b82f6;color:var(--primary-color);display:block;font-size:1.5rem;font-size:var(--font-2xl);font-weight:600;min-height:40px}.hero-description{color:#e2e8f0;color:var(--text-secondary);font-size:1.125rem;font-size:var(--font-lg);line-height:1.7;margin:2rem 0;margin:var(--space-8) 0}.hero-buttons{display:flex;flex-wrap:wrap;gap:1rem;gap:var(--space-4)}.hero-metrics{border-bottom:1px solid #334155;border-bottom:1px solid var(--bg-tertiary);border-top:1px solid #334155;border-top:1px solid var(--bg-tertiary);display:flex;gap:2rem;gap:var(--space-8);margin:2rem 0;margin:var(--space-8) 0;padding:1.5rem 0;padding:var(--space-6) 0}.metric{align-items:center;display:flex;flex-direction:column;min-width:100px;text-align:center}.metric-number{background:linear-gradient(135deg,#3b82f6,#06b6d4);background:var(--gradient-primary);-webkit-background-clip:text;font-size:1.875rem;font-size:var(--font-3xl);font-weight:700;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}.metric-label{color:#e2e8f0;color:var(--text-secondary);font-size:.875rem;font-size:var(--font-sm);font-weight:500;margin-top:.5rem;margin-top:var(--space-2)}.hero-visual{align-items:center;display:flex;justify-content:center}.code-window{background:#1e293b;background:var(--bg-code);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);box-shadow:var(--shadow-xl);max-width:500px;overflow:hidden;width:100%}.code-header{align-items:center;background:#2d3748;display:flex;gap:1rem;gap:var(--space-4);padding:1rem;padding:var(--space-4)}.code-dots{display:flex;gap:.5rem;gap:var(--space-2)}.dot{border-radius:50%;height:12px;width:12px}.dot.red{background:#ef4444}.dot.yellow{background:#f59e0b}.dot.green{background:#10b981}.code-title{color:#e2e8f0}.code-content,.code-title{font-family:JetBrains Mono,monospace;font-family:var(--font-mono);font-size:.875rem;font-size:var(--font-sm)}.code-content{line-height:1.6;overflow-x:auto;padding:1.5rem;padding:var(--space-6)}.code-content code{color:#e2e8f0}.keyword{color:#c084fc}.variable{color:#60a5fa}.property{color:#34d399}.string{color:#fbbf24}.scroll-indicator{align-items:center;animation:bounce 2s infinite;bottom:2rem;bottom:var(--space-8);color:#94a3b8;color:var(--text-muted);display:flex;flex-direction:column;gap:.5rem;gap:var(--space-2);left:50%;position:absolute;transform:translateX(-50%)}.scroll-arrow{border:2px solid #94a3b8;border:2px solid var(--text-muted);border-left:none;border-top:none;height:24px;transform:rotate(45deg);width:24px}@keyframes bounce{0%,20%,50%,80%,to{transform:translateX(-50%) translateY(0)}40%{transform:translateX(-50%) translateY(-10px)}60%{transform:translateX(-50%) translateY(-5px)}}.about{background:#1e293b;background:var(--bg-secondary);padding:5rem 0;padding:var(--space-20) 0}.about-content{align-items:start;display:grid;gap:4rem;gap:var(--space-16);grid-template-columns:2fr 1fr}.intro-highlight{background:linear-gradient(135deg,#3b82f6,#1e293b);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:.75rem;border-radius:var(--radius-xl);color:#fff;margin-bottom:2rem;margin-bottom:var(--space-8);padding:2rem;padding:var(--space-8);text-align:center}.role-title{color:#fff;font-size:1.5rem;font-size:var(--font-2xl);font-weight:700;margin:0 0 .5rem;margin:0 0 var(--space-2) 0}.role-subtitle{font-size:var(--font-md);font-weight:500;margin:0;opacity:.9}.about-description p{color:#e2e8f0;color:var(--text-secondary);font-size:1.125rem;font-size:var(--font-lg);line-height:1.7;margin-bottom:1.5rem;margin-bottom:var(--space-6)}.experience-highlights{background:#0f172a;background:var(--bg-primary);border-left:4px solid #3b82f6;border-left:4px solid var(--primary-color);border-radius:.5rem;border-radius:var(--radius-lg);margin-top:2rem;margin-top:var(--space-8);padding:1.5rem;padding:var(--space-6)}.experience-highlights h4{color:#fff;color:var(--text-primary);font-size:1.125rem;font-size:var(--font-lg);font-weight:600;margin:0 0 1rem;margin:0 0 var(--space-4) 0}.highlight-list{list-style:none;margin:0;padding:0}.highlight-list li{align-items:center;color:#e2e8f0;color:var(--text-secondary);display:flex;font-size:var(--font-md);margin-bottom:.75rem;margin-bottom:var(--space-3)}.highlight-list li i{color:#3b82f6;color:var(--primary-color);margin-right:.75rem;margin-right:var(--space-3);width:20px}.about-sidebar{display:flex;flex-direction:column;gap:2rem;gap:var(--space-8)}.about-stats{display:grid;gap:1rem;gap:var(--space-4);grid-template-columns:1fr}.stat{background:#0f172a;background:var(--bg-primary);border:1px solid rgba(79,70,229,.1);border-radius:.5rem;border-radius:var(--radius-lg);box-shadow:0 1px 2px 0 rgba(0,0,0,.05);box-shadow:var(--shadow-sm);padding:1.5rem;padding:var(--space-6);text-align:center;transition:all none;transition:all var(--transition-normal)}.stat:hover{border-color:rgba(79,70,229,.3);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);box-shadow:var(--shadow-md)}.stat-number{color:#3b82f6;color:var(--primary-color);display:block;font-size:1.5rem;font-size:var(--font-2xl);font-weight:700}.stat-label{color:#e2e8f0;color:var(--text-secondary);font-size:.875rem;font-size:var(--font-sm);font-weight:500;margin-top:.25rem;margin-top:var(--space-1)}.companies-worked{background:#0f172a;background:var(--bg-primary);border:1px solid rgba(79,70,229,.1);border-radius:.5rem;border-radius:var(--radius-lg);padding:1.5rem;padding:var(--space-6)}.companies-worked h4{color:#fff;color:var(--text-primary);font-size:var(--font-md);font-weight:600;margin:0 0 1rem;margin:0 0 var(--space-4) 0}.company-list{display:flex;flex-direction:column;gap:.75rem;gap:var(--space-3)}.company-item{align-items:center;border-radius:.375rem;border-radius:var(--radius-md);display:flex;padding:.5rem;padding:var(--space-2);transition:all none;transition:all var(--transition-fast)}.company-item:hover{background:#1e293b;background:var(--bg-secondary)}.company-item i{color:#3b82f6;color:var(--primary-color);margin-right:.75rem;margin-right:var(--space-3);width:16px}.company-item i,.company-item span{font-size:.875rem;font-size:var(--font-sm)}.company-item span{color:#e2e8f0;color:var(--text-secondary);font-weight:500}.skills{background:#0f172a;background:var(--bg-primary);padding:5rem 0;padding:var(--space-20) 0;position:relative}.skills:before{background:radial-gradient(ellipse at top,rgba(79,70,229,.05) 0,transparent 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.skills-content{display:grid;gap:3rem;gap:var(--space-12);grid-template-columns:repeat(auto-fit,minmax(380px,1fr));margin:0 auto;max-width:1400px;position:relative;z-index:1}.skills-category{background:linear-gradient(145deg,#1e293b,rgba(30,30,45,.9));background:linear-gradient(145deg,var(--bg-secondary),rgba(30,30,45,.9));border:1px solid rgba(79,70,229,.2);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 10px 30px rgba(0,0,0,.3),0 1px 8px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.1);overflow:hidden;padding:2.5rem;padding:var(--space-10);position:relative;transition:all var(--transition-medium)}.skills-category:before{background:linear-gradient(135deg,#3b82f6,#06b6d4);background:var(--gradient-primary);border-radius:.75rem .75rem 0 0;border-radius:var(--radius-xl) var(--radius-xl) 0 0;content:"";height:3px;left:0;position:absolute;right:0;top:0}.skills-category:hover{border-color:rgba(79,70,229,.4);box-shadow:0 20px 40px rgba(0,0,0,.4),0 2px 12px rgba(0,0,0,.3),inset 0 1px 0 hsla(0,0%,100%,.15)}.category-title{color:#fff;color:var(--text-primary);font-size:1.25rem;font-size:var(--font-xl);font-weight:700;margin-bottom:2rem;margin-bottom:var(--space-8);padding-bottom:1rem;padding-bottom:var(--space-4);position:relative;text-align:center}.category-title:after{background:linear-gradient(135deg,#3b82f6,#06b6d4);background:var(--gradient-primary);border-radius:.25rem;border-radius:var(--radius-sm);bottom:0;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:40px}.skill-item{background:hsla(0,0%,100%,.02);border:1px solid transparent;border-radius:.5rem;border-radius:var(--radius-lg);margin-bottom:2rem;margin-bottom:var(--space-8);padding:1rem;padding:var(--space-4);transition:all none;transition:all var(--transition-fast)}.skill-item:hover{background:hsla(0,0%,100%,.05);border-color:rgba(79,70,229,.3);transform:translateX(5px)}.skill-item:last-child{margin-bottom:0}.skill-info{justify-content:space-between;margin-bottom:.5rem;margin-bottom:var(--space-2)}.skill-info,.skill-name{align-items:center;display:flex}.skill-name{color:#fff;color:var(--text-primary);font-size:var(--font-md);font-weight:600;position:relative}.skill-name i{font-size:1.1em;margin-right:10px;text-align:center;width:20px}.skill-icon-angular{color:#dd0031}.skill-icon-typescript{color:#3178c6}.skill-icon-javascript{color:#f7df1e}.skill-icon-java{color:#ed8b00}.skill-icon-spring{color:#6db33f}.skill-icon-node{color:#393}.skill-icon-aws{color:#f90}.skill-icon-docker{color:#2496ed}.skill-icon-git{color:#f05032}.skill-level{border:1px solid;border-radius:.375rem;border-radius:var(--radius-md);font-size:.875rem;font-size:var(--font-sm);font-weight:700;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.skill-level.expert{background:rgba(16,185,129,.1);border-color:rgba(16,185,129,.3);color:#10b981}.skill-level.advanced{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.3);color:#3b82f6}.skill-level.intermediate{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.3);color:#f59e0b}.skill-description{color:#e2e8f0;color:var(--text-secondary);font-size:.875rem;font-size:var(--font-sm);font-style:italic;line-height:1.4;margin-top:.5rem;margin-top:var(--space-2)}.skill-item.expert{border-left:3px solid #10b981}.skill-item.advanced{border-left:3px solid #3b82f6}.skill-item.intermediate{border-left:3px solid #f59e0b}@media (max-width:768px){.skills-content{gap:2rem;gap:var(--space-8);grid-template-columns:1fr}.skills-category{padding:1.5rem;padding:var(--space-6)}.category-title{font-size:1.125rem;font-size:var(--font-lg)}}.projects{background:#1e293b;background:var(--bg-secondary);padding:5rem 0;padding:var(--space-20) 0}.projects-filter{display:flex;flex-wrap:wrap;gap:1rem;gap:var(--space-4);justify-content:center;margin-bottom:3rem;margin-bottom:var(--space-12)}.filter-btn{background:#0f172a;background:var(--bg-primary);border:2px solid #334155;border:2px solid var(--bg-tertiary);border-radius:.5rem;border-radius:var(--radius-lg);color:#fff;color:var(--text-primary);cursor:pointer;font-weight:500;padding:.75rem 1.5rem;padding:var(--space-3) var(--space-6);transition:all none;transition:all var(--transition-fast)}.filter-btn.active,.filter-btn:hover{background:#3b82f6;background:var(--primary-color);border-color:#3b82f6;border-color:var(--primary-color);color:#fff}.project-card{background:#0f172a;background:var(--bg-primary);border:1px solid #334155;border:1px solid var(--bg-tertiary);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);box-shadow:var(--shadow-md);overflow:hidden;transition:all none;transition:all var(--transition-normal)}.project-card:hover{border-color:#06b6d4;border-color:var(--accent-color);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);box-shadow:var(--shadow-xl)}.project-image{background:#334155;background:var(--bg-tertiary);height:160px;overflow:hidden;position:relative}.project-overlay{align-items:center;background:transparent;display:flex;height:auto;justify-content:center;opacity:1;pointer-events:auto;position:absolute;right:.75rem;right:var(--space-3);top:.75rem;top:var(--space-3);transition:all none;transition:all var(--transition-normal);width:auto;z-index:20}.project-card:hover .project-overlay{opacity:1}.project-links{gap:.5rem;gap:var(--space-2);opacity:1}.project-link,.project-links{display:flex;pointer-events:auto}.project-link{align-items:center;background:hsla(0,0%,100%,.9);border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.2);height:36px;justify-content:center;position:relative;text-decoration:none;transition:all none;transition:all var(--transition-fast);width:36px;z-index:30}.project-link,.project-link:hover{color:#3b82f6;color:var(--primary-color)}.project-link:hover{background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.3)}.project-placeholder{align-items:center;color:#94a3b8;color:var(--text-muted);display:flex;font-size:3rem;height:100%;justify-content:center;pointer-events:none;position:relative;width:100%;z-index:1}.project-content{padding:1rem;padding:var(--space-4)}.project-title{color:#fff;color:var(--text-primary);font-size:1.125rem;font-size:var(--font-lg);font-weight:600;line-height:1.4;margin-bottom:.5rem;margin-bottom:var(--space-2)}.project-description{color:#e2e8f0;color:var(--text-secondary);display:-webkit-box;font-size:.875rem;font-size:var(--font-sm);-webkit-line-clamp:2;line-clamp:2;line-height:1.5;-webkit-box-orient:vertical;overflow:hidden}.project-description,.project-tech{margin-bottom:.75rem;margin-bottom:var(--space-3)}.project-tech{display:flex;flex-wrap:wrap;gap:.5rem;gap:var(--space-2)}.tech-tag{background:#1e293b;background:var(--bg-secondary);border:1px solid #334155;border:1px solid var(--bg-tertiary);border-radius:.375rem;border-radius:var(--radius-md);color:#fff;color:var(--text-primary);font-size:.75rem;font-size:var(--font-xs);font-weight:500;padding:.25rem .5rem;padding:var(--space-1) var(--space-2);transition:all none;transition:all var(--transition-fast)}.tech-tag:hover{background:#06b6d4;background:var(--accent-color);border-color:#06b6d4;border-color:var(--accent-color)}.project-meta{align-items:center;border-top:1px solid #334155;border-top:1px solid var(--bg-tertiary);color:#e2e8f0;color:var(--text-secondary);display:flex;font-size:.75rem;font-size:var(--font-xs);justify-content:space-between;margin-top:.5rem;margin-top:var(--space-2);padding-top:.5rem;padding-top:var(--space-2)}.project-date{font-weight:500}.project-license{background:#334155;background:var(--bg-tertiary);border-radius:.25rem;border-radius:var(--radius-sm);font-size:10px;font-weight:600;padding:2px 6px}.experience{background:#0f172a;background:var(--bg-primary);padding:5rem 0;padding:var(--space-20) 0}.timeline{margin:0 auto;max-width:800px;position:relative}.timeline:before{background:#334155;background:var(--bg-tertiary);bottom:0;content:"";left:30px;position:absolute;top:0;width:2px}.timeline-item{margin-bottom:3rem;margin-bottom:var(--space-12);padding-left:5rem;padding-left:var(--space-20);position:relative}.timeline-item:before{background:#3b82f6;background:var(--primary-color);border:4px solid #0f172a;border:4px solid var(--bg-primary);border-radius:50%;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);box-shadow:var(--shadow-md);content:"";height:18px;left:21px;position:absolute;top:8px;width:18px}.timeline-date{color:#3b82f6;color:var(--primary-color);font-size:.875rem;font-size:var(--font-sm);font-weight:600;left:-120px;position:absolute;top:0}.timeline-content{background:#1e293b;background:var(--bg-secondary);border-radius:.5rem;border-radius:var(--radius-lg);box-shadow:0 1px 2px 0 rgba(0,0,0,.05);box-shadow:var(--shadow-sm);padding:1.5rem;padding:var(--space-6)}.timeline-title{color:#fff;color:var(--text-primary);font-size:1.25rem;font-size:var(--font-xl);font-weight:600;margin-bottom:.5rem;margin-bottom:var(--space-2)}.timeline-company{color:#3b82f6;color:var(--primary-color);font-weight:500}.timeline-company,.timeline-description{margin-bottom:1rem;margin-bottom:var(--space-4)}.timeline-description{color:#e2e8f0;color:var(--text-secondary);line-height:1.6}.timeline-skills{display:flex;flex-wrap:wrap;gap:.5rem;gap:var(--space-2)}.skill-badge{background:#3b82f6;background:var(--primary-color);border-radius:.375rem;border-radius:var(--radius-md);color:#fff;font-size:.875rem;font-size:var(--font-sm);font-weight:500;padding:.25rem .75rem;padding:var(--space-1) var(--space-3)}.contact{background:linear-gradient(135deg,#0f172a,#1e293b);background:linear-gradient(135deg,var(--bg-primary) 0,var(--bg-secondary) 100%);padding:5rem 0;padding:var(--space-20) 0;position:relative}.contact:before{background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3Cpattern id='a' width='10' height='10' patternUnits='userSpaceOnUse'%3E%3Cpath fill='none' stroke='rgba(79,70,229,0.05)' d='M10 0H0v10'/%3E%3C/pattern%3E%3C/defs%3E%3Cpath fill='url(%23a)' d='M0 0h100v100H0z'/%3E%3C/svg%3E");bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.contact .container{position:relative;z-index:1}.value-proposition{margin-bottom:4rem;margin-bottom:var(--space-16)}.value-cards{display:grid;gap:2rem;gap:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:3rem;margin-bottom:var(--space-12)}.value-card{background:#1e293b;background:var(--bg-secondary);border:1px solid rgba(79,70,229,.1);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 10px 30px rgba(0,0,0,.1),0 1px 8px rgba(0,0,0,.1);overflow:hidden;padding:2rem;padding:var(--space-8);position:relative;transition:all var(--transition-medium)}.value-card:before{background:linear-gradient(135deg,#3b82f6,#06b6d4);background:var(--gradient-primary);content:"";height:3px;left:0;position:absolute;right:0;top:0}.value-card:hover{border-color:rgba(79,70,229,.3);box-shadow:0 20px 40px rgba(0,0,0,.15),0 2px 12px rgba(0,0,0,.1)}.value-icon{align-items:center;background:linear-gradient(135deg,#3b82f6,#06b6d4);background:var(--gradient-primary);border-radius:.5rem;border-radius:var(--radius-lg);display:flex;height:60px;justify-content:center;margin-bottom:1.5rem;margin-bottom:var(--space-6);width:60px}.value-card h3,.value-icon{color:#fff;font-size:1.25rem;font-size:var(--font-xl)}.value-card h3{color:var(--text-primary);font-weight:700;margin-bottom:1rem;margin-bottom:var(--space-4)}.value-card p{color:#e2e8f0;color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem;margin-bottom:var(--space-6)}.value-list{list-style:none;margin:0;padding:0}.value-list li{color:#e2e8f0;color:var(--text-secondary);font-size:.875rem;font-size:var(--font-sm);margin-bottom:.5rem;margin-bottom:var(--space-2);padding-left:1.5rem;padding-left:var(--space-6);position:relative}.value-list li:before{color:#3b82f6;color:var(--primary-color);content:"✓";font-weight:700;left:0;position:absolute}.contact-content{margin:0 auto;max-width:1200px}.contact-methods{display:grid;gap:3rem;gap:var(--space-12);grid-template-columns:2fr 1fr;margin-bottom:4rem;margin-bottom:var(--space-16)}.contact-primary h3{color:#fff;color:var(--text-primary);font-size:1.25rem;font-size:var(--font-xl);font-weight:700;margin-bottom:2rem;margin-bottom:var(--space-8);text-align:center}.contact-options{display:grid;gap:1.5rem;gap:var(--space-6)}.contact-method{align-items:center;background:#1e293b;background:var(--bg-secondary);border:1px solid rgba(79,70,229,.1);border-radius:.5rem;border-radius:var(--radius-lg);display:flex;gap:1rem;gap:var(--space-4);overflow:hidden;padding:1.5rem;padding:var(--space-6);position:relative;text-decoration:none;transition:all var(--transition-medium)}.contact-method:before{background:linear-gradient(90deg,transparent,rgba(79,70,229,.1),transparent);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.contact-method:hover:before{left:100%}.contact-method:hover{border-color:rgba(79,70,229,.3);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);box-shadow:var(--shadow-md);transform:translateX(8px)}.method-icon{align-items:center;border-radius:.5rem;border-radius:var(--radius-lg);color:#fff;display:flex;flex-shrink:0;font-size:1.125rem;font-size:var(--font-lg);height:50px;justify-content:center;width:50px}.contact-method.email .method-icon{background:linear-gradient(135deg,#ea4335,#fbbc04)}.contact-method.whatsapp .method-icon{background:linear-gradient(135deg,#25d366,#128c7e)}.contact-method.linkedin .method-icon{background:linear-gradient(135deg,#0077b5,#00a0dc)}.contact-method.github .method-icon{background:linear-gradient(135deg,#333,#24292e)}.method-content h4{color:#fff;color:var(--text-primary);font-weight:600}.method-content h4,.method-content p{margin-bottom:.25rem;margin-bottom:var(--space-1)}.method-content p{color:#e2e8f0;color:var(--text-secondary);font-size:.875rem;font-size:var(--font-sm)}.method-note{color:#3b82f6;color:var(--primary-color);font-size:.75rem;font-size:var(--font-xs);font-style:italic}.contact-secondary{display:flex;flex-direction:column;gap:2rem;gap:var(--space-8)}.contact-info-card,.social-follow{background:#1e293b;background:var(--bg-secondary);border:1px solid rgba(79,70,229,.1);border-radius:.5rem;border-radius:var(--radius-lg);padding:1.5rem;padding:var(--space-6)}.contact-info-card h4,.social-follow h4{color:#fff;color:var(--text-primary);font-size:var(--font-md);font-weight:600;margin-bottom:1rem;margin-bottom:var(--space-4)}.info-items{flex-direction:column}.info-item,.info-items{display:flex;gap:.75rem;gap:var(--space-3)}.info-item{align-items:center;color:#e2e8f0;color:var(--text-secondary);font-size:.875rem;font-size:var(--font-sm)}.info-item i{color:#3b82f6;color:var(--primary-color);width:16px}.social-links{display:flex;gap:1rem;gap:var(--space-4)}.social-link{align-items:center;background:#0f172a;background:var(--bg-primary);border:1px solid rgba(79,70,229,.1);border-radius:.5rem;border-radius:var(--radius-lg);display:flex;flex:1;flex-direction:column;gap:.5rem;gap:var(--space-2);padding:1rem;padding:var(--space-4);text-decoration:none;transition:all none;transition:all var(--transition-fast)}.social-link:hover{border-color:rgba(79,70,229,.3);transform:translateY(-4px)}.social-link.twitter i{color:#1da1f2}.social-link.instagram i{color:#e4405f}.social-link span{color:#e2e8f0;color:var(--text-secondary);font-size:.75rem;font-size:var(--font-xs)}.call-to-action{background:linear-gradient(135deg,#3b82f6,#1e293b);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:.75rem;border-radius:var(--radius-xl);color:#fff;overflow:hidden;padding:3rem;padding:var(--space-12);position:relative;text-align:center}.call-to-action:before{animation:float 20s linear infinite;background:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="2" fill="rgba(255,255,255,0.1)"/></svg>');background-size:30px 30px;bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes float{0%{transform:translateX(-30px) translateY(-30px)}to{transform:translateX(30px) translateY(30px)}}.cta-content{position:relative;z-index:1}.cta-content h3{font-size:1.5rem;font-size:var(--font-2xl);font-weight:700;margin-bottom:1rem;margin-bottom:var(--space-4)}.cta-content p{line-height:1.6;margin-bottom:2rem;margin-bottom:var(--space-8);opacity:.9}.cta-button,.cta-content p{font-size:1.125rem;font-size:var(--font-lg)}.cta-button{align-items:center;background:#fff;border-radius:.5rem;border-radius:var(--radius-lg);box-shadow:0 4px 15px rgba(0,0,0,.2);color:#3b82f6;color:var(--primary-color);display:inline-flex;font-weight:600;gap:.75rem;gap:var(--space-3);overflow:hidden;padding:1rem 2rem;padding:var(--space-4) var(--space-8);position:relative;text-decoration:none;transition:all none;transition:all var(--transition-fast)}.cta-button i{color:#25d366;font-size:1.25rem;font-size:var(--font-xl)}.cta-button:before{background:linear-gradient(90deg,transparent,rgba(37,211,102,.2),transparent);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.cta-button:hover:before{left:100%}.cta-button:hover{background:#f8fffe;box-shadow:0 8px 25px rgba(0,0,0,.3)}@media (max-width:768px){.value-cards{gap:1.5rem;gap:var(--space-6);grid-template-columns:1fr}.contact-methods{gap:2rem;gap:var(--space-8);grid-template-columns:1fr}.contact-secondary{order:-1}.social-links{flex-direction:column}.call-to-action{padding:2rem;padding:var(--space-8)}.cta-content h3{font-size:1.25rem;font-size:var(--font-xl)}.cta-content p{font-size:var(--font-md)}}.footer{background:#fff;background:var(--text-primary);color:#0f172a;color:var(--bg-primary);padding:2rem 0;padding:var(--space-8) 0;text-align:center}.footer-content p{margin-bottom:.5rem;margin-bottom:var(--space-2)}.footer-quote{font-style:italic;opacity:.8}.scroll-to-top{background:#06b6d4;background:var(--accent-color);border:none;border-radius:50%;bottom:30px;box-shadow:0 4px 12px rgba(6,182,212,.3);color:#fff;cursor:pointer;font-size:1.2rem;height:50px;opacity:0;position:fixed;right:30px;transform:translateY(20px);transition:all .3s cubic-bezier(.4,0,.2,1);visibility:hidden;width:50px;z-index:1000}.scroll-to-top:hover{background:#3b82f6;background:var(--primary-color);box-shadow:0 6px 20px rgba(59,130,246,.4);transform:translateY(0) scale(1.1)}.scroll-to-top.show{opacity:1;transform:translateY(0);visibility:visible}.scroll-to-top:active{transform:translateY(0) scale(.95)}.scroll-to-top.show{animation:pulseIn .6s ease-out}@keyframes pulseIn{0%{opacity:0;transform:translateY(20px) scale(.8)}50%{transform:translateY(-5px) scale(1.05)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:768px){.scroll-to-top{bottom:20px;font-size:1.1rem;height:45px;right:20px;width:45px}}.cursor{background:#3b82f6;background:var(--primary-color);border-radius:50%;height:8px;transition:transform .1s ease;width:8px;z-index:9999}.cursor,.cursor-follower{pointer-events:none;position:fixed}.cursor-follower{border:2px solid #3b82f6;border:2px solid var(--primary-color);border-radius:50%;height:32px;opacity:.5;transition:all .3s ease;width:32px;z-index:9998}*{box-sizing:border-box;max-width:100%}body{overflow-x:hidden}.contact-content,.container,.hero-container,.nav-container,.skills-content{box-sizing:border-box;margin:0 auto;max-width:100%;padding-left:1rem;padding-left:var(--space-4);padding-right:1rem;padding-right:var(--space-4);width:100%}.container{max-width:1200px}@media (max-width:768px){.about.section-animate,.contact.section-animate,.experience.section-animate,.hero.section-animate,.projects.section-animate,.section-animate,.section-animate.animate-in,.skills.section-animate{animation:none!important;opacity:1!important;transform:none!important;transition:none!important}.container{overflow-x:hidden}.container,.nav-container{max-width:100%;padding:0 1rem;padding:0 var(--space-4)}.nav-menu{display:none}.hamburger{display:flex}.nav-actions{gap:.25rem;gap:var(--space-1)}.hero-content{gap:2rem;gap:var(--space-8);grid-template-columns:1fr;max-width:100%;text-align:center}.hero-metrics{flex-direction:row;flex-wrap:wrap;gap:1rem;gap:var(--space-4);justify-content:space-around;max-width:100%}.metric{flex:1 1 45%;max-width:45%;min-width:auto}.metric-number{font-size:1.25rem;font-size:var(--font-xl)}.hero-buttons{flex-direction:column;gap:.75rem;gap:var(--space-3)}.btn{justify-content:center;max-width:100%;width:100%}.about-content{gap:2rem;gap:var(--space-8);grid-template-columns:1fr;max-width:100%}.intro-highlight{max-width:100%;padding:1.5rem;padding:var(--space-6)}.role-title{font-size:1.25rem;font-size:var(--font-xl)}.about-description p{font-size:var(--font-md)}.about-sidebar{order:-1}.about-stats{gap:.5rem;gap:var(--space-2);grid-template-columns:repeat(3,1fr);max-width:100%}.stat{max-width:100%;padding:1rem;padding:var(--space-4)}.stat-number{font-size:1.25rem;font-size:var(--font-xl)}.skills-content{gap:2rem;gap:var(--space-8);grid-template-columns:1fr;max-width:100%}.skills-category{max-width:100%;padding:1.5rem;padding:var(--space-6)}.category-title{font-size:1.125rem;font-size:var(--font-lg)}.projects-filter{align-items:center;flex-direction:column;gap:.75rem;gap:var(--space-3)}.project-card,.timeline{max-width:100%}.timeline-date{margin-bottom:.5rem;margin-bottom:var(--space-2);position:static}.timeline-item{max-width:100%;padding-left:3rem;padding-left:var(--space-12)}.timeline:before{left:15px}.timeline-item:before{left:6px}.value-cards{gap:1.5rem;gap:var(--space-6)}.contact-methods,.value-cards{grid-template-columns:1fr;max-width:100%}.contact-methods{gap:2rem;gap:var(--space-8)}.contact-secondary{order:-1}.social-links{flex-direction:column;gap:1rem;gap:var(--space-4)}.call-to-action{max-width:100%;padding:2rem;padding:var(--space-8)}.cta-content h3{font-size:1.25rem;font-size:var(--font-xl)}.cta-content p{font-size:var(--font-md)}}@media (max-width:480px){.container{max-width:100%}.container,.nav-container{padding:0 .75rem;padding:0 var(--space-3)}.logo-avatar{height:35px;width:35px}.logo-name{font-size:.875rem;font-size:var(--font-sm)}.name{font-size:2.25rem!important;font-size:var(--font-4xl)!important}.hero-metrics{flex-direction:column;gap:1rem;gap:var(--space-4)}.metric{flex:1 1 auto;margin-bottom:1rem;margin-bottom:var(--space-4);max-width:100%}.about-stats{gap:1rem;gap:var(--space-4);grid-template-columns:1fr}.project-card{margin-bottom:1rem;margin-bottom:var(--space-4);max-width:100%}.contact-methods{gap:1.5rem;gap:var(--space-6)}.value-cards{gap:1rem;gap:var(--space-4)}}