@font-face {
  font-family: 'Titres Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: block; /* jamais swap : swap a mesure un CLS de 0,272 sur le site frere */
  src: url(data:font/woff2;base64,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) format('woff2');
}

:root {
  /* Observatoire des ERP -- charte « clair, grand, vert ». Papier chaud,
     encre vert-noir, accent vert vif, teinte menthe pour les surfaces
     douces. Contrastes : encre/fond 15:1 ; accent/fond 5,2:1 ;
     encre-douce/fond 7:1 ; sur-encre/fond-encre 14,8:1 ;
     sur-encre-doux/fond-encre 8,9:1 (AA tenu partout). */
  --encre: #14201c;
  --encre-douce: #4f5b56;
  --fond: #fbfaf7;
  --fond-doux: #edf5f0;
  --fond-tinte: #e2f0e9;
  --trait: #dfe6e1;
  --accent: #0c7a5b;
  --accent-vif: #12a37a;
  --rayon: 20px;
  --rayon-petit: 12px;
  --grotesk: 'Titres Grotesk', 'Helvetica Neue', Arial, sans-serif;
  --sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --largeur: 76rem;

  /* Troisieme surface : encre verte, reservee au pied et aux bandeaux de
     chiffres -- jamais plus de deux bandeaux par page. */
  --fond-encre: #0e2a22;
  --sur-encre: #f3efe4;
  --sur-encre-doux: #a9c2b6;

  --graphe-1: #bfe3d3;
  --graphe-2: #8fcdb3;
  --graphe-3: #3aa882;
  --graphe-4: #1f7a5c;
  --graphe-5: #14503d;

  /* Incertitude : l'ocre accompagne toujours une hachure et un libelle. */
  --signal-incertain: #9a5200;

  --ombre-carte: 0 1px 2px rgba(20, 32, 28, .04), 0 24px 48px -28px rgba(20, 32, 28, .35);
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: var(--sans);
  font-size: 1.05rem;
  color: var(--encre);
  background: var(--fond);
  line-height: 1.65;
  overflow-wrap: anywhere;
}
img, svg { max-width: 100%; height: auto; }
a { color: var(--accent); text-decoration-thickness: 1px; text-underline-offset: 3px; }
:focus-visible { outline: 3px solid var(--accent-vif); outline-offset: 3px; }

h1, h2, h3 {
  font-family: var(--grotesk);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.03em;
  color: var(--encre);
}

.contenu { max-width: var(--largeur); margin: 0 auto; padding-inline: 1.5rem; }

