@font-face{font-family:'Titillium Web';font-style:normal;font-weight:700;font-display:swap;src:url('/titillium-web-v9-latin-700.woff2') format('woff2')}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:400;font-display:swap;src:url('/open-sans-latin-regular.woff2') format('woff2')}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:700;font-display:swap;src:url('/open-sans-latin-700.woff2') format('woff2')}

/* PEAU « Le Dossier Institutionnel » (préfixe ogr-) : bibliothèque des peaux du socle, 17/09/2026.
   Archétype portail-rubriques, direction 23 « Le Dossier Institutionnel » : le portail tenu comme le dossier d'une
   institution qui prouve ce qu'elle avance. Les rubriques sont des pôles numérotés rattachés à un centre, chaque
   article est une pièce versée au dossier avec sa cote, et le portail publie les sources nommées dans ses pièces.
   TROIS GESTES SIGNATURE : A. le trait-surtitre (filet d'or 1 px sur 2,5 rem devant chaque surtitre en capitales
   espacées, et devant chaque intertitre du développement) ; B. l'emblème en étoile (SVG en ligne : un centre, une
   branche par pôle, la branche courante en or) ; C. le chiffre clé (valeur comptée en Baskerville sous un filet d'or,
   libellé en capitales espacées).
   RÉGLAGE D'UN SITE : uniquement le bloc :root (palette de matières, piles système, rayon, densité, mesure).
   RÈGLES NÉGATIVES (à tenir en changeant la palette) :
   - l'or ne fait jamais un fond de grande surface et n'écrit du texte que sur la nuit : sur le clair, il est un filet ;
   - les capitales espacées à .2em et plus sont réservées aux ÉTIQUETTES : surtitre posé au-dessus d'un titre, libellé
     de chiffre, cote ; jamais une phrase, jamais un titre de bloc (les titres d'annexe et de pied sont en Baskerville) ;
   - les chiffres affichés comme données (chiffres clés, dates, cotes, comptes, numéros) se composent en serif, même
     dans une ligne en sans (.ogr-nombre, time) ; seul le texte courant garde ses chiffres ;
   - la profondeur vient des bandes de nuit, des filets ET du relief : ombres douces teintées nuit
     et coins arrondis de --rayon sur les cartes et les photos (exigence §4.3 de design-exceptionnel,
     corrigé le 19/09/2026 — la peau livrée sans relief ni police hébergée était hors doctrine) ;
   contraste: nuit/velin nuit/blanc nuit/papier ardoise/velin ardoise/blanc ardoise/papier encre-bleue/velin encre-bleue/blanc encre-bleue/papier blanc/nuit brume/nuit or/nuit blanc/seance brume/seance or/seance */
:root {
  /* palette : 9 matières */
  --velin: #faf7f1;       /* vélin : fond général */
  --blanc: #ffffff;       /* blanc de plaquette : pôles, en-tête */
  --papier: #ece3d5;      /* papier de dossier : bande des preuves, filets entre pôles */
  --nuit: #1c1614;        /* bleu nuit : texte sur clair, bandes retournées, pied */
  --seance: #2c231f;      /* bleu de séance : surfaces posées sur la nuit */
  --or: #d98a45;          /* dorure : traits, emblème ; texte seulement sur la nuit */
  --brume: #cfc0b2;       /* brume : texte secondaire sur la nuit */
  --ardoise: #5a5048;     /* ardoise : texte secondaire sur clair */
  --encre-bleue: #7a2f21; /* encre bleue d'institution : liens sur clair */
  /* piles système : une transitionnelle pour les titres et les chiffres, une humaniste britannique pour le texte */
  --titre-police: "Titillium Web", Baskerville, "Baskerville Old Face", Georgia, serif;
  --texte-police: "Open Sans", "Gill Sans", Calibri, "Segoe UI", sans-serif;
  /* forme et rythme */
  --rayon: 12px;
  --ombre: 0 14px 30px -16px rgba(28, 22, 20, .38), 0 3px 10px -6px rgba(28, 22, 20, .22);
  --ombre-carte: 0 10px 24px -14px rgba(28, 22, 20, .34);
  --pas: 1.62rem;                                /* densité : unité de rythme vertical */
  --respiration: clamp(2.8rem, 6vw, 5.5rem);    /* hauteur des bandes */
  --mesure: 66ch;                               /* largeur de lecture */
  --perimetre: 76rem;                           /* largeur maximale de page */
}

/* ------------------------------------------------------------------ base */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; overflow-x: clip; }
body { margin: 0; background: var(--velin); color: var(--nuit); font-family: var(--texte-police); font-size: clamp(1.02rem, .98rem + .22vw, 1.12rem); line-height: 1.6; overflow-wrap: break-word; overflow-x: clip;
  --trame: radial-gradient(color-mix(in srgb, var(--blanc) 8%, transparent) 1px, transparent 1.5px) 0 0 / 4px 4px; }
