/**
 * Corvin standard / guide pages + [corvin_pages_menu]
 *
 * Visual tokens follow the Rene Corvin profile style sheet (monochrome, hairlines, spaced caps):
 *   --corvin-brand-black:       #0D0D0D
 *   --corvin-brand-charcoal:    #1F1F1F
 *   --corvin-brand-grey:        #6B6B6B
 *   --corvin-brand-warm-grey:   #BDBDB6
 *   --corvin-brand-beige:       #D9D3C6
 *
 * Semantic aliases (--corvin-sp-*) map to those tokens for this surface only (scoped classes).
 */

.corvin-standard-page,
.corvin-pages-menu-wrap {
	--corvin-sp-accent: var(--corvin-brand-charcoal);
	--corvin-sp-bg: var(--corvin-brand-beige);
	--corvin-sp-text: var(--corvin-brand-black);
	--corvin-sp-muted: var(--corvin-brand-grey);
	--corvin-sp-border: var(--corvin-brand-warm-grey);
	--corvin-sp-radius: 0;
	--corvin-sp-shadow: none;
	--corvin-sp-track: 0.14em;
}

.corvin-standard-page {
	max-width: 52rem;
	margin-left: auto;
	margin-right: auto;
	padding: 2rem 1.35rem 2.75rem;
	color: var(--corvin-sp-text);
	background: var(--corvin-sp-bg);
	border-top: 1px solid var(--corvin-sp-border);
	border-bottom: 1px solid var(--corvin-sp-border);
	font-family: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}

.corvin-standard-page .corvin-standard-page__intro {
	margin: 0 0 1.15rem;
	font-size: 0.95rem;
	line-height: 1.6;
	color: var(--corvin-sp-muted);
}

.corvin-standard-page h2 {
	margin: 2rem 0 0.5rem;
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: var(--corvin-sp-track);
	text-transform: uppercase;
	color: var(--corvin-sp-text);
	border-bottom: 1px solid var(--corvin-sp-text);
	padding-bottom: 0.45rem;
}

.corvin-standard-page h2:first-of-type {
	margin-top: 0.35rem;
}

.corvin-standard-page__keyword-strip {
	margin: 1.75rem 0 0;
	padding: 0.85rem 1rem;
	font-size: 0.68rem;
	font-weight: 600;
	letter-spacing: var(--corvin-sp-track);
	text-transform: uppercase;
	text-align: center;
	color: var(--corvin-brand-beige);
	background: var(--corvin-brand-black);
	border: 1px solid var(--corvin-brand-black);
}

.corvin-standard-page__list {
	margin: 0.35rem 0 0;
	padding: 0;
	list-style: none;
}

.corvin-standard-page__list li {
	margin: 0;
	padding: 0.55rem 0.15rem;
	border-bottom: 1px solid var(--corvin-sp-border);
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.35rem 0.75rem;
}

.corvin-standard-page__list li:last-child {
	border-bottom: none;
}

.corvin-standard-page__list a {
	color: var(--corvin-sp-text);
	text-decoration: none;
	font-weight: 600;
	letter-spacing: 0.04em;
}

.corvin-standard-page__list a:hover,
.corvin-standard-page__list a:focus {
	color: var(--corvin-sp-muted);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.corvin-standard-page__list code {
	font-size: 0.78em;
	padding: 0.15em 0.45em;
	background: rgba(255, 255, 255, 0.55);
	border: 1px solid var(--corvin-sp-border);
	color: var(--corvin-sp-muted);
}

.corvin-standard-page__table-wrap {
	margin-top: 0.65rem;
	overflow-x: auto;
	border: 1px solid var(--corvin-sp-border);
	background: rgba(255, 255, 255, 0.45);
}

.corvin-standard-page__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.9rem;
}

.corvin-standard-page__table th,
.corvin-standard-page__table td {
	text-align: left;
	padding: 0.6rem 0.85rem;
	border-bottom: 1px solid var(--corvin-sp-border);
	vertical-align: top;
}

