/* D-SLS — thème éditorial « 2050 » appliqué à tout le site (chargé en dernier) */
:root{--font-display:'Space Grotesk',system-ui,sans-serif;--font-mono:'JetBrains Mono',ui-monospace,monospace;--radius:0px}
html[lang=ar]{--font-display:'Cairo','Space Grotesk',system-ui,sans-serif}
:root:not([data-theme=day]){--bg:#33383e;--panel:#3b4147;--panel-solid:#3b4147;--glass:#3b4147;--glass-line:rgba(255,255,255,.08);--line:rgba(255,255,255,.09);--line-soft:rgba(255,255,255,.06);--txt:#EEF3F8;--muted:#8a9aab}
:root:not([data-theme=day]) body{background:#33383e}
body::before,body::after,.scanline{display:none!important}
body{-webkit-font-smoothing:antialiased;letter-spacing:.005em}
/* typographie */
h1{font-weight:300;font-size:clamp(38px,5.2vw,74px);line-height:1.04;letter-spacing:-.03em}
h1 em,h1 b,h1 strong{font-weight:600;font-style:normal}
h2{font-weight:300;font-size:clamp(28px,3.3vw,46px);line-height:1.08;letter-spacing:-.022em}
h2 em,h2 b,h2 strong{font-weight:600;font-style:normal}
h3{letter-spacing:-.01em}
.lead{color:#aab6c2;line-height:1.65}
:root[data-theme=day] .lead{color:#4a5a6e}
.eyebrow,.p-kicker{font-family:var(--font-mono);font-size:11px;letter-spacing:.28em;color:var(--light)!important;display:inline-flex;align-items:center;gap:14px}
.eyebrow::before{content:"";width:28px;height:1px;background:currentColor;flex:none}
section{padding:clamp(64px,8vw,120px) 0}
.sec-head{margin-bottom:clamp(30px,4vw,52px)}
/* boutons */
.btn{border-radius:0!important;padding:14px 24px;font-weight:500;letter-spacing:.03em;background:transparent;border:1px solid rgba(255,255,255,.22);box-shadow:none!important;transition:background .3s,border-color .3s,color .3s}
:root[data-theme=day] .btn{border-color:rgba(0,0,0,.2)}
.btn:hover{border-color:#fff;color:#fff;background:rgba(255,255,255,.04)}
:root[data-theme=day] .btn:hover{border-color:#000;color:#000}
.btn.primary{background:var(--light)!important;border-color:var(--light)!important;color:#111!important;filter:none!important}
.btn.primary:hover{background:#ffb44a!important;border-color:#ffb44a!important}
.btn.ghost{border-color:transparent;text-decoration:underline;text-underline-offset:5px}
/* cartes, tuiles, panneaux : sobres, angles vifs, filets fins */
.card,.tile,.panelbox,.catv-card,.layer,.r-card,.pp-card,.info-card,.dl,.f-visual,.p-visual,.quality,.refbox,.cat-card,.fam-tile,.post,.pp-kpi,.pw-ctl,.pw-out,.faq details{
 border-radius:0!important;clip-path:none!important;backdrop-filter:none!important;box-shadow:none!important}
:root:not([data-theme=day]) :is(.card,.tile,.panelbox,.catv-card,.layer,.r-card,.pp-card,.info-card,.dl,.f-visual,.p-visual,.quality,.refbox,.cat-card,.post,.pp-kpi,.faq details){background:#3b4147!important;border:1px solid rgba(255,255,255,.08)!important}
.card::before,.tile::before,.catv-card::before,.card::after,.tile::after,.layer::before{display:none!important}
:is(.card,.tile,.catv-card,.cat-card,.post,.pp-card,.layer):hover{transform:translateY(-4px);border-color:rgba(243,156,27,.5)!important}
.tile h3 svg{background:none!important;padding:0!important;color:var(--light)}
.card .model::before{content:none!important}
.chip,.pill,.cat-chip{border-radius:0!important}
.cat-dl,.lang-tab,.sh-btn,.v5-tb{border-radius:0!important}
input,select,textarea{border-radius:0!important}
/* chiffres */
.r-card b,.sc-kpi b,.stat b,.pp-kpi b{font-weight:300!important;letter-spacing:-.02em}
/* en-tête */
:root:not([data-theme=day]) .topbar{background:rgba(44,49,54,.92)!important;backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.07)}
:root:not([data-theme=day]) .utilbar{background:#33383e;border-bottom:1px solid rgba(255,255,255,.05)}
.brand-name{letter-spacing:.06em}
.menu>li>a,.menu>li>button{letter-spacing:.02em;font-weight:500}
/* pied de page */
:root:not([data-theme=day]) footer{background:#33383e!important;border-top:1px solid rgba(255,255,255,.08)}
footer h4,footer .f-title{font-family:var(--font-mono);letter-spacing:.2em}
/* FAQ */
.faq summary{padding:20px 22px;font-weight:500;font-size:16px}
.faq details p{padding:0 22px 20px}
/* tableaux */
.pp-table th{font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;font-weight:500}
.pp-table td,.pp-table th{border-color:rgba(255,255,255,.07)!important}
/* liens fléchés */
.link-arrow{letter-spacing:.06em}
/* respiration des grilles */
.cards,.tiles{gap:18px!important}
/* chaîne technologique : une seule couleur d'accent */
.layer{--lc:var(--light)!important}
.layer-num{background:transparent!important;color:var(--light)!important;border-inline-end:1px solid rgba(255,255,255,.08);font-weight:300!important}
.layer-h span{color:var(--light)!important;background:none!important}
.cat-dl.read{background:transparent!important;color:var(--light)!important;border:1px solid var(--light)!important}
.cat-dl.read svg{color:var(--light)!important}
.cat-dl.read:hover{background:var(--light)!important;color:#111!important}
.cat-dl.read:hover svg{color:#111!important}
.subnav-chips a,.subnav-chips button{border-radius:0!important}
/* scène produit photographique (remplace les illustrations dessinées) */
.t50-st{position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;isolation:isolate;
 background:radial-gradient(55% 45% at 50% 92%,rgba(243,156,27,.16),transparent 70%),radial-gradient(70% 70% at 50% 40%,#0d1420,#05080e 75%)}
.t50-st::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:40px 40px;-webkit-mask:radial-gradient(70% 70% at 50% 60%,#000,transparent);mask:radial-gradient(70% 70% at 50% 60%,#000,transparent)}
.t50-st img{position:absolute!important;left:50%;bottom:11%;width:auto!important;max-width:62%!important;height:76%!important;object-fit:contain;transform:translateX(-50%);border-radius:0!important;filter:drop-shadow(0 26px 30px rgba(0,0,0,.65));transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.t50-r{position:absolute;left:50%;bottom:7%;width:46%;height:9%;transform:translateX(-50%);border-radius:50%;border:1px solid rgba(243,156,27,.45);box-shadow:0 0 30px rgba(243,156,27,.18)}
.t50-r.r2{width:30%;height:5.5%;bottom:9%;border-color:rgba(255,255,255,.14);box-shadow:none}
.t50-st.sc::after{content:"";position:absolute;left:20%;right:20%;height:1px;top:10%;background:linear-gradient(90deg,transparent,rgba(79,243,255,.9),transparent);box-shadow:0 0 14px rgba(79,243,255,.7);animation:t50sc 4.5s ease-in-out infinite}
@keyframes t50sc{0%,100%{top:12%;opacity:0}15%,85%{opacity:1}50%{top:84%}}
:is(.proj-card,.p-visual,.f-visual,.product,.mppt-visual):hover .t50-st img{transform:translateX(-50%) translateY(-6px) scale(1.03)}
.p-visual,.f-visual{padding:0!important;overflow:hidden}
/* réalisations : image au-dessus, texte dessous */
.proj-card{aspect-ratio:auto!important;display:flex;flex-direction:column;background:#3b4147;border:1px solid rgba(255,255,255,.08)!important;border-radius:0!important;box-shadow:none!important}
.proj-card::after{display:none!important}
.proj-body{position:relative!important;padding:20px 22px 24px!important;border-top:1px solid rgba(255,255,255,.07)}
.proj-body h3{font-weight:500;font-size:19px;letter-spacing:-.01em;margin:6px 0 6px}
.proj-body p{color:var(--muted);font-size:14px}
.proj-tag{background:none!important;color:var(--light)!important;border-radius:0!important;padding:0!important;font-weight:500!important;letter-spacing:.2em;text-transform:uppercase}
.proj-filter{border-radius:0!important}
.proj-card:hover{border-color:rgba(243,156,27,.5)!important}
.mppt-visual,.mppt-plat-vis{background:none!important;border:0!important}
@media (prefers-reduced-motion:reduce){.t50-st.sc::after{animation:none}}
/* cartes « histoire / principes » : accent unique */
[style*="--lc"]{--lc:var(--light)!important}
.story-card{border-radius:0!important;background:#3b4147!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:none!important;border-top:1px solid rgba(255,255,255,.08)!important}
.story-card::before,.story-card::after{display:none!important}
.story-card:hover{border-color:rgba(243,156,27,.5)!important}
.story-ico{background:none!important;border:1px solid rgba(243,156,27,.35)!important;border-radius:0!important;color:var(--light)!important}
.story-ico svg{color:var(--light)!important;stroke:currentColor}
/* ouverture immédiate des pages : pas d'écran de chargement ni de fondu */
#preloader{display:none!important}
::view-transition-old(root),::view-transition-new(root){animation:none!important}
main.leave,main.enter,.leave,.enter{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}
/* logo officiel D-SLS (médaillon) */
.brand-logo{width:40px;height:40px;flex:none;border-radius:50%;object-fit:cover;box-shadow:0 0 0 1px rgba(243,156,27,.35),0 0 22px rgba(243,156,27,.28);transition:box-shadow .4s,transform .6s cubic-bezier(.2,.7,.2,1)}
.brand:hover .brand-logo{transform:rotate(-8deg) scale(1.06);box-shadow:0 0 0 1px rgba(243,156,27,.7),0 0 30px rgba(243,156,27,.5)}
footer .brand-logo{width:56px;height:56px}footer .brand{align-items:center}@media (min-width:900px){.topbar .brand-sub{white-space:nowrap}}
@media (max-width:700px){.brand-logo{width:38px;height:38px}footer .brand-logo{width:60px;height:60px}}
/* sceau de marque — accueil */
.t50-seal{position:relative;z-index:1;overflow:hidden;border-top:1px solid rgba(255,255,255,.07);background:radial-gradient(45% 70% at 25% 50%,rgba(243,156,27,.12),transparent 70%),#33383e}
.t50-seal-in{display:grid;grid-template-columns:minmax(220px,380px) 1fr;gap:clamp(30px,6vw,90px);align-items:center}
.t50-medal{position:relative;aspect-ratio:1;display:grid;place-items:center}
.t50-medal img{position:relative;width:82%;height:auto;border-radius:50%;box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 60px rgba(243,156,27,.25);animation:t50fl 7s ease-in-out infinite}
.t50-orb{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(243,156,27,.35);border-top-color:rgba(255,200,120,.95);animation:t50rot 14s linear infinite}
.t50-orb.o2{inset:6%;border-color:rgba(255,255,255,.08);border-bottom-color:rgba(243,156,27,.7);animation-duration:22s;animation-direction:reverse}
.t50-seal-tx h2{margin:18px 0 16px}.t50-seal-tx .lead{max-width:560px;margin-bottom:28px}
@keyframes t50rot{to{transform:rotate(360deg)}}@keyframes t50fl{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@media (max-width:800px){.t50-seal-in{grid-template-columns:1fr;text-align:center}.t50-medal{max-width:260px;margin:0 auto}.t50-seal-tx .lead{margin-inline:auto}.t50-seal .eyebrow::before{display:none}.t50-seal .eyebrow{letter-spacing:.2em}}
@media (prefers-reduced-motion:reduce){.t50-orb,.t50-medal img{animation:none}}
/* page Produits 2050 : panneaux harmonisés — verre sombre, angles nets, coins HUD (plus de coupes en biais) */
.v5 .v5-fr,.v5 .v5-hcin{clip-path:none!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:3px;background:linear-gradient(180deg,rgba(14,22,34,.78),rgba(4,7,13,.86))!important;backdrop-filter:blur(14px) saturate(130%);box-shadow:0 24px 60px rgba(0,0,0,.45),inset 0 1px 0 rgba(255,255,255,.05)}
.v5 .v5-fr::before{width:auto!important;inset-inline:0!important;height:1px!important;background:linear-gradient(90deg,transparent,var(--c) 30%,var(--light) 70%,transparent)!important;box-shadow:0 0 14px rgba(79,243,255,.55)!important;opacity:.9}
.v5 .v5-fr::after,.v5 .v5-hcin::after{content:"";position:absolute;inset:-1px;pointer-events:none;border-radius:3px;
 background:linear-gradient(var(--c),var(--c)) top left/14px 1px,linear-gradient(var(--c),var(--c)) top left/1px 14px,
 linear-gradient(var(--light),var(--light)) bottom right/14px 1px,linear-gradient(var(--light),var(--light)) bottom right/1px 14px;background-repeat:no-repeat;opacity:.9}
.v5 .v5-go{clip-path:none!important;border-radius:2px;background:transparent!important;color:var(--c)!important;border:1px solid rgba(79,243,255,.55);font-family:'JetBrains Mono',monospace!important;font-weight:600;letter-spacing:.2em;position:relative;overflow:hidden}
.v5 .v5-go::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(79,243,255,.18),transparent);transform:translateX(-100%);animation:v5sw 3.2s ease-in-out infinite}
.v5 .v5-go:hover{background:var(--c)!important;color:#02060c!important;box-shadow:0 0 28px rgba(79,243,255,.45)}
@keyframes v5sw{60%,100%{transform:translateX(100%)}}
.v5 .v5-nav button{clip-path:none!important;border-radius:50%;border-color:rgba(255,255,255,.16)!important;background:rgba(51,56,62,.8)!important;backdrop-filter:blur(8px)}
.v5 .v5-nav button:hover{border-color:var(--c)!important;box-shadow:0 0 18px rgba(79,243,255,.35)}
.v5 .v5-nm{font-family:'Space Grotesk',sans-serif!important;font-weight:600!important;letter-spacing:-.02em!important;text-shadow:0 0 30px rgba(79,243,255,.25)!important}
.v5 .v5-kpi .bar{height:2px;border-radius:2px}
.v5 .v5-hcin:hover{border-color:rgba(79,243,255,.45)!important}
@media (prefers-reduced-motion:reduce){.v5 .v5-go::before{animation:none}}
/* en-tête et pied : le médaillon remplace le mot « D-SLS » */
.brand .brand-name,.brand .brand-name+br{display:none!important}
.brand .brand-logo{width:48px;height:48px}
@media (max-width:700px){.brand .brand-logo{width:42px;height:42px}}
footer .brand .brand-logo{width:64px;height:64px}
.topbar .brand-sub{white-space:normal!important;display:block!important;max-width:150px;font-size:9px;line-height:1.55;letter-spacing:.16em}
@media (max-width:700px){.topbar .brand-sub{max-width:120px;font-size:8px}}
footer .brand-sub{display:block!important;max-width:170px;line-height:1.6;white-space:normal!important}footer .brand>span{display:flex;align-items:center}
/* barre de chargement lors du passage à une autre page */
html.nav-ld::after{content:"";position:fixed;top:0;left:0;height:3px;width:100%;z-index:2147483647;background:linear-gradient(90deg,transparent,#F39C1B,#4ff3ff,transparent);background-size:50% 100%;background-repeat:no-repeat;animation:navld 1s linear infinite;box-shadow:0 0 12px rgba(243,156,27,.8)}
html.nav-ld body{cursor:progress}
@keyframes navld{0%{background-position:-50% 0}100%{background-position:150% 0}}
.t50-anc{display:block;height:0;scroll-margin-top:120px}
.t50-flash{animation:t50fl2 2.2s ease-out}
@keyframes t50fl2{0%,30%{box-shadow:0 0 0 2px var(--light),0 0 40px rgba(243,156,27,.55)}100%{box-shadow:0 0 0 0 transparent}}
html{scroll-padding-top:125px}
/* mode nuit : gris mat (#33383E) au lieu du noir */
:root:not([data-theme=day]) :is(.v5,.v5-hero,.ld,.hx,.pz.pz-man,.pz.pz-col,.pz.pz-ref,.pz.pz-std,.pz.pz-cta){background-color:#33383e!important}
:root:not([data-theme=day]) :is(.pz.pz-flag,.pz.pz-sys,.pz.pz-geo){background-color:#2e3338!important}
:root:not([data-theme=day]) .band{background:#2e3338!important}
:root:not([data-theme=day]) .hx-sky{opacity:.55}
:root:not([data-theme=day]) .pz-card{background:linear-gradient(180deg,#3b4147,#343a40)!important}
:root:not([data-theme=day]) :is(.v5,.v5-hero){background:#33383e!important}
:root:not([data-theme=day]) .v5 .v5-hcin{background:linear-gradient(180deg,rgba(66,72,79,.92),rgba(48,53,58,.95))!important}
:root:not([data-theme=day]) .v5-fr{background:linear-gradient(135deg,rgba(79,243,255,.07),rgba(48,53,58,.85))!important}
:root:not([data-theme=day]) .hx-sky{opacity:1;background:radial-gradient(90% 60% at 70% 30%,rgba(0,184,212,.12),transparent 60%),radial-gradient(60% 40% at 20% 100%,rgba(243,156,27,.12),transparent 70%),linear-gradient(180deg,#3a4046,#33383e)!important}
:root:not([data-theme=day]) .hx-road{background:linear-gradient(180deg,#2c3136,#262a2f)!important}
:root:not([data-theme=day]) :is(.hx-chip,.hx-hud,.ld-panel){background:rgba(51,56,62,.88)!important}
/* ================= SMARTPHONE (≤ 760 px) — en-tête compact, boutons flottants discrets ================= */
@media (max-width:760px){
 html,body{overflow-x:hidden}
 .utilbar{padding:0!important}
 .utilbar .wrap{padding:0 12px!important}
 .utilbar-in{min-height:44px!important;height:44px;padding:0!important;display:flex;align-items:center;justify-content:flex-end;gap:8px}
 .utilbar .lg-orb,.utilbar .ub-links>a{display:none!important}
 .utilbar .ub-links{display:flex!important;align-items:center;gap:8px;margin:0!important;width:100%;justify-content:space-between}
 .utilbar .lgh-btn{height:34px!important;padding:0 10px 0 4px!important;font-size:11px!important}
 .utilbar .lgh-cell{width:26px!important;height:26px!important}
 .utilbar .theme-btn{width:34px!important;height:34px!important}
 .topbar .wrap{padding:0 12px!important}
 .topbar .nav{min-height:58px!important;height:58px;gap:8px}
 .topbar .brand{gap:8px!important;min-width:0}
 .topbar .brand-logo{width:40px!important;height:40px!important}
 .topbar .brand-sub{font-size:8.5px!important;letter-spacing:.18em!important;line-height:1.35!important}
 .topbar .search-box{width:42px!important;min-width:42px!important;height:42px!important;padding:0!important;justify-content:center!important;overflow:hidden}
 .topbar .search-box>span:not(:last-child),.topbar .search-box kbd{display:none!important}
 .topbar .search-box span{font-size:0!important}
 .topbar .search-box svg{width:20px;height:20px}
 .topbar .burger{width:42px!important;height:42px!important;font-size:20px!important}
 /* boutons flottants : petite colonne en bas à droite, hors du contenu */
 #chatfab{width:44px!important;height:44px!important;font-size:19px!important;bottom:calc(14px + env(safe-area-inset-bottom))!important;inset-inline-end:12px!important;box-shadow:0 6px 18px -6px rgba(0,0,0,.6)!important}
 .wa-fab{display:flex!important;height:44px!important;max-width:44px!important;bottom:calc(66px + env(safe-area-inset-bottom))!important;inset-inline-end:12px!important;box-shadow:0 6px 18px -6px rgba(0,0,0,.6)!important}
 .wa-fab svg{width:24px;height:24px;margin:0 10px!important}
 .rail{bottom:calc(118px + env(safe-area-inset-bottom))!important;inset-inline-end:12px!important}
 .rail>button:first-child,.rail .rail-toggle{width:44px!important;height:44px!important}
 /* textes plus confortables */
 .lead,.pp-hero .lead,.hero p{font-size:16px!important;line-height:1.6!important}
 h1{font-size:clamp(28px,8vw,36px)!important;line-height:1.12!important}
 .crumbs,.breadcrumb{font-size:12px!important;white-space:nowrap;overflow-x:auto}
}
/* cadran : vignettes toujours rondes (Safari iPhone) */
.c50-th{height:8.6%!important;aspect-ratio:auto!important}
@media (max-width:760px){.c50-th{width:10.4%!important;height:10.4%!important;margin:-5.2% 0 0 -5.2%!important}.c50-d{width:calc(100vw - 16px)!important;min-width:0!important}}
.menu .m-util{display:none}@media (max-width:1100px){.menu .m-util{display:block}.menu .m-util .mlink{font-size:15px;opacity:.85}}
@media (max-width:760px){.utilbar .lgh-txt{display:inline!important;font-size:11px!important;letter-spacing:.08em}}
@media (max-width:760px){.rail.open .rail-items{animation:railup .28s cubic-bezier(.2,.8,.2,1)}@keyframes railup{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}}
@media (max-width:760px){#chatfab,.wa-fab,.rail{transition:opacity .3s,transform .3s}html.fab-hide #chatfab,html.fab-hide .wa-fab,html.fab-hide .rail:not(.open){opacity:0;transform:translateX(70px);pointer-events:none}}
/* audit 17/10 : titre principal en H1 (SEO) avec l'apparence exacte des titres de section */
h1.h1v{font-size:clamp(28px,3.3vw,46px);font-weight:300;line-height:1.08;letter-spacing:-.022em;margin:10px 0 0;text-transform:none}
h1.h1v em,h1.h1v b,h1.h1v strong{font-weight:600;font-style:normal}
/* audit 17/10 : lisibilité — textes secondaires plus clairs la nuit, plus foncés le jour (contraste WCAG AA ≥ 4,5) */
:root:not([data-theme=day]){--muted:#c2ccd7}
:root[data-theme=day]{--muted:#4d5a6e}
:root:not([data-theme=day]) .legal,:root:not([data-theme=day]) .legal span{color:#b3bfcc!important}
:root[data-theme=day] .legal,:root[data-theme=day] .legal span{color:#4d5a6e!important}
:root[data-theme=day] footer h4,:root[data-theme=day] .pp-kpi b,:root[data-theme=day] .addr a,:root[data-theme=day] .eyebrow,:root[data-theme=day] .kicker{color:#a55800!important}
:root:not([data-theme=day]) .cat-dl.primary.read,:root:not([data-theme=day]) .sh-btn.sh-file span{color:#ffb347!important}
:root[data-theme=day] .pp-card h3,:root[data-theme=day] .layer-num,:root[data-theme=day] .layer-h span,:root[data-theme=day] .cat-dl.primary.read,:root[data-theme=day] .sh-btn.sh-file span,:root[data-theme=day] .pp-sub,:root[data-theme=day] .link-arrow{color:#a55800!important}
:root[data-theme=day] .cfg label,:root[data-theme=day] label,:root[data-theme=day] .cat-chip small{color:#4d5a6e!important;opacity:1!important}
:root:not([data-theme=day]) label,:root:not([data-theme=day]) .cat-chip small{color:#c2ccd7!important;opacity:1!important}
:root:not([data-theme=day]) .layer-num,:root:not([data-theme=day]) .layer-h span{color:#ffb347!important;opacity:1!important}
:root[data-theme=day] .lgo-hint{color:#c9d4df!important}
.cat-chip.active small{color:#1a1206!important}
:root[data-theme=day] label{color:#2f3a4a!important}:root:not([data-theme=day]) label{color:#e2e8ee!important}
:root[data-theme=day] .tile .rec{color:#a55800!important}
:root[data-theme=day] .cat-dl.primary.read,:root[data-theme=day] .sh-btn.sh-file span{color:#8a4700!important}
:root[data-theme=day] .s5in input{color:#eef3f8!important}
:root:root .cat-chip.active small{color:#1a1206!important}
:root[data-theme=day] .layer-num,:root[data-theme=day] .layer-h span{opacity:1!important}
:root[data-theme=day] .dl-note,:root[data-theme=day] .rb-l{color:#4d5a6e!important;opacity:1!important}:root:not([data-theme=day]) .dl-note,:root:not([data-theme=day]) .rb-l{color:#c2ccd7!important;opacity:1!important}
/* accueil : la photo de la ville s'affiche tout de suite (avant les scripts), le canevas animé vient par-dessus */
html body section.c50{background:#05070c url(img/city-bg.webp?v=1) 50% 15%/cover no-repeat!important}
/* accueil plus rapide : les sections hors écran ne sont calculées qu'à l'approche du défilement */
main#page:has(.c50)>section:not(.c50),main#page:has(.c50)>div:not(.c50){content-visibility:auto;contain-intrinsic-size:auto 900px}
footer{content-visibility:auto;contain-intrinsic-size:auto 600px}