img { max-width: 100%; height: auto; display: block; }
h1, h2, h3, h4 { font-family: var(--titre-police); font-weight: 400; line-height: 1.08; margin: 0 0 .45em; letter-spacing: -.005em; text-wrap: balance; }
h1 { font-size: clamp(2.5rem, 1.5rem + 3.6vw, 4.4rem); line-height: 1.04; }
h2 { font-size: clamp(1.8rem, 1.35rem + 1.6vw, 2.7rem); }
h3 { font-size: clamp(1.3rem, 1.15rem + .5vw, 1.55rem); }
p, ul, ol, dl, figure { margin: 0 0 var(--pas); }
a { color: var(--encre-bleue); text-decoration-thickness: 1px; text-underline-offset: .2em; text-decoration-color: var(--or); }
a:hover { color: var(--nuit); text-decoration-thickness: 2px; }
:focus-visible { outline: 3px solid var(--or); outline-offset: 3px; }
time, .ogr-nombre { font-family: var(--titre-police); font-weight: 400; font-variant-numeric: lining-nums tabular-nums; letter-spacing: .02em; text-transform: none; }
.ogr-surtitre .ogr-nombre, .ogr-surtitre time, .ogr-piece__cote .ogr-nombre, .ogr-annonce__cote .ogr-nombre, .ogr-annonce__cote time, .ogr-annonce__legende .ogr-nombre, .ogr-piece__legende .ogr-nombre, .ogr-preuve__citee .ogr-nombre, .ogr-voisin__compte .ogr-nombre, .ogr-illustration__cote .ogr-nombre { font-size: 1.35em; letter-spacing: .04em; }
.ogr-perimetre { width: min(100% - 2.5rem, var(--perimetre)); margin-inline: auto; }
.ogr-acces-direct { position: absolute; left: -9999px; top: 0; z-index: 40; background: var(--or); color: var(--nuit); padding: .7rem 1rem; border-radius: var(--rayon); }
.ogr-acces-direct:focus { left: .5rem; top: .5rem; }
.ogr-cliche { display: block; overflow: hidden; background: var(--seance); border-radius: var(--rayon); box-shadow: var(--ombre-carte); }
.ogr-cliche img { width: 100%; height: 100%; object-fit: cover; }
.ogr-cliche--carre { aspect-ratio: 1 / 1; }
.ogr-cliche--large { aspect-ratio: 16 / 9; }
.ogr-cliche--fond { width: 100%; height: 100%; }

/* ------------------------------------------------------------------ geste A : le trait-surtitre */
.ogr-surtitre { display: flex; flex-wrap: wrap; align-items: center; gap: .3rem .75rem; margin: 0 0 .9rem; font: 600 .72rem/1.35 var(--texte-police); letter-spacing: .3em; text-transform: uppercase; color: var(--ardoise); }
.ogr-surtitre__trait { flex: none; width: 2.5rem; height: 1px; background: var(--or); }
.ogr-surtitre--or { color: var(--or); }
.ogr-surtitre a { color: inherit; text-decoration-color: currentColor; }

.ogr-bloc-titre { display: flex; align-items: center; gap: .7rem; margin: 0 0 .85rem; font: 400 1.18rem/1.25 var(--titre-police); color: var(--nuit); }
.ogr-bloc-titre--nuit { color: var(--blanc); }

/* ------------------------------------------------------------------ geste B : l'emblème en étoile */
.ogr-embleme { display: block; flex: none; width: 2.7rem; height: auto; aspect-ratio: 1; color: var(--nuit); }
.ogr-embleme__orbite { fill: none; stroke: currentColor; stroke-width: .7; }
.ogr-embleme__graduation { stroke: currentColor; stroke-width: .55; }
.ogr-embleme__piece { fill: currentColor; }
.ogr-embleme__piece--active { fill: var(--or); }
.ogr-embleme__branche { stroke: currentColor; stroke-width: 1; }
.ogr-embleme__pole { fill: currentColor; }
.ogr-embleme__centre { fill: var(--or); }
.ogr-embleme__branche--active { stroke: var(--or); stroke-width: 1.8; }
.ogr-embleme__pole--actif { fill: var(--or); }
.ogr-embleme--organigramme { width: clamp(6.5rem, 12vw, 9.5rem); }
.ogr-embleme--pole { width: clamp(7rem, 15vw, 11.5rem); color: var(--brume); }
.ogr-embleme--attestation { width: 2.5rem; color: var(--blanc); }
.ogr-embleme--sans-suite { width: clamp(8rem, 18vw, 13rem); color: var(--brume); }
.ogr-embleme--sans-suite .ogr-embleme__branche { stroke-dasharray: 1.4 1.6; }

