/* ==========================================================================
   Ajouts propres à WordPress — tout le reste vient de site.css, inchangé.
   ========================================================================== */

/* Corps des articles. Dans le site Next.js ces styles étaient portés en ligne
   par chaque bloc ; ici le contenu vient de l'éditeur, on les pose sur le
   conteneur. Le premier paragraphe tient lieu de chapô. */
.article-body > p {
  color: var(--soft);
  font-size: 15px;
  line-height: 1.85;
  margin: 0 0 16px;
}
.article-body > p:first-child {
  font-size: 17px;
  line-height: 1.8;
  margin: 0 0 34px;
}
.article-body > h2 {
  font-size: 22px;
  margin: 34px 0 12px;
}
.article-body ul,
.article-body ol {
  color: var(--soft);
  line-height: 1.85;
  padding-left: 22px;
}
.article-body a {
  color: var(--gold);
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* Contenu libre rendu dans une carte (biographie, réponse de FAQ). */
.card-prose > p {
  margin: 0;
}
.card-prose > p + p {
  margin-top: 10px;
}

/* La barre d'administration, visible quand on est connecté, ne doit pas
   passer par-dessus l'en-tête collant. */
.admin-bar .header:not(.header--hero) {
  top: 32px;
}
@media (max-width: 782px) {
  .admin-bar .header:not(.header--hero) {
    top: 46px;
  }
}

/* Classe standard WordPress pour le texte réservé aux lecteurs d'écran. */
.screen-reader-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Portrait réel d'un membre, au même format que le placeholder rayé. */
.portrait {
  aspect-ratio: 4 / 5;
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 18px;
}
.portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
