/* ==== x_9e73ac04de58.css ==== */
.hpcard,.card-m,.plc-card{isolation:isolate;--mx:50%;--my:0%}.hpcard{--pac:var(--gold-l)}.hpcard>*{position:relative;z-index:1}.hpcard::after,.card-m::after,.plc-card::after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:0;pointer-events:none;opacity:0;transition:opacity .3s ease;background:radial-gradient(240px circle at var(--mx) var(--my),color-mix(in srgb,var(--pac,var(--gold-l)) 18%,transparent),transparent 62%)}.card-m,.plc-card{position:relative}.card-m>*,.plc-card>*{position:relative;z-index:1}.hpcard:hover::after,.card-m:hover::after,.plc-card:hover::after{opacity:1}.hpcard:hover{box-shadow:0 22px 50px -26px color-mix(in srgb,var(--pac) 60%,transparent)}.hpcard-kpis span,.hx-stat b,.pgh-kpi b,.stats .v,.stats b{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.prem-mesh{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.5;mix-blend-mode:screen;background:radial-gradient(60% 80% at 18% 12%,rgba(240,206,130,.16),transparent 60%),radial-gradient(55% 70% at 88% 86%,rgba(70,134,222,.16),transparent 62%);animation:premMesh 16s ease-in-out infinite alternate}@keyframes premMesh{0%{transform:translate3d(0,0,0) scale(1)}100%{transform:translate3d(-2%,1.5%,0) scale(1.06)}}#prem-prog{position:fixed;top:0;left:0;height:2px;width:0;z-index:70;pointer-events:none;background:linear-gradient(90deg,var(--gold-l,#F0CE82),var(--blue-l,#5AA7F0));box-shadow:0 0 12px rgba(240,206,130,.45)}.hx-stat b[data-cv]{font-variant-numeric:tabular-nums}.pgh-kpi,.ilede-stat,.atc-stat{position:relative;overflow:hidden;border-radius:14px!important;transition:transform .28s var(--ease,cubic-bezier(.45,0,.15,1)),border-color .28s var(--ease,ease),box-shadow .28s var(--ease,ease)}.pgh-kpi{border-top-color:var(--hair)!important;border-top-width:1px!important}.ilede-stat{border-top-color:var(--hair)!important;border-top-width:1px!important}.pgh-kpi,.ilede-stat,.atc-stat{isolation:isolate;--mx:50%;--my:0%}.pgh-kpi::before,.ilede-stat::before,.atc-stat::before{content:"";position:absolute;left:0;top:16%;bottom:16%;z-index:2;width:3px;border-radius:0 3px 3px 0;background:var(--kac);box-shadow:0 0 10px -1px var(--kac)}.pgh-kpi::after,.ilede-stat::after,.atc-stat::after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:0;pointer-events:none;opacity:0;transition:opacity .3s ease;background:radial-gradient(200px circle at var(--mx) var(--my),color-mix(in srgb,var(--kac) 15%,transparent),transparent 60%)}.pgh-kpi:hover::after,.ilede-stat:hover::after,.atc-stat:hover::after{opacity:1}.pgh-kpi{--kac:var(--pac,var(--gold-l))}.ilede-stat{--kac:var(--pac,var(--gold-l))}.atc-stat{--kac:var(--blue-l,#5AA7F0)}.pgh-kpi>*,.ilede-stat>*,.atc-stat>*{position:relative;z-index:1}.pgh-kpi:hover,.ilede-stat:hover,.atc-stat:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--kac) 42%,var(--hair));box-shadow:0 18px 36px -24px color-mix(in srgb,var(--kac) 55%,transparent)}@media(prefers-reduced-motion:reduce){.pgh-kpi,.ilede-stat,.atc-stat{transition:none}.pgh-kpi:hover,.ilede-stat:hover,.atc-stat:hover{transform:none}}.biz-k::before,.hxi-eyebrow::before,.mfo-k::before,.pof-k::before,.ppj-k::before,.ppte-k::before,.sb-k::before,.shortcuts-k::before{content:"";display:inline-block;vertical-align:middle;width:7px;height:7px;margin-right:9px;background:var(--pac,var(--gold-l));transform:rotate(45deg);position:relative;top:-1px}@media(prefers-reduced-motion:reduce){.prem-mesh{animation:none}}
/* ==== x_917896c622c8.css ==== */
#lum-veil{position:fixed;inset:0;z-index:2147483000;pointer-events:none;-webkit-backdrop-filter:none;backdrop-filter:none}.lum-ctl{position:fixed;right:22px;bottom:84px;z-index:2147483600;font-family:var(--fm,system-ui)}.lum-btn{width:46px;height:46px;border-radius:50%;border:1px solid var(--hair,rgba(120,180,250,.18));background:rgba(14,26,44,.86);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--gold-l,#F0CE82);cursor:pointer;display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.4);transition:transform .25s,border-color .2s}.lum-btn:hover{transform:translateY(-2px);border-color:var(--gold-l,#F0CE82)}.lum-btn:focus-visible{outline:2px solid var(--gold-l,#F0CE82);outline-offset:3px}.lum-panel{position:absolute;right:0;bottom:56px;width:214px;background:rgba(11,20,34,.97);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--hair,rgba(120,180,250,.18));border-radius:14px;padding:14px 16px;box-shadow:0 18px 48px rgba(0,0,0,.55)}.lum-panel[hidden]{display:none}.lum-h{font-size:0.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-l,#F0CE82);margin:0 0 10px;font-weight:600}.lum-range{width:100%;accent-color:var(--gold-l,#F0CE82);cursor:pointer}.lum-presets{display:flex;gap:6px;margin-top:12px}.lum-presets button{flex:1;font-size:0.6875rem;padding:6px 4px;border-radius:8px;border:1px solid var(--hair,rgba(120,180,250,.18));background:transparent;color:rgba(245,247,250,.82);cursor:pointer;transition:background .2s,border-color .2s}.lum-presets button:hover{border-color:var(--gold-l,#F0CE82);background:rgba(240,206,130,.1)}@media (max-width:640px){.lum-ctl{bottom:96px;right:16px}}
/* ============ Impression : lecture en pleine lumiere ============ */
@media print{
html,body{background:#fff!important;color:#111!important}
body::before,body::after{display:none!important}
.subland,.grain,#preloader,#nav,.nav,.nav.nx,#nezBar,#secrail,#ckn,#cmdk,#homeFab,.lum-ctl,.scrollcue,.diapo,.pgh-art,.cart-btn,.nx-mega,.pole-subnav,.ttg i,.cta-band,#cta-band,.flip-hint{display:none!important}
main:not(#_),section:not(#_),article:not(#_),footer:not(#_),header:not(#_){background:#fff!important;box-shadow:none!important;clip-path:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border-color:#ccc!important;text-shadow:none!important}
.reveal{opacity:1!important;transform:none!important;transition:none!important}
h1:not(#_),h2:not(#_),h3:not(#_),h4:not(#_),h5:not(#_),b:not(#_),strong:not(#_),dt:not(#_){color:#000!important;text-shadow:none!important;-webkit-text-fill-color:#000!important;background:none!important}
p:not(#_),li:not(#_),span:not(#_),td:not(#_),th:not(#_),i:not(#_),em:not(#_),small:not(#_),dd:not(#_),figcaption:not(#_),blockquote:not(#_),caption:not(#_),label:not(#_),div:not(#_){color:#222!important;text-shadow:none!important}
h1 em:not(#_),h2 em:not(#_),h3 em:not(#_){color:#7a5c14!important}
a:not(#_){color:#1B4E8C!important;text-decoration:underline}
main a[href^="http"]::after{content:" (" attr(href) ")";font-size:.72em;color:#666!important}
.card:not(#_),[class*="card"]:not(#_),[class*="panel"]:not(#_),.pgh-kpi:not(#_){background:#fff!important;border:1px solid #bbb!important;box-shadow:none!important}
table{border-collapse:collapse!important}
td:not(#_),th:not(#_){border:1px solid #999!important;background:#fff!important}
.foot-desc:not(#_):not(#__),footer p:not(#_):not(#__),footer a:not(#_):not(#__){color:#222!important}
img{max-width:100%!important}
*{animation:none!important}
}

/* Ch231 : variateur reactive - le pilote JS existe desormais (u_cd226c00eb4b.js), le masque universel est leve */

/* ==== x_d941ee01aba2.css ==== */
header.pghero{background:linear-gradient(160deg,#F7F3EC 0%,#EFE8DA 60%,#E7DECB 100%)!important;border-bottom:1px solid rgba(120,90,30,.16)!important}header.pghero::before{opacity:.10!important;filter:saturate(.65) contrast(.9)!important}header.pghero>div[style*="background-image"]{opacity:.12!important;filter:grayscale(.2) saturate(.7)!important}header.pghero,header.pghero *{text-shadow:none!important}header.pghero h1{color:#16212F!important}header.pghero .pgl{color:#3C4757!important}header.pghero .crumb,header.pghero .crumb a{color:#6a5a3a!important}header.pghero .pgh-kpi{background:rgba(255,255,255,.62)!important;border:1px solid rgba(120,90,30,.18)!important}header.pghero .pgh-kpi,header.pghero .pgh-kpi *{color:#16212F!important}header.pghero .pgh-kpis b,header.pghero .pgh-kpis i{color:#1d2838!important}header.pghero .pgh-kpis i{color:#56617a!important}header.pghero .pgk{color:#8a6a12!important}header.pghero .pgk::before{background:#8a6a12!important}header.pghero .pgc-node{color:#465062!important}header.pghero .pgc-node.is-on{color:#16212F!important}header.pghero .pgc-arr,header.pghero .pgc-tail,header.pghero .pgc-lab{color:#6a7488!important}header.pghero .pgh-flabel{color:#5a6675!important}header.pghero .pgh-btn2{color:#16212F!important;border-color:rgba(120,90,30,.42)!important}.pole-subnav{background:linear-gradient(180deg,rgba(10,17,30,.8),rgba(7,12,22,.66))!important;-webkit-backdrop-filter:blur(14px) saturate(1.4)!important;backdrop-filter:blur(14px) saturate(1.4)!important;border-bottom:1px solid rgba(255,255,255,.08)!important;box-shadow:0 10px 26px -22px rgba(0,0,0,.5)}.pole-subnav .psn-wrap{gap:7px!important;-webkit-mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent)}.pole-subnav a,.pole-subnav span{color:#CBD5E3!important;text-shadow:none!important}.pole-subnav .psn-home{display:inline-flex;align-items:center;gap:8px;border-right-color:rgba(255,255,255,.12)!important}.pole-subnav .psn-home::before{content:"";width:7px;height:7px;border-radius:50%;flex:none;background:var(--psn-accent,#C2922E);box-shadow:0 0 0 3px rgba(194,146,46,.16)}.pole-subnav .psn-link{font-family:var(--fb)!important;font-weight:500!important;font-size:.84rem!important;letter-spacing:0!important;border-radius:8px!important;padding:8px 12px!important;border:1px solid transparent!important;background:transparent!important;box-shadow:none!important;transition:color .18s ease,background .18s ease}.pole-subnav .psn-link:hover{background:rgba(255,255,255,.08)!important;border-color:transparent!important;color:#fff!important}.pole-subnav .psn-link.is-active{position:relative;background:rgba(255,255,255,.07)!important;border-color:transparent!important;color:#fff!important;font-weight:650!important;box-shadow:none!important}.pole-subnav .psn-link.is-active::after{content:"";position:absolute;left:10px;right:10px;bottom:2px;height:2.5px;border-radius:3px;background:linear-gradient(90deg,#DBAE4A,#C2922E)}@media(prefers-reduced-motion:reduce){.pole-subnav .psn-link{transition:none}.pole-subnav .psn-link:hover{transform:none}}@media(prefers-reduced-transparency:reduce){.pole-subnav,.pole-subnav .psn-link{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#0B1422!important}}.cms-photo{background:linear-gradient(160deg,#F4EFE6,#EAE1D0)!important}.cms-photo{text-shadow:none!important}footer{background:linear-gradient(180deg,#0B1626 0%,#070D18 100%)!important;text-shadow:none!important}
.pole-subnav .psn-link:not(#_):not(#__){color:#CBD5E3!important}.pole-subnav .psn-link:hover:not(#_):not(#__),.pole-subnav .psn-link.is-active:not(#_):not(#__){color:#fff!important}

/* ==== x_ccf230b9a3a4.css ==== */
@media(prefers-reduced-motion:reduce){}@media(prefers-reduced-motion:reduce){}@media(prefers-reduced-motion:reduce){}@media(prefers-reduced-motion:reduce){}@media(max-width:760px){}footer .foot-grid{display:grid}footer .foot-col a{display:block;color:rgba(245,247,250,.72);text-decoration:none;transition:color .2s}footer .foot-poles{display:flex;flex-wrap:wrap;gap:8px}footer .foot-pole{display:inline-flex;align-items:center;gap:6px;font-size:.84rem;color:rgba(245,247,250,.82);text-decoration:none;padding:5px 11px;border:1px solid var(--hair);border-radius:999px;transition:border-color .2s,color .2s,background .2s}footer .foot-pole::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--pc,var(--gold-l))}footer .foot-pole:hover{border-color:var(--pc,var(--gold-l));color:#fff;background:color-mix(in srgb,var(--pc,var(--gold-l)) 12%,transparent)}footer .foot-brand .brand{display:flex;align-items:center;gap:10px;margin-bottom:14px;text-decoration:none}footer .foot-desc{color:var(--muted);font-size:.88rem;line-height:1.6;max-width:36ch}footer .foot-social{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}footer .foot-social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--hair);border-radius:10px;color:var(--muted);transition:border-color .2s,color .2s,transform .2s}footer .foot-social a:hover{border-color:var(--gold-l);color:var(--gold-l);transform:translateY(-2px)}footer .foot-social svg{width:18px;height:18px}footer .foot-legal-links{display:flex;flex-wrap:wrap;gap:8px 14px}footer .foot-legal a{color:var(--muted);text-decoration:none;transition:color .2s}footer .foot-legal a:hover{color:var(--gold-l)}.foot-grid{grid-template-columns:1.6fr repeat(4,1fr)!important;gap:30px 28px!important}.foot-col h3{font-family:var(--fm)!important;font-size:var(--ts-l,.75rem)!important;letter-spacing:.2em!important;text-transform:uppercase;color:rgba(245,247,250,.5)!important;padding-bottom:11px;margin:0 0 13px!important;border-bottom:1px solid rgba(255,255,255,.09);position:relative}.foot-col h3::after{content:"";position:absolute;left:0;bottom:-1px;width:24px;height:2px;background:var(--gold-l)}.foot-col a:not(.foot-pole){font-size:.85rem;margin-bottom:10px}.foot-col a:not(.foot-pole):hover{color:var(--gold-l)}.foot-legal{margin-top:46px;padding-top:22px;border-top:1px solid rgba(255,255,255,.08)}@media(max-width:1000px){.foot-grid{grid-template-columns:1fr 1fr 1fr!important}}@media(max-width:680px){.foot-grid{grid-template-columns:1fr 1fr!important}}@media(max-width:460px){.foot-grid{grid-template-columns:1fr!important}}body{font-feature-settings:"kern" 1,"liga" 1,"calt" 1;text-rendering:optimizeLegibility}b,strong,th,td,time,h1,h2,h3,[class*="kpi"],[class*="-no"],[class*="amt"],[class*="-k "],.pgh-kpis,.biz-cible,.ce-amt,.it-card{font-variant-numeric:tabular-nums lining-nums}main p a:not(.btn):not([class]),.jbody a,article p a{text-underline-offset:.18em;text-decoration-thickness:.06em}@media(prefers-contrast:more){:root{--muted:rgba(245,247,250,.86);--mut:rgba(245,247,250,.86);--hair:rgba(245,247,250,.3)}a{text-decoration-thickness:from-font}.pgl,.intro,.lead,.biz-lead,.ce-lead,.oeco-lead{color:#eaeef4!important}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

/* ===== ULTRA FOOTER — couche 2026-07 ===== */
footer:not(#_x){position:relative}
footer:not(#_x)>.wrap{position:relative;z-index:1}
footer:not(#_x)::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;pointer-events:none;
 background:linear-gradient(90deg,transparent,rgba(219,174,74,.6) 16%,rgba(46,134,222,.45) 50%,rgba(61,204,151,.45) 84%,transparent)}
footer .foot-col h3{color:rgba(245,247,250,.66)!important}
footer .foot-col h3::after{width:34px;background:linear-gradient(90deg,#DBAE4A,rgba(219,174,74,0))}
footer .foot-col a:not(.foot-pole){position:relative;transition:color .18s,padding-inline-start .18s}
footer .foot-col a:not(.foot-pole)::before{content:"";position:absolute;inset-inline-start:0;top:.62em;
 width:0;height:2px;border-radius:2px;background:#DBAE4A;transition:width .18s}
footer .foot-col a:not(.foot-pole):hover{color:#F3D9A0!important;padding-inline-start:15px}
footer .foot-col a:not(.foot-pole):hover::before{width:9px}
footer .foot-pole{transition:border-color .2s,background .2s,transform .2s,box-shadow .2s}
footer .foot-pole:hover{transform:translateY(-1px);box-shadow:0 0 0 4px color-mix(in srgb,var(--pc,#DBAE4A) 12%,transparent)}
footer .foot-social a{border-radius:50%;background:rgba(255,255,255,.03);
 transition:border-color .2s,color .2s,transform .2s,background .2s,box-shadow .2s}
footer .foot-social a:hover{transform:translateY(-3px);background:rgba(219,174,74,.1);
 box-shadow:0 6px 18px -8px rgba(219,174,74,.5)}
footer .foot-legal{position:relative}
footer .foot-legal::before{content:"";position:absolute;top:-1px;left:0;width:120px;height:2px;
 background:linear-gradient(90deg,#DBAE4A,rgba(219,174,74,0))}
footer .foot-legal a{transition:color .18s}
footer .foot-legal a:hover{color:#F3D9A0;text-decoration:underline;text-underline-offset:3px}
@media(prefers-reduced-motion:reduce){
footer .foot-col a:not(.foot-pole),footer .foot-pole,footer .foot-social a,footer .foot-legal a{transition:none!important}
footer .foot-pole:hover,footer .foot-social a:hover{transform:none}}

/* ==== x_dd3f8c61af27.css ==== */
:root{accent-color:#E8C36A}main :where(input[type=text],input[type=email],input[type=tel],input[type=number],input[type=search],select,textarea),form :where(input[type=text],input[type=email],input[type=tel],input[type=number],input[type=search],select,textarea){background:rgba(8,14,26,.55);border:1px solid rgba(255,255,255,.14);border-radius:12px;color:#F5F7FA;padding:12px 14px;font:inherit;line-height:1.4;min-height:44px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color .2s,box-shadow .2s,background .2s}main :where(textarea),form :where(textarea){min-height:120px;resize:vertical}main :where(select),form :where(select){appearance:none;-webkit-appearance:none;padding-right:40px;background-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2712%27%20height%3D%278%27%20viewBox%3D%270%200%2012%208%27%3E%3Cpath%20d%3D%27M1%201l5%205%205-5%27%20fill%3D%27none%27%20stroke%3D%27%23E8C36A%27%20stroke-width%3D%271.8%27%20stroke-linecap%3D%27round%27%2F%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right 15px center}main :where(select) option{background:#0B1422;color:#F5F7FA}main ::placeholder,form ::placeholder{color:rgba(245,247,250,.38)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none!important;border-color:color-mix(in srgb,var(--gold-l,#E8C36A) 65%,transparent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--gold-l,#E8C36A) 22%,transparent)!important}main :where(input,textarea):user-invalid,form :where(input,textarea):user-invalid{border-color:rgba(255,122,122,.6)}@media(prefers-reduced-motion:reduce){main :where(input,select,textarea),form :where(input,select,textarea){transition:none}}
/* ==== x_8fabe2089c24.css ==== */
.biz-card.flip2{cursor:pointer;perspective:1200px;background:none!important;border:none!important;padding:0!important;overflow:visible!important}.flip2 .f2i{position:relative;display:grid;width:100%;transform-style:preserve-3d;transition:transform .55s var(--ease,ease)}.flip2.on .f2i{transform:rotateY(180deg)}.flip2 .f2f{grid-area:1/1;display:flex;flex-direction:column;gap:12px;padding:22px 20px;border:1px solid var(--hair,rgba(255,255,255,.1));border-top:3px solid var(--bc,var(--gold-l,#E8C36A));border-radius:16px;background:linear-gradient(180deg,rgba(11,18,32,.55),rgba(11,18,32,.38));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}.flip2 .f2b{transform:rotateY(180deg);background:linear-gradient(180deg,color-mix(in srgb,var(--bc,var(--gold-l)) 12%,#0B1422),rgba(11,18,32,.7))}.flip2 .f2hint{margin-top:auto;align-self:flex-end;font-family:var(--fm);font-size:0.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bc,var(--gold-l,#E8C36A));border:1px solid color-mix(in srgb,var(--bc,var(--gold-l)) 40%,transparent);border-radius:999px;padding:5px 11px}.flip2:hover .f2f{border-color:color-mix(in srgb,var(--bc,var(--gold-l)) 45%,var(--hair,rgba(255,255,255,.1)))}.flip2:focus-visible{outline:2px solid var(--gold-l,#E8C36A);outline-offset:3px;border-radius:16px}@media(prefers-reduced-motion:reduce){.flip2 .f2i{transition:none}.flip2 .f2f{transition:opacity .25s}.flip2 .f2i{transform:none!important}.flip2 .f2b{transform:none;opacity:0;pointer-events:none}.flip2.on .f2b{opacity:1;pointer-events:auto}.flip2.on .f2f:not(.f2b){opacity:0}}
/* ==== x_a5f948c9bac5.css ==== */
@media(max-width:1240px){}@media(min-width:1241px){#nav .nav-links>.nav-item>.nav-trigger{background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.02));-webkit-backdrop-filter:blur(8px) saturate(115%);backdrop-filter:blur(8px) saturate(115%);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:7px 13px;box-shadow:inset 0 1px 0 rgba(255,255,255,.08);transition:border-color .22s var(--ease),background .22s var(--ease),box-shadow .22s var(--ease),transform .22s var(--ease)}#nav .nav-links>.nav-item>.nav-trigger:hover,#nav .nav-links>.nav-item>.nav-trigger[aria-expanded="true"]{border-color:color-mix(in srgb,var(--gold-l,#F0CE82) 55%,rgba(255,255,255,.12));background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.04));box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 0 22px -8px rgba(232,195,106,.35);transform:translateY(-1px)}#nav .nav-links{gap:7px}@media(prefers-reduced-motion:reduce){}}@media(max-width:1240px){#nav .nav-links{background:linear-gradient(180deg,rgba(11,18,32,.72),rgba(7,11,20,.80))!important;-webkit-backdrop-filter:blur(24px) saturate(150%)!important;backdrop-filter:blur(24px) saturate(150%)!important;box-shadow:0 34px 70px -22px rgba(0,0,0,.85)}}@media(max-width:1240px){}
/* Menu mobile ouvert : panneau quasi opaque — lisibilite garantie meme sans backdrop-filter */
@media(max-width:1240px){#nav .nav-links{background:linear-gradient(180deg,rgba(11,18,32,.94),rgba(7,11,20,.97))!important}}

/* ==== u_057e77b5b4cf.css ==== */
/* dedoublonnage des blocs inline communs */
@media(max-width:600px){.hpcard-kpis span,.hpcard-tag,.hx-stat i,.plc-badge,.f2hint,.biz-lab,.ttg-k,.ttg-t i,.dx-tag,.tri-biz-k,.pmore-k,.cb-k,.pl .n,.pgc-lab,.psn-home,.pmk,.ngs-p .tag,.dc-zo,.mkt-brand .br,.ppj-supk{font-size:0.6875rem!important}input,textarea,select{font-size:16px!important}}
:root{--logo:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20200%20200%22%20width%3D%22200%22%20height%3D%22200%22%20role%3D%22img%22%20aria-label%3D%22EnerTchad%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22pgn%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23DBAE4A%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23C2922E%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20d%3D%22M100.00%2096.00%20L126.98%2067.90%20A37.4%2037.4%200%201%200%2073.02%2067.90%20Z%22%20fill%3D%22url%28%23pgn%29%22%2F%3E%3Cpath%20d%3D%22M96.00%20100.00%20L67.90%2073.02%20A37.4%2037.4%200%201%200%2067.90%20126.98%20Z%22%20fill%3D%22%231E6EC2%22%2F%3E%3Cpath%20d%3D%22M104.00%20100.00%20L132.10%20126.98%20A37.4%2037.4%200%201%200%20132.10%2073.02%20Z%22%20fill%3D%22%23218A2C%22%2F%3E%3Cpath%20d%3D%22M100.00%20104.00%20L73.02%20132.10%20A37.4%2037.4%200%201%200%20126.98%20132.10%20Z%22%20fill%3D%22%23F6E8BD%22%2F%3E%3C%2Fsvg%3E")}.logo-img{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20200%20200%22%20width%3D%22200%22%20height%3D%22200%22%20role%3D%22img%22%20aria-label%3D%22EnerTchad%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22pgn%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23DBAE4A%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23C2922E%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20d%3D%22M100.00%2096.00%20L126.98%2067.90%20A37.4%2037.4%200%201%200%2073.02%2067.90%20Z%22%20fill%3D%22url%28%23pgn%29%22%2F%3E%3Cpath%20d%3D%22M96.00%20100.00%20L67.90%2073.02%20A37.4%2037.4%200%201%200%2067.90%20126.98%20Z%22%20fill%3D%22%231E6EC2%22%2F%3E%3Cpath%20d%3D%22M104.00%20100.00%20L132.10%20126.98%20A37.4%2037.4%200%201%200%20132.10%2073.02%20Z%22%20fill%3D%22%23218A2C%22%2F%3E%3Cpath%20d%3D%22M100.00%20104.00%20L73.02%20132.10%20A37.4%2037.4%200%201%200%20126.98%20132.10%20Z%22%20fill%3D%22%23F6E8BD%22%2F%3E%3C%2Fsvg%3E")!important}
.foot-social{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}.foot-social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--hair);border-radius:10px;color:var(--muted);transition:border-color .2s var(--ease),color .2s var(--ease),transform .2s var(--ease)}.foot-social a:hover{border-color:var(--gold-l);color:var(--gold-l);transform:translateY(-2px)}.foot-social a[aria-disabled]{cursor:default;opacity:.75}.foot-social a[aria-disabled]:hover{border-color:var(--hair);color:var(--muted);transform:none}.foot-social svg{width:18px;height:18px}
.scrollcue{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:40;display:inline-flex;align-items:center;gap:7px;padding:8px 15px;border-radius:999px;border:1px solid var(--hair,rgba(90,167,240,.18));background:color-mix(in srgb,#0B1422 78%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--gold-l,#F0CE82);font-family:var(--fm,ui-monospace,Menlo,monospace);font-size:0.6875rem;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;box-shadow:0 12px 30px -14px rgba(0,0,0,.6);transition:opacity .4s var(--ease,ease),transform .4s var(--ease,ease),border-color .25s,background .25s}.scrollcue .sc-lb{line-height:1}@media(max-width:768px){.scrollcue{bottom:80px}}.scrollcue svg{width:15px;height:15px;animation:scBob 1.8s ease-in-out infinite}.scrollcue:hover{border-color:color-mix(in srgb,var(--gold-l,#F0CE82) 55%,var(--hair,rgba(90,167,240,.18)));background:color-mix(in srgb,#0B1422 64%,transparent);transform:translateX(-50%) translateY(-2px)}.scrollcue:focus-visible{outline:2px solid var(--gold-l,#F0CE82);outline-offset:3px}.scrollcue.hide{opacity:0;pointer-events:none;transform:translateX(-50%) translateY(10px)}@keyframes scBob{0%,100%{transform:translateY(0)}50%{transform:translateY(3px)}}@media(max-width:560px){.scrollcue{bottom:16px;padding:7px 13px;font-size:0.6875rem}}@media(prefers-reduced-motion:reduce){.scrollcue svg{animation:none}.scrollcue{transition:opacity .3s}}@media print{.scrollcue{display:none}}
@view-transition{navigation:auto}@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}}::view-transition-old(root){animation:vtfo .26s var(--ease,ease) both}::view-transition-new(root){animation:vtfi .30s var(--ease,ease) both}@keyframes vtfo{to{opacity:0;transform:translateY(-4px)}}@keyframes vtfi{from{opacity:0;transform:translateY(6px)}}
header.pghero,div.hero,header.hero{position:relative}.hero-cap{position:absolute;right:18px;bottom:16px;z-index:4;font-family:var(--fm);font-size:0.6875rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(245,247,250,.62);background:rgba(8,13,22,.52);border:1px solid rgba(255,255,255,.13);border-radius:999px;padding:6px 12px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none}@media(max-width:640px){.hero-cap{display:none}}header.jtop .hero-cap{bottom:auto;top:calc(100% + 14px)}.hero-halo{position:absolute;inset:0;pointer-events:none;z-index:1;opacity:0;transition:opacity .4s var(--ease,ease);background:radial-gradient(460px 320px at var(--hx,72%) var(--hy,28%),rgba(240,206,130,.15),transparent 62%)}header.pghero:hover .hero-halo,.hero:hover .hero-halo{opacity:1}@media(prefers-reduced-motion:reduce){.hero-halo{display:none}}
@media(max-width:360px){.nav-cta .nav-search{display:none!important}.nav-cta{gap:8px!important}.brand small{display:none!important}.wrap{padding-left:14px!important;padding-right:14px!important}img,svg,table,iframe,pre,input,textarea,select{max-width:100%!important}}
#toTop{position:fixed;right:22px;bottom:22px;width:50px;height:50px;border-radius:50%;border:1px solid var(--hair,rgba(120,180,250,.18));background:rgba(14,26,44,.85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#F5F7FA;cursor:pointer;display:grid;place-items:center;opacity:0;transform:translateY(16px) scale(.9);transition:opacity .35s,transform .35s,box-shadow .35s;z-index:48;padding:0;pointer-events:none}#toTop.show{opacity:1;transform:none;pointer-events:auto}#toTop:hover{box-shadow:0 12px 30px -8px rgba(46,134,222,.5)}#toTop:focus-visible{outline:2px solid var(--gold-l,#E8C36A);outline-offset:3px}#toTop .ttr{position:absolute;inset:0;width:50px;height:50px;transform:rotate(-90deg)}#toTop .ttr circle{fill:none;stroke-width:2}#toTop .ttt{stroke:rgba(255,255,255,.12)}#toTop .ttp{stroke:var(--gold-l,#E8C36A);stroke-dasharray:151;stroke-dashoffset:151;transition:stroke-dashoffset .1s linear}@media(max-width:760px){#toTop{width:46px;height:46px;right:16px;bottom:16px}}@media(prefers-reduced-motion:reduce){#toTop{transition:opacity .2s}}

/* ==== s_d0fc612525.css ==== */
/* sommaire lateral a pastilles (style aurail) */
#secrail{position:fixed;right:14px;top:50%;transform:translateY(-50%);z-index:46;display:flex;flex-direction:column;align-items:flex-end;gap:8px;pointer-events:none}
#secrail a{--d:0;display:flex;align-items:center;gap:0;padding:9px 13px;border-radius:999px;background:color-mix(in srgb,#0B1422 56%,transparent);-webkit-backdrop-filter:blur(12px) saturate(135%);backdrop-filter:blur(12px) saturate(135%);border:1px solid rgba(255,255,255,.10);text-decoration:none;color:rgba(245,247,250,.82);font-family:var(--fm,ui-monospace,monospace);font-size:.74rem;letter-spacing:.02em;white-space:nowrap;opacity:0;transform:translateX(26px);pointer-events:auto;transition:opacity .5s var(--ease,ease) calc(var(--d)*.07s),transform .5s var(--ease,ease) calc(var(--d)*.07s),border-color .25s,background .25s,box-shadow .25s,color .25s}
#secrail.show a{opacity:1;transform:none}
#secrail a:hover,#secrail a.on{color:#fff;border-color:color-mix(in srgb,var(--c) 60%,rgba(255,255,255,.12));background:color-mix(in srgb,var(--c) 16%,#0B1422);box-shadow:0 8px 26px -10px color-mix(in srgb,var(--c) 60%,transparent);transform:translateX(-4px)}
#secrail .ad{width:8px;height:8px;border-radius:50%;background:var(--c);flex:none;box-shadow:0 0 8px var(--c);transition:transform .25s var(--ease,ease)}
#secrail a:hover .ad,#secrail a.on .ad{transform:scale(1.4)}
#secrail .axl{font-weight:600;max-width:0;overflow:hidden;opacity:0;white-space:nowrap;transition:max-width .4s var(--ease,ease),opacity .3s,margin-left .4s var(--ease,ease)}
#secrail a:hover .axl,#secrail a:focus-visible .axl,#secrail a.on .axl{max-width:240px;opacity:1;margin-left:9px}
@media(max-width:1100px){#secrail{display:none}}
@media(prefers-reduced-motion:reduce){#secrail a{transition:opacity .3s,background .2s,border-color .2s,color .2s}}

/* libelles : plus larges, ellipse propre si depassement */
#secrail .axl{text-overflow:ellipsis}
#secrail a:hover .axl,#secrail a:focus-visible .axl,#secrail a.on .axl{max-width:340px}

/* ==== x_cd256286824c.css ==== */
@media(min-width:1400px){#navSearch{width:40px!important;padding:0!important;border-radius:999px!important}}
@media(max-width:1500px){.nav-cta .btn-p{padding:10px 16px;font-size:.84rem}.nav-links{gap:0}}

.nav-item-mini .nav-trigger{padding:8px 7px;gap:3px;font-size:.84rem}@media(max-width:1460px){.brand-tx{max-width:175px}.brand-tx small{font-size:0.6875rem}}

/* ultra méga-menus harmonisés */
.nav-item-mini{position:relative}@media(max-width:1240px) and (min-width:1001px){/* fusionné dans le mode burger ≤1240 */}



@media(max-width:480px){.brand-mk{width:46px!important;height:46px!important;padding:5px!important;border-radius:12px!important}.brand{gap:9px}.brand-tx{font-size:.92rem;max-width:150px}#navSearch{width:36px!important;height:36px!important}.nav-in{padding-left:14px;padding-right:14px}}
.brand,.brand-mk{flex:none}.brand-tx{max-width:210px}

@media(max-width:768px){#toTop{bottom:calc(64px + env(safe-area-inset-bottom))!important;right:14px}}@media(max-width:1240px){}

@media(max-width:560px){#oilticker{display:none!important}.brand small{display:none}}
/* ponts de sortie harmonisés */
.sec-next{display:flex;justify-content:flex-end;margin-top:34px;padding-top:18px;border-top:1px solid var(--hair)}.sec-next a{font-family:var(--fm);font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:#A9B6CC;display:inline-flex;align-items:center;gap:8px;transition:color .2s;text-decoration:none}.sec-next a:hover{color:var(--gold-l)}.sec-next a::after{content:"→";color:var(--gold-l);transition:transform .2s}.sec-next a:hover::after{transform:translateX(4px)}

section[id]{scroll-margin-top:96px}
#nezBar a.nz-on{color:var(--gold-l);background:rgba(217,168,79,.12)}#nezBar a.nz-on svg{stroke:var(--gold-l)}
@media(max-width:560px){.nav-cta .btn-p{display:none}}
#nezProg{position:fixed;top:0;left:0;height:3px;width:0;z-index:120;background:linear-gradient(90deg,var(--blue-l),var(--gold-l));pointer-events:none;transition:width .12s linear}



#nezBar{position:fixed;left:0;right:0;bottom:0;z-index:95;display:none;background:rgba(8,14,26,.80);-webkit-backdrop-filter:blur(22px) saturate(140%);backdrop-filter:blur(22px) saturate(140%);border-top:1px solid var(--hair);padding:6px 4px calc(6px + env(safe-area-inset-bottom));pointer-events:none}#nezBar a{pointer-events:auto}
#nezBar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;text-decoration:none;color:rgba(245,247,250,.65);font-family:var(--fm);font-size:0.6875rem;letter-spacing:.04em;padding:4px 2px;border-radius:8px}
#nezBar a svg{width:19px;height:19px}
#nezBar a:active,#nezBar a:hover{color:var(--gold-l)}
@media(max-width:768px){#nezBar{display:flex}}
@media print{#nezProg,#nezBar{display:none!important}}
@media(prefers-reduced-motion:reduce){#nezProg{transition:none}}

@media (prefers-reduced-transparency:reduce){.nx-mega{background:#0A0F1A!important}.nav-links{background:rgba(6,11,20,.98)!important}#nezBar{background:rgba(8,14,26,.97)!important}}
@media print{section,article,div{break-inside:auto!important;page-break-inside:auto!important}.reveal,.rv,.reveal-up,.reveal-blur,[data-d]{opacity:1!important;transform:none!important;filter:none!important;animation:none!important;transition:none!important}*{content-visibility:visible!important}header.hero{display:block!important}.diapo,#scrollcue,.lum-ctl,#homeFab,.share,#toTop,#lum-veil,.rootland,#preloader,#ckn,#cmdk{display:none!important}}

html{scrollbar-gutter:stable}

/* QA mobile : cibles tactiles & lisibilite des micro-etiquettes */
@media (max-width:700px){
.crumb a{display:inline-block;padding:7px 4px;margin:-7px -4px}
.foot-col a,.foot-poles a,.foot-legal a,.foot-social a{display:inline-block;padding:6px 3px;margin:-6px -3px}
.tri-more{padding:9px 12px 9px 0!important;margin-top:9px!important}
.pc-more{padding:9px 10px!important;margin:-4px -10px!important}
.tri-biz-g span{font-size:0.6875rem!important}
.biz-clab{font-size:0.6875rem!important}
.scrollcue{font-size:0.6875rem!important}
}

/* QA mobile : libelles de la barre d onglets un cran plus lisibles */
#nezBar a{font-size:0.6875rem}
/* QA mobile : zone tactile du bouton de langue des journaux */
.jlang{padding:10px 12px!important;margin:-10px -12px -10px 0;border-radius:10px}

/* Mode lecture claire des carnets */
#jlightBtn{margin-left:10px;background:none;border:1px solid var(--hair);border-radius:999px;color:inherit;width:34px;height:34px;cursor:pointer;font-size:.95rem;line-height:1;flex:none}
#jlightBtn:hover{border-color:var(--gold-l)}
html.et-jlight{--bg:#FAF7F1;--bg2:#FFFFFF;--ink:#1A2330;--mut:rgba(26,35,48,.64);--hair:rgba(26,35,48,.16);--gold:#8A6A1E;--gold-l:#7A5C14;--blue-l:#155FA8}
html.et-jlight body{background:var(--bg)!important;color:var(--ink)!important}
html.et-jlight body::before,html.et-jlight body::after{display:none!important}
html.et-jlight #jlightBtn{border-color:rgba(26,35,48,.3)}
html.et-jlight b:not(#_),html.et-jlight strong:not(#_),html.et-jlight h1:not(#_),html.et-jlight h2:not(#_),html.et-jlight h3:not(#_){color:#10161F!important}

html.et-jlight .jtop a:not(#_){color:#F5F7FA!important}
html.et-jlight .jtop #jlightBtn{color:#F5F7FA;border-color:rgba(245,247,250,.4)}
html.et-jlight .jkey:not(#_),html.et-jlight blockquote:not(#_){background:#fff!important;border-color:rgba(26,35,48,.2)!important;color:#1A2330!important}
html.et-jlight .jsig:not(#_),html.et-jlight .jdek:not(#_),html.et-jlight .jmeta:not(#_){color:rgba(26,35,48,.72)!important}
html.et-jlight .jfoot:not(#_),html.et-jlight footer:not(#_){background:#F1ECE2!important;color:#1A2330!important}
html.et-jlight a:not(#_):not(.jback):not(.jlang){color:#155FA8}
html.et-jlight{background:#FAF7F1!important}
html.et-jlight .jtop a b:not(#_){color:#E8C36A!important}
html.et-jlight #secrail a:not(#_){background:rgba(11,20,34,.85)!important;color:rgba(245,247,250,.85)!important;border-color:rgba(255,255,255,.14)!important}

/* Mode clair des pages editoriales : contenu principal seulement, chrome et heros restent sombres */
#plightBtn{position:fixed;left:14px;bottom:14px;z-index:70;width:38px;height:38px;border-radius:999px;border:1px solid rgba(245,247,250,.28);background:rgba(11,20,34,.72);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#F5F7FA;cursor:pointer;font-size:1rem;line-height:1}
#plightBtn:hover{border-color:#E8C36A}
@media(max-width:720px){#plightBtn{bottom:74px}}
html.et-plight main:not(#_){background:#FAF7F1!important;color:#1A2330!important}
html.et-plight main section:not(#_),html.et-plight main article:not(#_),html.et-plight main div:not(#_){background-color:transparent!important;box-shadow:none!important;color:#1A2330}
html.et-plight main .subland{display:none!important}
html.et-plight main h1:not(#_),html.et-plight main h2:not(#_),html.et-plight main h3:not(#_),html.et-plight main h4:not(#_),html.et-plight main b:not(#_),html.et-plight main strong:not(#_),html.et-plight main dt:not(#_){color:#10161F!important;text-shadow:none!important;-webkit-text-fill-color:#10161F!important;background:none!important}
html.et-plight main p:not(#_),html.et-plight main li:not(#_),html.et-plight main span:not(#_),html.et-plight main td:not(#_),html.et-plight main th:not(#_),html.et-plight main i:not(#_),html.et-plight main em:not(#_),html.et-plight main small:not(#_),html.et-plight main dd:not(#_),html.et-plight main figcaption:not(#_),html.et-plight main blockquote:not(#_),html.et-plight main label:not(#_){color:#2A3648!important;text-shadow:none!important}
html.et-plight main h1 em:not(#_),html.et-plight main h2 em:not(#_),html.et-plight main .kick:not(#_),html.et-plight main [class*="kick"]:not(#_){color:#7A5C14!important}
html.et-plight main a:not(#_){color:#155FA8!important}
html.et-plight main .card:not(#_),html.et-plight main [class*="card"]:not(#_),html.et-plight main [class*="panel"]:not(#_){background:#FFFFFF!important;border:1px solid rgba(26,35,48,.16)!important;box-shadow:0 2px 10px rgba(26,35,48,.06)!important}
html.et-plight main td:not(#_),html.et-plight main th:not(#_){border-color:rgba(26,35,48,.2)!important;background:#fff!important}
html.et-plight .subland{display:none!important}
html.et-plight:not(#_):not(#__){background:
 radial-gradient(58% 46% at 10% 4%, rgba(226,178,64,.52), transparent 70%),
 radial-gradient(54% 44% at 92% 10%, rgba(59,140,231,.46), transparent 70%),
 radial-gradient(48% 40% at 14% 88%, rgba(28,190,130,.36), transparent 72%),
 radial-gradient(56% 46% at 86% 94%, rgba(206,108,170,.30), transparent 72%),
 linear-gradient(180deg,#FAF8F1 0%,#EFEDE4 100%) !important;
 background-attachment:fixed !important}
html.et-plight body{background:#FAF7F1!important}
html.et-plight main .cp-ct a:not(#_) b{color:#10161F!important}
html.et-plight main section:not(#_),html.et-plight main article:not(#_),html.et-plight main div:not(#_):not([role="img"]){background-image:none!important}
html.et-plight main article:not(#_){background-color:#fff!important;border:1px solid rgba(26,35,48,.16)!important;box-shadow:0 2px 10px rgba(26,35,48,.06)!important}
html.et-plight #secrail a:not(#_){background:rgba(11,20,34,.85)!important;color:rgba(245,247,250,.85)!important;border-color:rgba(255,255,255,.14)!important}
html.et-plight main button:not(#_):not(#plightBtn){color:#1A2330!important}
html.et-plight main [role="tab"]:not(#_),html.et-plight main [role="button"]:not(#_){color:#1A2330!important}
/* Exceptions heros photo : le texte y reste clair */
html.et-plight main .pghero h1:not(#_),html.et-plight main .pghero h2:not(#_),html.et-plight main [class*="hero"] h1:not(#_),html.et-plight main .diapo h1:not(#_),html.et-plight main .diapo h2:not(#_),html.et-plight main .pghero b:not(#_),html.et-plight main [class*="hero"] h1 b:not(#_){color:#FFFFFF!important;-webkit-text-fill-color:#FFFFFF!important}
html.et-plight main .pghero h1 em:not(#_),html.et-plight main [class*="hero"] h1 em:not(#_){color:#F0CE82!important;-webkit-text-fill-color:#F0CE82!important}
html.et-plight main .pghero p:not(#_),html.et-plight main .pghero li:not(#_),html.et-plight main .pghero span:not(#_),html.et-plight main [class*="hero"] p:not(#_),html.et-plight main .diapo p:not(#_),html.et-plight main .diapo span:not(#_){color:rgba(245,247,250,.92)!important}
html.et-plight main .pghero .pgk:not(#_),html.et-plight main .pghero .kick:not(#_){color:#F9E5B2!important}
html.et-plight main .pghero a:not(#_){color:#F5F7FA!important}
html.et-plight main .pghero .crumb a:not(#_),html.et-plight main .pghero .crumb span:not(#_),html.et-plight main .pghero .bcrumb a:not(#_){color:rgba(245,247,250,.78)!important}

/* Contraste AA du mode clair : pied de page en sombre plein, accents assombris */
html.et-plight footer:not(#_),html.et-jlight footer:not(#_){background:#0B1422!important}
html.et-plight footer *:not(#_):not(a),html.et-jlight footer *:not(#_):not(a){color:rgba(245,247,250,.85)!important}
html.et-plight footer a:not(#_),html.et-jlight footer a:not(#_){color:#EAD9A8!important}
html.et-plight footer h3:not(#_),html.et-jlight footer h3:not(#_),html.et-plight footer b:not(#_),html.et-jlight footer b:not(#_){color:#FFFFFF!important}
html.et-jlight .jfoot:not(#_){background:#0B1422!important;color:rgba(245,247,250,.85)!important}
html.et-jlight .jfoot a:not(#_){color:#EAD9A8!important}
html.et-plight main .kick:not(#_),html.et-plight main [class*="kick"]:not(#_),html.et-plight main h1 em:not(#_),html.et-plight main h2 em:not(#_){color:#6B500F!important}
html.et-jlight h1 em:not(#_),html.et-jlight h2 em:not(#_),html.et-jlight .jkick:not(#_),html.et-jlight .sc-lb:not(#_),html.et-jlight .cb-k:not(#_){color:#6B500F!important}
html.et-plight main .esg-t td:not(#_),html.et-plight main .esg-t th:not(#_),html.et-plight main .esg-t b:not(#_),html.et-plight main .epw-no:not(#_),html.et-plight main .epw-k:not(#_){color:#1A2330!important;background:#fff!important}

/* Pages dont les sections vivent hors <main> (ex. cibles-2030) : miroir des regles d'encre */
html.et-plight body>section:not(#_){background:#FAF7F1!important;background-image:none!important;box-shadow:none!important}
html.et-plight body>section div:not(#_){background-color:transparent!important;background-image:none!important;box-shadow:none!important}
html.et-plight body>section h1:not(#_),html.et-plight body>section h2:not(#_),html.et-plight body>section h3:not(#_),html.et-plight body>section h4:not(#_),html.et-plight body>section b:not(#_),html.et-plight body>section strong:not(#_),html.et-plight body>section dt:not(#_){color:#10161F!important;text-shadow:none!important;-webkit-text-fill-color:#10161F!important;background:none!important}
html.et-plight body>section p:not(#_),html.et-plight body>section li:not(#_),html.et-plight body>section span:not(#_),html.et-plight body>section td:not(#_),html.et-plight body>section th:not(#_),html.et-plight body>section i:not(#_),html.et-plight body>section em:not(#_),html.et-plight body>section small:not(#_),html.et-plight body>section dd:not(#_),html.et-plight body>section caption:not(#_),html.et-plight body>section label:not(#_),html.et-plight body>section button:not(#_){color:#2A3648!important;text-shadow:none!important}
html.et-plight body>section a:not(#_){color:#155FA8!important}
html.et-plight body>section td:not(#_),html.et-plight body>section th:not(#_){background:#fff!important;border-color:rgba(26,35,48,.2)!important}
html.et-plight body>section .card:not(#_),html.et-plight body>section [class*="card"]:not(#_){background:#FFFFFF!important;border:1px solid rgba(26,35,48,.16)!important}
html.et-plight body>section [class*="kick"]:not(#_),html.et-plight body>section h2 em:not(#_),html.et-plight body>section [class*="-no"]:not(#_),html.et-plight body>section [class*="-k"]:not(#_){color:#6B500F!important}
html.et-plight body>header.pghero h1:not(#_),html.et-plight body>header.pghero h2:not(#_){color:#fff!important}
html.et-plight body>header.pghero p:not(#_),html.et-plight body>header.pghero span:not(#_){color:rgba(245,247,250,.92)!important}

/* Finitions AA du mode clair */
html.et-plight main .ivt-cta:not(#_),html.et-plight body>section .ivt-cta:not(#_){background:#0B1422!important;color:#F5F7FA!important;border-color:#0B1422!important}
html.et-plight [style*="E8C36A"]:not(#_),html.et-plight [style*="F0CE82"]:not(#_),
html.et-plight [style*="var(--gold-l"]:not(#_){color:#77530C!important}
html.et-plight header.hero [style*="var(--gold-l"]:not(#_):not(#__),
html.et-plight header.pghero [style*="var(--gold-l"]:not(#_):not(#__),
html.et-plight .vcx [style*="var(--gold-l"]:not(#_):not(#__){color:#F0CE82!important}
html.et-plight [style*="5AA7F0"]:not(#_),html.et-plight [style*="7FB8F5"]:not(#_){color:#1B4E8C!important}
html.et-plight [style*="34D399"]:not(#_){color:#0E7A55!important}
html.et-jlight .hero-cap:not(#_){color:rgba(245,247,250,.9)!important;background:rgba(8,13,22,.78)!important}
html.et-jlight .sc-lb:not(#_){color:#F0CE82!important}
html.et-jlight .more-k:not(#_){color:#6B500F!important}
html.et-jlight .cb-k:not(#_){color:#F0CE82!important}
html.et-jlight .cb:not(#_),html.et-jlight [class*="cta-band"]:not(#_){background:#0B1422!important}
html.et-jlight .cb-btn:not(#_){background:#E8C36A!important;color:#0B1422!important}
html.et-jlight .jfoot *:not(#_):not(a){color:rgba(245,247,250,.85)!important}
html.et-plight .share-k:not(#_),html.et-plight main [class*="share-k"]:not(#_){color:#55647C!important}
html.et-plight [class^="pgr"] .pgr-t:not(#_),html.et-plight .pgr-t:not(#_){color:#10161F!important}
html.et-plight .pgr-dir:not(#_){color:#6B500F!important}
html.et-plight .back:not(#_){color:rgba(245,247,250,.88)!important}
html.et-plight main summary:not(#_),html.et-plight body>section summary:not(#_){color:#10161F!important}

/* Ultimes finitions AA */
html.et-plight footer a:not(#_):not(#__){color:#EAD9A8!important}
html.et-jlight footer a:not(#_):not(#__),html.et-jlight .jfoot a:not(#_):not(#__){color:#EAD9A8!important}
html.et-plight main section.hero h1:not(#_):not(#__),html.et-plight main section.hero h2:not(#_):not(#__){color:#10161F!important;-webkit-text-fill-color:#10161F!important}
html.et-plight main section.hero p:not(#_):not(#__),html.et-plight main section.hero span:not(#_):not(#__){color:#2A3648!important}
html.et-jlight section:where([data-eh~=eh3]):not(.ehz):not(#_){background:#0B1422!important}
html.et-jlight section:where([data-eh~=eh3]):not(.ehz) h2:not(#_):not(#__),html.et-jlight section:where([data-eh~=eh3]):not(.ehz) h3:not(#_):not(#__){color:#10161F!important;text-shadow:none!important}
html.et-jlight section:where([data-eh~=eh3]):not(.ehz) p:not(#_):not(#__):not(.cb-k){color:#2A3648!important}
html.et-plight #modele div:not([class]):not(#_){color:#2A3648!important}
html.et-plight .cta div:not([class]):not(#_){color:#2A3648!important}
html.et-plight .btn:not(#_):not(#plightBtn){background:#0B1422!important;color:#F5F7FA!important;border-color:#0B1422!important}
html.et-plight #contact-rapide a:not(#_):not(#__){color:#0B1422!important}
html.et-plight main section.hero h1 em:not(#_):not(#__){background:none!important;-webkit-text-fill-color:#6B500F!important;color:#6B500F!important}
html.et-plight .corp-nav a:not(#_):not(#__){color:#EAD9A8!important}
html.et-plight #kit-media div:not(#_):not(#__){color:#2A3648!important}

/* QA mode clair : finitions passe B */
html.et-plight body>header.hero:not(#_){background:#0B1422!important;background-image:none!important}
html.et-plight a[style*="F59E0B"]:not(#_):not(#__),html.et-plight a[style*="f59e0b"]:not(#_):not(#__),html.et-plight body>section a[href$="#partenariats"]:not(#_):not(#__){color:#0B1422!important}
html.et-plight main code:not(#_):not(#__),html.et-plight body>section code:not(#_):not(#__){color:#6B500F!important;background:rgba(138,98,16,.08)!important}
html.et-plight .pof-ct:not(#_):not(#__){color:#10161F!important}
html.et-plight .ets-lv:not(#_):not(#__){color:#0B1422!important}
html.et-plight .ets-lv:not(#_):not(#__){color:#0B1422!important;background:rgba(255,255,255,.88)!important;border-radius:6px;padding:0 6px}
html.et-plight body>section div:not(#_):not(#__){color:#2A3648!important}
html.et-plight #secrail a:not(#_):not(#__),html.et-jlight #secrail a:not(#_):not(#__){background:rgba(11,20,34,.96)!important}
html.et-plight main div:not(#_):not(#__){color:#2A3648!important}
html.et-plight main .pghero div:not(#_):not(#__):not(#___),html.et-plight main [class*="hero"] div:not(#_):not(#__):not(#___),html.et-plight main .diapo div:not(#_):not(#__):not(#___){color:rgba(245,247,250,.92)!important}
html.et-plight main section.hero div:not(#_):not(#__):not(#___):not(#____){color:#2A3648!important}
html.et-plight main button:not(#plightBtn):not(#_):not(#__):not(#___){color:#1A2330!important}
html.et-plight [class^="fcta"]:not(#_):not(#__):not(#___),html.et-plight [class^="fcta"] *:not(#_):not(#__):not(#___){color:#0B1422!important}
html.et-plight main a[href$="investisseurs#cadre-eco"]:not(#_){text-decoration:underline!important}
html.et-plight a[href$="investisseurs#cadre-eco"]:not(#_){text-decoration:underline!important}

/* Hubs AR/EN en mode clair */
html[dir="rtl"] #plightBtn{left:auto;right:14px}
html.et-plight main .wrap>a[href]:not([class]):not(#_):not(#__){text-decoration:underline!important}
html.et-plight .lang a:not(#_):not(#__){color:#0B1422!important}
html.et-plight header .lang a:not(#_):not(#__):not(#___){color:#F5F7FA!important}
html.et-plight .wrap>a:not([class]):not(#_):not(#__){text-decoration:underline!important;color:#155FA8!important}
html.et-plight footer .wrap>a:not(#_):not(#__):not(#___){color:#EAD9A8!important;text-decoration:underline!important}
html.et-plight header .lang a[aria-current="page"]:not(#_):not(#__):not(#___):not(#____),html.et-plight header .lang a.on:not(#_):not(#__):not(#___):not(#____){color:#0B1422!important;background:#E8C36A!important}

html.et-plight main .pghero a.pgh-btn:not(#_){color:#0B1422!important}
html.et-plight main a.ppt-cta:not(#_){color:#0B1422!important}
html.et-plight main a.mad-cta:not(#_){color:#0B1422!important}
html.et-plight main .mkt-cta a:not(#_):not(#__){color:#0B1422!important}
html.et-plight main a.btn:not(.btn-p):not(.btn-g):not(.btn-ghost):not(.btn-shop):not(#_){color:#0B1422!important}
html.et-plight main a.cb-p:not(#_){color:#0B1422!important}
html.et-plight main a.hxi-cta:not(#_){color:#0B1422!important}
html.et-plight main a.iv-pivot:not(#_){color:#0a1322!important}
html.et-plight main .mkt-nav a:not(#_){color:rgba(245,247,250,.74)!important}

/* Verre liquide — repli opaque complet sous prefers-reduced-transparency (le reset universel perdait contre les blurs !important à spécificité id/classe) */
@media (prefers-reduced-transparency:reduce){
.nav:not(#_),.nav.scrolled:not(#_){-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:rgba(8,13,24,.97)!important}
#ckn:not(#_){-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#0B1422!important}
}

/* Verre liquide — meme repli pour navigateurs sans backdrop-filter */
@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){
.nav:not(#_),.nav.scrolled:not(#_){background:rgba(8,13,24,.97)!important}
#ckn:not(#_){background:#0B1422!important}
.nx-mega:not(#_){background:linear-gradient(180deg,#0c1728,#0a1422)!important}
.pole-subnav:not(#_){background:#0B1422!important}
}

/* mobile : cible tactile 44px pour la loupe ; indices clavier du cmdk masques au tactile */
@media(max-width:768px){#nav .nav-search{width:44px!important;height:44px!important}}
@media(hover:none) and (pointer:coarse){.cmdk-foot{display:none!important}}

/* RTL : miroir complet des flottants — plightBtn a droite, toTop a gauche */
html[dir="rtl"] #toTop{right:auto!important;left:16px!important}

/* ===== QA MOBILE — zones de tap etendues (2026-07) ===== */
@media(pointer:coarse){
.flip-cta:not(#_x),.sc-link:not(#_x),.pj-go:not(#_x),.hnews-all:not(#_x){
 padding-top:9px!important;padding-bottom:9px!important;margin-top:-9px!important;margin-bottom:-9px!important;position:relative;z-index:1}
a.ttl:not(#_x),nav.bcrumb a{padding:8px 4px;margin:-8px -4px}
a[style*="underline"]{padding-top:8px;padding-bottom:8px}
.pj-syn a{padding-top:8px;padding-bottom:8px}
.foot-sep+a,a:where([data-eh~=eh2]):not(.ehz){padding:8px 3px}
.go:not(#_x),.pmore-home:not(#_x),.foot-col a:not(.foot-pole):not(#_x),a[download]:not(#_x){padding-top:7px!important;padding-bottom:7px!important;margin-top:-7px!important;margin-bottom:-7px!important;position:relative;z-index:1}
html[lang="ar"] a{padding-top:6px;padding-bottom:6px}
}
@media(max-width:768px){
#navLinks.open:not(#_x),.nav-links.open:not(#_x){background:linear-gradient(180deg,rgba(9,15,27,.985),rgba(6,10,18,.995))!important}
}

/* light-theme glass (translucent panels) */
html.et-plight main:not(#_),html.et-plight body>section:not(#_){background:linear-gradient(162deg,#F5F1EA 0%,#EDEDF1 52%,#F3EEE6 100%)!important}
html.et-plight main .card:not(#_),html.et-plight main [class*="card"]:not(#_),html.et-plight main [class*="panel"]:not(#_),html.et-plight main article:not(#_),html.et-plight body>section .card:not(#_),html.et-plight body>section [class*="card"]:not(#_){background:rgba(255,255,255,.46)!important;background-color:rgba(255,255,255,.46)!important;-webkit-backdrop-filter:blur(20px) saturate(1.6)!important;backdrop-filter:blur(20px) saturate(1.6)!important;border:1px solid rgba(26,35,48,.1)!important;box-shadow:0 8px 30px rgba(26,35,48,.12),inset 0 1px 0 rgba(255,255,255,.65)!important}
/* === PREMIUM CARD + ICON REFRESH === */
:where(.card,[class*="-card"],.kpi,.hpcard,.panel,.sb-card,.esg-card,.biz-card){border-radius:18px!important;transition:transform .3s cubic-bezier(.22,.61,.36,1),box-shadow .32s ease,border-color .28s ease!important}
:where(.card,[class*="-card"],.kpi,.hpcard,.esg-card,.sb-card,.biz-card):hover{transform:translateY(-5px)!important}
:where(.card,[class*="-card"],.kpi,.esg-card,.sb-card){position:relative}
:where(.card,[class*="-card"],.kpi,.esg-card,.sb-card)::before{content:'';position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;z-index:2;background:linear-gradient(145deg,var(--ac,rgba(232,195,106,.5)),rgba(90,167,240,.18) 55%,rgba(255,255,255,.05));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;opacity:.4;transition:opacity .3s ease}
:where(.card,[class*="-card"],.kpi,.esg-card,.sb-card):hover::before{opacity:.85}
html:not(.et-plight) :where(.card,[class*="-card"],.kpi,.hpcard,.esg-card,.sb-card){box-shadow:0 1px 1px rgba(0,0,0,.24),0 12px 32px -18px rgba(0,0,0,.6)!important}
html:not(.et-plight) :where(.card,[class*="-card"],.kpi,.hpcard,.esg-card,.sb-card):hover{box-shadow:0 2px 6px rgba(0,0,0,.3),0 26px 56px -22px rgba(0,0,0,.74)!important}
:where(svg[stroke]:not([stroke="none"])){stroke-linecap:round;stroke-linejoin:round}
@media(prefers-reduced-motion:reduce){:where(.card,[class*="-card"],.kpi,.hpcard,.esg-card,.sb-card,.biz-card):hover{transform:none!important}}
/* --- hero : motif front sismique (illustration bespoke) --- */
.hero-halo:not(#_){background-image:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%20560%20420%22%20width=%22560%22%20height=%22420%22%3E%3Cdefs%3E%3CradialGradient%20id=%22hm%22%20cx=%2286%25%22%20cy=%2285%25%22%20r=%22104%25%22%3E%3Cstop%20offset=%220%22%20stop-color=%22%23fff%22%20stop-opacity=%221%22/%3E%3Cstop%20offset=%22.5%22%20stop-color=%22%23fff%22%20stop-opacity=%22.76%22/%3E%3Cstop%20offset=%221%22%20stop-color=%22%23fff%22%20stop-opacity=%220%22/%3E%3C/radialGradient%3E%3Cmask%20id=%22hk%22%3E%3Crect%20width=%22560%22%20height=%22420%22%20fill=%22url(%23hm)%22/%3E%3C/mask%3E%3C/defs%3E%3Cg%20mask=%22url(%23hk)%22%20fill=%22none%22%20stroke-linecap=%22round%22%3E%3Cg%20stroke=%22%23E8C36A%22%3E%3Ccircle%20cx=%22486%22%20cy=%22358%22%20r=%2246%22%20stroke-opacity=%220.44%22%20stroke-width=%221.3%22/%3E%3Ccircle%20cx=%22486%22%20cy=%22358%22%20r=%2288%22%20stroke-opacity=%220.4%22%20stroke-width=%221.25%22/%3E%3Ccircle%20cx=%22486%22%20cy=%22358%22%20r=%22132%22%20stroke-opacity=%220.35%22%20stroke-width=%221.2%22/%3E%3Ccircle%20cx=%22486%22%20cy=%22358%22%20r=%22178%22%20stroke-opacity=%220.3%22%20stroke-width=%221.1%22/%3E%3Ccircle%20cx=%22486%22%20cy=%22358%22%20r=%22226%22%20stroke-opacity=%220.25%22%20stroke-width=%221.05%22/%3E%3Ccircle%20cx=%22486%22%20cy=%22358%22%20r=%22276%22%20stroke-opacity=%220.2%22%20stroke-width=%221.0%22%20stroke-dasharray=%224%208%22/%3E%3Ccircle%20cx=%22486%22%20cy=%22358%22%20r=%22328%22%20stroke-opacity=%220.16%22%20stroke-width=%221.0%22%20stroke-dasharray=%223%209%22/%3E%3Ccircle%20cx=%22486%22%20cy=%22358%22%20r=%22382%22%20stroke-opacity=%220.12%22%20stroke-width=%221.0%22%20stroke-dasharray=%223%2011%22/%3E%3Ccircle%20cx=%22486%22%20cy=%22358%22%20r=%22438%22%20stroke-opacity=%220.09%22%20stroke-width=%221.0%22%20stroke-dasharray=%222%2012%22/%3E%3C/g%3E%3Cg%20stroke=%22%235AA7F0%22%20stroke-width=%221.05%22%3E%3Cpath%20d=%22M262%20122C330%20106%20420%20112%20560%2082%22%20stroke-opacity=%220.3%22/%3E%3Cpath%20d=%22M244%20184C316%20166%20414%20176%20560%20140%22%20stroke-opacity=%220.24%22/%3E%3Cpath%20d=%22M232%20248C304%20232%20402%20242%20560%20204%22%20stroke-opacity=%220.18%22/%3E%3C/g%3E%3Cg%20stroke=%22%23E8C36A%22%20stroke-width=%221%22%3E%3Cpath%20d=%22M300%20116%20v8%22%20stroke-opacity=%220.28%22/%3E%3Cpath%20d=%22M356%20113%20v8%22%20stroke-opacity=%220.28%22/%3E%3Cpath%20d=%22M412%20113%20v8%22%20stroke-opacity=%220.28%22/%3E%3Cpath%20d=%22M468%20107%20v8%22%20stroke-opacity=%220.28%22/%3E%3Cpath%20d=%22M524%2097%20v8%22%20stroke-opacity=%220.28%22/%3E%3C/g%3E%3Cg%20fill=%22%23E8C36A%22%20stroke=%22none%22%3E%3Ccircle%20cx=%22300%22%20cy=%22111%22%20r=%222.2%22%20fill-opacity=%220.5%22/%3E%3Ccircle%20cx=%22356%22%20cy=%22108%22%20r=%222.2%22%20fill-opacity=%220.5%22/%3E%3Ccircle%20cx=%22412%22%20cy=%22108%22%20r=%222.2%22%20fill-opacity=%220.5%22/%3E%3Ccircle%20cx=%22468%22%20cy=%22102%22%20r=%222.2%22%20fill-opacity=%220.5%22/%3E%3Ccircle%20cx=%22524%22%20cy=%2292%22%20r=%222.2%22%20fill-opacity=%220.5%22/%3E%3C/g%3E%3Ccircle%20cx=%22486%22%20cy=%22358%22%20r=%223.8%22%20fill=%22%23F0CE82%22%20fill-opacity=%220.62%22%20stroke=%22none%22/%3E%3Ccircle%20cx=%22486%22%20cy=%22358%22%20r=%2210%22%20stroke=%22%23F0CE82%22%20stroke-opacity=%220.34%22%20stroke-width=%221%22/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right -34px bottom 22px;background-size:auto 116%;opacity:.82;mix-blend-mode:screen}
.hero-halo::before{content:"";position:absolute;inset:0;opacity:0;transition:opacity .4s var(--ease,ease);background:radial-gradient(460px 320px at var(--hx,72%) var(--hy,28%),rgba(240,206,130,.15),transparent 62%)}
header.pghero:hover .hero-halo::before,.hero:hover .hero-halo::before,header.pghero:focus-within .hero-halo::before,.hero:focus-within .hero-halo::before{opacity:1}
@media(max-width:820px){.hero-halo:not(#_){background-size:auto 76%;background-position:right -112px bottom -6px;opacity:.5}}
@media(prefers-reduced-motion:reduce){.hero-halo::before{display:none}}

/* --- polish 202607 : barre carnets, cue mobile, lisibilite nav mobile --- */
header.jtop .hero-cap:not(#_),header.jtop .hero-halo:not(#_){display:none!important}
@media(max-width:768px){.scrollcue:not(#_){bottom:calc(70px + env(safe-area-inset-bottom))!important}}
#nezBar:not(#_){background:rgba(8,14,26,.94);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);border-top:1px solid rgba(255,255,255,.12)}

/* iOS safe-area : la jauge de lecture reste visible sous l'encoche. */
@supports(top:env(safe-area-inset-top)){#nezProg:not(#_),#prem-prog:not(#_){top:env(safe-area-inset-top)}}

/* iOS safe-area : les commandes flottantes remontent au-dessus de l'indicateur d'accueil et s'ecartent des bords arrondis. No-op sur les appareils sans zone sure. */
@supports(bottom:env(safe-area-inset-bottom)){.lum-ctl:not(#_){margin-bottom:env(safe-area-inset-bottom);margin-right:env(safe-area-inset-right)}#toTop:not(#_){margin-bottom:env(safe-area-inset-bottom);margin-right:env(safe-area-inset-right)}#plightBtn:not(#_){margin-bottom:env(safe-area-inset-bottom);margin-left:env(safe-area-inset-left)}.scrollcue:not(#_){margin-bottom:env(safe-area-inset-bottom)}}
html.et-plight a.cb-p:not(#_):not(#__){color:#0B1422!important;-webkit-text-fill-color:#0B1422!important}

/* ===== Verre clair ultra moderne (theme clair) =====
   Ambiance lumineuse fixe derriere un chrome transparent ; toutes les
   surfaces cartes/panneaux passent en verre givre (translucide + flou).
   Reprend les selecteurs maitres du theme clair, plus tard dans la cascade. */
html.et-plight body{background:
 radial-gradient(58% 46% at 10% 4%, rgba(226,178,64,.52), transparent 70%),
 radial-gradient(54% 44% at 92% 10%, rgba(59,140,231,.46), transparent 70%),
 radial-gradient(48% 40% at 14% 88%, rgba(28,190,130,.36), transparent 72%),
 radial-gradient(56% 46% at 86% 94%, rgba(206,108,170,.30), transparent 72%),
 linear-gradient(180deg,#FAF8F1 0%,#EFEDE4 100%) !important;
 background-attachment:fixed !important}
/* couches photo sombres : eteintes en clair, l'aurore vit derriere le verre */
html.et-plight .rootland:not(#_){display:none!important}
html.et-plight .diapo:not(#_),html.et-plight #diapo-cap:not(#_){display:none!important}
html.et-plight header.hero:not(#_):not(#__){background:radial-gradient(120% 90% at 72% 8%, #17253D 0%, #0B1422 58%, #070D18 100%)!important}
html.et-plight #aurora:not(#_){z-index:-1!important;opacity:.5}
/* voile leger : le fond fixe transparait et glisse au defilement */
html.et-plight main:not(#_),html.et-plight body>section:not(#_){background:
 linear-gradient(180deg,rgba(251,249,243,.40) 0%,rgba(243,241,234,.48) 100%) !important}
html.et-plight main .card:not(#_),html.et-plight main [class*="card"]:not(#_),
html.et-plight main [class*="panel"]:not(#_),html.et-plight main article:not(#_),
html.et-plight body>section .card:not(#_),html.et-plight body>section [class*="card"]:not(#_){
 background:linear-gradient(160deg,rgba(255,255,255,.58),rgba(255,255,255,.32))!important;
 -webkit-backdrop-filter:blur(26px) saturate(185%);backdrop-filter:blur(26px) saturate(185%);
 border:1px solid rgba(255,255,255,.85)!important;
 box-shadow:0 24px 48px -28px rgba(26,35,48,.32), inset 0 1px 0 rgba(255,255,255,.95)!important}

/* verre v2 : complements certifies */
html.et-plight main .note:not(#_):not(#__),html.et-plight body>section .note:not(#_):not(#__){
 color:#3A4657!important;background:rgba(255,255,255,.52)!important;
 -webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);
 border-color:rgba(26,35,48,.22)!important}
html.et-plight main .note b:not(#_),html.et-plight body>section .note b:not(#_){color:#0B1422!important}
html.et-plight main .note a:not(#_),html.et-plight body>section .note a:not(#_){color:#0E4172!important}
html.et-jlight .jtop:not(#_),html.et-plight .jtop:not(#_){background:linear-gradient(180deg,rgba(8,13,22,.84),rgba(8,13,22,.70))!important}

/* jlight: le scrollcue et le bandeau cookies gardent leur fond sombre — leur or doit rester celui du theme sombre (contraste 5.6:1 et 10.9:1), pas l'or-sur-clair #4C380B que le bloc G4 en ligne des pages journal leur applique par erreur (il vise la titraille sur fond clair) et qui tombe a 1.6:1 (axe, 50 pages journal). Specificite: body ajoute pour passer devant ce bloc en ligne; .sc-lb vise directement car la regle G4 le cible directement et bat l'heritage via .scrollcue. */
html.et-jlight body .scrollcue:not(#_),html.et-jlight body .sc-lb:not(#_){color:#E8C36A!important}
html.et-jlight body .cb-k:not(#_){color:#6B500F!important}html.et-jlight a.skip-link:not(#_):not(#__){color:#fff!important}html.et-plight #cta-band h2 em:not(#_):not(#__),html.et-jlight #cta-band h2 em:not(#_):not(#__){background-image:linear-gradient(110deg,#6B500F 30%,#10406F)!important}

/* == Modernisation mobile (31/07/2026) — benchmark majors (TotalEnergies/Shell/bp) ==
   Mobile uniquement (<=760px). M1 echelle typo du heros (h1 34-40px, leads >=16px au
   lieu de 12-14px mesures) ; M2 cibles tactiles >=44px (sous-navs a pastilles, fil
   d'Ariane) ; M3 carrousels scroll-snap pour les familles de cartes — l'empilement
   1 colonne donnait des pages de 13 000 a 25 400px de haut. L'acces clavier des
   carrousels (tabindex/role/aria-label) est pose par s_2ffe40dff9.js — les deux
   fichiers vont ensemble. Ne touche ni aux themes ni au desktop. */
@media(max-width:760px){
header.pghero h1,.hero h1,.hero .hx-h1:not(#_){font-size:var(--ts-4,clamp(1.55rem,3.4vw,2.35rem))!important;line-height:1.07!important;letter-spacing:-.01em!important}
header.pghero p,.pgh-lead,.hero .lead{font-size:max(16px,1em)!important;line-height:1.55!important}
.pole-subnav a,nav.toc a,nav.corp-nav a,#inv-toc a{min-height:44px;display:inline-flex;align-items:center}
.crumb a,.bcrumb a{padding-block:10px}
.hubdrawer a{min-height:44px;display:flex;align-items:center}
.hchain a,.flip-cta,.hnews-all,.iv-cta{min-height:44px;display:inline-flex;align-items:center}
main .plc-grid,main .biz-grid,main .sb-grid,main .pof-grid,main .ppt-grid,main .ppj-grid,main .hpgrid,main .hxi-grid,main .hnews-grid,main .ce-grid,.ttg-g{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:min(82vw,340px);overflow-x:auto;scroll-snap-type:x proximity;column-gap:12px;padding-bottom:12px;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scroll-padding-inline:4px}
main .plc-grid>*,main .biz-grid>*,main .sb-grid>*,main .pof-grid>*,main .ppt-grid>*,main .ppj-grid>*,main .hpgrid>*,main .hxi-grid>*,main .hnews-grid>*,main .ce-grid>*,.ttg-g>*{scroll-snap-align:start;min-width:0}
}

/* == Correctifs Lighthouse (01/08/2026) ==
   1. Theme jlight : la barre basse #nezBar reste sombre (fond .94) mais l'encre de ses
      onglets passait au bleu nuit #0e4172 (1.63:1) — on epingle l'encre du theme sombre.
      Meme classe de bogue que les recolorations jlight sur fond fixe (voir .scrollcue).
   2. CLS journal (0.23 au bureau) : header.jtop grandissait de 58 a 63px quand le JS
      insere le bouton de theme apres la mise en page — on reserve la hauteur finale. */
html.et-jlight body #nezBar a:not(#_){color:rgba(245,247,250,.65)!important}
html.et-jlight body #nezBar a[aria-current]:not(#_){color:#fff!important}
header.jtop{min-height:63px}

/* == Encre d'impression (01/08/2026) ==
   Les fonds ne s'impriment pas par defaut : le papier est blanc. Toute encre claire
   posee pour un fond sombre devient invisible a l'impression. Encre sombre forcee —
   specificite montee a TROIS niveaux d'id (les reparations de theme utilisent deja deux :not(#_) — il faut les depasser) car le site est truffe
   de couleurs a !important plus specifiques que des selecteurs nus. Optimise
   l'impression par defaut (sans fonds). */
@media print{
body :not(#_):not(#__):not(#___){color:#111!important;-webkit-text-fill-color:#111!important;text-shadow:none!important}
body a[href]:not(#_):not(#__):not(#___){text-decoration:underline}
body .kick:not(#_):not(#__):not(#___),body .eyebrow:not(#_):not(#__):not(#___){color:#444!important}
nav.toc,#inv-toc,.corp-nav,.pole-subnav,#secrail,.ttg,#aurora,.grain,.diapo,.pgh-art,.skip-link{display:none!important}
}

/* ============================================================================
   SAUTS DE PAGE — 01/08/2026
   Deux causes mesurees, deux correctifs. Les pistes non confirmees par la
   mesure (flou d'arriere-plan, aurora, reveal) ont ete ecartees : aucun effet
   reproductible. Protocole et chiffres dans MAINTENANCE §17.

   1) LE SAUT DE PAGE PROPREMENT DIT. html portait scroll-behavior:smooth.
      Pendant l'animation (~1 s, plus lente encore sur telephone) le contenu se
      deplie — reveal au defilement, sections repliables, images qui arrivent —
      donc la position calculee au depart n'est plus la bonne a l'arrivee. Le
      lecteur est depose loin du titre vise. Mesure sur 28 ancres de 5 pages :
        telephone 390x844 : 12 ancres ratees en doux -> 1 en instantane
        ordinateur 1440x900 : 19 ratees en doux -> 1 en instantane
      Pire cas releve : /societe#organisation, titre a 10 720 px de la fenetre.
      C'est un defaut fonctionnel, pas un defaut d'agrement : on coupe le
      glissement partout. Le confort perdu est mince, le lien retombe juste.

   2) FLUIDITE MOBILE. .hero-halo et .prem-mesh sont en mix-blend-mode:screen
      sur une boite de 390x1375 px : la fusion prive le compositeur de ses
      chemins rapides. Neutralisee, la frame mediane passe de 50 ms a 33,4 ms
      (4 essais sur 4, +11 % de frames affichees). Rendu identique a l'oeil sur
      fond sombre — le degrade du halo est deja clair sur du bleu nuit.
   ========================================================================== */
html:not(#_){scroll-behavior:auto}
@media(max-width:1024px){
  .hero-halo:not(#_),.prem-mesh:not(#_){mix-blend-mode:normal}
}

/* ============================================================================
   CALE D'ANCRE — 01/08/2026
   scroll-padding-top valait 116px partout : une constante qui ne correspond a
   aucun gabarit. Mesure de la pile collante reelle (MAINTENANCE 18) :
     barre principale   390px -> 77   820px -> 93   1440px -> 132
     + sous-nav collante (corp-nav, nav.toc, #inv-toc, #cw-tabs) : +40 a +70
   Consequence : sur 54 ancres testees, 4 titres finissaient sous les barres en
   telephone et 14 en ordinateur — on cliquait un titre du sommaire et il
   arrivait cache. nav_a.js mesure la pile et pose --et-anc ; les valeurs de
   repli ci-dessous couvrent les 62 pages qui ne chargent pas ce script (les
   articles du journal et les pages legales, dont la barre est simple).
   ========================================================================== */
html:not(#_){scroll-padding-top:var(--et-anc,95px)}
@media(min-width:820px){html:not(#_){scroll-padding-top:var(--et-anc,111px)}}
@media(min-width:1241px){html:not(#_){scroll-padding-top:var(--et-anc,150px)}}

/* ============================================================================
   iOS / SAFARI — 01/08/2026
   Audit mene sous le vrai moteur WebKit 26 (et non sous Chromium en gabarit
   iPhone), profils iPhone SE / 13 / 13 paysage / iPad, portrait et paysage.
   Ce que la mesure a innocente : zero erreur JS, zero debordement horizontal,
   le verre depoli fonctionne (prefixe -webkit- present partout), aucun melange
   de calques sous 1024px, les ancres tiennent (0/64 recouvertes sur iPad,
   1/64 en iPhone portrait). Ce qui suit corrige ce qui a reellement echoue.
   Protocole et chiffres dans MAINTENANCE 19.

   1. ZOOM AUTOMATIQUE DES CHAMPS. La regle qui portait les champs a 16px etait
      enfermee dans @media(max-width:600px) : un critere de largeur, alors que
      le zoom de Safari depend du materiel, pas de la fenetre. Mesure a 750px
      de large (iPhone couche) : /contact 10,56px sur cinq champs, /boutique
      12,8px sur les listes et 14,72px sur les quantites. Sous 16px, iOS zoome
      de force des qu'on touche le champ et l'utilisateur doit pincer pour
      revenir. Toutes les tablettes et tous les telephones couches etaient
      concernes. On recadre sur le pointeur, pas sur la largeur.

   2. CIBLES TACTILES. 151 cibles distinctes sous 44px en portrait, 298 en
      paysage. On elargit la zone sensible sans toucher au dessin, par
      remplissage compense ou par calque ::after centre. Deux exceptions qui
      grandissent pour de bon : les pastilles du pied de page et les compteurs
      de la boutique — un compteur de 32x34 ne se manipule pas au pouce.

   3. PAYSAGE. Les barres fixes mangeaient 38 a 45% d'une fenetre de 342px de
      haut (barre principale 71 a 93px + barre du bas 59px), avant meme la
      barre d'adresse de Safari. On escamote la barre du bas quand la fenetre
      est basse : le menu principal reste accessible par le bouton.

   4. ENCOCHE EN PAYSAGE. .nav, #toTop, #plightBtn, .scrollcue et le bas de
      #nezBar traitaient deja les zones sures. Restaient trois en-tetes
      collants (boutique, journal, page arabe) et les cotes de #nezBar. On
      passe par une bordure transparente et non par le remplissage : leur
      remplissage varie d'un gabarit a l'autre (14/30/32px pour .btop,
      19,5/37,5/40px pour .jtop, 0 pour l'en-tete arabe) et le recopier serait
      le figer. Sans encoche, env() vaut zero et la bordure est nulle.

   5. SURBRILLANCE AU TOUCHER. Aucun -webkit-tap-highlight-color sur le site :
      iOS peignait un rectangle gris a chaque appui, ce qui jure sur fond
      sombre. Les etats :active du site suffisent.
   ========================================================================== */

/* --- 1. plus jamais de zoom force a la saisie ------------------------------ */
@media(pointer:coarse){
  input:not([type=range]):not([type=checkbox]):not([type=radio]):not(#_):not(#__),
  select:not(#_):not(#__),
  textarea:not(#_):not(#__){font-size:16px!important}
}

/* --- 2. cibles tactiles ---------------------------------------------------- */
@media(pointer:coarse){
  /* a. zone sensible elargie sans deplacer le dessin (remplissage compense) */
  .pc-more:not(#_):not(#__){padding-top:13px!important;padding-bottom:13px!important;
    margin-top:-8px!important;margin-bottom:-8px!important;position:relative;z-index:1}
  .ppj-tg:not(#_):not(#__){padding-top:12px!important;padding-bottom:12px!important;
    margin-top:-6px!important;margin-bottom:-6px!important;position:relative;z-index:1}

  /* b. calque de 44px centre : le bouton garde sa taille, la main gagne 13px.
        On ne pose position:relative que sur les elements encore statiques —
        .scrollcue et #plightBtn sont deja fixes, .flip-hint est absolue, et
        les repositionner en relatif les arracherait de leur place. */
  .f2hint:not(#_):not(#__),a[data-social]:not(#_):not(#__){position:relative}
  .scrollcue:not(#_):not(#__)::after,#plightBtn:not(#_):not(#__)::after,
  .flip-hint:not(#_):not(#__)::after,.f2hint:not(#_):not(#__)::after,
  a[data-social]:not(#_):not(#__)::after{content:"";position:absolute;top:50%;left:50%;
    transform:translate(-50%,-50%);min-width:44px;min-height:44px;width:100%;height:100%;
    border-radius:inherit;pointer-events:auto}

  /* c. ceux qui doivent vraiment grandir */
  .foot-pole:not(#_):not(#__){min-height:44px}
  .pc-add:not(#_):not(#__){min-height:44px}
  .stepper:not(#_):not(#__) button{width:44px!important;height:44px!important}
  .stepper:not(#_):not(#__) input{height:44px!important;width:52px!important}
}

/* --- 3. paysage : rendre la fenetre au contenu ----------------------------- */
@media(orientation:landscape) and (max-height:450px){
  #nezBar:not(#_):not(#__){display:none!important}
  .scrollcue:not(#_):not(#__){display:none!important}
}

/* --- 4. encoche sur les cotes en paysage ----------------------------------- */
@supports(left:env(safe-area-inset-left)){
  .btop:not(#_):not(#__),.jtop:not(#_):not(#__),header.top:not(#_):not(#__),
  #nezBar:not(#_):not(#__){
    border-left:env(safe-area-inset-left) solid transparent;
    border-right:env(safe-area-inset-right) solid transparent}
}

/* --- 5. pas de rectangle gris au toucher ----------------------------------- */
html:not(#_):not(#__){-webkit-tap-highlight-color:transparent}

/* --- 6. le megamenu se fermait sous la barre d'adresse ---------------------- */
/* 100vh vaut, sur iOS, la hauteur barre d'adresse repliee : le bas du panneau
   passait dessous. 100dvh suit la fenetre reellement visible ; la ligne 100vh
   reste en repli pour les moteurs qui ignorent dvh. */

@supports(height:100dvh){
  
}

/* ============================================================================
   iOS / SAFARI — deuxieme passe, cibles tactiles nommees — 01/08/2026
   La premiere passe a ramene les cibles sous 44px de 151 a 126 en portrait et
   de 298 a 245 en paysage, et ramene a zero les champs qui declenchaient le
   zoom. Le releve du reste (instrument #6 : chemin CSS complet de chaque cible
   fautive) montre que le gros du solde n'est pas disperse — ce sont huit
   familles, presque toutes des listes verticales de liens : pied de page,
   coordonnees, fil d'Ariane, filtres de la boutique, en-tete des carnets.
   On leur donne 44px de hauteur pour de bon. La page mobile s'allonge un peu ;
   c'est le prix d'un pied de page qu'on peut viser au pouce, et cela va dans le
   sens demande d'une version mobile modernisee.
   ========================================================================== */
@media(pointer:coarse){
  /* le compteur de la boutique se faisait ecraser par la grille en gabarit
     tablette : la hauteur passait bien, la largeur retombait a 33px. */
  .stepper:not(#_):not(#__) button{flex:0 0 44px!important;min-width:44px!important}
  .stepper:not(#_):not(#__) input{flex:0 0 52px!important;min-width:44px!important}

  /* listes verticales de liens : hauteur pleine, texte centre */
  .foot-col:not(#_):not(#__) a,
  .foot-brand:not(#_):not(#__) a,
  .coords:not(#_):not(#__) a,
  .bcrumb:not(#_):not(#__) a,
  #contact-rapide:not(#_):not(#__) a,
  .foot-legal:not(#_):not(#__) button,
  .jsig:not(#_):not(#__) a{min-height:44px;display:flex;align-items:center}
  .bcrumb:not(#_):not(#__) a{display:inline-flex}
  .foot-legal:not(#_):not(#__) button{display:inline-flex;justify-content:center}

  /* boutons et pastilles */
  .filters:not(#_):not(#__) .chip{min-height:44px}
  .hx-dots:not(#_):not(#__) button{min-height:44px}
  .follow-soc:not(#_):not(#__) a{min-width:44px;min-height:44px}
  .nav-search:not(#_):not(#__){min-width:44px;min-height:44px}
  .jtop:not(#_):not(#__) .jback,.jtop:not(#_):not(#__) #jlightBtn{min-width:44px;min-height:44px}
  .foot-pole:not(#_):not(#__){min-width:44px;text-align:center}
  .skip-link:not(#_):not(#__){min-height:44px}

  /* liens en fin de bloc, poses en ligne : on les passe en ligne-flex pour que
     leur remplissage compte vraiment dans la hauteur cliquable. */
  .card:not(#_):not(#__) .d a,
  .bnote:not(#_):not(#__) a,
  .layout:not(#_):not(#__) a[href*="maps"]{display:inline-flex;align-items:center;
    min-height:44px;min-width:44px;justify-content:center}
}

/* ============================================================================
   iOS / SAFARI — troisieme et derniere passe tactile — 01/08/2026
   Apres la deuxieme passe : 49 cibles distinctes sous 44px en portrait (151 au
   depart), 107 en paysage (298), 151 sur iPad (260). Le solde n'est plus une
   longue traine : c'est une dizaine de familles nommees, relevees une a une par
   l'instrument #6. On les traite ici. Ce qui restera ensuite est assume et
   consigne dans MAINTENANCE 19 : deux liens de plan d'acces et les liens en
   pleine phrase, que la recommandation d'Apple exempte explicitement.
   ========================================================================== */
@media(pointer:coarse){
  /* la ligne de liens legaux du pied de page : 21px de haut, la plus fine du site */
  .foot-legal-links:not(#_):not(#__) a{min-height:44px;display:inline-flex;align-items:center}

  /* bandeau cookies : le seul endroit ou rater la cible a une consequence */
  #ckn:not(#_):not(#__) .ck-row a,#ckn:not(#_):not(#__) .ck-row button{min-height:44px;
    display:inline-flex;align-items:center;justify-content:center}

  /* onglets de segmentation clientele, entetes depliables, fil de chaine */
  .cwt:not(#_):not(#__) button{min-height:44px}
  .minv-btn:not(#_):not(#__){min-height:44px}
  .pgc-node:not(#_):not(#__){min-height:44px;display:inline-flex;align-items:center}
  .crumb:not(#_):not(#__) a{min-height:44px;display:inline-flex;align-items:center}
  .hchain:not(#_):not(#__) a{min-height:44px}

  /* pastilles de partage, pastilles de diaporama, bouton de lecture claire */
  .share-b:not(#_):not(#__){min-width:44px;min-height:44px}
  .hx-dots:not(#_):not(#__) button{min-width:44px}
  #plightBtn:not(#_):not(#__){min-width:44px;min-height:44px}

  /* replis de fiche : 12px de remplissage donnaient 40px, il en manquait quatre */
  .ppj-tg:not(#_):not(#__){padding-top:14px!important;padding-bottom:14px!important;
    margin-top:-8px!important;margin-bottom:-8px!important}

  /* lien de rappel en fin de bloc mis en avant */
  .hx-grid:not(#_):not(#__) > div > div > a{display:inline-flex;align-items:center;min-height:44px}
}

/* Dernier rattrapage tactile : une famille d'appels a l'action s'arretait entre
   38 et 43px, soit deux a six pixels sous la recommandation d'Apple. Elles
   portent toutes un nom, on les nomme. 01/08/2026 */
@media(pointer:coarse){
  .flip-cta:not(#_):not(#__),.iv-cta:not(#_):not(#__),.hnews-all:not(#_):not(#__),
  .ppte-cta:not(#_):not(#__),.bbrand:not(#_):not(#__),.bback:not(#_):not(#__),
  .cart-btn:not(#_):not(#__),.chip:not(#_):not(#__),.btn2:not(#_):not(#__){min-height:44px}
}

/* ============================================================================
   FIL D'ARIANE SOUS LA BARRE — 01/08/2026
   Mesure : la seule regle qui degageait le haut du hero etait enfermee dans
   @media(max-width:560px). Au-dessus de 560px et jusqu'a 1240px, plus rien :
   .hero retombait a padding-top 0 alors que #nav reste fixe et mesure 93px.
   Resultat, sur /societe /clients /investisseurs /solutions /engagements
   /gouvernance /contact /carrieres, le fil d'Ariane demarrait a y=45..49 et
   passait entierement sous la barre — iPhone couche, iPad, et toute tablette.
   Au-dessus de 1241px le defaut ne se voit pas : nav_a.css donne au fil
   d'Ariane son propre remplissage de 74px, qui le fait ressortir.

   Deuxieme foyer, celui-la visible meme en portrait : les 37 pages marquees
   body.nx-clear recevaient 48px pour une barre de 77px. Leur fil d'Ariane
   etait donc recouvert a toutes les largeurs.

   On pose donc un seul decalage, deterministe, sur toute la bande <=1240px :
   96px sous 560px (la valeur qui marchait deja, on ne bouge pas les pages
   saines) et 112px au-dessus, soit la barre de 93px plus les 19px de respiration
   du gabarit telephone. Pas de !important : l'accueil garde ses 128/152px
   poses en header.hero!important, et toute page qui voudra son propre dessin
   n'aura qu'a le declarer de meme.
   ========================================================================== */
@media(max-width:560px){
  .hero:not(#_):not(#__){padding-top:96px}
}
@media(min-width:561px) and (max-width:1240px){
  .hero:not(#_):not(#__){padding-top:112px}
}

/* Note : --nav-h restait fige a 72px alors que la barre monte a 93px en
   tablette et 132px en grand ecran ; le panneau de menu mobile et le mega-menu
   en dependent et depassaient donc la fenetre de 21 a 60px. Correctif en
   JavaScript (observateur de taille) dans u_cd226c00eb4b.js, la mesure devant
   suivre la barre et non un palier de largeur. */

/* ============================================================================
   CIBLES TACTILES — quatrieme et derniere passe, tablette et paysage
   01/08/2026. Le portrait etait retombe a quatre cibles distinctes ; restaient
   81 en iPad et paysage, toutes concentrees dans six familles nommees que la
   mesure a fini par isoler : les sommaires lateraux (nav.toc, #inv-toc), la
   navigation corporate (.corp-nav), le segmenteur de la boutique (.seg), les
   pastilles sociales du pied de page (.et-soc-foot, 36x36 pour dix occurrences
   — le plus gros contingent) et les en-tetes courts de la boutique et du
   journal. On ajoute les pastilles d'appel a l'action ecrites en style en
   ligne, reconnaissables a leur border-radius:999px, qui s'arretaient a 42px.
   ========================================================================== */
@media(pointer:coarse){
  .et-soc-foot:not(#_):not(#__) a{min-width:44px;min-height:44px}
  .corp-nav:not(#_):not(#__) a{min-height:44px;display:flex;align-items:center}
  .toc:not(#_):not(#__) .toc-in a{min-height:44px;display:flex;align-items:center}
  #inv-toc:not(#_):not(#__) .ivt-in a{min-height:44px;display:flex;align-items:center}
  .seg:not(#_):not(#__) button{min-height:44px}
  .btop:not(#_):not(#__) .bback{min-width:44px;text-align:center}
  .jtop:not(#_):not(#__) .jbrand{min-height:44px;display:flex;align-items:center}
  .pof-cta:not(#_):not(#__) a{min-height:44px}
  #coeurs:not(#_):not(#__) .reveal > a{min-height:44px}
  a[style*="border-radius:999px"]:not(#_):not(#__){min-height:44px}
}

/* Rattrapage : le sommaire de /engagements et /gouvernance accroche ses liens
   directement sous nav.toc (et non sous .toc-in comme /investisseurs), et le
   sous-menu de pole s'arretait a 39px. 01/08/2026 */
@media(pointer:coarse){
  .toc:not(#_):not(#__) > a{min-height:44px;display:flex;align-items:center}
  .psn-link:not(#_):not(#__){min-height:44px;display:flex;align-items:center}
}

/* Le lien « Voir sur la carte » de /contact pointe vers OpenStreetMap et non
   vers Google Maps : la regle posee en deuxieme passe sur a[href*="maps"] ne
   l'attrapait pas. On elargit au domaine reellement utilise. 01/08/2026 */
@media(pointer:coarse){
  a[href*="openstreetmap"]:not(#_):not(#__){min-height:44px;display:inline-flex;align-items:center}
}

/* ======================================================================
   ECLAIRCISSEMENT (2026-08) : pied de page et barre de navigation en clair.
   Remplace le pied sombre #0B1422 et la barre rgba(9,14,23,.5) du mode clair.
   Portee stricte : html.et-plight / html.et-jlight — le theme sombre est intact.
   Specificite : 5 negations d'ID pour passer devant les reparations AA
   anterieures (qui montent a 3). Ne pas reduire.
   ====================================================================== */
/* ============================================================
   ECL1 — Eclaircissement : pied de page et barre de navigation
   Portee stricte : html.et-plight / html.et-jlight uniquement.
   Le theme sombre n'est pas touche.
   Specificite : 5 negations d'ID pour battre
   html.et-plight footer .wrap>a:not(#_):not(#__):not(#___)
   ============================================================ */

/* ---------- 1. PIED DE PAGE : fond clair ---------- */
html.et-plight footer:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .jfoot:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:linear-gradient(180deg,#F7F3EC 0%,#EFE9DE 100%)!important;
  background-color:#F3EEE5!important;
  color:#2A3648!important;
  border-top:1px solid rgba(26,35,48,.10)!important;
  text-shadow:none!important}

/* le filet decoratif du haut, reaccorde sur fond clair */
html.et-plight footer:not(#e1):not(#e2):not(#e3):not(#e4)::before,
html.et-jlight footer:not(#e1):not(#e2):not(#e3):not(#e4)::before{
  background:linear-gradient(90deg,transparent,rgba(184,138,42,.95) 16%,rgba(21,95,168,.75) 50%,rgba(33,138,44,.7) 84%,transparent)!important;
  opacity:1!important}

/* ---------- 2. PIED DE PAGE : encre ---------- */
html.et-plight footer *:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer *:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .jfoot *:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#2A3648!important;text-shadow:none!important}

html.et-plight footer p:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight footer small:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight footer .foot-desc:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer p:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer .foot-desc:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#4A5668!important}

html.et-plight footer h3:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer h3:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight footer .foot-col h3:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer .foot-col h3:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight footer .foot-vals-k:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight footer .foot-social-k:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer .foot-vals-k:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer .foot-social-k:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#6B500F!important}

html.et-plight footer b:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight footer strong:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer b:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer strong:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#10161F!important}

/* ---------- 3. PIED DE PAGE : liens ---------- */
html.et-plight footer a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .jfoot a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight footer .wrap>a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight footer .foot-col a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight footer .foot-legal a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer .foot-legal a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#0E4172!important;text-decoration:none!important}

html.et-plight footer a:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight footer .foot-col a:not(.foot-pole):hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight footer .foot-legal a:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer a:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#6B500F!important;text-decoration:underline!important;text-underline-offset:3px}

/* pastilles des poles */
html.et-plight footer a.foot-pole:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer a.foot-pole:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#2A3648!important;
  background:rgba(255,255,255,.62)!important;
  border:1px solid rgba(26,35,48,.16)!important;
  box-shadow:0 1px 2px rgba(26,35,48,.05)!important}
html.et-plight footer a.foot-pole:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#6B500F!important;
  background:rgba(255,255,255,.9)!important;
  border-color:rgba(138,98,16,.42)!important}

/* jetons de valeurs */
html.et-plight footer .foot-vals span:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer .foot-vals span:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#3A4657!important;
  background:rgba(255,255,255,.58)!important;
  border-color:rgba(26,35,48,.16)!important}

/* reseaux sociaux */
html.et-plight footer .foot-social a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer .foot-social a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#3A4657!important;
  background:rgba(255,255,255,.62)!important;
  border:1px solid rgba(26,35,48,.16)!important}
html.et-plight footer .foot-social a:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#6B500F!important;
  background:rgba(184,138,42,.14)!important;
  border-color:rgba(138,98,16,.4)!important;
  box-shadow:0 6px 18px -8px rgba(138,98,16,.5)!important}

/* barre legale */
html.et-plight footer .foot-legal:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer .foot-legal:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  border-top:1px solid rgba(26,35,48,.14)!important}
html.et-plight footer .foot-legal:not(#e1):not(#e2):not(#e3):not(#e4) span:not(#e5),
html.et-jlight footer .foot-legal:not(#e1):not(#e2):not(#e3):not(#e4) span:not(#e5){
  color:#4A5668!important}

/* marque du pied : la pastille garde sa tuile sombre, le logo reste lisible */
html.et-plight footer .brand-mk:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer .brand-mk:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:linear-gradient(145deg,#16294A,#0B1422)!important;
  border:1px solid rgba(138,98,16,.38)!important;
  box-shadow:0 4px 16px rgba(26,35,48,.22),inset 0 1px 0 rgba(255,255,255,.08)!important}
html.et-plight footer .brand-tx .s:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer .brand-tx .s:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:linear-gradient(110deg,#12558F,#7A5C14)!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  -webkit-text-fill-color:transparent!important}
html.et-plight footer .brand-tx small:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer .brand-tx small:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#5C6879!important}
html.et-plight footer .logo-img:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight footer .logo-img:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  filter:none!important}

/* ---------- 4. BARRE DE NAVIGATION : verre clair ---------- */
html.et-plight .nav:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nav:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:linear-gradient(180deg,rgba(250,247,241,.955),rgba(246,242,234,.925))!important;
  background-color:rgba(250,247,241,.94)!important;
  -webkit-backdrop-filter:blur(16px) saturate(150%)!important;
  backdrop-filter:blur(16px) saturate(150%)!important;
  border-bottom:1px solid rgba(26,35,48,.10)!important;
  color:#2A3648!important}

html.et-plight .nav.scrolled:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nav.nx.scrolled:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nav.scrolled:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:rgba(250,247,241,.94)!important;
  background-color:rgba(250,247,241,.94)!important;
  -webkit-backdrop-filter:blur(22px) saturate(165%)!important;
  backdrop-filter:blur(22px) saturate(165%)!important;
  box-shadow:0 10px 34px rgba(26,35,48,.13)!important}

html.et-plight .nav.scrolled:not(#e1):not(#e2):not(#e3):not(#e4)::after,
html.et-jlight .nav.scrolled:not(#e1):not(#e2):not(#e3):not(#e4)::after{
  background:linear-gradient(90deg,transparent,rgba(138,98,16,.55),rgba(21,95,168,.5),transparent)!important}

/* bandeau utilitaire du haut */
html.et-plight .nx-util:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nx-util:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:rgba(243,238,229,.58)!important;-webkit-backdrop-filter:blur(14px) saturate(120%)!important;backdrop-filter:blur(14px) saturate(120%)!important;
  border-bottom:1px solid rgba(26,35,48,.10)!important}
html.et-plight .nx-util-in>a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nx-util-in>a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#4A5668!important}
html.et-plight .nx-util-in>a:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#6B500F!important}
html.et-plight .nx-util-in>a[aria-current]:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#6B500F!important;font-weight:600}
html.et-plight .nx-util-in .nx-lang:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nx-util-in .nx-langx:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nx-util-in .nx-lang:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#2A3648!important;border-color:rgba(26,35,48,.22)!important}
html.et-plight .nx-util-in .nx-lang b:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#77530C!important}
html.et-plight .nx-util-in .nx-lang:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  border-color:rgba(138,98,16,.5)!important;color:#6B500F!important}
html.et-plight .nx-util-in .nx-invest:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nx-util-in .nx-invest:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#77530C!important;border-color:rgba(138,98,16,.45)!important}
html.et-plight .nx-util-in .nx-invest:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:rgba(184,138,42,.13)!important;color:#6B500F!important}

/* marque */
html.et-plight .nav .brand-mk:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nav .brand-mk:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:linear-gradient(145deg,#16294A,#0B1422)!important;
  border:1px solid rgba(138,98,16,.38)!important;
  box-shadow:0 4px 16px rgba(26,35,48,.20),inset 0 1px 0 rgba(255,255,255,.08)!important}
/* « Ener » est un noeud de texte nu dans .brand-tx : il heritait de --cream
   (quasi blanc) et devenait invisible sur la barre claire. */
html.et-plight .nav .brand-tx:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nav .brand-tx:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#10161F!important;text-shadow:none!important}
html.et-plight .nav .brand-tx .s:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nav .brand-tx .s:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:linear-gradient(110deg,#12558F,#7A5C14)!important;
  -webkit-background-clip:text!important;background-clip:text!important;
  -webkit-text-fill-color:transparent!important}
html.et-plight .nav .brand-tx small:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nav .brand-tx small:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#4A5668!important}
html.et-plight .nav .logo-img:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  filter:none!important}

/* declencheurs de menu */
html.et-plight .nav-trigger:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight #nav .nav-links>.nav-item>.nav-trigger:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nav-trigger:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#2A3648!important;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,.34))!important;
  border:1px solid rgba(26,35,48,.13)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7)!important}
html.et-plight .nav-trigger:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight #nav .nav-links>.nav-item>.nav-trigger:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight #nav .nav-links>.nav-item>.nav-trigger[aria-expanded="true"]:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nav-trigger[aria-expanded="true"]:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#10161F!important;
  background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,255,255,.62))!important;
  border-color:rgba(138,98,16,.45)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 0 22px -8px rgba(138,98,16,.4)!important}
html.et-plight .nav-trigger.is-active:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#10161F!important;
  background:linear-gradient(180deg,rgba(184,138,42,.20),rgba(184,138,42,.08))!important;
  box-shadow:inset 0 0 0 1px rgba(138,98,16,.38)!important}

/* bouton recherche et bouton menu */
html.et-plight .nav-search:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nav-cta .nav-search:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nx .nav-search:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nav-tog:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nav-search:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nav-tog:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#2A3648!important;
  background:linear-gradient(160deg,rgba(255,255,255,.78),rgba(255,255,255,.4))!important;
  border:1px solid rgba(26,35,48,.16)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important}
html.et-plight .nav-search:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nav-cta .nav-search:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nav-tog:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#6B500F!important;
  background:linear-gradient(160deg,rgba(184,138,42,.16),rgba(255,255,255,.5))!important;
  border-color:rgba(138,98,16,.5)!important}

/* ---------- 5. MEGA-MENUS ---------- */
/* le fond du panneau n'existe qu'au-dessus de 1240px : sous ce seuil le
   mega-menu est deplie a plat dans le tiroir et doit rester transparent */
@media(min-width:1241px){
html.et-plight .nx-mega:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nx .nx-mega:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nx-mega:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,247,241,.99))!important;
  -webkit-backdrop-filter:blur(28px) saturate(170%)!important;
  backdrop-filter:blur(28px) saturate(170%)!important;
  border:1px solid rgba(26,35,48,.12)!important;
  box-shadow:0 44px 90px -34px rgba(26,35,48,.38)!important;
  color:#2A3648!important}
}
html.et-plight .nx .nx-mega:not(#e1):not(#e2):not(#e3):not(#e4)::before{
  background:linear-gradient(90deg,transparent,rgba(138,98,16,.7),rgba(138,98,16,.28),transparent)!important}
html.et-plight .nx-col .nxh:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nx .nx-col .nxh:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#6B500F!important;border-bottom-color:rgba(138,98,16,.25)!important}
html.et-plight .nx-col a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nx .nx-col a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#2A3648!important}
html.et-plight .nx-col a strong:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){color:#10161F!important}
html.et-plight .nx-col a em:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){color:#5C6879!important}
html.et-plight .nx-col a:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nx .nx-col a:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:rgba(21,95,168,.09)!important}
html.et-plight .nx .nx-col a:hover strong:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){color:#6B500F!important}
html.et-plight .nx .nx-col a:not(#e1):not(#e2):not(#e3):not(#e4)::after{color:#8A6A1E!important}
html.et-plight .nx-col a[aria-current="page"]:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:linear-gradient(90deg,rgba(184,138,42,.20),transparent 80%)!important;
  box-shadow:inset 2px 0 0 #8A6A1E!important}
html.et-plight .nx-col a[aria-current="page"] strong:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#6B500F!important}

/* carte mise en avant du mega-menu */
html.et-plight .nx-feat:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nx .nx-feat:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#2A3648!important;
  border:1px solid rgba(138,98,16,.28)!important;
  background-image:linear-gradient(165deg,rgba(21,95,168,.12),rgba(255,255,255,.94)),radial-gradient(120% 90% at 100% 0%,rgba(184,138,42,.16),transparent 55%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important}
html.et-plight .nx-feat .tag:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nx .nx-feat .tag:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nx-feat .arr:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nx .nx-feat .arr:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#6B500F!important}
html.et-plight .nx-feat em:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){color:#4A5668!important}
html.et-plight .nx-feat strong:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){color:#10161F!important}

/* ---------- 6. TIROIR MOBILE (sous 1241px seulement) ---------- */
@media(max-width:1240px){
html.et-plight .nav-links:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight #navLinks.open:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nav-links.open:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nx .nav-links:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight #nav .nav-links:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nav-links:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  /* Panneau modal : fond plein. A .985 le titre blanc du hero transparaissait
     en filigrane derriere les libelles du tiroir. */
  background:linear-gradient(180deg,#FAF7F1,#F3EFE7)!important;
  -webkit-backdrop-filter:blur(24px) saturate(155%)!important;
  backdrop-filter:blur(24px) saturate(155%)!important;
  box-shadow:0 34px 70px -22px rgba(26,35,48,.28)!important;
  border-bottom-color:rgba(26,35,48,.12)!important}
html.et-plight .nx .nav-item:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  border-bottom:1px solid rgba(26,35,48,.10)!important}
html.et-plight .nav-links a.active:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){color:#10161F!important}
html.et-plight .nx-util-m a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){color:#4A5668!important}
html.et-plight .nx-util-m a.cta:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:linear-gradient(180deg,#D8A63F,#C08E28)!important;color:#22170A!important;
  border:1px solid rgba(94,68,10,.42)!important}
}

/* ---------- 7. BARRE DE NAVIGATION BASSE (mobile, #nezBar) ---------- */
/* Derniere bande sombre de la navigation : 60px fixes en bas de chaque page
   mobile, rgba(8,14,26,.94). Meme traitement verre clair que la barre haute. */
html.et-plight #nezBar:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight #nezBar:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:linear-gradient(180deg,rgba(250,247,241,.955),rgba(245,241,234,.975))!important;
  background-color:rgba(250,247,241,.96)!important;
  -webkit-backdrop-filter:blur(16px) saturate(150%)!important;
  backdrop-filter:blur(16px) saturate(150%)!important;
  border-top:1px solid rgba(26,35,48,.12)!important;
  box-shadow:0 -8px 26px rgba(26,35,48,.10)!important;
  color:#2A3648!important}
html.et-plight #nezBar a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight #nezBar button:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight #nezBar a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#3A4657!important;text-shadow:none!important}
html.et-plight #nezBar a[aria-current]:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight #nezBar a.on:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight #nezBar a.active:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  color:#77530C!important}
html.et-plight #nezBar a:active:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
  background:rgba(184,138,42,.12)!important}


/* --- Tiroirs des cartes maillons (accueil) : bande sombre -> verre clair --- */
html.et-plight main .hubdrawer:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
 background:rgba(255,255,255,.66)!important;
 border-top:1px solid rgba(26,35,48,.14)!important;
 box-shadow:0 10px 30px -18px rgba(26,35,48,.35)!important}
html.et-plight main .hubdrawer a:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){color:#155FA8!important}
html.et-plight main .hubdrawer a:hover:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){background:rgba(26,35,48,.055)!important;color:#0E4172!important}
html.et-plight main .hubdrawer .hd-h:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){color:#5C6879!important}
/* ======================================================================
   MOBILE TACTILE (2026-08) : cibles tactiles portees a 44x44 CSS px sur
   pointeur grossier (WCAG 2.5.5 AAA, 2.5.8 AA).

   Complete — et ne remplace pas — la couche iOS decrite au MAINTENANCE 19,
   qui pose des pastilles ::after de 44x44 centrees sur les petits controles.
   Le releve au toucher (elementFromPoint, pas de 1 px, sonde tap2.js) a
   montre que ces pastilles se CHEVAUCHENT quand les cibles sont trop
   rapprochees : dans la zone commune c'est le frere suivant qui gagne le
   test de toucher, si bien que la zone reellement utile retombe a 38-42 px.
   On agrandit donc ici la boite reelle et on ecarte les voisines, plutot
   que d'empiler une pastille de plus.

   Portee stricte : @media(pointer:coarse) — aucun effet sur le bureau.
   Specificite : :not(#_):not(#__) comme la couche iOS, afin de rester au
   meme niveau qu'elle et au-dessus des styles <style> en ligne des pages.
   ====================================================================== */

@media(pointer:coarse){

/* --- pied de page : reseaux sociaux -------------------------------------
   38x38 dessines + pastille 44 centree => 3 px de debordement de chaque
   cote dans un ecart de 4 px : les pastilles voisines se recouvraient.
   On passe la boite elle-meme a 44x44 et l'ecart a 12 px.               */
.foot-social:not(#_):not(#__),
footer .foot-social:not(#_):not(#__){gap:12px!important}

.foot-social a:not(#_):not(#__),
footer .foot-social a:not(#_):not(#__){
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:44px!important;height:44px!important;
  min-width:44px!important;min-height:44px!important;
  padding:0!important;margin:0!important}

/* --- pied de page : liens legaux (FAQ, Contact, Cookies...) -------------
   texte de .8rem sur une ligne : 22 px de haut utiles. Marges negatives
   supprimees pour que deux rangees enroulees ne se recouvrent plus.     */
.foot-legal-links:not(#_):not(#__){
  gap:6px 18px!important;align-items:center!important}

.foot-legal-links a:not(#_):not(#__){
  display:inline-block!important;
  padding:11px 6px!important;margin:0!important;
  line-height:1.2!important}

/* --- plan du site : la page dont tout l'objet est de taper des liens ---
   26 px de haut, 6 a 9 px d'ecart. On monte a 44 et on resserre la
   marge de <li> pour que la hauteur totale de colonne bouge peu.        */
.sm-col li:not(#_):not(#__){margin:0 0 2px!important}

.sm-col a:not(#_):not(#__){
  padding:9px 0!important;min-height:44px!important}

/* --- en-tetes autonomes : « <- Retour au site » ------------------------ */
.hd .back:not(#_):not(#__),
a.back:not(#_):not(#__){
  display:inline-block!important;
  padding:11px 6px!important;margin:-11px -6px!important}

/* --- glossaire : filtres par theme -------------------------------------
   29 px de haut, .7rem, ecart 7 px. Egalement un gain de lisibilite :
   .78rem au lieu de .7rem, cohérent avec les pastilles .chip de /boutique. */
.cats:not(#_):not(#__){gap:9px!important}

.cats button:not(#_):not(#__){
  min-height:44px!important;
  padding:10px 15px!important;
  font-size:.78rem!important}

/* --- carte du reseau aval : cercles de captage des hubs -----------------
   propriete geometrique SVG (r) pilotee en CSS ; ignoree sans dommage par
   les moteurs qui ne la connaissent pas. 19 -> 22 unites = 44 px de
   diametre pour les hubs isoles (Faya, Fada, Bardai, Abeche, Mao).      */
.avnet-hit:not(#_):not(#__){r:22px}

/* --- accueil : l'affordance des cartes retournables doit etre visible ---
   .flip .flip-hint est a opacity:.55 et ne passait a 1 que sur :hover.   */
.flip .flip-hint:not(#_):not(#__){opacity:1!important}

}

/* --- accueil : cartes retournables au TOUCHER --------------------------
   Le script en ligne d'index.html bascule la classe « flipped » au clic,
   mais AUCUNE regle CSS du site ne reagissait a cette classe : seul
   « .flip:hover .flip-in » retournait la carte. Sur un ecran tactile, ou
   :hover n'existe pas (ou reste colle apres un appui), la face arriere —
   son intitule, son texte et son lien .flip-cta — etait donc totalement
   inatteignable. On rend la classe operante, et sur pointeur sans survol
   on neutralise :hover pour que l'etat soit pilote par le seul appui.
   ====================================================================== */
.flip.flipped:not(#_):not(#__) .flip-in{transform:rotateY(180deg)!important}

@media(hover:none){
  .flip:not(.flipped):not(#_):not(#__) .flip-in{transform:none!important}
}

/* ============================================================
   TYPO MOBILE (2026-08)
   Objectif : rapprocher le corps de texte mobile des standards
   des majors (16px / 1.6) sans toucher aux micro-typographies
   (kickers, badges, pastilles) ni aux blocs deja >= 15px.

   Methode : la couche ne vise QUE des conteneurs dont l'audit
   (/root/work/ty.js -> ty.json) a montre qu'ils ne contiennent
   AUCUN texte de contenu >= 15px. Un plancher pose la ne peut
   donc rien retrecir. Les tailles declarees < 12px (kick, fs,
   mentions legales) sont volontairement laissees intactes.

   Paliers : 12.0-12.9px -> 14.2 | 13.0-13.9px -> 14.8 | >= 14.0px -> 15.2
   Interligne porte a 1.6 minimum dans les memes blocs.
   Portee : @media (max-width:640px) uniquement.
   Voir MAINTENANCE.md section 24.
   ============================================================ */
@media (max-width:640px){
a.cp:not(#_):not(#__) span,
a.isv-l:not(#_):not(#__) span,
a.prof:not(#_):not(#__) p,
details.cm-more:not(#_):not(#__) li,
div.atlas-grid:not(#_):not(#__) p,
div.atlas-timeline:not(#_):not(#__) p,
div.bit-grid:not(#_):not(#__) p,
div.bx263:not(#_):not(#__) p,
div.bx291:not(#_):not(#__) span,
div.bx325:not(#_):not(#__) p,
div.bx339:not(#_):not(#__) p,
div.bx344:not(#_):not(#__) p,
div.bx359:not(#_):not(#__) p,
div.bx365:not(#_):not(#__) p,
div.bx374:not(#_):not(#__) p,
div.bx410:not(#_):not(#__) p,
div.bx416:not(#_):not(#__) div,
div.bx482:not(#_):not(#__) p,
div.bx95:not(#_):not(#__) p,
div.carbon-grid:not(#_):not(#__) div,
div.card-m:not(#_):not(#__) p,
div.card:not(#_):not(#__) div,
div.ce-card:not(#_):not(#__) span,
div.comm-grid:not(#_):not(#__) p,
div.ct-grid:not(#_):not(#__) p,
div.eor-grid:not(#_):not(#__) p,
div.esg-card:not(#_):not(#__) div,
div.esg3-grid:not(#_):not(#__) li,
div.expand-grid:not(#_):not(#__) li,
div.fam6:not(#_):not(#__) span,
div.fil-grid:not(#_):not(#__) p,
div.glow-card:not(#_):not(#__) li,
div.gt-grid:not(#_):not(#__) p,
div.hub-grid:not(#_):not(#__) p,
div.hxf-face:not(#_):not(#__) p,
div.imx-fields:not(#_):not(#__) span,
div.kpi:not(#_):not(#__) div,
div.lc-grid:not(#_):not(#__) p,
div.nextgen-grid:not(#_):not(#__) p,
div.ofs4-grid:not(#_):not(#__) p,
div.pc:not(#_):not(#__) p,
div.ppt-card:not(#_):not(#__) span,
div.prod-b2b:not(#_):not(#__) p,
div.qx3_54:not(#_):not(#__) p,
div.reg-grid:not(#_):not(#__) p,
div.rh-card:not(#_):not(#__) div,
div.scard:not(#_):not(#__) span,
div.sect-row:not(#_):not(#__) div,
div.stp:not(#_):not(#__) p,
div.tier1-grid:not(#_):not(#__) p,
div.tri-det:not(#_):not(#__) li,
div.tri-step:not(#_):not(#__) span,
div.tt-grid:not(#_):not(#__) div,
div.val-levers:not(#_):not(#__) p,
div.vc-grid:not(#_):not(#__) p,
div.viz-grid:not(#_):not(#__) p,
div.voie-card:not(#_):not(#__) div,
div.welltype-grid:not(#_):not(#__) p,
li.bx90:not(#_):not(#__) span,
ol.acq-steps:not(#_):not(#__) span,
ol.atl-refs:not(#_):not(#__) li,
table.atl-tbl:not(#_):not(#__) td,
ul.acq-dlist:not(#_):not(#__) li,
ul.acq-list:not(#_):not(#__) li,
ul.bx181:not(#_):not(#__) li,
ul.bx280:not(#_):not(#__) li,
ul.bx292:not(#_):not(#__) li,
ul.bx36:not(#_):not(#__) li,
ul.bx49:not(#_):not(#__) li,
ul.bx531:not(#_):not(#__) li,
ul.ce-li:not(#_):not(#__) li{font-size:14.8px!important;line-height:1.6!important}
a.fid-card:not(#_):not(#__) span,
a.ttg-t:not(#_):not(#__) span,
button.dist-step:not(#_):not(#__) p,
div.bx110:not(#_):not(#__) span,
div.bx121:not(#_):not(#__) span,
div.bx139:not(#_):not(#__) p,
div.bx152:not(#_):not(#__) span,
div.bx153:not(#_):not(#__) span,
div.bx156:not(#_):not(#__) p,
div.bx15:not(#_):not(#__) span,
div.bx203:not(#_):not(#__) p,
div.bx226:not(#_):not(#__) span,
div.bx276:not(#_):not(#__) p,
div.bx365:not(#_):not(#__) div,
div.bx376:not(#_):not(#__) div,
div.bx388:not(#_):not(#__) p,
div.bx588:not(#_):not(#__) span,
div.bx72:not(#_):not(#__) p,
div.card-m:not(#_):not(#__) div,
div.fam-card:not(#_):not(#__) p,
div.ia-grid:not(#_):not(#__) p,
div.nextgen-grid:not(#_):not(#__) li,
div.pr:not(#_):not(#__) span,
div.qx1_18:not(#_):not(#__) p,
div.qx2_19:not(#_):not(#__) p,
div.qx2_31:not(#_):not(#__) p,
div.qx2_53:not(#_):not(#__) div,
div.qx2_56:not(#_):not(#__) p,
div.rd-axes:not(#_):not(#__) p,
div.road-grid:not(#_):not(#__) p,
div.sfam-i:not(#_):not(#__) span,
div.tech-future-grid:not(#_):not(#__) p,
span.fx2-b:not(#_):not(#__) p,
span.fx2-f:not(#_):not(#__) p,
span.pmore-body:not(#_):not(#__) span{font-size:14.2px!important;line-height:1.6!important}
a.adx:not(#_):not(#__) p,
a.pubc:not(#_):not(#__) p,
div.bx389:not(#_):not(#__) p,
div.epw-c:not(#_):not(#__) p,
div.eth-c:not(#_):not(#__) p,
div.flip-f:not(#_):not(#__) p,
div.foot-brand:not(#_):not(#__) p,
div.glow-card:not(#_):not(#__) p,
div.glow-card:not(#_):not(#__) span,
div.gov-c:not(#_):not(#__) p,
div.hp:not(#_):not(#__) li,
div.mkt-brand:not(#_):not(#__) p,
div.pj:not(#_):not(#__) p,
div.term:not(#_):not(#__) dd,
div.tri-biz:not(#_):not(#__) p,
div.tri-c:not(#_):not(#__) p,
li.bx194:not(#_):not(#__) span,
table.esg-t:not(#_):not(#__) td{font-size:15.2px!important;line-height:1.6!important}
div.hp:not(#_):not(#__) p{font-size:14.8px!important;line-height:1.7!important}
div.acq-card:not(#_):not(#__) p{font-size:15.2px!important;line-height:1.64!important}
div.expand-grid:not(#_):not(#__) p{font-size:15.2px!important;line-height:1.65!important}
}
/* ============================================================
   TUILES UNIFIEES (2026-08)
   Langage de carte unique pour tout le site.
   1. Echelle de rayon a 3 crans : 14 / 18 / 22 (9 valeurs mesurees avant).
   2. Elevation douce et coherente pour les familles restees plates.
   3. Survol : levee de 2px + ombre renforcee, sous prefers-reduced-motion.
   4. Filets d'accent superieurs ramenes de 3px a 2px.
   5. .mseg : la pastille de categorie redevient une puce, plus une barre grise.
   Les selecteurs sont NOMMES : jamais de ciblage par geometrie mesuree
   (les parties internes .hpcard-body, .hpcard-l, .sfam-i ressortent
   comme des fausses tuiles dans les sondes).
   ============================================================ */

/* ---- 1. RAYONS : cran 22 (cartes editoriales / vitrines) ---- */
main .card:not(#_):not(#__),
main .card-m:not(#_):not(#__),
main .prof:not(#_):not(#__),
main .hpcard:not(#_):not(#__),
main .hpcard-kpis:not(#_):not(#__),
main .hxi-card:not(#_):not(#__),
main .mfo-lever:not(#_):not(#__),
main .hncard:not(#_):not(#__),
main .sc-card:not(#_):not(#__),
main .glow-card:not(#_):not(#__),
main .pubc:not(#_):not(#__),
main .divc:not(#_):not(#__),
main .esg-card:not(#_):not(#__),
main .pj:not(#_):not(#__),
main article.cp:not(#_):not(#__){border-radius:22px!important}

/* ---- 1. RAYONS : cran 18 (tuiles standard) ---- */
main .ttg-t:not(#_):not(#__),
main .tri-c:not(#_):not(#__),
main .tri-step:not(#_):not(#__),
main .tri-kpi:not(#_):not(#__),
main .kpi:not(#_):not(#__),
main a.cp:not(#_):not(#__),
main .rh-card:not(#_):not(#__),
main .fam-card:not(#_):not(#__),
main .acq-card:not(#_):not(#__),
main .ce-card:not(#_):not(#__),
main .ppt-card:not(#_):not(#__),
main .it-card:not(#_):not(#__),
main .vb-card:not(#_):not(#__),
main .val:not(#_):not(#__),
main .sfam:not(#_):not(#__),
main .dist-btn:not(#_):not(#__),
main .ngs-p:not(#_):not(#__),
main .doc:not(#_):not(#__),
main .gov-c:not(#_):not(#__),
main .ct-card:not(#_):not(#__),
main .ets-bar:not(#_):not(#__){border-radius:18px!important}

/* ---- 1. RAYONS : cran 14 (puces compactes / chiffres) ---- */
main .orgc:not(#_):not(#__),
main .ckpi:not(#_):not(#__),
main .mkt-brand:not(#_):not(#__),
main .stp:not(#_):not(#__),
main .ppl-tile:not(#_):not(#__),
main .ngs-t:not(#_):not(#__){border-radius:14px!important}

/* ---- 4. FILETS D'ACCENT : 3px -> 2px ----
   Uniquement les classes dont la mesure donne 3px partout ;
   .prof est exclue (1px sur /solutions, 3px sur /clients). */
main .kpi:not(#_):not(#__),
main a.cp:not(#_):not(#__),
main .orgc:not(#_):not(#__),
main .ngs-p:not(#_):not(#__){border-top-width:2px!important}

/* ---- 2. ELEVATION : familles restees plates, theme clair ---- */
html.et-plight main .tri-c:not(#_):not(#__),
html.et-plight main .tri-step:not(#_):not(#__),
html.et-plight main .tri-kpi:not(#_):not(#__),
html.et-plight main .kpi:not(#_):not(#__),
html.et-plight main a.cp:not(#_):not(#__),
html.et-plight main .pubc:not(#_):not(#__),
html.et-plight main .gov-c:not(#_):not(#__),
html.et-plight main .pj:not(#_):not(#__),
html.et-plight main .orgc:not(#_):not(#__),
html.et-plight main .doc:not(#_):not(#__),
html.et-plight main .val:not(#_):not(#__),
html.et-plight main .ckpi:not(#_):not(#__),
html.et-plight main .mkt-brand:not(#_):not(#__),
html.et-plight main .stp:not(#_):not(#__),
html.et-plight main .sfam:not(#_):not(#__),
html.et-plight main .dist-btn:not(#_):not(#__),
html.et-plight main .ppl-tile:not(#_):not(#__),
html.et-plight main .ngs-p:not(#_):not(#__),
html.et-plight main .ngs-t:not(#_):not(#__){
 box-shadow:0 1px 2px rgba(26,35,48,.045),0 12px 30px -22px rgba(26,35,48,.42)!important}

/* ---- 2. ELEVATION : memes familles, theme sombre ---- */
html:not(.et-plight) main .tri-c:not(#_):not(#__),
html:not(.et-plight) main .tri-step:not(#_):not(#__),
html:not(.et-plight) main .tri-kpi:not(#_):not(#__),
html:not(.et-plight) main .kpi:not(#_):not(#__),
html:not(.et-plight) main a.cp:not(#_):not(#__),
html:not(.et-plight) main .pubc:not(#_):not(#__),
html:not(.et-plight) main .gov-c:not(#_):not(#__),
html:not(.et-plight) main .pj:not(#_):not(#__),
html:not(.et-plight) main .orgc:not(#_):not(#__),
html:not(.et-plight) main .doc:not(#_):not(#__),
html:not(.et-plight) main .val:not(#_):not(#__),
html:not(.et-plight) main .ckpi:not(#_):not(#__),
html:not(.et-plight) main .mkt-brand:not(#_):not(#__),
html:not(.et-plight) main .stp:not(#_):not(#__),
html:not(.et-plight) main .sfam:not(#_):not(#__),
html:not(.et-plight) main .dist-btn:not(#_):not(#__),
html:not(.et-plight) main .ppl-tile:not(#_):not(#__),
html:not(.et-plight) main .ngs-p:not(#_):not(#__),
html:not(.et-plight) main .ngs-t:not(#_):not(#__){
 box-shadow:0 1px 2px rgba(0,0,0,.22),0 16px 36px -26px rgba(0,0,0,.72)!important}

/* ---- 3. SURVOL : levee coherente sur les tuiles interactives ---- */
@media (prefers-reduced-motion:no-preference){
 main a.ttg-t:not(#_):not(#__),
 main a.prof:not(#_):not(#__),
 main a.pubc:not(#_):not(#__),
 main a.cp:not(#_):not(#__),
 main a.doc:not(#_):not(#__),
 main a.hncard:not(#_):not(#__),
 main button.dist-btn:not(#_):not(#__),
 main button.ets-bar:not(#_):not(#__),
 main label.ct-card:not(#_):not(#__){
  transition:transform .22s cubic-bezier(.22,.61,.36,1),box-shadow .22s ease,border-color .22s ease!important}
 html.et-plight main a.ttg-t:hover:not(#_):not(#__),
 html.et-plight main a.prof:hover:not(#_):not(#__),
 html.et-plight main a.pubc:hover:not(#_):not(#__),
 html.et-plight main a.cp:hover:not(#_):not(#__),
 html.et-plight main a.doc:hover:not(#_):not(#__),
 html.et-plight main a.hncard:hover:not(#_):not(#__),
 html.et-plight main button.dist-btn:hover:not(#_):not(#__),
 html.et-plight main button.ets-bar:hover:not(#_):not(#__),
 html.et-plight main label.ct-card:hover:not(#_):not(#__){
  transform:translateY(-2px)!important;
  box-shadow:0 2px 4px rgba(26,35,48,.06),0 20px 40px -24px rgba(26,35,48,.5)!important;
  border-color:rgba(26,35,48,.24)!important}
 html:not(.et-plight) main a.ttg-t:hover:not(#_):not(#__),
 html:not(.et-plight) main a.prof:hover:not(#_):not(#__),
 html:not(.et-plight) main a.pubc:hover:not(#_):not(#__),
 html:not(.et-plight) main a.cp:hover:not(#_):not(#__),
 html:not(.et-plight) main a.doc:hover:not(#_):not(#__),
 html:not(.et-plight) main a.hncard:hover:not(#_):not(#__),
 html:not(.et-plight) main button.dist-btn:hover:not(#_):not(#__),
 html:not(.et-plight) main button.ets-bar:hover:not(#_):not(#__),
 html:not(.et-plight) main label.ct-card:hover:not(#_):not(#__){
  transform:translateY(-2px)!important;
  box-shadow:0 2px 6px rgba(0,0,0,.3),0 26px 48px -28px rgba(0,0,0,.85)!important}
}
/* Respect strict de la preference systeme */
@media (prefers-reduced-motion:reduce){
 main a.ttg-t:not(#_):not(#__),
 main a.prof:not(#_):not(#__),
 main a.pubc:not(#_):not(#__),
 main a.cp:not(#_):not(#__),
 main a.doc:not(#_):not(#__),
 main a.hncard:not(#_):not(#__),
 main button.dist-btn:not(#_):not(#__),
 main button.ets-bar:not(#_):not(#__),
 main label.ct-card:not(#_):not(#__){transition:none!important;transform:none!important}
}

/* ---- 5. .mseg : puce de categorie, non plus bandeau gris ----
   .mseg n'a AUCUNE regle de base dans le site ; seule une surcharge
   claire lui donnait un fond, et comme .prof est un flex colonne
   le span s'etirait sur toute la largeur. */
main .mseg:not(#_):not(#__){
 display:inline-flex!important;
 align-self:flex-start!important;
 width:auto!important;
 padding:3px 10px!important;
 border-radius:999px!important;
 font-size:12px!important;
 line-height:1.5!important;
 font-weight:700!important;
 letter-spacing:.07em!important;
 text-transform:uppercase!important;
 background:color-mix(in srgb, var(--mc,#155FA8) 13%, transparent)!important;
 border:1px solid color-mix(in srgb, var(--mc,#155FA8) 26%, transparent)!important}
html.et-plight main .mseg:not(#_):not(#__):not(#___){
 color:color-mix(in srgb, var(--mc,#155FA8) 42%, #0B1422)!important}
html:not(.et-plight) main .mseg:not(#_):not(#__):not(#___){
 color:color-mix(in srgb, var(--mc,#9FB4CE) 72%, #FFFFFF)!important}

/* ============================================================
   SECONDE PASSE : les familles a classe generique (.d .t .h .hp .pr .step)
   ne peuvent PAS etre ciblees seules — un selecteur `.t` frapperait tout
   le site. Elles sont donc ancrees sur leur conteneur de grille, releve
   par sonde DOM (probe2.js) :
     .hse-prac>.pr  .hse-tri>.hp  .cli-deep>.d  .offer>.aside
     .steps>.step   .traj>.t      .hz>.h        .ec-tiers>.ec-tier
     .ppl-sel>.ppl-f
   ============================================================ */
main .hse-tri .hp:not(#_):not(#__),
main .offer .aside:not(#_):not(#__),
main .steps .step:not(#_):not(#__),
main .traj .t:not(#_):not(#__),
main .hz .h:not(#_):not(#__),
main .ppl-sel .ppl-f:not(#_):not(#__),
main .avnet-panel:not(#_):not(#__),
main .avnet-mapwrap:not(#_):not(#__),
main .acq-door:not(#_):not(#__),
main .ppte-tile:not(#_):not(#__){border-radius:18px!important}

main .hse-prac .pr:not(#_):not(#__),
main .ec-tiers .ec-tier:not(#_):not(#__){border-radius:14px!important}

main .steps .step:not(#_):not(#__),
main .traj .t:not(#_):not(#__),
main .ec-tiers .ec-tier:not(#_):not(#__){border-top-width:2px!important}

html.et-plight main .divc:not(#_):not(#__),
html.et-plight main .prof:not(#_):not(#__),
html.et-plight main .hse-prac .pr:not(#_):not(#__),
html.et-plight main .hse-tri .hp:not(#_):not(#__),
html.et-plight main .cli-deep .d:not(#_):not(#__),
html.et-plight main .offer .aside:not(#_):not(#__),
html.et-plight main .steps .step:not(#_):not(#__),
html.et-plight main .traj .t:not(#_):not(#__),
html.et-plight main .hz .h:not(#_):not(#__),
html.et-plight main .ec-tiers .ec-tier:not(#_):not(#__),
html.et-plight main .ppl-sel .ppl-f:not(#_):not(#__){
 box-shadow:0 1px 2px rgba(26,35,48,.045),0 12px 30px -22px rgba(26,35,48,.42)!important}

html:not(.et-plight) main .divc:not(#_):not(#__),
html:not(.et-plight) main .prof:not(#_):not(#__),
html:not(.et-plight) main .hse-prac .pr:not(#_):not(#__),
html:not(.et-plight) main .hse-tri .hp:not(#_):not(#__),
html:not(.et-plight) main .cli-deep .d:not(#_):not(#__),
html:not(.et-plight) main .offer .aside:not(#_):not(#__),
html:not(.et-plight) main .steps .step:not(#_):not(#__),
html:not(.et-plight) main .traj .t:not(#_):not(#__),
html:not(.et-plight) main .hz .h:not(#_):not(#__),
html:not(.et-plight) main .ec-tiers .ec-tier:not(#_):not(#__),
html:not(.et-plight) main .ppl-sel .ppl-f:not(#_):not(#__){
 box-shadow:0 1px 2px rgba(0,0,0,.22),0 16px 36px -26px rgba(0,0,0,.72)!important}

/* ===== prem197 : signature premium etendue a tout le site (ch.197) ===== */
::selection{background:var(--gold,#E8C36A);color:#0B1526}
.btn.btn-p{position:relative;overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 10px 26px -14px rgba(232,195,106,.55)}
.btn.btn-p::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s var(--ease,ease);pointer-events:none}
.btn.btn-p:hover::after{transform:translateX(120%)}
@media (prefers-reduced-motion:reduce){.btn.btn-p::after{display:none}}

/* Ch217 : placeholder lisible en theme clair (etait blanc a 38% sur fond clair) */
html.et-plight main ::placeholder,html.et-plight form ::placeholder,html.et-jlight main ::placeholder,html.et-jlight form ::placeholder{color:rgba(42,54,72,.55)!important}

/* Ch218 : sous le seuil 1241px le panneau nx-mega restait peint en sombre par la regle non gardee -> en theme clair le tiroir montrait du texte sombre sur fond nuit. Derogation mobile claire. */
@media(max-width:1240px){
html.et-plight .nx-mega:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-plight .nx .nx-mega:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5),
html.et-jlight .nx-mega:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5){
background:rgba(250,247,241,.97)!important;
border:1px solid rgba(26,35,48,.10)!important;
box-shadow:0 18px 40px -24px rgba(26,35,48,.25)!important}
}

/* Ch219 : cibles tactiles des curseurs (WCAG 2.5.8 : 24px min) */
@media(pointer:coarse){input[type=range]:not(#_),.lum-range{min-height:28px}}

/* Ch231b : etat selectionne des prereglages du variateur — sans cette regle, seul l'anneau de focus distingue le niveau actif */
.lum-presets button[aria-pressed="true"]{border-color:var(--gold-l,#F0CE82);background:rgba(240,206,130,.14);color:var(--gold-l,#F0CE82);font-weight:600}

/* ===== Ch234 : trois familles d'encre restee sombre-sur-sombre ou claire-sur-clair ======
   Mesure au pixel peint (le controle axe ne voit pas ces cas : il n'evalue pas le fond
   reellement peint sous un degrade ou une image). */

/* 1. Rail de sommaire : .axl est un <b>, donc capture par la regle generale
   « html.et-jlight b{color:#10161F} » — encre quasi noire sur la pastille bleu nuit
   du rail, 1,02:1, sur toutes les pages de carnet. Le rail garde son encre claire. */
html.et-jlight #secrail b:not(#_):not(#__),html.et-jlight #secrail .axl:not(#_):not(#__),
html.et-plight #secrail b:not(#_):not(#__),html.et-plight #secrail .axl:not(#_):not(#__){color:rgba(245,247,250,.92)!important}

/* 2. Bandeau precedent/suivant (nav.pgr) : les regles claires posees jadis visaient
   .pgr-t et .pgr-dir, deux classes qui n'existent pas dans ce balisage — les vraies
   sont .ttl et .dir. Le titre restait blanc sur carte claire (1,15:1). */
html.et-plight .pgr .ttl:not(#_):not(#__),html.et-jlight .pgr .ttl:not(#_):not(#__){color:#10161F!important}
html.et-plight .pgr .dir:not(#_):not(#__),html.et-jlight .pgr .dir:not(#_):not(#__){color:#6B500F!important}

/* 3. Filtres de la boutique : seule la puce active (fond dore) avait une encre claire ;
   les puces inactives gardaient l'encre du theme sombre sur fond creme (1,24:1). */
html.et-plight .chip:not(.on):not(#_):not(#__){color:#2A3648!important;border-color:rgba(26,35,48,.28)!important}
html.et-plight .chip:not(.on):hover:not(#_):not(#__){color:#10161F!important;border-color:rgba(26,35,48,.5)!important}

/* 4. Boutique : la barre de segments (.seg) souffrait du meme mal que les puces de
   categorie — seule l'option active avait une encre claire, les autres restaient en
   encre de theme sombre sur creme (1,3:1). */
html.et-plight .seg button:not(.on):not(#_):not(#__){color:#2A3648!important;border-color:rgba(26,35,48,.28)!important}
html.et-plight .seg button:not(.on):hover:not(#_):not(#__){color:#10161F!important;border-color:rgba(26,35,48,.5)!important}

/* ===== Ch235 : voile de lisibilite du heros de page (header.pghero) =================
   Le voile vertical existant part de rgba(14,22,38,.24) en haut. Sur les photos a ciel
   clair (raffinerie de jour, entrepot, station), le fil d'Ariane et le surtitre tombent
   a 2,0:1 et le titre a 2,84:1 — mesure sur les pixels de glyphe reellement peints,
   ombre portee comprise, pas sur la valeur CSS. Defaut present dans les DEUX themes.
   On ajoute un voile horizontal ancre du cote du texte : la photo garde sa presence a
   droite, la colonne de texte gagne un fond. z-index -1 : le voile passe au-dessus de
   l'image de fond de l'element mais reste sous le contenu en flux. */
header.pghero:not(#_){position:relative}
/* Le crochet est ::before, pas ::after : s_fa541870c6.css reserve deja ::after au filet
   dore de 1 px en haut du heros (height:1px) — un voile pose la est ecrase a un trait.
   Recette reprise du precedent pose sur pole-enerchimie-en (isolation + z-index -1),
   generalisee aux deux themes puisque le defaut existe dans les deux. */
header.pghero:not(#_){isolation:isolate}
header.pghero:not(#_)::before{content:'';position:absolute;inset:0;pointer-events:none;z-index:-1;
  opacity:1!important;filter:none!important;
  background:linear-gradient(90deg,rgba(6,11,20,.72) 0%,rgba(6,11,20,.58) 38%,rgba(6,11,20,.26) 68%,rgba(6,11,20,.06) 100%),
             linear-gradient(180deg,rgba(6,11,20,.34) 0%,rgba(6,11,20,.10) 42%,rgba(6,11,20,.30) 100%)}
/* le fil d'Ariane du heros avait recu text-shadow:none — c'est justement lui qui portait
   sa lisibilite sur photo. On la lui rend. */
header.pghero .bcrumb span:not(#_),header.pghero .bcrumb a:not(#_),
header.pghero .crumb span:not(#_),header.pghero .crumb a:not(#_){text-shadow:0 1px 10px rgba(0,0,0,.65)!important}

/* ===== Ch238 : les tuiles restees hors du verre rejoignent la famille =================
   Constat mesure avant travaux : la famille de 80 classes du bloc tuiles-immersion (ch.141)
   est bien vitree partout — fond transparent, lavis, flou d'arriere-plan, filet fin. Mais
   dix classes qui sont visuellement des tuiles n'y avaient jamais ete inscrites et gardaient
   un fond plein : cartes de comparaison, indicateurs de heros et de projets, cartes contact,
   cartes d'application. (Les .hpcard de l'accueil ont ete ecartees a la contre-epreuve :
   ce sont des boutons d'appel a l'action colores, pas des tuiles — voir MAINTENANCE ch.238.) On leur applique LES MEMES valeurs que
   la famille, pas un second systeme : harmoniser, c'est rejoindre l'existant. */
html:where([data-eh~=eh10]):not(.ehz) :is(.cmp-c,.ppj-kpi,.pgh-kpi,.fp-card,.ct-card,.dx-card,.epw-card,.app-card,.app-panel):not(#_):not(#__):not(#___):not(#____){
  background-color:transparent!important;
  background-image:linear-gradient(180deg,rgba(252,250,246,.56) 0%,rgba(252,250,246,.40) 100%)!important;
  border-color:rgba(26,35,48,.12)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.55) inset,0 20px 40px -30px rgba(30,24,10,.42)!important;
  -webkit-backdrop-filter:blur(18px) saturate(1.35)!important;backdrop-filter:blur(18px) saturate(1.35)!important}
html:not(.et-plight):not(.et-jlight):where([data-eh~=eh10]):not(.ehz) :is(.cmp-c,.ppj-kpi,.pgh-kpi,.fp-card,.ct-card,.dx-card,.epw-card,.app-card,.app-panel):not(#_):not(#__):not(#___):not(#____){
  background-image:linear-gradient(180deg,rgba(9,15,27,.66) 0%,rgba(9,15,27,.54) 100%)!important;
  border-color:rgba(255,255,255,.15)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.08) inset,0 22px 46px -30px rgba(0,0,0,.6)!important}
/* le texte secondaire de ces tuiles suit la meme regle d'eclaircissement que la famille */
html:not(.et-plight):not(.et-jlight):where([data-eh~=eh10]):not(.ehz) :is(.cmp-c,.ppj-kpi,.pgh-kpi,.fp-card,.ct-card,.dx-card,.epw-card,.app-card,.app-panel) :is(p,li,dd,span):not(#_):not(#__):not(#___):not(#____){
  color:#D9E2EE!important;-webkit-text-fill-color:#D9E2EE!important}
@media print{ :is(.cmp-c,.ppj-kpi,.pgh-kpi,.fp-card,.ct-card,.dx-card,.epw-card,.app-card,.app-panel):not(#_):not(#__):not(#___):not(#____){background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;border-color:#bbb!important} }

/* Ch238 : etiquettes de la carte reseau (texte SVG). En theme clair, leur encre restait
   celle du theme sombre — blanc a 78 % sur une carte pale, 2,74:1 : les points s'affichaient,
   pas les noms de villes. Defaut jamais vu jusqu'ici parce que le banc de mesure lisait
   color et non fill sur le texte SVG ; l'angle mort est comble au meme chapitre. */
html.et-plight .avnet-lab:not(#_):not(#__),html.et-jlight .avnet-lab:not(#_):not(#__){fill:#25314A!important;color:#25314A!important}


/* Ch238 : les indicateurs du heros (.pgh-kpi) sont poses sur la photo, pas sur une section.
   Le verre clair de la famille n'y suffit pas : blanc gras mesure a 2,7:1 sur les zones
   claires de l'image — defaut anterieur (deja signale au ch.234) que le passage au verre
   rendait systematique. Ils gardent le verre, mais teinte nuit dans les deux themes,
   comme le heros lui-meme qui reste photographique en clair comme en sombre. */
header.pghero :is(.pgh-kpi):not(#_):not(#__):not(#___):not(#____):not(#_____),
html.et-plight header.pghero :is(.pgh-kpi):not(#_):not(#__):not(#___):not(#____):not(#_____),
html.et-jlight header.pghero :is(.pgh-kpi):not(#_):not(#__):not(#___):not(#____):not(#_____){
  background-color:transparent!important;
  background-image:linear-gradient(180deg,rgba(9,15,27,.64) 0%,rgba(9,15,27,.52) 100%)!important;
  border-color:rgba(255,255,255,.20)!important}

/* ============================ Chapitre 239 ============================
   Revue de contraste au banc exact : encre lue dans la feuille de style, sol lu au
   pixel sur la capture, opacite de chaque pixel de glyphe mesuree par difference
   blanc/noir. 21 810 elements passes en revue sur 160 pages et deux themes.
   Les correctifs ci-dessous traitent les familles ou le texte tombait sous 3:1. */

/* 239.1 — Bandeau de tete des carnets. Le voile valait 24 % en haut : sur une photo
   claire (feuillage, casque orange, ciel), le retour, le selecteur de langue et la
   marque tombaient entre 1,75 et 2,55 pour 1. Le voile est pose en ::before pour ne
   pas se battre avec le raccourci background des pages, qui est en !important. */
header.jtop:not(#_){isolation:isolate}
header.jtop:not(#_)::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;
  opacity:1!important;filter:none!important;
  background:linear-gradient(180deg,rgba(6,11,20,.60) 0%,rgba(6,11,20,.54) 100%)}

/* 239.2 — Rail de sections. Le libelle de la section active restait ouvert en
   permanence, large de 340 px : mesure a 1180, 1280, 1366, 1440 et 1600 px, la
   pastille recouvrait le texte de l'article a chaque fois. L'etat actif se lit
   toujours a la pastille et a sa couleur ; le libelle ne s'ouvre plus qu'au survol
   ou au clavier. */
#secrail a.on:not(:hover):not(:focus-visible) .axl:not(#_):not(#__){max-width:0!important;opacity:0!important;margin-left:0!important}

/* 239.3 — Panneaux de verre poses sur la photo du heros. Le verre laissait passer un
   ciel clair : « Vous etes... », « Trajectoire de capital », les sous-titres de
   l'echelle et les intitules du fil de chantiers se mesuraient entre 1,01 et 1,51.
   Le verre est conserve ; c'est ce qui le traverse qui est assombri, plus une encre
   claire et un halo pour affranchir ces libelles du hasard de l'image. */
.hero .router:not(#_):not(#__),.hero aside.snap:not(#_):not(#__),.hero /* Les deux jumeaux divergeaient : le fil anglais avait un fond nuit, le francais un
   verre blanc a 55 %. L'encre claire posee au 239.9 devenait illisible sur le francais
   (2,59). Les deux reprennent le fond nuit de la version anglaise — parite retablie. */
#chantiers-nav:not(#_):not(#__){
  background-color:transparent!important;
  background-image:linear-gradient(180deg,rgba(10,16,28,.93) 0%,rgba(10,16,28,.86) 100%)!important;
  border-color:rgba(255,255,255,.16)!important;
  -webkit-backdrop-filter:blur(10px) saturate(1.2) brightness(.42)!important;
  backdrop-filter:blur(10px) saturate(1.2) brightness(.42)!important}
.hero .router-h:not(#_):not(#__),.hero .snap-h:not(#_):not(#__),
.hero .ladder .step i:not(#_):not(#__),.hero #chantiers-nav .cn-lbl:not(#_):not(#__){
  color:#DCE6F4!important;-webkit-text-fill-color:#DCE6F4!important;
  text-shadow:0 1px 2px rgba(4,8,16,.95),0 0 10px rgba(4,8,16,.8)!important}

/* 239.4 — Plancher de lisibilite pour la famille de verre du ch.238. Une tuile posee
   sur une photo heritait du contraste de l'image : encre claire sur zone claire en
   sombre, encre foncee sur zone foncee en clair. On ne change ni la teinte ni la
   transparence : on tonalise ce que le verre laisse passer, vers la nuit en theme
   sombre, vers le jour en theme clair. La photo reste lisible derriere. */
html:not(.et-plight):not(.et-jlight):where([data-eh~=eh10]):not(.ehz) :is(.cmp-c,.ppj-kpi,.pgh-kpi,.fp-card,.ct-card,.dx-card,.epw-card,.app-card,.app-panel):not(#_):not(#__):not(#___):not(#____){
  -webkit-backdrop-filter:blur(18px) saturate(1.35) brightness(.5)!important;
  backdrop-filter:blur(18px) saturate(1.35) brightness(.5)!important}
html:is(.et-plight,.et-jlight):where([data-eh~=eh10]):not(.ehz) :is(.cmp-c,.ppj-kpi,.fp-card,.ct-card,.dx-card,.epw-card,.app-card,.app-panel):not(#_):not(#__):not(#___):not(#____){
  -webkit-backdrop-filter:blur(18px) saturate(1.15) brightness(1.5)!important;
  backdrop-filter:blur(18px) saturate(1.15) brightness(1.5)!important}

/* 239.5 — Chiffres a degrade de la brochure. Le motif clip sur le texte etait pale ;
   pose sur le fond creme du theme clair, « 250 kb/d » se mesurait a 1,00 pour 1 —
   litteralement invisible. En theme clair les chiffres reprennent une encre pleine. */
html:is(.et-plight,.et-jlight) .bx233:not(#_):not(#__){
  background-image:none!important;-webkit-background-clip:border-box!important;background-clip:border-box!important;
  color:#7A570E!important;-webkit-text-fill-color:#7A570E!important}

/* 239.6 — Renforcements poses dans une bande sombre. La regle generale du theme clair
   (b,strong,h1,h2,h3 en #10161F) frappait aussi le texte des bandeaux restes nuit :
   « le format » se mesurait a 1,21 sur paiements-etats. */
html:is(.et-plight,.et-jlight) .pgh-main .pgl strong:not(#_):not(#__),
html:is(.et-plight,.et-jlight) .pgh-main .pgl b:not(#_):not(#__){
  color:#F2C879!important;-webkit-text-fill-color:#F2C879!important}

/* 239.7 — Deux encres bleues trop sombres pour le fond nuit qui les porte :
   le numero des cartes ESG (#1B4E8C sur #0D1423) et le sur-titre de section de
   societe.html (#5AA7F0 sur une photo de sable). */
html:not(.et-plight):not(.et-jlight) .esg-card .v:not(#_):not(#__){color:#5AA7F0!important}
html:not(.et-plight):not(.et-jlight) .sk:not(#_):not(#__){color:#9CC7F6!important;text-shadow:0 1px 2px rgba(4,8,16,.9),0 0 10px rgba(4,8,16,.7)!important}

/* 239.8 — correction de ma propre erreur, posee quelques minutes plus tot dans ce meme
   chapitre : la regle .sk ci-dessus etait ecrite sans condition de theme. Un bleu clair
   pose sur le creme du theme clair : 1,27 pour 1 sur ar.html, la ou il n'y avait aucun
   defaut avant mon passage. Elle est desormais reservee au theme sombre. Rappel utile :
   une encre claire ne se pose jamais sans dire sur quel fond. */

/* 239.9 — Fil de chantiers de projets.html. Le selecteur du 239.3 le cherchait dans le
   heros ; il vit en realite dans .pjwrap. Intitules et liens restaient a 1,22 et 1,40. */
/* Les deux jumeaux divergeaient : le fil anglais avait un fond nuit, le francais un
   verre blanc a 55 %. L'encre claire posee au 239.9 devenait illisible sur le francais
   (2,59). Les deux reprennent le fond nuit de la version anglaise — parite retablie. */
#chantiers-nav:not(#_):not(#__){
  background-color:transparent!important;
  background-image:linear-gradient(180deg,rgba(10,16,28,.93) 0%,rgba(10,16,28,.86) 100%)!important;
  border-color:rgba(255,255,255,.16)!important;
  -webkit-backdrop-filter:blur(10px) saturate(1.2) brightness(.42)!important;
  backdrop-filter:blur(10px) saturate(1.2) brightness(.42)!important}
#chantiers-nav .cn-lbl:not(#_):not(#__){color:#DCE6F4!important;-webkit-text-fill-color:#DCE6F4!important;
  text-shadow:0 1px 2px rgba(4,8,16,.95),0 0 10px rgba(4,8,16,.8)!important}
#chantiers-nav a:not(#_):not(#__){color:#F2F6FC!important;-webkit-text-fill-color:#F2F6FC!important;
  text-shadow:0 1px 2px rgba(4,8,16,.9)!important}

/* 239.10 — Le lien du chapeau de la FAQ, or fonce sur une texture de sable : 1,10 avant
   le renfort du voile, 1,68 apres. L'or clair du theme sombre, avec halo, le porte au-dela
   du seuil sans changer la couleur de la marque. */
.hero .lead a:not(#_):not(#__){color:#F0CE82!important;-webkit-text-fill-color:#F0CE82!important;
  text-shadow:0 1px 2px rgba(4,8,16,.92),0 0 10px rgba(4,8,16,.75)!important;
  text-decoration-color:rgba(240,206,130,.6)!important}

/* 239.11 — Tuiles .gtt-c du pole GreenTech : meme verre que la famille du ch.238 mais
   jamais inscrites dedans. En theme clair, le vert d'accent tombait a 2,31 sur la photo. */
.gtt-c:not(#_):not(#__){
  -webkit-backdrop-filter:blur(18px) saturate(1.2) brightness(.5)!important;
  backdrop-filter:blur(18px) saturate(1.2) brightness(.5)!important}
.gtt-c em:not(#_):not(#__),.gtt-c span:not(#_):not(#__),.gtt-c p:not(#_):not(#__){
  color:#8FE9C4!important;-webkit-text-fill-color:#8FE9C4!important}

/* ============================ Chapitre 241 ============================
   Etalonnage des encres restees dans la bande 3,0-4,5 apres le ch.239. Aucune n'etait
   invisible ; toutes passaient sous le seuil AA pour du petit texte. Les valeurs
   ci-dessous visent 6:1 sur leur fond habituel, marge prise pour les fonds tramés. */

/* 241.1 — signature de la marque dans la barre, theme clair (4,25) */
html:is(.et-plight,.et-jlight) .nav .brand-tx small:not(#_):not(#__):not(#___),
html:is(.et-plight,.et-jlight) .nav-in .brand-tx small:not(#_):not(#__):not(#___){color:#39424F!important}

/* 241.2 — etiquette de partage (3,81) */
html:is(.et-plight,.et-jlight) .share-k:not(#_):not(#__):not(#___){color:#454F62!important}

/* 241.3 — sens de pagination des communiques et de la FAQ (3,88) */
html:is(.et-plight,.et-jlight) .pgr .dir:not(#_):not(#__):not(#___){color:#55400C!important}

/* 241.4 — note ESG et liens bleus des sections en theme sombre (3,53) */
html:not(.et-plight):not(.et-jlight) .esg-note a:not(#_):not(#__):not(#___),
html:not(.et-plight):not(.et-jlight) .epw a:not(#_):not(#__):not(#___){color:#9CC7F6!important}

/* 241.5 — intitules des cartes ESG en theme sombre (3,82) */
html:not(.et-plight):not(.et-jlight) .esg-card .k:not(#_):not(#__):not(#___){color:#A7B4C8!important}

/* 241.6 — vert des etiquettes de norme en theme sombre (3,70) */
html:not(.et-plight):not(.et-jlight) .tag b:not(#_):not(#__):not(#___){color:#8FE9C4!important}

/* 241.7 — bleu des liens de section en theme clair (3,27 sur la boutique) */
html:is(.et-plight,.et-jlight) body > section a:not(#_):not(#__):not(#___){color:#10406F!important}

/* 241.8 — sur-titre rose des cartes de la brochure (4,35 clair / 4,41 sombre).
   Premiere tentative fautive, corrigee ici : j'avais fonce le rose pour le theme clair
   sans verifier le fond. Ces cartes restent nuit dans les deux themes — le rose fonce y
   est tombe a 1,78, bien pire que le defaut d'origine. Meme erreur qu'au 239.7 : une
   encre ne se choisit pas sans regarder ce qu'il y a derriere. Rose clair partout. */
html .adx .eyebrow:not(#_):not(#__):not(#___){color:#E9A8D4!important}

/* 241.9 — liens or du corps de page en theme clair (3,89 sur carrieres) */
html:is(.et-plight,.et-jlight) main a:not(#_):not(#__):not(#___)[style*="gold"],
html:is(.et-plight,.et-jlight) .pgl a:not(#_):not(#__):not(#___),
html:is(.et-plight,.et-jlight) main p a:not(#_):not(#__):not(#___){color:#5E4409!important}

/* 241.10 — etiquettes sourdes sur fond nuit : sur-titres de suite, partage et legendes
   de tableau restaient entre 3,35 et 4,03 avec l'encre --muted. */
html:not(.et-plight):not(.et-jlight) :is(.pmore-k,.share-k,caption,.esg-sub):not(#_):not(#__):not(#___){color:#AEBBCF!important}

/* 241.11 — derniers ecarts de la bande, releves un a un : lien d'alerte des carrieres,
   sous-titre HSE, liens bleus de paragraphe et vert des etiquettes, tous entre 3,89 et
   4,29 — sous le seuil pour du petit texte, jamais illisibles. */
html:is(.et-plight,.et-jlight) .b111-note a:not(#_):not(#__):not(#___){color:#4F3A08!important}
html:not(.et-plight):not(.et-jlight) .esg-hse .esg-sub:not(#_):not(#__):not(#___){color:#C6D2E4!important}
html:not(.et-plight):not(.et-jlight) main p a:not(#_):not(#__):not(#___){color:#9CC7F6!important}
html:not(.et-plight):not(.et-jlight) .tag b:not(#_):not(#__):not(#___){color:#B4F2D8!important}

/* 241.12 — deux reliquats qui resistaient a une specificite de trois : le lien d'alerte
   des carrieres, servi par une regle de page, et les mentions en petit du theme clair. */
html:is(.et-plight,.et-jlight) .b111-note a:not(#_):not(#__):not(#___):not(#____):not(#_____){color:#4F3A08!important}
html:is(.et-plight,.et-jlight) small:not(#_):not(#__):not(#___):not(#____){color:#454F62!important}

/* ====================================================================
   242 — Le bandeau precedent/suivant devient une regle commune.
   Le balisage nav.pgr existait sur trente-six pages, mais sa mise en forme
   vivait dans un bloc <style> recopie page par page. Cinq pages anglaises
   portaient le balisage sans le style : le bandeau s'y affichait en liens
   nus de dix-neuf pixels de haut, colles l'un a l'autre. On pose donc la
   regle ici, une fois, pour toutes les pages qui chargent cette feuille.
   Aucun !important : les pages qui gardent leur bloc en ligne continuent
   de gagner, avec des declarations identiques. */
.pgr{display:flex;gap:14px;flex-wrap:wrap;max-width:1180px;margin:0 auto;padding:38px 24px;border-top:1px solid var(--hair)}
.pgr a{flex:1 1 220px;display:flex;flex-direction:column;gap:4px;padding:16px 18px;border:1px solid var(--hair);border-radius:14px;text-decoration:none;color:inherit;background:rgba(255,255,255,.03);transition:border-color .25s,background .25s,transform .25s}
.pgr a:hover{border-color:color-mix(in srgb,var(--gold-l) 48%,var(--hair));background:rgba(255,255,255,.06);transform:translateY(-2px)}
.pgr .dir{font-family:ui-monospace,monospace;font-size:0.6875rem;letter-spacing:.07em;text-transform:uppercase;color:var(--gold-l)}
.pgr .ttl{font-weight:600;font-size:1rem;color:#fff}
.pgr .home{flex:0 0 150px;align-items:center;justify-content:center;text-align:center}
.pgr .next{text-align:right;align-items:flex-end}
@media(max-width:640px){.pgr a{flex:1 1 100%}.pgr .next{text-align:left;align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.pgr a{transition:none}.pgr a:hover{transform:none}}

/* ====================================================================
   247 — La signature de la barre, lisible en theme sombre.
   « Acces aux Energies », 9,3 px sous la marque, se peignait en #8C9AB0 sur le
   verre bleute de la barre : 4,01 a 4,44 selon la page, mesure au banc sur six
   ecrans (le pire sol releve est un gris-bleu a 44,48,57, le plus traitre le
   bleu de la barre marketing a 23,60,91). L'encre passe a #A8B4C7 : 5,45 au
   pire sol mesure, 6 a 9 ailleurs. Les themes clairs gardent leur #4A5668,
   servi par des regles a cinq crans qui restent au-dessus de celle-ci. */
html:not(.et-plight):not(.et-jlight) .brand-tx small:not(#_):not(#__):not(#___){color:#A8B4C7!important}

/* Ch257 - anneau de focus par defaut, specificite nulle */
:where(a,button,[role="button"],[tabindex],select,summary):focus-visible{outline:2px solid var(--etfv,#E8C36A);outline-offset:2px}html.et-plight{--etfv:#74570B}html.et-jlight{--etfv:#74570B}

/* Ch257 - toTop invisible ne doit pas etre tabulable */
#toTop{visibility:hidden;transition:opacity .35s,transform .35s,box-shadow .35s,visibility .35s}#toTop.show{visibility:visible}
/* Ch319 — WCAG 1.4.1 : dans le corps de texte, un lien ne peut pas se distinguer
   par la seule couleur quand celle-ci n'atteint pas 3:1 avec le texte qui l'entoure.
   Mesure sur les 210 pages : 37 pages concernees, jusqu'au lien exactement de la
   meme couleur que sa phrase. Les liens de corps portent donc un souligne discret ;
   les liens habilles d'une classe (boutons, puces, cartes) ne sont pas touches. */
:is(p,li,dd) a:not([class]):not(#_):not(#__){text-decoration:underline;text-underline-offset:.18em;
  text-decoration-thickness:.055em;text-decoration-color:color-mix(in srgb,currentColor 42%,transparent)}
:is(p,li,dd) a:not([class]):not(#_):not(#__):hover{text-decoration-color:currentColor}

/* Ch319 (theme clair) — quelques feuilles de page annulent le souligne des liens
   de corps ; on le retablit pour eux seuls, sans toucher aux liens habilles. */
html.et-plight :is(p,li,dd) a:not([class]):not(#_):not(#__){text-decoration:underline!important;
  text-underline-offset:.18em;text-decoration-thickness:.055em;
  text-decoration-color:color-mix(in srgb,currentColor 42%,transparent)}

/* Ch321 (theme clair) - le pied de page aplatit TOUS ses liens en !important
   (regle "html.et-plight footer a" heritee), ce qui defait aussi le souligne
   des liens en ligne dans un paragraphe. On le retablit pour ces seuls liens
   nus, avec une specificite superieure (WCAG 1.4.1). */
html.et-plight footer :is(p,li,dd) a:not([class]):not(#e1):not(#e2):not(#e3):not(#e4):not(#e5):not(#e6){
  text-decoration:underline!important;text-underline-offset:.18em!important;
  text-decoration-thickness:.055em!important;
  text-decoration-color:color-mix(in srgb,currentColor 55%,transparent)!important}

/* Ch322 : les curseurs (input[type=range]) etaient pris dans deux regles ecrites
   pour les champs de texte.
   (1) Cible : la garantie de 28 px du chapitre 219 etait enfermee dans
       @media(pointer:coarse) ; a la souris la piste ne mesurait que 7 px de haut.
       Sur la pile de curseurs de l'estimateur volumetrique, l'exception
       d'espacement de WCAG 2.5.8 ne joue pas (voisins a moins de 24 px).
   (2) Focus : "input:focus-visible{outline:none!important}" remplace l'anneau
       par une bordure doree et une lueur — invisible sur un curseur, qui n'a pas
       de bordure. Au clavier, le curseur focalise ne se distinguait plus du tout
       (WCAG 2.4.7). Mesure : 15/255 d'ecart au maximum entre focalise et non
       focalise, sur un halo creme. */
input[type=range]:not(#_):not(#__){min-height:28px;padding-block:10.5px;background-clip:content-box}
input[type=range]:not(#_):not(#__):focus-visible{
  outline:2px solid var(--etfv,#E8C36A)!important;
  outline-offset:3px!important;
  box-shadow:none!important}

/* Ch322 : la note d'echelle de l'estimateur volumetrique (« ~ 9,5 ans au rythme
   de production national ») est injectee par script comme TROISIEME enfant d'une
   rangee flex en space-between. Elle ecrasait « Recuperable » contre sa valeur et
   renvoyait l'unite « Mbbl » a la ligne suivante, sur les deux atlas et les deux
   brochures, a toutes les largeurs. On la fait passer a la ligne, sous le chiffre. */
:is(div,p,section):has(>#st-scale){flex-wrap:wrap}
#st-scale:not(#_):not(#__){flex:1 0 100%;width:100%;margin-top:10px;
  font-size:.74rem;line-height:1.5;text-align:left;color:rgba(245,247,250,.62)}
html.et-plight #st-scale:not(#_):not(#__){color:rgba(26,35,48,.66)}

/* Ch322 : la pastille active du sommaire lateral porte son propre fond bleu
   (.toc-in a.active) ; la regle de theme clair qui repeint TOUS les liens du
   sommaire a la meme specificite passait par-dessus et ramenait le texte a
   rgba(20,32,50,.78) sur ce bleu — 4,29:1, sous le seuil de 4,5. Meme piege
   que celui du chapitre 318 : un element qui porte son fond doit etre exclu
   des repeintures de theme. */
html.et-plight .toc-in a.active:not(#_):not(#__),
html.et-jlight .toc-in a.active:not(#_):not(#__){color:#08111F}
/* Ch323 — 1. Le minimum automatique d'un element de grille vaut son min-content :
   un enfant indivisible (bouton insecable, champ, mot long) fait grossir la piste
   au-dela de la fenetre, et le contenu sort de l'ecran sans que la page defile. */
.ep-models>*,.ms-usecases>*,.prod-synth>*,.modref-grid>*,.client-grid>*,.tech-grid>*,.prod-b2b>*,
.truck-grid>*,.carbon-grid>*,.regime-grid>*,.rd-axes>*,.chain-grid>*,.fin-grid>*,.appfeat-grid>*,
.maint-grid>*,.taskforce-grid>*,.htech-grid>*,.buy-grid>*,.univ-grid>*,.hub-grid>*,.recomp-grid>*,
.welltype-grid>*,.bit-grid>*,.viz-grid>*,.vc-grid>*,.gt-grid>*,.flotte-grid>*,.compare-grid>*,
.pole-grid>*,.plc-grid>*,.biz-grid>*,.ppt-grid>*,.pof-grid>*,.sb-grid>*,.ttg-g>*,.hxi-grid>*,
.ce-grid>*,.zk-grid>*,.hnews-grid>*,.pipe-ops>*,.profiles>*,.ckpis>*,.steps>*,.fx2g>*,
.cli-deep>*,.vb-grid>*,.mkt-brands>*{min-width:0}
/* la grille ESG des brochures imbrique grille dans flex : le plancher doit tomber a chaque etage */
.esg3-grid,.esg3-grid *{min-width:0}
.esg3-grid :where(li,p,strong,span){overflow-wrap:break-word}
/* 2. un bouton insecable ne doit jamais depasser son conteneur */
.btn:not(#_):not(#__){max-width:100%}
@media(max-width:1040px){.btn,.fcta{white-space:normal!important}}
@media(max-width:760px){
  /* 3. les mots trop longs se coupent au lieu de sortir de la boite */
  body :where(p,li,dd,dt,h1,h2,h3,h4,h5,h6,span,strong,b,em,td,th,label,figcaption,a,div){overflow-wrap:break-word}
  /* 4. un tableau large defile dans sa propre boite au lieu de pousser la page */
  :where(article,.jbody,main) table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
}

/* Ch323 — 5. Accordeon du pied de page sur telephone : un script enveloppe le
   titre dans un <button> a padding nul, pose au milieu d'un h3 qui, lui, porte
   30 px de marge interne. Seule la bande centrale de 12 a 20 px etait donc
   tactile, et le « + » a droite, dessine par le h3, ne repondait pas du tout.
   On deplace la marge interne sur le bouton : la ligne entiere devient la cible. */
@media(max-width:760px){
  footer .foot-grid .foot-col>h3:not(#_):not(#__){padding:0!important}
  footer .foot-grid .foot-col>h3>button:not(#_):not(#__){
    display:block;width:100%;text-align:start;
    padding:15px 26px 15px 0!important;margin:0!important;min-height:50px}
}

/* Ch323 — 6. Deux gardes de lisibilite et de gene sur telephone.
   La signature sous le logo tombait a 9,6 px, le plus petit texte du site.
   Et sur ar.html le bouton de theme se posait sous le variateur de luminosite
   (chevauchement de 42 x 22 px), donc a moitie inatteignable. */
@media(max-width:470px){
  .brand-tx small:not(#_):not(#__){font-size:11px!important;letter-spacing:.06em!important}
}
@media(max-width:720px){
  body:where([data-eh~=eh8]):not(.ehz) #plightBtn:not(#_):not(#__){bottom:150px}
}

/* Ch323 — 7. Le courriel et le telephone du pied de page sont les deux liens
   qu'on touche le plus depuis un telephone : ils mesuraient 18 px de haut,
   marge interne comprise. On les porte a 44 px. */
@media(max-width:760px){
  footer .foot-col a[href^="mailto:"]:not(#_),footer .foot-col a[href^="tel:"]:not(#_){
    display:flex!important;align-items:center;min-height:44px;padding:8px 0!important}
}

/* Ch324 : sur neuf pages anglaises, la feuille qui sort le preloader du flux
   n'etait pas chargee : le voile occupait 178 px en haut de page, puis
   disparaissait vers 4,3 s en tirant tout le contenu vers le haut. Saut de
   mise en page mesure a 0,22-0,23 sur telephone bride. Le voile est un
   element de couverture : sa place est hors flux, partout. */
#preloader:not(#_):not(#__){position:fixed;inset:0;z-index:9999;pointer-events:none}
/* et le voile doit s'effacer des que le script le marque « done » : sans cette
   regle il restait opaque une seconde et demie par-dessus la page. */
#preloader.done:not(#_):not(#__){opacity:0;visibility:hidden;transition:opacity .5s ease,visibility .5s}

/* Ch332 : les pastilles de pole du pied de page tiraient leur teinte des
   variables de theme de chaque page — quatre familles de feuilles, quatre
   resolutions : l'Aval n'avait aucune pastille sur 87 pages (variable
   absente, repli sur la couleur du texte), le vert de GreenTech existait en
   trois nuances, l'or d'Amont en deux. Une seule teinte par pole, partout,
   adressee par le lien (l'!important est necessaire : l'accent est pose en
   style en ligne dans le gabarit). Pastille decorative : memes valeurs dans
   les deux themes. */
footer .foot-pole[href^="/amont"],footer .foot-pole[href^="/pole-amont"]{--pc:#E8C36A!important}
footer .foot-pole[href^="/intermediaire"],footer .foot-pole[href^="/pole-intermediaire"]{--pc:#5AA7F0!important}
footer .foot-pole[href^="/aval"],footer .foot-pole[href^="/pole-aval"]{--pc:#F09A4A!important}
footer .foot-pole[href^="/petrochimie"],footer .foot-pole[href^="/pole-enerchimie"]{--pc:#D177B4!important}
footer .foot-pole[href^="/greentech"],footer .foot-pole[href^="/pole-greentech"]{--pc:#34D399!important}
footer .foot-pole[href^="/tchaditech"],footer .foot-pole[href^="/pole-tchaditech"]{--pc:#96A2EC!important}
footer .foot-pole[href^="/tchaditude"],footer .foot-pole[href^="/pole-tchaditude"]{--pc:#C4B5FD!important}
footer .foot-pole[href^="/enerconseils"],footer .foot-pole[href^="/pole-enerconseils"]{--pc:#1FA496!important}

/* Ch333 : les messages d'erreur du formulaire de contact (.ct-err, role=alert)
   restaient rouges en theme sombre mais viraient au bleu nuit en theme clair —
   la repeinture de theme passait dessus. Un message d'erreur doit rester un
   message d'erreur : rouge sombre lisible sur fond creme (6,3:1). */
html.et-plight .ct-err:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5):not(#e6),
html.et-jlight .ct-err:not(#e1):not(#e2):not(#e3):not(#e4):not(#e5):not(#e6){color:#B42318!important}

/* Ch349 : a l'impression, le chrome d'ecran a position fixe (bandeau cookies,
   rail de traversee, retour accueil, bascule de theme) se repetait sur chaque
   page imprimee. */
@media print{#ckn:not(#e1):not(#e2):not(#e3),#aurail:not(#e1):not(#e2):not(#e3),#homeFab:not(#e1):not(#e2):not(#e3),#plightBtn:not(#e1):not(#e2):not(#e3),#jlightBtn:not(#e1):not(#e2):not(#e3),#toTop:not(#e1):not(#e2):not(#e3),#toTop-fix:not(#e1):not(#e2):not(#e3){display:none!important}}

/* ==== Ch364 - couche premium site-wide : halo dore statique (pages a decor rootland), ombres feuilletees des cartes, filet d'or du pied de page, pilule nav active doree. Les accueils portent leur propre couche (lux360) et ne chargent pas ce bundle. ==== */
html:not(.et-plight):not(.et-jlight):where([data-eh~=eh10]):not(.ehz) body:not(#e1)::after{
 content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:1;
 background:
  radial-gradient(44% 36% at 79% 6%, rgba(232,195,106,.16), transparent 62%),
  radial-gradient(34% 30% at 9% 34%, rgba(232,195,106,.09), transparent 60%),
  radial-gradient(52% 44% at 50% 100%, rgba(90,167,240,.11), transparent 66%),
  radial-gradient(1px 1px at 20% 30%, rgba(255,255,255,.10), transparent),
  radial-gradient(1px 1px at 70% 60%, rgba(255,255,255,.08), transparent),
  radial-gradient(1px 1px at 88% 42%, rgba(255,255,255,.07), transparent)}
html:not(.et-plight):not(.et-jlight) :where(.card,[class*="-card"],.kpi,.hpcard,.esg-card,.sb-card):not(#e1):not(#e2){box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 1px 1px rgba(0,0,0,.22), 0 24px 54px -24px rgba(0,0,0,.62)!important}
html:not(.et-plight):not(.et-jlight) :where(.card,[class*="-card"],.kpi,.hpcard,.esg-card,.sb-card):not(#e1):not(#e2):hover{box-shadow:inset 0 1px 0 rgba(255,255,255,.10), 0 2px 6px rgba(0,0,0,.26), 0 30px 64px -26px rgba(0,0,0,.72)!important}
footer:not(#e1):not(#e2){position:relative}
footer:not(#e1):not(#e2)::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;z-index:1;background:linear-gradient(90deg,transparent,rgba(232,195,106,.5),transparent)}
html.et-plight footer:not(#e1):not(#e2)::before,html.et-jlight footer:not(#e1):not(#e2)::before{background:linear-gradient(90deg,transparent,rgba(138,106,18,.42),transparent)}
html:not(.et-plight):not(.et-jlight) .nav-trigger.is-active:not(#e1):not(#e2){color:#F0CE82!important;-webkit-text-fill-color:#F0CE82!important}
@media (prefers-reduced-transparency:reduce){html:not(.et-plight):not(.et-jlight):where([data-eh~=eh10]):not(.ehz) body:not(#e1)::after{background:none!important}}
@media print{html:not(.et-plight):not(.et-jlight):where([data-eh~=eh10]):not(.ehz) body:not(#e1)::after{background:none!important}footer:not(#e1):not(#e2)::before{display:none}}

/* Ch386 - impression : fond de page blanc, la toile photo fixe ne s imprime pas */
@media print{
 html:not(#e1):not(#e2):not(#e3),html:not(#e1):not(#e2):not(#e3) body{background:#fff!important;color-scheme:light!important}
 .rootland:not(#e1):not(#e2):not(#e3){display:none!important;background:none!important}
 body:not(#e1):not(#e2)::before,body:not(#e1):not(#e2)::after{display:none!important}
 header.jtop:not(#e1):not(#e2):not(#e3){background:#fff!important;border-bottom:1px solid #ccc}
 header.jtop:not(#e1):not(#e2):not(#e3) a{color:#111!important;text-shadow:none!important}
}

/* Ch531 - la colonne chaine & capacites (8 pastilles) etait plus dense que ses voisines : deux colonnes. */
footer .foot-poles:not(#_){display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;justify-items:start}
