:root{--primary: #0a0a0a;--secondary: #f6e300;--text-primary: #ffffff;--text-secondary: #e0e0e0;--hover-primary: #fff047;--active: #d4c300;--error: #ff3b3b;--success: #4caf50;--background-light: #121212;--background-hover: #1a1a1a;--border: #333333;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 6px rgba(0, 0, 0, .5);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .6);--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.hover-effect{transition:all var(--transition-normal)}.hover-effect:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}*{margin:0;padding:0;box-sizing:border-box}#root{overflow:hidden;width:100%;position:relative}body,html{margin:0;padding:0;overflow-x:hidden;width:100%;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;background-color:var(--primary);color:var(--text-primary)}.image-container{position:relative;width:100%;height:100%}.image-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--background-light);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%{opacity:.6}50%{opacity:.8}to{opacity:.6}}.image-container img{opacity:0;transition:opacity .3s ease-out}.image-container img.loaded{opacity:1}.animate{opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.animate.visible{opacity:1;transform:translateY(0)}img{max-width:100%;height:auto}a{text-decoration:none;color:inherit}.navbar{background-color:var(--background-light);border-bottom:1px solid var(--border);padding:1rem 0;position:sticky;top:0;z-index:1000;box-shadow:var(--shadow-sm)}.navbar-container{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.navbar-logo{text-decoration:none}.logo-text{color:var(--secondary);font-size:1.5rem;font-weight:700}.navbar-links{display:flex;gap:3rem;list-style:none}.navbar-links a{color:var(--text-primary);text-decoration:none;font-size:1rem;padding:.5rem 0;position:relative;transition:var(--transition-normal)}.navbar-links a:after{content:"";position:absolute;width:0;height:2px;bottom:0;left:0;background-color:var(--secondary);transition:var(--transition-normal)}.navbar-links a:hover:after,.navbar-links a.active:after{width:100%}.navbar-links a:hover,.navbar-links a.active{color:var(--secondary)}.burger-menu{display:none;flex-direction:column;justify-content:space-between;width:30px;height:20px;background:none;border:none;cursor:pointer;z-index:1100}.burger-menu span{display:block;width:100%;height:3px;background-color:var(--text-primary);transition:var(--transition-normal)}.burger-menu.open span:nth-child(1){transform:rotate(45deg) translateY(8px)}.burger-menu.open span:nth-child(2){opacity:0}.burger-menu.open span:nth-child(3){transform:rotate(-45deg) translateY(-8px)}.navbar-links.show{display:flex;flex-direction:column;gap:1rem;position:absolute;top:70px;right:0;background-color:var(--background-light);padding:1rem 2rem;width:200px;border-radius:8px;box-shadow:var(--shadow-md);z-index:1000}@media (max-width: 768px){.burger-menu{display:flex}.navbar-links{display:none}.navbar-links.show{display:flex}}.footer{background-color:var(--background-light);padding:2rem 0;margin-top:auto}.footer-container{max-width:1200px;margin:0 auto;padding:0 2rem}.footer-content{display:flex;justify-content:space-between;align-items:center}.footer-copyright{color:var(--text-secondary)}.footer-links{display:flex;gap:2rem}.footer-links a{color:var(--text-secondary);text-decoration:none;transition:var(--transition-normal)}.footer-links a:hover{color:var(--secondary)}.layout{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;max-width:1200px;margin:0 auto;padding:1rem;width:100%}.hero{display:flex;align-items:center;justify-content:center;height:100vh;background-color:var(--primary);color:var(--text-primary);text-align:center}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero-content{max-width:800px;padding:2rem;animation:fadeIn 1s ease-in-out}.hero h1{font-size:2.5rem;margin-bottom:1rem;color:var(--secondary)}.hero p{font-size:1.25rem;margin-bottom:2rem;color:var(--text-secondary)}.hero-image{flex-shrink:0;width:250px;height:250px;border-radius:50%;overflow:hidden;border:3px solid var(--secondary);box-shadow:var(--shadow-md);opacity:0;animation:fadeIn 1s ease-in-out .3s forwards;margin:0 auto 2rem}.hero-image img{width:100%;height:100%;object-fit:cover}.profile-cta{display:flex;justify-content:center;gap:1rem;margin-top:2rem}.cta-button{padding:.75rem 1.5rem;background-color:var(--secondary);color:var(--primary);text-decoration:none;border-radius:5px;transition:var(--transition-normal)}.cta-button:hover{background-color:var(--hover-primary)}.skills{padding:4rem 1rem;background-color:var(--background-light);color:var(--text-primary);text-align:center;overflow:hidden}.skills h2{font-size:2rem;margin-bottom:2rem}.skills-list{list-style:none;display:flex;justify-content:center;flex-wrap:wrap;gap:1rem;max-width:1200px;margin:0 auto;padding:0}.skills-list li{background-color:var(--primary);padding:.5rem 1rem;border-radius:5px;box-shadow:var(--shadow-sm);transition:var(--transition-normal);animation:slideIn .5s ease-out backwards}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.skills-list li:hover{background-color:var(--secondary);color:var(--primary);transform:translateY(-5px)}.featured-projects{padding:4rem 0;text-align:center;background-color:var(--primary);color:var(--text-primary);width:100%;overflow:hidden}.featured-projects h2{font-size:2rem;margin-bottom:2rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;width:100%;padding:0 1rem;max-width:1200px;margin:0 auto}.project-card{background-color:var(--background-light);border-radius:8px;box-shadow:var(--shadow-sm);overflow:hidden;transition:var(--transition-normal)}.project-card img{width:100%;aspect-ratio:16 / 9;object-fit:cover;display:block}.project-card h3{font-size:1.25rem;margin:1rem 0;color:var(--secondary)}.project-card .cta-button{display:inline-block;margin:1rem;padding:.5rem 1rem}@media (max-width: 768px){.hero{padding:2rem 1rem;height:auto}.hero h1{font-size:2rem}.hero p{font-size:1rem}.hero-image{width:120px;height:120px;margin-bottom:1.5rem}.profile-cta{flex-direction:column;align-items:center}.profile-cta .cta-button{width:auto;margin-bottom:1rem;text-align:center;max-width:200px}.cta-button{font-size:.9rem;padding:.5rem 1rem}.skills{padding:2rem 1rem}.skills-list{flex-direction:column;align-items:center;gap:1rem;padding:0 1rem}.skills-list li{width:100%;padding:.75rem;font-size:.9rem;max-width:280px}.featured-projects{padding:2rem 0}.projects-grid{grid-template-columns:1fr;gap:1rem;padding:0 1rem}.project-card h3{font-size:1.1rem}.project-card p{font-size:.9rem}.project-card .cta-button{font-size:.85rem;padding:.4rem 1rem}}.projects{padding:4rem 2rem;background-color:var(--primary);color:var(--text-primary);text-align:center}.projects h1{font-size:2.5rem;margin-bottom:3rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;padding:0 2rem}.project-card{background-color:var(--background-light);border-radius:8px;box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.project-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.project-card img{width:100%;height:180px;object-fit:cover;display:block}.project-card h2{font-size:1.5rem;margin:1rem 0;color:var(--secondary)}.project-card p{font-size:1rem;color:var(--text-secondary);padding:0 1rem}.technologies{list-style:none;padding:0;display:flex;justify-content:center;flex-wrap:wrap;gap:1rem;margin:1rem 0}.technologies li{background-color:var(--primary);color:var(--text-primary);padding:.5rem 1rem;border-radius:5px;font-size:.9rem;transition:var(--transition-normal)}.technologies li:hover{background-color:var(--secondary);color:var(--primary);transform:translateY(-2px)}.project-links{display:flex;justify-content:center;gap:1rem;margin-bottom:1rem}.project-links a{display:inline-block;padding:.75rem 1.5rem;background-color:var(--secondary);color:var(--primary);text-decoration:none;border-radius:5px;transition:var(--transition-normal)}.project-links a:hover{background-color:var(--hover-primary)}.text-soon{padding:1rem}@media (max-width: 768px){.projects{padding:2rem 0}.projects h1{font-size:2rem}.projects-grid{padding:0}.technologies{gap:.5rem}.technologies li{font-size:.8rem;padding:.4rem .8rem}.project-links{flex-direction:column;align-items:center}.project-links a{width:80%}}.about{padding:4rem 2rem;background-color:var(--primary);color:var(--text-primary);display:flex;flex-direction:column;align-items:center}.about h1{text-align:center;font-size:2.5rem;margin-bottom:3rem;color:var(--text-primary)}.skills-grid{display:grid;grid-template-columns:1fr;gap:2rem;align-items:start;max-width:1200px;width:100%;margin:0 auto;justify-content:center}.content-center{grid-column:2 / 3;max-width:600px;margin:0 auto;width:100%}.about-section{margin-bottom:4rem}.about-section h2{color:var(--secondary);font-size:1.8rem;margin-bottom:1.5rem;text-align:center}.about-section p{color:var(--text-secondary);line-height:1.6;margin-bottom:1rem;text-align:center}.skills-container{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;border:2px solid var(--secondary);border-radius:8px;background-color:var(--background-light);width:300px}.skills-sidebar{grid-column:3 / 4;align-self:start;position:sticky;top:2rem}.skills-evaluation{grid-column:1 / 2;align-self:start;position:sticky;top:2rem}.skill-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;font-size:1rem;color:var(--text-primary);transition:transform var(--transition-normal)}.skill-icon{font-size:1.5rem;color:var(--secondary)}.skill-item:hover{transform:translate(5px);background-color:var(--background-hover);border-radius:4px}.skill-dots{display:flex;gap:.3rem;align-items:center;margin-left:auto}.level-dot{width:10px;height:10px;border-radius:50%;border:2px solid var(--secondary)}.level-dot.filled{background-color:var(--secondary)}.timeline{position:relative;padding-left:2rem}.timeline:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background-color:var(--secondary)}.timeline-item{position:relative;padding-bottom:2rem}.timeline-item:before{content:"";position:absolute;left:-2.4rem;top:0;width:12px;height:12px;border-radius:50%;background-color:var(--secondary)}.date{color:var(--secondary);font-weight:700;margin-bottom:.5rem;display:block}.timeline-content{background-color:var(--background-light);padding:1rem;border-radius:8px;box-shadow:var(--shadow-sm)}.timeline-content h3{color:var(--text-primary);margin-bottom:.5rem}.contact-links{display:flex;gap:1.5rem;justify-content:center;margin-top:2rem}.contact-link{padding:.75rem 1.5rem;background-color:var(--secondary);color:var(--primary);text-decoration:none;border-radius:5px;transition:var(--transition-normal)}.contact-link:hover{background-color:var(--hover-primary);transform:translateY(-2px)}.contact-link,.cv-download-link{display:flex}@media (min-width: 1201px){.skills-grid{grid-template-columns:300px minmax(auto,600px) 300px}.skills-evaluation{grid-column:1 / 2;grid-row:1 / 2}.content-center{grid-column:2 / 3;grid-row:1 / 2}.skills-sidebar{grid-column:3 / 4;grid-row:1 / 2}.skills-evaluation,.skills-sidebar{position:sticky;top:2rem}}@media (max-width: 768px){.about{padding:2rem 1rem}.about h1{font-size:2rem}.skills-grid{display:flex;flex-direction:column}.skills-container{width:100%;max-width:400px;margin:0 auto 2rem}.content-center{display:flex;flex-direction:column}.skills-sidebar,.skills-evaluation{position:static;order:1}.content-center>.about-section:first-child{order:0}.content-center>.about-section:not(:first-child){order:2}.contact-links{flex-direction:column;align-items:center}.contact-link{width:100%;text-align:center}}@media (min-width: 769px){.mobile-skills-section{display:none}}
