/* ── Sous-titre (collectif) ─────────────────────────────────────────────── */
.ejma-single-formation__subtitle {
	max-width: 900px;
	margin-inline: auto;
	margin-bottom: var(--wp--preset--spacing--50);
	font-family: var(--wp--preset--font-family--base);
	font-size: var(--wp--preset--font-size--large);
}

/* ── Contenu principal ──────────────────────────────────────────────────── */
.ejma-single-formation__content {
	max-width: var(--wp--style--global--content-size);
	margin-inline: auto;
	padding: var(--wp--preset--spacing--60) var(--wp--preset--spacing--50);
}
.ejma-single-formation__content--collectif {
	max-width: var(--wp--style--global--wide-size);
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--wp--preset--spacing--60);
}
@media (min-width: 768px) {
	.ejma-single-formation__content--collectif {
		grid-template-columns: 60% 1fr;
	}
}
.ejma-single-formation__cta {
	padding: var(--wp--preset--spacing--50);
}

/* ── Grille d'infos ──────────────────────────────────────────────────────── */
.ejma-single-formation__infos {
	padding-block: var(--wp--preset--spacing--60);
	background-color: var(--wp--preset--color--light, #f5f5f5);
}
.ejma-single-formation__infos-inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-inline: var(--wp--preset--spacing--50);
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: var(--wp--preset--spacing--50);
	align-items: start;
}
@media (min-width: 640px) {
	.ejma-single-formation__infos-inner {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (min-width: 1024px) {
	.ejma-single-formation__infos-inner {
		grid-template-columns: repeat(4, 1fr);
	}
}

.ejma-single-formation__info-card {
	display: flex;
	flex-direction: column;
	min-height: 382px;
	padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--40);
	text-align: center;
	background-color: var(--wp--preset--color--white);
}
.ejma-single-formation__info-card h3 {
	font-size: var(--wp--preset--font-size--large);
	margin-bottom: 0;
}
.ejma-single-formation__info-card h3 span {
	font-size: var(--wp--preset--font-size--regular);
}
.ejma-single-formation__info-card .wp-block-separator {
	margin-block: var(--wp--preset--spacing--40);
}

.ejma-single-formation__tarif-label {
	margin-top: var(--wp--preset--spacing--40);
	margin-bottom: 0;
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--large);
	color: var(--wp--preset--color--primary);
}
.ejma-single-formation__tarif-note {
	margin-top: auto;
	font-size: var(--wp--preset--font-size--small);
}

.ejma-single-formation__seances {
	font-family: var(--wp--preset--font-family--heading);
	font-size: var(--wp--preset--font-size--large);
	color: var(--wp--preset--color--primary);
	margin-top: var(--wp--preset--spacing--40);
}

.ejma-single-formation__info-card--cta {
	background-color: var(--wp--preset--color--primary) !important;
	padding: var(--wp--preset--spacing--50);
	justify-content: center;
	gap: var(--wp--preset--spacing--40);
	align-self: start;
}
.ejma-single-formation__info-card--cta h3 {
	color: var(--wp--preset--color--white);
}
.ejma-single-formation__info-card--cta .wp-block-button__link {
	color: var(--wp--preset--color--primary);
	background-color: var(--wp--preset--color--white);
}

.ejma-single-formation__teachers {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--wp--preset--spacing--40);
	margin-top: var(--wp--preset--spacing--40);
}

/* ── Teacher cell (CSS dupliqué depuis ejma-teacher-selection/style.css
   car ce bloc peut être utilisé sans ce bloc sur la page) ───────────────── */
.ejma-single-formation .ejma-teacher-cell {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.ejma-single-formation .ejma-teacher-cell__photo {
	display: block;
	width: 80px;
	aspect-ratio: 1;
	border-radius: 9999px;
	background: rgba(0, 0, 0, 0.2) center top / cover no-repeat;
	transition: transform 0.3s ease;
}
.ejma-single-formation .ejma-teacher-cell__name {
	margin-top: 0.75rem;
	text-align: center;
	text-transform: lowercase;
	line-height: 1.1;
	font-family: var(--wp--preset--font-family--title);
	color: var(--wp--preset--color--primary);
}

.ejma-single-formation__tarifs-indiv {
	grid-column: 1 / -1;
}
@media (min-width: 640px) {
	.ejma-single-formation__tarifs-indiv {
		grid-column: span 2;
	}
}
/* Neutralise les spacers surdimensionnés du bloc réutilisable */
.ejma-single-formation__tarifs-indiv .wp-block-spacer {
	height: 32px !important;
}

.ejma-single-formation__frais {
	grid-column: 1 / -1;
	text-align: center;
	font-size: var(--wp--preset--font-size--small);
	margin-top: auto;
	margin-bottom: 0;
}
