/* ============================================================
   LECTURE SUR FOND CLAIR — 15/10/2026
   Les zones de lecture passent sur un fond ivoire ; le cadre reste aux couleurs du logo
   (monogramme LS laiton sur fond anthracite) : bandeau du haut, en-têtes de page,
   héros, bandeaux d'appel et pied de page restent sombres.
   Le laiton clair du logo (#C7A253) sert aux filets et ornements ; sur fond clair,
   le texte et les liens prennent un laiton foncé (#7A5A1F, contraste 6:1) pour rester lisibles.
   Feuille chargée en dernier, après lecture.css.
   ============================================================ */

:root{
  --lc-page:#f7f4ee;      /* ivoire : fond de lecture */
  --lc-card:#ffffff;      /* encadrés */
  --lc-soft:#f1ece2;      /* fonds secondaires */
  --lc-text:#2a2b27;      /* texte courant, anthracite chaud */
  --lc-head:#1f201d;      /* titres : l’anthracite du logo */
  --lc-muted:#55564f;
  --lc-line:rgba(31,32,29,.13);
  --lc-brass:#c7a253;     /* laiton du logo : filets, puces, ornements */
  --lc-brass-ink:#7a5a1f; /* laiton foncé : liens et petites capitales */
}

/* Fonds : page et blocs de contenu, hors cadres sombres
   (.pagehead, .art-hero, .hero-accueil, .ctaband, #cta-final, en-tête du site) */
html body.fresque-page,
html body.fresque-page main,
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final),
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final) :is(section, .container, .wrap, .wrapA):not(.ctaband):not(:is(.pagehead, .art-hero, .hero, .hero-accueil, .ctaband, #cta-final, .cs-landing-brand-header) *){
  background-color:var(--lc-page)!important;background-image:none!important;
}

/* Variables de la charte réaffectées aux zones claires */
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final){
  --cs-page:var(--lc-page);--cs-page-deep:var(--lc-soft);--cs-surface:var(--lc-card);--cs-surface-2:var(--lc-card);--cs-surface-3:var(--lc-soft);
  --cs-text:var(--lc-text);--cs-muted:var(--lc-text);--cs-soft:var(--lc-muted);--cs-line:var(--lc-line);
  --fond:var(--lc-card);--blanc:var(--lc-page);--white:var(--lc-page);--gray-50:var(--lc-card);--indigo-50:var(--lc-card);--indigo-pale:var(--lc-card);
}
/* … sauf dans les cadres sombres qui y sont imbriqués */
html body main :is(.ctaband, .cta-band, .guide-cta, #cta-final, .hero-accueil){
  --cs-page:#242521;--cs-surface:#30312d;--cs-surface-2:#363733;--cs-text:#f7f5f0;--cs-muted:rgba(255,255,255,.86);--cs-soft:rgba(255,255,255,.74);--cs-line:rgba(255,255,255,.13);
}

/* Encadrés, cartes, FAQ, études de cas */
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final) :is(
  .card,.faq-item,details,aside,.lire-aussi,.case-study,.results-summary,blockquote,.step,.enbref,.a-retenir,
  .cs-avocat-callout,.pilier-support,.pilier-situation,.pilier-proof,.ledger,.ledger-row,.irca-box,.case-evidence,
  [class*="-note"],[class*="-box"],[class*="answer"],.une,.card-publie,.actu-card,.testi-card,.cs-table-scroll,.calc-shell,.proof-strip,.situation-card,.sit-card,
  .route-situation,.cabinet-prose,.cabinet-framed,.calc-head,.medecin-card,.paramedical-card,.proposal-form,.diag-tete,[class*="situation"],.notice,.guide-path span
):not(:is(.ctaband, .cta-band, .guide-cta, #cta-final, .hero-accueil, .pagehead, .art-hero) *){
  background:var(--lc-card)!important;border-color:var(--lc-line)!important;box-shadow:0 1px 2px rgba(31,32,29,.05)!important;
}
/* Tableaux */
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final) :is(table, tbody, tr, td){
  background:var(--lc-card)!important;border-color:var(--lc-line)!important;color:var(--lc-text)!important;
}


