/*
 * Navigation — Primary nav, mobile menu, footer nav
 * Unbreakable · Retro Comic Static Site
 *
 * Simplified: thinner borders, clean layout.
 */

/* ─── PRIMARY NAVIGATION ──────────────────────────────────────────────── */

.c-nav--primary {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	background: var(--color-charcoal, #1C1C2E);
	border-bottom: var(--border-panel);
	padding: var(--space-md);
	z-index: var(--z-nav);
}

.c-nav--primary.is-open {
	display: block;
}

.c-nav__list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
}

.c-nav__item {
	border-bottom: 1px solid #333;
}
.c-nav__item:last-child { border-bottom: none; }

.c-nav__link {
	display: block;
	font-family: var(--font-heading);
	font-size: var(--fs-h3);
	text-transform: uppercase;
	letter-spacing: var(--ls-heading);
	color: var(--color-white);
	text-decoration: none;
	padding: var(--space-sm) var(--space-md);
	transition: color var(--transition-base), background-color var(--transition-base);
}

.c-nav__link:hover,
.c-nav__link:focus {
	color: var(--color-crimson);
	background: rgba(255,255,255,0.05);
}

.c-nav__link[aria-current="page"],
.c-nav__link.current-menu-item {
	color: var(--color-crimson);
	border-left: 3px solid var(--color-crimson);
	padding-left: calc(var(--space-md) - 3px);
}


/* ─── TABLET / DESKTOP ────────────────────────────────────────────────── */

@media (min-width: 768px) {
	.c-masthead__toggle { display: none; }

	.c-nav--primary {
		display: flex;
		position: static;
		background: none;
		border: none;
		padding: 0;
		align-items: center;
	}

	.c-nav__list {
		flex-direction: row;
	}

	.c-nav__item {
		border-bottom: none;
		border-left: 1px solid #333;
	}
	.c-nav__item:first-child { border-left: none; }

	.c-nav__link {
		font-size: var(--fs-body);
		padding: var(--space-sm) var(--space-md);
		border-left-width: 0;
	}

	.c-nav__link:hover,
	.c-nav__link:focus {
		background: none;
		color: var(--color-crimson);
	}

	.c-nav__link[aria-current="page"],
	.c-nav__link.current-menu-item {
		border-left: none;
		padding-left: var(--space-md);
		color: var(--color-crimson);
		border-bottom: 3px solid var(--color-crimson);
		padding-bottom: calc(var(--space-sm) - 3px);
	}
}

@media (min-width: 1024px) {
	.c-nav__link {
		padding: var(--space-sm) var(--space-lg);
	}
}


/* ─── FOOTER NAV ──────────────────────────────────────────────────────── */

.c-nav--footer .c-nav__list {
	flex-direction: column;
	gap: var(--space-xs);
}

.c-nav--footer .c-nav__link {
	font-family: var(--font-body);
	font-size: var(--fs-small);
	text-transform: none;
	letter-spacing: 0;
	color: #666;
	padding: var(--space-2xs) 0;
}

.c-nav--footer .c-nav__link:hover { color: var(--color-cyan); }
.c-nav--footer .c-nav__item { border: none; }


/* ─── MOBILE OVERLAY ──────────────────────────────────────────────────── */

body.nav-open { overflow: hidden; }

@media (min-width: 768px) {
	body.nav-open { overflow: auto; }
}