@font-face {
	font-family: "Figtree";
	font-style: normal;
	font-weight: 300 900;
	font-display: swap;
	src: url("./fonts/figtree-variable-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC,
		U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329,
		U+2000-206F, U+20AC, U+2122, U+2191, U+2193,
		U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	--km-global-navy: #161f2c;
	--km-global-navy-deep: #0d141e;
	--km-global-orange: #ff9300;
	--km-global-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--km-global-font: "Figtree", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body,
button,
input,
select,
textarea,
body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
	font-family: var(--km-global-font);
}

.km-global-menu-backdrop {
	position: fixed;
	inset: 0;
	z-index: 9980;
	background: rgba(8, 13, 20, 0.3);
	opacity: 0;
	pointer-events: none;
	transition: opacity 240ms ease;
}

body.km-global-menu-open .km-global-menu-backdrop {
	opacity: 1;
}

@media (max-width: 921px) {
	body.ast-header-break-point .site-header {
		position: relative;
		z-index: 9999;
		background: var(--km-global-navy-deep) !important;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
		box-shadow: 0 12px 32px rgba(8, 13, 20, 0.16);
	}

	body.ast-header-break-point .site-header .ast-mobile-header-wrap,
	body.ast-header-break-point .site-header .ast-primary-header-bar,
	body.ast-header-break-point .site-header .ast-builder-grid-row-container,
	body.ast-header-break-point .site-header .site-header-primary-section-left,
	body.ast-header-break-point .site-header .site-header-primary-section-right {
		background: var(--km-global-navy-deep) !important;
	}

	body.ast-header-break-point .site-header .ast-primary-header-bar {
		min-height: 68px;
		border: 0 !important;
	}

	body.ast-header-break-point .site-header .custom-logo-link img {
		filter: brightness(0) invert(1);
	}

	body.ast-header-break-point .main-header-menu-toggle {
		display: grid;
		width: 46px;
		height: 46px;
		padding: 0 !important;
		background: transparent !important;
		border: 1px solid transparent !important;
		border-radius: 6px;
		color: #fff !important;
		place-items: center;
		transition: color 200ms ease, transform 280ms var(--km-global-ease);
	}

	body.ast-header-break-point .main-header-menu-toggle:hover,
	body.ast-header-break-point .main-header-menu-toggle.toggled {
		background: transparent !important;
		border-color: transparent !important;
	}

	body.ast-header-break-point .main-header-menu-toggle:focus-visible {
		outline: 2px solid var(--km-global-orange);
		outline-offset: 2px;
	}

	body.ast-header-break-point .mobile-menu-toggle-icon {
		position: relative;
		display: block;
		width: 26px;
		height: 26px;
	}

	body.ast-header-break-point .mobile-menu-toggle-icon > .ahfb-svg-iconset {
		position: absolute;
		inset: 0;
		display: grid !important;
		color: #fff;
		opacity: 1;
		place-items: center;
		transform: rotate(0) scale(1);
		transition: opacity 220ms ease, transform 360ms var(--km-global-ease);
	}

	body.ast-header-break-point .mobile-menu-toggle-icon > .ahfb-svg-iconset:nth-child(2) {
		opacity: 0;
		transform: rotate(-90deg) scale(0.64);
	}

	body.ast-header-break-point .main-header-menu-toggle.toggled .mobile-menu-toggle-icon > .ahfb-svg-iconset:first-child {
		opacity: 0;
		transform: rotate(90deg) scale(0.64);
	}

	body.ast-header-break-point .main-header-menu-toggle.toggled .mobile-menu-toggle-icon > .ahfb-svg-iconset:nth-child(2) {
		opacity: 1;
		transform: rotate(0) scale(1);
	}

	body.ast-header-break-point .ast-mobile-header-content,
	body.ast-header-break-point .ast-mobile-header-content .main-navigation,
	body.ast-header-break-point .ast-mobile-header-content .main-header-menu,
	body.ast-header-break-point .ast-mobile-header-content .menu-item,
	body.ast-header-break-point .ast-mobile-header-content .menu-link,
	body.ast-header-break-point .ast-mobile-header-content .ast-menu-toggle {
		background: var(--km-global-navy-deep) !important;
	}

	body.ast-header-break-point .ast-mobile-header-content {
		max-height: calc(100svh - 68px);
		border-top: 1px solid rgba(255, 255, 255, 0.1);
		box-shadow: 0 26px 56px rgba(8, 13, 20, 0.35);
		overflow-y: auto;
		transform-origin: top center;
	}

	body.ast-header-break-point.ast-main-header-nav-open .ast-mobile-header-content {
		animation: km-global-menu-in 380ms var(--km-global-ease) both;
	}

	body.ast-header-break-point .ast-mobile-header-content .menu-link,
	body.ast-header-break-point .ast-mobile-header-content .ast-menu-toggle {
		color: rgba(255, 255, 255, 0.86) !important;
	}

	body.ast-header-break-point .ast-mobile-header-content .menu-link {
		padding-top: 13px;
		padding-bottom: 13px;
		border-bottom-color: rgba(255, 255, 255, 0.08) !important;
		font-weight: 650;
		transition: color 180ms ease, padding-left 260ms var(--km-global-ease);
	}

	body.ast-header-break-point .ast-mobile-header-content .menu-link:hover,
	body.ast-header-break-point .ast-mobile-header-content .menu-link:focus-visible,
	body.ast-header-break-point .ast-mobile-header-content .current-menu-item > .menu-link,
	body.ast-header-break-point .ast-mobile-header-content .current-menu-ancestor > .menu-link {
		color: var(--km-global-orange) !important;
		padding-left: 26px;
	}

	body.admin-bar.ast-header-break-point .ast-mobile-header-content {
		max-height: calc(100svh - 114px);
	}
}

@keyframes km-global-menu-in {
	from {
		opacity: 0;
		transform: translateY(-14px) scaleY(0.96);
	}
	to {
		opacity: 1;
		transform: translateY(0) scaleY(1);
	}
}

@media (prefers-reduced-motion: reduce) {
	.km-global-menu-backdrop,
	body.ast-header-break-point .mobile-menu-toggle-icon > .ahfb-svg-iconset,
	body.ast-header-break-point .main-header-menu-toggle,
	body.ast-header-break-point .ast-mobile-header-content .menu-link {
		transition-duration: 0.01ms !important;
	}

	body.ast-header-break-point.ast-main-header-nav-open .ast-mobile-header-content {
		animation-duration: 0.01ms !important;
	}
}
