/* =========================================================
   policy.css — стили страницы «Политика обработки ПДн»
   Зависит от глобального /assets/css/styles.css
   ========================================================= */

/* Верхний блок */
.page-hero {
	background: var(--bg-soft);
	border-bottom: 1px solid var(--line);
	padding: 1.75rem 0; /* 28px */
}
.page-title {
	margin: 0 0 0.375rem; /* 6px */
	font-size: clamp(1.5rem, 2.6vw, 2.25rem); /* 24px..36px */
	font-weight: 800;
	color: var(--ink);
}
.page-sub {
	margin: 0;
	color: var(--muted);
}
.page-sub a {
	color: var(--blue-strong);
}
.meta {
	margin-top: 0.625rem; /* 10px */
}

/* Контент */
.policy {
	display: grid;
	grid-template-columns: 17.5rem 1fr; /* 280px */
	gap: 1.75rem; /* 28px */
}
@media (max-width: 960px) {
	.policy {
		grid-template-columns: 1fr;
	}
}

/* Оглавление */
.toc {
	position: static; /* scrolls with the page */
	top: auto;
	align-self: start;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 0.75rem; /* 12px */
	padding: 1rem; /* 16px */
	box-shadow: 0 6px 18px rgba(17, 25, 40, 0.06);
}
.toc__title {
	margin: 0 0 0.625rem; /* 10px */
	font-size: 0.875rem; /* 14px */
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: var(--muted);
}
.toc ol {
	margin: 0;
	padding-left: 1rem; /* 16px */
	display: grid;
	gap: 0.375rem; /* 6px */
}
.toc a {
	text-decoration: none;
	color: var(--ink);
}
.toc a:hover {
	color: var(--blue-strong);
}

/* Тело политики */
.policy__content {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: 0.75rem; /* 12px */
	padding: clamp(1rem, 2.2vw, 1.75rem);
	box-shadow: 0 6px 18px rgba(17, 25, 40, 0.04);
}
.policy__content h2 {
	margin-top: 1.375rem; /* 22px */
	font-size: clamp(1.125rem, 2.2vw, 1.375rem); /* 18px..22px */
	border-left: 0.25rem solid var(--blue-strong); /* 4px */
	padding-left: 0.625rem; /* 10px */
}
.policy__content p,
.policy__content li,
.policy__content dd,
.policy__content dt {
	line-height: 1.6;
}

.policy__content ul,
.policy__content ol {
	padding-left: 1.125rem; /* 18px */
	margin: 0.5rem 0 0.75rem; /* 8px 0 12px */
}

/* Таблица целей (dl) */
.goals {
	display: grid;
	grid-template-columns: 13.75rem 1fr; /* 220px */
	gap: 0.5rem 1rem; /* 8px 16px */
	margin: 0.625rem 0 0.25rem; /* 10px 0 4px */
}
.goals dt {
	font-weight: 700;
	color: var(--ink);
}
.goals dd {
	margin: 0;
	color: var(--ink);
}
@media (max-width: 640px) {
	.goals {
		grid-template-columns: 1fr;
	}
}

/* Прочее */
.org {
	margin-top: 0.625rem; /* 10px */
}
.backtop {
	margin-top: 1.125rem; /* 18px */
}