.corvin-standard-page__table thead th {
	background: rgba(31, 31, 31, 0.06);
	font-weight: 600;
	font-size: 0.72rem;
	letter-spacing: var(--corvin-sp-track);
	text-transform: uppercase;
	color: var(--corvin-sp-text);
}

.corvin-standard-page__table tbody tr:last-child td {
	border-bottom: none;
}

.corvin-standard-page__table code {
	font-size: 0.88em;
}

.corvin-standard-page__blocks-list {
	margin: 0.45rem 0 0;
	padding-left: 1.15rem;
	line-height: 1.55;
}

.corvin-standard-page__blocks-list li {
	margin: 0.35rem 0;
}

.corvin-standard-page__blocks-list code {
	font-size: 0.85em;
	color: var(--corvin-brand-charcoal);
}

/* Nav menu — dark strip (profile footer bar) */
.corvin-pages-menu-wrap {
	margin: 0 auto 1.5rem;
	max-width: 52rem;
}

.corvin-pages-menu {
	display: block;
	background: var(--corvin-brand-black);
	border: 1px solid var(--corvin-brand-black);
	padding: 0.55rem 0.85rem;
}

.corvin-pages-menu__list,
.corvin-pages-menu .menu {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.15rem 0.35rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.corvin-pages-menu__list > li,
.corvin-pages-menu .menu > li {
	margin: 0;
	padding: 0;
	position: relative;
}

.corvin-pages-menu__list > li > a,
.corvin-pages-menu .menu > li > a {
	display: inline-block;
	padding: 0.35rem 0.5rem;
	font-size: 0.65rem;
	font-weight: 600;
	letter-spacing: var(--corvin-sp-track);
	text-transform: uppercase;
	text-decoration: none;
	color: var(--corvin-brand-beige);
	background: transparent;
	transition: color 0.15s ease, opacity 0.15s ease;
}

.corvin-pages-menu__list > li:not(:last-child) > a::after,
.corvin-pages-menu .menu > li:not(:last-child) > a::after {
	content: '|';
	margin-left: 0.65rem;
	opacity: 0.45;
	pointer-events: none;
}

.corvin-pages-menu__list > li > a:hover,
.corvin-pages-menu__list > li > a:focus,
.corvin-pages-menu .menu > li > a:hover,
.corvin-pages-menu .menu > li > a:focus {
	color: #fff;
}

.corvin-pages-menu-empty {
	margin: 0;
	padding: 0.75rem 1rem;
	font-size: 0.72rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--corvin-brand-beige);
	background: var(--corvin-brand-charcoal);
	border: 1px solid var(--corvin-brand-black);
}

.corvin-pages-menu-fallback {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.15rem 0.35rem;
}

.corvin-pages-menu-fallback li {
	margin: 0;
	padding: 0;
}

.corvin-pages-menu-fallback a {
	display: inline-block;
	padding: 0.35rem 0.5rem;
	font-size: 0.65rem;
	font-weight: 600;
	letter-spacing: var(--corvin-sp-track);
	text-transform: uppercase;
	text-decoration: none;
	color: var(--corvin-brand-beige);
}

.corvin-pages-menu-fallback li:not(:last-child) a::after {
	content: '|';
	margin-left: 0.65rem;
	opacity: 0.45;
}

.corvin-pages-menu-fallback a:hover,
.corvin-pages-menu-fallback a:focus {
	color: #fff;
}

@media (max-width: 600px) {
	.corvin-standard-page {
		padding: 1.35rem 1rem 2rem;
	}

	.corvin-pages-menu__list,
	.corvin-pages-menu .menu {
		flex-direction: column;
		align-items: stretch;
	}

	.corvin-pages-menu__list > li:not(:last-child) > a::after,
	.corvin-pages-menu .menu > li:not(:last-child) > a::after {
		display: none;
	}

	.corvin-pages-menu__list > li > a,
	.corvin-pages-menu .menu > li > a {
		width: 100%;
		text-align: center;
	}
}
