.yg-site-map {
	max-width: var(--yg-maxw);
	margin: 0 auto;
	padding: clamp(3rem, 7vw, 6rem) 1.25rem;
}

.yg-site-map__intro {
	max-width: 720px;
	margin-bottom: clamp(2.5rem, 5vw, 4rem);
}

.yg-site-map__eyebrow {
	margin: 0 0 0.65rem;
	color: var(--yg-primary);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.yg-site-map__intro h1 {
	margin: 0 0 1rem;
	font-family: var(--yg-font-title);
	font-size: clamp(2.35rem, 5vw, 4.25rem);
	line-height: 1.05;
	color: var(--yg-title);
}

.yg-site-map__intro > p:last-child {
	margin: 0;
	max-width: 62ch;
	font-size: clamp(1rem, 2vw, 1.15rem);
	line-height: 1.7;
	color: var(--yg-text);
}

.yg-site-map__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.25rem;
}

.yg-site-map__section {
	padding: clamp(1.35rem, 3vw, 2rem);
	border: 1px solid var(--yg-border);
	border-radius: var(--yg-radius);
	background: var(--yg-card);
	box-shadow: var(--yg-shadow-sm);
}

.yg-site-map__section h2 {
	margin: 0 0 1.1rem;
	font-family: var(--yg-font-body);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: var(--yg-primary);
}

.yg-site-map__section ul {
	display: grid;
	gap: 0.7rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.yg-site-map__section a {
	display: inline-flex;
	align-items: center;
	min-height: 2.25rem;
	color: var(--yg-title);
	font-weight: 500;
	text-decoration-thickness: 1px;
	text-decoration-color: transparent;
	text-underline-offset: 0.2em;
}

.yg-site-map__section a:hover,
.yg-site-map__section a:focus-visible {
	color: var(--yg-primary-dark);
	text-decoration-color: currentColor;
}

@media (max-width: 900px) {
	.yg-site-map__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
	.yg-site-map { padding-top: 2.75rem; padding-bottom: 3.5rem; }
	.yg-site-map__grid { grid-template-columns: 1fr; }
}
