html {
	--site-header-height: calc(2.5rem + 11rem * 52 / 177);
	--spark-admin-offset: 0px;
}

.js body {
	padding-top: var(--site-header-height);
}

.site-header {
	position: relative;
	z-index: 50;
	padding-block: 1.25rem;
	background: var(--color-curious-cream);
}

.js .site-header {
	position: fixed;
	top: var(--spark-admin-offset);
	left: 0;
	right: 0;
	transition: top .6s;
}

.js .site-header.is-hidden {
	top: calc(var(--spark-admin-offset) - var(--site-header-height) - 1px);
}

.js.nav-open .site-header {
	top: var(--spark-admin-offset);
}

.site-logo {
	display: block;
	width: 11rem;
	flex: none;
}

.site-logo img {
	width: 100%;
	height: auto;
}

.main-menu,.footer-menu {
	list-style: none;
	padding: 0;
	display: flex;
	align-items: center;
	gap: 1.5rem;
}

.main-menu a,.footer-menu a {
	font-size: var(--text-button);
	font-weight: 700;
	text-decoration: none;
}

.main-menu a:not(.button):hover,.footer-menu a:hover {
	text-decoration: underline;
}

.main-menu>.menu-item-weglot {
	flex: none;
}

.main-menu>.menu-item-weglot>a {
	display: block;
	padding: .65rem .875rem;
	border-radius: 100vmax 0 0 100vmax;
	background: var(--color-white);
	white-space: nowrap;
}

.main-menu>.menu-item-weglot+.menu-item-weglot {
	margin-left: -1.5rem;
}

.main-menu>.menu-item-weglot+.menu-item-weglot>a {
	border-radius: 0 100vmax 100vmax 0;
}

.main-menu>.menu-item-weglot>a[aria-current=true] {
	background: var(--color-youthful-yellow);
}

.main-menu>.menu-item-weglot>a:focus-visible {
	outline-offset: -.1875rem;
}

.main-menu>.menu-item-weglot>a:hover {
	text-decoration: none;
}

.menu-toggle {
	display: none;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	padding: .5rem;
	border: 0;
	background: none;
	color: var(--color-new-growth-navy);
	flex: none;
}

.menu-toggle-icon {
	position: relative;
	display: block;
	width: 1.375rem;
	height: 1.125rem;
}

.menu-toggle-icon>span {
	position: absolute;
	left: 0;
	width: 100%;
	height: .125rem;
	background: currentColor;
	transition: transform .2s,opacity .2s,top .2s;
}

.menu-toggle-icon>span:nth-child(1) {
	top: 0;
}

.menu-toggle-icon>span:nth-child(2) {
	top: .5rem;
}

.menu-toggle-icon>span:nth-child(3) {
	top: 1rem;
}

.menu-toggle[aria-expanded=true] .menu-toggle-icon>span:nth-child(1) {
	top: .5rem;
	transform: rotate(45deg);
}

.menu-toggle[aria-expanded=true] .menu-toggle-icon>span:nth-child(2) {
	opacity: 0;
}

.menu-toggle[aria-expanded=true] .menu-toggle-icon>span:nth-child(3) {
	top: .5rem;
	transform: rotate(-45deg);
}

.site-footer {
	overflow: clip;
}

.footer-wordmark {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: .4%;
	padding-inline: 3.334vw;
}

.footer-wordmark img {
	height: auto;
	min-width: 0;
	object-fit: contain;
}

.footer-wordmark img:nth-child(1) {
	width: 20.300158%;
}

.footer-wordmark img:nth-child(2) {
	width: 22.35387%;
}

.footer-wordmark img:nth-child(3) {
	width: 21.248025%;
}

.footer-wordmark img:nth-child(4) {
	width: 14.533965%;
}

.footer-wordmark img:nth-child(5) {
	width: 21.563981%;
}

@media (max-width:74rem) {

	html {
		--site-header-height: 5.25rem;
	}

	.menu-toggle {
		display: inline-flex;
	}

	.navigation-panel {
		display: none;
		position: fixed;
		inset: 0;
		z-index: 100;
		background: var(--color-youthful-yellow);
		color: var(--color-new-growth-navy);
		overflow-y: auto;
		overscroll-behavior: contain;
		padding: clamp(6rem,17vh,8.5rem) 1.5rem 3rem;
		min-height: 100vh;
		min-height: 100dvh;
	}

	.navigation-panel.is-open {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
		gap: 1.5rem;
	}

	.main-menu {
		display: grid;
		grid-template-columns: repeat(2,auto);
		column-gap: 0;
		row-gap: clamp(1.5rem,6.5vh,3.5rem);
	}

	.main-menu>li {
		grid-column: 1 / -1;
		justify-self: center;
	}

	.main-menu>.menu-item-weglot {
		grid-column: 1;
		justify-self: end;
	}

	.main-menu>.menu-item-weglot+.menu-item-weglot {
		grid-column: 2;
		justify-self: start;
		margin-left: 0;
	}

	.main-menu a {
		font-size: clamp(1.5rem,3.2vw,2rem);
		line-height: 1.25;
		font-weight: 700;
	}

	.main-menu a.button:not(.button-outline) {
		background: var(--color-curious-cream);
		font-size: .9375rem;
		padding: .65rem 1rem;
		margin-top: .5rem;
	}

	.main-menu>.menu-item-weglot>a {
		font-size: .9375rem;
		padding: .65rem .75rem;
	}

	.main-menu>.menu-item-weglot>a[aria-current=true] {
		background: var(--color-white);
	}

	.site-logo {
		width: 9rem;
	}

	.nav-open,.nav-open body {
		overflow: hidden;
	}

	.nav-open .site-header {
		min-height: var(--site-header-height,4rem);
	}

	.nav-open .site-logo {
		position: relative;
		z-index: 101;
	}

	.nav-open .menu-toggle {
		position: relative;
		z-index: 101;
	}

	/* Content stays reachable if JavaScript is unavailable. */
	html:not(.js) .menu-toggle {
		display: none;
	}

	html:not(.js) .site-header>.grid-container-full {
		flex-wrap: wrap;
	}

	html:not(.js) .navigation-panel {
		display: flex;
		position: static;
		min-height: 0;
		width: 100%;
		padding: 1.5rem;
		flex-direction: column;
		align-items: center;
	}

	html:not(.js) .main-menu {
		row-gap: 1.5rem;
	}

	.navigation-panel {
		padding-top: calc(clamp(6rem,17vh,8.5rem) + var(--menu-admin-offset,0px));
	}

	/* Touch focus stays quiet; Tab navigation keeps a visible ring. */
	.nav-open:not(.nav-keyboard) .site-header :focus {
		outline: none;
	}
}

@media (max-width:47.999rem) {

	html {
		--site-header-height: 3.5rem;
	}

	.site-header {
		padding-block: .75rem;
	}

	.site-logo {
		width: 6rem;
	}

	.menu-toggle {
		margin-block: -.375rem;
	}

	.footer-menu {
		flex-wrap: wrap;
		justify-content: center;
	}

	.site-footer p {
		text-align: center;
	}

	.footer-wordmark {
		padding-inline: 1.5rem;
	}
}

/* The theme header replaces Weglot's default floating control. */
.weglot-default {
	display: none!important;
}
