/* =============================================================
   BLOG SINGLE — Aération typographique
   -------------------------------------------------------------
   Appliqué uniquement sur les articles single-post (body.single-post).
   Cible le widget Elementor `theme-post-content` qui rend the_content().

   Décisions design :
   - H2 : margin-top généreux (~2.4em ≈ 40px) pour respiration entre sections
   - H3 : margin-top intermédiaire (~1.8em ≈ 30px)
   - H4 : margin-top moyen (~1.4em ≈ 22px)
   - Paragraphes : margin-bottom standard (1.1em)
   - Listes : margin-bottom 1.2em pour respiration avant prochain bloc
   - Blockquote : marges symétriques 1.5em
   - 1er enfant du contenu : margin-top: 0 (évite le saut au-dessus du 1er bloc)
   @since 2026-04-27
   ============================================================= */

.single-post .elementor-widget-theme-post-content,
.single-post .elementor-widget-theme-post-content .elementor-widget-container {
	/* Cadre de référence : le scope du contenu éditorial uniquement */
}

/* === Headings du contenu : aération entre sections === */
.single-post .elementor-widget-theme-post-content h2 {
	margin-top: 2.4em;
	margin-bottom: 0.7em;
	line-height: 1.25;
}
.single-post .elementor-widget-theme-post-content h3 {
	margin-top: 1.8em;
	margin-bottom: 0.55em;
	line-height: 1.3;
}
.single-post .elementor-widget-theme-post-content h4 {
	margin-top: 1.4em;
	margin-bottom: 0.45em;
	line-height: 1.35;
}
.single-post .elementor-widget-theme-post-content h5,
.single-post .elementor-widget-theme-post-content h6 {
	margin-top: 1.2em;
	margin-bottom: 0.4em;
}

/* === Paragraphes : marges harmoniques === */
.single-post .elementor-widget-theme-post-content p {
	margin-top: 0;
	margin-bottom: 1.1em;
}

/* === Listes : un peu d'air avant et après === */
.single-post .elementor-widget-theme-post-content ul,
.single-post .elementor-widget-theme-post-content ol {
	margin-top: 0.4em;
	margin-bottom: 1.3em;
	padding-left: 1.5em;
}
.single-post .elementor-widget-theme-post-content li {
	margin-bottom: 0.35em;
}
.single-post .elementor-widget-theme-post-content li:last-child {
	margin-bottom: 0;
}

/* === Listes imbriquées : pas de double margin === */
.single-post .elementor-widget-theme-post-content ul ul,
.single-post .elementor-widget-theme-post-content ul ol,
.single-post .elementor-widget-theme-post-content ol ul,
.single-post .elementor-widget-theme-post-content ol ol {
	margin-top: 0.3em;
	margin-bottom: 0.3em;
}

/* === Blockquote : citations bien dégagées === */
.single-post .elementor-widget-theme-post-content blockquote {
	margin: 1.6em 0;
	padding-left: 1.2em;
	border-left: 3px solid #B8935C;
	font-style: italic;
}

/* === Images / figures du contenu : un peu d'air === */
.single-post .elementor-widget-theme-post-content figure,
.single-post .elementor-widget-theme-post-content .wp-block-image {
	margin-top: 1.5em;
	margin-bottom: 1.5em;
}

/* === Tables : marges + lisibilité === */
.single-post .elementor-widget-theme-post-content table {
	margin-top: 1.5em;
	margin-bottom: 1.5em;
}

/* === Premier enfant : pas de margin-top (évite saut inutile en haut) === */
.single-post .elementor-widget-theme-post-content > .elementor-widget-container > *:first-child {
	margin-top: 0 !important;
}

/* === Dernier enfant : pas de margin-bottom (évite saut avant CTA) === */
.single-post .elementor-widget-theme-post-content > .elementor-widget-container > *:last-child {
	margin-bottom: 0 !important;
}

/* === Mobile : un poil moins généreux pour ne pas perdre trop d'écran === */
@media (max-width: 680px) {
	.single-post .elementor-widget-theme-post-content h2 {
		margin-top: 1.8em;
		margin-bottom: 0.55em;
	}
	.single-post .elementor-widget-theme-post-content h3 {
		margin-top: 1.4em;
	}
	.single-post .elementor-widget-theme-post-content h4 {
		margin-top: 1.1em;
	}
	.single-post .elementor-widget-theme-post-content p {
		margin-bottom: 1em;
	}
}
