@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#072e5e;--dark:#071d37;--blue:#1255a3;--green:#80ba34;--pale:#f5f8fb;--muted:#667788}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--dark);font-family:'DM Sans',Arial,sans-serif;background:white}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(1200px,calc(100% - 56px));margin:auto}.utility{background:#061f3e;color:#c9dded;font-size:12px}.utility-inside{min-height:35px;display:flex;align-items:center;justify-content:space-between;gap:12px}.utility a{color:#fff}.bar{padding:0 12px;color:#52789c}.header{background:#fff;position:sticky;top:0;z-index:20;box-shadow:0 4px 23px #092c5b0c}.nav{height:90px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{width:280px;flex-shrink:0}.brand img{display:block;width:100%;height:auto}.links{display:flex;gap:24px;align-items:center}.links a{font-size:13px;font-weight:800;color:#334a5c;white-space:nowrap}.links a:hover,.text-link:hover{color:#418abc}.nav-actions{display:flex;align-items:center;gap:9px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:0;padding:16px 23px;border-radius:7px;font-size:13px;font-weight:800;transition:.2s}.button:hover{transform:translateY(-2px)}.button.small{padding:12px 15px;white-space:nowrap}.button.dark{background:var(--navy);color:white}.button.primary{background:#8bc13b;color:#09263f}.button.outline{border:1px solid #8ea6bc;color:#fff}.button.white{background:#fff;color:var(--navy)}.language{border:1px solid #e1e8ef;background:white;border-radius:6px;padding:10px;font-weight:800;font-size:12px}.hamburger{display:none;background:transparent;border:0;font-size:25px}.hero{position:relative;overflow:hidden;background:linear-gradient(121deg,#09284e 0%,#063767 64%,#104d78 100%);color:#fff;padding:92px 0 86px}.glow{position:absolute;pointer-events:none;border-radius:50%;filter:blur(70px);opacity:.27}.glow.one{width:500px;height:400px;background:#189dd5;right:-240px;top:20px}.glow.two{width:400px;height:250px;background:#57a52d;left:-280px;bottom:0}.hero-grid{display:grid;grid-template-columns:1.07fr .93fr;align-items:center;gap:58px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.6px;color:#c7e5fc;display:flex;gap:12px;align-items:center}.pulse{height:7px;width:7px;background:#92cc37;border-radius:50%;box-shadow:0 0 0 5px #a1d94e24}h1,h2,h3,p{margin-top:0}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(38px,4vw,62px);letter-spacing:-2.6px;line-height:1.15;margin:26px 0 23px;font-weight:800}.hero h1 em{font-style:normal;color:#a6da4b}.hero-desc{max-width:550px;line-height:1.9;font-size:16px;color:#cbdcec}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0 43px}.hero-proof{display:flex;border-top:1px solid #ffffff33;padding-top:27px;gap:30px}.hero-proof>div{display:flex;flex-direction:column;min-width:130px}.hero-proof strong{font-size:26px;font-weight:800;letter-spacing:-1px}.hero-proof strong small{font-size:14px}.hero-proof span{font-size:11px;color:#bfd0df;margin-top:4px}.hero-visual{position:relative;max-width:540px;justify-self:end;width:100%}.plant{width:100%;height:auto;box-shadow:0 25px 65px #02142877;border-radius:28px}.top-tag{position:absolute;z-index:1;top:22px;right:22px;background:#ffffffee;color:#184568;border-radius:8px;padding:11px 14px;font-size:10px;font-weight:800;letter-spacing:.7px;display:flex;align-items:center;gap:8px}.tag-led{background:#8cc841;width:8px;height:8px;border-radius:50%}.float-card{position:absolute;bottom:26px;left:-35px;display:flex;align-items:center;gap:14px;background:#fff;color:#173f67;padding:15px 20px;border-radius:10px;box-shadow:0 12px 30px #0019325e}.float-card .float-icon{background:#eaf5db;color:#6b9c20;border-radius:8px;font-size:23px;line-height:38px;text-align:center;width:38px;height:38px}.float-card b{font-size:13px;display:block}.float-card small{font-size:11px;color:#6b8295}.trust{background:#f7f9fb;border-bottom:1px solid #e7edf3}.trust-line{min-height:83px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#60768b;font-size:12px;font-weight:800;letter-spacing:1px}.trust-label{font-size:10px;color:#8ba0b1;max-width:140px}.trust-line span{color:#85b638}.section{padding:106px 0}.split{display:grid;grid-template-columns:.92fr 1.08fr;gap:105px;align-items:center}.section-visual{min-height:390px;background:linear-gradient(135deg,#082c59 20%,#166dae);border-radius:14px;padding:48px 44px;color:white;position:relative;overflow:hidden}.section-visual:after{content:'';position:absolute;width:320px;height:320px;border:55px solid #ffffff11;border-radius:50%;right:-120px;top:-110px}.large-numeral{font-weight:800;font-size:clamp(42px,6vw,85px);letter-spacing:-5px;position:relative;z-index:1}.large-numeral span{color:#8ccd39}.about-icon{font-size:75px;color:#97c944;font-weight:300}.section-visual p{font-size:21px;line-height:1.5;max-width:270px;font-weight:600;position:relative;z-index:1}.about-stripe{position:absolute;left:0;right:0;bottom:0;height:10px;background:linear-gradient(90deg,#8ec634 40%,#4e9aca 40%,#4e9aca 75%,#f4ad36 75%)}.section-tag{font-size:11px;font-weight:800;letter-spacing:2.4px;color:#478627;margin-bottom:23px}.section h2,.partnership h2{font-family:Manrope,sans-serif;font-size:clamp(30px,3.1vw,44px);letter-spacing:-1.4px;line-height:1.22;font-weight:800;margin-bottom:26px}.about-text>p{font-size:15px;color:#617389;line-height:1.95}.info-row{display:flex;border-top:1px solid #dce5ec;border-bottom:1px solid #dce5ec;padding:22px 0;gap:60px;margin:24px 0}.info-row>div{display:flex;flex-direction:column;gap:8px}.info-row span{color:#758ca1;font-size:10px;font-weight:800;letter-spacing:1px}.info-row b{font-size:13px}.text-link{font-weight:800;font-size:14px;color:#0e60a5}.services{background:#f5f8fb}.section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px}.section-head h2{margin-bottom:0}.section-head>p{max-width:355px;line-height:1.85;color:#6c7c8b;font-size:14px;margin:0 0 4px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{background:white;padding:35px 30px;border:1px solid #e5ecf2;border-radius:9px;min-height:260px;transition:.2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 18px 30px #04274c11}.symbol{font-size:35px;color:#5697ba;margin-bottom:25px;line-height:1}.card-index{font-size:10px;letter-spacing:1.4px;font-weight:800;color:#82a0b8}.service-card h3{font-size:20px;letter-spacing:-.4px;margin:13px 0 11px}.service-card p{color:#728293;font-size:13px;line-height:1.85;margin:0}.service-card.feature{background:#073c71;color:white;border-color:#073c71}.service-card.feature .symbol,.service-card.feature .card-index{color:#a9e258}.service-card.feature p{color:#c1d8e9}.service-card.feature a{display:block;color:#b2e16b;font-size:12px;margin-top:18px;font-weight:800}.projects .project-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.project-card{border:1px solid #e0eaf0;border-radius:11px;overflow:hidden;background:#fff;box-shadow:0 12px 25px #16456a07}.project-card.wide{grid-column:span 2;display:grid;grid-template-columns:1fr 1fr}.project-art{height:238px;overflow:hidden;position:relative}.wide .project-art{height:auto;min-height:335px}.project-art.sun{background:radial-gradient(circle at 78% 21%,#e1b36b 0%,#e1b36b 5%,transparent 6%),linear-gradient(165deg,#4d8ca5,#91bdd1 53%,#18496d 54%,#082c4f 100%)}.project-art.sun.amber{background:radial-gradient(circle at 78% 21%,#ffd391 0%,#ffd391 5%,transparent 6%),linear-gradient(165deg,#9eb5cc,#e6c79a 53%,#355a7d 54%,#142f57 100%)}.solar-rows{position:absolute;bottom:2%;left:-15%;width:130%;height:50%;background:repeating-linear-gradient(165deg,transparent 0 39px,#a1e4fa 40px 42px,transparent 43px 53px),repeating-linear-gradient(90deg,#082e55 0 70px,#3e759c 72px,#092b55 75px);transform:skewY(-11deg) perspective(300px) rotateX(13deg);box-shadow:0 -7px 0 #c3dfea}.art-label{position:absolute;z-index:1;top:20px;left:20px;background:#fff;color:#084b80;padding:9px 13px;border-radius:4px;font-size:10px;font-weight:800;letter-spacing:1px}.project-art.fiber{background:radial-gradient(circle at 70% 50%,#1072ae,#082f61 40%,#00182e 75%)}.light-strand{height:4px;width:120%;position:absolute;left:-15%;top:50%;background:linear-gradient(90deg,transparent,#24d0ff,#b9f1ff);box-shadow:0 0 14px #28c9ff,0 0 35px #59d2ff;transform:rotate(-20deg);border-radius:50%}.light-strand.l2{transform:rotate(8deg);top:44%}.light-strand.l3{transform:rotate(33deg);top:57%}.project-content{padding:35px}.project-content .type{font-size:10px;letter-spacing:1.5px;font-weight:800;color:#488a36}.project-content h3{font-size:24px;letter-spacing:-.5px;margin:13px 0 22px}.specs{display:flex;gap:25px;flex-wrap:wrap;margin-bottom:20px}.specs span{font-weight:800;font-size:22px;color:#0c4175}.specs small{font-weight:600;color:#6a889a;font-size:11px}.project-content p{line-height:1.85;font-size:14px;color:#728293;margin:0}.ongoing{display:flex;gap:20px;align-items:start;border:1px solid #dfe8ed;border-radius:8px;margin-top:25px;padding:24px 27px}.ongoing-mark{width:42px;height:42px;background:#e8f2db;color:#619a28;text-align:center;line-height:42px;border-radius:7px;font-size:21px;flex-shrink:0}.ongoing strong{font-size:15px}.ongoing p{margin:7px 0 0;font-size:13px;line-height:1.75;color:#738595}.partnership{background:#073461;color:#fff;padding:100px 0;position:relative;overflow:hidden}.partnership:before{content:'';position:absolute;border:100px solid #ffffff07;border-radius:50%;width:500px;height:500px;right:-240px;top:-300px}.partner-wrap{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:100px;position:relative}.partnership .section-tag{color:#9ddd5a}.partnership h2{font-size:clamp(32px,3.6vw,51px)}.partnership p{color:#c8dded;line-height:1.9;font-size:15px;max-width:570px;margin-bottom:29px}.partner-poster{background:linear-gradient(155deg,#155891,#052649);border:1px solid #ffffff30;border-radius:13px;padding:36px;min-height:340px;position:relative;overflow:hidden}.partner-poster>span{font-size:10px;letter-spacing:1.4px;font-weight:800;color:#abd6ed}.partner-poster h3{font-size:67px;letter-spacing:-3px;line-height:1.05;margin:35px 0 12px}.partner-poster h3 em{font-size:30px;font-style:normal;color:#9cce4d;letter-spacing:-.4px}.partner-poster p{font-size:13px;max-width:300px;margin:0}.partners-icon{position:absolute;bottom:-75px;right:4px;font-size:235px;color:#ffffff0f}.contact-layout{display:grid;grid-template-columns:1fr .9fr;gap:110px}.contact-layout>div>p{color:#738797;line-height:1.9}.contact-points{display:grid;gap:25px;margin-top:38px}.contact-points>div{display:flex;align-items:center;gap:18px}.contact-points>div>span{display:grid;place-items:center;width:48px;height:48px;border-radius:10px;background:#eaf4e2;color:#48892e;font-size:23px}.contact-points>div>div{display:flex;flex-direction:column;gap:7px}.contact-points small{font-size:10px;font-weight:800;letter-spacing:1.2px;color:#8294a4}.contact-points a,.contact-points strong{font-size:15px;color:#073e71}.contact-panel{background:#f5f8fb;border:1px solid #e4ebf0;border-radius:12px;padding:35px}.panel-label{font-size:11px;letter-spacing:1.8px;font-weight:800;margin-bottom:23px;color:#1c5080}.contact-panel form{display:grid;gap:17px}.contact-panel label{display:grid;gap:9px;font-size:12px;font-weight:800;color:#425e75}.contact-panel input,.contact-panel select,.contact-panel textarea{border:1px solid #dbe5ed;background:white;padding:13px 14px;width:100%;border-radius:5px;outline:none}.contact-panel input:focus,.contact-panel textarea:focus{border-color:#85b82e}.button.full{width:100%}.form-disclaimer{font-size:11px;color:#78909e;line-height:1.5}footer{background:#061e39;color:#e7f0f7;padding:65px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;padding-bottom:57px}.footer-logo{max-width:270px;background:#fff;padding:8px;border-radius:5px}.footer-grid p{font-size:13px;max-width:295px;margin-top:18px;color:#b6cadd;line-height:1.8}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;align-items:start;gap:14px}.footer-grid b{font-size:11px;letter-spacing:1.6px;color:#a7c6df;margin-bottom:5px}.footer-grid a,.footer-grid span{font-size:13px;color:#d1e0ed}.foot-bottom{border-top:1px solid #ffffff22;padding-top:20px;display:flex;justify-content:space-between;font-size:11px;color:#8ca9bc;gap:20px}
@media(max-width:1100px){.links{gap:14px}.nav{height:76px}.brand{width:230px}.nav-actions .small{display:none}.hero-grid{gap:27px}.hero-proof{gap:12px}.hero-proof>div{min-width:95px}.split,.contact-layout{gap:55px}.partner-wrap{gap:50px}}@media(max-width:860px){.hamburger{display:block}.links{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:20px 28px;box-shadow:0 15px 30px #051c3122;flex-direction:column;align-items:start}.links.open{display:flex}.hero{padding:60px 0}.hero-grid,.split,.partner-wrap,.contact-layout{grid-template-columns:1fr}.hero-visual{max-width:500px;justify-self:center}.float-card{left:18px}.hero h1{font-size:44px}.trust-line{flex-wrap:wrap;padding:18px 0;justify-content:center}.trust-label{display:none}.section{padding:70px 0}.section-head{display:block}.section-head>p{margin-top:22px;max-width:600px}.service-grid{grid-template-columns:repeat(2,1fr)}.project-card.wide{grid-template-columns:1fr}.wide .project-art{height:240px;min-height:0}.contact-layout{gap:40px}.partner-poster{min-height:260px}.footer-grid{grid-template-columns:2fr 1fr}}@media(max-width:560px){.container{width:calc(100% - 36px)}.utility-inside{justify-content:center}.utility-inside>span{display:none}.nav{height:69px}.brand{width:202px}.links{top:69px}.hero h1{font-size:37px;letter-spacing:-1.8px}.hero-proof{gap:10px}.hero-proof strong{font-size:22px}.hero-proof span{font-size:10px}.hero-proof>div{min-width:0;flex:1}.hero-buttons .button{flex:1;white-space:nowrap;font-size:11px;padding:14px 9px}.hero-visual{margin-top:20px}.section h2,.partnership h2{font-size:32px}.service-grid,.projects .project-grid{grid-template-columns:1fr}.project-card.wide{grid-column:auto}.project-content{padding:27px}.service-card{min-height:unset;padding:29px}.section-visual{min-height:310px;padding:35px 30px}.large-numeral{font-size:45px;letter-spacing:-3px}.info-row{gap:15px;flex-wrap:wrap}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:span 2}.foot-bottom{display:block;line-height:2}.partner-poster h3{font-size:54px}}

/* IDENTITÉ 2026 — anthracite / blanc ivoire / cuivre */
:root{--navy:#242725;--dark:#252823;--blue:#9d5229;--green:#bb7140;--pale:#f8f6f1;--muted:#7b7c75}
body{background:#fcfaf6;color:#242725;font-family:'DM Sans',Arial,sans-serif}
.utility{background:#262b27;color:#ece5d9}.utility a{color:#fff}
.header{background:#fcfaf6;box-shadow:0 1px 0 #24272516}
.links a{color:#343832}.links a:hover,.text-link:hover{color:#ba713c}
.button{border-radius:2px}.button.dark{background:#272b28}.button.primary{background:#cc7b41;color:#fff}.button.white{color:#292c29}
.hero{background:linear-gradient(120deg,#282b28 0%,#39352f 67%,#4c3b2f 100%)}
.hero:before{content:'';position:absolute;right:-8%;top:-35%;width:42%;height:180%;border:1px solid #ffffff18;transform:rotate(22deg)}
.glow.one{background:#d89557}.glow.two{background:#aa6540}.hero h1 em{color:#e9a066}
.eyebrow{color:#e4c7ad}.pulse{background:#d4824b;box-shadow:0 0 0 5px #d4824b29}.hero-desc{color:#e2ddd4}.hero-proof span{color:#cfc6b8}
.button.outline{border:1px solid #b1a496}.plant{box-shadow:0 25px 70px #120d0b66;filter:sepia(.26) saturate(.68) hue-rotate(155deg)}
.top-tag{background:#f8f4ed;color:#624833}.tag-led{background:#d2844a}
.trust{background:#eeeae2;border-color:#ded8ce}.trust-line{color:#5b5c56}.trust-line span{color:#b86c3a}
.section-visual{background:linear-gradient(125deg,#30332e,#65503d)}.large-numeral span,.about-icon{color:#e7a26c}.about-stripe{background:linear-gradient(90deg,#c7763d 55%,#292d29 55%)}
.section-tag,.project-content .type{color:#a96035}.about-text>p,.section-head>p,.project-content p{color:#696d68}.text-link{color:#9d552b}
.services{background:#eeeae2}.service-card{border-color:#e2dacf;border-radius:3px}.service-card.feature{background:#343733;border-color:#343733}.service-card.feature .symbol,.service-card.feature .card-index,.service-card.feature a{color:#f5ae73}.service-card.feature p{color:#e1d9cc}.symbol{color:#c5763f}.card-index{color:#a28975}
.project-card{border-color:#e4ddd3;border-radius:3px;box-shadow:0 12px 25px #29241e09}.project-art.sun{filter:sepia(.18) saturate(.72)}.project-art.sun.amber{filter:sepia(.3) saturate(.77)}.project-art.fiber{background:radial-gradient(circle at 70% 50%,#b98657,#4a4039 45%,#262a28 80%)}.light-strand{background:linear-gradient(90deg,transparent,#e5a96e,#fff0c9);box-shadow:0 0 12px #d89654,0 0 30px #d89c66}.art-label{color:#70452b}.specs span,.contact-points a,.contact-points strong{color:#754a2f}
.ongoing{border-color:#d9d2c8}.ongoing-mark,.contact-points>div>span{background:#f4e5d5;color:#a65e32}
.partnership{background:#2a2e2b}.partnership .section-tag{color:#e8a978}.partnership:before{border-color:#e8a9780b}
.contact-panel{background:#f0ece5;border-color:#e1d9cd}.panel-label{color:#8b512f}.contact-panel label{color:#4a4e48}.contact-panel input:focus,.contact-panel textarea:focus{border-color:#bd7645}
footer{background:#242825;color:#f1eae0}.footer-grid b{color:#cba283}.footer-grid p,.footer-grid a,.footer-grid span{color:#ded3c8}
@media(min-width:861px){.hero-grid{grid-template-columns:1.1fr .9fr}.hero{padding-top:105px;padding-bottom:105px}}

/* REFONTE 2026 : VERT · BLEU NUIT · BLANC */
:root{--green:#16834b;--green2:#39a767;--navy:#112a27;--blue:#16834b;--dark:#172e29;}
.hero{background:linear-gradient(110deg,#112823 0%,#1e3730 75%,#2a4032 100%)}
.glow.one,.glow.two{background:#398b59}.hero h1 em{color:#6fca8d}.eyebrow{color:#bfe7cb}.pulse{background:#43b978;box-shadow:0 0 0 5px #43b97828}
.button.primary{background:#158a4d!important;color:#fff}.button.primary:hover{background:#0d6638!important}.links a:hover,.text-link:hover{color:#13864c}.symbol,.trust-line span,.service-card.feature .symbol,.service-card.feature .card-index,.service-card.feature a{color:#1b9658}.service-card.feature{background:#164e37;border-color:#164e37}.section-tag,.project-content .type{color:#18824c}.project-content .specs span{color:#187346}.ongoing-mark,.contact-points>div>span{background:#dcefe2;color:#197b49}.partnership{background:#0d3529}.partnership .section-tag{color:#9de0ad}.panel-label{color:#186d41}.contact-panel input:focus,.contact-panel textarea:focus{border-color:#189451}.about-stripe{background:linear-gradient(90deg,#229b5b 55%,#213e31 55%)}.large-numeral span,.about-icon{color:#62c88b}.project-art.fiber{background:#123e32}.top-tag{color:#176a43}.tag-led{background:#26ad63}
.nav .brand{display:flex;align-items:center;gap:11px;width:auto;min-width:240px;text-decoration:none}.brand-mark{width:59px!important;height:57px!important;object-fit:contain;flex-shrink:0}.brand-wordmark{display:flex;flex-direction:column;gap:3px;white-space:nowrap}.brand-wordmark strong{font-family:Arial,sans-serif;letter-spacing:1.25px;font-size:19px;font-weight:900;color:#183a38}.brand-wordmark i{font-style:normal;color:#17884d}.brand-wordmark small{font-size:9px;letter-spacing:.2px;color:#596d64}.footer-wordmark{display:block;color:#fff;font-size:24px;letter-spacing:1.2px}
.hero-photo{width:100%;height:100%;min-height:310px;object-fit:cover;display:block;border-radius:16px;box-shadow:0 25px 70px #0b261f66}.hero-visual{overflow:hidden;border-radius:16px}.hero-visual .top-tag{z-index:2}
.project-art.real-photo{overflow:hidden;background:#173e30}.project-art.real-photo img{width:100%;height:100%;object-fit:cover;display:block}.featured{background:#f0f7f1}.featured-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:36px;align-items:center;margin-top:25px}.featured-grid img{width:100%;height:auto;border-radius:8px;border:1px solid #d1dccf;box-shadow:0 15px 36px #133b2220}.featured-grid h3{font-size:27px;color:#164e32}.featured-grid p{color:#516358;line-height:1.8}.gallery{background:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}.gallery-grid figure{margin:0;overflow:hidden;background:#eff6f0;border:1px solid #dae7dc;border-radius:9px}.gallery-grid img{display:block;width:100%;height:225px;object-fit:cover}.gallery-grid figcaption{padding:13px 16px;font-size:13px;font-weight:700;color:#224a32}
@media(max-width:860px){.featured-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-wordmark strong{font-size:16px}.brand-mark{width:49px!important;height:49px!important}}@media(max-width:560px){.gallery-grid{grid-template-columns:1fr}.brand-wordmark strong{font-size:15px}.brand-wordmark small{font-size:8px}.nav .brand{min-width:0}.hero-photo{min-height:240px}}

/* Identité validée : bleu nuit, orange, blanc, logo original intact. */
:root{--navy:#071b34;--dark:#0a213e;--blue:#1879c1;--green:#ff7518;--green2:#ff9b55;--pale:#f3f7fb;--muted:#66778b}
.header{background:#fff;box-shadow:0 8px 32px #071b3420}.nav{min-height:94px}.nav .brand{width:270px;min-width:180px;display:block}.nav .brand .original-logo{width:100%!important;max-width:305px;height:auto!important;object-fit:contain;display:block}.footer-wordmark{font-weight:900}
.hero{background:radial-gradient(ellipse at 78% 36%,#174c75 0%,transparent 45%),linear-gradient(116deg,#05162b,#0a3155 67%,#071c34)!important}
.hero:before{content:"";pointer-events:none;position:absolute;inset:0;background-image:linear-gradient(#4cb6ee0a 1px,transparent 1px),linear-gradient(90deg,#4cb6ee0a 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(90deg,black,transparent)}
.hero h1 em{color:#ff8b38!important}.glow.one,.glow.two{background:#277eae!important}.eyebrow{color:#ffb171!important}.pulse{background:#ff851c!important;box-shadow:0 0 0 5px #ff851c24!important}
.button.primary{background:linear-gradient(120deg,#ff6412,#ff963c)!important;color:white!important;box-shadow:0 8px 22px #ff6c1630}.button.primary:hover{background:#eb5f10!important}.links a:hover,.text-link:hover{color:#f07625!important}.symbol,.trust-line span,.service-card.feature .symbol,.service-card.feature .card-index,.service-card.feature a,.section-tag,.project-content .type,.project-content .specs span,.panel-label,.top-tag{color:#f47720!important}.service-card.feature{background:#0b3150!important;border-color:#1c5070!important}.ongoing-mark,.contact-points>div>span{background:#fff0df!important;color:#e46b17!important}.partnership{background:linear-gradient(125deg,#04182b,#093654)!important}.partnership .section-tag{color:#ffab58!important}.contact-panel input:focus,.contact-panel textarea:focus{border-color:#ff7a21!important}.about-stripe{background:linear-gradient(90deg,#fc7822 55%,#173a60 55%)!important}.large-numeral span,.about-icon{color:#fd872c!important}.project-art.fiber{background:#0a2a4c!important}.tag-led{background:#ff861f!important}
.hero-photo{box-shadow:0 24px 68px #0009}.project-card,.service-card,.gallery-grid figure{transition:transform .25s,box-shadow .25s}.project-card:hover,.service-card:hover,.gallery-grid figure:hover{transform:translateY(-5px);box-shadow:0 18px 50px #0a254025}
.featured{background:linear-gradient(180deg,#f6faff,#fff)}.featured-grid>a img{border:1px solid #d7b870;box-shadow:0 18px 45px #0a254026}
.gallery-grid img{object-fit:cover}.gallery-grid figure{overflow:hidden}.featured-grid,.gallery-grid{position:relative}
@media(max-width:950px){.nav .brand{width:210px;min-width:170px}.nav .brand img{max-width:230px}}
@media(max-width:560px){.nav .brand{width:190px;min-width:160px}.nav .brand img{max-width:195px}.hero h1{font-size:clamp(32px,8vw,50px)}}

/* Nouvelle page accueil inspirée du modèle validé, avec vrais éléments HTML */
.utility{display:none!important}
.header.new-header{position:relative;z-index:20;background:#fff;box-shadow:0 3px 20px #071d3820!important}.new-header .nav{min-height:88px;gap:24px;display:flex;align-items:center;justify-content:space-between}.new-header .brand{flex:0 0 245px!important;min-width:0!important;width:245px!important}.new-header .brand img{width:100%!important;height:auto!important;max-width:100%!important}.new-header .links{display:flex;align-items:center;gap:24px;white-space:nowrap}.new-header .links a{font-size:12.5px;color:#18283c;font-weight:700;text-decoration:none}.new-header .links a.current{color:#0a2340;border-bottom:3px solid #fa761e;padding-bottom:8px}.new-header .nav-actions{display:flex;align-items:center;gap:16px}.search-circle{width:40px;height:40px;border:1px solid #dfebf6;color:#102b4c;border-radius:50%;display:grid;place-items:center}.orange-cta{background:#ff6c11!important;color:white!important;border-radius:7px!important;padding:14px 21px!important;white-space:nowrap;font-weight:800;box-shadow:0 8px 15px #fb711628}
.showcase-hero{padding:0!important;min-height:615px!important;position:relative!important;overflow:visible!important;background:linear-gradient(115deg,#03162f,#113b62)!important}.showcase-hero:before{display:none!important}.showcase-hero .hero-background{position:absolute;inset:0;background-image:linear-gradient(90deg,#04162c 0%,#052449ed 20%,#07315ba8 44%,#071a3038 72%,#071a3015 100%),url('assets/visite-officielle.webp');background-position:center center,right center;background-size:cover,auto 100%;background-repeat:no-repeat;z-index:0}.showcase-hero .hero-tech-grid{position:absolute;z-index:1;pointer-events:none;inset:0;background:radial-gradient(circle at 1% 88%,#069bff42,transparent 36%),repeating-linear-gradient(130deg,transparent 0 50px,#20aff80a 50px 51px)}.showcase-hero .hero-layout{min-height:545px;position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:32px;padding-top:27px;padding-bottom:76px}.hero-copy-showcase{max-width:630px;color:white;flex:1}.hero-company-logo{width:330px;max-width:90%;height:auto;display:block;mix-blend-mode:screen;filter:drop-shadow(0 0 5px #ffffff7a);margin-bottom:16px}.hero-kicker{font-size:11px;font-weight:900;letter-spacing:2px;color:#ff9e44;line-height:1.5;margin-bottom:14px}.hero-kicker span{letter-spacing:0}.hero-copy-showcase h1{font-size:clamp(38px,3.25vw,55px);line-height:1.105;letter-spacing:-1.6px;margin:0 0 20px;font-weight:900;max-width:630px;color:#fff}.hero-copy-showcase h1 em{color:#ff8a2a!important;font-style:normal}.hero-copy-showcase p{font-size:14px;line-height:1.75;color:#edf3fa;max-width:610px;margin:0 0 22px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero-actions .button{font-size:13px!important;border-radius:6px!important;padding:15px 22px!important}.hero-actions .button.outline{background:#051b36a8;color:#fff;border:1px solid #ffffff80}.hero-quote{align-self:flex-end;width:225px;flex:none;background:#061d39b8;border:1px solid #ffffff40;backdrop-filter:blur(9px);padding:19px 19px 14px;color:white;border-radius:12px;margin-bottom:45px}.hero-quote .quotes{font-size:30px;color:#ff8b2a;line-height:1}.hero-quote p{font-size:17px;line-height:1.3;font-weight:800;margin:4px 0 14px}.hero-quote i{width:52px;height:3px;background:#ff861c;display:block}.metrics-container{position:relative;z-index:4;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:-44px;margin-bottom:-45px}.metric-card{background:linear-gradient(125deg,#062a4d,#031a34);border:1px solid #4e7894a9;box-shadow:0 15px 30px #041b3245;color:#fff;min-height:118px;display:flex;gap:16px;align-items:center;padding:19px 20px;border-radius:10px}.metric-card .metric-icon{color:#ff8a20;font-size:42px;line-height:1;flex:none}.metric-card .metric-icon.blue{color:#3cc3fa}.metric-card strong{display:block;white-space:nowrap;font-size:31px;line-height:1.05;font-weight:900}.metric-card strong small{font-size:18px}.metric-card div>span{display:block;font-size:11.5px;line-height:1.45;margin-top:7px;color:#e8eff9}.showcase-hero+.trust{padding-top:62px!important}.showcase-hero +.trust .trust-line{min-height:56px}
@media(max-width:1180px){.new-header .links{gap:12px}.new-header .brand{flex-basis:190px!important;width:190px!important}.new-header .nav{gap:14px}.new-header .links a{font-size:11px}.metric-card{gap:10px;padding:15px}.metric-card strong{font-size:25px}.metric-card strong small{font-size:15px}.hero-copy-showcase{max-width:540px}.hero-copy-showcase h1{font-size:40px}}
@media(max-width:860px){.new-header .links{display:none}.new-header .links.open{display:flex;position:absolute;top:72px;left:0;right:0;background:white;padding:20px;flex-direction:column;box-shadow:0 12px 25px #071b3422;z-index:40}.new-header .brand{flex-basis:230px!important;width:230px!important}.new-header .nav{min-height:76px}.showcase-hero .hero-layout{align-items:flex-start;min-height:560px;padding-top:46px}.hero-quote{display:none}.showcase-hero .hero-background{background-size:cover,auto 100%;background-position:center,65% center}.hero-copy-showcase{max-width:600px}.showcase-hero .hero-background:after{content:"";position:absolute;inset:0;background:#051b3460}.metrics-container{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:-35px}.showcase-hero+.trust{padding-top:70px!important}}
@media(max-width:560px){.new-header .brand{flex-basis:190px!important;width:190px!important}.new-header .search-circle{display:none}.new-header .orange-cta{font-size:10px!important;padding:10px!important}.showcase-hero .hero-layout{min-height:655px;padding-top:35px;padding-bottom:160px}.hero-copy-showcase h1{font-size:35px;line-height:1.16}.hero-copy-showcase p{font-size:12px}.hero-kicker{font-size:9px;letter-spacing:1px}.hero-company-logo{width:245px}.hero-actions .button{padding:12px 14px!important;font-size:11px!important}.metrics-container{gap:8px;margin-top:-130px}.metric-card{min-height:100px;padding:10px 8px;gap:6px}.metric-card .metric-icon{font-size:22px}.metric-card strong{font-size:20px}.metric-card strong small{font-size:11px}.metric-card div>span{font-size:9px}.showcase-hero+.trust{padding-top:150px!important}.hero-background{background-position:center,68% center!important}}

/* Direction, version actualisée */
.lead-email{display:block;color:#144979;font-size:clamp(12px,1vw,16px);overflow-wrap:anywhere;margin-top:4px}
.president-card{display:grid;grid-template-columns:165px minmax(0,1fr);gap:24px;margin:26px 0;padding:22px;background:#fff;border:1px solid #dce4ef;border-radius:18px;box-shadow:0 12px 30px #0d32620c}
.president-photo img{display:block;width:100%;height:225px;object-fit:cover;object-position:center top;border-radius:12px}
.president-details h3{font-size:23px;margin:6px 0;color:#102c51}.president-role{color:#64748b!important;margin:0 0 10px!important}.president-details h4{font-size:16px;margin:12px 0 5px;color:#e96b11}.president-details p{font-size:14px!important;line-height:1.65!important;margin-bottom:9px!important}.president-contact{display:flex;flex-wrap:wrap;gap:8px 16px}.president-contact a{font-weight:700;color:#0c487b;overflow-wrap:anywhere}.contact-points a{display:block;overflow-wrap:anywhere}.direction-profile a{display:block}
@media(max-width:650px){.president-card{grid-template-columns:1fr}.president-photo img{width:145px;height:165px}}

/* Institutional 2024 update */
.section-visual:has(.about-feature-image){padding:0;min-height:0;background:transparent;display:flex;align-items:stretch;overflow:hidden;border-radius:22px}
.about-feature-image{display:block;width:100%;height:100%;min-height:480px;object-fit:cover;border-radius:22px}
.institutional-values{margin:28px 0;padding:24px;background:#fff;border-left:4px solid #fa761c;border-radius:12px;line-height:1.7}
.institutional-values h3{margin:0 0 8px;color:#0c315b}
.achievement-timeline{margin-top:48px;padding:34px;border:1px solid #dce4ee;border-radius:22px;background:#f6f9fd}
.achievement-timeline>h3{font-size:clamp(1.5rem,2.8vw,2.2rem);margin:10px 0 24px;color:#0b2d50}
.timeline-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.timeline-grid article{padding:20px 18px;background:white;border:1px solid #e2e8f0;border-radius:15px;box-shadow:0 8px 22px #0a23410a}
.timeline-grid article>b{display:inline-block;color:#f36c11;font-size:1.3rem}
.timeline-grid h4{color:#102c4d;margin:12px 0 8px;font-size:1rem}.timeline-grid p{margin:0;color:#64748b;line-height:1.6;font-size:.91rem}
.partners-directory{max-width:1200px;margin:10px auto 0;padding:0 24px 52px;color:#fff}
.partners-directory h3{font-size:1.55rem;margin:0 0 6px}.partners-directory p{opacity:.78;max-width:780px;line-height:1.6}
.partner-name-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:20px}
.partner-name-grid span{display:flex;align-items:center;justify-content:center;padding:16px 8px;min-height:60px;border:1px solid #ffffff45;border-radius:9px;background:#ffffff12;text-align:center;font-size:.85rem;font-weight:700}
@media(max-width:900px){.timeline-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partner-name-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:540px){.timeline-grid{grid-template-columns:1fr}.achievement-timeline{padding:22px 16px}.partner-name-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-feature-image{min-height:280px}}

/* Partner and supplier directories */
.partners-directory{max-width:1200px;margin:48px auto 0;padding:0 24px 60px;color:#fff;}
.partners-title h3{font-size:clamp(1.6rem,2.8vw,2.4rem);margin:12px 0;}
.partners-title p{max-width:760px;line-height:1.7;color:#dae6f3;}
.logo-group{margin-top:28px;padding:25px;border:1px solid rgba(255,255,255,.2);border-radius:18px;background:rgba(255,255,255,.06)}
.group-heading{display:flex;gap:16px;align-items:baseline;justify-content:space-between;flex-wrap:wrap;margin:0 0 18px}
.group-heading h4{margin:0;font-size:1.2rem;color:#fff}
.group-heading p{margin:0;color:#ccd8e7;font-size:.9rem}
.partner-brand-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.brand-tile{min-height:118px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:10px;background:#fff;border-radius:13px;padding:15px 10px;box-shadow:0 10px 25px rgba(0,0,0,.08)}
.brand-tile strong{font-weight:850;color:#0b315d;font-size:clamp(.95rem,1.4vw,1.35rem);letter-spacing:.02em}
.brand-tile small{font-size:.72rem;color:#64748b}
.directory-note{color:#ccd8e7;font-size:.9rem;line-height:1.6;margin-top:21px}
@media(max-width:850px){.partner-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:540px){.partner-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-tile{min-height:98px}}