/* ------------------------------------------------------------------ geste C : le chiffre clé */
.ogr-chiffres { display: grid; grid-template-columns: repeat(auto-fit, minmax(8.5rem, 1fr)); gap: 1.2rem 1.8rem; margin: 0; }
.ogr-chiffre { display: flex; flex-direction: column-reverse; justify-content: flex-end; gap: .4rem; padding-top: .65rem; border-top: 1px solid var(--or); min-width: 0; }
.ogr-chiffre__valeur { margin: 0; font: 400 clamp(2rem, 1.55rem + 1.5vw, 2.9rem)/1 var(--titre-police); font-variant-numeric: lining-nums tabular-nums; color: var(--nuit); }
.ogr-chiffre__valeur time { font-size: .62em; }
.ogr-chiffre__libelle { font: 600 .66rem/1.3 var(--texte-police); letter-spacing: .24em; text-transform: uppercase; color: var(--ardoise); overflow-wrap: normal; }
.ogr-chiffres--pole { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: row dense; gap: .8rem 1rem; margin: 1.1rem 0 1rem; }
.ogr-chiffres--pole .ogr-chiffre:nth-child(2) { grid-column: 1 / -1; }
.ogr-chiffres--pole .ogr-chiffre__valeur { font-size: 1.55rem; }
.ogr-chiffres--pole .ogr-chiffre__valeur time { font-size: .72em; }
.ogr-chiffres--frontispice .ogr-chiffre__valeur, .ogr-chiffres--note .ogr-chiffre__valeur, .ogr-chiffres--attestation .ogr-chiffre__valeur { color: var(--blanc); }
.ogr-chiffres--frontispice .ogr-chiffre__libelle, .ogr-chiffres--note .ogr-chiffre__libelle, .ogr-chiffres--attestation .ogr-chiffre__libelle { color: var(--brume); }
.ogr-chiffres--note .ogr-chiffre__valeur { font-size: clamp(1.4rem, 1.2rem + .7vw, 1.9rem); }
.ogr-chiffres--attestation { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 1.4rem; }
.ogr-chiffres--attestation .ogr-chiffre__valeur { font-size: 1.5rem; }
.ogr-chiffres--preuves { grid-template-columns: repeat(2, minmax(0, 9rem)); margin-bottom: 1rem; }

/* ------------------------------------------------------------------ le entete (en-tête) */
.ogr-entete { position: sticky; top: 0; z-index: 20; background: color-mix(in srgb, var(--blanc) 95%, transparent); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-bottom: 1px solid var(--or); box-shadow: 0 10px 24px -18px rgba(28, 22, 20, .4); }
.ogr-entete__rang { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .6rem 2.5rem; padding-block: .75rem; }
.ogr-entete__marque { display: flex; align-items: center; gap: .85rem; color: var(--nuit); text-decoration: none; }
.ogr-entete__noms { display: grid; gap: .15rem; }
.ogr-raison { display: block; font: 400 clamp(1.25rem, 1.1rem + .6vw, 1.55rem)/1.1 var(--titre-police); }
.ogr-mission { display: block; font: 400 .9rem/1.3 var(--texte-police); letter-spacing: .01em; color: var(--ardoise); }
.ogr-poles__liste { display: flex; flex-wrap: wrap; gap: .1rem 1.5rem; list-style: none; margin: 0; padding: 0; }
.ogr-poles__lien { display: inline-flex; align-items: baseline; gap: .45rem; padding: .4rem 0 .3rem; color: var(--nuit); text-decoration: none; font-size: .98rem; border-bottom: 2px solid transparent; }
.ogr-poles__lien:hover { border-bottom-color: var(--papier); color: var(--nuit); }
.ogr-poles__lien[aria-current] { border-bottom-color: var(--or); }
.ogr-poles__numero { font: 400 1em/1 var(--titre-police); font-variant-numeric: lining-nums; color: var(--ardoise); margin-right: .45rem; }

/* ------------------------------------------------------------------ l'intitulé (ouverture de l'accueil) */
.ogr-intitule { padding-block: var(--respiration) calc(var(--respiration) * .75); }
.ogr-intitule__rang { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: 2rem clamp(2rem, 5vw, 5rem); align-items: end; }
.ogr-intitule h1 { max-width: 15ch; }
.ogr-intitule__intro { max-width: 56ch; margin: 0; font-size: clamp(1.08rem, 1rem + .3vw, 1.22rem); line-height: 1.55; }
.ogr-chiffres--intitule { grid-template-columns: repeat(2, minmax(0, 1fr)); }

