/**
 * header.css
 * Styles for template-parts/layout/header.php.
 */

.site-header {
	position: sticky;
	top: 0;
	z-index: var(--z-header);
	background: var(--dg-surface);
	border-bottom: 1px solid var(--dg-border);
	backdrop-filter: blur(var(--glass-blur));
}

.site-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-4);
	padding-block: var(--space-3);
}

.site-branding img {
	max-height: 48px;
	width: auto;
}

.site-title {
	font-size: 1.25rem;
	font-weight: 800;
	color: var(--dg-primary-hover);
}

.main-navigation .primary-menu {
	display: flex;
	align-items: center;
	gap: var(--space-5);
}

.main-navigation .primary-menu a {
	font-weight: 500;
	padding-block: var(--space-2);
	transition: color var(--transition-fast);
}

.main-navigation .primary-menu a:hover {
	color: var(--dg-primary);
}

.main-navigation .primary-menu .sub-menu {
	display: none;
}

.menu-toggle {
	display: none;
	flex-direction: column;
	gap: 5px;
	padding: var(--space-2);
}

.menu-toggle__bar {
	width: 22px;
	height: 2px;
	background: currentColor;
	border-radius: var(--radius-full);
}

@media (max-width: 782px) {
	.menu-toggle {
		display: flex;
	}

	.main-navigation {
		display: none;
		width: 100%;
		order: 3;
	}

	.main-navigation.is-open {
		display: block;
	}

	.main-navigation .primary-menu {
		flex-direction: column;
		align-items: stretch;
		gap: 0;
		padding-block: var(--space-3);
	}

	.site-header__inner {
		flex-wrap: wrap;
	}
}
