*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:'Signika',sans-serif;color:#505058;background:#FFFFFF;line-height:1.7;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit}
:root{--navy:#1D3D8F;--navy-light:#F8FAFB;--blue:#1D3D8F;--cyan:#53BA8F;--gold:#53BA8F;--white:#FFFFFF;--text:#505058;--heading:#1D3D8F}
.container{max-width:1200px;margin:0 auto;padding:0 24px}
h1,h2,h3{font-family:'Signika',sans-serif;font-weight:600;line-height:1.2;color:var(--heading)}
.section-label{font-size:.75rem;text-transform:uppercase;letter-spacing:3px;color:var(--cyan);margin-bottom:12px;font-weight:600}
.section-title{font-size:clamp(1.8rem,4vw,2.8rem);color:var(--heading);margin-bottom:20px}
.section-subtitle{font-size:1.05rem;color:var(--text);max-width:680px}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:16px 0;transition:all .3s;background:var(--navy)}
nav.scrolled{background:rgba(29,61,143,.97);backdrop-filter:blur(12px);padding:10px 0;box-shadow:0 2px 20px rgba(29,61,143,.15)}
nav .container{display:flex;align-items:center;justify-content:space-between}
.nav-logo{display:flex;align-items:center}
.nav-logo img{height:36px;width:auto}
.nav-links{display:flex;gap:28px;align-items:center}
.nav-links a{font-size:.85rem;font-weight:500;color:rgba(255,255,255,.85);letter-spacing:.5px;transition:color .3s}
.nav-links a:hover{color:#fff}
.lang-selector{position:relative;margin-left:8px}
.lang-btn{display:flex;align-items:center;gap:6px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:6px 12px;color:#fff;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s;font-family:'Signika',sans-serif;letter-spacing:.5px}
.lang-btn:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.35)}
.lang-btn svg{width:16px;height:16px;opacity:.8}
.lang-btn .chevron{width:10px;height:10px;transition:transform .3s;opacity:.6}
.lang-selector.open .chevron{transform:rotate(180deg)}
.lang-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:rgba(29,61,143,.96);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.15);border-radius:10px;padding:6px;min-width:140px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .25s;z-index:1010;box-shadow:0 8px 32px rgba(0,0,0,.3)}
.lang-selector.open .lang-dropdown{opacity:1;visibility:visible;transform:translateY(0)}
.lang-option{display:flex;align-items:center;gap:10px;padding:9px 14px;border-radius:7px;color:rgba(255,255,255,.8);font-size:.82rem;font-weight:500;text-decoration:none;transition:all .2s;cursor:pointer}
.lang-option:hover{background:rgba(255,255,255,.12);color:#fff}
.lang-option.active{background:rgba(83,186,143,.2);color:var(--cyan)}
.lang-option .lang-flag{font-size:1.05rem;line-height:1}
.lang-option .lang-name{flex:1}
.nav-cta{background:var(--cyan);color:#fff!important;padding:8px 20px;border-radius:7px;font-weight:600;transition:background .3s}
.nav-cta:hover{background:#43a77d}
.menu-toggle{display:none;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;width:40px;height:40px;position:relative;align-items:center;justify-content:center}
.menu-toggle{width:48px;height:48px}
.burger-waves{width:30px;height:22px;display:block;transition:transform .3s}
.burger-waves path{transition:all .35s cubic-bezier(.4,0,.2,1);transform-box:fill-box;transform-origin:center}
@keyframes waveIdle1{0%,100%{d:path("M1 3.5 Q5 0 9.5 3.5 Q14 7 18.5 3.5 Q21 1.5 29 3.5")}50%{d:path("M1 3.5 Q5 7 9.5 3.5 Q14 0 18.5 3.5 Q21 5.5 29 3.5")}}
@keyframes waveIdle2{0%,100%{d:path("M1 11 Q5 7.5 9.5 11 Q14 14.5 18.5 11 Q21 9 29 11")}50%{d:path("M1 11 Q5 14.5 9.5 11 Q14 7.5 18.5 11 Q21 13 29 11")}}
@keyframes waveIdle3{0%,100%{d:path("M1 18.5 Q5 15 9.5 18.5 Q14 22 18.5 18.5 Q21 16.5 29 18.5")}50%{d:path("M1 18.5 Q5 22 9.5 18.5 Q14 15 18.5 18.5 Q21 20.5 29 18.5")}}
.bw1{animation:waveIdle1 2.6s ease-in-out infinite}
.bw2{animation:waveIdle2 2.6s ease-in-out infinite .25s}
.bw3{animation:waveIdle3 2.6s ease-in-out infinite .5s}
.menu-toggle.active .bw1{transform:rotate(45deg) translateY(7.5px);animation:none}
.menu-toggle.active .bw2{opacity:0;transform:scaleX(0);animation:none}
.menu-toggle.active .bw3{transform:rotate(-45deg) translateY(-7.5px);animation:none}

/* HERO */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg video,.hero-bg img{width:100%;height:100%;object-fit:cover}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(135deg,rgba(29,61,143,.85) 0%,rgba(29,61,143,.5) 50%,rgba(29,61,143,.7) 100%)}
.hero-content{position:relative;z-index:2;padding-top:140px;padding-bottom:80px}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(83,186,143,.15);border:1px solid rgba(83,186,143,.4);padding:6px 16px;border-radius:7px;font-size:.8rem;color:#fff;margin-bottom:24px;font-weight:500}
.hero-badge span{width:6px;height:6px;background:var(--cyan);border-radius:50%;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}

/* 🌊 WAVE ANIMATIONS */
@keyframes flagWave{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes waveFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes waveSweep{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}

/* ⚡ ELECTRIC ANIMATIONS */
@keyframes electricPulse{0%,100%{box-shadow:0 0 5px rgba(83,186,143,.3)}50%{box-shadow:0 0 20px rgba(83,186,143,.6),0 0 40px rgba(83,186,143,.2)}}
@keyframes zap{0%{opacity:1;transform:scaleX(0)}40%{opacity:1;transform:scaleX(1)}100%{opacity:0;transform:scaleX(1)}}
@keyframes flicker{0%,100%{opacity:1}4%{opacity:.3}8%{opacity:1}12%{opacity:.5}16%{opacity:1}}

/* 🌊 Flags wave bob in dropdown */
.lang-selector.open .lang-option .lang-flag{display:inline-block;animation:flagWave 1.2s ease-in-out infinite}
.lang-selector.open .lang-option:nth-child(1) .lang-flag{animation-delay:0s}
.lang-selector.open .lang-option:nth-child(2) .lang-flag{animation-delay:.15s}
.lang-selector.open .lang-option:nth-child(3) .lang-flag{animation-delay:.3s}
.lang-selector.open .lang-option:nth-child(4) .lang-flag{animation-delay:.45s}

/* ⚡ Electric CTA buttons */
.btn-primary{position:relative;overflow:hidden}
.btn-primary::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent);transform:translateX(-100%);transition:none}
.btn-primary:hover::after{animation:waveSweep .6s ease-out}

/* ⚡ Electric glow on nav CTA */
.nav-cta:hover{animation:electricPulse 1.5s ease-in-out infinite}

/* 🌊 Wave float on logo */
.nav-logo img{transition:transform .4s ease}
.nav-logo:hover img{animation:waveFloat 2s ease-in-out infinite}

/* ⚡ Metric numbers electric flicker on appear */
.metric-num.visible{animation:flicker .3s ease-out 1}

/* 🌊 Cards wave lift on hover */
.why-pillar:hover,.app-card:hover,.physics-card:hover,.secondary-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(83,186,143,.12)}

