/**
 * Pages juridiques Bodyfitnet : presentation editoriale partagee.
 * Chargee uniquement sur /cgv/ et /politique-de-confidentialite/ par le plugin.
 * Aucun texte juridique, lien ou contenu WordPress n'est modifie.
 */
:root {
	--bfn-cgv-ink: #18313c;
	--bfn-cgv-muted: #52636b;
	--bfn-cgv-accent: #fe8544;
	--bfn-cgv-cream: #fff9f5;
	--bfn-cgv-border: #eadfd7;
}

/* Le titre de page ajoute par Astra est distinct du contenu de la page. */
.site-main > article.type-page > .entry-header > .entry-title,
.site-main > article.type-page > .entry-header > h1.entry-title {
	display: none !important;
}

.site-main > article.type-page > .entry-header {
	margin: 0;
}

body .site-content {
	background: var(--bfn-cgv-cream);
}

body .site-main > article.type-page {
	position: relative;
	overflow: hidden;
	width: 100%;
	max-width: 1040px;
	margin: clamp(24px, 4vw, 64px) auto;
	padding: clamp(28px, 5vw, 72px);
	border: 1px solid var(--bfn-cgv-border);
	border-radius: 20px;
	background: #fff;
	box-shadow: 0 18px 58px rgba(24, 49, 60, 0.06);
	color: var(--bfn-cgv-ink);
}

body .site-main > article.type-page::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 5px;
	background: var(--bfn-cgv-accent);
	content: "";
	pointer-events: none;
}

body .site-main > article.type-page > .entry-content {
	width: 100%;
	max-width: 100%;
	margin: 0;
	color: var(--bfn-cgv-ink);
	font-size: 16px;
	line-height: 1.8;
	overflow-wrap: anywhere;
}

body .site-main > article.type-page .entry-content :is(h1, h2, h3, h4) {
	color: var(--bfn-cgv-ink);
	font-weight: 750;
	letter-spacing: -0.025em;
	line-height: 1.24;
	overflow-wrap: anywhere;
}

body .site-main > article.type-page .entry-content h1 {
	margin: 0 0 28px;
	font-size: clamp(30px, 4vw, 46px);
}

body .site-main > article.type-page .entry-content h2 {
	margin: 44px 0 18px;
	padding: 0 0 14px;
	border-bottom: 1px solid var(--bfn-cgv-border);
	font-size: clamp(22px, 2.7vw, 28px);
}

body .site-main > article.type-page .entry-content h3 {
	margin: 30px 0 12px;
	font-size: clamp(19px, 2.2vw, 22px);
}

body .site-main > article.type-page .entry-content h4 {
	margin: 22px 0 10px;
	font-size: 17px;
}

body .site-main > article.type-page .entry-content :is(p, li) {
	color: var(--bfn-cgv-muted);
	line-height: 1.8;
}

body .site-main > article.type-page .entry-content p {
	margin: 0 0 18px;
}

body .site-main > article.type-page .entry-content :is(ul, ol) {
	margin: 0 0 22px;
	padding-left: 26px;
}

body .site-main > article.type-page .entry-content li + li {
	margin-top: 7px;
}

body .site-main > article.type-page .entry-content strong {
	color: var(--bfn-cgv-ink);
}

body .site-main > article.type-page .entry-content a:not(.elementor-button) {
	color: #a94714;
	text-decoration: underline;
	text-decoration-color: var(--bfn-cgv-accent);
	text-underline-offset: 3px;
	transition: color 150ms ease;
}

body .site-main > article.type-page .entry-content a:not(.elementor-button):is(:hover, :focus-visible) {
	color: #7a2f09;
}

body .site-main > article.type-page .entry-content a:focus-visible {
	outline: 3px solid rgba(254, 133, 68, 0.46);
	outline-offset: 4px;
}

body .site-main > article.type-page .entry-content :is(table, pre) {
	max-width: 100%;
}

body .site-main > article.type-page .entry-content table {
	display: block;
	overflow-x: auto;
	border-collapse: collapse;
}

body .site-main > article.type-page .entry-content :is(th, td) {
	padding: 12px 15px;
	border: 1px solid var(--bfn-cgv-border);
	text-align: left;
}

body .site-main > article.type-page .entry-content th {
	background: var(--bfn-cgv-cream);
	color: var(--bfn-cgv-ink);
}

@media (max-width: 767px) {
	body .site-content > .ast-container {
		padding-right: 16px;
		padding-left: 16px;
	}

	body .site-main > article.type-page {
		margin: 20px auto 36px;
		padding: 32px 22px 38px;
		border-radius: 14px;
	}

	body .site-main > article.type-page > .entry-content {
		font-size: 15px;
		line-height: 1.75;
	}

	body .site-main > article.type-page .entry-content h2 {
		margin-top: 32px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body .site-main > article.type-page .entry-content a {
		transition: none;
	}
}