/* ------------------------------------------------------------------ la pièce à la une */
.ogr-annonce { background: var(--nuit); color: var(--blanc); }
.ogr-annonce__piece { position: relative; isolation: isolate; display: grid; align-items: end; min-height: clamp(28rem, 64vh, 42rem); }
.ogr-annonce__fond { position: absolute; inset: 0; margin: 0; }
.ogr-annonce__fond .ogr-cliche--fond { position: absolute; inset: 0; z-index: -2; }
.ogr-annonce__piece::before { content: ""; position: absolute; inset: 0; z-index: -1;
  background: linear-gradient(180deg, color-mix(in srgb, var(--nuit) 12%, transparent) 0%, color-mix(in srgb, var(--nuit) 38%, transparent) 42%, color-mix(in srgb, var(--nuit) 94%, transparent) 100%),
              linear-gradient(90deg, color-mix(in srgb, var(--nuit) 90%, transparent) 0%, color-mix(in srgb, var(--nuit) 55%, transparent) 46%, transparent 78%),
              radial-gradient(120% 90% at 0% 100%, color-mix(in srgb, var(--nuit) 78%, transparent), transparent 62%); }
.ogr-annonce__legende { position: absolute; z-index: 1; top: 1rem; right: 1.25rem; padding: .45rem .7rem; background: var(--or); font: 600 .62rem/1 var(--texte-police); letter-spacing: .24em; text-transform: uppercase; color: var(--nuit); border-radius: 999px; box-shadow: var(--ombre-carte); }
.ogr-annonce__texte { padding-block: 3.2rem 2.8rem; }
.ogr-annonce__titre { max-width: 21ch; font-size: clamp(2rem, 1.3rem + 2.8vw, 3.7rem); line-height: 1.04; }
.ogr-annonce__titre a { color: var(--blanc); text-decoration: underline; text-decoration-color: transparent; text-decoration-thickness: 1px; text-underline-offset: .15em; }
.ogr-annonce__titre a:hover { text-decoration-color: var(--or); }
.ogr-annonce__chapo { max-width: 56ch; font-size: clamp(1.05rem, 1rem + .3vw, 1.2rem); color: var(--brume); }
.ogr-annonce__cote { display: flex; flex-wrap: wrap; gap: .4rem 1.8rem; margin: 0; font: 600 .7rem/1.4 var(--texte-police); letter-spacing: .22em; text-transform: uppercase; color: var(--brume); }

/* ------------------------------------------------------------------ l'organigramme (les pôles) */
.ogr-organigramme { padding-block: var(--respiration); }
.ogr-organigramme__tete { display: flex; align-items: center; gap: 1.5rem clamp(1.5rem, 4vw, 3rem); margin-bottom: 2.4rem; }
.ogr-organigramme__tete h2 { margin-bottom: .2em; }
.ogr-organigramme__note { margin: 0; color: var(--ardoise); font-style: italic; }
.ogr-organigramme__poles { display: flex; flex-wrap: wrap; gap: 1.1rem; }
.ogr-pole { position: relative; flex: 1 1 17rem; min-width: 0; padding: 1.7rem 1.5rem 1.4rem; background: var(--blanc); border-radius: var(--rayon); box-shadow: var(--ombre-carte); }
.ogr-pole::before { content: ""; position: absolute; top: 0; left: 1.5rem; width: 2.5rem; height: 2px; background: var(--or); }
.ogr-pole--g1 { flex-grow: 1; } .ogr-pole--g2 { flex-grow: 2; } .ogr-pole--g3 { flex-grow: 3; } .ogr-pole--g4 { flex-grow: 4; } .ogr-pole--g5 { flex-grow: 5; }
.ogr-pole__numero { margin: 0 0 .6rem; font: 400 clamp(2.6rem, 2rem + 2vw, 3.8rem)/1 var(--titre-police); font-variant-numeric: lining-nums; color: var(--nuit); }
.ogr-pole__numero--petit { margin: 0; font-size: 1.6rem; }
.ogr-pole__titre { margin-bottom: .35rem; }
.ogr-pole__titre a { color: var(--nuit); text-decoration: none; }
.ogr-pole__titre a:hover { text-decoration: underline; text-decoration-color: var(--or); }
.ogr-pole__mission { margin: 0; max-width: 48ch; color: var(--ardoise); line-height: 1.5; }
.ogr-pole__acces { margin: 0; }
.ogr-pole__acces a, .ogr-note__retour a { display: inline-block; font: 600 .98rem/1.3 var(--texte-police); letter-spacing: .01em; text-decoration: none; background: var(--or); color: var(--nuit); padding: .42rem 1rem; border-radius: 999px; }
.ogr-pole__acces a:hover, .ogr-note__retour a:hover { background: var(--nuit); color: var(--or); }

