/**
 * Legal Pages
 * Mise en page partagée des politiques, mentions légales et autres contenus juridiques.
 */

.legal-page {
	background:
		radial-gradient(circle at 8% 5%, rgba(108, 34, 116, 0.08), transparent 28rem),
		#f7f5f2;
	padding: clamp(3rem, 7vw, 6rem) 1.25rem;
}

.legal-page__container {
	margin: 0 auto;
	max-width: 1120px;
}

.legal-page__article {
	background: #fff;
	border: 1px solid rgba(31, 23, 32, 0.08);
	border-radius: 18px;
	box-shadow: 0 18px 60px rgba(31, 23, 32, 0.08);
	overflow: hidden;
}

.legal-page__header {
	background: linear-gradient(135deg, #6c2274 0%, #431549 100%);
	padding: clamp(2rem, 5vw, 4.5rem) clamp(1.5rem, 6vw, 5.5rem);
}

.legal-page__title {
	color: #fff;
	font-size: clamp(2rem, 4.5vw, 3.75rem);
	font-weight: 700;
	letter-spacing: -0.035em;
	line-height: 1.08;
	margin: 0;
	max-width: 900px;
}

.legal-page__content {
	color: #302b31;
	font-size: 1.0625rem;
	line-height: 1.78;
	padding: clamp(2rem, 6vw, 5.5rem);
}

.legal-page__content > :first-child {
	margin-top: 0;
}

.legal-page__content > :last-child {
	margin-bottom: 0;
}

.legal-page__content h2 {
	color: #5c1d63;
	font-size: clamp(1.45rem, 2.6vw, 2rem);
	font-weight: 700;
	letter-spacing: -0.02em;
	line-height: 1.25;
	margin: 3rem 0 1rem;
	padding-top: 1.25rem;
	position: relative;
}

.legal-page__content h2::before {
	background: #d7cd35;
	border-radius: 999px;
	content: "";
	height: 4px;
	left: 0;
	position: absolute;
	top: 0;
	width: 48px;
}

.legal-page__content p {
	margin: 0 0 1.15rem;
}

.legal-page__content a {
	color: #5c1d63;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

.legal-page__content a:hover,
.legal-page__content a:focus {
	color: #321036;
}

@media (max-width: 767px) {
	.legal-page {
		padding: 1.5rem 0.75rem 2.5rem;
	}

	.legal-page__article {
		border-radius: 12px;
	}

	.legal-page__header,
	.legal-page__content {
		padding-left: 1.25rem;
		padding-right: 1.25rem;
	}

	.legal-page__content {
		font-size: 1rem;
		line-height: 1.7;
	}

	.legal-page__content h2 {
		margin-top: 2.4rem;
	}
}
