/* =========================================================
   Gabarit des pages intérieures
   Repris du gabarit de référence presidence-cg-gabarit-interieur.
   Toutes les classes sont préfixées pcg- : aucune collision
   possible avec la maquette d'accueil.
   ========================================================= */

/* ================= GABARIT DES PAGES INTÉRIEURES ================= */

/* en-tête plein : pas de photo derrière, donc fond vert opaque */
/* En-tête des pages intérieures.
 *
 * Le menu (.sommet.plein) n'est plus imbriqué dans .hero — voir la
 * note dans header.php : un élément collant (position:sticky) ne
 * peut pas dépasser la boîte de son parent positionné, et .hero avait
 * une hauteur limitée au bandeau de titre. Le menu décrochait donc
 * dès que la page dépassait cette hauteur. En sortant le menu de ce
 * conteneur, il reste épinglé sur toute la longueur de la page.
 *
 * .sommet.plein est déjà collant dans _base.css (position:sticky,
 * top:0) ; on ne redéfinit ici que le fond, puisqu'il n'y a plus de
 * diaporama derrière lui. La barre d'État se replie au défilement et
 * le logo se réduit via les règles .fige de la maquette, appliquées
 * telles quelles.
 */
.sommet.plein{background:var(--vert)}
.sommet.plein .etat{background:var(--vert-fonce)}

/* bandeau de titre */
.pcg-bandeau{background:var(--blanc);border-bottom:1px solid var(--filet);position:relative;padding:30px 0 34px}
.pcg-bandeau::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;
  background:linear-gradient(90deg,var(--vert-fonce) 0 70%,#FFD100 70% 85%,#DC241F 85% 100%)}
.pcg-ariane{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;color:var(--gris);margin-bottom:14px}
.pcg-ariane a:hover{color:var(--vert-texte)}
.pcg-ariane .pcg-sep{opacity:.5}
.pcg-ariane [aria-current]{color:var(--encre)}
.pcg-bandeau h1{font-size:38px;line-height:1.2;color:var(--encre);max-width:22ch}
.pcg-bandeau .pcg-chapo{margin-top:14px;font-size:16.5px;line-height:1.6;color:var(--gris);max-width:70ch}
.pcg-bandeau .pcg-meta{margin-top:16px;display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center}

/* corps de page : contenu + colonne latérale */
.pcg-page{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:start;
  padding-top:52px;padding-bottom:72px}

/* zone de contenu éditorial */
.pcg-contenu{max-width:74ch;font-size:16.5px;line-height:1.75;color:var(--encre)}
.pcg-contenu > * + *{margin-top:20px}
.pcg-contenu h2{font-size:26px;line-height:1.3;color:var(--vert-texte);margin-top:44px;
  padding-bottom:10px;border-bottom:1px solid var(--filet)}
.pcg-contenu h3{font-size:20px;line-height:1.35;color:var(--encre);margin-top:32px}
.pcg-contenu ul,.pcg-contenu ol{padding-left:22px}
.pcg-contenu li + li{margin-top:8px}
.pcg-contenu p a,.pcg-contenu li a,.pcg-contenu td a,.pcg-contenu blockquote a{
  color:var(--vert-texte);text-decoration:underline;text-underline-offset:3px}
.pcg-contenu p a:hover,.pcg-contenu li a:hover,.pcg-contenu td a:hover,.pcg-contenu blockquote a:hover{color:var(--encre)}

/* les cartes gardent leur propre typographie dans une zone de contenu */
.pcg-contenu .pcg-carte h3,.pcg-contenu .pcg-une-art h2{margin-top:0}
.pcg-contenu .pcg-carte .pcg-corps{padding-top:10px;gap:5px}
.pcg-contenu .pcg-carte h3 a,.pcg-contenu .pcg-une-art h2 a,.pcg-contenu .pcg-carte .pcg-corps p a{text-decoration:none}
.pcg-contenu .pcg-carte .pcg-date,.pcg-contenu .pcg-une-art .pcg-date{margin-top:0}
.pcg-contenu .pcg-encadre li a{color:var(--vert-texte)}
.pcg-contenu blockquote{border-left:3px solid var(--or);background:var(--blanc);
  padding:20px 24px;font-family:var(--police-titres,'Marcellus',serif);font-size:19px;line-height:1.55}
.pcg-contenu blockquote cite{display:block;margin-top:10px;font-family:var(--police-texte,'Inter',sans-serif);
  font-size:13px;font-style:normal;color:var(--gris)}
.pcg-contenu figure{margin-top:30px}
.pcg-contenu figure img{width:100%;display:block}
.pcg-contenu figcaption{font-size:13px;color:var(--gris);padding-top:9px;border-top:1px solid var(--filet);margin-top:9px}
.pcg-contenu table{width:100%;border-collapse:collapse;font-size:15px}
.pcg-contenu th,.pcg-contenu td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--filet)}
.pcg-contenu th{background:var(--blanc);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gris)}