/* ⚡ Electric border sweep on video play */
.video-play-btn::before{content:'';position:absolute;inset:-3px;border-radius:50%;background:conic-gradient(from 0deg,transparent,var(--cyan),transparent);animation:spin 3s linear infinite;z-index:-1;opacity:.5}
@keyframes spin{to{transform:rotate(360deg)}}

/* 🌊 Wave reveal stagger (children animate with delay) */
.wave-stagger>*{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease}
.wave-stagger.visible>*:nth-child(1){transition-delay:.05s}
.wave-stagger.visible>*:nth-child(2){transition-delay:.12s}
.wave-stagger.visible>*:nth-child(3){transition-delay:.19s}
.wave-stagger.visible>*:nth-child(4){transition-delay:.26s}
.wave-stagger.visible>*:nth-child(5){transition-delay:.33s}
.wave-stagger.visible>*:nth-child(6){transition-delay:.4s}
.wave-stagger.visible>*{opacity:1;transform:none}
.hero h1{font-size:clamp(2.4rem,5.5vw,4rem);color:#fff;margin-bottom:20px;max-width:700px}
.hero h1 em{font-style:normal;color:var(--cyan)}
.hero p{font-size:1.15rem;color:rgba(255,255,255,.8);max-width:580px;margin-bottom:36px}
.hero-actions{display:flex;gap:16px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border-radius:7px;font-size:.95rem;font-weight:600;transition:all .3s;border:none;cursor:pointer;font-family:'Signika',sans-serif}
.btn-primary{background:var(--cyan);color:#fff}
.btn-primary:hover{background:#43a77d;transform:translateY(-2px);box-shadow:0 8px 24px rgba(83,186,143,.3)}
.btn-outline{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.4)}
.btn-outline:hover{border-color:#fff;color:#fff}

/* WHY HACE — PAIN > SOLUTION */
.why{padding:100px 0}
.why-grid{display:grid;gap:24px;margin-top:50px}
.why-pillar{display:grid;grid-template-columns:1fr 1fr;border-radius:12px;overflow:hidden;border:1px solid #e8ecf0;transition:all .3s}
.why-pillar:hover{border-color:var(--cyan);box-shadow:0 8px 32px rgba(83,186,143,.1);transform:translateY(-2px)}
.why-keyword{display:flex;align-items:center;gap:8px;margin-bottom:14px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:2.5px;color:var(--heading);opacity:.55}
.why-keyword-icon{font-size:1rem;opacity:1}
.why-pain{padding:28px 28px 28px 24px;position:relative;border-right:1px solid #e8ecf0}
.why-pain::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:#e74c3c;border-radius:0}
.why-pain h3{font-family:'Signika',sans-serif;font-size:.75rem;text-transform:uppercase;letter-spacing:2px;color:#e74c3c;margin-bottom:10px;font-weight:700;display:flex;align-items:center;gap:8px}
.why-pain h3::before{content:'✕';font-size:.65rem;width:18px;height:18px;border-radius:50%;background:#fde8e8;color:#e74c3c;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.why-pain p{font-size:.88rem;color:var(--text);line-height:1.65}
.why-solution{padding:28px 24px 28px 28px;position:relative}
.why-solution::before{content:'';position:absolute;right:0;top:0;bottom:0;width:4px;background:var(--cyan);border-radius:0}
.why-solution h3{font-family:'Signika',sans-serif;font-size:.75rem;text-transform:uppercase;letter-spacing:2px;color:var(--cyan);margin-bottom:10px;font-weight:700;display:flex;align-items:center;gap:8px}
.why-solution h3::before{content:'✓';font-size:.7rem;width:18px;height:18px;border-radius:50%;background:#e8faf0;color:var(--cyan);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-weight:900}
.why-solution p{font-size:.88rem;color:var(--text);line-height:1.65}
.why-solution strong{color:var(--heading);font-weight:600}

/* METRICS */
.metrics{position:relative;z-index:2;margin-top:0;margin-bottom:40px;background:#fff;border:1px solid #e8ecf0;border-radius:7px;padding:32px 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;box-shadow:0 4px 24px rgba(29,61,143,.08)}
.metric{text-align:center}
.metric-value{font-family:'Signika',sans-serif;font-size:2rem;color:var(--cyan);font-weight:700}
.metric-label{font-size:.82rem;color:var(--text);margin-top:4px;line-height:1.4}

/* TECH */
.tech{padding:100px 0}
.tech-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-top:50px}
.tech-visual{position:relative;border-radius:7px;overflow:hidden}
.tech-visual img{width:100%;border-radius:7px}
.tech-visual-badge{position:absolute;bottom:16px;left:16px;background:rgba(29,61,143,.9);backdrop-filter:blur(8px);padding:10px 16px;border-radius:7px;font-size:.8rem;color:#fff;border:1px solid rgba(83,186,143,.3)}
.tech-steps{display:flex;flex-direction:column;gap:24px}
.tech-step{display:flex;gap:16px;padding:20px;background:var(--navy-light);border-radius:7px;border:1px solid #e8ecf0;transition:border-color .3s}
.tech-step:hover{border-color:var(--cyan)}
.tech-step-num{flex-shrink:0;width:36px;height:36px;background:rgba(83,186,143,.12);border-radius:7px;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--cyan);font-size:.9rem}
.tech-step h3{font-family:'Signika',sans-serif;font-size:1rem;font-weight:600;color:var(--heading);margin-bottom:4px}
.tech-step p{font-size:.88rem;color:var(--text)}
.tech-proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.video-wrapper{position:relative;padding-bottom:56.25%;height:0;border-radius:10px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.12);cursor:pointer;background:#000}
.video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%}
.video-wrapper img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:opacity .3s}
.video-wrapper.playing img,.video-wrapper.playing .video-play-btn{display:none}
.video-play-btn{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:72px;height:72px;background:rgba(83,186,143,.92);border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:2;transition:all .3s;box-shadow:0 4px 24px rgba(83,186,143,.4)}
.video-play-btn:hover{background:var(--cyan);transform:translate(-50%,-50%) scale(1.1);box-shadow:0 6px 32px rgba(83,186,143,.6)}
.video-play-btn svg{width:28px;height:28px;fill:#fff;margin-left:3px}
.tech-proof-caption{margin-top:14px;font-size:.88rem;color:var(--text);line-height:1.5}
.tech-proof-caption strong{color:var(--heading)}
.tech-pillars-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tech-pillar-item{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:10px;border:1px solid #e8ecf0;transition:all .3s}
.tech-pillar-item:hover{border-color:var(--cyan);transform:translateY(-2px);box-shadow:0 6px 20px rgba(83,186,143,.1)}
.tech-pillar-icon{width:38px;height:38px;border-radius:8px;background:#f0faf5;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.tech-pillar-item h4{font-family:'Signika',sans-serif;font-size:.95rem;color:var(--heading);margin-bottom:3px;font-weight:700}
.tech-pillar-item p{font-size:.82rem;color:var(--text);line-height:1.55;margin:0}
.tech-modular-header{text-align:center;margin-bottom:32px}
.tech-modular-header h3{font-family:'Signika',sans-serif;font-size:1.4rem;color:var(--heading);margin-bottom:10px}
.tech-modular-header p{font-size:.92rem;color:var(--text);max-width:600px;margin:0 auto;line-height:1.6}
.modular-configs{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}
.modular-config-card{flex:1;min-width:180px;max-width:240px;text-align:center;padding:20px 16px 16px;border:1px solid #e8ecf0;border-radius:10px;transition:all .3s}
.modular-config-card:hover{border-color:var(--cyan);transform:translateY(-2px);box-shadow:0 6px 20px rgba(83,186,143,.1)}
.modular-svg{width:100%;height:auto;margin-bottom:12px}
.modular-config-card h4{font-family:'Signika',sans-serif;font-size:.9rem;color:var(--heading);margin-bottom:2px;font-weight:700}
.modular-config-card p{font-size:.78rem;color:var(--text);margin:0;opacity:.7}
.modular-config-arrow{flex-shrink:0;opacity:.4}

/* SECONDARY ADVANTAGES */
.secondary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:50px}
.secondary-card{padding:24px;border-radius:7px;background:#fff;border:1px solid #e8ecf0;transition:all .3s;border-top:3px solid var(--cyan)}
.secondary-card:hover{border-color:var(--cyan);transform:translateY(-4px);box-shadow:0 8px 24px rgba(83,186,143,.1)}
.secondary-card h3{font-family:'Signika',sans-serif;font-size:1.1rem;font-weight:600;color:var(--heading);margin-bottom:8px}
.secondary-card p{font-size:.9rem;color:var(--text)}

/* SEA TRIALS */
.sea-trials{padding:100px 0}
.trials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:50px}
.trial-card{position:relative;border-radius:7px;overflow:hidden}
.trial-card img{width:100%;height:360px;object-fit:cover;transition:transform .5s}
.trial-card:hover img{transform:scale(1.03)}
.trial-card-caption{position:absolute;bottom:0;left:0;right:0;padding:20px;background:linear-gradient(transparent,rgba(29,61,143,.9))}
.trial-card-caption h3{font-family:'Signika',sans-serif;font-size:1rem;color:#fff;font-weight:600}
.trial-card-caption p{font-size:.82rem;color:rgba(255,255,255,.8)}

/* APPLICATIONS */
.applications{padding:100px 0;background:var(--navy-light)}
.app-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:50px}
.app-card{padding:36px;border-radius:7px;background:#fff;border:1px solid #e8ecf0;transition:border-color .3s;border-left:3px solid var(--cyan)}
.app-card:hover{border-color:var(--cyan)}
.app-card h3{font-family:'Signika',sans-serif;font-size:1.15rem;font-weight:600;color:var(--heading);margin-bottom:10px}
.app-card p{font-size:.9rem;color:var(--text)}
.app-tag{display:inline-block;margin-top:14px;padding:4px 12px;border-radius:7px;font-size:.75rem;font-weight:600;background:rgba(83,186,143,.1);color:var(--cyan);border:1px solid rgba(83,186,143,.25)}

/* MARKET */
.market{padding:100px 0}
.market-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:50px}
.market-card{padding:32px;border-radius:7px;background:var(--navy-light);border:1px solid #e8ecf0}
.market-card h3{font-family:'Signika',sans-serif;font-size:1.05rem;font-weight:600;color:var(--heading);margin-bottom:10px}
.market-card p{font-size:.88rem;color:var(--text)}
.market-stat{font-family:'Signika',sans-serif;font-size:1.6rem;font-weight:700;color:var(--cyan);margin-bottom:4px}

/* HYDROGEN */
.hydrogen{padding:100px 0;position:relative;overflow:hidden}
.hydrogen::before{content:'';position:absolute;top:-50%;right:-20%;width:500px;height:500px;background:radial-gradient(circle,rgba(83,186,143,.06) 0%,transparent 70%);pointer-events:none}
.h2-chain{display:flex;align-items:stretch;gap:0;margin-top:50px;overflow-x:auto;padding-bottom:8px}
.h2-card{flex:1;min-width:160px;padding:24px 20px;border-radius:0;background:var(--navy-light);border:1px solid #e8ecf0;border-right:none;position:relative;transition:all .3s}
.h2-card:first-child{border-radius:7px 0 0 7px}
.h2-card:last-child{border-radius:0 7px 7px 0;border-right:1px solid #e8ecf0}
.h2-card:hover{background:#f0faf5;border-color:var(--cyan);z-index:1}
.h2-card:hover+.h2-arrow{color:var(--cyan)}
.h2-step{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--cyan);margin-bottom:10px;opacity:.7}
.h2-card h3{font-family:'Signika',sans-serif;font-size:.92rem;font-weight:600;color:var(--heading);margin-bottom:8px;line-height:1.3}
.h2-card p{font-size:.82rem;color:var(--text);line-height:1.55}
.h2-card-icon{font-size:1.5rem;margin-bottom:10px}
.h2-arrow{display:flex;align-items:center;padding:0 4px;color:#cdd5df;font-size:1.2rem;flex-shrink:0;align-self:center;transition:color .3s}
.h2-card.h2-highlight{background:rgba(83,186,143,.06);border-color:rgba(83,186,143,.3)}
@media(max-width:768px){.h2-chain{flex-direction:column}.h2-card{border-right:1px solid #e8ecf0;border-bottom:none;border-radius:0!important}.h2-card:first-child{border-radius:7px 7px 0 0!important}.h2-card:last-child{border-radius:0 0 7px 7px!important;border-bottom:1px solid #e8ecf0}.h2-arrow{transform:rotate(90deg);align-self:flex-start;margin-left:20px}}

/* COASTAL */
.coastal{padding:100px 0;background:var(--navy-light)}
.coastal-content{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;margin-top:50px}
.coastal-img img{width:100%;border-radius:7px}
.coastal-points{display:flex;flex-direction:column;gap:20px}
.coastal-point{display:flex;gap:14px}
.coastal-check{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:rgba(83,186,143,.12);display:flex;align-items:center;justify-content:center;color:var(--cyan);font-size:.8rem;font-weight:700;margin-top:2px}
.coastal-point h4{font-family:'Signika',sans-serif;font-size:.95rem;font-weight:600;color:var(--heading);margin-bottom:2px}
.coastal-point p{font-size:.85rem;color:var(--text)}

/* PRESS */


/* AWARDS */
.awards{padding:100px 0;background:var(--navy-light)}
.awards-timeline{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px;margin-top:50px}
.award-item{padding:24px;border-radius:7px;text-align:center;background:#fff;border:1px solid #e8ecf0;transition:border-color .3s}
.award-item:hover{border-color:var(--cyan)}
.award-year{font-family:'Signika',sans-serif;font-size:1.5rem;color:var(--cyan);font-weight:700}
.award-name{font-size:.82rem;color:var(--text);margin-top:6px;line-height:1.4}

/* TESTIMONIALS */
.testimonials{padding:100px 0}
.test-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:50px}
.test-card{padding:32px;border-radius:7px;background:var(--navy-light);border:1px solid #e8ecf0}
.test-quote{font-size:.92rem;color:var(--text);font-style:italic;margin-bottom:20px;line-height:1.7}
.test-author{font-size:.88rem;font-weight:600;color:var(--heading)}
.test-role{font-size:.78rem;color:var(--text)}

/* FAQ */
.faq{padding:100px 0;background:var(--navy-light)}
.faq-list{max-width:760px;margin:50px auto 0}
.faq-item{border-bottom:1px solid #e8ecf0}
.faq-question{width:100%;background:none;border:none;color:var(--heading);font-size:1rem;font-weight:600;text-align:left;padding:20px 0;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-family:'Signika',sans-serif}
.faq-question::after{content:'+';font-size:1.4rem;color:var(--cyan);transition:transform .3s}
.faq-item.open .faq-question::after{content:'−'}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease}
.faq-answer p{padding:0 0 20px;font-size:.9rem;color:var(--text);line-height:1.7}

/* TEAM */
.team{padding:100px 0}
.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-top:50px}
.team-card{padding:24px;border-radius:10px;background:var(--navy-light);border:1px solid #e8ecf0;text-align:center;transition:all .3s}
.team-card:hover{border-color:var(--cyan);transform:translateY(-2px);box-shadow:0 6px 20px rgba(83,186,143,.1)}
.team-avatar{width:64px;height:64px;border-radius:50%;margin:0 auto 14px;background:linear-gradient(135deg,var(--blue),var(--cyan));display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:700;color:#fff;overflow:hidden}
.team-avatar img{width:100%;height:100%;object-fit:cover}
.team-name{font-size:1rem;font-weight:600;color:var(--heading);margin:0}
.team-role{font-size:.82rem;color:var(--text);margin:2px 0 0}
.team-bg{font-size:.78rem;color:var(--cyan);margin:6px 0 0;font-weight:500}

/* CTA */
.cta-section{padding:100px 0;text-align:center;background:var(--navy);color:#fff}
.cta-section h2{font-size:clamp(1.8rem,4vw,2.6rem);color:#fff;margin-bottom:16px}
.cta-section p{font-size:1.05rem;color:rgba(255,255,255,.8);margin-bottom:32px}
.cta-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}

/* CONTACT */
.press{padding:60px 0;background:#f8faf9}
.press-logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:32px 40px;margin-top:40px}
.physics{padding:80px 0}
.physics-hero{display:flex;align-items:center;justify-content:center;gap:24px;margin:40px auto 48px;padding:32px;background:#f0faf5;border-radius:12px;max-width:640px}
.physics-stat{text-align:center}
.physics-stat-big{display:block;font-family:'Signika',sans-serif;font-size:2.2rem;font-weight:700;color:var(--heading);line-height:1.1}
.physics-stat-label{font-size:.75rem;color:var(--text);opacity:.7;margin-top:4px;display:block}
.physics-stat-sep{font-family:'Signika',sans-serif;font-size:1.6rem;color:var(--cyan);font-weight:700}
.physics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:0}
.physics-card{background:#fff;border:1px solid #e8ecf0;border-radius:10px;padding:28px 24px;transition:all .3s}
.physics-card:hover{border-color:var(--cyan);transform:translateY(-3px);box-shadow:0 8px 24px rgba(83,186,143,.12)}
.physics-card-icon{margin-bottom:14px}
.physics-card h3{font-family:'Signika',sans-serif;font-size:1rem;margin-bottom:8px;color:var(--heading)}
.physics-card p{font-size:.88rem;line-height:1.65;color:var(--text);margin:0}
.physics-cta{margin-top:32px;background:#f0faf5;border-left:4px solid var(--cyan);padding:20px 24px;border-radius:0 10px 10px 0;font-size:.9rem;line-height:1.65;color:var(--text)}
@media(max-width:768px){.physics-hero{flex-direction:column;gap:12px;padding:24px 16px}.physics-stat-big{font-size:1.8rem}.physics-stat-sep{font-size:1.2rem}.physics-grid{grid-template-columns:1fr;gap:14px}}
.press-logo{display:flex;align-items:center;text-decoration:none;opacity:.45;transition:all .4s;filter:grayscale(1)}
.press-logo:hover{opacity:1;filter:grayscale(0);transform:translateY(-2px)}
.press-logo svg{height:28px;width:auto}
.press-logo.logo-tall svg{height:34px}
.press-logo.logo-short svg{height:22px}
.press-sep{width:1px;height:32px;background:#d0d5db;margin:0 8px}
@media(max-width:768px){.press-logos{gap:24px 28px}.press-sep{display:none}.press-logo svg{height:22px}.press-logo.logo-tall svg{height:28px}}
.contact{padding:100px 0}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:50px}
.contact-info h3{font-family:'Signika',sans-serif;font-size:1.1rem;color:var(--heading);font-weight:600;margin-bottom:8px}
.contact-info p{font-size:.9rem;color:var(--text);margin-bottom:20px}
.contact-detail{display:flex;align-items:center;gap:10px;margin-bottom:12px;font-size:.9rem;color:var(--text)}
.contact-form{display:flex;flex-direction:column;gap:16px}
.contact-form input,.contact-form textarea{width:100%;padding:14px 18px;border-radius:7px;background:var(--navy-light);border:1px solid #e8ecf0;color:var(--heading);font-family:'Signika',sans-serif;font-size:.9rem;transition:border-color .3s}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--cyan)}
.contact-form textarea{min-height:120px;resize:vertical}

/* FOOTER */
footer{padding:40px 0;text-align:center;background:var(--navy);color:rgba(255,255,255,.7)}
footer p{font-size:.8rem;color:rgba(255,255,255,.7)}
footer a{color:var(--cyan)}

/* ANIMATIONS */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s cubic-bezier(.4,0,.2,1),transform .6s cubic-bezier(.4,0,.2,1)}
.reveal.visible{opacity:1;transform:none}
/* HERO ENTRANCE */
.hero-content{animation:heroIn .8s ease-out .2s both}
@keyframes heroIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}
.hero-badge{animation:heroIn .6s ease-out .4s both}
.hero-actions{animation:heroIn .6s ease-out .6s both}
.metrics{animation:heroIn .6s ease-out .5s both}
/* PILLAR HOVER */


/* ── Proof grid (Essais en mer) ── */
.proof-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:16px;margin-top:48px}
.proof-main{grid-row:1/3;border-radius:14px;overflow:hidden;position:relative}
.proof-main img{width:100%;height:100%;object-fit:cover;display:block}
.proof-aerial{border-radius:14px;overflow:hidden;position:relative}
.proof-aerial img{width:100%;height:100%;object-fit:cover;display:block}
.proof-video{border-radius:14px;overflow:hidden;position:relative;cursor:pointer}
.proof-video img{width:100%;height:100%;object-fit:cover;display:block}
.proof-caption{position:absolute;bottom:0;left:0;right:0;padding:16px 20px;background:linear-gradient(transparent,rgba(0,0,0,.7))}
.proof-caption-tag{color:var(--cyan);font-size:.78rem;font-weight:600;margin-bottom:4px}
.proof-caption-text{color:#fff;font-size:.88rem;line-height:1.4}
.proof-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.proof-play-btn{width:60px;height:60px;background:rgba(255,255,255,.9);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(0,0,0,.3);transition:transform .3s}
.proof-video:hover .proof-play-btn{transform:scale(1.1)}

/* ── Stat block (Technologie page) ── */
.stat-block{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center;padding:36px 0}
.stat-block-val{font-family:'Signika',sans-serif;font-size:2rem;font-weight:700;color:var(--cyan)}
.stat-block-lab{font-size:.82rem;color:rgba(255,255,255,.6);margin-top:6px}

/* RESPONSIVE */
@media(max-width:1024px){
  .proof-grid{grid-template-columns:1fr;grid-template-rows:auto}
  .proof-main{grid-row:auto}
  .proof-main img{height:300px}
  .proof-aerial img{height:240px}
  .proof-video{aspect-ratio:16/9}
  .metrics{grid-template-columns:repeat(3,1fr);gap:16px;padding:24px 16px}
  .tech-grid,.coastal-content,.contact-grid,.tech-proof-grid{grid-template-columns:1fr}
  .tech-pillars-row{grid-template-columns:1fr}
  .modular-configs{flex-direction:column}
  .modular-config-card{max-width:100%;min-width:auto;width:100%}
  .modular-config-arrow{transform:rotate(90deg)}
  .secondary-grid,.test-grid,.h2-grid,.market-grid{grid-template-columns:1fr 1fr}
  .trials-grid{grid-template-columns:1fr 1fr}
  .team-grid{grid-template-columns:repeat(2,1fr)}
  /* TECHNOLOGIE PAGE — tablet */
  .tech-steps-grid{grid-template-columns:1fr 1fr!important;gap:16px!important}
  .stat-block{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:768px){
  /* MOBILE NAV — full overlay */
  .nav-links{display:none;position:fixed;inset:0;background:rgba(29,61,143,.98);backdrop-filter:blur(12px);flex-direction:column;padding:100px 32px 40px;gap:0;z-index:1002;overflow-y:auto;-webkit-overflow-scrolling:touch}
  .nav-links.open{display:flex}
  .nav-links a{font-size:1.15rem;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.9);width:100%}
  .nav-links a:last-child{border-bottom:none}
  .nav-cta{margin-top:16px;text-align:center;display:block;padding:14px 20px;border-radius:7px}
  .menu-toggle{display:flex;z-index:1003}
  .nav-logo{z-index:1003;position:relative}
  nav{background:rgba(29,61,143,.97)!important;z-index:1001}
  
  
  
  
  

  /* SPACING & OVERFLOW FIX */
  .container{padding:0 16px}
  section{padding:60px 0}
  .tech,.sea-trials,.hydrogen,.press,.testimonials,.team,.contact,.faq,.coastal,.advantages,.applications,.awards,.market,.why,.physics{padding:60px 0}
  .section-title{font-size:1.6rem}
  .section-title br,.cta-section h2 br{display:none}
  .section-subtitle{font-size:.95rem}

  /* METRICS */
  .metrics{grid-template-columns:repeat(3,1fr);gap:12px;padding:20px 12px;margin-top:0;border-radius:7px}
  .metric-value{font-size:1.3rem}
  .metric-label{font-size:.75rem}

  /* GRIDS → 1 COL */
  .proof-grid{grid-template-columns:1fr;grid-template-rows:auto}
  .proof-main{grid-row:auto}
  .proof-main img{height:240px}
  .proof-aerial img{height:200px}
  .proof-video{aspect-ratio:16/9}
  .why-pillar,.secondary-grid,.app-grid,.test-grid,.h2-grid,.trials-grid,.market-grid{grid-template-columns:1fr}
  .team-grid{grid-template-columns:1fr}

  /* HERO */
  .hero-content{padding-top:100px;padding-bottom:60px}
  .hero{min-height:auto}
  .hero h1{font-size:1.8rem}
  .hero p{font-size:1rem}
  .hero-actions{flex-direction:column}
  .hero-actions .btn{width:100%;justify-content:center}

  /* CARDS padding reduce */
  .why-pain,.why-solution,.secondary-card,.app-card,.test-card,.h2-card,.market-card{padding:20px 20px 20px 16px}
  .why-pain{border-right:none;border-bottom:1px solid #e8ecf0}
  .tech-step{padding:16px}
  .team-card{padding:20px}

  /* TRIAL IMAGES */
  .trial-card img{height:240px}

  /* PRESS */


  /* CTA */
  .cta-section{padding:60px 0}
  .cta-section h2{font-size:1.5rem}
  .cta-actions{flex-direction:column;align-items:center}
  .cta-actions .btn{width:100%;justify-content:center}

  /* CONTACT */
  .contact-grid{gap:24px;margin-top:28px}
  .contact-detail{font-size:.85rem}
  .contact-detail br{display:block}
  .contact-address{display:block;line-height:1.7}

  /* AWARDS smaller grid */
  .awards-timeline{grid-template-columns:repeat(2,1fr);gap:12px}
  .award-item{padding:16px}
  .award-year{font-size:1.2rem}

  /* Lang selector in mobile menu */
  .lang-selector{width:100%;margin:12px 0 0}
  .lang-btn{width:100%;justify-content:center}
  .lang-dropdown{position:static;opacity:1;visibility:visible;transform:none;background:transparent;border:none;box-shadow:none;display:none;padding:8px 0}
  .lang-selector.open .lang-dropdown{display:flex;flex-wrap:wrap;gap:6px}
  .lang-option{padding:8px 12px;background:rgba(255,255,255,.08);border-radius:8px;flex:0 0 auto}

  /* Logo mobile nav */
  .nav-logo img{background:transparent}

  /* Pour qui / positioning section — mobile fix */
  .pos-grid{grid-template-columns:1fr!important;gap:16px!important}
  .pos-model{grid-template-columns:1fr!important;gap:12px!important;padding:24px 20px!important}
  .pos-model>:nth-child(even){display:none}

  /* TECHNOLOGIE PAGE — mobile grids */
  .tech-steps-grid{grid-template-columns:1fr 1fr!important;gap:16px!important}
  .tech-physics-grid{grid-template-columns:1fr!important;gap:20px!important}
  .tech-module-grid{grid-template-columns:1fr!important;gap:16px!important}
  .stat-block{grid-template-columns:repeat(2,1fr)!important;gap:16px!important;padding:24px 16px!important}
  .tech-timeline-grid .card-white{grid-template-columns:1fr!important;gap:16px!important;padding:24px 20px!important}
}
@media(max-width:480px){
  .tech-steps-grid{grid-template-columns:1fr!important}
  .stat-block{grid-template-columns:1fr!important;padding:20px 12px!important}
}

/* DARK MODE */

/* TECHNOLOGIE PAGE — base styles */
.s-light{background:var(--navy-light)}
.tech-step-card{background:#fff;border:1px solid #e8ecf0;transition:all .3s}
.tech-step-card:hover{border-color:var(--cyan);transform:translateY(-3px);box-shadow:0 8px 24px rgba(83,186,143,.12)}
.card-white{background:#fff;border:1px solid #e8ecf0;transition:all .3s}
.card-white:hover{border-color:var(--cyan);transform:translateY(-2px);box-shadow:0 6px 20px rgba(83,186,143,.1)}
.bridge-cta{background:var(--navy)!important}
.bridge-cta .btn-outline{color:#fff;border-color:rgba(255,255,255,.4)}
.bridge-cta .btn-outline:hover{border-color:#fff;color:#fff}

/* Positioning section */
.positioning{background:#f8faff}
.pos-card{background:#fff;border:1px solid #e8ecf0}
.pos-card h3{color:var(--heading)}
.pos-card p{font-size:.9rem;color:var(--text)}

@media(prefers-color-scheme:dark){
  /* Section Pour qui */
  .positioning{background:#111827!important}
  .pos-card{background:#1e293b!important;border-color:#334155!important;color:#cbd5e1}
  .pos-card h3{color:#f1f5f9}
  .pos-card p{color:#94a3b8}
  .pos-model{background:#0f172a!important}
  :root{--navy-light:#111827;--white:#0f172a;--text:#cbd5e1;--heading:#f1f5f9}
  body{background:#0f172a;color:#cbd5e1}

  /* Cards & surfaces */
  .secondary-card,.app-card,.award-item{background:#1e293b;border-color:#334155}
  .tech-step,.h2-card,.test-card,.team-card,.market-card,.tech-pillar-item,.modular-config-card{background:#1e293b;border-color:#334155}
  .tech-pillar-icon{background:#152e1f}
  .why-pillar{border-color:#334155}
  .why-pain{border-color:#334155}
  .why-pain::before{background:#c0392b}
  .why-pain h3::before{background:#3d1c1c;color:#e74c3c}
  .why-solution::before{background:var(--cyan)}
  .why-solution h3::before{background:#152e1f;color:var(--cyan)}
  .metrics{background:#1e293b;border-color:#334155;box-shadow:0 4px 24px rgba(0,0,0,.3)}

  /* Sections with --navy-light bg */
  .advantages,.applications,.coastal,.awards,.faq{background:#111827}
  .tech,.sea-trials,.hydrogen,.press,.testimonials,.team,.contact,.market,.why,.physics{background:#0f172a}

  /* Form */
  .contact-form input,.contact-form textarea{background:#1e293b;border-color:#475569;color:#f1f5f9}
  .contact-form input::placeholder,.contact-form textarea::placeholder{color:#94a3b8}
  .contact-info h3{color:#f1f5f9}
  .contact-info p{color:#94a3b8}
  .contact-detail{color:#cbd5e1}

  /* FAQ */
  .faq-item{border-color:#334155}
  .faq-question{color:#f1f5f9}

  /* Borders global */
  .secondary-card:hover,.app-card:hover,.award-item:hover,.tech-step:hover,.tech-pillar-item:hover,.modular-config-card:hover{border-color:var(--cyan)}

  /* Press */
  .press{background:#111827}
  .press-logo{filter:grayscale(1) brightness(2.5)}
  .press-logo:hover{filter:grayscale(0) brightness(1.5)}
  .press-sep{background:#334155}
  /* Physics */
  .physics-hero{background:#1a2e23}
  .physics-card{background:#1e293b;border-color:#334155}
  .physics-card:hover{border-color:var(--cyan)}
  .physics-cta{background:#1a2e23;border-left-color:var(--cyan)}


  /* Nouvelles pages — sections inline-styled */
  .s-white{background:#0f172a!important}
  .s-light{background:#111827!important}
  .s-navy-block{background:#0f172a!important}
  .card-white{background:#1e293b!important;border-color:#334155!important}
  .card-white h3{color:#f1f5f9!important}
  .card-white p{color:#94a3b8!important}
  .card-white div{color:#94a3b8}
  .stat-block{background:#0f172a!important}
  .bridge-cta{background:#111827!important}
  table thead tr{background:#0f172a!important}
  table tbody tr{background:#0f172a!important}
  table tbody tr:nth-child(odd){background:#111827!important}
  table td,table th{color:#cbd5e1!important}
  table th{color:var(--cyan)!important}
  .trial-card{background:#1e293b!important;border-color:#334155!important}
  .trial-card h3{color:#f1f5f9!important}
  .trial-card p{color:#94a3b8!important}
  .tech-step-card{background:#111827!important}
  .tech-step-card h3{color:#f1f5f9!important}
  .tech-step-card p{color:#94a3b8!important}
    .tr-alt{background:#111827!important}
    /* Footer & CTA already dark — no change needed */
}
  
/* HACE 3D canvases */
.hace-3d-canvas{width:100%;border-radius:8px;display:block;aspect-ratio:3/2;background:#0a1628}

/* logo-white-fix */
.footer-logo{mix-blend-mode:screen;filter:brightness(1.1)}
