/* Страницы «Политика конфиденциальности» (/privacy/) и «Пользовательское соглашение» (/terms/).
 * Заголовок, хлебные крошки и отступы — КОПИЯ оформления со страницы «Гарантии»
 * (раскладка lf-section-heading-page), вынесенная в независимый класс body.lf-legal-page.
 * Это не общий стиль: правила scoped под собственный класс, чтобы не зависеть от lf-section-heading-page. */

/* ───── Шрифт заголовка Lato 400 (копия @font-face из lf-catalog-pages.css) ───── */
@font-face {
	font-family: 'Lato';
	src: url("/local/templates/eshop_bootstrap_v4/fonts/Lato-Regular.ttf") format("truetype");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

/* ───── Контент на всю ширину «хрома» (как у блока с заголовком), без узкого bootstrap .container ───── */
body.lf-legal-page #bx_eshop_wrap > .workarea > .container.bx-content-section {
	max-width: none;
	width: 100%;
	margin-left: 0;
	margin-right: 0;
	padding-left: var(--lf-chrome-pad-x, clamp(18px, 3vw, 48px));
	padding-right: var(--lf-chrome-pad-x, clamp(18px, 3vw, 48px));
	box-sizing: border-box;
}

body.lf-legal-page #bx_eshop_wrap > .workarea > .container.bx-content-section > .row {
	margin-left: 0;
	margin-right: 0;
}

body.lf-legal-page #bx_eshop_wrap > .workarea > .container.bx-content-section .bx-content.col {
	padding-left: 0;
	padding-right: 0;
	flex: 1 1 100%;
	max-width: 100%;
}

/* ───── Переменные заголовка страницы (как на section-heading) ───── */
body.lf-legal-page {
	--lf-heading-serif: 'Lato', sans-serif;
	--lf-pagetitle-weight: 400;
	--lf-pagetitle-size: clamp(1.75rem, 3vw, 2.25rem);
	--lf-pagetitle-line-height: 1.2;
	--lf-pagetitle-letter-spacing: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* ───── Блок «крошки → H1»: flex-колонка, плотный зазор (крошки 6px → заголовок) ───── */
body.lf-legal-page #bx_eshop_wrap > .container.bx-content-section.lf-after-header {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 0;
	row-gap: 0;
	/* Зазор между заголовком страницы (H1) и контентом — ровно 32px. */
	padding-bottom: 32px;
}

body.lf-legal-page #bx_eshop_wrap > .container.bx-content-section.lf-after-header > .row.lf-after-header__crumbs {
	margin-top: 0 !important;
	margin-bottom: 6px !important;
	padding: 0 !important;
	flex: 0 0 auto;
	width: 100%;
	max-width: 100%;
}

body.lf-legal-page #bx_eshop_wrap > .container.bx-content-section.lf-after-header > .row.lf-after-header__crumbs > * {
	margin: 0 !important;
	padding: 0 !important;
}

body.lf-legal-page #bx_eshop_wrap > .container.bx-content-section.lf-after-header .lf-after-header__crumbs #navigation {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 24px !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.lf-legal-page #bx_eshop_wrap > .container.bx-content-section.lf-after-header .bx-breadcrumb {
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.25;
}

body.lf-legal-page #bx_eshop_wrap > .container.bx-content-section.lf-after-header .bx-breadcrumb-item {
	height: auto !important;
	min-height: 0;
	line-height: 1.25;
}

body.lf-legal-page #bx_eshop_wrap > .container.bx-content-section.lf-after-header .bx-breadcrumb-item-link {
	line-height: 1.25;
}

/* ───── Заголовок H1 (#pagetitle): Lato 400, размер/цвет как на «Гарантии» ───── */
body.lf-legal-page #bx_eshop_wrap > .container.bx-content-section.lf-after-header #pagetitle {
	font-family: var(--lf-heading-serif);
	font-weight: var(--lf-pagetitle-weight);
	font-size: var(--lf-pagetitle-size);
	line-height: var(--lf-pagetitle-line-height);
	letter-spacing: var(--lf-pagetitle-letter-spacing);
	font-synthesis: none;
	margin: 0 !important;
	padding: 0 !important;
	flex: 0 0 auto;
	width: 100%;
	color: #0f172a;
}

/* ═══════════ Тело юр-страницы: боковое меню-якоря + контент ═══════════ */
.lf-legal {
	display: flex;
	align-items: flex-start;
	gap: 48px;
}

/* ───── Контейнер с кнопками-якорями ───── */
.lf-legal__toc {
	flex: 0 0 340px;
	max-width: 340px;
	box-sizing: border-box;
	position: sticky;
	top: 104px;
	background: #fff;
	border: 1px solid #4040421A;
	border-radius: 8px;
	padding: 8px;
}

.lf-legal__toc-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.lf-legal__toc-item {
	margin: 0;
	padding: 0;
}

/* Кнопка-якорь: r=8, активная — заливка #404042 + белый текст */
.lf-legal__toc-link {
	display: block;
	padding: 14px 20px;
	border-radius: 8px;
	font-family: "Rubik", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.3;
	color: #404042;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease;
}

.lf-legal__toc-link:hover {
	background: #f3f4f6;
}

.lf-legal__toc-link.is-active {
	background: #404042;
	color: #fff;
}

/* ───── Контент ───── */
.lf-legal__content {
	flex: 1 1 auto;
	min-width: 0;
}

.lf-legal-content {
	font-family: "Rubik", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 1.55;
	color: #404042;
}

/* Заголовки разделов: Rubik 500 24px, отступ сверху 32px (от предыдущего текста), снизу 24px (до текста раздела). */
.lf-legal-content h2 {
	margin: 32px 0 24px;
	font-family: "Rubik", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 500;
	font-size: 24px;
	line-height: 1.3;
	color: #404042;
	scroll-margin-top: 104px;
}

.lf-legal-content > h2:first-child,
.lf-legal-content > *:first-child {
	margin-top: 0;
}

/* Абзацы: общий отступ между всеми абзацами 24px. */
.lf-legal-content p {
	margin: 0 0 24px;
}

.lf-legal-content p:last-child {
	margin-bottom: 0;
}

.lf-legal-content ul,
.lf-legal-content ol {
	margin: 0 0 24px;
	padding-left: 22px;
}

.lf-legal-content li {
	margin: 0 0 8px;
}

.lf-legal-content li:last-child {
	margin-bottom: 0;
}

.lf-legal-content a {
	color: #404042;
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* ───── Воздух перед футером ───── */
body.lf-legal-page #bx_eshop_wrap > .workarea {
	padding-bottom: clamp(48px, 7vw, 96px);
}

/* ───── Адаптив: сайдбар над контентом, не липкий ───── */
@media (max-width: 991.98px) {
	.lf-legal {
		flex-direction: column;
		gap: 32px;
	}

	.lf-legal__toc {
		position: static;
		top: auto;
		flex: 0 0 auto;
		width: 100%;
		/* Компактная карточка над контентом (на ≤500px разворачивается во всю ширину — см. ниже). */
		max-width: 480px;
	}
}

/* ≤500px: сайдбар на всю ширину */
@media (max-width: 500px) {
	.lf-legal__toc {
		max-width: 100%;
	}
}

@media (max-width: 575px) {
	.lf-legal-content {
		font-size: 16px;
	}

	.lf-legal-content h2 {
		font-size: 20px;
		margin-top: 28px;
	}

	.lf-legal__toc-link {
		font-size: 15px;
		padding: 12px 16px;
	}
}
