/* Public site header (Astra's header builder markup, restyled). Loaded on every page that
   shows the Astra header; the dashboard and admin panels have their own chrome. The
   "Log in" / "Get started" buttons are classes added in functions.php. */

#masthead {
	--sh-navy: #0b1440;
	--sh-blue: #0f2385;
	--sh-orange: #f97316;
	--sh-orange-ink: #1b0d02;
	--sh-ink: #344054;
	--sh-line: #e6e8ef;
	--sh-tint: #f5f7fd;

	position: sticky;
	top: 0;
	z-index: 99;
	font-family: "Manrope", system-ui, sans-serif;
	background: rgba(255, 255, 255, .92);
	-webkit-backdrop-filter: saturate(180%) blur(12px);
	backdrop-filter: saturate(180%) blur(12px);
	border-bottom: 1px solid var(--sh-line);
}
.admin-bar #masthead { top: 32px; }
@media (max-width: 782px) { .admin-bar #masthead { top: 46px; } }
@media (max-width: 600px) { .admin-bar #masthead { top: 0; } }

#masthead .main-header-bar,
#masthead .ast-primary-header-bar { background: transparent; border: 0; }
#masthead .site-primary-header-wrap,
#masthead .ast-mobile-header-wrap .site-primary-header-wrap { max-width: 1248px; padding-left: 24px; padding-right: 24px; }
#masthead .ast-builder-grid-row { min-height: 72px; }

/* ── Brand ──────────────────────────────────────────── */
#masthead .site-title { margin: 0; line-height: 1; }
#masthead .site-title a,
#masthead .site-title a:hover,
#masthead .site-title a:focus {
	display: inline-flex;
	align-items: center;
	font-family: "Sora", system-ui, sans-serif;
	font-size: 20px;
	font-weight: 800;
	letter-spacing: -0.02em;
	color: var(--sh-navy);
	text-decoration: none;
}

/* ── Desktop menu ───────────────────────────────────── */
#masthead .main-header-menu { align-items: center; gap: 4px; }
#masthead .main-header-menu > .menu-item > .menu-link {
	display: inline-flex;
	align-items: center;
	padding: 9px 14px;
	line-height: 1.2;
	border-radius: 10px;
	font-size: 15px;
	font-weight: 600;
	color: var(--sh-ink);
	transition: background-color .15s, color .15s, border-color .15s;
}
#masthead .main-header-menu > .menu-item > .menu-link:hover,
#masthead .main-header-menu > .menu-item > .menu-link:focus-visible { color: var(--sh-navy); background: var(--sh-tint); }
#masthead .main-header-menu > .current-menu-item:not(.sh-btn) > .menu-link,
#masthead .main-header-menu > .current_page_item:not(.sh-btn) > .menu-link { color: var(--sh-blue); background: transparent; box-shadow: inset 0 -2px 0 var(--sh-orange); border-radius: 0; }

#masthead .main-header-menu > .sh-btn { margin-left: 6px; }
#masthead .main-header-menu > .sh-btn > .menu-link { padding: 10px 18px; font-weight: 700; }
#masthead .main-header-menu > .sh-btn--outline > .menu-link,
#masthead .main-header-menu > .sh-btn--outline > .menu-link:hover { border: 1.5px solid #c6cde3; color: var(--sh-blue); background: #fff; }
#masthead .main-header-menu > .sh-btn--outline > .menu-link:hover { border-color: var(--sh-blue); }
#masthead .main-header-menu > .sh-btn--primary > .menu-link,
#masthead .main-header-menu > .sh-btn--primary > .menu-link:hover,
#masthead .main-header-menu > .sh-btn--primary > .menu-link:focus-visible { background: var(--sh-orange); color: var(--sh-orange-ink); font-weight: 800; border: 1.5px solid var(--sh-orange); }
#masthead .main-header-menu > .sh-btn--primary > .menu-link:hover { background: #fb8a3c; border-color: #fb8a3c; }
#masthead .main-header-menu .menu-link:focus-visible { outline: 2px solid var(--sh-blue); outline-offset: 2px; }

/* ── Mobile ─────────────────────────────────────────── */
#masthead .menu-toggle,
#masthead .menu-toggle:hover,
#masthead .menu-toggle:focus { color: var(--sh-navy); background: transparent; border-radius: 10px; }
#masthead .menu-toggle:focus-visible { outline: 2px solid var(--sh-blue); }
#masthead .ast-mobile-header-content {
	background: #fff;
	border-top: 1px solid var(--sh-line);
	box-shadow: 0 20px 40px rgba(11, 20, 64, .12);
}
#masthead .ast-mobile-header-content .main-header-menu { padding: 8px 16px 16px; gap: 2px; flex-direction: column; align-items: stretch; }
#masthead .ast-mobile-header-content .menu-item > .menu-link {
	display: flex;
	padding: 12px 12px;
	border: 0;
	border-radius: 10px;
	font-size: 16px;
	font-weight: 600;
	color: var(--sh-ink);
}
#masthead .ast-mobile-header-content .menu-item > .menu-link:hover { background: var(--sh-tint); color: var(--sh-navy); }
#masthead .ast-mobile-header-content .main-header-menu > .current-menu-item:not(.sh-btn) > .menu-link { box-shadow: none; border-radius: 10px; background: var(--sh-tint); color: var(--sh-blue); }
#masthead .ast-mobile-header-content .sh-btn { margin-top: 8px; }
#masthead .ast-mobile-header-content .sh-btn > .menu-link { justify-content: center; font-weight: 700; }
#masthead .ast-mobile-header-content .sh-btn--outline > .menu-link { border: 1.5px solid #c6cde3; color: var(--sh-blue); }
#masthead .ast-mobile-header-content .sh-btn--primary > .menu-link,
#masthead .ast-mobile-header-content .sh-btn--primary > .menu-link:hover { background: var(--sh-orange); color: var(--sh-orange-ink); font-weight: 800; }

@media (prefers-reduced-motion: reduce) {
	#masthead * { transition: none !important; }
}
