/**
 * Campus — Titre de section (Figma Bloc Sous-titre).
 * Typo : utilitaire thème `.u-typo-sous-titre` (Poppins 800 · 30→40 · uppercase).
 * Mobile : colonne, texte centré, liseret pleine largeur sous le titre.
 * Desktop : rangée + liserets selon alignement (gauche / centre / droite).
 */

.campus-section-title {
	--campus-section-title-gap: 16px;
	--campus-section-title-line: var(--wp--preset--color--neutral-ash, #b8b0a6);
	--campus-section-title-ink: #3e342a;

	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: var(--campus-section-title-gap);
	width: 100%;
	margin: 0;
	box-sizing: border-box;
}

/* Mêmes plafonds que le slider push. */
.campus-section-title--large {
	width: min(100%, calc(var(--campus-wide-width, 1280px) - 40px));
	margin-inline: auto;
}

.campus-section-title--normal {
	width: min(100%, var(--campus-reading-width, 1040px));
	margin-inline: auto;
}

.campus-section-title--narrow {
	width: min(100%, var(--campus-content-width, 720px));
	margin-inline: auto;
}

.campus-section-title__text {
	margin: 0;
	flex: 0 1 auto;
	width: 100%;
	max-width: 100%;
	text-align: center;
	color: var(--campus-section-title-ink);
}

.campus-section-title__line {
	display: none;
	height: 1px;
	background-color: var(--campus-section-title-line);
}

/* Mobile : liseret sous le titre, pleine largeur (tous alignements) */
.campus-section-title__line--after {
	display: block;
	width: 100%;
	flex: 0 0 auto;
	align-self: stretch;
	min-width: 0;
}

@media (min-width: 1024px) {
	.campus-section-title {
		--campus-section-title-gap: 50px;

		flex-direction: row;
		align-items: center;
	}

	.campus-section-title__text {
		width: auto;
		text-align: left;
	}

	.campus-section-title__line {
		flex: 1 1 auto;
		align-self: center;
		min-width: 1.5rem;
		width: auto;
	}

	.campus-section-title__line--after {
		display: none;
	}

	/* Gauche : liseret à droite */
	.campus-section-title--left .campus-section-title__line--after {
		display: block;
	}

	/* Centre : liserets des deux côtés */
	.campus-section-title--center .campus-section-title__line--before,
	.campus-section-title--center .campus-section-title__line--after {
		display: block;
	}

	/* Droite : liseret à gauche */
	.campus-section-title--right .campus-section-title__line--before {
		display: block;
	}
}
