:root{--b:#1768B4;--bd:#08345E;--g:#7FBE45;--gd:#4C8E2D;--ink:#102333;--muted:#647582;--soft:#F3F8FB;--line:#DDE8EF;--shadow:0 20px 55px rgba(8,52,94,.11)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);line-height:1.65}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.w{width:min(1180px,92%);margin:auto}.header{position:sticky;top:0;z-index:99;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);box-shadow:0 5px 25px rgba(8,52,94,.06)}.head{height:90px;display:flex;align-items:center;gap:25px}.brand{margin-right:auto}.brand img{width:82px;height:82px;object-fit:contain}.nav{display:flex;gap:22px;align-items:center;font-size:13px;font-weight:900}.nav a{padding:10px 0;position:relative}.nav a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:4px;height:2px;background:var(--g);transition:.25s}.nav a:hover:after{right:0}.nav-cta{background:var(--b);color:#fff!important;padding:12px 17px!important;border-radius:9px}.menu{display:none;border:0;background:var(--soft);color:var(--b);width:44px;height:44px;border-radius:10px;font-size:22px}.mobile{display:none}.hero{min-height:710px;display:flex;align-items:center;position:relative;color:#fff;background:linear-gradient(105deg,rgba(4,34,63,.95),rgba(10,71,123,.68) 58%,rgba(127,190,69,.16)),url('/assets/hero.webp') center/cover;overflow:hidden}.hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:7px;background:linear-gradient(90deg,var(--b),var(--g))}.hero h1{font-size:clamp(46px,6.3vw,80px);line-height:1;letter-spacing:-2.8px;max-width:900px;margin:20px 0}.hero p{font-size:19px;max-width:750px;color:#eaf5fd}.eyebrow{font-size:12px;letter-spacing:2.5px;font-weight:950;color:var(--b)}.hero .eyebrow,.banner .eyebrow{color:#dff0ff}.eyebrow:before{content:"";display:inline-block;width:32px;height:2px;background:var(--g);margin-right:9px;vertical-align:middle}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 20px;border-radius:9px;font-weight:950;border:1px solid transparent;transition:.2s}.btn:hover{transform:translateY(-3px)}.blue{background:var(--b);color:#fff;box-shadow:0 10px 23px rgba(23,104,180,.2)}.green{background:var(--g);color:#fff;box-shadow:0 10px 23px rgba(127,190,69,.2)}.white{background:#fff;color:var(--b)}.outline{border-color:rgba(255,255,255,.6);color:#fff}.proof{display:flex;gap:25px;flex-wrap:wrap;margin-top:32px;font-size:13px;font-weight:850}.proof span:before{content:"✓";color:#a8dc78;margin-right:7px}.section{padding:88px 0}.soft{background:var(--soft)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:32px}.title{font-size:clamp(32px,4.2vw,49px);line-height:1.08;letter-spacing:-1.2px;margin:9px 0 12px}.intro{max-width:720px;color:var(--muted);font-size:17px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow);transition:.3s}.card:hover{transform:translateY(-7px);box-shadow:0 30px 70px rgba(8,52,94,.16)}.card-img{height:250px;overflow:hidden}.card-img img{width:100%;height:100%;object-fit:cover;transition:.45s}.card:hover .card-img img{transform:scale(1.06)}.card-body{padding:23px}.card-body h3{font-size:21px;line-height:1.2;margin:0 0 8px}.card-body p{color:var(--muted);font-size:14px;min-height:65px}.more{color:var(--b);font-size:14px;font-weight:950}.stats{display:grid;grid-template-columns:repeat(4,1fr);background:var(--line);gap:1px;border:1px solid var(--line);border-radius:17px;overflow:hidden}.stat{background:#fff;text-align:center;padding:29px}.stat b{display:block;color:var(--b);font-size:34px}.stat span{font-size:13px;color:var(--muted);font-weight:800}.split,.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:62px;align-items:center}.visual{position:relative}.visual>img,.service-main{width:100%;height:550px;object-fit:cover;border-radius:20px}.badge{position:absolute;left:20px;bottom:20px;background:#fff;padding:14px 17px;border-radius:13px;box-shadow:0 15px 35px rgba(0,0,0,.15);font-size:13px;font-weight:900}.badge strong{display:block;color:var(--gd);font-size:17px}.checks{list-style:none;padding:0}.checks li{margin:12px 0;color:#435661}.checks li:before{content:"✓";display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#eaf5df;color:var(--gd);font-weight:950;margin-right:9px}.gallery{display:grid;grid-template-columns:1.5fr .75fr .75fr;grid-template-rows:235px 235px;gap:14px}.gallery a{overflow:hidden;border-radius:15px}.gallery img{width:100%;height:100%;object-fit:cover;transition:.4s}.gallery a:hover img{transform:scale(1.06)}.gallery a:first-child{grid-row:1/3}.gallery a:nth-child(2){grid-column:2/4}.zones{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.zone{height:220px;position:relative;border-radius:15px;overflow:hidden;background:#123}.zone img{width:100%;height:100%;object-fit:cover;transition:.4s}.zone:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,rgba(4,25,46,.9))}.zone:hover img{transform:scale(1.06)}.zone-txt{position:absolute;z-index:2;left:18px;right:18px;bottom:15px;color:#fff}.zone-txt strong{display:block;font-size:17px}.zone-txt span{font-size:12px;color:#d9e8f4}.banner{padding:88px 0;color:#fff;position:relative;overflow:hidden;background:linear-gradient(118deg,var(--bd),var(--b) 64%,var(--gd))}.banner h1{font-size:clamp(43px,5.5vw,68px);line-height:1.03;letter-spacing:-1.8px;max-width:920px;margin:17px 0}.banner p{font-size:18px;color:#e6f1f9;max-width:800px}.prose h2{font-size:36px;line-height:1.1;margin-top:0}.prose h3{font-size:21px;margin-top:30px}.prose p,.prose li{color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:0;list-style:none}.steps li{border:1px solid var(--line);border-radius:12px;padding:16px;background:#fff}.steps b{display:block;color:var(--b)}.mini-gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.mini-gallery img{width:100%;height:155px;object-fit:cover;border-radius:12px}.form-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:35px}.form-intro{background:linear-gradient(145deg,var(--bd),var(--b));color:#fff;border-radius:19px;padding:35px;min-height:100%}.form-intro h2{font-size:35px;line-height:1.1}.form-intro p{color:#dbeaf6}.contact-links{margin-top:28px}.contact-links a{display:block;border-top:1px solid rgba(255,255,255,.18);padding:13px 0;font-weight:900}.form-card{background:#fff;border:1px solid var(--line);border-radius:19px;padding:29px;box-shadow:var(--shadow)}.lead-form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.lead-form .full{grid-column:1/-1}.lead-form label{font-size:13px;font-weight:900}.lead-form input,.lead-form select,.lead-form textarea{width:100%;margin-top:6px;padding:13px 14px;border:1px solid #cbd8e1;border-radius:9px;background:#fff;font:inherit;outline:none}.lead-form input:focus,.lead-form select:focus,.lead-form textarea:focus{border-color:var(--b);box-shadow:0 0 0 3px rgba(23,104,180,.1)}.fine{font-size:12px;color:var(--muted)}.faq{max-width:900px;margin:auto}.faq details{padding:18px 0;border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-size:18px;font-weight:900}.faq p{color:var(--muted)}.cta{padding:55px 0;background:var(--g);color:#fff}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}.cta h2{font-size:38px;line-height:1.1;margin:0 0 7px}.cta p{margin:0}.fixed{position:fixed;right:17px;bottom:17px;z-index:150;display:flex;flex-direction:column;gap:11px}.float{width:59px;height:59px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px;font-weight:950;box-shadow:0 14px 32px rgba(0,0,0,.22);animation:pulse 2.4s infinite;transition:.2s}.float:hover{transform:scale(1.09)}.float.wa{background:#25D366}.float.call{background:var(--b)}@keyframes pulse{0%,100%{box-shadow:0 14px 32px rgba(0,0,0,.22)}50%{box-shadow:0 14px 32px rgba(23,104,180,.3),0 0 0 8px rgba(127,190,69,.12)}}footer{background:#091a2b;color:#c7d5df;padding:58px 0 0}.foot{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:35px}.foot-logo{width:165px;height:72px;object-fit:contain}.foot h3{color:#fff;font-size:15px}.foot a{display:block;margin:8px 0;font-size:13px}.copy{border-top:1px solid #203a4e;margin-top:40px;padding:19px 0;text-align:center;font-size:12px}.reveal{opacity:0;transform:translateY(18px);transition:.7s}.reveal.show{opacity:1;transform:none}@media(max-width:980px){.nav{display:none}.menu{display:block}.mobile.open{display:block}.mobile{background:#fff;border-top:1px solid var(--line);padding:10px 0 18px}.mobile a{display:block;padding:12px 0;border-bottom:1px solid #eef3f6;font-weight:900}.services{grid-template-columns:repeat(2,1fr)}.zones{grid-template-columns:repeat(2,1fr)}.split,.service-grid,.form-layout{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.mini-gallery{grid-template-columns:repeat(3,1fr)}.foot{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.head{height:76px}.brand img{width:68px;height:68px}.hero{min-height:640px}.hero h1{font-size:44px;letter-spacing:-1.4px}.hero p{font-size:16px}.section{padding:60px 0}.section-head{display:block}.services,.zones,.stats{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:175px 175px 175px}.gallery a:first-child{grid-row:1/3}.gallery a:nth-child(2){grid-column:2;grid-row:1}.gallery a:nth-child(3){grid-column:1;grid-row:3}.gallery a:nth-child(4){grid-column:2;grid-row:3}.gallery a:nth-child(n+5){display:none}.service-main{height:390px}.mini-gallery{grid-template-columns:1fr 1fr}.mini-gallery img{height:125px}.lead-form{grid-template-columns:1fr}.lead-form .full{grid-column:auto}.cta .wrap{display:block}.cta .btn{margin-top:20px}.foot{grid-template-columns:1fr}.fixed{right:10px;bottom:10px}.float{width:55px;height:55px}.banner{padding:60px 0}.banner h1{font-size:43px}.form-card{padding:21px}.form-intro{padding:26px}}

/* V4 compatibility + responsive refinements */
.wrap{width:min(1180px,92%);margin:auto}
.blue{color:var(--b);font-size:12px;letter-spacing:2px;font-weight:950}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card>img{width:100%;height:250px;object-fit:cover;transition:.45s}
.card:hover>img{transform:scale(1.06)}
.cardbody{padding:23px}
.cardbody h3{font-size:21px;line-height:1.2;margin:0 0 8px}
.cardbody p{color:var(--muted);font-size:14px;min-height:65px}
.link{color:var(--b);font-size:14px;font-weight:950}
.light{background:#fff;color:var(--b);box-shadow:0 10px 23px rgba(0,0,0,.12)}
.formbox{background:#fff;border:1px solid var(--line);border-radius:20px;padding:34px;box-shadow:var(--shadow)}
.notice{font-size:12px;color:var(--muted)}
.mobile-menu{display:none;border:0;background:var(--soft);color:var(--b);width:44px;height:44px;border-radius:10px;font-size:22px;cursor:pointer}
.mobile-nav{display:none;background:#fff;border-top:1px solid var(--line);padding:10px 4%;box-shadow:0 12px 24px rgba(8,52,94,.08)}
.mobile-nav.open{display:block}
.mobile-nav a{display:block;padding:13px 0;border-bottom:1px solid #eef3f6;font-weight:900}
.mobile-nav .nav-cta{display:block;text-align:center;margin-top:10px}
.fixed-actions{position:fixed;right:18px;bottom:18px;z-index:999;display:flex;flex-direction:column;gap:10px}
.float-btn{min-width:58px;height:58px;padding:0 16px;border-radius:30px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:950;box-shadow:0 14px 32px rgba(0,0,0,.22);animation:pulse 2.4s infinite;transition:.2s;border:2px solid rgba(255,255,255,.9)}
.float-btn:hover{transform:translateY(-3px) scale(1.03)}
.float-btn.wa{background:#25D366}.float-btn.call{background:var(--b)}
.flogo{width:170px;height:auto;object-fit:contain}
.brand img{width:112px;height:76px;object-fit:contain;object-position:left center}
.header .head{min-height:88px}
@media(max-width:980px){.mobile-menu{display:block}.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.wrap{width:min(94%,560px)}.header .head{min-height:76px}.brand img{width:92px;height:64px}.cards{grid-template-columns:1fr}.card>img{height:225px}.formbox{padding:22px}.fixed-actions{right:9px;bottom:10px}.float-btn{min-width:54px;height:54px;font-size:13px;padding:0 13px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* FINAL HARD OVERRIDES */
html,body{margin:0!important;padding:0!important;width:100%;overflow-x:hidden}
.header{position:sticky!important;top:0!important;z-index:9999!important;background:rgba(255,255,255,.98)!important}
.header .head{width:min(1180px,92%)!important;height:82px!important;min-height:82px!important;margin:0 auto!important;display:flex!important;align-items:center!important}
.header .brand{display:block!important;margin-right:auto!important;line-height:0!important}
.header .brand img{display:block!important;width:120px!important;height:72px!important;max-width:120px!important;object-fit:contain!important;object-position:left center!important}
.header .nav{display:flex!important;align-items:center!important;gap:24px!important}
.header .nav a{display:inline-block!important;white-space:nowrap!important}
.header .mobile-menu{display:none!important}
.header .mobile-nav{display:none!important}
.hero{margin:0!important}
@media(max-width:980px){
 .header .head{height:74px!important;min-height:74px!important}
 .header .nav{display:none!important}
 .header .mobile-menu{display:flex!important;align-items:center!important;justify-content:center!important}
 .header .mobile-nav.open{display:block!important}
 .header .mobile-nav:not(.open){display:none!important}
}
@media(max-width:600px){
 .header .head{width:calc(100% - 24px)!important;height:68px!important;min-height:68px!important}
 .header .brand img{width:108px!important;height:62px!important;max-width:108px!important}
 .fixed-actions{right:10px!important;bottom:10px!important}
 .float-btn{min-width:0!important;width:auto!important;height:48px!important;padding:0 14px!important;font-size:12px!important}
}

/* EcoEclat V8 - hard header/mobile fix */
