/* css/partenaires.css
   Styles propres à partenaires.html (Partenaires, élus et écoles).
   Chargée APRÈS styles.css. Réutiliser d'abord les composants partagés de styles.css
   (section « Composants partagés ») et les tokens de :root. Aucune nouvelle couleur.
*/

/* Sommaire de la page */
.p-toc {
  max-width: var(--max); margin: 0 auto; padding: 28px var(--gutter);
  border-bottom: 1px solid var(--rule);
}
.p-toc .p-toc-title { font-size: 1rem; font-weight: 800; line-height: 1.3; font-variation-settings: normal; margin: 0 0 10px; }
.p-toc ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 28px; }
.p-toc a { font-weight: 600; }

/* Blocs successifs dans une section */
.p-block { margin-top: 64px; }
.p-subtitle { font-weight: 800; font-size: 1.75rem; font-variation-settings: "wdth" 72; margin-bottom: 20px; }
.p-resources { margin-top: 32px; }
.fiche + .p-block { margin-top: 56px; }

/* Détail par carrefour dans une fiche */
.p-detail { margin: 0; padding-left: 20px; }
.p-detail li + li { margin-top: 8px; }
.p-detail strong { color: var(--ink); }
.p-note { margin: 10px 0 0; }

/* Leviers régionaux : deux colonnes au large */
.p-levers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 48px; }

/* Partenaires financiers : repère de territoire */
.p-funders dt { display: flex; align-items: center; gap: 10px; }
.p-funders dt::before { content: ""; width: 12px; height: 12px; border-radius: 50%; background: var(--c, var(--ink)); flex: none; }
.p-funders dd { max-width: 52em; }

/* Coordonnées des carrefours */
.p-contacts { list-style: none; margin: 0; padding: 0; border-top: 2px solid var(--ink); }
.p-contacts li {
  display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 4px 24px; align-items: baseline;
  padding: 16px 0; border-bottom: 1px solid var(--rule);
}
.p-contact-name { display: inline-flex; align-items: center; gap: 10px; font-weight: 800; }
.p-contact-name::before { content: ""; width: 12px; height: 12px; border-radius: 50%; background: var(--c); flex: none; }
.p-contacts a { font-weight: 600; }
.p-contacts a[href^="tel:"] { white-space: nowrap; }

@media (max-width: 760px) {
  .p-levers { grid-template-columns: 1fr; }
  .p-block { margin-top: 48px; }
}
@media (max-width: 640px) {
  .p-contacts li { grid-template-columns: 1fr; }
}
