/**
 * Catalog (shop + product category) SEO description block.
 *
 * The description is CMS content (h2 sections + lists). It renders below the
 * product grid as a styled article, using the shared tokens and the same
 * Manrope/Inter + coral language as the product and service pages. Scoped under
 * .shv-archive-desc so it touches nothing else on the archive.
 */

.shv-archive-desc {
	border-top: 1px solid var(--shv-line);
	margin-top: 8px;
}

.shv-archive-desc-inner {
	max-width: 900px;
	margin: 0 auto;
	background: #faf9f7;
	border: 1px solid var(--shv-line);
	border-radius: 16px;
	padding: 28px 22px;
	font-family: "Inter", sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.7;
	color: #3a3a40;
}

@media (min-width: 768px) {
	.shv-archive-desc-inner {
		padding: 40px 44px;
	}
}

/* First heading reads as the block title; the rest are sub-sections. */
.shv-archive-desc-inner h1,
.shv-archive-desc-inner h2,
.shv-archive-desc-inner h3,
.shv-archive-desc-inner h4 {
	font-family: "Manrope", "Inter", sans-serif;
	font-weight: 800;
	letter-spacing: -0.01em;
	color: var(--shv-ink);
	line-height: 1.25;
}

/* Content may carry an h1; render it at section scale so it never competes with
   the page's real <h1> ("Katalog") above the grid. */
.shv-archive-desc-inner h1,
.shv-archive-desc-inner h2 {
	font-size: 24px;
	margin: 28px 0 10px;
}

.shv-archive-desc-inner > :first-child {
	margin-top: 0;
}

@media (min-width: 768px) {
	.shv-archive-desc-inner h1,
	.shv-archive-desc-inner h2 {
		font-size: 28px;
	}
}

.shv-archive-desc-inner h3 {
	font-size: 19px;
	margin: 22px 0 8px;
}

.shv-archive-desc-inner h4 {
	font-size: 16.5px;
	margin: 18px 0 6px;
}

.shv-archive-desc-inner p {
	margin: 0 0 14px;
}

.shv-archive-desc-inner a {
	color: var(--shv-coral-dark);
	font-weight: 600;
}

.shv-archive-desc-inner a:hover {
	text-decoration: underline;
}

.shv-archive-desc-inner strong,
.shv-archive-desc-inner b {
	color: var(--shv-ink);
	font-weight: 700;
}

/* Lists: coral marker, comfortable spacing. The theme's global list reset can
   strip markers, so this restores a deliberate one. */
.shv-archive-desc-inner ul,
.shv-archive-desc-inner ol {
	margin: 0 0 16px;
	padding-left: 0;
	list-style: none;
}

.shv-archive-desc-inner li {
	position: relative;
	padding-left: 26px;
	margin-bottom: 9px;
}

.shv-archive-desc-inner ul li::before {
	content: "";
	position: absolute;
	left: 4px;
	top: 0.62em;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--shv-coral);
}

.shv-archive-desc-inner ol {
	counter-reset: shv-li;
}

.shv-archive-desc-inner ol li {
	counter-increment: shv-li;
}

.shv-archive-desc-inner ol li::before {
	content: counter(shv-li) ".";
	position: absolute;
	left: 2px;
	top: 0;
	color: var(--shv-coral-dark);
	font-weight: 700;
}

.shv-archive-desc-inner img {
	max-width: 100%;
	height: auto;
	border-radius: 10px;
}

.shv-archive-desc-inner table {
	width: 100%;
	border-collapse: collapse;
	margin: 0 0 16px;
	display: block;
	overflow-x: auto;
}

.shv-archive-desc-inner th,
.shv-archive-desc-inner td {
	border: 1px solid var(--shv-line);
	padding: 8px 12px;
	text-align: left;
}