/* ------------------------------------------------------------------ les pièces (liste datée) */
.ogr-pieces { padding-block: var(--respiration); background: var(--trame), var(--nuit); color: var(--blanc); }
.ogr-pieces .ogr-surtitre { color: var(--or); }
.ogr-pieces__titre { color: var(--blanc); margin-bottom: 1.6rem; }
.ogr-pieces__liste { border-top: 1px solid var(--or); }
.ogr-piece { display: grid; grid-template-columns: 7.5rem 6.5rem minmax(0, 1fr); gap: 1.5rem; align-items: start; padding: 1.3rem 0; border-bottom: 1px solid color-mix(in srgb, var(--brume) 24%, transparent); }
.ogr-piece__date { display: grid; gap: .45rem; margin: 0; font: 400 1.2rem/1 var(--titre-police); color: var(--blanc); }
.ogr-piece__cote { display: inline-block; font: 600 .66rem/1.2 var(--texte-police); letter-spacing: .22em; text-transform: uppercase; color: var(--nuit); background: var(--or); padding: .18rem .55rem; border-radius: 999px; }
.ogr-piece__vue { margin: 0; }
.ogr-piece__legende { margin-top: .4rem; font: 600 .56rem/1.3 var(--texte-police); letter-spacing: .18em; text-transform: uppercase; color: var(--brume); }
.ogr-piece__texte { min-width: 0; }
.ogr-piece__texte .ogr-surtitre { margin-bottom: .5rem; color: var(--brume); }
.ogr-piece__titre { margin: 0 0 .4rem; font-size: clamp(1.3rem, 1.12rem + .6vw, 1.7rem); }
.ogr-piece__titre a { color: var(--blanc); text-decoration: none; }
.ogr-piece__titre a:hover { text-decoration: underline; text-decoration-color: var(--or); }
.ogr-piece__objet { margin: 0; max-width: 62ch; color: var(--brume); }
.ogr-pieces__liste--clair { border-top-color: var(--nuit); }
.ogr-pieces__liste--clair .ogr-piece { border-bottom-color: var(--papier); }
.ogr-pieces__liste--clair .ogr-piece__date { color: var(--nuit); }
.ogr-pieces__liste--clair .ogr-piece__cote, .ogr-pieces__liste--clair .ogr-piece__legende, .ogr-pieces__liste--clair .ogr-piece__texte .ogr-surtitre, .ogr-pieces__liste--clair .ogr-piece__objet { color: var(--ardoise); }
.ogr-pieces__liste--clair .ogr-piece__titre a { color: var(--nuit); }

/* ------------------------------------------------------------------ desserte des pôles, preuves, correspondants */
.ogr-pole__desserte { margin: 1.1rem 0 0; border-top: 1px solid var(--nuit); }
.ogr-piece--pole { grid-template-columns: 3.6rem minmax(0, 1fr); grid-template-areas: "vue date" "vue texte"; gap: .15rem .9rem; padding: .75rem 0; border-bottom: 1px solid var(--papier); }
.ogr-piece--pole .ogr-piece__vue { grid-area: vue; }
.ogr-piece--pole .ogr-piece__date { grid-area: date; display: flex; flex-wrap: wrap; align-items: baseline; gap: .1rem .7rem; font-size: .95rem; color: var(--nuit); }
.ogr-piece--pole .ogr-piece__cote { color: var(--ardoise); }
.ogr-piece--pole .ogr-piece__texte { grid-area: texte; }
.ogr-piece--pole .ogr-piece__titre { margin: 0; font-size: 1.08rem; line-height: 1.2; }
.ogr-piece--pole .ogr-piece__titre a { color: var(--nuit); }
.ogr-piece--pole .ogr-piece__legende { margin-top: .2rem; color: var(--ardoise); letter-spacing: .08em; text-align: center; }
.ogr-preuves { padding-block: var(--respiration); background: var(--papier); }
.ogr-preuves__note { max-width: var(--mesure); color: var(--ardoise); }
.ogr-preuves__liste { list-style: none; margin: 1.4rem 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); gap: 0 3rem; }
.ogr-preuve { padding: 1rem 0 .6rem; border-top: 1px solid var(--nuit); }
.ogr-preuve__hote { display: block; margin: 0 0 .35rem; font: 400 1.35rem/1.2 var(--titre-police); color: var(--nuit); }
.ogr-preuve__adresses { list-style: none; margin: 0; padding: 0; }
.ogr-preuve__adresses li { display: grid; gap: .2rem; padding: .45rem 0; border-top: 1px solid color-mix(in srgb, var(--nuit) 14%, transparent); }
.ogr-preuve__adresses a { overflow-wrap: anywhere; }
.ogr-preuve__citee { font: 600 .64rem/1.3 var(--texte-police); letter-spacing: .2em; text-transform: uppercase; color: var(--ardoise); }
.ogr-correspondants { padding-block: var(--respiration) calc(var(--respiration) * .7); }
.ogr-correspondants__titre { margin-bottom: .4em; }
.ogr-correspondants__phrase { max-width: var(--mesure); color: var(--ardoise); }
.ogr-correspondants__liste { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr)); gap: 1rem 3rem; counter-reset: ogr-correspondant; }
.ogr-correspondants__liste > li { counter-increment: ogr-correspondant; display: grid; grid-template-columns: 2.6rem minmax(0, 1fr); gap: .8rem; padding: .9rem 1rem; background: var(--blanc); border-radius: var(--rayon); box-shadow: var(--ombre-carte); }
.ogr-correspondants__liste > li::before { content: counter(ogr-correspondant, decimal-leading-zero); font: 400 1.4rem/1.1 var(--titre-police); color: var(--nuit); }
.ogr-correspondants__liste p { margin: 0; }

