/* ============================================================
   CHARTE GLOBALE — continuité visuelle avec la landing page
   Chargée en dernier sur toutes les pages — 24/08/2026
   ============================================================ */

:root{
  --cs-page:#242521;
  --cs-page-deep:#1f201d;
  --cs-surface:#30312d;
  --cs-surface-2:#363733;
  --cs-surface-3:#3d3e39;
  --cs-text:#f7f5f0;
  --cs-muted:rgba(255,255,255,.86);
  --cs-soft:rgba(255,255,255,.74);
  --cs-line:rgba(255,255,255,.13);
  --cs-line-strong:rgba(199,162,83,.42);
  --cs-brass:#c7a253;
  --cs-gold:#f2c744;
  --cs-yellow:#ffd400;
  --cs-blue:#2563eb;
  --cs-shadow:0 16px 38px rgba(0,0,0,.22);
  --cs-radius:10px;
  --cs-serif:ui-serif,"Iowan Old Style","Palatino Linotype",Georgia,serif;
  --cs-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}

html{color-scheme:dark}
body.fresque-page{
  --fond:var(--cs-surface-2)!important;
  --blanc:var(--cs-page)!important;
  --white:var(--cs-page)!important;
  --indigo-pale:var(--cs-surface-2)!important;
  --indigo-50:var(--cs-surface-2)!important;
  --gray-50:var(--cs-surface-2)!important;
  background-color:var(--cs-page)!important;
  background-image:none!important;
  color:var(--cs-text)!important;
  font-family:var(--cs-sans)!important;
}
body.landing-page{background-image:none!important}
body.fresque-page :is(.hero,.pagehead,.art-hero,.hub-hero){background-image:none!important}
body.fresque-page main{color:var(--cs-text)}
body.fresque-page main :where(h1,h2,h3,h4,h5,h6){color:#fff!important}
body.fresque-page main :where(h1,h2){font-family:var(--cs-serif);letter-spacing:-.025em}
body.fresque-page main h1{font-weight:700}
body.fresque-page main h2{font-weight:700;line-height:1.14}
body.fresque-page main h3{font-weight:750;line-height:1.25}
body.fresque-page main :where(p,li,dd,figcaption,cite,small,label,legend){color:var(--cs-muted)!important}
body.fresque-page main strong{color:#fff}
body.fresque-page main :where(a:not(.cta-btn):not(.btn):not(.btnp):not(.calc-btn)){color:var(--cs-gold)}
body.fresque-page main :where(a:not(.cta-btn):not(.btn):not(.btnp):not(.calc-btn)):hover{color:#ffe16a}
body.fresque-page main :where(a,button,input,select,textarea):focus-visible{outline:3px solid var(--cs-yellow)!important;outline-offset:3px}

/* En-tête statique avant normalisation JavaScript */
body.fresque-page header{background:var(--cs-surface)!important;color:#fff!important;border-color:var(--cs-line)!important}
body.fresque-page header :where(p,span,a){color:inherit}
body.fresque-page header :is(.header-contact,.brand-contact){
  background:var(--cs-surface-2)!important;
  color:#fff!important;
  border-color:var(--cs-line)!important;
  box-shadow:none!important;
}
body.fresque-page header :is(.header-contact,.brand-contact) a{color:#fff!important}
body.fresque-page header :is(.header-contact,.brand-contact) a[href^="tel:"]{color:var(--cs-yellow)!important}
body.fresque-page :is(nav.mn-nav,nav.mainnav){background:var(--cs-surface)!important;border-color:var(--cs-line)!important}
body.fresque-page header .bg-indigo-800\/70{background:var(--cs-surface-2)!important;color:#fff!important}
body.fresque-page header .header-contact a[href^="tel:"],
body.fresque-page header p.text-yellow-200 a[href^="tel:"],
body.landing-page header .brand-contact-phone a{
  font-size:1.16rem!important;
  font-weight:800!important;
  letter-spacing:.025em;
}
/* Sécurité contre toute ancienne version du script ou du balisage :
   le numéro de l'en-tête ne doit jamais être précédé d'un pictogramme. */
header .cs-header-phone :is(img,svg),
header .brand-contact-phone :is(img,svg),
header .header-contact > div:has(a[href^="tel:"]) img,
header p:has(a[href^="tel:"]) > img{
  display:none!important;
}

/* Fil d’Ariane */
body.fresque-page main > .bg-gray-50,
body.fresque-page .breadcrumb{
  background:#292a26!important;
  color:var(--cs-soft)!important;
  border-color:var(--cs-line)!important;
}
body.fresque-page main > .bg-gray-50 a,
body.fresque-page .breadcrumb a{color:var(--cs-gold)!important}
body.fresque-page main > .bg-gray-50 span,
body.fresque-page .breadcrumb span{color:rgba(255,255,255,.74)!important}

/* Héros des pages intérieures, articles et hubs */
body.fresque-page :is(.pagehead,.art-hero,.hub-hero){
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 84% 20%,rgba(199,162,83,.13),transparent 31%),
    linear-gradient(145deg,#2b2c28 0%,#242521 68%,#1f201d 100%)!important;
  color:#fff!important;
  border-bottom:1px solid var(--cs-line)!important;
}
body.fresque-page :is(.pagehead,.art-hero,.hub-hero):before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:96px 100%;
  opacity:.28;
}
body.fresque-page :is(.pagehead,.art-hero,.hub-hero)>*{position:relative;z-index:1}
body.fresque-page .pagehead{padding:64px 0 68px!important}
body.fresque-page :is(.art-hero,.hub-hero){padding:58px 0 62px!important}
body.fresque-page :is(.pagehead,.art-hero,.hub-hero) h1{
  max-width:22ch;
  margin:0;
  color:#fff!important;
  font-family:var(--cs-serif)!important;
  font-size:clamp(2.25rem,4vw,3.65rem)!important;
  line-height:1.06!important;
  letter-spacing:-.038em!important;
  text-wrap:balance;
}
body.fresque-page :is(.pagehead,.art-hero,.hub-hero) h1 .hero-keyword{
  color:#fff;
  text-decoration-line:underline;
  text-decoration-color:var(--cs-yellow);
  text-decoration-thickness:.09em;
  text-underline-offset:.13em;
  text-decoration-skip-ink:auto;
}
body.fresque-page :is(.pagehead,.art-hero,.hub-hero) h1 .hero-current-event{
  color:#fff;
  font-weight:inherit;
  text-decoration:none;
}
body.fresque-page :is(.pagehead,.art-hero,.hub-hero) :is(.lede,.art-meta){
  max-width:62ch;
  margin-top:20px;
  color:rgba(255,255,255,.88)!important;
  font-size:clamp(1rem,1.4vw,1.12rem);
  line-height:1.66;
}
body.fresque-page :is(.pagehead,.art-hero,.hub-hero) .lede{
  padding-left:18px;
  border-left:2px solid var(--cs-brass);
  text-wrap:pretty;
}
body.fresque-page :is(.eyebrow,.guide-label){
  color:#e7cc91!important;
  font-weight:850!important;
  letter-spacing:.13em!important;
  text-transform:uppercase;
}
body.fresque-page :is(.pagehead,.art-hero,.hub-hero) .eyebrow{
  display:flex!important;
  align-items:center;
  gap:10px;
  width:max-content;
  margin-bottom:17px!important;
  padding:0!important;
  background:transparent!important;
  border-radius:0!important;
}
body.fresque-page :is(.pagehead,.art-hero,.hub-hero) .eyebrow:before{
  content:"";
  width:32px;
  height:1px;
  background:var(--cs-brass);
}

/* Rythme des contenus */
body.fresque-page main>section,
body.fresque-page main>.section{background:transparent!important;border-color:var(--cs-line)!important}
body.fresque-page main section>.container{
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
}
body.fresque-page main>section.alt,
body.fresque-page main>.alt{background:rgba(255,255,255,.025)!important}
body.fresque-page .section-head{margin-bottom:34px}
body.fresque-page .section-head h2{font-size:clamp(1.85rem,3.2vw,2.75rem)}
body.fresque-page .section-head p{color:var(--cs-muted)!important}
body.fresque-page .container,
body.fresque-page .wrap{max-width:1120px}

/* Neutralisation des anciennes surfaces claires */
body.fresque-page :is(.bg-white,.bg-gray-50){background-color:var(--cs-surface)!important}
body.fresque-page :is(.text-gray-900,.text-gray-700,.text-gray-500,.text-gray-400){color:var(--cs-muted)!important}
body.fresque-page :is(.border-gray-100,.border-gray-200,.border-gray-300){border-color:var(--cs-line)!important}

/* Garde-fous de contraste pour les anciens blocs clairs en style inline */
body.fresque-page main :is(
  [style*="background:#f9fafb"],[style*="background: #f9fafb"],
  [style*="background:#f8fafc"],[style*="background: #f8fafc"],
  [style*="background:var(--indigo-50)"],[style*="background: var(--indigo-50)"]
){
  background:var(--cs-surface-2)!important;
  color:var(--cs-text)!important;
  border-color:var(--cs-line)!important;
}
body.fresque-page main :is(
  [style*="background:#f9fafb"],[style*="background: #f9fafb"],
  [style*="background:#f8fafc"],[style*="background: #f8fafc"],
  [style*="background:var(--indigo-50)"],[style*="background: var(--indigo-50)"]
) :where(h2,h3,h4,strong){color:#fff!important}
body.fresque-page main :is(
  [style*="background:#f9fafb"],[style*="background: #f9fafb"],
  [style*="background:#f8fafc"],[style*="background: #f8fafc"],
  [style*="background:var(--indigo-50)"],[style*="background: var(--indigo-50)"]
) :where(p,li,span,small){color:var(--cs-muted)!important}

/* Cartes et encadrés */
body.fresque-page :is(
  .card,.pillar-card,.testimonial,.guide-card,.guide-situation,.guide-answer,.juris-card,.card-publie,
  .judgment,.jugement,.lire-aussi,.enbref,.a-retenir,.sommaire,.notice,
  .pullquote,.encadre-loi,.results-summary,.transactional-intent-hub,
  .coverage-card,.before-consolidation-card,.calc-step,.calc-law-card,
  .trust-item,.ctaband,.cta-band,.deja-publie,.a-paraitre
){
  background:var(--cs-surface-2)!important;
  color:var(--cs-text)!important;
  border:1px solid var(--cs-line)!important;
  border-radius:var(--cs-radius)!important;
  box-shadow:var(--cs-shadow)!important;
}
body.fresque-page :is(
  .card,.pillar-card,.testimonial,.guide-card,.guide-situation,.guide-answer,.juris-card,.card-publie,
  .judgment,.jugement,.lire-aussi,.enbref,.a-retenir,.sommaire,.notice,
  .pullquote,.encadre-loi,.results-summary,.transactional-intent-hub,
  .coverage-card,.before-consolidation-card,.calc-step,.calc-law-card,
  .trust-item,.ctaband,.cta-band,.deja-publie,.a-paraitre
) :where(p,li,small){color:var(--cs-muted)!important}
body.fresque-page :is(.card,.guide-card,.juris-card,.card-publie):hover{
  transform:translateY(-2px)!important;
  border-color:rgba(199,162,83,.52)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.3)!important;
}
body.fresque-page .tagzone .tags a{
  background:var(--cs-surface-2)!important;
  color:var(--cs-gold)!important;
  border-color:var(--cs-line)!important;
}
body.fresque-page .icon-box{background:#f2e7d4!important;border-radius:50%!important}
body.fresque-page :is(.tag,.date,.ref){color:#e7cc91!important;background:rgba(199,162,83,.11)!important;border-color:rgba(199,162,83,.35)!important}

/* Articles longs : surface sombre lisible */
body.fresque-page :is(.art-body,article.legal-article){
  background:var(--cs-surface)!important;
  color:var(--cs-text)!important;
  border:1px solid var(--cs-line)!important;
  border-radius:12px!important;
  box-shadow:var(--cs-shadow)!important;
}
body.fresque-page .art-body{margin-top:34px!important;margin-bottom:44px!important;padding:clamp(26px,4.5vw,52px)!important}
body.fresque-page :is(.art-body,article.legal-article) :where(p,li,blockquote){color:rgba(255,255,255,.88)!important}
body.fresque-page :is(.art-body,article.legal-article) :where(h2,h3){color:#fff!important}
body.fresque-page :is(.art-body,article.legal-article) hr{border-color:var(--cs-line)!important}

/* FAQ */
body.fresque-page :is(.faq-item,.faq details,details.guide-answer){
  overflow:hidden;
  background:var(--cs-surface-2)!important;
  color:var(--cs-text)!important;
  border:1px solid var(--cs-line)!important;
  border-radius:var(--cs-radius)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.14)!important;
}
body.fresque-page :is(.faq-item,.faq details,details.guide-answer) summary{
  color:#fff!important;
  background:transparent!important;
  font-weight:800!important;
}
body.fresque-page :is(.faq-item,.faq details,details.guide-answer)[open] summary{
  color:var(--cs-gold)!important;
  border-bottom:1px solid var(--cs-line)!important;
}
body.fresque-page :is(.faq-item,.faq details,details.guide-answer) p{color:var(--cs-muted)!important}

/* Tableaux */
body.fresque-page table{
  width:100%;
  overflow:hidden;
  background:var(--cs-surface)!important;
  color:var(--cs-text)!important;
  border:1px solid var(--cs-line)!important;
  border-radius:var(--cs-radius);
  box-shadow:0 10px 26px rgba(0,0,0,.16);
}
body.fresque-page :is(th,td){border-color:var(--cs-line)!important}
body.fresque-page th{background:rgba(199,162,83,.13)!important;color:#fff!important}
body.fresque-page td{background:transparent!important;color:var(--cs-muted)!important}
body.fresque-page tr:nth-child(even) td{background:rgba(255,255,255,.025)!important}

/* Listes comparatives historiques (.ledger) : les couleurs d'origine
   étaient prévues pour un fond clair et devenaient illisibles avec la
   nouvelle charte sombre, notamment sur la page À propos. */
body.fresque-page main .ledger{
  overflow:hidden;
  background:var(--cs-surface-2)!important;
  color:var(--cs-text)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:var(--cs-radius)!important;
  box-shadow:0 10px 26px rgba(0,0,0,.16)!important;
}
body.fresque-page main .ledger-row{
  gap:20px;
  background:transparent!important;
  border-color:rgba(255,255,255,.22)!important;
}
body.fresque-page main .ledger-row:nth-child(even){background:rgba(255,255,255,.025)!important}
body.fresque-page main .ledger-row span:first-child{
  color:rgba(255,255,255,.9)!important;
}
body.fresque-page main .ledger-row span:last-child{
  color:#f7d774!important;
  font-weight:750!important;
  text-align:right;
}

/* Formulaires et calculateur */
body.fresque-page :is(input,select,textarea){
  background:#252622!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.2)!important;
  border-radius:8px!important;
}
body.fresque-page :is(input,textarea)::placeholder{color:rgba(255,255,255,.68)!important}
body.fresque-page :is(.calc-shell,.calc-panel,.calc-field,.calc-choice,.calc-results,.calc-detection){
  background:var(--cs-surface-2)!important;
  color:var(--cs-text)!important;
  border-color:var(--cs-line)!important;
}
body.fresque-page .calc-choice span{color:var(--cs-muted)!important}

/* Boutons et actions */
body.fresque-page :is(.cta-btn,.btn,.btnp,.btn-jaune,.calc-btn,.header-cta){
  border-radius:8px!important;
  font-weight:800!important;
  text-decoration:none!important;
}
body.fresque-page :is(.cta-btn,.btn,.btnp,.btn-jaune,.calc-btn):not(.ghost):not(.secondary):not(.link){
  background:var(--cs-yellow)!important;
  color:#171813!important;
  border-color:var(--cs-yellow)!important;
  box-shadow:0 8px 22px rgba(255,212,0,.16)!important;
}
body.fresque-page :is(.cta-btn,.btn,.btnp,.calc-btn).ghost,
body.fresque-page :is(.btn-ghost,.calc-btn.secondary,.calc-btn.link){
  background:transparent!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.38)!important;
  box-shadow:none!important;
}
body.fresque-page :is(.cta-btn,.btn,.btnp,.btn-jaune,.calc-btn):hover{filter:brightness(1.06)}

/* Résultats, chiffres et étapes */
body.fresque-page :is(.amount,.chiffre){color:var(--cs-gold)!important;font-family:var(--cs-serif)}
body.fresque-page .step{background:transparent!important;color:var(--cs-text)!important}
body.fresque-page .num{background:var(--cs-blue)!important;color:#fff!important}
body.fresque-page .results{border-color:var(--cs-line)!important}

/* Hub Actualités */
body.fresque-page.hub-page :is(.une,.actu-card,.article-card){
  background:var(--cs-surface-2)!important;
  color:var(--cs-text)!important;
  border-color:var(--cs-line)!important;
  border-radius:var(--cs-radius)!important;
  box-shadow:var(--cs-shadow)!important;
}
body.fresque-page.hub-page :is(.une,.actu-card,.article-card) :where(p,small){color:var(--cs-muted)!important}

/* Guides, sommaires et encadrés éditoriaux */
body.fresque-page :is(
  .guide-note,.guide-resource,.guide-direct,.guide-toc,.guide-role article,
  .guide-proof,.guide-audit article,.guide-inline-cta,.guide-stage,
  .guide-common,.guide-steps li,.before-consolidation,.consult-now,
  .toc,.midcta,.case-study,.trustband .ti,.juris-latest
){
  background:var(--cs-surface-2)!important;
  color:var(--cs-text)!important;
  border-color:var(--cs-line)!important;
  border-radius:var(--cs-radius)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.15)!important;
}
body.fresque-page :is(.guide-note,.guide-direct,.consult-now,.case-study,.juris-latest){
  border-left:4px solid var(--cs-gold)!important;
}
body.fresque-page :is(.guide-note,.guide-resource,.guide-direct,.guide-toc,.guide-role article,.guide-proof,.guide-audit article,.guide-inline-cta,.guide-stage,.guide-common,.guide-steps li,.before-consolidation,.consult-now,.toc,.midcta,.case-study,.trustband .ti,.juris-latest) :where(p,li,small){
  color:var(--cs-muted)!important;
}
body.fresque-page :is(.guide-note,.guide-resource,.guide-direct,.guide-toc,.guide-role article,.guide-proof,.guide-audit article,.guide-inline-cta,.guide-stage,.guide-common,.before-consolidation,.consult-now,.toc,.midcta,.case-study,.juris-latest) :where(h2,h3,h4,strong){
  color:#fff!important;
}
body.fresque-page :is(.guide-privacy,.guide-caveat,.before-consolidation-note,.legal-source,.hub-meta){color:var(--cs-muted)!important}
body.fresque-page :is(.guide-resource,.guide-stage,.guide-role,.guide-situation) span{color:var(--cs-muted)!important}
body.fresque-page :is(.jugement-tete,.une-tete,.diag-opt){color:var(--cs-text)!important}
body.fresque-page .etapes b{color:#fff!important}
body.fresque-page .guide-path span{
  background:#242521!important;
  color:#fff!important;
  border-color:var(--cs-line)!important;
}
body.fresque-page .guide-path span::after{background:var(--cs-page)!important}
body.fresque-page :is(.guide-primary,.guide-cta a,.guide-inline-cta a,.before-primary){
  background:var(--cs-yellow)!important;
  color:#171813!important;
  border-color:var(--cs-yellow)!important;
  border-radius:8px!important;
  font-weight:800!important;
  box-shadow:0 8px 22px rgba(255,212,0,.15)!important;
}
body.fresque-page :is(.guide-secondary,.before-secondary,.cta-ghost){
  background:transparent!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.4)!important;
  border-radius:8px!important;
}

/* Articles juridiques et navigation thématique */
body.fresque-page .legal-article .lead{color:var(--cs-muted)!important}
body.fresque-page :is(.legal-answer,.legal-proof,.legal-limit,.article-links a,.hub-card,.topic-nav a,.timeline-example div,.author-box){
  background:var(--cs-surface-2)!important;
  color:var(--cs-text)!important;
  border-color:var(--cs-line)!important;
}
body.fresque-page .legal-answer{border-left:4px solid var(--cs-gold)!important}
body.fresque-page .legal-limit{background:rgba(199,162,83,.1)!important;border-color:rgba(199,162,83,.4)!important}
body.fresque-page :is(.hub-card,.article-links a,.topic-nav a,.timeline-example div){box-shadow:0 8px 22px rgba(0,0,0,.13)}
body.fresque-page .hub-card{border-top:4px solid var(--cs-gold)!important}
body.fresque-page :is(.article-links a,.topic-nav a):hover{border-color:var(--cs-gold)!important;color:var(--cs-gold)!important}

/* Témoignages et contenus cités */
body.fresque-page blockquote:not(.testi-card),
body.fresque-page blockquote[style]{
  background:var(--cs-surface-2)!important;
  color:var(--cs-text)!important;
  border-color:var(--cs-line)!important;
  border-left:4px solid var(--cs-gold)!important;
  border-radius:var(--cs-radius)!important;
}
body.fresque-page blockquote :where(p,cite,small){color:var(--cs-muted)!important}
body.fresque-page blockquote :where(footer,footer span){color:var(--cs-muted)!important}
body.fresque-page #elfsight-consent{
  background:var(--cs-surface-2)!important;
  color:var(--cs-muted)!important;
  border-color:var(--cs-line)!important;
}
body.fresque-page #google-map-consent{
  background:var(--cs-surface-2)!important;
  color:var(--cs-muted)!important;
  border-color:var(--cs-line)!important;
}
body.fresque-page .trustband .ti b,
body.fresque-page :is(.enbref .t,.faq-group,.case-label){color:var(--cs-gold)!important}
body.fresque-page .trustband .ti small{color:var(--cs-muted)!important}

/* Pied de page */
body.fresque-page footer,
body.fresque-page .footer-sitemap{
  background:#1f201d!important;
  color:var(--cs-muted)!important;
  border-color:var(--cs-line)!important;
}
body.fresque-page .footer-sitemap h2,
body.fresque-page .footer-sitemap h3{color:#fff!important;font-family:var(--cs-serif)}
body.fresque-page .footer-sitemap a,
body.fresque-page .footer-nap a{color:rgba(255,255,255,.86)!important}
body.fresque-page .footer-sitemap a:hover,
body.fresque-page .footer-nap a:hover{color:var(--cs-gold)!important}

/* Lisibilité renforcée : corps de texte et informations secondaires */
body.fresque-page main :where(
  p,li,dd,figcaption,cite,small,label,legend,
  .lede,.lead,.small,.muted,.meta,.subtitle,.description
){color:var(--cs-muted)!important}
body.fresque-page main :is(
  [style*="color:#4b5563"],[style*="color: #4b5563"],
  [style*="color:#6b7280"],[style*="color: #6b7280"],
  [style*="color:#6b6a65"],[style*="color: #6b6a65"],
  [style*="color:var(--texte-courant"],[style*="color: var(--texte-courant"]
){color:var(--cs-muted)!important}
body.fresque-page main :where(
  article.art-body,article.legal-article,section>.container
) :where(p,li){line-height:1.72!important}

body.landing-page main :where(p,li){color:rgba(255,255,255,.86)!important}
body.landing-page :is(.brand-contact-item,.hero-sub,.hero-secondary,.sec-intro,
  .silo-card p,.proof-item p,.hp-step p,.cabinet-prose p,.highlight-personal p,
  .stat-card .stat-label,.sec-note,.faq details p,.cta-band .ct,
  .home-kpi span,.early-proof-item span,.cabinet-fact span,
  .gateway-card>p,.gateway-context){color:rgba(255,255,255,.86)!important}
body.landing-page :is(.hero-rating span:last-child,.cabinet-photo figcaption,
  .testi-card .testi-meta,.stat-card .stat-court,.page-updated,
  .actu-card .actu-date,.early-proof-item small){
  color:rgba(255,255,255,.72)!important;
}
body.landing-page .hero-portrait:after{color:rgba(255,255,255,.72)!important}
body.landing-page .cabinet-framed{
  background:#30312d!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.16)!important;
}

/* Correctifs de contraste exhaustifs — anciennes pages et styles embarqués */
body.fresque-page main a[href]:not(.cta-btn):not(.btn):not(.btnp):not(.btn-jaune):not(.calc-btn):not(.header-cta):not(.guide-primary):not(.guide-secondary):not(.before-primary):not(.before-secondary):not(.cta-ghost){
  color:#f7d774!important;
}
body.fresque-page main a[href]:not(.cta-btn):not(.btn):not(.btnp):not(.btn-jaune):not(.calc-btn):not(.header-cta):hover{
  color:#ffe899!important;
}
body.fresque-page main :is(.guide-inline-cta,.guide-cta)>a{
  color:#171813!important;
}
body.fresque-page main :is(.titre,.t,.more,.lire,.ok,.calc-progress-text,figcaption,caption){
  color:var(--cs-muted)!important;
}
body.fresque-page main :is(.sommaire .titre,.a-retenir .titre,.enbref .t,.faq-group,.case-label){
  color:#f7d774!important;
}

body.fresque-page main :is(
  .cocoon-links a,.chiffre,.jugement-tete,.jugement-pied,.une-tete,.une-point,.card-avenir,
  .lire-aussi h2,.guide-label,.diag-opt
){
  background:var(--cs-surface-2)!important;
  color:var(--cs-text)!important;
  border-color:var(--cs-line)!important;
}
body.fresque-page main :is(.jugement-tete,.une-tete){
  border-bottom:1px solid var(--cs-line)!important;
}
body.fresque-page main :is(.jugement-tete,.une-tete) .date,
body.fresque-page main .guide-label{
  color:#f7d774!important;
}
body.fresque-page main .guide-label{background:rgba(199,162,83,.14)!important}
body.fresque-page main .cocoon-links a{
  color:#f7d774!important;
  box-shadow:0 7px 18px rgba(0,0,0,.12)!important;
}
body.fresque-page main .cocoon-links a:hover{border-color:var(--cs-line-strong)!important}

body.fresque-page main .lire-aussi h2{
  color:#fff!important;
  border-bottom:1px solid var(--cs-line)!important;
}
body.fresque-page main .lire-aussi :is(span,p,small){color:var(--cs-muted)!important}
body.fresque-page main .lire-aussi li{border-color:var(--cs-line)!important}

body.fresque-page main :is(.card-publie,.card-avenir,.une-point){
  background:var(--cs-surface-2)!important;
  color:var(--cs-text)!important;
  border-color:var(--cs-line)!important;
}
body.fresque-page main .card-publie .eyebrow{
  background:rgba(199,162,83,.14)!important;
  color:#f7d774!important;
}
body.fresque-page main .card-publie :is(.lire,.more),
body.fresque-page main .card-avenir :is(.lire,.more){color:#f7d774!important}
body.fresque-page main :is(.une-meta,.card-avenir .eyebrow){color:var(--cs-muted)!important}
body.fresque-page main .cta-band .tel{color:#f7d774!important}
body.fresque-page main .cta-band .tel:hover{color:#ffe899!important}

body.fresque-page main table :is(thead,tbody,tfoot,tr),
body.fresque-page main table tr:nth-child(odd),
body.fresque-page main table tr:nth-child(even){
  background:transparent!important;
  color:var(--cs-text)!important;
}
body.fresque-page main table tr:nth-child(even) td{background:rgba(255,255,255,.025)!important}
body.fresque-page main table :is(td,td span,td p){color:var(--cs-muted)!important}
body.fresque-page main table th,
body.fresque-page main table th :is(a,span,strong){
  background:#c7a253!important;
  color:#171813!important;
}
body.fresque-page main :is(#cs-priorite-tableau,table th a[href]){color:#171813!important}
body.fresque-page main :is(#cs-priorite-bouton,.guide-inline-cta a[href],.guide-cta a[href]){color:#171813!important}
body.fresque-page .cs-table-scroll{
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
}
body.fresque-page .cs-table-scroll:focus-visible{
  outline:2px solid var(--cs-yellow);
  outline-offset:4px;
  border-radius:var(--cs-radius);
}

body.fresque-page main :is(
  [style*="background:#eceef3"],[style*="background: #eceef3"],
  [style*="background:#eef2ff"],[style*="background: #eef2ff"],
  [style*="background:#f1f0ed"],[style*="background: #f1f0ed"],
  [style*="background:#f3f4f6"],[style*="background: #f3f4f6"],
  [style*="background:#fff"],[style*="background: #fff"],
  [style*="background:white"],[style*="background: white"]
){
  background:var(--cs-surface-2)!important;
  color:var(--cs-text)!important;
  border-color:var(--cs-line)!important;
}
body.fresque-page main :is(
  [style*="background:#eceef3"],[style*="background: #eceef3"],
  [style*="background:#eef2ff"],[style*="background: #eef2ff"],
  [style*="background:#f1f0ed"],[style*="background: #f1f0ed"],
  [style*="background:#f3f4f6"],[style*="background: #f3f4f6"],
  [style*="background:#fff"],[style*="background: #fff"],
  [style*="background:white"],[style*="background: white"]
) :is(h1,h2,h3,h4,strong){color:#fff!important}
body.fresque-page main :is(
  [style*="background:#eceef3"],[style*="background: #eceef3"],
  [style*="background:#eef2ff"],[style*="background: #eef2ff"],
  [style*="background:#f1f0ed"],[style*="background: #f1f0ed"],
  [style*="background:#f3f4f6"],[style*="background: #f3f4f6"],
  [style*="background:#fff"],[style*="background: #fff"],
  [style*="background:white"],[style*="background: white"]
) :is(p,li,span,small){color:var(--cs-muted)!important}

/* Responsive */
@media(max-width:819px){
  body.fresque-page :is(.pagehead,.art-hero,.hub-hero){padding:42px 0 48px!important}
  body.fresque-page :is(.pagehead,.art-hero,.hub-hero) h1{
    max-width:none;
    font-size:clamp(2rem,8.4vw,2.55rem)!important;
    line-height:1.08!important;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
  }
  body.fresque-page :is(.pagehead,.art-hero,.hub-hero) :is(.lede,.art-meta){font-size:1rem!important;line-height:1.6}
  body.fresque-page :is(.pagehead,.art-hero,.hub-hero) .lede{padding-left:14px}
  body.fresque-page main>section{padding-top:48px!important;padding-bottom:48px!important}
  body.fresque-page .section-head{margin-bottom:25px}
  body.fresque-page .art-body{margin:20px 14px 32px!important;padding:25px 20px!important;border-radius:10px!important}
  body.fresque-page main .ledger-row{
    align-items:flex-start;
    padding:14px 16px!important;
  }
  body.fresque-page main .ledger-row span{
    min-width:0;
    overflow-wrap:anywhere;
  }
  body.fresque-page .cs-table-scroll table{
    display:table!important;
    width:max-content!important;
    min-width:720px!important;
    overflow:visible!important;
  }
  body.fresque-page .cs-table-scroll :is(th,td){min-width:150px;white-space:normal}
  body.fresque-page :is(.card,.guide-card,.guide-situation,.guide-answer,.juris-card,.coverage-card,.before-consolidation-card){padding:21px!important}
}

@media(prefers-reduced-motion:reduce){
  body.fresque-page *,body.fresque-page *:before,body.fresque-page *:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