/* pièces jointes */
.pcg-pieces{display:flex;flex-direction:column;gap:12px;margin-top:14px}
.pcg-piece{display:flex;align-items:center;gap:14px;background:var(--blanc);
  border:1px solid var(--filet);border-left:3px solid var(--rouge);padding:15px 18px;
  transition:border-color .24s ease,box-shadow .24s ease}
.pcg-piece .pcg-fmt{font-family:'IBM Plex Mono',monospace;font-size:11.5px;color:var(--rouge);flex:none}
.pcg-piece .pcg-nom{flex:1;font-size:14.5px;font-weight:600;color:var(--encre);line-height:1.35}
.pcg-piece .pcg-poids{font-size:12.5px;color:var(--gris);flex:none}
.pcg-piece:hover{border-color:rgba(0,151,57,.35);box-shadow:0 10px 22px rgba(20,32,26,.1)}

/* colonne latérale */
.pcg-laterale{display:flex;flex-direction:column;gap:22px;position:sticky;top:24px}
.pcg-encart{background:var(--blanc);border:1px solid var(--filet);border-top:3px solid var(--vert);padding:20px 20px 18px}
.pcg-encart h2{font-family:var(--police-titres,'Marcellus',serif);font-size:19px;color:var(--encre);margin-bottom:14px}
.pcg-encart ul{list-style:none;display:flex;flex-direction:column}
.pcg-encart li + li{border-top:1px solid var(--filet)}
.pcg-encart li a{display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:11px 0;font-size:14.5px;color:var(--encre);transition:color .22s ease}
.pcg-encart li a span{color:var(--vert-texte);transition:transform .26s cubic-bezier(.2,.7,.3,1)}
.pcg-encart li a:hover{color:var(--vert-texte)}
.pcg-encart li a:hover span{transform:translateX(5px)}
.pcg-encart li a[aria-current]{color:var(--vert-texte);font-weight:600}

/* pagination */
.pcg-pagination{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:44px;
  padding-top:26px;border-top:1px solid var(--filet)}
.pcg-pagination a{min-width:42px;height:42px;display:grid;place-items:center;padding:0 14px;
  border:1px solid var(--filet);font-size:14.5px;color:var(--encre);transition:background .2s,border-color .2s,color .2s}