/* ------------------------------------------------------------------ arborescence, page de pôle */
.ogr-arborescence ol { display: flex; flex-wrap: wrap; gap: .2rem .6rem; list-style: none; margin: 1.1rem auto; padding: 0; font-size: .88rem; line-height: 1.5; color: var(--ardoise); }
.ogr-arborescence li + li::before { content: "›"; margin-right: .6rem; color: var(--or); letter-spacing: 0; }
.ogr-arborescence a { color: var(--ardoise); text-decoration: none; }
.ogr-arborescence a:hover { color: var(--nuit); text-decoration: underline; }
.ogr-pole-frontispice { padding-block: calc(var(--respiration) * .9); background: var(--trame), var(--nuit); color: var(--blanc); }
.ogr-pole-frontispice__rang { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 2rem clamp(2rem, 5vw, 4.5rem); align-items: center; }
.ogr-pole-frontispice h1 { color: var(--blanc); max-width: 18ch; }
.ogr-pole-frontispice__mission { max-width: 58ch; font-size: 1.15rem; color: var(--brume); }
.ogr-onglets-poles { display: flex; flex-wrap: wrap; gap: .5rem; margin-block: 1.6rem 0; }
.ogr-onglets-poles__lien { display: inline-flex; align-items: baseline; padding: .5rem .95rem; border: 1px solid var(--papier); background: var(--blanc); color: var(--nuit); text-decoration: none; border-radius: 999px; }
.ogr-onglets-poles__lien:hover { border-color: var(--or); color: var(--nuit); }
.ogr-onglets-poles__lien[aria-current] { background: var(--or); border-color: var(--or); color: var(--nuit); }
.ogr-onglets-poles__lien[aria-current] .ogr-poles__numero { color: var(--nuit); }
.ogr-liste { padding-block: calc(var(--respiration) * .8); }
.ogr-voisins { padding-block: calc(var(--respiration) * .7); border-top: 1px solid var(--papier); }
.ogr-voisins__liste { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); gap: 1.1rem; }
.ogr-voisin { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .2rem 1rem; align-items: baseline; padding: 1rem 1.2rem; background: var(--blanc); border-radius: var(--rayon); box-shadow: var(--ombre-carte); }
.ogr-voisin a { font: 400 1.3rem/1.2 var(--titre-police); color: var(--nuit); text-decoration: none; }
.ogr-voisin a:hover { text-decoration: underline; text-decoration-color: var(--or); }
.ogr-voisin__compte { grid-column: 2; font: 600 .64rem/1.3 var(--texte-police); letter-spacing: .22em; text-transform: uppercase; color: var(--ardoise); }