/* Texte, titres, liens */
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final) :is(p, li, dd, dt, td, em, small, summary, figcaption, label, blockquote, div, span:not([class*="star"])):not(:is(.ctaband, .cta-band, .guide-cta, #cta-final, .hero-accueil, .pagehead, .art-hero, th, button, .btn, .btnp, .cta-btn, [class*="btn-"]) *):not(.eyebrow){
  color:var(--lc-text)!important;
}
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final) :is(h2, h3, h4, h5, strong, b):not(:is(.ctaband, .cta-band, .guide-cta, #cta-final, .hero-accueil, .pagehead, .art-hero, th, a, button, [class*="btn"]) *){
  color:var(--lc-head)!important;
}
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final) a:not([class*="btn"]):not(.cta-btn):not([class*="hero-action"]):not(:is(th, .ctaband, .cta-band, .guide-cta, #cta-final, .hero-accueil, .pagehead, .art-hero) *),
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final) a:not([class*="btn"]):not(.cta-btn):not(:is(.ctaband, .cta-band, .guide-cta, #cta-final, .hero-accueil, .pagehead, .art-hero) *) :is(strong, b, span, h3, h4){
  color:var(--lc-brass-ink)!important;
}
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final) :is(p, li, dd, td) a:not([class]){
  text-decoration-color:rgba(199,162,83,.9)!important;
}
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final) :is(.eyebrow, .amount, [class*="amount"], [class*="montant"]):not(:is(.ctaband, .cta-band, .guide-cta, #cta-final, .hero-accueil, .pagehead, .art-hero) *){
  color:var(--lc-brass-ink)!important;background-color:transparent!important;
}
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final) [class*="star"]:not(:is(.ctaband, .cta-band, .guide-cta, #cta-final, .hero-accueil, .pagehead, .art-hero) *){color:#b8892e!important}

/* Filets et ornements au laiton du logo */
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final) h2{border-color:var(--lc-brass)!important}
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final) :is(blockquote, .cs-avocat-callout, .card[style*="border-left"]){border-left-color:var(--lc-brass)!important}
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final) li::marker{color:var(--lc-brass)}
html body main :is(#main, .art-body, main > section, section.sec):not(#cta-final) hr{border-color:var(--lc-line)!important}

/* En-têtes de page : fond anthracite explicite (ils héritaient auparavant du fond sombre de la page) */
html body[class] main :is(.pagehead, .art-hero, .hub-hero)[class]{background-color:#242521!important}
/* Signature des avis cités : pas de bandeau sombre dans les encadrés clairs */
html body[class] main blockquote > footer[style], html body[class] main blockquote > footer[class], html body[class] main blockquote > footer:not([class]){background:transparent!important;color:var(--lc-muted)!important}
/* Pied de page (hors <main>) : reste anthracite, comme le cadre du logo */
html body[class] > footer[class]{background-color:#1f201d!important;border-color:rgba(255,255,255,.1)!important}

/* Boutons et étiquettes dans les zones claires */
html body[class] main :is(#main, .art-body, main > section, section.sec):not(#cta-final) a.cta-btn:not(:is(.ctaband, .cta-band, .guide-cta, #cta-final) *){color:var(--lc-head)!important;border-color:var(--lc-head)!important}
html body[class] main :is(#main, .art-body, main > section, section.sec):not(#cta-final) a:is([class*="primary"],[class*="contact"],[class*="inline-cta"]):is([class]):is([class]):not(.x):not(.y):not(.z):not(:is(.ctaband, .cta-band, .guide-cta, #cta-final, .pagehead, .art-hero) *){color:var(--lc-head)!important}
html body[class] main :is(#main, .art-body, main > section, section.sec):not(#cta-final) .calc-btn.link{color:var(--lc-brass-ink)!important}
html body[class] main :is(#main, .art-body, main > section, section.sec):not(#cta-final) .actu-card.actu-card.actu-card .actu-tag:not(#x1):not(#x2):not(#x3){color:var(--lc-brass-ink)!important;background:var(--lc-soft)!important}
html body[class] main :is(#main, .art-body, main > section, section.sec):not(#cta-final) :is(th, th *):is(a, a *, span, strong){color:var(--lc-head)!important}
/* Bouton « Être rappelé » : bleu assombri pour un texte blanc lisible (contraste 5:1 au lieu de 3,7:1) */
html body[class] :is(.cs-desktop-rappel, .cs-rappel, .hero-action-rappel, .fab-call){background-color:#2563eb!important}
/* Pied de page : pas d'espace clair entre le plan du site et le bandeau d'adresse */
html body[class] > footer[class]{margin-top:0!important}
/* Titres des colonnes du pied de page : police des titres sur toutes les pages, accueil compris */
html body .footer-sitemap .footer-col-title{font-family:"Source Serif 4", ui-serif, Georgia, "Times New Roman", serif!important}
