:root{--primary-color-dark-mode:#34416b;--primary-color-dark-mode-rgb:52 , 65 , 107;--primary-color-original:#00d4ff;--primary-color-original-rgb:0 , 212 , 255;--primary-color:var(--primary-color-original);--primary-color-rgb:var(--primary-color-original-rgb);--primary-color-light-mode:#34416b;--primary-color-light-mode-rgb:52 , 65 , 107;--secondary-color:#ff6b6b;--accent-color:#4ecdc4;--bg-primary:#0a0a0a;--bg-secondary:#1a1a2e;--bg-tertiary:#16213e;--bg-card:#1e1e2f;--text-primary:#fff;--text-secondary:#ccc;--text-muted:#999;--gradient-primary:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);--gradient-primary-dark-mode:linear-gradient(135deg,var(--primary-color-dark-mode) 0%,var(--secondary-color) 100%);--gradient-primary-light-mode:linear-gradient(135deg,var(--primary-color-light-mode) 0%,#5e72a7 100%);--gradient-secondary:linear-gradient(135deg,#ff6b6b,#ee5a52);--gradient-bg:linear-gradient(135deg,#0a0a0a 0%,#1a1a2e 50%,#16213e 100%);--shadow:0 10px 30px rgba(0,0,0,.3);--shadow-hover:0 20px 60px rgba(0,0,0,.4);--shadow-card:0 8px 32px rgba(0,0,0,.3);--transition:all .3s cubic-bezier(.4,0,.2,1);--transition-slow:all .6s cubic-bezier(.4,0,.2,1);--border-radius:12px;--border-radius-small:8px;--border-radius-large:20px;--font-family:'Inter' , -apple-system , BlinkMacSystemFont , 'Segoe UI' , Roboto , Oxygen , Ubuntu , Cantarell , sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--spacing-1:.25rem;--spacing-2:.5rem;--spacing-3:.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--spacing-16:4rem;--spacing-20:5rem;--spacing-24:6rem;--container-max-width:1200px;--container-padding:2rem;--bg-navbar-light:#fff;--border-navbar-light:#e0e0e0;--primary-color-rgb:0 , 212 , 255}.light-mode{--bg-primary:#fff;--bg-secondary:#f8f9fa;--bg-tertiary:#e9ecef;--bg-card:#fff;--text-primary:#333;--text-secondary:#555;--text-muted:#777;--gradient-bg:linear-gradient(135deg,#fff 0%,#f8f9fa 50%,#e9ecef 100%);--shadow:0 10px 30px rgba(0,0,0,.07);--shadow-hover:0 15px 45px rgba(0,0,0,.1);--shadow-card:0 6px 24px rgba(0,0,0,.06);--primary-color:var(--primary-color-light-mode);--primary-color-rgb:var(--primary-color-light-mode-rgb);--gradient-primary:var(--gradient-primary-light-mode)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{font-family: var(--font-family);line-height:1.6;color:var(--text-primary);background:var(--bg-primary);overflow-x:hidden;transition:var(--transition)}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--container-padding)}.section-header{text-align:center;margin-bottom:var(--spacing-16)}.section-header h5{color:var(--primary-color);font-size:var(--font-size-base);font-weight:600;text-transform:uppercase;letter-spacing:2px;margin-bottom:var(--spacing-2)}.section-header h2{color:var(--text-primary);font-size:var(--font-size-4xl);font-weight:700;line-height:1.3}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:var(--spacing-4) 0;background:transparent;border-bottom:1px solid transparent;transition:background-color .3s ease , border-color .3s ease , box-shadow .3s ease}.navbar.scrolled{background:rgba(10,10,10,.85);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.08)}.light-mode .navbar{background:transparent;border-bottom:1px solid transparent}.light-mode .navbar.scrolled{background:rgba(255,255,255,.85);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border-navbar-light);box-shadow:0 2px 10px rgba(0,0,0,.05)}.nav-container{display:flex;justify-content:space-between;align-items:center;width:100%}.nav-logo-link{text-decoration:none;padding-left:var(--spacing-4);display:flex;align-items:center;gap:var(--spacing-3)}.logo-icon{height:40px;width:auto}.logo-text-group{display:flex;flex-direction:column;align-items:flex-start}.logo-text{font-size:var(--font-size-xl);font-weight:700;color:var(--primary-color-original);letter-spacing:.5px;margin-bottom:1px;line-height:1.2}.logo-subtitle{font-size:var(--font-size-xs);color:var(--text-muted);letter-spacing:.5px;line-height:1.2}.nav-menu{display:flex;list-style:none;gap:var(--spacing-8)}.nav-link{color:var(--text-secondary);text-decoration:none;font-weight:500;transition:var(--transition);position:relative;padding:var(--spacing-2) var(--spacing-4);border-radius:var(--border-radius-small)}.nav-link:hover,.nav-link.active{color:var(--primary-color);background-color:rgba(var(--primary-color-rgb),.1)}.light-mode .logo-text{color:var(--primary-color)}.light-mode .bar{background:var(--text-primary)}.theme-toggle{background:transparent;border:none;border-radius:50%;width:40px;height:40px;color:var(--text-secondary);cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg)}.theme-toggle:hover{color:var(--primary-color);transform:scale(1.1)}.light-mode .theme-toggle{color:var(--text-secondary)}.light-mode .theme-toggle:hover{color:var(--primary-color)}.hero{min-height:100vh;display:flex;align-items:center;position:relative;background:var(--gradient-bg);overflow:hidden}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;background:url(data:image/svg+xml,<svg\ xmlns=\"http://www.w3.org/2000/svg\"\ viewBox=\"0\ 0\ 100\ 100\"><defs><pattern\ id=\"grid\"\ width=\"10\"\ height=\"10\"\ patternUnits=\"userSpaceOnUse\"><path\ d=\"M\ 10\ 0\ L\ 0\ 0\ 0\ 10\"\ fill=\"none\"\ stroke=\"%23ffffff\"\ stroke-width=\"0.5\"\ opacity=\"0.1\"/></pattern></defs><rect\ width=\"100\"\ height=\"100\"\ fill=\"url\(%23grid\)\"/></svg>) repeat;opacity:.3;animation:moveGrid 20s linear infinite}@keyframes moveGrid {
    0% { transform: translate(0, 0); }
    100% { transform: translate(10px, 10px); }
}.hero-container{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-16);align-items:center;max-width:var(--container-max-width);margin:0 auto;padding:0 var(--container-padding);position:relative;z-index:2}.hero-content{text-align:left}.hero-title{font-size:var(--font-size-5xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-4);line-height:1.2;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:var(--font-size-2xl);color:var(--text-secondary);margin-bottom:var(--spacing-8);font-weight:300}.hero-description{font-size:var(--font-size-lg);color:var(--text-muted);line-height:1.7;margin-bottom:var(--spacing-12);max-width:500px}.hero-buttons{display:flex;gap:var(--spacing-6);flex-wrap:wrap}.hero-image{display:flex;justify-content:center;align-items:center;position:relative}.profile-container{position:relative;display:flex;align-items:center;justify-content:center}.profile-image{width:400px;height:400px;transition:var(--transition);z-index:2;position:relative}.profile-image:hover{transform:scale(1.05)}.floating-tech{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;pointer-events:none}.tech-icon{position:absolute;width:50px;height:50px;transition:var(--transition);opacity:.7;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}.tech-icon-1{top:10%;left:10%;animation:float1 6s ease-in-out infinite}.tech-icon-2{top:20%;right:10%;animation:float2 7s ease-in-out infinite}.tech-icon-3{top:60%;left:5%;animation:float3 8s ease-in-out infinite}.tech-icon-4{bottom:20%;right:15%;animation:float4 6.5s ease-in-out infinite}.tech-icon-5{top:50%;right:5%;animation:float5 7.5s ease-in-out infinite}.tech-icon-6{bottom:40%;left:20%;animation:float6 8.5s ease-in-out infinite}@keyframes float1 {
    0%, 100% { transform: translateY(0px) translateX(0px); }
    50% { transform: translateY(-20px) translateX(10px); }
}@keyframes float2 {
    0%, 100% { transform: translateY(0px) translateX(0px); }
    50% { transform: translateY(-15px) translateX(-8px); }
}@keyframes float3 {
    0%, 100% { transform: translateY(0px) translateX(0px); }
    50% { transform: translateY(-25px) translateX(12px); }
}@keyframes float4 {
    0%, 100% { transform: translateY(0px) translateX(0px); }
    50% { transform: translateY(-18px) translateX(-5px); }
}@keyframes float5 {
    0%, 100% { transform: translateY(0px) translateX(0px); }
    50% { transform: translateY(-12px) translateX(-15px); }
}@keyframes float6 {
    0%, 100% { transform: translateY(0px) translateX(0px); }
    50% { transform: translateY(-22px) translateX(8px); }
}.scroll-indicator{position:absolute;bottom:var(--spacing-8);left:50%;transform:translateX(-50%);color:var(--primary-color);font-size:var(--font-size-2xl);cursor:pointer;animation:bounce 2s infinite;z-index:3}@keyframes bounce {
    0%, 20%, 50%, 80%, 100% { transform: translateX(-50%) translateY(0); }
    40% { transform: translateX(-50%) translateY(-10px); }
    60% { transform: translateX(-50%) translateY(-5px); }
}.btn{padding:var(--spacing-4) var(--spacing-8);border-radius:50px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:var(--spacing-2);transition:var(--transition);font-size:var(--font-size-base);border:none;cursor:pointer;position:relative;overflow:hidden}.btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:var(--transition)}.btn:hover::before{left:100%}.btn-primary{background:var(--gradient-primary);color:#fff;border:none;padding:var(--spacing-4) var(--spacing-8);border-radius:var(--border-radius);font-weight:600;text-decoration:none;transition:var(--transition);display:inline-flex;align-items:center;gap:var(--spacing-2);box-shadow:0 4px 15px rgba(var(--primary-color-rgb),.2)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 25px rgba(var(--primary-color-rgb),.3);text-decoration:none}.btn-secondary{background:transparent;color:var(--primary-color-original);border:1px solid rgba(var(--primary-color-original-rgb),.6);padding:calc(var(--spacing-4) - 1px) calc(var(--spacing-8) - 1px);border-radius:var(--border-radius);font-weight:600;text-decoration:none;transition:var(--transition);display:inline-flex;align-items:center;gap:var(--spacing-2);box-shadow:0 0 5px rgba(var(--primary-color-original-rgb),.4) , 0 0 10px rgba(var(--primary-color-original-rgb),.3)}.btn-secondary:hover{color:var(--primary-color-original);border-color:rgba(var(--primary-color-original-rgb),1);background:transparent;box-shadow:0 0 10px rgba(var(--primary-color-original-rgb),.7) , 0 0 20px rgba(var(--primary-color-original-rgb),.5) , 0 0 30px rgba(var(--primary-color-original-rgb),.3);transform:translateY(-2px);text-decoration:none}.light-mode .btn-secondary{color:var(--primary-color);border-color:rgba(var(--primary-color-light-mode-rgb),.7);box-shadow:0 0 5px rgba(var(--primary-color-light-mode-rgb),.5) , 0 0 10px rgba(var(--primary-color-light-mode-rgb),.4)}.light-mode .btn-secondary:hover{color:var(--primary-color);border-color:rgba(var(--primary-color-light-mode-rgb),1);background:transparent;box-shadow:0 0 10px rgba(var(--primary-color-light-mode-rgb),.8) , 0 0 20px rgba(var(--primary-color-light-mode-rgb),.6) , 0 0 30px rgba(var(--primary-color-light-mode-rgb),.4)}.about,.resume,.services,.portfolio,.contact{padding:var(--spacing-24) 0;position:relative}.about{background:var(--bg-secondary)}.resume{background:var(--bg-primary)}.services{background:var(--bg-secondary)}.portfolio{background:var(--bg-primary)}.contact{background:var(--bg-secondary)}.fade-in{opacity:0;transform:translateY(30px);transition:var(--transition-slow)}.fade-in.visible{opacity:1;transform:translateY(0)}.scale-on-hover{transition:var(--transition)}.scale-on-hover:hover{transform:scale(1.05)}.whatsapp-float{position:fixed;right:var(--spacing-6);bottom:var(--spacing-6);width:60px;height:60px;background:#25d366;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:1000;transition:var(--transition);box-shadow:var(--shadow);animation:pulse 2s infinite}.whatsapp-float:hover{transform:scale(1.1);box-shadow:var(--shadow-hover);text-decoration:none}@keyframes pulse {
    0% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7); }
    70% { box-shadow: 0 0 0 10px rgba(37, 211, 102, 0); }
    100% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); }
}.typed-cursor{font-weight:300;color:var(--primary-color);animation:blink 1s infinite}@keyframes blink {
    0%, 50% { opacity: 1; }
    51%, 100% { opacity: 0; }
}.about-content{display:grid;grid-template-columns:2fr 1fr;gap:var(--spacing-16);margin-bottom:var(--spacing-16)}.about-text p{font-size:var(--font-size-lg);line-height:1.8;color:var(--text-secondary);margin-bottom:var(--spacing-8);text-align:justify}.about-details{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-8);margin-top:var(--spacing-8)}.studies-section h3,.tech-section h3{color:var(--primary-color);font-size:var(--font-size-xl);margin-bottom:var(--spacing-4);font-weight:600}.study-list{list-style:none}.study-list li{display:flex;align-items:center;gap:var(--spacing-3);margin-bottom:var(--spacing-3);color:var(--text-secondary);font-size:var(--font-size-base)}.study-list i{color:var(--accent-color);font-size:var(--font-size-sm)}.tech-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(60px,1fr));gap:var(--spacing-4)}.tech-item{display:flex;align-items:center;justify-content:center;padding:var(--spacing-3);background:var(--bg-card);border-radius:var(--border-radius-small);transition:var(--transition);position:relative;cursor:pointer}.tech-item:hover{transform:translateY(-5px);background:var(--primary-color)}.tech-item img{width:32px;height:32px;transition:var(--transition)}.tech-item:hover img{filter:brightness(0) invert(1)}.tech-item::before{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translateX(-50%);background:var(--bg-primary);color:var(--text-primary);padding:var(--spacing-2) var(--spacing-3);border-radius:var(--border-radius-small);font-size:var(--font-size-xs);white-space:nowrap;opacity:0;visibility:hidden;transition:var(--transition);z-index:1000;box-shadow:var(--shadow)}.tech-item:hover::before{opacity:1;visibility:visible;transform:translateX(-50%) translateY(-5px)}.about-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-6)}.stat-card{text-align:center;padding:var(--spacing-8);background:var(--bg-card);border-radius:var(--border-radius);box-shadow:var(--shadow-card);transition:var(--transition);border:1px solid rgba(0,212,255,.1)}.stat-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-hover);border-color:var(--primary-color)}.stat-number{font-size:var(--font-size-4xl);font-weight:700;color:var(--primary-color);margin-bottom:var(--spacing-2)}.stat-label{color:var(--text-secondary);font-size:var(--font-size-base);font-weight:500}.skills-section{margin-top:var(--spacing-20);padding-top:var(--spacing-16);border-top:1px solid rgba(255,255,255,.1)}.skills-section h3{text-align:center;color:var(--primary-color);font-size:var(--font-size-3xl);margin-bottom:var(--spacing-12);font-weight:700}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-6)}.skill-item{background:var(--bg-card);padding:var(--spacing-6);border-radius:var(--border-radius);box-shadow:var(--shadow-card);transition:var(--transition)}.skill-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover)}.skill-item.special{background:linear-gradient(135deg,var(--bg-card),rgba(0,212,255,.1));border:1px solid var(--primary-color)}.skill-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-3)}.skill-header span:first-child{font-weight:600;color:var(--text-primary)}.skill-header span:last-child{font-weight:700;color:var(--primary-color)}.skill-bar{height:8px;background:rgba(255,255,255,.1);border-radius:4px;overflow:hidden;position:relative}.skill-progress{height:100%;background:var(--gradient-primary);border-radius:4px;width:0;transition:width 1.5s ease-in-out;position:relative}.skill-progress.neon{background:linear-gradient(90deg,#00d4ff,#ff6b6b,#4ecdc4,#00d4ff);background-size:400% 400%;animation:neonGlow 3s ease-in-out infinite;box-shadow:0 0 20px rgba(0,212,255,.5)}@keyframes neonGlow {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}.resume-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-16);margin-bottom:var(--spacing-16)}.resume-title{display:flex;align-items:center;gap:var(--spacing-3);color:var(--primary-color);font-size:var(--font-size-2xl);margin-bottom:var(--spacing-8);font-weight:700}.timeline{position:relative;padding-left:var(--spacing-8)}.timeline::before{content:'';position:absolute;left:0;top:0;height:100%;width:2px;background:var(--gradient-primary)}.timeline-item{position:relative;margin-bottom:var(--spacing-8);padding-left:var(--spacing-6)}.timeline-item::before{content:'';position:absolute;left:-9px;top:0;width:16px;height:16px;background:var(--primary-color);border-radius:50%;box-shadow:0 0 0 4px var(--bg-secondary)}.timeline-date{background:var(--primary-color);color:#fff;padding:var(--spacing-2) var(--spacing-4);border-radius:var(--border-radius-small);font-size:var(--font-size-sm);font-weight:600;display:inline-block;margin-bottom:var(--spacing-3)}.timeline-content h4{color:var(--text-primary);font-size:var(--font-size-lg);margin-bottom:var(--spacing-2);font-weight:600}.institution{color:var(--text-muted);font-style:italic;font-size:var(--font-size-sm)}.projects-list{display:none;margin-top:var(--spacing-6)}.projects-list.show{display:block}.project-item{background:var(--bg-card);padding:var(--spacing-6);border-radius:var(--border-radius);margin-bottom:var(--spacing-6);box-shadow:var(--shadow-card);transition:var(--transition)}.project-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover)}.project-item h4{color:var(--primary-color);font-size:var(--font-size-lg);margin-bottom:var(--spacing-3);font-weight:600}.project-item p{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--spacing-4)}.tech-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}.tech-tag{background:var(--primary-color);color:#fff;padding:var(--spacing-1) var(--spacing-3);border-radius:var(--border-radius-small);font-size:var(--font-size-xs);font-weight:500}.genisys-section{background:var(--bg-card);padding:var(--spacing-12);border-radius:var(--border-radius);box-shadow:var(--shadow-card);border:1px solid rgba(0,212,255,.2)}.genisys-title{display:flex;align-items:center;gap:var(--spacing-3);color:var(--primary-color);font-size:var(--font-size-2xl);margin-bottom:var(--spacing-6);font-weight:700;text-align:center;justify-content:center}.genisys-container{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-8);align-items:start}.genisys-description p{color:var(--text-secondary);line-height:1.7;font-size:var(--font-size-base)}.genisys-form{background:var(--bg-secondary);border-radius:var(--border-radius);padding:var(--spacing-6)}.input-group{display:flex;gap:var(--spacing-3)}.input-group input{flex:1;padding:var(--spacing-4);border:2px solid rgba(255,255,255,.1);border-radius:var(--border-radius-small);background:var(--bg-card);color:var(--text-primary);font-size:var(--font-size-base);transition:var(--transition)}.input-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.input-group button{padding:var(--spacing-4);background:var(--primary-color);border:none;border-radius:var(--border-radius-small);color:#fff;cursor:pointer;transition:var(--transition);width:50px}.input-group button:hover{transform:scale(1.05);box-shadow:var(--shadow)}.genisys-response{margin-top:var(--spacing-6);padding:var(--spacing-4);background:var(--bg-secondary);border-radius:var(--border-radius-small);color:var(--text-secondary);display:none;border-left:4px solid var(--primary-color)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-8)}.service-card{background:var(--bg-card);padding:var(--spacing-8);border-radius:var(--border-radius);text-align:center;box-shadow:var(--shadow-card);transition:var(--transition);border:1px solid rgba(255,255,255,.1)}.service-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-hover);border-color:var(--primary-color)}.service-icon{margin-bottom:var(--spacing-6)}.service-icon img{width:64px;height:64px;transition:var(--transition)}.service-card:hover .service-icon img{transform:scale(1.1)}.service-card h4{color:var(--text-primary);font-size:var(--font-size-xl);margin-bottom:var(--spacing-4);font-weight:600}.service-card p{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--spacing-6)}.service-features{display:flex;flex-direction:column;gap:var(--spacing-2);align-items:flex-start;margin-top:var(--spacing-4);padding-left:var(--spacing-2)}.service-features span{color:var(--primary-color)}.service-features i{color:var(--primary-color)}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-8)}.portfolio-item{background:var(--bg-card);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow-card);transition:var(--transition)}.portfolio-item:hover{transform:translateY(-10px);box-shadow:var(--shadow-hover)}.portfolio-image{position:relative;overflow:hidden;height:250px}.portfolio-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.portfolio-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(var(--primary-color-rgb),.9);display:flex;align-items:center;justify-content:center;opacity:0;transition:var(--transition)}.portfolio-item:hover .portfolio-overlay{opacity:1}.portfolio-item:hover .portfolio-image img{transform:scale(1.1)}.portfolio-overlay-content{text-align:center;color:#fff}.portfolio-overlay-content i{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-2)}.portfolio-content{padding:var(--spacing-6)}.portfolio-content h4{color:var(--text-primary);font-size:var(--font-size-lg);margin-bottom:var(--spacing-3);font-weight:600}.portfolio-content p{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--spacing-4);font-size:var(--font-size-sm)}.portfolio-tech{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}.portfolio-tech span{background:var(--primary-color);color:#fff;padding:var(--spacing-1) var(--spacing-3);border-radius:var(--border-radius-small);font-size:var(--font-size-xs);font-weight:500}.contact-info{display:flex;justify-content:center;margin-top:var(--spacing-12)}.contact-card{background:var(--bg-card);padding:var(--spacing-12);border-radius:var(--border-radius);text-align:center;box-shadow:var(--shadow-card);border:1px solid rgba(0,212,255,.2);transition:var(--transition);max-width:400px}.contact-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-hover);border-color:var(--primary-color)}.contact-icon{margin-bottom:var(--spacing-6)}.contact-icon i{font-size:var(--font-size-5xl);color:#25d366}.contact-content h4{color:var(--text-primary);font-size:var(--font-size-2xl);margin-bottom:var(--spacing-3);font-weight:700}.contact-content p{color:var(--text-secondary);margin-bottom:var(--spacing-6);font-size:var(--font-size-lg)}.contact-link{display:inline-flex;align-items:center;gap:var(--spacing-2);color:#25d366;font-size:var(--font-size-2xl);font-weight:700;text-decoration:none;transition:var(--transition)}.contact-link:hover{color:var(--primary-color);text-decoration:none;transform:scale(1.05)}.contact{text-align:center}.contact .section-header h2{margin-bottom:var(--spacing-10)}.contact-content-minimal{max-width:650px;margin:0 auto var(--spacing-12)}.contact-message{font-size:var(--font-size-lg);color:var(--text-secondary);line-height:1.7;margin-bottom:var(--spacing-10)}.contact-whatsapp-button{font-size:var(--font-size-lg);padding:var(--spacing-4) var(--spacing-10);margin-bottom:var(--spacing-8);display:inline-flex;align-items:center;justify-content:center;min-width:280px}.contact-whatsapp-button i{margin-right:var(--spacing-3);font-size:var(--font-size-xl)}.contact-alternative{font-size:var(--font-size-base);color:var(--text-muted)}.contact-alternative a{color:var(--primary-color);text-decoration:none;font-weight:500}.contact-alternative a:hover{text-decoration:underline}.footer{background:var(--bg-primary);padding:var(--spacing-12) 0;border-top:1px solid rgba(255,255,255,.1)}.footer-content{text-align:center}.footer-main h3{color:var(--primary-color);font-size:var(--font-size-2xl);margin-bottom:var(--spacing-4);font-weight:700}.footer-main p{color:var(--text-secondary);margin-bottom:var(--spacing-8);font-size:var(--font-size-base)}.footer-bottom p{color:var(--text-muted);font-size:var(--font-size-sm)}.light-mode .studies-section h3,.light-mode .tech-section h3{color:var(--primary-color)}.light-mode .study-list i{color:var(--accent-color)}.light-mode .tech-item:hover{background:rgba(var(--primary-color-light-mode-rgb),.8)}.light-mode .tech-item:hover img{filter:brightness(0) invert(1)}.light-mode .stat-number{color:var(--primary-color)}.light-mode .stat-card:hover{border-color:var(--primary-color)}.light-mode .skills-section h3{color:var(--primary-color)}.light-mode .skill-header span:last-child{color:var(--primary-color)}.light-mode .skill-progress{background:var(--primary-color)}.light-mode .skill-item.special{border:1px solid var(--primary-color)}.light-mode .skill-progress.neon{}.light-mode .resume-title{color:var(--primary-color)}.light-mode .timeline::before{background:var(--primary-color)}.light-mode .timeline-item::before{background:var(--primary-color);box-shadow:0 0 0 4px var(--bg-secondary)}.light-mode .timeline-date{background:var(--primary-color);color:#fff;padding:var(--spacing-2) var(--spacing-4);border-radius:var(--border-radius-small);font-size:var(--font-size-sm);font-weight:600;display:inline-block;margin-bottom:var(--spacing-3)}.light-mode .timeline-content h4{color:var(--text-primary);font-size:var(--font-size-lg);margin-bottom:var(--spacing-2);font-weight:600}.light-mode .institution{color:var(--text-muted);font-style:italic;font-size:var(--font-size-sm)}.light-mode .projects-list{display:none;margin-top:var(--spacing-6)}.light-mode .projects-list.show{display:block}.light-mode .project-item{background:var(--bg-card);padding:var(--spacing-6);border-radius:var(--border-radius);margin-bottom:var(--spacing-6);box-shadow:var(--shadow-card);transition:var(--transition)}.light-mode .project-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover)}.light-mode .project-item h4{color:var(--primary-color);font-size:var(--font-size-lg);margin-bottom:var(--spacing-3);font-weight:600}.light-mode .project-item p{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--spacing-4)}.light-mode .tech-tag{background:var(--primary-color);color:#fff}.light-mode .genisys-title{color:var(--primary-color)}.light-mode .genisys-description p{color:var(--text-secondary);line-height:1.7;font-size:var(--font-size-base)}.light-mode .genisys-form{background:var(--bg-secondary);border-radius:var(--border-radius);padding:var(--spacing-6)}.light-mode .input-group input{flex:1;padding:var(--spacing-4);border:2px solid rgba(255,255,255,.1);border-radius:var(--border-radius-small);background:var(--bg-card);color:var(--text-primary);font-size:var(--font-size-base);transition:var(--transition)}.light-mode .input-group input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(var(--primary-color-rgb),.1)}.light-mode .input-group button{background:var(--gradient-primary)}.light-mode .genisys-response{border-left:4px solid var(--primary-color)}.light-mode .service-card:hover{border-color:var(--primary-color)}.light-mode .service-features span{color:var(--primary-color)}.light-mode .service-features i{color:var(--primary-color)}.light-mode .portfolio-overlay{background:rgba(var(--primary-color-rgb),.9)}.light-mode .portfolio-tech span{background:var(--primary-color);color:#fff}.light-mode .contact-card:hover{border-color:var(--primary-color)}.light-mode .contact-alternative a{color:var(--primary-color)}.light-mode .footer-main h3{color:var(--primary-color)}@media (max-width:768px){.container{padding:0 var(--spacing-4)}.nav-menu{position:fixed;top:70px;left:-100%;width:100%;height:calc(100vh - 70px);background:rgba(10,10,10,.98);backdrop-filter:blur(20px);flex-direction:column;justify-content:flex-start;align-items:center;padding-top:var(--spacing-16);transition:var(--transition);z-index:999}.nav-menu.show{left:0}.nav-menu li{margin:var(--spacing-6) 0}.nav-link{font-size:var(--font-size-xl)}.hamburger{display:flex}.hamburger.active .bar:nth-child(2) {opacity:0}.hamburger.active .bar:nth-child(1) {transform:translateY(7px) rotate(45deg)}.hamburger.active .bar:nth-child(3) {transform:translateY(-7px) rotate(-45deg)}.hero-container{grid-template-columns:1fr;text-align:center;gap:var(--spacing-8);padding-top:var(--spacing-16)}.hero-title{font-size:var(--font-size-4xl)}.hero-subtitle{font-size:var(--font-size-xl)}.hero-description{font-size:var(--font-size-base);max-width:100%}.hero-buttons{flex-direction:column;align-items:center}.btn{width:100%;max-width:280px;justify-content:center}.profile-image{width:300px;height:300px}.floating-tech{width:450px;height:450px}.tech-icon{width:40px;height:40px}.about-content{grid-template-columns:1fr;gap:var(--spacing-8)}.about-details{grid-template-columns:1fr}.tech-grid{grid-template-columns:repeat(auto-fit,minmax(50px,1fr));gap:var(--spacing-3)}.about-stats{grid-template-columns:1fr;gap:var(--spacing-4)}.stat-card{padding:var(--spacing-6)}.skills-grid{grid-template-columns:1fr;gap:var(--spacing-4)}.skill-item{padding:var(--spacing-4)}.resume-content{grid-template-columns:1fr;gap:var(--spacing-8)}.timeline{padding-left:var(--spacing-6)}.timeline-item{padding-left:var(--spacing-4)}.genisys-container{grid-template-columns:1fr;gap:var(--spacing-6)}.genisys-form{padding:var(--spacing-4)}.input-group{flex-direction:column}.input-group button{width:100%}.services-grid{grid-template-columns:1fr;gap:var(--spacing-6)}.service-card{padding:var(--spacing-6)}.portfolio-grid{grid-template-columns:1fr;gap:var(--spacing-6)}.portfolio-image{height:200px}.portfolio-content{padding:var(--spacing-4)}.contact-card{padding:var(--spacing-8);margin:0 var(--spacing-4)}.contact-icon i{font-size:var(--font-size-4xl)}.contact-content h4{font-size:var(--font-size-xl)}.contact-link{font-size:var(--font-size-lg)}.section-header h2{font-size:var(--font-size-3xl)}.back-to-top{bottom:var(--spacing-20);right:var(--spacing-4)}.whatsapp-float{width:50px;height:50px;right:var(--spacing-4);bottom:var(--spacing-4)}}@media (max-width:480px){.hero-title{font-size:var(--font-size-3xl)}.hero-subtitle{font-size:var(--font-size-lg)}.section-header h2{font-size:var(--font-size-2xl)}.profile-image{width:250px;height:250px}.floating-tech{width:350px;height:350px}.tech-icon{width:32px;height:32px}.tech-grid{grid-template-columns:repeat(4,1fr)}.service-card,.stat-card,.skill-item,.project-item{padding:var(--spacing-4)}.contact-card{padding:var(--spacing-6)}.contact-icon i{font-size:var(--font-size-3xl)}.contact-content h4{font-size:var(--font-size-lg)}.contact-link{font-size:var(--font-size-base)}.timeline{padding-left:var(--spacing-4)}.timeline-item{padding-left:var(--spacing-3)}.timeline-item::before{left:-7px;width:12px;height:12px}.portfolio-tech,.tech-tags{gap:var(--spacing-1)}.tech-tag,.portfolio-tech span{padding:2px var(--spacing-2);font-size:10px}.contact-whatsapp-button{padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-base);min-width:auto;width:90%}.contact-message{font-size:var(--font-size-base)}.whatsapp-float{width:50px;height:50px;right:var(--spacing-4);bottom:var(--spacing-4)}}@media (max-width:768px){.desktop-only{display:none}}@media (min-width:1200px){.container{max-width:1400px}.hero-title{font-size:4rem}.hero-subtitle{font-size:2rem}.profile-image{width:500px;height:500px}.floating-tech{width:800px;height:800px}.tech-icon{width:60px;height:60px}}@media (min-width:1400px){.hero-container{gap:var(--spacing-20)}.about-content{gap:var(--spacing-20)}.resume-content{gap:var(--spacing-20)}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.tech-icon,.service-icon img{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}@media print{.navbar,.back-to-top,.whatsapp-float,.scroll-indicator{display:none!important}.hero-bg,.floating-tech{display:none!important}body{background:#fff!important;color:#000!important}.section-header h2,.hero-title{color:#000!important}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.floating-tech,.hero-bg{animation:none!important}}@media (max-width:768px){.light-mode .nav-menu{background:rgba(255,255,255,.98)}}@media (max-width:768px) and (orientation:landscape){.hero{min-height:100vh;padding:var(--spacing-8) 0}.hero-container{gap:var(--spacing-6)}.profile-image{width:200px;height:200px}.floating-tech{width:300px;height:300px}}