.lv-nav,
.lv-nav-trigger {
	--lv-black: var( --e-global-color-primary, #000000 );
	--lv-coral: var( --e-global-color-baed2f5, #F87C56 );
	--lv-peach: var( --e-global-color-2155d55, #FDD2B3 );
	--lv-coral-text: var( --lv-coral );
	--lv-ink-muted: var( --e-global-color-e9f436e, #4D4D56 );
	--lv-hairline: var( --e-global-color-e22904f, rgba( 0, 0, 0, 0.1 ) );
	--lv-font: "InterTight", "Inter Tight", system-ui, -apple-system, "Segoe UI", sans-serif;

	--lv-nav-surface: #FFFFFF;
	--lv-nav-text: var( --lv-black );
	--lv-nav-muted: var( --lv-ink-muted );
	--lv-nav-accent: var( --lv-coral );
	--lv-nav-rule: var( --lv-hairline );
	--lv-nav-divider: var( --e-global-color-d3b2bda, #0566DE );
	--lv-nav-hover-bg: color-mix( in srgb, var( --lv-peach ) 45%, transparent );
	--lv-nav-eyebrow: var( --lv-coral-text );
	--lv-nav-focus: var( --lv-coral-text );
	--lv-nav-scrim: rgba( 0, 0, 0, 0.45 );

	--lv-nav-width: 460px;
	--lv-nav-pad: 32px;
	--lv-nav-top-h: 76px;
	--lv-nav-row-h: 56px;
	--lv-nav-z: 100000;
	--lv-nav-ease: cubic-bezier( 0.32, 0.72, 0, 1 );
}

.lv-nav *,
.lv-nav *::before,
.lv-nav *::after,
.lv-nav-trigger,
.lv-nav-trigger * {
	box-sizing: border-box;
}

button.lv-nav-trigger,
button.lv-nav-trigger:hover,
button.lv-nav-trigger:focus {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	padding: 10px 4px;
	background: none;
	border: 0;
	border-radius: 4px;
	box-shadow: none;
	color: var( --lv-nav-trigger-color, currentColor );
	font: 600 17px/1 var( --lv-font );
	letter-spacing: 0;
	text-transform: none;
	cursor: pointer;
}

button.lv-nav-trigger:focus { outline: none; }

button.lv-nav-trigger:focus-visible {
	outline: 2px solid var( --lv-nav-focus );
	outline-offset: 3px;
}

.lv-nav-trigger__icon {
	display: block;
	flex: none;
	color: var( --lv-nav-icon-color, var( --lv-coral ) );
	width: 36px;
	height: 18px;
}

html.lv-nav-locked {
	overflow: hidden;
	padding-right: var( --lv-nav-scrollbar, 0px );
}

.lv-nav {
	position: fixed;
	inset: 0;
	z-index: var( --lv-nav-z );
	pointer-events: none;
	visibility: hidden;
	transition: visibility 0s linear 220ms;
}

.lv-nav.is-open {
	pointer-events: auto;
	visibility: visible;
	transition: none;
}

.lv-nav__scrim {
	position: absolute;
	inset: 0;
	background: var( --lv-nav-scrim );
	opacity: 0;
	transition: opacity 200ms ease;
}

.lv-nav.is-open .lv-nav__scrim { opacity: 1; }

.lv-nav__drawer {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
	width: min( var( --lv-nav-width ), 100% );
	background: var( --lv-nav-surface );
	color: var( --lv-nav-text );
	font-family: var( --lv-font );
	box-shadow: 30px 0 60px -40px rgba( 0, 0, 0, 0.5 );
	transform: translateX( -100% );
	transition: transform 220ms cubic-bezier( 0.4, 0, 1, 1 );
}

.lv-nav.is-open .lv-nav__drawer {
	transform: none;
	transition: transform 320ms var( --lv-nav-ease );
}

body.admin-bar .lv-nav { top: 32px; }

@media ( max-width: 782px ) {
	body.admin-bar .lv-nav { top: 46px; }
}

@media ( max-width: 520px ) {
	.lv-nav,
	.lv-nav-trigger {
		--lv-nav-pad: 20px;
		--lv-nav-top-h: 68px;
	}

	.lv-nav__drawer {
		width: 100%;
		box-shadow: none;
	}
}

.lv-nav__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex: none;
	min-height: var( --lv-nav-top-h );
	padding: 0 calc( var( --lv-nav-pad ) - 10px ) 0 var( --lv-nav-pad );
}

.lv-nav__lead {
	display: flex;
	align-items: center;
	min-width: 0;
}

.lv-nav__menu-label {
	font: 600 12px/1 var( --lv-font );
	letter-spacing: 1px;
	text-transform: uppercase;
	color: var( --lv-coral );
}

.lv-nav button.lv-nav__back,
.lv-nav button.lv-nav__back:hover,
.lv-nav button.lv-nav__back:focus,
.lv-nav button.lv-nav__close,
.lv-nav button.lv-nav__close:hover,
.lv-nav button.lv-nav__close:focus {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	margin: 0;
	padding: 0 10px;
	background: none;
	border: 0;
	border-radius: 4px;
	box-shadow: none;
	color: var( --lv-nav-text );
	font: 500 15px/1 var( --lv-font );
	letter-spacing: 0;
	text-transform: none;
	cursor: pointer;
}

.lv-nav button.lv-nav__back { margin-left: -10px; }
.lv-nav button.lv-nav__back[hidden] { display: none; }

.lv-nav button.lv-nav__close {
	justify-content: center;
	width: 44px;
	padding: 0;
}

.lv-nav button.lv-nav__close:hover { color: var( --lv-nav-accent ); }

.lv-nav__back .lv-nav__icon { transition: transform 160ms var( --lv-nav-ease ); }
.lv-nav__back:hover .lv-nav__icon { transform: translateX( -3px ); }

.lv-nav__viewport {
	position: relative;
	flex: 1 1 auto;
	min-height: 0;
}

.lv-nav__panel {
	position: absolute;
	inset: 0;
	overflow-y: auto;
	overscroll-behavior: contain;
	padding: 4px var( --lv-nav-pad ) 28px;
}

.lv-nav__panel[hidden] { display: none; }

.lv-nav .lv-nav__title {
	margin: 4px 0 18px;
	padding: 0;
	color: var( --lv-nav-text );
	font: 600 28px/1.14 var( --lv-font );
	letter-spacing: -0.5px;
	text-transform: none;
	text-wrap: balance;
}

.lv-nav .lv-nav__title:focus { outline: none; }

.lv-nav a.lv-nav__all,
.lv-nav a.lv-nav__all:hover,
.lv-nav a.lv-nav__all:focus {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-height: 48px;
	margin: 0 0 4px;
	color: var( --lv-nav-text );
	font: 600 17px/1.2 var( --lv-font );
	text-decoration: none;
}

.lv-nav a.lv-nav__all:hover span {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 4px;
}

.lv-nav__all .lv-nav__icon {
	color: var( --lv-nav-accent );
	transition: transform 180ms var( --lv-nav-ease );
}

.lv-nav__all:hover .lv-nav__icon { transform: translateX( 4px ); }
.lv-nav a.lv-nav__all[aria-current="page"] { color: var( --lv-coral-text ); }

.lv-nav__section + .lv-nav__section,
.lv-nav__all + .lv-nav__section { margin-top: 22px; }

.lv-nav .lv-nav__eyebrow {
	margin: 0 0 6px;
	padding: 0;
	color: var( --lv-nav-eyebrow );
	font: 600 11px/1.2 var( --lv-font );
	letter-spacing: 1px;
	text-transform: uppercase;
}

.lv-nav .lv-nav__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.lv-nav .lv-nav__item {
	margin: 0;
	padding: 0;
}

.lv-nav .lv-nav__item::before,
.lv-nav .lv-nav__item::marker { content: none; }

.lv-nav a.lv-nav__row,
.lv-nav button.lv-nav__row {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	width: calc( 100% + 16px );
	min-height: var( --lv-nav-row-h );
	margin: 0 -8px;
	padding: 6px 8px;
	background: transparent;
	border: 0;
	border-bottom: 1px solid var( --lv-nav-hover-bg );
	border-radius: 0;
	box-shadow: none;
	color: var( --lv-nav-text );
	font: 500 20px/1.3 var( --lv-font );
	letter-spacing: -0.2px;
	text-align: left;
	text-decoration: none;
	text-transform: none;
	white-space: normal;
	cursor: pointer;
	transition: background-color 160ms ease;
}

.lv-nav .lv-nav__panel > .lv-nav__section:last-child > .lv-nav__list > .lv-nav__item:last-child > .lv-nav__row {
	border-bottom: 0;
}

.lv-nav .lv-nav__panel--root .lv-nav__row {
	min-height: 64px;
	font: 600 24px/1.2 var( --lv-font );
	letter-spacing: -0.4px;
}

.lv-nav a.lv-nav__row:hover,
.lv-nav button.lv-nav__row:hover {
	background: var( --lv-nav-hover-bg );
	color: var( --lv-nav-text );
}

.lv-nav a.lv-nav__row:focus,
.lv-nav button.lv-nav__row:focus {
	color: var( --lv-nav-text );
	outline: none;
}

.lv-nav button.lv-nav__row:focus:not( :hover ) { background: transparent; }

.lv-nav__text {
	min-width: 0;
	transition: transform 180ms var( --lv-nav-ease );
}

.lv-nav__row .lv-nav__icon {
	flex: none;
	color: var( --lv-nav-muted );
	transition: transform 180ms var( --lv-nav-ease ), color 160ms ease;
}

.lv-nav__row:hover .lv-nav__text { transform: translateX( 4px ); }
.lv-nav__row:hover .lv-nav__icon { color: var( --lv-nav-accent ); }

.lv-nav .lv-nav__row[aria-current="page"]::before,
.lv-nav .lv-nav__row.is-trail::before {
	content: "";
	position: absolute;
	top: 14px;
	bottom: 14px;
	left: -2px;
	width: 3px;
	border-radius: 2px;
	background: var( --lv-nav-accent );
}

.lv-nav .lv-nav__row.is-trail .lv-nav__icon { color: var( --lv-nav-accent ); }

.lv-nav__foot {
	display: grid;
	grid-template-columns: minmax( 0, 1fr ) minmax( 0, 1fr );
	align-items: center;
	gap: 24px 12px;
	flex: none;
	padding: 20px var( --lv-nav-pad ) calc( 22px + env( safe-area-inset-bottom, 0px ) );
	border-top: 1px solid var( --lv-nav-divider );
}

.lv-nav__foot-cell {
	min-width: 0;
}

.lv-nav a.lv-nav__btn,
.lv-nav a.lv-nav__btn:focus {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 55px;
	padding: 0 16px;
	border: 2px solid var( --lv-black );
	border-radius: 28px;
	font: 600 17px/20px var( --lv-font );
	letter-spacing: 0;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.lv-nav a.lv-nav__btn--solid,
.lv-nav a.lv-nav__btn--solid:focus {
	background: var( --lv-black );
	color: #FFFFFF;
}

.lv-nav a.lv-nav__btn--outline,
.lv-nav a.lv-nav__btn--outline:focus {
	background: transparent;
	color: var( --lv-black );
}

.lv-nav a.lv-nav__btn:hover {
	background: var( --lv-coral );
	border-color: var( --lv-coral );
	color: #FFFFFF;
}

@media ( max-width: 420px ) {
	.lv-nav a.lv-nav__btn,
	.lv-nav a.lv-nav__btn:focus {
		padding: 0 10px;
		font-size: 15px;
	}
}

@media ( max-width: 340px ) {
	.lv-nav__foot-cell,
	.lv-nav .lv-nav__states-label,
	.lv-nav__states {
		grid-column: 1 / -1;
	}
}

.lv-nav .lv-nav__social {
	grid-column: 1 / -1;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.lv-nav .lv-nav__social li {
	margin: 0;
	padding: 0;
}

.lv-nav .lv-nav__social li::before,
.lv-nav .lv-nav__social li::marker {
	content: none;
}

.lv-nav a.lv-nav__social-link,
.lv-nav a.lv-nav__social-link:focus {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	color: var( --lv-black );
	transition: color 160ms ease;
}

.lv-nav a.lv-nav__social-link:hover {
	color: var( --lv-coral );
}

.lv-nav__social-icon {
	display: block;
	width: 24px;
	height: 24px;
	fill: currentColor;
}

.lv-nav__states {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.lv-nav .lv-nav__states-label {
	margin: 0;
	padding: 0;
	color: var( --lv-nav-eyebrow );
	font: 600 11px/1.2 var( --lv-font );
	letter-spacing: 1px;
	text-transform: uppercase;
}

.lv-nav a.lv-nav__state,
.lv-nav a.lv-nav__state:hover,
.lv-nav a.lv-nav__state:focus {
	padding: 8px 14px;
	border: 1px solid var( --lv-nav-rule );
	border-radius: 20px;
	color: var( --lv-nav-text );
	font: 500 14px/1 var( --lv-font );
	text-decoration: none;
}

.lv-nav a.lv-nav__state:hover { border-color: var( --lv-nav-text ); }

.lv-nav a.lv-nav__state[aria-current="true"] {
	background: var( --lv-nav-text );
	border-color: var( --lv-nav-text );
	color: var( --lv-nav-surface );
}

.lv-nav a:focus-visible,
.lv-nav button:focus-visible {
	outline: 2px solid var( --lv-nav-focus ) !important;
	outline-offset: 3px;
	border-radius: 4px;
}

.lv-nav-sr {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect( 0, 0, 0, 0 );
	white-space: nowrap;
	border: 0;
}

@media ( prefers-reduced-motion: reduce ) {
	.lv-nav__drawer,
	.lv-nav.is-open .lv-nav__drawer {
		transform: none;
		opacity: 0;
		transition: opacity 120ms ease;
	}

	.lv-nav.is-open .lv-nav__drawer { opacity: 1; }

	.lv-nav__text,
	.lv-nav__icon { transition: none !important; }
}