/* -- Boutons ------------------------------------------------------------- */
.bouton {
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
  min-height: 52px; padding: .8rem 1.6rem; border-radius: 999px;
  background: var(--accent); color: #fff; font-weight: 600; text-decoration: none;
  font-family: var(--sans); font-size: 1rem; transition: transform .15s ease, background .15s ease;
}
.bouton:hover { background: var(--accent-vif); transform: translateY(-1px); }
.bouton--secondaire { background: transparent; color: var(--encre); box-shadow: inset 0 0 0 2px var(--encre); }
.bouton--secondaire:hover { background: var(--encre); color: #fff; }
.actions { display: flex; flex-wrap: wrap; gap: .75rem; margin: 2rem 0 0; }

/* -- En-tete ------------------------------------------------------------- */
.tete { position: sticky; top: 0; z-index: 10; background: rgba(251, 250, 247, .92); backdrop-filter: blur(8px); border-bottom: 1px solid var(--trait); }
.tete__interieur { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .25rem 1.5rem; padding-block: .6rem; }
.marque { display: inline-flex; align-items: center; font-family: var(--grotesk); font-weight: 700; font-size: 1.15rem; letter-spacing: -.02em; color: var(--encre); text-decoration: none; white-space: nowrap; min-height: 44px; }
.marque__plaque { display: inline-grid; place-items: center; width: 2.25rem; height: 2.25rem; margin-right: .65rem; background: var(--accent); color: #fff; font-size: .7rem; letter-spacing: .08em; border-radius: 10px; }
.marque__tld { color: var(--accent); font-weight: 700; }
.nav { display: flex; flex-wrap: wrap; align-items: center; column-gap: .1rem; }
.nav a { display: inline-flex; align-items: center; padding: .75rem .7rem; min-height: 44px; color: var(--encre); text-decoration: none; font-size: .95rem; font-weight: 500; border-radius: 999px; }
.nav a:hover { background: var(--fond-tinte); }
.nav a[aria-current='page'] { color: var(--accent); background: var(--fond-tinte); font-weight: 600; }
.nav--pied a { color: var(--sur-encre-doux); padding-inline: .5rem; }
.nav--pied a[aria-current='page'], .nav--pied a:hover { color: var(--sur-encre); background: rgba(255, 255, 255, .06); }
.tete .bouton { min-height: 44px; padding-block: .55rem; margin-left: .5rem; }

/* -- Hero : clair, tres grand titre, chiffre en vedette ------------------- */
.hero { background: var(--fond-tinte); background-image: radial-gradient(1200px 500px at 85% -10%, rgba(18, 163, 122, .18), transparent 60%); padding-block: 4.5rem 4rem; }
.hero__grille { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 3rem; align-items: center; }
.hero h1 { font-size: clamp(2.6rem, 1.6rem + 4.2vw, 5.2rem); margin: 0 0 1.25rem; max-width: 18ch; }
.hero .chiffre { color: var(--encre); }
.chapo { font-size: clamp(1.1rem, 1rem + .5vw, 1.35rem); color: var(--encre-douce); max-width: 40rem; margin: 0; line-height: 1.55; }
.chapo a { color: var(--accent); }

/* Carte vedette du hero : le chiffre cle, sa distribution, son effectif. */
.vedette { background: #fff; border-radius: var(--rayon); padding: 2rem 2rem 1.5rem; box-shadow: var(--ombre-carte); }
.vedette__libelle { font-size: .85rem; text-transform: uppercase; letter-spacing: .1em; color: var(--encre-douce); margin: 0 0 .5rem; }
.vedette__valeur { font-family: var(--grotesk); font-size: clamp(3rem, 2.2rem + 3.5vw, 5rem); line-height: 1; letter-spacing: -.04em; margin: 0 0 1rem; font-variant-numeric: tabular-nums; }
.vedette .figure { margin: 0; }
.vedette__pied { font-size: .9rem; color: var(--encre-douce); margin: .75rem 0 0; }

/* -- Sections : aerees, titres grands, un intertitre en capitales -------- */
.bloc { padding-block: 5rem; }
.bloc--clair { background: var(--fond); }
.bloc--doux { background: var(--fond-doux); }
.bloc h2 { font-size: clamp(1.9rem, 1.3rem + 2.2vw, 3rem); margin: 0 0 1.75rem; max-width: 24ch; }
.bloc p { max-width: 66ch; }
.bloc p + p { margin-top: 1rem; }

.chiffre, td.chiffre, th.chiffre { font-variant-numeric: tabular-nums; font-feature-settings: 'tnum' 1; }

/* -- Tableaux ------------------------------------------------------------- */
.table-enveloppe { overflow-x: auto; margin-block: 1.25rem; border: 1px solid var(--trait); border-radius: var(--rayon-petit); background: #fff; }
table { width: 100%; min-width: 32rem; border-collapse: collapse; font-variant-numeric: tabular-nums; font-size: .98rem; }
caption { text-align: left; padding: .9rem 1rem .5rem; color: var(--encre-douce); font-size: .88rem; }
th, td { text-align: left; padding: .8rem 1rem; border-bottom: 1px solid var(--trait); white-space: nowrap; }
thead th { background: var(--fond-tinte); color: var(--encre); font-weight: 700; font-size: .8rem; letter-spacing: .06em; text-transform: uppercase; }
tbody tr:last-child td { border-bottom: 0; }
tfoot td { font-weight: 600; }
.grille th:first-child, .grille td:first-child { white-space: normal; min-width: 12rem; overflow-wrap: normal; }
.grille td { white-space: normal; vertical-align: top; }

/* -- Cartes --------------------------------------------------------------- */
.cartes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; margin-block: 2rem 0; }
.carte { min-width: 0; border: 0; border-radius: var(--rayon); padding: 2rem 2rem 1.75rem; background: #fff; box-shadow: var(--ombre-carte); }
.carte__libelle { display: block; font-size: .8rem; text-transform: uppercase; letter-spacing: .1em; color: var(--encre-douce); margin: 0 0 .75rem; }
.carte__valeur { display: block; font-family: var(--grotesk); font-weight: 700; font-size: 2.25rem; line-height: 1.05; letter-spacing: -.03em; color: var(--encre); font-variant-numeric: tabular-nums; }
.carte__pied { display: block; margin-top: .75rem; font-size: .85rem; color: var(--encre-douce); font-variant-numeric: tabular-nums; }
.carte__note { display: block; margin-top: .6rem; font-size: .9rem; color: var(--encre-douce); line-height: 1.5; }
.absent { color: var(--signal-incertain); font-style: italic; }

/* -- Listes numerotees : numeros geants ----------------------------------- */
.piliers { list-style: none; padding: 0; margin: 0; counter-reset: pilier; display: grid; gap: 1.25rem; }
.piliers li { counter-increment: pilier; padding-left: 4.5rem; position: relative; max-width: 66ch; min-height: 3rem; }
.piliers li::before { content: counter(pilier, decimal-leading-zero); position: absolute; left: 0; top: -.35rem; font-family: var(--grotesk); font-weight: 700; color: var(--accent); font-size: 2.4rem; letter-spacing: -.04em; }
.etapes { list-style: none; padding: 0; margin: 0; counter-reset: etape; display: grid; gap: 1.5rem; }
.etapes li { counter-increment: etape; padding-left: 4.5rem; position: relative; max-width: 66ch; }
.etapes li::before { content: counter(etape, decimal-leading-zero); position: absolute; left: 0; top: -.35rem; font-family: var(--grotesk); font-weight: 700; color: var(--accent); font-size: 2.4rem; letter-spacing: -.04em; }
.etapes strong { font-family: var(--grotesk); font-size: 1.15rem; display: block; margin-bottom: .25rem; letter-spacing: -.01em; }

.raisons { list-style: none; padding: 0; margin: 2.5rem 0 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.5rem; }
.raisons__numero { display: block; font-family: var(--grotesk); font-weight: 700; font-size: 3.5rem; line-height: 1; letter-spacing: -.05em; color: var(--accent); margin-bottom: .75rem; }
.raisons__titre { display: block; font-family: var(--grotesk); font-weight: 700; font-size: 1.35rem; letter-spacing: -.02em; margin-bottom: .6rem; }
.raisons p { margin: 0; font-size: 1rem; color: var(--encre-douce); }

/* -- Pied ----------------------------------------------------------------- */
.pied { margin-top: 5rem; padding-block: 3.5rem 3rem; background: var(--fond-encre); color: var(--sur-encre-doux); font-size: .95rem; }
.pied .nav { margin-bottom: 1.5rem; }
.pied__mentions { margin: 0; max-width: 62ch; line-height: 1.6; }
.pied__mentions a { color: var(--sur-encre); }

@media (max-width: 900px) {
  .tete { position: static; backdrop-filter: none; background: var(--fond); }
  .tete .bouton { display: none; }
  .cartes, .raisons { grid-template-columns: minmax(0, 1fr); }
  .hero { padding-block: 3rem 2.5rem; }
  .hero__grille { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .bloc { padding-block: 3.25rem; }
  .vedette { padding: 1.5rem 1.5rem 1.25rem; }
}

@media print {
  .tete, .pied, .nav, .progression, .actions { display: none; }
  a { color: inherit; text-decoration: underline; }
  .table-enveloppe { overflow: visible; }
  body, .hero { background: #fff; color: #000; }
}

/* ======================================================================
   Figures SVG (tools/viz.mjs), bandeau de chiffres, cartes d'indice,
   petits composants editoriaux.
   ====================================================================== */

.bandeau { background: var(--fond-encre); color: var(--sur-encre); padding-block: 3rem; }
.bandeau h2, .bandeau .bandeau__valeur { color: var(--sur-encre); }
.bandeau__libelle { color: var(--sur-encre-doux); font-size: .8rem; letter-spacing: .1em; text-transform: uppercase; margin: 0 0 .25rem; }
.bandeau__valeur { font-family: var(--grotesk); font-size: clamp(2.5rem, 1.8rem + 3vw, 4.5rem); line-height: 1.05; margin: 0; font-variant-numeric: tabular-nums; }
.bandeau__pied { color: var(--sur-encre-doux); font-size: .9rem; margin: .5rem 0 0; }
.bandeau a { color: var(--graphe-1); }

.carte--indice { position: relative; display: flex; flex-direction: column; }
.carte--indice::before { content: ''; position: absolute; inset: 0 auto auto 0; width: 0; height: 0; }
/* Scope a .carte--indice : la valeur des cartes ordinaires reste a sa taille. */
.carte--indice .carte__valeur { font-size: clamp(2.4rem, 1.8rem + 2.6vw, 3.6rem); line-height: 1; margin: 0 0 1rem; min-height: 1.1em; }
.carte__quartiles { display: flex; flex-wrap: wrap; gap: .25rem 1rem; font-size: .85rem; color: var(--encre-douce); font-variant-numeric: tabular-nums; margin: .75rem 0 0; }

/* Aucune regle .viz__marque nue (voir viz.mjs). */
.figure { margin: 1rem 0 0; }
.figure figcaption { font-size: .85rem; color: var(--encre-douce); margin-top: .5rem; }
.figure__repli { margin-top: .4rem; font-size: .9rem; }
.figure__repli summary { cursor: pointer; min-height: 44px; display: flex; align-items: center; color: var(--accent); font-weight: 500; }
.viz { display: block; width: 100%; height: auto; }
.viz--compact { max-width: 100%; }
/* :not(--incertaine) : une regle de fill sur la base recouvrirait l'attribut
   fill="url(#h-...)" de la barre sous plancher. --incertaine ne pose AUCUN fill. */
.viz__barre:not(.viz__barre--incertaine) { fill: var(--graphe-3); }
.viz__barre--incertaine { stroke: var(--signal-incertain); stroke-width: 1; }
.viz__hachure { stroke: var(--signal-incertain); stroke-width: 1.5; }
.viz__bande { stroke: var(--signal-incertain); stroke-width: 1; }
.viz__marque--mediane { stroke: var(--encre); stroke-width: 2; }
.viz__marque--quartile { stroke: var(--graphe-5); stroke-width: 1; stroke-dasharray: 3 3; }
.viz__aiguille { stroke: var(--encre); stroke-width: 3; }
.viz__parite { stroke: var(--graphe-5); stroke-width: 1.5; }
.viz__regle { stroke: var(--trait); stroke-width: 2; }
.viz__libelle, .viz__valeur, .viz__axe text, .viz__vide { font-family: var(--sans); font-size: 13px; fill: var(--encre-douce); }
.viz__valeur { fill: var(--encre); font-variant-numeric: tabular-nums; }
.viz__valeur--incertaine { fill: var(--signal-incertain); }

.filet { display: flex; align-items: center; gap: .75rem; font-family: var(--grotesk); font-size: .8rem; letter-spacing: .1em; text-transform: uppercase; color: var(--accent); margin: 2rem 0 1rem; }
.filet::after { content: ''; flex: 1; height: 2px; background: var(--encre); opacity: .12; }
.mention-plancher { display: inline-flex; align-items: center; gap: .4rem; padding: .15rem .6rem; border-radius: 999px; background: #fff6e6; color: var(--signal-incertain); border: 1px solid currentColor; font-size: .85rem; }

.progression { position: fixed; inset: 0 0 auto 0; height: 3px; z-index: 20; transform-origin: 0 50%; transform: scaleX(0); background: var(--accent-vif); }
@supports (animation-timeline: scroll()) {
  .progression { animation: progression linear both; animation-timeline: scroll(root block); }
  @keyframes progression { to { transform: scaleX(1); } }
}
@media (prefers-reduced-motion: reduce) { .progression { display: none; } .bouton { transition: none; } }

/* -- Fil d'Ariane (dans le hero, hors accueil) ---------------------------- */
.ariane { font-size: .85rem; margin: 0 0 1.5rem; }
.ariane ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .25rem .5rem; }
.ariane li + li::before { content: '›'; margin-right: .5rem; color: var(--encre-douce); }
.ariane a { color: var(--encre-douce); }
.ariane [aria-current='page'] { color: var(--encre); font-weight: 500; }

/* -- Questions frequentes ------------------------------------------------- */
.faq { margin: 1.5rem 0 0; display: grid; gap: .75rem; max-width: 52rem; }
.faq details { background: #fff; border-radius: var(--rayon-petit); padding: .25rem 1.25rem; box-shadow: var(--ombre-carte); }
.faq summary { cursor: pointer; min-height: 52px; display: flex; align-items: center; font-family: var(--grotesk); font-weight: 700; font-size: 1.1rem; letter-spacing: -.01em; padding: .5rem 0; list-style: none; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::before { content: '+'; color: var(--accent); font-size: 1.5rem; margin-right: .75rem; line-height: 1; }
.faq details[open] summary::before { content: '–'; }
.faq details > p { margin: 0 0 1.1rem; color: var(--encre-douce); }