/* ------------------------------------------------------------------ la note (article) */
.ogr-note__frontispice { padding-block: calc(var(--respiration) * .9) calc(var(--respiration) * .8); background: var(--trame), var(--nuit); color: var(--blanc); }
.ogr-note__frontispice h1 { color: var(--blanc); max-width: 24ch; font-size: clamp(2.2rem, 1.4rem + 3vw, 3.9rem); }
.ogr-note__chapo { max-width: 60ch; font-size: clamp(1.08rem, 1rem + .35vw, 1.25rem); color: var(--brume); }
.ogr-chiffres--note { max-width: 48rem; }
.ogr-note__plan { display: grid; grid-template-columns: minmax(0, 1fr) 18rem; gap: 2rem clamp(2.5rem, 5vw, 4.5rem); align-items: start; padding-block: 3rem 2rem; }
.ogr-note__lecture { min-width: 0; }
.ogr-illustration { margin: 0 0 2rem; }
.ogr-illustration__legende { display: flex; flex-wrap: wrap; gap: .2rem .8rem; padding-top: .7rem; border-top: 1px solid var(--papier); margin-top: .7rem; font-size: .88rem; color: var(--ardoise); }
.ogr-illustration__cote { font: 600 .66rem/1.6 var(--texte-police); letter-spacing: .24em; text-transform: uppercase; color: var(--nuit); }
.ogr-note__objet { max-width: var(--mesure); padding: .2rem 0 .2rem 1.1rem; border-left: 2px solid var(--or); font-size: 1.12rem; }
.ogr-note__objet-libelle { display: block; font: 600 .66rem/1.5 var(--texte-police); letter-spacing: .26em; text-transform: uppercase; color: var(--ardoise); }
.ogr-developpement { line-height: 1.68; }
.ogr-developpement > * { max-width: var(--mesure); }
.ogr-developpement > h2 { margin: 2.6rem 0 .8rem; font-size: clamp(1.55rem, 1.3rem + .9vw, 2.05rem); }
.ogr-developpement > h2::before { content: ""; display: block; width: 2.5rem; height: 1px; margin-bottom: .9rem; background: var(--or); }
.ogr-developpement > h3 { margin: 1.8rem 0 .5rem; }
.ogr-developpement ul { padding-left: 1.2rem; }
.ogr-developpement ul > li::marker { color: var(--or); }
.ogr-developpement ol > li::marker { font-family: var(--titre-police); color: var(--nuit); }
.ogr-developpement blockquote { margin: 0 0 var(--pas); padding: .3rem 0 .3rem 1.2rem; border-left: 1px solid var(--or); font: 400 1.25rem/1.45 var(--titre-police); }
.ogr-developpement table { display: block; overflow-x: auto; max-width: 100%; border-collapse: collapse; font-size: .95rem; }
.ogr-developpement th, .ogr-developpement td { padding: .5rem .75rem; border-bottom: 1px solid var(--papier); text-align: left; vertical-align: top; }
.ogr-developpement th { font: 600 .68rem/1.4 var(--texte-police); letter-spacing: .2em; text-transform: uppercase; color: var(--ardoise); border-bottom-color: var(--nuit); }
.ogr-developpement pre { overflow-x: auto; padding: .9rem; background: var(--blanc); }
.ogr-developpement a { overflow-wrap: anywhere; }
.ogr-note__retour { margin: 2.4rem 0 0; }
.ogr-annexes { position: sticky; top: 5.5rem; display: grid; gap: 1.4rem; font-size: .95rem; }
.ogr-annexes__bloc { padding: 1.1rem 1.1rem 1rem; background: var(--blanc); border-top: 2px solid var(--nuit); border-radius: var(--rayon); box-shadow: var(--ombre-carte); }
.ogr-annexes__bloc p:last-child { margin: 0; }
.ogr-annexes__bloc .ogr-surtitre { letter-spacing: .24em; }
.ogr-annexes__sommaire { counter-reset: ogr-point; list-style: none; margin: 0; padding: 0; }
.ogr-annexes__sommaire > li { counter-increment: ogr-point; display: grid; grid-template-columns: 1.9rem minmax(0, 1fr); padding: .38rem 0; border-top: 1px solid var(--papier); line-height: 1.35; }
.ogr-annexes__sommaire > li::before { content: counter(ogr-point, decimal-leading-zero); font: 400 1rem/1.35 var(--titre-police); font-variant-numeric: lining-nums; color: var(--ardoise); }
.ogr-annexes__sommaire a { color: var(--nuit); text-decoration: none; }
.ogr-annexes__sommaire a:hover { text-decoration: underline; text-decoration-color: var(--or); }
.ogr-annexes__fiche { margin: 0; }
.ogr-annexes__fiche > div { display: grid; grid-template-columns: 6.2rem minmax(0, 1fr); gap: .5rem; padding: .38rem 0; border-top: 1px solid var(--papier); }
.ogr-annexes__fiche dt { font: 600 .64rem/1.6 var(--texte-police); letter-spacing: .2em; text-transform: uppercase; color: var(--ardoise); }
.ogr-annexes__fiche dd { margin: 0; font-family: var(--titre-police); }
.ogr-annexes__preuves { counter-reset: ogr-preuve; list-style: none; margin: 0; padding: 0; }
.ogr-annexes__preuves > li { counter-increment: ogr-preuve; display: grid; grid-template-columns: 1.9rem minmax(0, 1fr); padding: .45rem 0; border-top: 1px solid var(--papier); }
.ogr-annexes__preuves > li::before { content: counter(ogr-preuve) "."; font: 400 1rem/1.35 var(--titre-police); color: var(--ardoise); }
.ogr-annexes__preuves a { text-decoration: none; }
.ogr-annexes__preuves a:hover .ogr-preuve__hote { text-decoration: underline; text-decoration-color: var(--or); }
.ogr-annexes .ogr-preuve__hote { font-size: 1.08rem; margin: 0; color: var(--encre-bleue); }
.ogr-preuve__chemin { display: block; font-size: .8rem; line-height: 1.35; color: var(--ardoise); overflow-wrap: anywhere; }
.ogr-annexes__bloc--nuit { background: var(--trame), var(--nuit); border-top-color: var(--or); color: var(--brume); line-height: 1.5; }
.ogr-suites { padding-block: calc(var(--respiration) * .7) var(--respiration); border-top: 1px solid var(--papier); }