.pcg-pagination a:hover{border-color:var(--vert);background:var(--vert);color:#fff}
.pcg-pagination a[aria-current]{background:var(--vert-fonce);border-color:var(--vert-fonce);color:#fff}

@media(max-width:1000px){
  .pcg-page{grid-template-columns:1fr;gap:38px;padding-top:38px;padding-bottom:52px}
  .pcg-laterale{position:static}
  .pcg-bandeau h1{font-size:30px;max-width:none}
}
@media(max-width:680px){
  .pcg-bandeau{padding:22px 0 26px}
  .pcg-bandeau h1{font-size:25px}
  .pcg-contenu{font-size:16px}
  .pcg-contenu h2{font-size:22px;margin-top:34px}
  .pcg-piece{flex-wrap:wrap;gap:8px 12px}
}

/* ---------- menu épinglé ---------- */
.pcg-sommet{transition:transform .4s cubic-bezier(.2,.7,.3,1),background .28s ease,box-shadow .3s ease}
.pcg-sommet .pcg-etat{max-height:38px;overflow:hidden;transition:max-height .32s cubic-bezier(.2,.7,.3,1)}
.pcg-sommet.pcg-fige .pcg-etat{max-height:0}
.pcg-sommet.pcg-plein{position:sticky;top:0;z-index:50;background:var(--vert)}
.pcg-sommet.pcg-plein.pcg-fige{box-shadow:0 2px 18px rgba(0,0,0,.22)}
.pcg-progression{position:absolute;left:0;right:0;bottom:0;height:3px;z-index:6;
  transform:scaleX(0);transform-origin:left;opacity:0;
  background:linear-gradient(90deg,var(--vert-fonce) 0 70%,#FFD100 70% 85%,#DC241F 85% 100%);
  transition:opacity .3s ease}
.pcg-sommet.pcg-fige .pcg-progression{opacity:1}

/* ---------- compléments WordPress ---------- */

/* paginate_links() produit des <span> pour la page courante
   et les points de suspension : on les aligne sur les <a>. */
.pcg-pagination .page-numbers{min-width:42px;height:42px;display:grid;place-items:center;
  padding:0 14px;border:1px solid var(--filet);font-size:14.5px;color:var(--encre);
  transition:background .2s,border-color .2s,color .2s}
.pcg-pagination a.page-numbers:hover{border-color:var(--vert);background:var(--vert);color:#fff}
.pcg-pagination .page-numbers.current{background:var(--vert-fonce);border-color:var(--vert-fonce);color:#fff}
.pcg-pagination .page-numbers.dots{border-color:transparent}

/* chapô d'article, distinct du chapô de bandeau */
.pcg-contenu .pcg-chapo-article{font-size:18.5px;line-height:1.62;color:var(--encre);
  padding-left:20px;border-left:3px solid var(--or)}

/* grille de cartes à l'intérieur d'une zone de contenu */
.pcg-contenu .pcg-grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));
  gap:30px 26px;margin-top:26px}
.pcg-contenu .pcg-grille > *{margin-top:0}

/* le contenu perd sa contrainte de mesure quand il porte une grille */
.pcg-contenu.pcg-large{max-width:none}

/* barre de filtres au-dessus d'une liste */
.pcg-filtres{display:flex;align-items:baseline;justify-content:space-between;gap:20px;
  flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid var(--filet)}
.pcg-filtres .pcg-compte{font-family:'IBM Plex Mono',monospace;font-size:12.5px;color:var(--gris)}
.pcg-filtres nav{display:flex;gap:8px;flex-wrap:wrap}
.pcg-filtres nav a{font-size:12.5px;padding:7px 14px;border:1px solid var(--filet);
  background:var(--blanc);transition:.18s}
.pcg-filtres nav a:hover{border-color:var(--vert);color:var(--vert-texte)}
.pcg-filtres nav a.pcg-actif{background:var(--vert);border-color:var(--vert);color:#fff}

/* formulaire d'abonnement de la colonne latérale */
.pcg-abonnement{background:var(--vert-fonce);color:#fff;padding:22px 20px 20px}
.pcg-abonnement .pcg-titre-ab{font-family:var(--police-titres,'Marcellus',serif);font-size:18px;margin-bottom:8px}
.pcg-abonnement p{font-size:13.5px;line-height:1.55;color:rgba(255,255,255,.86);margin-bottom:14px}
.pcg-abonnement label{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--or);margin-bottom:7px}
.pcg-abonnement input{width:100%;padding:11px 13px;font:inherit;font-size:14px;
  border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:#fff}
.pcg-abonnement input::placeholder{color:rgba(255,255,255,.45)}
.pcg-abonnement button{width:100%;margin-top:10px;padding:12px;border:0;cursor:pointer;
  background:var(--or);color:var(--encre);font:inherit;font-size:13.5px;font-weight:600}
.pcg-abonnement button:hover{background:#FFDE4D}
.pcg-abonnement .pcg-mention-ab{font-size:11.5px;color:rgba(255,255,255,.6);margin:10px 0 0}

/* état vide */
.pcg-vide{text-align:center;padding:56px 20px;color:var(--gris)}
.pcg-vide p{margin-bottom:16px}
.pcg-vide .pcg-btn{display:inline-flex;padding:14px 24px;background:var(--vert);color:#fff;
  font-size:14px;font-weight:600}
.pcg-vide .pcg-btn:hover{background:var(--vert-fonce)}

/* bouton dans une zone de contenu */
.pcg-contenu .pcg-btn{display:inline-flex;align-items:center;gap:12px;padding:14px 24px;
  border:1px solid var(--vert);color:var(--vert-texte);font-size:14px;font-weight:600;
  text-decoration:none;transition:.2s}
.pcg-contenu .pcg-btn:hover{background:var(--vert);color:#fff}
.pcg-contenu .pcg-btn.pcg-plein{background:var(--vert);color:#fff}
.pcg-contenu .pcg-btn.pcg-plein:hover{background:var(--vert-fonce);border-color:var(--vert-fonce)}

/* vidéo intégrée dans une zone de contenu */
.pcg-contenu .pcg-video{position:relative;aspect-ratio:16/9;background:var(--vert-fonce)}
.pcg-contenu .pcg-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* page sans colonne latérale */
.pcg-page.pcg-pleine{grid-template-columns:minmax(0,1fr)}

/* =========================================================
   Composants éditoriaux
   Classes utilisables dans le contenu des pages, via l'éditeur
   en mode HTML. Elles donnent aux pages institutionnelles une
   présentation homogène sans recourir à un constructeur.
   ========================================================= */

/* ---------- sommaire de page ---------- */
.pcg-sommaire{
  background:var(--papier);border:1px solid var(--filet);
  border-left:3px solid var(--vert);
  padding:22px 24px;margin:0 0 34px;
}
.pcg-sommaire h2{
  font-family:var(--police-texte,'Inter',sans-serif);
  font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gris);margin:0 0 14px;padding:0;border:0;
}
.pcg-sommaire ol{list-style:none;counter-reset:som;margin:0;padding:0;
  columns:2;column-gap:34px}
.pcg-sommaire li{counter-increment:som;margin:0 0 9px;break-inside:avoid}
.pcg-sommaire li::before{
  content:counter(som,decimal-leading-zero);
  font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--rouge);
  margin-right:10px;
}
.pcg-sommaire a{font-size:14.5px;color:var(--encre);text-decoration:none}
.pcg-sommaire a:hover{color:var(--vert-texte);text-decoration:underline}

/* ---------- encadré ---------- */
.pcg-encadre{
  background:var(--vert-fonce);color:#fff;
  padding:26px 28px;margin:34px 0;
}
.pcg-encadre h3{
  font-family:var(--police-titres,'Marcellus',serif);
  font-size:20px;color:#fff;margin:0 0 12px;padding:0;border:0;
}
.pcg-encadre p{color:rgba(255,255,255,.9);font-size:15px;margin:0 0 .8em}
.pcg-encadre p:last-child{margin-bottom:0}
.pcg-encadre a{color:var(--or);text-decoration:underline}
.pcg-encadre.pcg-clair{background:var(--papier);color:var(--encre);border-left:3px solid var(--or)}
.pcg-encadre.pcg-clair h3{color:var(--encre)}
.pcg-encadre.pcg-clair p{color:var(--encre)}
.pcg-encadre.pcg-clair a{color:var(--vert-texte)}

/* ---------- chiffres clés ---------- */
.pcg-chiffres{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:1px;background:var(--filet);border:1px solid var(--filet);
  margin:34px 0;
}
.pcg-chiffres > div{background:var(--blanc);padding:22px 18px;text-align:center}
.pcg-chiffres strong{
  display:block;font-family:var(--police-titres,'Marcellus',serif);
  font-size:30px;line-height:1;color:var(--vert-fonce);font-weight:400;
}
.pcg-chiffres span{
  display:block;font-size:10.5px;font-weight:600;letter-spacing:.11em;
  text-transform:uppercase;color:var(--gris);margin-top:9px;line-height:1.4;
}

/* ---------- fiche de renseignements ---------- */
.pcg-fiche{margin:30px 0;border-top:1px solid var(--filet)}
.pcg-fiche > div{
  display:grid;grid-template-columns:210px minmax(0,1fr);gap:20px;
  padding:14px 0;border-bottom:1px solid var(--filet);
}
.pcg-fiche dt,.pcg-fiche .pcg-cle{
  font-size:11px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;
  color:var(--gris);padding-top:3px;
}
.pcg-fiche dd,.pcg-fiche .pcg-val{margin:0;font-size:15.5px;line-height:1.55}

/* ---------- repères chronologiques ---------- */
.pcg-etapes{list-style:none;margin:32px 0;padding:0 0 0 26px;position:relative}
.pcg-etapes::before{
  content:"";position:absolute;left:0;top:6px;bottom:6px;width:1px;background:var(--filet);
}
.pcg-etapes li{position:relative;padding:0 0 26px 0}
.pcg-etapes li:last-child{padding-bottom:0}
.pcg-etapes li::before{
  content:"";position:absolute;left:-30px;top:7px;
  width:9px;height:9px;background:var(--or);transform:rotate(45deg);
}
.pcg-etapes .pcg-annee{
  display:block;font-family:'IBM Plex Mono',monospace;
  font-size:12.5px;color:var(--rouge);margin-bottom:5px;
}
.pcg-etapes strong{display:block;font-size:16px;margin-bottom:5px}
.pcg-etapes p{margin:0;font-size:14.5px;color:var(--gris);line-height:1.6}

/* ---------- cartes de rubrique ---------- */
.pcg-cartes{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));
  gap:2px;background:var(--filet);border:1px solid var(--filet);margin:32px 0;
}
.pcg-cartes a{
  display:block;background:var(--blanc);padding:22px 20px;
  text-decoration:none;color:var(--encre);transition:background .2s ease;
}
.pcg-cartes a:hover{background:var(--papier)}
.pcg-cartes strong{
  display:block;font-family:var(--police-titres,'Marcellus',serif);
  font-weight:400;font-size:18px;margin-bottom:7px;
}
.pcg-cartes span{display:block;font-size:13.5px;line-height:1.5;color:var(--gris)}
.pcg-cartes a::after{
  content:"→";display:inline-block;margin-top:12px;
  color:var(--vert-texte);font-size:14px;transition:transform .2s ease;
}
.pcg-cartes a:hover::after{transform:translateX(4px)}

/* ---------- mention « à compléter » ---------- */
.pcg-acompleter{
  display:block;background:#FFF6D6;border:1px dashed #C9A227;
  padding:14px 16px;margin:18px 0;
  font-size:13.5px;color:#7A5C00;
}
.pcg-acompleter::before{content:"À compléter — ";font-weight:600}

@media(max-width:640px){
  .pcg-sommaire ol{columns:1}
  .pcg-fiche > div{grid-template-columns:1fr;gap:5px}
  .pcg-encadre{padding:22px 20px}
}

/* =========================================================
   Effets et finitions des pages intérieures
   Tout est désactivé si le visiteur demande la réduction
   des animations.
   ========================================================= */

/* ---------- barre de progression de lecture ---------- */
.pcg-progression{
  position:fixed;top:0;left:0;right:0;height:3px;z-index:60;
  background:transparent;pointer-events:none;
  opacity:0;transition:opacity .3s ease;
}
.pcg-progression.pcg-visible{opacity:1}
.pcg-progression i{
  display:block;height:100%;transform-origin:0 50%;transform:scaleX(0);
  background:linear-gradient(90deg,var(--vert) 0%,var(--or) 82%,var(--rouge) 100%);
}

/* ---------- ancrage sous l'en-tête épinglé ---------- */
.pcg-contenu h2,
.pcg-contenu h3,
.pcg-contenu [id]{scroll-margin-top:104px}

/* ---------- lien d'ancre sur les titres ---------- */
.pcg-contenu h2,
.pcg-contenu h3{position:relative}
.pcg-ancre{
  position:absolute;left:-26px;top:50%;transform:translateY(-50%);
  width:22px;text-align:center;
  color:var(--or);font-size:17px;line-height:1;text-decoration:none;
  opacity:0;transition:opacity .2s ease;
}
.pcg-contenu h2:hover .pcg-ancre,
.pcg-contenu h3:hover .pcg-ancre,
.pcg-ancre:focus-visible{opacity:1}
@media(max-width:1180px){.pcg-ancre{display:none}}

/* ---------- sommaire : section en cours de lecture ---------- */
.pcg-sommaire li{position:relative;transition:opacity .25s ease}
.pcg-sommaire a{
  position:relative;padding-bottom:1px;
  background-image:linear-gradient(var(--vert),var(--vert));
  background-size:0 1px;background-position:0 100%;background-repeat:no-repeat;
  transition:background-size .3s ease,color .2s ease;
}
.pcg-sommaire a:hover{text-decoration:none;background-size:100% 1px}
.pcg-sommaire a.pcg-lu{color:var(--vert-texte);font-weight:600;background-size:100% 1px}
.pcg-sommaire li:has(a.pcg-lu)::before{color:var(--vert-texte)}

/* ---------- apparition au défilement ---------- */
.pcg-revele{
  opacity:0;transform:translateY(14px);
  transition:opacity .62s cubic-bezier(.2,.7,.3,1),transform .62s cubic-bezier(.2,.7,.3,1);
}
.pcg-revele.pcg-vu{opacity:1;transform:none}

/* ---------- images du contenu ---------- */
.pcg-contenu figure{position:relative;overflow:hidden}
.pcg-contenu figure img{
  transition:transform .8s cubic-bezier(.2,.7,.3,1);
  will-change:transform;
}
.pcg-contenu figure:hover img{transform:scale(1.02)}

/* ---------- tableaux ---------- */
.pcg-table-defile{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  margin:26px 0;border:1px solid var(--filet);
}
.pcg-table-defile table{margin:0;border:0;min-width:520px}
.pcg-table-defile:focus-visible{outline:2px solid var(--or);outline-offset:2px}

/* ---------- encart latéral : liseré au survol ---------- */
.pcg-encart li a{
  position:relative;padding-left:0;
  transition:padding-left .22s ease,color .22s ease;
}
.pcg-encart li a:hover{padding-left:9px}
.pcg-encart li a::before{
  content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:3px;height:0;background:var(--or);transition:height .22s ease;
}
.pcg-encart li a:hover::before{height:16px}
.pcg-encart li a[aria-current="page"]{color:var(--vert-texte);font-weight:600;padding-left:9px}
.pcg-encart li a[aria-current="page"]::before{height:16px;background:var(--vert)}

/* ---------- pièces jointes : élévation au survol ---------- */
.pcg-piece{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.pcg-piece:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(20,32,26,.1)}

/* ---------- respect des préférences système ---------- */
@media(prefers-reduced-motion:reduce){
  .pcg-revele{opacity:1;transform:none;transition:none}
  .pcg-contenu figure img,
  .pcg-piece,
  .pcg-encart li a{transition:none}
  .pcg-contenu figure:hover img{transform:none}
  .pcg-piece:hover{transform:none}
  .pcg-progression i{transition:none}
}

/* =========================================================
   Impression
   Sur un site d'État, les textes réglementaires sont imprimés.
   ========================================================= */
@media print{
  .hero,.pcg-bandeau .pcg-ariane,.pcg-laterale,.pcg-pagination,
  .partage,.lire-aussi,footer,.haut-page,.pcg-progression,
  .pcg-ancre,.pcg-sommaire{display:none !important}

  body{background:#fff;color:#000;font-size:11pt;line-height:1.5}
  .pcg-page{display:block;padding:0}
  .pcg-contenu{max-width:none}

  /* Rappel de l'origine du document en tête de page imprimée */
  .pcg-bandeau{padding:0 0 14pt;border-bottom:1pt solid #000;margin-bottom:18pt}
  .pcg-bandeau h1{font-size:20pt;color:#000}
  .pcg-bandeau .pcg-chapo{font-size:11pt;color:#333}
  .pcg-bandeau::before{
    content:"Présidence de la République du Congo";
    display:block;font-size:9pt;letter-spacing:.1em;
    text-transform:uppercase;margin-bottom:10pt;
  }

  .pcg-contenu h2{color:#000;border-bottom:1pt solid #999;page-break-after:avoid}
  .pcg-contenu h3{page-break-after:avoid}
  .pcg-contenu figure,.pcg-encadre,.pcg-fiche,
  .pcg-etapes li,.pcg-chiffres{page-break-inside:avoid}
  .pcg-encadre{background:none;color:#000;border:1pt solid #000;padding:10pt}
  .pcg-encadre h3{color:#000}
  .pcg-encadre p{color:#000}
  .pcg-acompleter{border:1pt dashed #000;background:none;color:#000}

  /* Les adresses des liens sont imprimées : un document papier
     doit rester utilisable sans écran. */
  .pcg-contenu a[href^="http"]::after{
    content:" (" attr(href) ")";font-size:9pt;color:#444;word-break:break-all;
  }
  .pcg-contenu a[href^="#"]::after{content:""}
}

/* =========================================================
   Colonne latérale enrichie
   ========================================================= */

.pcg-laterale{display:flex;flex-direction:column;gap:22px}

.pcg-encart-tout{
  display:inline-flex;align-items:center;gap:8px;
  margin-top:16px;padding-top:14px;
  border-top:1px solid var(--filet);
  width:100%;
  font-size:12.5px;font-weight:600;color:var(--vert-texte);
  text-decoration:none;
}
.pcg-encart-tout span{transition:transform .2s ease;display:inline-block}
.pcg-encart-tout:hover{text-decoration:underline}
.pcg-encart-tout:hover span{transform:translateX(4px)}

/* ---------- listes à vignette ---------- */
.pcg-mini-actus,.pcg-mini-agenda,.pcg-mini-actes{
  list-style:none;margin:0;padding:0;
}
.pcg-mini-actus li,.pcg-mini-agenda li,.pcg-mini-actes li{
  border-bottom:1px solid var(--filet);
}
.pcg-mini-actus li:last-child,
.pcg-mini-agenda li:last-child,
.pcg-mini-actes li:last-child{border-bottom:0}

.pcg-mini-actus a,.pcg-mini-agenda a{
  display:grid;grid-template-columns:58px minmax(0,1fr);gap:13px;
  align-items:start;padding:13px 0;text-decoration:none;color:var(--encre);
}
.pcg-mini-actes a{display:block;padding:13px 0;text-decoration:none;color:var(--encre)}

.pcg-mini-vignette{
  display:block;width:58px;height:44px;overflow:hidden;background:var(--vert-fonce);
}
.pcg-mini-vignette img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .5s cubic-bezier(.2,.7,.3,1);
}
.pcg-mini-actus a:hover .pcg-mini-vignette img{transform:scale(1.06)}

.pcg-mini-texte{display:block;min-width:0}
.pcg-mini-titre{
  display:block;font-size:13.5px;line-height:1.4;font-weight:500;
  transition:color .2s ease;
}
.pcg-mini-actus a:hover .pcg-mini-titre,
.pcg-mini-agenda a:hover .pcg-mini-titre,
.pcg-mini-actes a:hover .pcg-mini-titre{color:var(--vert-texte)}
.pcg-mini-date{
  display:block;font-family:'IBM Plex Mono',monospace;
  font-size:11px;color:var(--gris);margin-top:5px;
}
.pcg-mini-ref{
  display:block;font-family:'IBM Plex Mono',monospace;
  font-size:11px;color:var(--rouge);margin-bottom:4px;
}

/* pastille de date de l'agenda */
.pcg-pastille{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  width:44px;height:44px;background:var(--papier);border:1px solid var(--filet);
  transition:border-color .2s ease,background .2s ease;
}
.pcg-mini-agenda a:hover .pcg-pastille{border-color:var(--vert);background:var(--blanc)}
.pcg-pastille .pcg-j{
  font-family:var(--police-titres,'Marcellus',serif);font-size:16px;line-height:1;
}
.pcg-pastille .pcg-m{
  font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--gris);margin-top:2px;
}
.pcg-mini-agenda a{grid-template-columns:44px minmax(0,1fr)}

/* Le module d'actualités reste sobre : pas de liseré au survol,
   qui est réservé à la navigation de rubrique. */
.pcg-encart-actus li a::before{display:none}
.pcg-encart-actus li a:hover{padding-left:0}

/* ---------- recherche de la page 404 ---------- */
.pcg-recherche-404{margin:30px 0 10px}
.pcg-recherche-404 label{
  display:block;font-size:10.5px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--gris);margin-bottom:9px;
}
.pcg-recherche-404 > div{display:flex;gap:0;max-width:560px}
.pcg-recherche-404 input{
  flex:1;min-width:0;padding:14px 16px;font:inherit;font-size:15px;
  border:1px solid var(--filet);border-right:0;background:var(--blanc);
}
.pcg-recherche-404 input:focus{outline:none;border-color:var(--vert)}
.pcg-recherche-404 button{
  padding:0 24px;border:1px solid var(--vert);background:var(--vert);color:#fff;
  font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;white-space:nowrap;
}
.pcg-recherche-404 button:hover{background:var(--vert-fonce);border-color:var(--vert-fonce)}

/* ---------- introduction de la page Cabinet ---------- */
.pcg-intro-cabinet{max-width:74ch;margin:0 0 44px}
.pcg-intro-cabinet p{font-size:16.5px;line-height:1.75;margin:0 0 1em}

/* ---------- coordination avec la barre de progression de lecture ---------- */
/* .progression (dans .sommet) indique le défilement global de la page ;
   .pcg-progression (ajoutée par interieur.js) indique l'avancement dans
   le texte de l'article. Les deux sont fines et à des positions
   différentes (bord bas du menu / haut de l'écran) : pas de conflit
   visuel, mais on le documente pour éviter qu'un futur ajustement de
   l'une abîme l'autre par inadvertance. */
