/* ==========================================================================
   Articles au nouveau format (single-post-nouveau.php)
   Chargée seulement sur ces articles (header.php). Les anciens articles et les autres
   pages qui utilisent .wrap_post (immobilier, presse) gardent les règles de style.css.
   Le corps du site est à 10 px (62,5 %) : tailles en rem (16 px).
   ========================================================================== */

.article-v2 {
	--av2-accent: #e20613;
	--av2-encre: #2e2f31;
	--av2-encre-douce: #5d5f63;
	--av2-trait: #e3e3e1;
	font-size: 1.125rem; /* 18 px, comme les articles actuels */
	line-height: 1.75;
	text-align: left;
	color: var(--av2-encre);
}
.av2 { max-width: 760px; margin: 0 auto; }

/* L'ancien rendu espace les <br> et colle les titres : neutralisé ici */
.article-v2 br { margin-top: 0 !important; }
.article-v2 .av2-contenu h2,
.article-v2 .av2-contenu h3,
.article-v2 .av2-contenu h4 { text-align: left; line-height: 1.3; color: var(--av2-encre); font-weight: 700; scroll-margin-top: 20px; }
.article-v2 .av2-contenu h2 { font-size: 1.6rem; margin: 2.25rem 0 .9rem !important; padding: 0; }
.article-v2 .av2-contenu h3 { font-size: 1.3rem; margin: 1.75rem 0 .6rem; padding: 0; }
.article-v2 .av2-contenu h4 { font-size: 1.1rem; margin: 1.5rem 0 .5rem; }
.article-v2 .av2-contenu p { margin: 0 0 1.1rem; }
.article-v2 .av2-contenu ul,
.article-v2 .av2-contenu ol { margin: 0 0 1.2rem; padding-left: 1.4rem; }
.article-v2 .av2-contenu ol { list-style: decimal; }
.article-v2 .av2-contenu li { margin-bottom: .35rem; }
.article-v2 .av2-contenu a:not(.btn-cta5) { color: var(--av2-accent); } /* les boutons des encarts gardent leur texte blanc */
.article-v2 .av2-contenu img { max-width: 100%; height: auto; }
.article-v2 .av2-contenu table { width: 100%; border-collapse: collapse; margin: 0 0 1.2rem; font-size: 1rem; }
.article-v2 .av2-contenu th, .article-v2 .av2-contenu td { border: 1px solid var(--av2-trait); padding: .5rem .7rem; text-align: left; }
.article-v2 .av2-contenu blockquote { border-left: 4px solid var(--av2-accent); padding: .3rem 0 .3rem 1rem; margin: 0 0 1.2rem; color: var(--av2-encre-douce); }

/* Repères sous le titre */
.av2-meta { display: flex; flex-wrap: wrap; gap: .3rem 1.2rem; margin: 1.5rem 0 1.25rem; font-size: .95rem; color: var(--av2-encre-douce); }

/* Encadrés « L'essentiel » et « En résumé » : encadré gris du thème */
.article-v2 .av2-encadre { margin: 0 0 1.5rem; padding: 15px 18px; text-align: left; }
.article-v2 .av2-encadre p { margin: 0 0 .5rem; }
.article-v2 .av2-encadre p:last-child { margin-bottom: 0; }
.av2-encadre__titre { display: block; margin-bottom: .35rem; color: var(--av2-accent); }

/* Sommaire */
.av2-sommaire { margin: 0 0 1.75rem; border: 1px solid var(--av2-trait); border-radius: 6px; padding: .6rem 1rem; }
.av2-sommaire summary { cursor: pointer; font-weight: 700; }
.av2-sommaire summary:focus-visible { outline: 3px solid var(--av2-accent); }
.av2-sommaire ol { margin: .5rem 0 .2rem; padding-left: 1.4rem; list-style: decimal; font-size: 1rem; }
.av2-sommaire li { margin: .2rem 0; }
.av2-sommaire a { color: var(--av2-encre); }

/* Appel à l'action (style CTA 5 du thème) */
.article-v2 .cta5 { margin: 2.5rem 0; }
.article-v2 .cta5 p { margin: 0 0 .5rem; }
.article-v2 .av2-cta-second { margin-left: .5rem; background: #fff; color: var(--av2-accent); border: 2px solid var(--av2-accent); }

.av2-auteur { text-align: right; margin: 1.5rem 0; }
.av2-sources { margin: 2rem 0 0; padding-top: 1rem; border-top: 1px solid var(--av2-trait); font-size: .9rem; color: var(--av2-encre-douce); }
.av2-sources p { margin: .3rem 0; }


@media (max-width: 767px) {
	.article-v2 { font-size: 1.0625rem; }
	.article-v2 .av2-contenu h2 { font-size: 1.4rem; }
	.article-v2 .av2-cta-second { margin: .5rem 0 0; }
}