/* ------------------------------------------------------------------ l'attestation (pied) */
.ogr-attestation { margin-top: calc(var(--pas) * 1.5); background: var(--trame), var(--nuit); color: var(--brume); font-size: .95rem; }
.ogr-attestation__colonnes { display: grid; grid-template-columns: minmax(0, 1.8fr) repeat(2, minmax(0, 1fr)); gap: 2.4rem clamp(2rem, 5vw, 4rem); padding-block: 3.4rem 2rem; }
.ogr-attestation__marque { display: flex; align-items: center; gap: .8rem; margin-bottom: 1rem; }
.ogr-attestation .ogr-raison { color: var(--blanc); font-size: 1.6rem; }
.ogr-attestation__bloc p { max-width: 58ch; }
.ogr-attestation__note { color: var(--blanc); }
.ogr-attestation__mentions { list-style: none; margin: 1.2rem 0 0; padding: 0; font-size: .88rem; }
.ogr-attestation__mentions li { padding: .45rem 0; border-top: 1px solid color-mix(in srgb, var(--brume) 25%, transparent); }
.ogr-attestation__liste { list-style: none; margin: 0; padding: 0; }
.ogr-attestation__liste li { display: flex; justify-content: space-between; gap: .5rem; padding: .42rem 0; border-top: 1px solid color-mix(in srgb, var(--brume) 25%, transparent); }
.ogr-attestation__liste a { color: var(--blanc); text-decoration: none; }
.ogr-attestation__liste a:hover { text-decoration: underline; text-decoration-color: var(--or); }
.ogr-attestation .ogr-poles__numero { color: var(--or); }
.ogr-attestation__compte { font: 400 1.05rem/1.2 var(--titre-police); color: var(--brume); }
.ogr-attestation__ligne { margin-block: 0; padding-block: 1.1rem 1.6rem; border-top: 1px solid color-mix(in srgb, var(--or) 55%, transparent); font-size: .88rem; color: var(--brume); }

/* ------------------------------------------------------------------ 404 : classé sans suite */
.ogr-sans-suite { padding-block: var(--respiration); background: var(--trame), var(--nuit); color: var(--blanc); }
.ogr-sans-suite__rang { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 2rem clamp(2rem, 5vw, 5rem); align-items: center; }
.ogr-sans-suite__chiffre { margin: 0 0 .3rem; font: 400 clamp(5rem, 3rem + 8vw, 9.5rem)/.9 var(--titre-police); font-variant-numeric: lining-nums; color: var(--blanc); }
.ogr-sans-suite h1 { color: var(--blanc); max-width: 20ch; font-size: clamp(2rem, 1.4rem + 2.4vw, 3.2rem); }
.ogr-sans-suite__phrase { max-width: 52ch; font-size: 1.15rem; color: var(--brume); }
.ogr-sans-suite__texte a { color: var(--blanc); }
.ogr-onglets-poles--sans-suite { margin-block: 0 1.8rem; }

/* ------------------------------------------------------------------ largeurs intermédiaires et mobile */
@media (max-width: 62rem) {
  .ogr-entete { position: static; }
  .ogr-intitule__rang { grid-template-columns: minmax(0, 1fr); }
  .ogr-note__plan { grid-template-columns: minmax(0, 1fr); }
  .ogr-annexes { position: static; }
  .ogr-attestation__colonnes { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .ogr-attestation__bloc--large { grid-column: 1 / -1; }
}
@media (max-width: 48rem) {
  .ogr-perimetre { width: min(100% - 2rem, var(--perimetre)); }
  .ogr-poles__liste { gap: 0 1.1rem; }
  .ogr-annonce__piece { min-height: 0; padding-top: 14rem; }
  .ogr-annonce__texte { padding-block: 1.6rem 2rem; }
  .ogr-organigramme__tete { flex-direction: column; align-items: flex-start; }
  .ogr-piece { grid-template-columns: 5.2rem minmax(0, 1fr); gap: .5rem 1rem; }
  .ogr-piece__date { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: baseline; gap: .8rem; font-size: 1.05rem; }
  .ogr-piece--pole { grid-template-columns: 3.6rem minmax(0, 1fr); }
  .ogr-pole-frontispice__rang, .ogr-sans-suite__rang { grid-template-columns: minmax(0, 1fr); }
  .ogr-embleme--pole, .ogr-embleme--sans-suite { width: 5.5rem; }
  .ogr-attestation__colonnes { grid-template-columns: minmax(0, 1fr); }
  .ogr-chiffres--preuves { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media print {
  .ogr-entete, .ogr-annexes, .ogr-attestation, .ogr-onglets-poles { display: none; }
  .ogr-note__frontispice, .ogr-pieces, .ogr-pole-frontispice { background: none; color: var(--nuit); }
}

/* couleur par pôle : --ogr-rc est posée en ligne sur le lien d'une rubrique */
.ogr-poles__lien .ogr-poles__numero{color:var(--ogr-rc)}
.ogr-illustration__humaine{display:block;margin-bottom:.25rem;font-weight:400}
