*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Segoe UI',sans-serif;line-height:1.6;color:#333}header{position:fixed;top:0;width:100%;background:linear-gradient(90deg,#001f3f,#003366);color:#00bfff;z-index:1000;box-shadow:0 4px 15px rgb(0 0 0 / .2)}.header-container{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.nav-links{display:flex;gap:2rem}.nav-links li a{color:#fff;text-decoration:none;font-weight:500;transition:color 0.3s ease,transform 0.3s ease}.nav-links li a:hover{color:#00bfff;transform:scale(1.05)}.menu-toggle{display:none;font-size:2rem;cursor:pointer;color:#00bfff}@media (max-width:768px){.nav-links{position:absolute;top:100%;right:0;background:#001f3f;flex-direction:column;width:200px;max-height:0;overflow:hidden;transition:max-height 0.3s ease}.nav-links.active{max-height:500px}.menu-toggle{display:block}}.navbar{display:flex;justify-content:space-between;align-items:center;padding:0rem 2rem}.logo span{color:#00bfff}.nav-links{list-style:none;display:flex;gap:1.5rem}.nav-links a{color:#fff;text-decoration:none;transition:color 0.3s}.nav-links a:hover{color:#00bfff}.menu-toggle{display:none;font-size:1.8rem;cursor:pointer}.hero{background:linear-gradient(rgb(0 0 0 / .5),rgb(0 0 0 / .5)),url(https://via.placeholder.com/1600x700) center/cover;color:#fff;text-align:center;padding:8rem 2rem}.hero h2{font-size:2.5rem;margin-bottom:1rem}.btn{display:inline-block;background:#00bfff;color:#fff;padding:.8rem 1.5rem;border-radius:5px;text-decoration:none;transition:background 0.3s}.btn:hover{background:#008fcc}.accueil{position:relative;height:80vh;display:flex;align-items:center;justify-content:center;color:#fff;overflow:hidden;margin-top:calc(80px + 2rem);font-family:"Poppins",sans-serif}.carousel{position:absolute;inset:0;z-index:-1}.carousel-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1.5s ease-in-out}.carousel-slide.active{opacity:1}.accueil-content{text-align:center;padding:0 2rem}.accueil-content h1{font-size:3rem;margin-bottom:1rem;text-shadow:0 0 20px rgb(0 255 255 / .7)}.accueil-content p{font-size:1.2rem;margin-bottom:2rem;text-shadow:0 0 10px rgb(0 255 255 / .5)}.accueil-content .btn{padding:.8rem 2rem;background:#00eaff;color:#001f3f;border-radius:30px;text-decoration:none;font-weight:600;transition:background 0.3s ease}.accueil-content .btn:hover{background:#00bfff}.services,.apropos,.contact{padding:4rem 2rem;text-align:center}.service-container{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;margin-top:2rem}.service-card{background:#f4f4f4;padding:2rem;border-radius:10px;width:300px;transition:transform 0.3s}.service-card:hover{transform:translateY(-10px)}.apropos-content{display:flex;flex-wrap:wrap;gap:2rem;align-items:center;justify-content:center;margin-top:2rem}.apropos-content img{border-radius:10px;max-width:400px}.contact form{display:flex;flex-direction:column;gap:1rem;max-width:500px;margin:0 auto}.contact input,.contact textarea{padding:.8rem;border:1px solid #ccc;border-radius:5px}footer{background:#fff;color:#000;text-align:center;padding:1rem}@media (max-width:768px){.nav-links{display:none;flex-direction:column;background:#0a1f44;position:absolute;top:60px;right:0;width:200px;text-align:right;padding:1rem}.nav-links.active{display:flex}.menu-toggle{display:block}.service-container,.apropos-content{flex-direction:column}}.projets{position:relative;text-align:center;color:#fff;padding:6rem 2rem;overflow:hidden;font-family:"Poppins",sans-serif}.projets h2{font-size:2.5rem;letter-spacing:2px;margin-bottom:3rem;color:#fff;position:relative}.project-card{opacity:0;transform:translateY(40px);transition:all 0.8s ease}.project-card.visible{opacity:1;transform:translateY(0)}.h2_competences{font-size:2.5rem;letter-spacing:2px;margin-bottom:1rem;color:#fff;position:relative;text-align:center}.projets h2::after,.h2_competences::after{content:"";display:block;width:80px;height:3px;background:linear-gradient(90deg,transparent,#00eaff,transparent);margin:10px auto 0;border-radius:3px}.projets::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,#060018,#0d053b,#002b44);background-size:400% 400%;animation:bgShift 14s ease infinite;z-index:-2}@keyframes bgShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}#particles{position:absolute;top:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none}.project-container{display:grid;grid-template-columns:25% 25% 20%;flex-wrap:wrap;justify-content:center;gap:2rem;padding:2rem 0}.project-card{flex:1 1 calc(33.333% - 2rem);max-width:300px;min-width:250px;height:260px;perspective:1000px;margin-top:20px;opacity:0;transform:translateY(40px);transition:all 0.8s ease}.project-card.visible{opacity:1;transform:translateY(0)}@media (max-width:1024px){.project-card{flex:1 1 calc(50% - 2rem)}.project-container{display:inline-flex}}@media (max-width:768px){.project-card{flex:1 1 90%;margin:0 auto}}.card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform 0.9s cubic-bezier(.3,.8,.2,1);border-radius:20px}.project-card:hover .card-inner{transform:rotateY(180deg)}.card-front,.card-back{position:absolute;width:100%;height:100%;border-radius:20px;overflow:hidden;backface-visibility:hidden;transition:box-shadow 0.4s ease,transform 0.3s ease}.card-front{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:#fff}.card-front img{width:100%;height:180px;object-fit:cover;border-bottom:1px solid #eee;transition:transform 0.6s ease,filter 0.6s ease}.card-front h3{margin:1rem 0;color:#0a1f44;font-weight:600;text-align:center}.project-card:hover .card-front{box-shadow:0 15px 35px rgb(0 191 255 / .25)}.project-card:hover .card-front img{transform:scale(1.05);filter:brightness(1)}.card-back{background:linear-gradient(160deg,rgb(0 40 60 / .9),rgb(0 10 30 / .95));transform:rotateY(180deg);padding:1.5rem;color:#b2f7ff;display:flex;flex-direction:column;justify-content:center;text-align:center;line-height:1.5}.card-back h4{color:#00eaff;margin-bottom:.5rem;font-weight:600;text-shadow:0 0 6px #00eaff}.project-card:hover .card-back{box-shadow:0 15px 35px rgb(0 191 255 / .25)}@media (max-width:1024px){.project-card{flex:1 1 calc(50% - 2.5rem)}}@media (max-width:700px){.project-card{flex:1 1 90%;margin:0 auto}}.a-propos{position:relative;padding:6rem 2rem;background:#fff;color:#001f3f;font-family:"Poppins",sans-serif}.apropos-container{display:flex;align-items:center;justify-content:center;gap:3rem;max-width:1200px;margin:0 auto;flex-wrap:wrap}.apropos-photo img{width:300px;height:300px;border-radius:50%;object-fit:cover;border:4px solid #00bfff;object-position:top;opacity:1!important;transform:none!important}.apropos-photo img:hover{transform:scale(1.05);box-shadow:0 0 30px rgb(0 191 255 / .5)}.apropos-photo{opacity:0;transform:translateY(40px);transition:all 0.8s ease-out}.apropos-photo.visible{opacity:1;transform:translateY(0)}.apropos-text{max-width:600px;opacity:0;transform:translateY(40px);transition:all 0.8s ease-out}.apropos-text.visible{opacity:1;transform:translateY(0)}.apropos-text h2{font-size:2.5rem;margin-bottom:1rem;color:#00bfff}.apropos-text p{font-size:1.1rem;line-height:1.6;margin-bottom:2rem;color:#001f3f}.apropos-text .btn{padding:.8rem 2rem;background:#00bfff;color:#fff;border-radius:30px;text-decoration:none;font-weight:600;transition:background 0.3s ease,transform 0.3s ease}.apropos-text .btn:hover{background:#09c;transform:scale(1.05)}@keyframes fadeSlide{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.apropos-container{flex-direction:column;text-align:center;gap:2rem}.apropos-photo img{width:250px;height:250px}}.services{padding:6rem 2rem;text-align:center;font-family:"Poppins",sans-serif;background:#f0f8ff}.services h2{font-size:2.5rem;margin-bottom:3rem;color:#07c;position:relative}.services h2::after{content:"";display:block;width:80px;height:3px;background:linear-gradient(90deg,transparent,#00bfff,transparent);margin:10px auto 0;border-radius:3px}.services-container{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem}.service-card{background:#fff;border-radius:20px;padding:2rem 1.5rem;width:280px;box-shadow:0 10px 25px rgb(0 0 0 / .08);transition:transform 0.3s ease,box-shadow 0.3s ease;opacity:0;transform:translateY(40px)}.service-card.visible{opacity:1;transform:translateY(0)}.service-card:hover{transform:translateY(-10px);box-shadow:0 15px 35px rgb(0 0 0 / .15)}.service-card img{width:80px;height:80px;margin-bottom:1rem}.service-card h3{font-size:1.3rem;color:#07c;margin-bottom:1rem}.service-card p{font-size:.95rem;color:#001f3f;line-height:1.5}@media (max-width:768px){.services-container{flex-direction:column;align-items:center}}.service-card{background:#fff;border-radius:20px;padding:2rem 1.5rem;width:280px;box-shadow:0 10px 25px rgb(0 0 0 / .08);transform:translateY(40px);opacity:0;transition:transform 0.6s ease,opacity 0.6s ease}.service-card.visible{opacity:1;transform:translateY(0)}.contact{padding:6rem 2rem;background:linear-gradient(135deg,#f0f8ff,#e0f2ff);font-family:"Poppins",sans-serif}.contact-container{display:flex;justify-content:space-between;max-width:1200px;margin:0 auto;gap:4rem;flex-wrap:wrap}.wpcf7{flex:1 1 400px;background:#fff;padding:2.5rem;border-radius:20px;box-shadow:0 15px 35px rgb(0 0 0 / .08);animation:fadeSlide 1s ease forwards}.contact-form h2{margin-bottom:1.5rem;color:#07c}.contact-form input,.contact-form textarea{width:100%;padding:.8rem 1rem;margin-bottom:1rem;border:2px solid #ddd;border-radius:12px;font-size:1rem;transition:border-color 0.3s ease,box-shadow 0.3s ease}.contact-form input:focus,.contact-form textarea:focus{border-color:#00bfff;box-shadow:0 0 8px rgb(0 191 255 / .4);outline:none}.contact-form button{background:#00bfff;color:#fff;border:none;padding:.9rem 2rem;border-radius:30px;font-size:1rem;font-weight:600;cursor:pointer;transition:background 0.3s ease,transform 0.3s ease}.contact-form button:hover{background:#09c;transform:scale(1.05)}.contact-form_button{background:#00bfff;color:#fff;border:none;padding:.9rem 2rem;border-radius:30px;font-size:1rem;font-weight:600;cursor:pointer;transition:background 0.3s ease,transform 0.3s ease}.contact-form_button:hover{background:#09c;transform:scale(1.05)}.contact-info{flex:1 1 300px;padding:2rem;display:flex;flex-direction:column;justify-content:center}.contact-info h3{font-size:1.8rem;margin-bottom:1rem;color:#07c}.contact-info p{margin-bottom:.8rem;font-size:1rem;color:#001f3f}#contact{opacity:0;transform:translateY(100px);filter:blur(12px);transition:all 1s cubic-bezier(.2,.8,.3,1)}#contact.visible{opacity:1;transform:translateY(0);filter:blur(0)}@keyframes fadeSlide{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.contact-container{flex-direction:column;gap:2rem}}header{position:fixed;top:0;width:100%;background:#fff;color:#001f3f;z-index:1000;box-shadow:0 4px 20px rgb(0 0 0 / .1);font-family:"Poppins",sans-serif;padding:0rem 4rem;transition:background 0.3s ease,padding 0.3s ease,box-shadow 0.3s ease}header img{height:130px}.header-container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.logo{font-size:2rem;font-weight:700;color:#001f3f}.logo span{color:#00bfff}.nav-links{display:flex;gap:2rem;list-style:none}.nav-links li{position:relative}.nav-links li a{color:#001f3f;text-decoration:none;font-weight:500;padding:5px 0;transition:color 0.3s ease}.nav-links li a::after{content:'';position:absolute;left:0;bottom:0;width:0;height:2px;background:#00bfff;transition:width 0.3s ease}.nav-links li a:hover::after{width:100%}.nav-links li a:hover{color:#00bfff}.burger{width:35px;height:25px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;z-index:3000;display:none}.burger span{display:block;height:4px;width:100%;background:#012953;border-radius:4px;transition:0.4s ease;transform-origin:center}.burger.active span:nth-child(1){transform:translateY(10px) rotate(45deg)}.burger.active span:nth-child(2){opacity:0}.burger.active span:nth-child(3){transform:translateY(-10px) rotate(-45deg)}.nav-links{display:flex;gap:25px;position:static;height:auto;background:none;padding:0;right:0}.nav-links a{color:cyan;text-decoration:none;font-size:1.1rem;transition:0.3s ease}.nav-links a:hover{opacity:.7}html,body{height:100%;margin:0}@media (max-width:900px){header{padding:0}#menu-toggle{display:flex;z-index:3000}.nav-links{position:fixed;top:0;right:0;width:250px;height:100%;min-height:100vh;background:#f0f8ff;flex-direction:column;padding-top:120px;padding-left:20px;gap:25px;transition:transform 0.4s ease;transform:translateX(100%);z-index:2500;border-radius:30px 0 0 0;padding-right:7%}.nav-links.active{transform:translateX(0)}.nav-links a{color:cyan;font-size:1.2rem;opacity:0;transform:translateX(20px);transition:opacity 0.4s ease,transform 0.4s ease}.nav-links.active a{opacity:1;transform:translateX(0);font-weight:700;color:#000}}footer{background:#001f3f;color:#00eaff;padding:2rem;font-family:"Poppins",sans-serif}.footer-container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.footer-right a{margin-left:1rem;transition:transform 0.3s ease,opacity 0.3s ease}.footer-right a:hover{transform:scale(1.2);opacity:.8}@media (max-width:768px){.footer-container{flex-direction:column;text-align:center;gap:1rem}.footer-right a{margin-left:.5rem;margin-right:.5rem}}#site-content{opacity:0;transition:opacity 1s ease}#preloader{position:fixed;inset:0;background:#000;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}#preloader-canvas{position:absolute;top:0;left:0;width:100%;height:100%}.preloader-text{color:cyan;font-family:"Courier New",monospace;font-size:2rem;z-index:10;margin-bottom:20px}.competences{position:relative;padding:60px 20px;background:#0a0a0a;color:#fff;overflow:hidden}#skills-bg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.skills-container{position:relative;z-index:1;max-width:900px;margin:auto;display:flex;flex-direction:column;gap:25px}.skill{display:flex;flex-direction:column;gap:8px}.skill-label{font-weight:600;display:flex;justify-content:space-between;align-items:center}.skill-percent{font-weight:700;color:#fff}.skill-bar{background:rgb(255 255 255 / .05);height:25px;border-radius:12px;overflow:hidden;position:relative}.skill-fill{height:100%;width:0;border-radius:12px;background:linear-gradient(90deg,#0fff,#fff);box-shadow:0 0 15px #0ff,0 0 20px #00eaff inset;position:relative}.skill-fill.animated{animation:gradientMove 3s linear infinite,pulse 1.5s ease-in-out infinite}@keyframes gradientMove{0%{background-position:0% 0%}100%{background-position:200% 0%}}@keyframes pulse{0%,100%{transform:scaleY(1)}50%{transform:scaleY(1.05)}}.particle{position:absolute;width:6px;height:6px;border-radius:50%;background:cyan;pointer-events:none;opacity:.8;box-shadow:0 0 6px #0ff,0 0 10px #00eaff}#certifications{background:#f8fbff;padding:6rem 2rem;text-align:center;font-family:"Poppins",sans-serif;overflow:hidden}#certifications h2{font-size:2.5rem;color:#07c;margin-bottom:3rem;position:relative}#certifications h2::after{content:"";display:block;width:80px;height:3px;background:linear-gradient(90deg,transparent,#00bfff,transparent);margin:10px auto 0;border-radius:3px}.certif-container{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem}.certif-card{width:280px;height:340px;perspective:1000px;opacity:0;transform:translateY(40px);transition:opacity 0.8s ease,transform 0.8s ease}.certif-card.visible{opacity:1;transform:translateY(0)}.certif-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform 0.9s cubic-bezier(.3,.8,.2,1);border-radius:20px}.certif-card:hover .certif-inner{transform:rotateY(180deg)}.certif-front,.certif-back{position:absolute;width:100%;height:100%;border-radius:20px;backface-visibility:hidden;overflow:hidden;background:#fff;box-shadow:0 10px 25px rgb(0 0 0 / .08);transition:box-shadow 0.3s ease}.certif-front{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem}.certif-front img{width:100px;height:auto;margin-bottom:1rem;transition:transform 0.6s ease}.certif-front h3{font-size:1.2rem;color:#001f3f;font-weight:600;margin-top:.5rem}.certif-card:hover .certif-front img{transform:scale(1.1)}.certif-back{background:linear-gradient(160deg,#0077cc,#001f3f);color:#e0f8ff;transform:rotateY(180deg);padding:2rem;display:flex;flex-direction:column;justify-content:center;line-height:1.6;text-align:center}.certif-back span{margin-top:1rem;color:#00eaff;font-weight:600}.certif-card:hover .certif-inner{box-shadow:0 20px 45px rgb(0 191 255 / .2)}@media (max-width:768px){.certif-container{flex-direction:column;align-items:center}}#competences{position:relative;background:linear-gradient(120deg,#060018,#0d053b,#002b44);background-size:400% 400%;animation:bgShift 14s ease infinite;color:#fff;overflow:hidden}#skills-bg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.skills-container{position:relative;z-index:2}@keyframes bgShift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}.skills-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:5%}.skill-card{display:flex;flex-direction:column;align-items:center;width:140px;padding:1rem;background:#fff;border-radius:15px;transition:transform 0.3s ease;margin-top:5%}.skill-card img{width:64px;height:64px;margin-bottom:.5rem}.skill-card span{font-weight:600;text-align:center;color:#000}.skill-card:hover{transform:translateY(-5px) scale(1.05);background:#fff;box-shadow:0 0 8px #fff}@keyframes slideInRight{0%{opacity:0;transform:translateX(50px)}100%{opacity:1;transform:translateX(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-50px)}100%{opacity:1;transform:translateX(0)}}.skill-card{opacity:0}.skill-card.animate-right{animation:slideInRight 0.6s forwards}.skill-card.animate-left{animation:slideInLeft 0.6s forwards}.burger{width:35px;height:25px;display:none;flex-direction:column;justify-content:space-between;cursor:pointer;z-index:3000}.burger span{display:block;height:4px;width:100%;background:#012953;border-radius:4px;transition:0.4s ease;transform-origin:center}.burger.active span:nth-child(1){transform:translateY(10px) rotate(45deg)}.burger.active span:nth-child(2){opacity:0}.burger.active span:nth-child(3){transform:translateY(-10px) rotate(-45deg)}@media (max-width:900px){.burger{display:flex}.nav-links{position:fixed;top:0;right:0;width:250px;height:100vh;background:#f0f8ff;flex-direction:column;padding-top:120px;padding-left:20px;gap:25px;transform:translateX(100%);transition:transform 0.4s ease;z-index:2500;border-radius:30px 0 0 0}.nav-links li{margin-top:20%}.nav-links.active{transform:translateX(0)}}