/* The existing BlueOak disclosure and sticky-header script controls these states. */
.bo-header {
	--bo-header-admin-offset: 0px;
	position: relative;
	z-index: 20;
	width: 100%;
	padding-block: 1.25rem;
	background: var(--bo-white);
	border-bottom: 1px solid var(--bo-gray-300);
}

.bo-header--scrolled {
	position: fixed;
	top: var(--bo-header-admin-offset);
	inset-inline: 0;
}

.bo-header__spacer[hidden] { display: none; }
.bo-header > .bo-container { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; }
.bo-header__brand { min-width: 0; max-width: 100%; }
/* The supplied RGB PNG has near-white canvas above and below the artwork. */
.bo-header__logo-link {
	display: block;
	width: 18.5rem;
	max-width: 100%;
	aspect-ratio: 3.215 / 1;
	overflow: hidden;
	text-decoration: none;
}
.bo-header .custom-logo-link { display: inline-flex; max-width: 100%; vertical-align: middle; text-decoration: none; }
.bo-header__identity { color: var(--bo-navy); font-size: clamp(1.125rem, 3vw, 1.5rem); font-weight: 800; letter-spacing: -.025em; }
.bo-header__logo {
	display: block;
	width: 100%;
	max-width: none;
	height: auto;
	transform: translateY(-27.5%);
}
.bo-header .custom-logo { display: block; width: 18.5rem; max-width: 100%; height: auto; max-height: 5.75rem; object-fit: contain; }
.bo-header--scrolled { padding-block: .5rem; }
.bo-header--scrolled .bo-header__logo-link { width: 10.5rem; }
.bo-header--scrolled .custom-logo { width: 10.5rem; max-height: 3.375rem; }
.bo-header__nav { width: 100%; }
.bo-header__menu { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 2rem; margin: 0; padding: 0; list-style: none; }
.bo-header__nav a { display: inline-flex; align-items: center; min-height: 44px; padding-block: .5rem; color: var(--bo-navy); font-weight: 600; text-decoration: none; text-underline-offset: .4em; }
.bo-header__nav a:hover, .bo-header__nav a[aria-current="page"] { color: var(--bo-primary); text-decoration: underline; text-decoration-thickness: 2px; }
.bo-header__toggle { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 44px; height: 44px; margin-inline-start: auto; padding: 10px; border: 1px solid var(--bo-gray-300); border-radius: var(--bo-radius); background: transparent; color: var(--bo-navy); cursor: pointer; }
.bo-header__toggle[hidden] { display: none; }
.bo-header__toggle-label { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.bo-header__toggle-icon { display: grid; width: 24px; gap: 5px; }
.bo-header__toggle-icon span { display: block; height: 2px; background: currentColor; }

@media (min-width: 768px) {
	.bo-header > .bo-container { flex-wrap: nowrap; gap: 2rem; }
	.bo-header__nav { width: auto; }
}

@media (max-width: 767px) {
	.bo-header { padding-block: .75rem; }
	.bo-header__logo-link { width: 13rem; }
	.bo-header .custom-logo { width: 13rem; max-height: 4.125rem; }
	.bo-header--scrolled .bo-header__logo-link { width: 9rem; }
	.bo-header--scrolled .custom-logo { width: 9rem; max-height: 2.875rem; }
	.bo-header--ready > .bo-container { flex-wrap: nowrap; }
	.bo-header--ready .bo-header__brand { flex: 1; }
	.bo-header--ready .bo-header__nav {
		position: absolute;
		inset: 100% 0 auto;
		max-height: calc(100vh - var(--bo-header-height, 6rem) - var(--bo-header-admin-offset));
		max-height: calc(100dvh - var(--bo-header-height, 6rem) - var(--bo-header-admin-offset));
		padding: 1rem;
		overflow-y: auto;
		visibility: hidden;
		background: var(--bo-white);
		border-bottom: 1px solid var(--bo-gray-300);
		pointer-events: none;
	}
	.bo-header--ready .bo-header__menu { flex-direction: column; align-items: stretch; gap: .25rem; }
	.bo-header--ready .bo-header__nav a { display: flex; padding-block: .75rem; }
	.bo-header--menu-open .bo-header__nav { visibility: visible; pointer-events: auto; }
}
