/**
 * Стили страницы "Карта сайта"
 */

.sitemap-page__content {
	padding: 0 0 80px;
}

.sitemap-page__container {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 20px;
}

.sitemap-page__title {
	font-family: var(--font-heading);
	font-size: 36px;
	font-weight: 700;
	color: var(--color-primary);
	line-height: 1.2;
	margin: 32px 0 24px;
}

.sitemap-page__intro {
	font-family: var(--font-primary);
	font-size: 16px;
	line-height: 1.6;
	color: var(--color-primary);
	max-width: 820px;
	margin-bottom: 40px;
}

.sitemap-page__intro p {
	margin: 0 0 12px;
}

/* ==========================================================================
   Разделы карты сайта — каждый раздел во всю ширину,
   список внутри распределяется по 5 колонок (multi-column layout)
   ========================================================================== */

.sitemap {
	display: flex;
	flex-direction: column;
	gap: 40px;
	margin-top: 24px;
}

.sitemap__column {
	width: 100%;
}

.sitemap__heading {
	font-family: var(--font-heading);
	font-size: 20px;
	font-weight: 700;
	color: var(--color-primary);
	line-height: 1.3;
	margin: 0 0 16px;
	padding-bottom: 10px;
	border-bottom: 2px solid var(--color-primary);
}

.sitemap__heading a {
	color: inherit;
	text-decoration: none;
	transition: color var(--transition-base);
}

.sitemap__heading a:hover {
	color: var(--color-accent);
}

/* Список пунктов раздела — 5 колонок через column-count */
.sitemap__list {
	list-style: none;
	margin: 0;
	padding: 0;
	column-count: 5;
	column-gap: 32px;
}

.sitemap__sublist {
	list-style: none;
	margin: 0;
	padding: 0;
}

.sitemap__item {
	margin: 0 0 8px;
	break-inside: avoid;
	page-break-inside: avoid;
	-webkit-column-break-inside: avoid;
}

.sitemap__sublist {
	margin: 6px 0 12px 16px;
	padding-left: 12px;
	border-left: 1px solid rgba(43, 58, 103, 0.15);
}

.sitemap__subitem {
	margin: 0 0 4px;
}

.sitemap__link {
	display: inline-block;
	font-family: var(--font-primary);
	font-size: 15px;
	line-height: 1.45;
	color: var(--color-primary);
	text-decoration: none;
	transition: color var(--transition-base);
}

.sitemap__link:hover {
	color: var(--color-accent);
	text-decoration: underline;
}

.sitemap__link--sub {
	font-size: 14px;
	color: rgba(43, 58, 103, 0.85);
}

/* ==========================================================================
   Адаптив
   ========================================================================== */

@media (max-width: 1200px) {
	.sitemap__list {
		column-count: 4;
	}
}

@media (max-width: 960px) {
	.sitemap__list {
		column-count: 3;
	}
}

@media (max-width: 640px) {
	.sitemap-page__title {
		font-size: 26px;
		margin: 24px 0 16px;
	}

	.sitemap-page__intro {
		font-size: 14px;
		margin-bottom: 28px;
	}

	.sitemap {
		gap: 28px;
	}

	.sitemap__list {
		column-count: 2;
		column-gap: 20px;
	}

	.sitemap__heading {
		font-size: 16px;
	}

	.sitemap__link {
		font-size: 14px;
	}

	.sitemap-page__content {
		padding-bottom: 48px;
	}
}

@media (max-width: 420px) {
	.sitemap__list {
		column-count: 1;
	}
}
