@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";@import"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css";.navigation{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.1)}.nav-container{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:1.5rem 4rem;max-width:1400px;margin:0 auto;width:100%}.nav-links{display:flex;list-style:none;margin:0;gap:1.7rem;justify-content:flex-start}.logo{justify-self:center;position:relative;width:60px;height:60px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.3rem;font-weight:700;box-shadow:var(--shadow-primary);transition:transform .3s ease;cursor:pointer}.logo:hover{transform:scale(1.1) rotate(5deg)}.nav-right{display:flex;align-items:center;gap:1rem;justify-self:end}.nav-links a{color:var(--text-dark);text-decoration:none;font-weight:500;font-size:1.1rem;padding:.5rem 0;border-bottom:2px solid transparent;transition:all .3s ease;position:relative}.nav-links a:hover,.nav-links a.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.nav-links a:before{content:"";position:absolute;top:-5px;left:50%;transform:translate(-50%) scaleX(0);width:100%;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));transition:transform .3s ease}.nav-links a:hover:before,.nav-links a.active:before{transform:translate(-50%) scaleX(1)}.social-links{display:flex;gap:.75rem;align-items:center;font-size:1.3rem}.social-links a,.theme-toggle{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--primary-color);background:var(--bg-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-glass);text-decoration:none;transition:all .3s ease;cursor:pointer}.social-links a:hover,.theme-toggle:hover{transform:translateY(-3px);background:var(--bg-glass-hover);box-shadow:var(--shadow-primary)}.mobile-menu-toggle{display:none;background:var(--bg-glass);border:1px solid var(--border-glass);border-radius:8px;padding:.75rem;color:var(--text-dark);cursor:pointer;transition:all .3s ease}.mobile-menu-toggle:hover{background:var(--bg-glass-hover);transform:scale(1.05)}@media (max-width: 1024px){.nav-container{padding:1rem 2rem;max-width:100%}}@media (max-width: 768px){.nav-container{grid-template-columns:1fr auto 1fr;padding:1rem;position:relative}.nav-links{position:absolute;top:100%;left:0;right:0;background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:0 0 1rem 1rem;flex-direction:column;gap:0;padding:1rem 0;transform:translateY(-10px);opacity:0;visibility:hidden;transition:all .3s ease;box-shadow:var(--shadow-primary);justify-content:flex-start}.nav-links.nav-open{transform:translateY(0);opacity:1;visibility:visible}.nav-links li{padding:0 2rem}.nav-links a{display:block;padding:.75rem 0;border-bottom:1px solid var(--border-glass)}.nav-links li:last-child a{border-bottom:none}.social-links{gap:.5rem}.social-links a,.theme-toggle{width:35px;height:35px;font-size:.9rem}.mobile-menu-toggle{display:flex;align-items:center;justify-content:center}.logo{width:50px;height:50px;font-size:1.3rem}}@media (max-width: 480px){.nav-container{padding:1rem .5rem}.social-links{gap:.25rem}.social-links a,.theme-toggle{width:32px;height:32px;font-size:.8rem}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;overflow-x:hidden;overflow-y:scroll}#root{width:100%;min-height:100vh;overflow:hidden}:root{--primary-color: #667eea;--secondary-color: #764ba2;--accent-color: #f59e0b;--text-dark: #1a202c;--text-medium: #4a5568;--text-light: #718096;--bg-glass: rgba(255, 255, 255, .1);--bg-glass-hover: rgba(255, 255, 255, .2);--border-glass: rgba(255, 255, 255, .2);--shadow-primary: 0 10px 30px rgba(102, 126, 234, .3);--shadow-hover: 0 15px 40px rgba(102, 126, 234, .4);--shadow-dark: 0 20px 40px rgba(0, 0, 0, .2);--max-width: 1200px;--container-padding: 2rem;--border-radius: 8px;--transition: all .3s ease}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:rgba(255,255,255,.1)}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,var(--secondary-color),var(--primary-color))}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(3deg)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes backgroundShift{0%{opacity:.3}to{opacity:.7}}.fade-in{animation:fadeInUp .8s ease forwards}.float{animation:float 6s ease-in-out infinite}.pulse{animation:pulse 2s infinite}.bounce{animation:bounce 3s infinite}body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(120,119,198,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,119,198,.1) 0%,transparent 50%);z-index:-1;animation:backgroundShift 10s ease-in-out infinite alternate}@media (max-width: 768px){:root{--container-padding: 1rem}html{font-size:14px}}img{max-width:100%;height:auto;display:block}:focus{outline:3px solid var(--primary-color);outline-offset:2px}.loading{opacity:.7;pointer-events:none}.home-container{display:flex;align-items:center;max-width:1400px;margin:0 auto;padding:2rem 4rem;min-height:70vh;gap:4rem}.hero-image{flex:1;position:relative;max-width:600px;display:flex;align-self:center;justify-content:center}.hero-image img{border-radius:20px;box-shadow:var(--shadow-primary);position:relative;z-index:2;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color))}.hero-content{flex:1;padding-left:2rem}.hero-title{font-size:3.5rem;font-weight:800;color:var(--text-dark);line-height:1.1;margin-bottom:1.5rem;background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-description{font-size:1.2rem;color:var(--text-medium);line-height:1.7;margin-bottom:2.5rem;max-width:500px}.cta-buttons{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.btn{padding:1rem 2rem;border:none;border-radius:50px;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;transition:all .3s ease;cursor:pointer;font-family:inherit}.btn-primary{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);color:#fff;box-shadow:var(--shadow-primary)}.btn-primary:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}.btn-secondary{background:var(--bg-glass);color:var(--text-dark);border:2px solid var(--border-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-secondary:hover{background:var(--bg-glass-hover);border-color:#667eea66;transform:translateY(-2px)}.floating-element{position:absolute;z-index:100;transition:transform .3s ease}.floating-element:hover{transform:scale(1.1)!important}.hire-me-badge{bottom:10%;left:5%;width:120px;height:120px;background:linear-gradient(135deg,var(--text-dark),#4a5568);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.9rem;text-align:center;box-shadow:var(--shadow-dark);animation:pulse 2s infinite;cursor:pointer}.lightbulb{top:15%;right:10%;font-size:3rem;color:var(--accent-color);animation:bounce 3s infinite;cursor:pointer}.tech-labels{position:absolute;left:0;top:50%;transform:translateY(-50%)}.tech-label{background:var(--bg-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.5rem 1rem;border-radius:20px;font-size:.8rem;color:var(--text-dark);margin:.5rem 0;transform:rotate(-90deg);transform-origin:left center;border:1px solid var(--border-glass);white-space:nowrap}@media (max-width: 1024px){.home-container{padding:2rem 3rem;gap:3rem}.hero-title{font-size:3rem}.hero-description{font-size:1.1rem}}@media (max-width: 768px){.home-container{flex-direction:column;padding:2rem;text-align:center;gap:2rem}.hero-content{padding-left:0;order:2}.hero-image{order:1;max-width:400px}.hero-title{font-size:2.5rem}.hero-description{font-size:1rem;max-width:100%}.cta-buttons{justify-content:center}.floating-element{display:none}}@media (max-width: 480px){.home-container{padding:1rem}.hero-title{font-size:2rem}.hero-description{font-size:.95rem}.btn{padding:.75rem 1.5rem;font-size:.9rem}.cta-buttons{flex-direction:column;width:100%}.btn{width:100%;justify-content:center}}.about-page{min-height:100vh;padding:2rem 0}.about-container{max-width:1200px;margin:0 auto;padding:0 4rem}.about-header{text-align:center;margin-bottom:4rem}.about-header h1{font-size:3rem;font-weight:800;color:var(--text-dark);margin-bottom:1rem;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.about-header p{font-size:1.2rem;color:var(--text-medium);max-width:600px;margin:0 auto}.about-intro{margin-top:20px;text-align:center;margin-bottom:4rem;align-items:center}h2{margin-bottom:1rem;margin-top:3rem}.intro-content h2{font-size:2.5rem;color:var(--text-dark)}.intro-content p{font-size:1.1rem;line-height:1.7;color:var(--text-medium);margin-bottom:1.5rem}.intro-stats{display:flex;flex-direction:column;gap:2rem}.stat{text-align:center;padding:1.5rem;background:var(--bg-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-glass);border-radius:1rem;transition:transform .3s ease}.stat:hover{transform:translateY(-5px)}.stat h3{font-size:2.5rem;font-weight:800;color:var(--primary-color);margin-bottom:.5rem}.stat p{color:var(--text-medium);font-weight:500}.skills-section{margin-bottom:4rem}.skills-section h2{font-size:2.5rem;color:var(--text-dark);text-align:center}.skills-grid{margin-top:30px;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.skill-card{background:var(--bg-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-glass);border-radius:1rem;padding:1.5rem;transition:all .3s ease;display:flex;flex-direction:column;align-items:center}.skill-card:hover{transform:translateY(-5px);background:var(--bg-glass-hover)}.skill-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.skill-header i{font-size:1.5rem;color:var(--primary-color)}.skill-header span{font-weight:600;color:var(--text-dark)}.skill-bar{height:8px;background:rgba(255,255,255,.2);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.skill-progress{height:100%;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));border-radius:4px;width:var(--progress);transition:width 1s ease;animation:progressFill 2s ease-out}.skill-level{display:inline-block;margin-top:.5rem;padding:.3rem 1rem;border-radius:20px;font-size:.95rem;font-weight:600;background:var(--bg-glass);color:var(--primary-color);border:1px solid var(--border-glass);transition:background .3s,color .3s}.skill-level-avancé{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff}.skill-level-intermédiaire{background:var(--bg-glass-hover);color:var(--primary-color)}.skill-level-débutant{background:#f3f4f6;color:var(--text-light)}@keyframes progressFill{0%{width:0}to{width:var(--progress)}}.skill-percentage{font-size:.9rem;font-weight:600;color:var(--text-medium)}.experience-section{margin-bottom:4rem}.experience-section h2{font-size:2.5rem;color:var(--text-dark);text-align:center}.timeline{position:relative;padding:2rem 0}.timeline:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:linear-gradient(180deg,var(--primary-color),var(--secondary-color));transform:translate(-50%)}.timeline-item{display:flex;justify-content:flex-end;padding-right:2rem;position:relative;margin-bottom:3rem;width:50%}.timeline-item:nth-child(2n){align-self:flex-end;justify-content:flex-start;padding-left:2rem;padding-right:0;left:50%}.timeline-marker{position:absolute;top:2rem;right:-.75rem;width:1.5rem;height:1.5rem;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:50%;border:3px solid rgba(255,255,255,.9);z-index:2}.timeline-item:nth-child(2n) .timeline-marker{left:-.75rem;right:auto}.timeline-content{background:var(--bg-glass);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-glass);border-radius:1rem;padding:2rem;max-width:400px;transition:all .3s ease}.timeline-content:hover{transform:translateY(-5px);background:var(--bg-glass-hover)}.timeline-content h3{color:var(--text-dark);font-size:1.3rem;margin-bottom:.5rem}.timeline-content h4{color:var(--primary-color);font-size:1.1rem;margin-bottom:.5rem}.timeline-content .period{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;padding:.25rem .75rem;border-radius:15px;font-size:.8rem;font-weight:500}.timeline-content p{color:var(--text-medium);line-height:1.6;margin-top:1rem}.values-section h2{font-size:2rem;text-align:center;margin-bottom:3rem}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;padding:1rem}.value-card{text-align:center;padding:2.5rem 2rem;background:var(--bg-glass);border-radius:1rem;border:1px solid var(--border-glass)}.value-card i{font-size:2.5rem;color:var(--primary-color);margin-bottom:1.5rem}.value-card h3{font-size:1.3rem;margin-bottom:1rem}.value-card p{line-height:1.6;color:var(--text-medium)}@media (max-width: 1024px){.about-container{padding:0 3rem}.about-intro{grid-template-columns:1fr;gap:2rem}.intro-stats{flex-direction:row;justify-content:space-around}}@media (max-width: 768px){.about-container{padding:0 2rem}.about-header h1{font-size:2.5rem}.intro-content h2,.skills-section h2,.experience-section h2,.values-section h2{font-size:2rem}.timeline:before{left:2rem}.timeline-item{width:100%;padding-left:4rem;padding-right:0}.timeline-item:nth-child(2n){left:0;padding-left:4rem}.timeline-marker{left:1.25rem!important;right:auto!important}.intro-stats{flex-direction:column;gap:1rem}}@media (max-width: 480px){.about-container{padding:0 1rem}.about-header h1{font-size:2rem}.intro-content h2,.skills-section h2,.experience-section h2,.values-section h2{font-size:1.75rem}.values-grid{grid-template-columns:1fr}}.skills-categories-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:2rem}.category-box{background:var(--card-bg, #f8f9fa);border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000001a;transition:transform .3s ease,box-shadow .3s ease;text-align:center}.category-box:hover{transform:translateY(-5px);box-shadow:0 4px 12px #00000026}.category-title{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:3px solid var(--primary-color, #007bff);color:var(--text-color, #333)}.category-skills{display:flex;flex-direction:column;gap:1rem}.skill-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--skill-bg, #fff);border-radius:8px;transition:background .3s ease}.skill-item:hover{background:var(--skill-hover-bg, #f0f0f0)}.skill-info{display:flex;align-items:center;gap:.75rem}.skill-info i{font-size:1.5rem;color:var(--icon-color, #007bff)}.skill-name{font-weight:500;color:var(--text-color, #333)}.skill-badge{padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:600;white-space:nowrap}.skill-badge-avancé{background:#d4edda;color:#155724}.skill-badge-intermédiaire{background:#fff3cd;color:#856404}.skill-badge-débutant{background:#cce5ff;color:#004085}@media (max-width: 968px){.skills-categories-grid{grid-template-columns:1fr;gap:1.5rem}}@media (max-width: 576px){.category-box{padding:1rem}.category-title,.skill-info i{font-size:1.25rem}.skill-name{font-size:.9rem}}.projects-page{min-height:100vh;padding:4rem 0}.projects-container{max-width:1200px;margin:0 auto;padding:0 4rem}.projects-header{text-align:center;margin-bottom:4rem}.projects-header h1{font-size:3rem;font-weight:800;color:var(--text-dark);margin-bottom:1rem;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.projects-header p{font-size:1.2rem;color:var(--text-medium);max-width:600px;margin:0 auto}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}.filter-tabs{display:flex;justify-content:center;gap:1.5rem;margin-bottom:2.5rem;flex-wrap:wrap}.filter-tab{background:var(--bg-glass);border:1px solid var(--border-glass);color:var(--text-dark);font-size:1rem;font-weight:600;padding:.75rem 1.5rem;border-radius:30px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;outline:none}.filter-tab.active,.filter-tab:hover{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;box-shadow:var(--shadow-primary);border-color:var(--primary-color)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:2rem;margin-bottom:3rem}.project-card{background:var(--bg-glass);border:1px solid var(--border-glass);border-radius:1.2rem;overflow:hidden;box-shadow:var(--shadow-primary);transition:transform .3s,box-shadow .3s,background .3s;opacity:1;transform:translateY(0);position:relative;display:flex;flex-direction:column}.project-card.featured{border:2px solid var(--primary-color);box-shadow:0 15px 40px #667eea66}.featured-badge{position:absolute;top:1rem;left:1rem;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;font-size:.85rem;font-weight:700;padding:.4rem 1rem;border-radius:20px;z-index:2;box-shadow:var(--shadow-primary)}.status-badge{position:absolute;top:1rem;right:1rem;font-size:.8rem;font-weight:600;padding:.3rem .8rem;border-radius:15px;z-index:2;box-shadow:0 2px 8px #0000001a}.status-badge.en-cours{background-color:#4a5568;color:#fff}.status-badge.terminé{background-color:#38a169;color:#fff}.project-image{position:relative;width:100%;height:200px;overflow:hidden;border-bottom:1px solid var(--border-glass)}.project-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.project-card:hover .project-image img{transform:scale(1.05)}.project-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(102,126,234,.15),rgba(118,75,162,.15));opacity:0;transition:opacity .3s;display:flex;align-items:flex-end;justify-content:flex-end;padding:1rem}.project-card:hover .project-overlay{opacity:1}.project-links{display:flex;gap:.5rem}.project-link{background:var(--bg-glass);border:1px solid var(--border-glass);color:var(--primary-color);width:40px;height:40px;border-radius:50%;display:flex;color:#fff;align-items:center;justify-content:center;font-size:1.2rem;transition:all .3s;text-decoration:none}.project-link:hover{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;box-shadow:var(--shadow-primary)}.project-content{padding:1rem;flex:1;display:flex;flex-direction:column}.project-content h3{font-size:1.4rem;font-weight:700;color:var(--text-dark);margin-bottom:.5rem}.project-content p{color:var(--text-medium);font-size:1rem;line-height:1.6;margin-bottom:.5rem}.project-technologies{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto}.tech-tag{background:var(--bg-glass);border:1px solid var(--border-glass);color:var(--primary-color);font-size:.85rem;padding:.3rem .8rem;border-radius:15px;font-weight:600;transition:background .3s,color .3s}.project-card:hover .tech-tag{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff}.no-projects{text-align:center;color:var(--text-light);margin:3rem 0;font-size:1.2rem}.no-projects i{font-size:2.5rem;margin-bottom:1rem;color:var(--primary-color)}.cta-section{text-align:center;margin-top:3rem;padding:2rem 0;background:var(--bg-glass);border-radius:1rem;box-shadow:var(--shadow-primary)}.cta-section h2{font-size:2rem;color:var(--text-dark);margin-bottom:1rem}.cta-section p{color:var(--text-medium);margin-bottom:2rem}.cta-section .btn{padding:1rem 2rem;border-radius:50px;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;transition:all .3s ease;cursor:pointer;font-family:inherit;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;box-shadow:var(--shadow-primary);border:none}.cta-section .btn:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}.fade-in-element{opacity:0;transform:translateY(30px);transition:all .8s ease}.fade-in-element.visible{opacity:1;transform:translateY(0)}.project-content p{color:var(--text-light);line-height:1.6;margin-bottom:1.5rem}.tech-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tech-tag{background:var(--bg-glass);padding:.4rem 1rem;border-radius:2rem;font-size:.9rem;color:var(--primary-color);border:1px solid var(--border-glass)}@media (max-width: 1024px){.projects-container{padding:0 2rem}.projects-header h1{font-size:2.5rem}.projects-grid{gap:1.5rem}}@media (max-width: 768px){.projects-container{padding:0 1rem}.projects-header h1{font-size:2rem}.filter-tabs{gap:.75rem;flex-wrap:wrap}.projects-grid{grid-template-columns:1fr;gap:1rem}.project-image{height:160px}.project-content{padding:1rem}.cta-section{padding:1.5rem .5rem}}@media (max-width: 480px){.projects-header h1{font-size:1.5rem}.projects-header p{font-size:1rem}.filter-tab{padding:.5rem 1rem;font-size:.9rem}.project-content h3{font-size:1.1rem}.cta-section h2{font-size:1.2rem}.cta-section .btn{padding:.75rem 1.2rem;font-size:.95rem}}.projects-section{margin-bottom:4rem}.projects-section h2{font-size:1.8rem;margin-bottom:2rem;color:var(--text-dark);position:relative;padding-left:1rem}.projects-section h2:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:24px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));border-radius:2px}.projects-section+.projects-section{margin-top:6rem}.contact-page{min-height:100vh;padding:4rem 0}.contact-container{max-width:1100px;margin:0 auto;padding:0 2rem}.projects-header{text-align:center;margin-bottom:3rem}.projects-header h1{font-size:2.4rem;margin-bottom:.5rem;color:var(--text-dark)}.projects-header p{color:var(--text-medium);max-width:800px;margin:0 auto;line-height:1.6}.contact-grid{display:grid;grid-template-columns:1fr 360px;gap:2rem;align-items:start}.contact-form{background:var(--bg-glass);border:1px solid var(--primary-color);padding:1.5rem;border-radius:12px;display:flex;flex-direction:column;gap:1rem}.contact-form label{display:flex;flex-direction:column;gap:.5rem;font-weight:600;color:var(--primary-color)}.contact-form input,.contact-form textarea{padding:.9rem 1rem;border-radius:8px;border:1px solid var(--primary-color);background:rgba(255,255,255,.02);color:var(--text-dark);font-size:1rem}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--primary-color);border-width:2px;box-shadow:0 4px 18px #667eea1f}.contact-actions{display:flex;gap:1rem;margin-top:.5rem;flex-wrap:wrap}.btn{padding:.9rem 1.4rem;border-radius:999px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;border:none}.btn-secondary{background:var(--bg-glass);color:var(--text-dark);border:1px solid var(--border-glass)}.contact-info{display:flex;flex-direction:column;gap:1rem}.card{background:var(--bg-glass);border:1px solid var(--border-glass);padding:1rem;border-radius:12px;text-align:left}.card h3{margin-bottom:.5rem;color:var(--text-dark);font-size:1rem}.card p,.card a{color:var(--text-medium);text-decoration:none}.social-links{display:flex;gap:.75rem;margin-top:.5rem}.social-links a{width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-glass);border:1px solid var(--border-glass);color:var(--primary-color);text-decoration:none;transition:all .25s ease}.social-links a:hover{transform:translateY(-4px);box-shadow:var(--shadow-primary);background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff}@media (max-width: 900px){.contact-grid{grid-template-columns:1fr}.contact-info{order:2}.contact-form{order:1}}@media (max-width: 480px){.contact-container{padding:0 1rem}.projects-header h1{font-size:1.6rem}}
