:root{--font-heading:"Outfit", "Inter", sans-serif;--font-body:"Inter", sans-serif;--bg-primary-hsl:224, 71%, 4%;--bg-secondary-hsl:224, 71%, 7%;--bg-glass-hsl:224, 71%, 8%;--text-primary-hsl:210, 40%, 98%;--text-secondary-hsl:215, 20%, 65%;--text-muted-hsl:218, 11%, 47%;--accent-hsl:217, 91%, 60%;--accent-sec-hsl:188, 86%, 53%;--accent-green-hsl:142, 71%, 45%;--accent-rgb:59, 130, 246;--accent-sec-rgb:6, 182, 212;--accent-green-rgb:16, 185, 129;--border-hsl:217, 32%, 18%;--border-glass-hsl:217, 32%, 24%;--shadow-color:#0009;--glow-color:rgba(var(--accent-rgb), .15);--header-height:80px;--border-radius-sm:8px;--border-radius-md:16px;--border-radius-lg:24px;--transition-fast:.2s cubic-bezier(.4, 0, .2, 1);--transition-normal:.4s cubic-bezier(.4, 0, .2, 1);--transition-slow:.6s cubic-bezier(.4, 0, .2, 1)}html[data-theme=light]{--bg-primary-hsl:210, 40%, 96%;--bg-secondary-hsl:210, 40%, 98%;--bg-glass-hsl:0, 0%, 100%;--text-primary-hsl:224, 71%, 4%;--text-secondary-hsl:215, 25%, 27%;--text-muted-hsl:215, 16%, 47%;--accent-hsl:221, 83%, 53%;--accent-sec-hsl:188, 90%, 40%;--accent-rgb:37, 99, 235;--accent-sec-rgb:8, 145, 178;--border-hsl:214, 32%, 85%;--border-glass-hsl:214, 32%, 90%;--shadow-color:#1f268714;--glow-color:rgba(var(--accent-rgb), .05)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{background-color:hsl(var(--bg-primary-hsl));color:hsl(var(--text-primary-hsl));font-family:var(--font-body);transition:background-color var(--transition-normal), color var(--transition-normal);line-height:1.6;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;transition:color var(--transition-fast);text-decoration:none}button,input,textarea{font-family:inherit;font-size:inherit;background:0 0;border:none;outline:none}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:hsl(var(--bg-primary-hsl))}::-webkit-scrollbar-thumb{background:hsl(var(--border-glass-hsl));border:2px solid hsl(var(--bg-primary-hsl));border-radius:10px}::-webkit-scrollbar-thumb:hover{background:hsl(var(--accent-hsl))}.custom-cursor{border:2px solid hsl(var(--accent-hsl));pointer-events:none;z-index:9999;width:20px;height:20px;transition:width var(--transition-fast), height var(--transition-fast), background-color var(--transition-fast);border-radius:50%;display:none;position:fixed;transform:translate(-50%,-50%)}.custom-cursor-dot{background-color:hsl(var(--accent-sec-hsl));pointer-events:none;z-index:9999;border-radius:50%;width:6px;height:6px;display:none;position:fixed;transform:translate(-50%,-50%)}@media (pointer:fine){.custom-cursor,.custom-cursor-dot{display:block}}.hover-active{background-color:rgba(var(--accent-rgb), .1);border-color:hsl(var(--accent-sec-hsl));width:40px;height:40px}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 24px}.glass-card{background:hsla(var(--bg-glass-hsl), .6);-webkit-backdrop-filter:blur(12px)saturate(160%);border:1px solid hsla(var(--border-glass-hsl), .4);border-radius:var(--border-radius-md);box-shadow:0 8px 32px 0 var(--shadow-color);transition:transform var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal)}.glass-card:hover{border-color:hsla(var(--accent-hsl), .3);box-shadow:0 12px 40px 0 var(--glow-color)}.btn{border-radius:var(--border-radius-sm);cursor:pointer;transition:transform var(--transition-fast), box-shadow var(--transition-fast), background-color var(--transition-fast);justify-content:center;align-items:center;gap:8px;padding:12px 28px;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn-primary{background:linear-gradient(135deg, hsl(var(--accent-hsl)), hsl(var(--accent-sec-hsl)));color:#fff;box-shadow:0 4px 14px 0 rgba(var(--accent-rgb), .4)}.btn-primary:hover{box-shadow:0 6px 20px 0 rgba(var(--accent-rgb), .6);transform:translateY(-2px)}.btn-outline{border:1px solid hsl(var(--border-glass-hsl));color:hsl(var(--text-primary-hsl));background:hsla(var(--bg-glass-hsl), .4)}.btn-outline:hover{background:hsla(var(--accent-hsl), .1);border-color:hsl(var(--accent-hsl));color:hsl(var(--accent-hsl));transform:translateY(-2px)}.btn-small{padding:8px 18px;font-size:.875rem}.btn-full{width:100%}.btn-text{color:hsl(var(--accent-hsl));cursor:pointer;transition:gap var(--transition-fast);align-items:center;gap:6px;font-weight:600;display:inline-flex}.btn-text:hover{color:hsl(var(--accent-sec-hsl));gap:10px}.text-gradient{background:linear-gradient(135deg, hsl(var(--accent-hsl)), hsl(var(--accent-sec-hsl)));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.section{padding:100px 0;position:relative}.section-header{text-align:center;margin-bottom:60px}.section-tag{text-transform:uppercase;letter-spacing:2px;color:hsl(var(--accent-hsl));margin-bottom:8px;font-size:.85rem;font-weight:700;display:block}.section-title{font-family:var(--font-heading);color:hsl(var(--text-primary-hsl));font-size:2.25rem;font-weight:800}.title-underline{background:linear-gradient(90deg, hsl(var(--accent-hsl)), hsl(var(--accent-sec-hsl)));border-radius:2px;width:60px;height:4px;margin:12px auto 0}.header{width:100%;height:var(--header-height);z-index:1000;transition:background-color var(--transition-normal), border-color var(--transition-normal), height var(--transition-normal);border-bottom:1px solid #0000;align-items:center;display:flex;position:fixed;top:0;left:0}.blur-nav{background-color:hsla(var(--bg-primary-hsl), .8);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid hsla(var(--border-glass-hsl), .4);height:70px}.nav-container{justify-content:space-between;align-items:center;width:100%;max-width:1200px;margin:0 auto;padding:0 24px;display:flex}.logo{font-family:var(--font-heading);color:hsl(var(--text-primary-hsl));font-size:1.5rem;font-weight:800}.logo-accent{color:hsl(var(--accent-hsl))}.nav-list{gap:32px;list-style:none;display:flex}.nav-link{color:hsl(var(--text-secondary-hsl));padding:8px 0;font-size:.95rem;font-weight:500;position:relative}.nav-link:hover,.nav-link.active{color:hsl(var(--text-primary-hsl))}.nav-link:after{content:"";background:linear-gradient(90deg, hsl(var(--accent-hsl)), hsl(var(--accent-sec-hsl)));width:0;height:2px;transition:width var(--transition-fast);position:absolute;bottom:0;left:0}.nav-link:hover:after,.nav-link.active:after{width:100%}.nav-actions{align-items:center;gap:16px;display:flex}.theme-toggle{background:hsla(var(--bg-glass-hsl), .5);border:1px solid hsla(var(--border-glass-hsl), .6);width:44px;height:44px;color:hsl(var(--text-primary-hsl));cursor:pointer;transition:transform var(--transition-fast), background-color var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;display:flex}.theme-toggle:hover{background:hsla(var(--accent-hsl), .1);transform:rotate(15deg)}.sun-icon{display:none}html[data-theme=light] .sun-icon{color:#f59e0b;display:block}html[data-theme=light] .moon-icon,.mobile-toggle{display:none}.hero-section{min-height:100vh;padding-top:calc(var(--header-height) + 40px);align-items:center;display:flex;overflow:hidden}.hero-bg-gradients{z-index:-1;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.blob{filter:blur(100px);opacity:.15;border-radius:50%;animation:20s infinite alternate floatBlob;position:absolute}html[data-theme=light] .blob{opacity:.1;filter:blur(80px)}.blob-1{background:hsl(var(--accent-hsl));width:400px;height:400px;animation-delay:0s;top:-50px;right:5%}.blob-2{background:hsl(var(--accent-sec-hsl));width:350px;height:350px;animation-delay:5s;bottom:50px;left:5%}.blob-3{background:#06b6d4;width:300px;height:300px;animation-delay:10s;top:40%;left:40%}@keyframes floatBlob{0%{transform:translate(0)scale(1)}to{transform:translate(50px,50px)scale(1.1)}}.hero-container{grid-template-columns:1.2fr .8fr;align-items:center;gap:40px;display:grid}.badge-new{background:rgba(var(--accent-rgb), .1);border:1px solid rgba(var(--accent-rgb), .2);color:hsl(var(--accent-hsl));border-radius:30px;align-items:center;gap:8px;margin-bottom:24px;padding:6px 14px;font-size:.8rem;font-weight:600;display:inline-flex}.pulse-dot{background-color:hsl(var(--accent-green-hsl));border-radius:50%;width:8px;height:8px;display:inline-block;position:relative}.pulse-dot:after{content:"";background-color:inherit;border-radius:50%;width:100%;height:100%;animation:1.5s infinite pulse;position:absolute;top:0;left:0}@keyframes pulse{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(2.5)}}.hero-title{font-family:var(--font-heading);margin-bottom:16px;font-size:3.3rem;font-weight:800;line-height:1.15}.hero-subtitle{color:hsl(var(--text-secondary-hsl));margin-bottom:24px;font-size:1.5rem;font-weight:500}.hero-description{color:hsl(var(--text-muted-hsl));text-align:justify;max-width:580px;margin-bottom:36px;font-size:1.05rem}.hero-ctas{gap:16px;margin-bottom:40px;display:flex}.social-links{gap:16px;display:flex}.social-icon{border-radius:var(--border-radius-sm);background:hsla(var(--bg-glass-hsl), .4);border:1px solid hsla(var(--border-glass-hsl), .6);width:44px;height:44px;color:hsl(var(--text-secondary-hsl));transition:transform var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);justify-content:center;align-items:center;display:flex}.social-icon:hover{transform:translateY(-3px)}.social-icon.github:hover{color:#fff;background:#ffffff14;border-color:#fff6;box-shadow:0 8px 24px #ffffff1f}html[data-theme=light] .social-icon.github:hover{color:#24292e;background:#24292e0f;border-color:#24292e66;box-shadow:0 8px 24px #24292e1f}.social-icon.linkedin:hover{color:#0a66c2;background:#0a66c214;border-color:#0a66c266;box-shadow:0 8px 24px #0a66c233}.social-icon.instagram:hover{background:linear-gradient(45deg,#f0943312,#dc274312,#bc188812);border-color:#c135844d;box-shadow:0 8px 24px #c135844d}.social-icon.instagram:hover svg{fill:url(#instagram-gradient);filter:drop-shadow(0 0 5px #c1358466)}.social-icon.email:hover{color:#ea4335;background:#ea433514;border-color:#ea433566;box-shadow:0 8px 24px #ea433533}.social-icon svg{width:20px;height:20px}.hero-visual{justify-content:center;display:flex;position:relative}.profile-card-wrapper{padding:10px;position:relative}.profile-card{background:hsla(var(--bg-glass-hsl), .6);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid hsla(var(--border-glass-hsl), .4);border-radius:var(--border-radius-lg);width:320px;transition:transform var(--transition-normal);padding:16px;transform:rotate(2deg);box-shadow:0 20px 50px #0000004d}.profile-card:hover{transform:rotate(0)translateY(-5px)}.profile-image-container{border-radius:var(--border-radius-md);background:linear-gradient(135deg, hsl(var(--accent-hsl)), hsl(var(--accent-sec-hsl)));width:100%;height:300px;margin-bottom:16px;position:relative;overflow:hidden}.profile-img{object-fit:cover;width:100%;height:100%}.profile-card-info{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:4px;display:flex}.info-tag{background:hsla(var(--border-glass-hsl), .4);border:1px solid hsla(var(--border-glass-hsl), .6);color:hsl(var(--text-secondary-hsl));transition:all var(--transition-fast);border-radius:30px;align-items:center;gap:6px;padding:6px 12px;font-size:.72rem;font-weight:600;display:inline-flex}.info-tag:hover{color:hsl(var(--text-primary-hsl));transform:translateY(-2px)}.info-tag:first-child{border-color:rgba(var(--accent-rgb), .3);background:rgba(var(--accent-rgb), .06)}.info-tag:first-child:hover{border-color:rgba(var(--accent-rgb), .8);background:rgba(var(--accent-rgb), .12);box-shadow:0 0 12px rgba(var(--accent-rgb), .2)}.info-tag:nth-child(2){border-color:rgba(var(--accent-sec-rgb), .3);background:rgba(var(--accent-sec-rgb), .06)}.info-tag:nth-child(2):hover{border-color:rgba(var(--accent-sec-rgb), .8);background:rgba(var(--accent-sec-rgb), .12);box-shadow:0 0 12px rgba(var(--accent-sec-rgb), .2)}.info-tag:nth-child(3){border-color:rgba(var(--accent-green-rgb), .3);background:rgba(var(--accent-green-rgb), .06)}.info-tag:nth-child(3):hover{border-color:rgba(var(--accent-green-rgb), .8);background:rgba(var(--accent-green-rgb), .12);box-shadow:0 0 12px rgba(var(--accent-green-rgb), .2)}.info-tag svg{width:14px;height:14px}.floating-badge{background:hsla(var(--bg-glass-hsl), .85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid hsla(var(--border-glass-hsl), .6);border-radius:var(--border-radius-md);align-items:center;gap:12px;padding:12px 18px;animation:4s ease-in-out infinite alternate floatBadge;display:flex;position:absolute;box-shadow:0 10px 25px #0003}.badge-exp{animation-delay:0s;top:20%;left:-60px}.badge-projects{animation-delay:2s;bottom:30%;right:-40px}.badge-number{font-family:var(--font-heading);color:hsl(var(--accent-hsl));font-size:1.75rem;font-weight:800}.badge-text{color:hsl(var(--text-secondary-hsl));font-size:.75rem;font-weight:500;line-height:1.2}@keyframes floatBadge{0%{transform:translateY(0)}to{transform:translateY(-12px)}}.scroll-down{opacity:.7;transition:opacity var(--transition-fast);flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.scroll-down:hover{opacity:1}.scroll-mouse{border:2px solid hsl(var(--text-secondary-hsl));border-radius:12px;width:24px;height:40px;position:relative}.scroll-wheel{background-color:hsl(var(--accent-hsl));border-radius:2px;width:4px;height:8px;animation:1.5s infinite scrollMouse;position:absolute;top:8px;left:50%;transform:translate(-50%)}@keyframes scrollMouse{0%{opacity:1;top:8px}to{opacity:0;top:24px}}.scroll-text{letter-spacing:1px;text-transform:uppercase;color:hsl(var(--text-secondary-hsl));font-size:.75rem;font-weight:600}.about-grid{grid-template-columns:1.2fr .8fr;gap:30px;display:grid}.about-text-card,.about-info-card{padding:40px}.about-text-card h3,.about-info-card h3{font-family:var(--font-heading);margin-bottom:20px;font-size:1.5rem;font-weight:700}.about-text-card p{color:hsl(var(--text-secondary-hsl));text-align:justify;margin-bottom:16px}.stats-grid{border-top:1px solid hsla(var(--border-glass-hsl), .3);grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px;padding-top:24px;display:grid}.stat-num{font-family:var(--font-heading);color:hsl(var(--accent-hsl));margin-bottom:4px;font-size:2rem;font-weight:800}.stat-label{color:hsl(var(--text-muted-hsl));font-size:.85rem;font-weight:500}.personal-info-list{flex-direction:column;gap:16px;margin-bottom:30px;list-style:none;display:flex}.personal-info-list li{border-bottom:1px dashed hsla(var(--border-glass-hsl), .3);justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.personal-info-list li:last-child{border-bottom:none}.info-label{color:hsl(var(--text-muted-hsl));align-items:center;gap:8px;font-size:.9rem;font-weight:600;display:inline-flex}.info-label i{width:16px;height:16px;color:hsl(var(--accent-hsl))}.info-value{text-align:right;color:hsl(var(--text-primary-hsl));font-size:.9rem;font-weight:500}.info-cta{justify-content:flex-end;display:flex}.skills-filter{justify-content:center;gap:12px;margin-bottom:40px;display:flex}.filter-btn{border:1px solid hsla(var(--border-glass-hsl), .6);color:hsl(var(--text-secondary-hsl));cursor:pointer;background:hsla(var(--bg-glass-hsl), .3);transition:all var(--transition-fast);border-radius:30px;padding:8px 20px;font-weight:500}.filter-btn:hover,.filter-btn.active{background:hsl(var(--accent-hsl));color:#fff;border-color:hsl(var(--accent-hsl));box-shadow:0 4px 12px rgba(var(--accent-rgb), .3)}.skills-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;display:grid}.skill-card{opacity:1;transition:transform var(--transition-normal), opacity var(--transition-normal), border-color var(--transition-fast);flex-direction:column;padding:24px;display:flex;transform:scale(1)}.skill-header{align-items:center;margin-bottom:12px;display:flex}.skill-icon{background:hsla(var(--accent-hsl), .1);width:36px;height:36px;color:hsl(var(--accent-hsl));border-radius:8px;justify-content:center;align-items:center;margin-right:12px;display:flex}.skill-name{font-weight:700;font-family:var(--font-heading);color:hsl(var(--text-primary-hsl));flex-grow:1}.skill-percent{color:hsl(var(--accent-sec-hsl));font-size:.9rem;font-weight:700}.skill-bar-wrapper{background:hsla(var(--border-glass-hsl), .4);border-radius:3px;width:100%;height:6px;margin-bottom:12px;overflow:hidden}.skill-bar{background:linear-gradient(90deg, hsl(var(--accent-hsl)), hsl(var(--accent-sec-hsl)));border-radius:3px;width:0;height:100%;transition:width 1.2s ease-in-out}.skill-desc{color:hsl(var(--text-muted-hsl));font-size:.85rem}.timeline{max-width:800px;margin:0 auto;padding-left:32px;position:relative}.timeline:before{content:"";background:linear-gradient(to bottom, hsl(var(--accent-hsl)), hsl(var(--accent-sec-hsl)), transparent);width:2px;height:calc(100% - 20px);position:absolute;top:10px;left:0}.timeline-item{margin-bottom:40px;padding:30px;position:relative}.timeline-item:last-child{margin-bottom:0}.timeline-dot{background-color:hsl(var(--bg-primary-hsl));border:4px solid hsl(var(--accent-hsl));z-index:2;width:18px;height:18px;transition:background-color var(--transition-fast), border-color var(--transition-fast);border-radius:50%;position:absolute;top:36px;left:-41px}.timeline-item:hover .timeline-dot{border-color:hsl(var(--accent-sec-hsl));background-color:hsl(var(--accent-sec-hsl))}.timeline-date{color:hsl(var(--accent-sec-hsl));text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;font-size:.85rem;font-weight:700}.job-header{border-bottom:1px solid hsla(var(--border-glass-hsl), .3);flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:16px;padding-bottom:12px;display:flex}.job-title{font-family:var(--font-heading);font-size:1.3rem;font-weight:700}.job-company{color:hsl(var(--accent-hsl));align-items:center;gap:6px;font-size:.9rem;font-weight:600;display:inline-flex}.job-duties{list-style:none}.job-duties li{color:hsl(var(--text-secondary-hsl));margin-bottom:10px;padding-left:20px;font-size:.95rem;position:relative}.job-duties li:last-child{margin-bottom:0}.job-duties li:before{content:"→";color:hsl(var(--accent-hsl));font-weight:700;position:absolute;left:0}.education-container{margin-top:100px}.education-header{margin-bottom:40px}.education-grid{grid-template-columns:1fr;max-width:800px;margin:0 auto;display:grid}.education-card{grid-template-columns:50px 1fr;gap:20px;padding:30px;display:grid;position:relative}.edu-icon{background:rgba(var(--accent-rgb), .1);width:50px;height:50px;color:hsl(var(--accent-hsl));border-radius:50%;justify-content:center;align-items:center;display:flex}.edu-content{flex-direction:column;display:flex}.edu-period{color:hsl(var(--accent-sec-hsl));margin-bottom:4px;font-size:.85rem;font-weight:700}.edu-degree{font-family:var(--font-heading);margin-bottom:4px;font-size:1.25rem;font-weight:700}.edu-school{color:hsl(var(--text-primary-hsl));margin-bottom:8px;font-weight:600}.edu-desc{color:hsl(var(--text-secondary-hsl));font-size:.9rem}.projects-filter{justify-content:center;gap:12px;margin-bottom:40px;display:flex}.proj-filter-btn{border:1px solid hsla(var(--border-glass-hsl), .6);color:hsl(var(--text-secondary-hsl));cursor:pointer;background:hsla(var(--bg-glass-hsl), .3);transition:all var(--transition-fast);border-radius:30px;padding:8px 20px;font-weight:500}.proj-filter-btn:hover,.proj-filter-btn.active{background:hsl(var(--accent-hsl));color:#fff;border-color:hsl(var(--accent-hsl));box-shadow:0 4px 12px rgba(var(--accent-rgb), .3)}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:30px;display:grid}.project-card{flex-direction:column;height:100%;display:flex;overflow:hidden}.project-thumb{border-bottom:1px solid hsla(var(--border-glass-hsl), .4);width:100%;height:200px;position:relative;overflow:hidden}.project-gradient-overlay{width:100%;height:100%;transition:transform var(--transition-normal);justify-content:center;align-items:center;display:flex}.project-card:hover .project-gradient-overlay{transform:scale(1.05)}.project-thumb-icon{color:#fff;opacity:.8;width:60px;height:60px}.project-tags{flex-wrap:wrap;gap:8px;display:flex;position:absolute;bottom:12px;left:12px}.tag{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;background:#0009;border:1px solid #ffffff1a;border-radius:4px;padding:4px 10px;font-size:.7rem;font-weight:700}.project-info{flex-direction:column;flex-grow:1;padding:24px;display:flex}.project-title{font-family:var(--font-heading);margin-bottom:10px;font-size:1.15rem;font-weight:700}.project-summary{color:hsl(var(--text-secondary-hsl));flex-grow:1;margin-bottom:20px;font-size:.88rem}.contact-grid{grid-template-columns:.9fr 1.1fr;gap:30px;display:grid}.contact-arrow-wrapper{text-align:center;justify-content:center;align-items:center;padding:40px;display:flex}.arrow-content h3{font-family:var(--font-heading);background:linear-gradient(135deg, hsl(var(--accent-hsl)), hsl(var(--accent-sec-hsl)));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:12px;font-size:1.8rem;font-weight:800}.arrow-content p{color:hsl(var(--text-muted-hsl));margin-bottom:24px;font-size:1rem}.moving-arrow{color:hsl(var(--accent-hsl));animation:1.5s ease-in-out infinite bounceRight;display:inline-flex}.moving-arrow svg{width:64px;height:64px}@keyframes bounceRight{0%,to{transform:translate(0)}50%{transform:translate(15px)}}@keyframes bounceDown{0%,to{transform:translateY(0)rotate(90deg)}50%{transform:translateY(15px)rotate(90deg)}}.contact-methods{flex-direction:column;gap:24px;display:flex}.method-item{align-items:center;gap:16px;display:flex}.method-icon{background:rgba(var(--accent-rgb), .1);width:48px;height:48px;color:hsl(var(--accent-hsl));border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.method-details{flex-direction:column;display:flex}.method-label{color:hsl(var(--text-muted-hsl));text-transform:uppercase;font-size:.8rem;font-weight:600}.method-link{color:hsl(var(--text-primary-hsl));font-size:1rem;font-weight:600}.method-link:hover{color:hsl(var(--accent-hsl))}.contact-cta-card{flex-direction:column;gap:32px;padding:40px;display:flex}.cta-card-header{text-align:center}.cta-icon-wrap{background:linear-gradient(135deg, hsl(var(--accent-hsl)), hsl(var(--accent-sec-hsl)));color:#fff;width:56px;height:56px;box-shadow:0 4px 20px rgba(var(--accent-rgb), .4);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;display:flex}.cta-icon-wrap svg{width:26px;height:26px}.cta-card-header h3{font-family:var(--font-heading);color:hsl(var(--text-primary-hsl));margin-bottom:10px;font-size:1.5rem;font-weight:700}.cta-card-header p{color:hsl(var(--text-secondary-hsl));font-size:.95rem;line-height:1.6}.cta-actions{flex-direction:column;gap:12px;display:flex}.cta-action-btn{border-radius:var(--border-radius-sm);border:1px solid hsla(var(--border-glass-hsl), .5);background:hsla(var(--bg-glass-hsl), .3);transition:transform var(--transition-fast), border-color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast);cursor:pointer;align-items:center;gap:16px;padding:14px 18px;text-decoration:none;display:flex}.cta-action-btn:hover{transform:translate(6px)}.cta-action-icon{width:42px;height:42px;transition:transform var(--transition-fast);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.cta-action-icon svg{width:20px;height:20px}.cta-action-btn:hover .cta-action-icon{transform:scale(1.1)}.cta-action-text{flex-direction:column;flex-grow:1;display:flex}.cta-action-label{text-transform:uppercase;letter-spacing:.5px;color:hsl(var(--text-muted-hsl));font-size:.78rem;font-weight:600}.cta-action-value{color:hsl(var(--text-primary-hsl));font-size:.95rem;font-weight:600}.cta-arrow{width:16px;height:16px;color:hsl(var(--text-muted-hsl));transition:transform var(--transition-fast), color var(--transition-fast);flex-shrink:0}.cta-action-btn:hover .cta-arrow{color:hsl(var(--text-primary-hsl));transform:translate(4px)}.cta-whatsapp .cta-action-icon{color:#25d366;background:#25d3661f}.cta-whatsapp:hover{background:#25d36614;border-color:#25d36680;box-shadow:0 4px 20px #25d36626}.cta-email .cta-action-icon{color:#ea4335;background:#ea43351f}.cta-email:hover{background:#ea433514;border-color:#ea433580;box-shadow:0 4px 20px #ea433526}.cta-linkedin .cta-action-icon{color:#0a66c2;background:#0a66c21f}.cta-linkedin:hover{background:#0a66c214;border-color:#0a66c280;box-shadow:0 4px 20px #0a66c226}.cta-download .cta-action-icon{background:rgba(var(--accent-rgb), .12);color:hsl(var(--accent-hsl))}.cta-download:hover{border-color:rgba(var(--accent-rgb), .5);background:rgba(var(--accent-rgb), .08);box-shadow:0 4px 20px rgba(var(--accent-rgb), .15)}.cta-availability{border-radius:var(--border-radius-sm);background:rgba(var(--accent-green-rgb), .08);border:1px solid rgba(var(--accent-green-rgb), .2);color:hsl(var(--text-secondary-hsl));align-items:center;gap:10px;padding:14px 18px;font-size:.88rem;font-weight:500;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.form-group{margin-bottom:20px}.form-group label{color:hsl(var(--text-secondary-hsl));margin-bottom:8px;font-size:.85rem;font-weight:600;display:block}.input-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:hsl(var(--text-muted-hsl));pointer-events:none;width:18px;height:18px;transition:color var(--transition-fast);position:absolute;left:16px}.input-wrapper input,.form-group textarea{border:1px solid hsla(var(--border-glass-hsl), .6);border-radius:var(--border-radius-sm);background:hsla(var(--bg-glass-hsl), .4);width:100%;color:hsl(var(--text-primary-hsl));transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:14px 16px 14px 48px}.form-group textarea{padding-left:16px}.input-wrapper input:focus,.form-group textarea:focus{border-color:hsl(var(--accent-hsl));box-shadow:0 0 0 3px var(--glow-color)}.input-wrapper input:focus+.input-icon,.input-wrapper input:focus-within~.input-icon{color:hsl(var(--accent-hsl))}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.hidden{display:none!important}.footer{border-top:1px solid hsla(var(--border-glass-hsl), .4);background:hsla(var(--bg-glass-hsl), .2);padding:40px 0}.footer-container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.footer-left p{color:hsl(var(--text-muted-hsl));font-size:.9rem}.footer-right{align-items:center;gap:12px;display:flex}.footer-link{color:hsl(var(--text-muted-hsl));font-size:.9rem}.footer-link:hover{color:hsl(var(--accent-hsl))}.separator{color:hsla(var(--border-glass-hsl), .6)}.footer-print-link{color:hsl(var(--accent-hsl));cursor:pointer;background:0 0;align-items:center;gap:6px;font-size:.9rem;font-weight:600;display:inline-flex}.footer-print-link:hover{color:hsl(var(--accent-sec-hsl))}.back-to-top{background:hsl(var(--accent-hsl));color:#fff;cursor:pointer;z-index:99;width:46px;height:46px;box-shadow:0 4px 14px rgba(var(--accent-rgb), .4);opacity:0;transition:opacity var(--transition-fast), transform var(--transition-fast), background-color var(--transition-fast);pointer-events:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:30px;right:30px;transform:translateY(20px)}.back-to-top.show{opacity:1;pointer-events:auto;transform:translateY(0)}.back-to-top:hover{background:hsl(var(--accent-sec-hsl));transform:translateY(-3px)}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000;opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity var(--transition-normal);background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}.modal-overlay.open{opacity:1;pointer-events:auto}.modal-card{width:90%;max-width:700px;max-height:90vh;transition:transform var(--transition-normal);padding:36px;position:relative;overflow-y:auto;transform:translateY(40px)}.modal-overlay.open .modal-card{transform:translateY(0)}.modal-close{background:hsla(var(--border-glass-hsl), .4);width:36px;height:36px;color:hsl(var(--text-primary-hsl));cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:20px;right:20px}.modal-close:hover{background:hsl(var(--accent-hsl));color:#fff}.modal-header-visual{border-radius:var(--border-radius-sm);justify-content:center;align-items:center;width:100%;height:240px;margin-bottom:24px;display:flex}.modal-title{font-family:var(--font-heading);margin-bottom:12px;font-size:1.75rem;font-weight:800}.modal-tags{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.modal-desc{color:hsl(var(--text-secondary-hsl));margin-bottom:24px;font-size:.95rem;line-height:1.7}.modal-bullets{margin-bottom:24px;padding-left:20px}.modal-bullets li{color:hsl(var(--text-secondary-hsl));margin-bottom:8px}.modal-links{gap:16px;display:flex}.toast-container{z-index:3000;transition:transform .5s cubic-bezier(.68,-.55,.27,1.55);position:fixed;bottom:30px;left:30px;transform:translate(-150%)}.toast-container.show{transform:translate(0)}.toast{align-items:center;gap:16px;max-width:380px;padding:16px 24px;display:flex}.toast-icon.success{color:hsl(var(--accent-green-hsl));align-items:center;font-size:1.5rem;display:flex}.toast-title{font-family:var(--font-heading);margin-bottom:2px;font-size:1rem;font-weight:700}.toast-desc{color:hsl(var(--text-secondary-hsl));font-size:.85rem}@media (width<=1024px){.hero-title{font-size:2.5rem}.about-grid,.contact-grid{grid-template-columns:1fr}.floating-badge{display:none}.info-cta{justify-content:flex-start}.moving-arrow{animation:1.5s ease-in-out infinite bounceDown}.nav-menu{top:var(--header-height);width:100%;height:calc(100vh - var(--header-height));background-color:hsla(var(--bg-primary-hsl), .95);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:left var(--transition-normal);z-index:999;border-top:1px solid hsla(var(--border-glass-hsl), .4);position:fixed;left:-100%}.nav-menu.open{left:0}.nav-list{flex-direction:column;justify-content:center;align-items:center;gap:40px;height:100%}.nav-link{font-size:1.25rem}.mobile-toggle{background:hsla(var(--bg-glass-hsl), .5);border:1px solid hsla(var(--border-glass-hsl), .6);width:44px;height:44px;color:hsl(var(--text-primary-hsl));cursor:pointer;border-radius:50%;justify-content:center;align-items:center;display:flex}.mobile-toggle:hover{background:hsla(var(--accent-hsl), .1)}.hidden{display:none}}@media (width<=768px){.section{padding:60px 0}.contact-arrow-wrapper{display:none}.contact-cta-card{gap:20px;padding:20px 16px}.cta-action-btn{gap:12px;padding:12px 14px}.cta-action-value{word-break:break-all;font-size:.85rem}.skills-grid,.projects-grid{grid-template-columns:1fr}.hero-section{padding-top:calc(var(--header-height) + 30px)}.scroll-down{display:none}.hero-title{font-size:2.7rem}.hero-container{text-align:center;flex-direction:column;display:flex}.hero-visual{order:-1;margin-top:0;margin-bottom:28px}.hero-description{margin:0 auto 36px}.hero-ctas,.social-links{justify-content:center}.profile-card{-webkit-backdrop-filter:none;width:auto;box-shadow:none;background:0 0;border:none;padding:0;transform:none}.profile-card:hover{transform:none}.profile-image-container{border:4px solid hsl(var(--accent-hsl));width:240px;height:240px;box-shadow:0 0 0 6px hsla(var(--accent-hsl), .15), 0 8px 32px rgba(var(--accent-rgb), .3);border-radius:50%;margin:0 auto}.profile-card-info{display:none}.stats-grid{text-align:center;grid-template-columns:1fr 1fr;gap:16px}.timeline{padding-left:20px}.timeline-dot{left:-29px}.form-row{grid-template-columns:1fr}.modal-card{padding:24px}.skills-filter,.projects-filter{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:24px}.filter-btn,.proj-filter-btn{padding:6px 16px;font-size:.85rem}}@media print{*{color:#000!important;box-shadow:none!important;text-shadow:none!important;background:0 0!important}html,body{width:210mm;height:297mm;font-size:11pt;background:#fff!important}.custom-cursor,.custom-cursor-dot,.header,.hero-bg-gradients,.badge-new,.hero-ctas,.social-links,.floating-badge,.scroll-down,.info-cta,.skills-filter,.projects-filter,.contact-form-container,.footer,.back-to-top,.modal-overlay,.toast-container,.project-card .btn-text,.timeline-dot{display:none!important}.section{page-break-inside:avoid;padding:15px 0!important}.container{width:100%!important;max-width:100%!important;padding:0 15mm!important}.hero-section{min-height:auto!important;padding-top:0!important}.hero-container{grid-template-columns:1.5fr .5fr!important;align-items:center!important;gap:20px!important}.hero-title{margin-bottom:5px!important;font-size:24pt!important;font-weight:700!important}.hero-subtitle{color:#333!important;margin-bottom:10px!important;font-size:14pt!important}.hero-description{margin-bottom:0!important;font-size:10pt!important}.profile-card-wrapper{padding:0!important}.profile-card{width:100px!important;box-shadow:none!important;border:none!important;padding:0!important;transform:none!important}.profile-image-container{border-radius:50%!important;width:100px!important;height:100px!important}.profile-card-info{display:none!important}.section-header{text-align:left!important;margin-bottom:15px!important}.section-tag{display:none!important}.section-title{border-bottom:1px solid #000!important;padding-bottom:3px!important;font-size:14pt!important;font-weight:700!important}.title-underline{display:none!important}.about-grid{grid-template-columns:1fr!important;gap:15px!important}.about-text-card,.about-info-card{border:none!important;padding:0!important}.about-text-card h3,.about-info-card h3{margin-bottom:5px!important;font-size:12pt!important}.stats-grid{display:none!important}.personal-info-list{grid-template-columns:1fr 1fr!important;gap:8px 20px!important;margin-bottom:0!important;display:grid!important}.personal-info-list li{border-bottom:none!important;justify-content:flex-start!important;gap:10px!important;padding-bottom:0!important}.info-label{font-weight:700!important}.info-label i{display:none!important}.info-value{text-align:left!important}.skills-grid{grid-template-columns:repeat(3,1fr)!important;gap:10px!important}.skill-card{border:none!important;padding:5px!important}.skill-icon,.skill-percent,.skill-bar-wrapper{display:none!important}.skill-name{font-size:10pt!important;font-weight:700!important}.skill-desc{font-size:9pt!important}.timeline{padding-left:0!important}.timeline:before{display:none!important}.timeline-item{page-break-inside:avoid;border:none!important;margin-bottom:15px!important;padding:0!important}.timeline-date{margin-bottom:2px!important;font-weight:700!important}.job-header{border-bottom:none!important;margin-bottom:5px!important;padding-bottom:0!important}.job-title{font-size:11pt!important;font-weight:700!important}.job-company{font-size:10pt!important;font-weight:400!important}.job-company i{display:none!important}.job-duties li{margin-bottom:3px!important;padding-left:12px!important;font-size:9.5pt!important}.job-duties li:before{content:"•"!important}.education-container{margin-top:20px!important}.education-grid{grid-template-columns:1fr!important}.education-card{border:none!important;grid-template-columns:1fr!important;gap:0!important;padding:0!important}.edu-icon{display:none!important}.edu-degree{font-size:11pt!important;font-weight:700!important}.edu-school{font-size:10pt!important}.projects-grid{grid-template-columns:1fr 1fr!important;gap:15px!important}.project-card{page-break-inside:avoid;border:1px solid #ccc!important;border-radius:4px!important}.project-thumb{display:none!important}.project-info{padding:10px!important}.project-title{margin-bottom:3px!important;font-size:10.5pt!important;font-weight:700!important}.project-summary{margin-bottom:0!important;font-size:9pt!important}.contact-section{page-break-inside:avoid}.contact-grid{grid-template-columns:1fr!important}.contact-info{border:none!important;padding:0!important}.contact-info h3{font-size:12pt!important}.contact-info p{margin-bottom:10px!important}.contact-methods{grid-template-columns:repeat(3,1fr)!important;gap:10px!important;display:grid!important}.method-icon{display:none!important}.method-item{align-items:flex-start!important;gap:0!important}.method-label{font-size:7.5pt!important}.method-link{font-size:8.5pt!important}}.achievements-section{background:linear-gradient(180deg, hsl(var(--bg-primary-hsl)) 0%, hsl(var(--bg-secondary-hsl)) 100%)}.achievements-grid{flex-direction:column;gap:32px;display:flex}.achievement-card{transition:transform var(--transition-normal), box-shadow var(--transition-normal);grid-template-columns:auto 1fr;align-items:start;gap:28px;padding:36px;display:grid;position:relative;overflow:hidden}.achievement-card:before{content:"";background:linear-gradient(#f5c518,#e6a817,#c87c00);border-radius:4px 0 0 4px;width:4px;height:100%;position:absolute;top:0;left:0}.achievement-card:hover{transform:translateY(-4px);box-shadow:0 20px 50px #f5c51814}.achievement-badge{color:#f5c518;background:linear-gradient(135deg,#f5c51826,#e6a81714);border:1px solid #f5c5184d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;display:flex}.achievement-badge svg{width:28px;height:28px}.achievement-badge--muted{background:hsla(var(--border-glass-hsl), .2);border-color:hsla(var(--border-glass-hsl), .4);color:hsl(var(--text-muted-hsl))}.achievement-meta{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:8px;display:flex}.achievement-year{color:#f5c518;letter-spacing:.5px;background:#f5c5181f;border:1px solid #f5c5184d;border-radius:20px;padding:3px 10px;font-size:.78rem;font-weight:700}.achievement-org{color:hsl(var(--text-muted-hsl));font-size:.8rem;font-weight:500}.achievement-title{font-family:var(--font-heading);color:hsl(var(--text-primary-hsl));margin-bottom:4px;font-size:1.5rem;font-weight:800;line-height:1.3}.achievement-subtitle{color:hsl(var(--accent-hsl));margin-bottom:14px;font-size:.9rem;font-weight:600}.achievement-desc{color:hsl(var(--text-secondary-hsl));margin-bottom:20px;font-size:.95rem;line-height:1.7}.achievement-desc strong{color:hsl(var(--text-primary-hsl));font-weight:700}.achievement-tags{flex-wrap:wrap;gap:8px;display:flex}.ach-tag{background:rgba(var(--accent-rgb), .08);border:1px solid rgba(var(--accent-rgb), .2);color:hsl(var(--accent-hsl));letter-spacing:.3px;transition:all var(--transition-fast);border-radius:20px;padding:4px 12px;font-size:.75rem;font-weight:600}.ach-tag:hover{background:rgba(var(--accent-rgb), .15);border-color:rgba(var(--accent-rgb), .5)}.achievement-card--internship:before{background:linear-gradient(180deg, hsl(var(--accent-sec-hsl)), hsl(var(--accent-hsl)))}.achievement-card--internship:hover{box-shadow:0 20px 50px rgba(var(--accent-sec-rgb), .1)}.achievement-badge--internship{background:linear-gradient(135deg, rgba(var(--accent-sec-rgb), .15), rgba(var(--accent-rgb), .08));border:1px solid rgba(var(--accent-sec-rgb), .35);color:hsl(var(--accent-sec-hsl))}.achievement-year--internship{background:rgba(var(--accent-sec-rgb), .12);border-color:rgba(var(--accent-sec-rgb), .35);color:hsl(var(--accent-sec-hsl))}.ach-tag--internship{background:rgba(var(--accent-sec-rgb), .08);border-color:rgba(var(--accent-sec-rgb), .2);color:hsl(var(--accent-sec-hsl))}.ach-tag--internship:hover{background:rgba(var(--accent-sec-rgb), .15);border-color:rgba(var(--accent-sec-rgb), .5)}.photo-card--internship:hover{box-shadow:0 16px 40px rgba(var(--accent-sec-rgb), .12), 0 8px 20px #00000059;border-color:rgba(var(--accent-sec-rgb), .35)}.photo-card-caption--internship svg{color:hsl(var(--accent-sec-hsl))}.photo-cards-gallery{grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:8px;display:grid}.photo-card{border-radius:var(--border-radius-md);background:hsl(var(--bg-glass-hsl));border:1px solid hsl(var(--border-hsl));cursor:pointer;transition:transform var(--transition-normal), box-shadow var(--transition-normal), border-color var(--transition-fast);overflow:hidden;box-shadow:0 4px 16px #00000040}.photo-card:hover{border-color:#f5c51859;transform:translateY(-6px)scale(1.01);box-shadow:0 16px 40px #f5c5181f,0 8px 20px #00000059}.photo-card-img-wrap{width:100%;height:180px;position:relative;overflow:hidden}.photo-card-img-wrap img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow);display:block}.photo-card:hover .photo-card-img-wrap img{transform:scale(1.08)}.photo-card-overlay{opacity:0;transition:opacity var(--transition-fast);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:linear-gradient(135deg,#f5c51840,#0000008c);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.photo-card-overlay svg{color:#fff;filter:drop-shadow(0 2px 8px #00000080);width:32px;height:32px}.photo-card:hover .photo-card-overlay{opacity:1}.photo-card-caption{color:hsl(var(--text-secondary-hsl));border-top:1px solid hsl(var(--border-hsl));letter-spacing:.2px;background:#f5c51808;align-items:center;gap:8px;padding:12px 14px;font-size:.82rem;font-weight:600;display:flex}.photo-card-caption svg{color:#f5c518;flex-shrink:0;width:14px;height:14px}.photo-lightbox{z-index:9999;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:zoom-out;animation:fadeIn var(--transition-fast) ease;background:#000000eb;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.photo-lightbox.active{display:flex}.photo-lightbox img{object-fit:contain;border-radius:var(--border-radius-md);max-width:90vw;max-height:88vh;animation:.3s cubic-bezier(.34,1.56,.64,1) scaleIn;box-shadow:0 32px 80px #000c}.photo-lightbox-close{color:#fff;cursor:pointer;width:44px;height:44px;transition:background var(--transition-fast);z-index:10000;background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;top:20px;right:24px}.photo-lightbox-close:hover{background:#fff3}.photo-lightbox-close svg{width:22px;height:22px}@keyframes scaleIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.achievement-card--upcoming{opacity:.5;border-style:dashed;grid-template-columns:auto 1fr}.achievement-card--upcoming:before{background:hsla(var(--border-glass-hsl), .5)}.achievement-coming-soon{color:hsl(var(--text-muted-hsl));padding-top:16px;font-size:.95rem;font-style:italic}@media (width<=768px){.photo-cards-gallery{grid-template-columns:1fr 1fr}.photo-cards-gallery .photo-card:last-child{grid-column:1/-1}.photo-card-img-wrap{height:160px}}@media (width<=480px){.photo-cards-gallery{grid-template-columns:1fr}.photo-cards-gallery .photo-card:last-child{grid-column:auto}.photo-card-img-wrap{height:200px}}@media (width<=640px){.achievement-card{gap:16px;padding:24px 20px}.achievement-title{font-size:1.2rem}}.typewriter-cursor{color:hsl(var(--accent-hsl));margin-left:2px;font-weight:200;animation:.8s infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}
