/* Corps d'un article. Chargé par la page publique ET par l'aperçu de
   l'admin : le rendu est le même des deux côtés, par construction.
   Les var(--x, valeur) portent un repli, l'admin n'ayant pas style.css. */
.article-content { font-size: 1.05rem; color: var(--text-dark, #1f2937); line-height: 1.75; }
.article-content > *:first-child { margin-top: 0; }
.article-content p { margin: 0 0 1.15em; }
.article-content h2 {
    font-family: var(--font-display, 'Plus Jakarta Sans', system-ui, sans-serif); font-size: 1.45rem; font-weight: 700; line-height: 1.25;
    color: var(--navy, #1a2d5a); margin: 2.2em 0 .7em;
  }
.article-content h3 {
    font-family: var(--font-display, 'Plus Jakarta Sans', system-ui, sans-serif); font-size: 1.15rem; font-weight: 700; line-height: 1.3;
    color: var(--navy, #1a2d5a); margin: 1.8em 0 .6em;
  }
.article-content ul, .article-content ol { margin: 0 0 1.15em; padding-left: 1.4em; }
.article-content li { margin-bottom: .4em; }
.article-content blockquote {
    margin: 1.8em 0; padding: 4px 0 4px 22px;
    border-left: 3px solid var(--blue, #1e4db7);
    font-size: 1.15rem; line-height: 1.6; color: var(--navy, #1a2d5a); font-style: italic;
  }
.article-content a { color: var(--blue, #1e4db7); text-decoration: underline; text-underline-offset: 2px; }
.article-content strong { font-weight: 700; color: var(--navy, #1a2d5a); }
.article-content hr { border: 0; border-top: 1px solid rgba(26,45,90,.14); margin: 2.4em 0; }
.article-content img { max-width: 100%; height: auto; border-radius: 8px; margin: 1.6em 0; }
