@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600;700&display=swap";*{margin:0;padding:0;box-sizing:border-box;font-family:Poppins,sans-serif}body{background:#06192c;color:#d6e8f0}.no-margin-bottom{margin-bottom:0!important}.navbar{display:flex;align-items:center;justify-content:space-between;padding:30px 80px}.logo{color:#62f0d2;font-weight:700;letter-spacing:2px}.nav-links{display:flex;gap:40px;list-style:none;color:#b6d6df;font-size:14px;align-items:center}.nav-links a{color:#b6d6df;text-decoration:none}.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer}.hamburger span{width:26px;height:3px;background:#62f0d2;display:block;border-radius:3px}@media(max-width:900px){.navbar{padding:20px}.hamburger{display:flex}.nav-links{position:absolute;top:70px;right:20px;background:#071728;border:1px solid #1a3a52;border-radius:12px;padding:20px;flex-direction:column;gap:20px;display:none}.nav-links.open{display:flex}}.hero{display:flex;align-items:center;justify-content:center;min-height:80vh;max-width:1600px;margin:0 auto;padding:80px clamp(20px,5vw,100px);gap:clamp(40px,8vw,120px)}.hero-left{flex:1.2;display:flex;flex-direction:column;justify-content:center;max-width:800px}.hero-right{flex:1;display:flex;justify-content:center;align-items:center}.hero-right img{width:100%;max-width:clamp(350px,35vw,900px);height:auto;filter:drop-shadow(0 20px 50px rgba(0,0,0,.3))}@media(max-width:900px){.hero{flex-direction:column-reverse;text-align:center;padding-top:60px;min-height:auto;gap:40px}.hero-left{align-items:center;max-width:100%}.buttons-hero-holder{justify-content:center}.hero-right img{width:clamp(250px,70vw,450px)}}.intro{margin-bottom:10px;color:#9bbac7;font-size:clamp(14px,1.2vw,18px)}.hero-left h1{font-size:clamp(42px,6vw,96px);margin-bottom:20px}.description{line-height:1.7;opacity:.85;margin-bottom:40px;font-size:clamp(14px,1.1vw,18px)}.hero-paragraphs{margin-bottom:.5em}.intro{margin-bottom:10px;color:#9bbac7}h1{font-size:64px;margin-bottom:15px}.accent{color:#62f0d2}.pronounce{opacity:.7;margin-bottom:25px}.description{line-height:1.6;opacity:.8;margin-bottom:35px}.buttons-hero-holder{display:flex;gap:20px;padding:12px 24px}.projects-page{padding:60px 80px}@media(max-width:900px){.projects-page{padding:30px 20px}}.projects-title{font-size:48px;margin-bottom:60px;color:#62f0d2}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:30px;transition:opacity .25s ease,transform .25s ease}.projects-grid.fade-out{opacity:0;transform:translateY(10px)}.projects-grid.fade-in{opacity:1;transform:translateY(0)}@media(max-width:600px){.projects-grid{grid-template-columns:1fr}}.project-meta{font-size:13px;opacity:.6;margin-bottom:10px;display:flex;gap:8px;color:#141022}.project-card{border:1px solid #1a3a52;background:#fff;border-radius:14px;padding:16px;box-shadow:0 10px 25px #00000014;display:flex;flex-direction:column;gap:12px;position:relative;transition:.3s;opacity:0;transform:translateY(20px);animation:cardFadeIn .5s ease forwards}.project-card:nth-child(1){animation-delay:.05s}.project-card:nth-child(2){animation-delay:.1s}.project-card:nth-child(3){animation-delay:.15s}.project-card:nth-child(4){animation-delay:.2s}.project-card:nth-child(5){animation-delay:.25s}.project-card:nth-child(6){animation-delay:.3s}.project-card:nth-child(7){animation-delay:.35s}.project-card:nth-child(8){animation-delay:.4s}.project-card:nth-child(9){animation-delay:.45s}.project-card:nth-child(10){animation-delay:.5s}.project-card:nth-child(11){animation-delay:.55s}.project-card:nth-child(12){animation-delay:.6s}.project-card:nth-child(13){animation-delay:.65s}@keyframes cardFadeIn{to{opacity:1;transform:translateY(0)}}.project-card:hover{transform:translateY(-8px);border-color:#62f0d2}.project-img{background:#0c243b;margin-bottom:20px;width:100%;height:180px;object-fit:cover;border-radius:10px}.project-card h3{margin-bottom:10px;color:#000}.project-card p{opacity:.7;margin-bottom:15px;color:#000}.tags{display:flex;gap:10px;margin-bottom:20px}.tags span{font-size:12px;border:1px solid #62f0d2;padding:3px 8px;color:#62f0d2}.project-buttons{display:flex;gap:15px}.project-buttons{padding:8px 16px;background:transparent;border:1px solid #62f0d2;color:#62f0d2;cursor:pointer}.project-detail-meta{opacity:.7;margin-bottom:20px;display:flex;gap:10px}@media(max-width:900px){.project-title-detail{font-size:32px}.project-detail{padding:20px}}.filters{margin-bottom:40px;display:flex;gap:20px}.filters button.active-filter{background:#62f0d2;color:#06192c}.project-detail{padding:80px;max-width:900px;margin:auto}.detail-image{width:100%;margin-bottom:40px}.project-detail h1{margin-bottom:20px}.project-detail p{margin-bottom:40px;line-height:1.6;opacity:.85}.category-badge{position:absolute;top:18px;right:18px;background:#111;color:#fff;padding:4px 10px;border-radius:999px;font-size:12px}.project-actions{display:flex;flex-wrap:wrap;gap:8px}.asset-btn{background:#eee;border:none;padding:6px 10px;border-radius:6px;cursor:pointer}.details-btn{margin-top:auto;background:#000;color:#fff;padding:10px;border-radius:8px;border:none;cursor:pointer}.hero-button{padding:12px 24px;background:transparent;border:1px solid #62f0d2;color:#62f0d2;cursor:pointer;transition:.3s}.hero-button:hover{background:#62f0d2;color:#06192c}button{font-family:inherit;border:none;cursor:pointer;transition:.25s ease}.btn-primary{background:linear-gradient(135deg,#62f0d2,#4cc7ff);color:#06192c;padding:10px 18px;border-radius:10px;font-weight:600;box-shadow:0 6px 18px #62f0d240}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 24px #62f0d259}.btn-outline{background:transparent;border:1px solid #2a5674;color:#9bc7d8;padding:9px 16px;border-radius:10px}.btn-outline:hover{border-color:#62f0d2;color:#62f0d2}.btn-chip{background:#0c243b;color:#9bc7d8;padding:6px 10px;border-radius:999px;font-size:12px}.btn-chip:hover{background:#62f0d2;color:#06192c}button:disabled{opacity:.4;cursor:not-allowed}.pagination{margin-top:1em;display:flex;justify-content:space-around}.project-detail{max-width:900px;margin:auto;padding:40px 20px}.detail-image{width:100%;border-radius:14px;margin-bottom:30px}.project-description{line-height:1.7;margin:30px 0}.project-description b{font-weight:700}.project-description u{text-decoration:underline}.project-description ul{padding-left:25px;margin:10px 0}.project-description li{margin-bottom:8px}.project-actions-big{display:flex;gap:15px;flex-wrap:wrap;margin:30px 0}.gallery-title{margin-top:40px}.project-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;margin-top:20px}.gallery-item{position:relative}.gallery-item img{width:100%;border-radius:12px}.asset-badge{position:absolute;top:10px;left:10px;background:#000;color:#fff;padding:4px 10px;border-radius:20px;font-size:12px}.ressources-title{margin-bottom:20px}.asset-legend{display:flex;gap:1rem;margin-bottom:1rem;flex-direction:column;flex-wrap:nowrap}.legend-single-div{display:flex;align-items:center}.legend-item{padding:.25rem .5rem;min-width:2em;min-height:2em;border-radius:4px;font-size:.875rem;margin-right:1em;color:#fff}.legend-item.demo{background-color:#4caf50}.legend-item.link{background-color:#2196f3}.legend-item.dl{background-color:#ff9800}.btn-demo{background-color:#4caf50;color:#fff}.btn-link{background-color:#2196f3;color:#fff}.btn-dl{background-color:#ff9800;color:#fff}.btn-legend-default{padding:10px 18px;border-radius:10px;font-weight:600;box-shadow:0 6px 18px #62f0d240}.btn-demo:hover{background-color:#45a049}.btn-link:hover{background-color:#1976d2}.btn-dl:hover{background-color:#fb8c00}.gallery-thumb{cursor:pointer;transition:transform .2s}.gallery-thumb:hover{transform:scale(1.05)}.lightbox-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;justify-content:center;align-items:center;animation:fadeIn .3s ease forwards;z-index:1000;overflow:auto;padding:1rem}.lightbox-content{position:relative;max-width:90%;max-height:90%;display:flex;justify-content:center;align-items:center;animation:scaleIn .3s ease forwards}.lightbox-image{max-width:90vw;max-height:90vh;width:auto;height:auto;border-radius:8px}.lightbox-close{position:absolute;top:-10px;right:-10px;background:#fff;border:none;font-size:2rem;line-height:1;border-radius:50%;width:40px;height:40px;cursor:pointer}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.cv-page{padding:60px 80px}@media(max-width:900px){.cv-page{padding:30px 20px}}.cv-vertical-timeline{max-width:780px;margin:auto;display:flex;flex-direction:column;gap:30px;position:relative}.cv-item{display:flex;flex-direction:column;align-items:center;text-align:center}.cv-date{font-weight:700;color:#62f0d2;letter-spacing:1px;font-size:14px}.cv-date-text{background:#ffffff0a;padding:6px 14px;border-radius:999px}.cv-item-line{width:2px;height:30px;background:linear-gradient(#62f0d2,#4cc7ff);margin:10px 0;opacity:.35}.cv-card{display:flex;flex-direction:column;width:100%;gap:14px;text-align:left;border:1px solid #1a3a52;background:#fff;border-radius:14px;padding:16px;box-shadow:0 10px 25px #00000014}.cv-thumb{width:100%;height:180px;border-radius:12px;background-size:cover;background-position:center;background-color:#0c243b}.cv-meta{display:flex;flex-direction:column;gap:10px}.cv-title{font-size:48px;margin-bottom:60px;color:#62f0d2}@media(max-width:900px){.cv-title{font-size:30px;margin-bottom:45px}}.cv-card-title{font-size:30px;font-weight:700;margin-bottom:10px;color:#000}@media(max-width:900px){.cv-card-title{font-size:25px;margin-bottom:.5em}}.cv-subrow{display:flex;justify-content:space-between;font-size:13px;opacity:.6;color:#141022}.cv-summary{color:#000;opacity:.7;font-size:14px}.cv-loadmore{display:flex;justify-content:center;align-items:center;margin:1em}.cv-description-wrapper{max-height:0;overflow:hidden;opacity:0;transform:translateY(-8px);transition:max-height .6s cubic-bezier(.22,1,.36,1),opacity .35s ease,transform .35s ease}.cv-description-wrapper.open{max-height:800px;opacity:1;transform:translateY(0);margin-top:10px}.cv-description{line-height:1.7;color:#000;opacity:.7;font-size:14px}.cv-description-wrapper.open .cv-description{animation:fadeInText .5s ease .15s both}@keyframes fadeInText{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.cv-expand-btn{position:relative;padding:9px 25px 9px 15px;border-radius:10px;color:#000;opacity:.7;border:1px solid #2a5674}.cv-expand-btn:hover{opacity:1;border:1px solid #0f1e29}.cv-expand-btn:after{content:"▾";position:absolute;right:12px;transition:transform .35s ease}.cv-expand-btn.open:after{transform:rotate(180deg)}@media(min-width:900px){.cv-vertical-timeline{gap:50px}.cv-card{flex-direction:row;padding:16px}.cv-thumb{width:220px;height:150px;flex-shrink:0}.cv-meta{padding-left:10px}}.cv-badge{font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;padding:6px 12px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:6px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid transparent;transition:all .25s ease}.cv-badge-prof{color:#5da9ff;background:linear-gradient(135deg,#5da9ff26,#5da9ff0d);border-color:#5da9ff59;box-shadow:0 0 12px #5da9ff26,inset 0 0 6px #5da9ff1a}.cv-badge-school{color:#7a5cad;background:linear-gradient(135deg,#b488ffde,#b488ffad);border-color:#b488ff;box-shadow:0 0 12px #b488ffd2,inset 0 0 6px #b488ff96}.cv-badge-diploma{color:#ffd166;background:linear-gradient(135deg,#ffd1662e,#ffd1660d);border-color:#ffd16673;box-shadow:0 0 14px #ffd1662e,inset 0 0 6px #ffd16626}body.lang-switching h1,body.lang-switching h2,body.lang-switching h3,body.lang-switching p,body.lang-switching a,body.lang-switching button,body.lang-switching span,body.lang-switching li{animation:langFade .6s ease}@keyframes langFade{0%{opacity:1;transform:translateY(0);filter:blur(0)}40%{opacity:0;transform:translateY(-8px);filter:blur(4px)}50%{opacity:0;transform:translateY(8px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.PageNotFound-title{font-size:48px;margin-bottom:60px;color:#62f0d2}.PageNotFound-page{padding:60px 80px}@media(max-width:900px){.PageNotFound-page{padding:30px 20px}}.PageNotFound-paragraph{font-weight:700}
