/* Feuille commune aux pages de fiches. Elle est SÉPARÉE et non recopiée
   dans chaque page : deux mille copies d'un même kilooctet et demi pèsent
   trois mégaoctets sur le dépôt, que le navigateur retéléchargerait à chaque
   page. Un seul fichier, mis en cache une fois, et des pages de trois
   kilooctets. */
:root {
  --encre: #17211f; --doux: #5a6b66; --fond: #fbfaf7; --carte: #fff;
  --trait: #e4e0d7; --lien: #0e5a4e;
}
/* L'apparence sombre (24/09/2026), choisie dans le menu de l'application
   ou réglée sur l'appareil : le script en tête de page pose data-theme. */
:root[data-theme="dark"] {
  --encre: #edf1ec; --doux: #c3cdc9; --fond: #121a19; --carte: #19231f;
  --trait: #2d3b38; --lien: #8dd3bf; color-scheme: dark;
}
:root[data-theme="dark"] .portes a { color: #0f1a18; }
:root[data-theme="dark"] .portes a.second { background: var(--carte); color: var(--lien); }
* { box-sizing: border-box; }
body {
  margin: 0; background: var(--fond); color: var(--encre);
  font: 16px/1.62 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
        "Helvetica Neue", Arial, sans-serif;
  -webkit-text-size-adjust: 100%;
}
a { color: var(--lien); }
.bande {
  background: var(--carte); border-bottom: 1px solid var(--trait);
  padding: 12px 16px; font-size: 14px; color: var(--doux);
}
.bande a { text-decoration: none; }
main { max-width: 43rem; margin: 0 auto; padding: 22px 16px 8px; }
h1 { font-size: 1.62rem; line-height: 1.24; margin: 0 0 6px; }
h2 { font-size: 1.1rem; margin: 26px 0 10px; }
.chapeau { color: var(--doux); margin: 0 0 20px; font-size: 1.02rem; }
.bloc {
  background: var(--carte); border: 1px solid var(--trait); border-radius: 10px;
  padding: 14px 16px; margin: 0 0 16px;
}
dl { margin: 0; display: grid; grid-template-columns: 11rem 1fr; gap: 6px 14px; }
dt { color: var(--doux); font-size: .86rem; }
dd { margin: 0; }
.contacts { list-style: none; margin: 0; padding: 0; }
.contacts li { margin: 0 0 6px; }
.portes { display: flex; flex-wrap: wrap; gap: 10px; margin: 18px 0; }
.portes a {
  background: var(--lien); color: #fff; text-decoration: none;
  padding: 11px 16px; border-radius: 8px; font-weight: 600; font-size: .95rem;
}
.portes a.second { background: #fff; color: var(--lien);
                   border: 1px solid var(--lien); }
.liste { list-style: none; margin: 0; padding: 0; }
.liste li { padding: 8px 0; border-bottom: 1px solid var(--trait); }
.liste li:last-child { border-bottom: 0; }
.quoi { color: var(--doux); font-size: .88rem; }
.colonnes { columns: 2 14rem; column-gap: 24px; }
footer {
  max-width: 43rem; margin: 0 auto; padding: 18px 16px 40px;
  color: var(--doux); font-size: .82rem; border-top: 1px solid var(--trait);
}
footer a { color: var(--doux); }
@media (max-width: 34rem) {
  dl { grid-template-columns: 1fr; gap: 2px 0; }
  dd { margin: 0 0 8px; }
}
