/*
 * Header, menu, and footer. Blocksy still builds the navigation.
 */

body.vt-theme #header.ct-header {
	--theme-text-color: var(--vt-on-night);
	--theme-link-initial-color: var(--vt-on-night-soft);
	--theme-link-hover-color: var(--vt-on-night);
	--theme-link-active-color: var(--vt-on-night);
	--theme-headings-color: var(--vt-on-night);
	--theme-icon-color: var(--vt-on-night);
	position: relative;
	z-index: 40;
	color: var(--vt-on-night);
	background-color: color-mix(in srgb, var(--vt-night) 92%, transparent);
	backdrop-filter: blur(16px);
	box-shadow: inset 0 -1px 0 rgba(233, 213, 255, 0.18);
}

body.vt-theme #header.ct-header:not([data-sticky]) {
	position: sticky;
	top: 0;
}

body.vt-theme.admin-bar #header.ct-header:not([data-sticky]) {
	top: var(--wp-admin--admin-bar--height, 32px);
}

body.vt-theme #header.ct-header [data-row] {
	--height: 4.25rem;
	background-color: transparent;
}

body.vt-theme #header .site-title,
body.vt-theme #header .site-title a,
body.vt-theme #header .site-description,
body.vt-theme #header .ct-header-text {
	color: var(--vt-on-night);
}

body.vt-theme #header .site-title a {
	display: inline-flex;
	align-items: center;
	min-height: 2.75rem;
	text-decoration: none;
	font-family: var(--vt-font-display);
	font-weight: 700;
	letter-spacing: -0.03em;
}

body.vt-theme #header nav[class*="menu"] {
	--theme-link-initial-color: var(--vt-on-night-soft);
	--theme-link-hover-color: #ffffff;
	--theme-link-active-color: #ffffff;
}

body.vt-theme #header .menu > li > .ct-menu-link {
	position: relative;
	min-height: 2.75rem;
	padding-inline: 0.8rem;
	text-decoration: none;
}

body.vt-theme #header [data-menu] > ul > li > a::after {
	content: "";
	position: absolute;
	left: 0.75rem;
	right: 0.75rem;
	bottom: 0.4rem;
	height: 2px;
	border-radius: 99px;
	background-image: var(--vt-gradient-filament);
	opacity: 0;
	transform: scaleX(0.4);
	transform-origin: left center;
	transition: opacity 0.2s ease, transform 0.35s ease;
}

body.vt-theme #header [data-menu] > ul > li:is(:hover, :focus-within, [class*="current-menu-"]) > a::after {
	opacity: 1;
	transform: scaleX(1);
}

body.vt-theme #header .sub-menu {
	background-color: var(--vt-night-raised);
	border: 1px solid color-mix(in srgb, var(--vt-on-night) 16%, transparent);
	border-radius: var(--vt-radius-sm);
}

body.vt-theme #header .sub-menu .ct-menu-link {
	min-height: 2.75rem;
	color: var(--vt-on-night);
	text-decoration: none;
}

body.vt-theme .ct-panel {
	--theme-text-color: var(--vt-on-night);
	--theme-link-initial-color: var(--vt-on-night);
	color: var(--vt-on-night);
}

body.vt-theme .ct-panel-inner {
	background: var(--vt-night);
	color: var(--vt-on-night);
}

body.vt-theme .mobile-menu a {
	min-height: 2.75rem;
	color: var(--vt-on-night);
	text-decoration: none;
}

body.vt-theme #footer.ct-footer,
body.vt-theme .ct-footer {
	--theme-text-color: var(--vt-on-night-soft);
	--theme-link-initial-color: var(--vt-on-night);
	--theme-link-hover-color: #ffffff;
	--theme-headings-color: var(--vt-on-night);
	color: var(--vt-on-night-soft);
	background-color: var(--vt-night);
}

body.vt-theme .ct-footer [data-row] {
	background-color: transparent;
}

body.vt-theme .ct-footer .widget-title,
body.vt-theme .ct-footer :is(h2, h3, h4) {
	color: var(--vt-on-night);
}
