/* custom_nav_main_partial.html - global */
.navigation {
	--surface-mobile-nav: transparent;
	--surface-highlight: var(--primary-color-400);
	--text: var(--gray-100);
}

.contentRender_name_plugins_nav_main,
.contentRender_name_plugins_nav_main_dropdown {
	order: -1;
}

.nav-container {
	display: flex;
	justify-content: center;
	height: 100%;
}

.navigation a {
	display: flex;
	align-items: center;
	padding: var(--space-3) var(--space-4);
	font-size: var(--text-base);
	line-height: var(--leading-tight);
	text-decoration: none;
	color: var(--gray);
	transition: color var(--transition);
}

.navigation.mobile a {
	padding: 6px;
}

.navigation.mobile.secondary a {
	padding-block: 4px;
}

.navigation.mobile .nav-item .dropdown-menu a {
	font-size: 13px;
	font-weight: var(--font-weight-normal);
}

.navigation.desktop a {
	white-space: nowrap;
	font-weight: var(--font-weight-normal);
	padding-inline: 0;
}

.navigation.desktop.primary a {
	text-transform: uppercase;
	font-size: 14px;
	letter-spacing: 0.15em;
	color: var(--black);
	padding-block: 14px 12px;
}

.navigation.desktop .nav-title a:hover {
	color: var(--gold-alt);
}

.navigation.desktop.secondary a {
	color: var(--gray-dark);
	font-size: 12px;
	letter-spacing: 0.02em;
	padding-block: 10px;
}

.navigation.desktop .dropdown-menu a {
	color: var(--gray);
	font-size: 15px;
	text-transform: none;
	letter-spacing: 0;
	padding-block: 4px 5px;
	transition: color var(--transition);
}

.navigation.desktop .dropdown-menu .nav-item.open > .nav-item-control :is(a, .dropdown-toggle),
.navigation.desktop .dropdown-menu a:hover {
	color: var(--gold-alt);
}

.navigation a:hover {
	color: inherit;
}

.navigation a:focus {
	text-decoration: underline;
	outline: none;
}

.navigation .nav-item .nav-item-control {
	display: flex;
}

.navigation.desktop .dropdown-menu .nav-item .nav-item-control.level-2 {
	padding-left: 2px;
}

.navigation.desktop .dropdown-menu .nav-item .nav-item-control {
	padding-inline: 30px;
}

.navigation.mobile .nav-item .level-1.nav-item-control > a {
	text-transform: uppercase;
	font-size: 16px;
	font-weight: var(--font-weight-semibold);
	letter-spacing: 0.06em;
}

.navigation.mobile.secondary .nav-item .level-1.nav-item-control > a {
	text-transform: none;
	font-size: 15px;
	font-weight: var(--font-weight-normal);
	letter-spacing: 0.02em;
}

.navigation.mobile .nav-item.open > .nav-item-control :is(a, .dropdown-toggle) {
	color: var(--gold-alt);
}

.navigation.mobile .nav-item.level-1 .nav-item {
	padding-left: 13px;
}

.navigation.mobile .nav-item.level-2 .nav-item {
	padding-left: 17px;
}

.navigation .nav-item .dropdown-toggle {
	margin: 0;
	background-color: transparent;
	color: var(--gray);
	font-size: 10px;
	transition: color var(--transition);
}

.navigation.desktop .nav-item .dropdown-toggle {
	font-size: 9px;
}

/* menu toggle */
.nav-container .menu-toggle {
	display: block;
	position: relative;
	margin: 0;
	padding: 0;
	background: none;
	cursor: pointer;
	text-transform: uppercase;
	font-size: 10px;
	letter-spacing: 0.02em;
	font-weight: var(--font-weight-semibold);
	color: var(--black);
	padding-top: 2px;
	width: 36px;
}

.nav-container .menu-toggle img {
	margin-bottom: 3px;
}

.nav-container .menu-toggle i {
	font-size: 14px;
	margin-bottom: 3px;
}

.nav-container .menu-toggle .opened {
	padding-top: 6px;
	display: none;
}

.nav-container .menu-toggle.active .opened {
	display: block;
}

.nav-container .menu-toggle.active .closed {
	display: none;
}

@media (min-width: 64em) {
	.nav-container .menu-toggle {
		display: none;
	}	
}

/* custom_nav_main_partial.html - mobile */
.navigation.mobile {
	background-color: var(--surface-mobile-nav);
	padding-left: 13px;
}

.navigation.mobile.primary {
	margin-bottom: 20px;
}

.navigation.mobile.secondary {
	margin-bottom: 30px;
}

.navigation.mobile .nav-item .dropdown-toggle .icon-toggle {
	transform-origin: center;
	transition: transform 300ms cubic-bezier(0,0,0.3,1);
}

.navigation.mobile .nav-item.open > .nav-item-control .dropdown-toggle .icon-toggle {
	transform: rotate(-180deg);
}

.navigation.mobile .nav-item.level-2 .dropdown-menu {
	padding-block: 8px;
}

/* custom_nav_main_partial.html - desktop */
.navigation.desktop {
	position: relative;
	display: none;
	justify-content: flex-end;
	height: 100%;
}

.navigation.desktop .dropdown-menu {
	pointer-events: none;
	z-index: 30;
	padding-top: 14px;
	padding-bottom: var(--space-5);
	height: 100%;
}

.navigation.desktop .dropdown-menu.open {
	display: block !important;
}

.navigation.desktop .dropdown-menu:not(.level-1):before {
	content: '';
	width: 1px;
	height: 210px;
	position: absolute;
	top: 18px;
	background-color: #333232;
	pointer-events: none;
}

.navigation.desktop .level-1.nav-item > .nav-item-control {
	align-items: center;
	height: 100%;
	color: var(--text);
}

.navigation.desktop .nav-item.level-1 > .nav-item-control > a {
	position: relative;
}

.navigation.desktop .nav-item.level-1 > .nav-item-control > a:after {
	content: '';
	width: 100%;
	height: 4px;
	background-color: var(--green);
	position: absolute;
	left: 0;
	bottom: 0;
	pointer-events: none;
	transform-origin: left;
	transform: scaleX(0);
	transition: transform ease-out .75s;
}

.navigation.desktop .nav-item.level-1.open > .nav-item-control > a:after,
.navigation.desktop .nav-item.level-1 > .nav-item-control > a:focus:after,
.navigation.desktop .nav-item.level-1 > .nav-item-control > a:hover:after {
	transform: scaleX(1);
}

.navigation .nav-item.level-1 .nav-item-control a,
.navigation .nav-item.level-2 .nav-item-control a,
.navigation .nav-item.level-3 .nav-item-control a {
	text-decoration: none; /*reboot.css override*/
}

/*prevents text overflow in non-level-1 nav items*/
.navigation .nav-item.level-2 .nav-item-control a,
.navigation .nav-item.level-3 .nav-item-control a {
	white-space: unset;
}

.navigation.desktop .level-1.nav-item > .nav-item-control > .dropdown-toggle {
	margin: 0;
	display: none;
}

.navigation .dropdown-menu-cont .cta-cont {
	display: none;
}

.navigation .dropdown-menu-cont .nav-image {
	display: none;
}

.navigation .dropdown-menu-cont .nav-title {
	display: none;
}

@media (min-width: 64em) {
	.navigation.desktop {
		display: flex;
	}

	.navigation.desktop.secondary {
		gap: 22px;
	}

	.navigation.desktop.primary {
		gap: 26px;
	}

	.navigation .dropdown-menu-cont {
		position: absolute;
		left: 0;
		width: 100%;
		background: var(--black);
		background-size: cover;
		display: grid;
		align-content: start;
		grid-template-columns: 10fr minmax(750px, 22fr);
		column-gap: 40px;
		flex-direction: column;
		opacity: 0;
		z-index: 0;
		pointer-events: none;
		padding: 40px;
		overflow: hidden;
		transition: opacity ease .75s;
	}

	.navigation .nav-item.level-1.open .dropdown-menu-cont {
		opacity: 1;
		z-index: 1;
		pointer-events: all;
	}
	
	.navigation.desktop .dropdowns {
		margin-bottom: 17px;
	}
	
	.navigation.desktop .dropdowns .dropdown-menu {
		min-height: 375px;
	}
	
	.navigation .dropdown-menu-cont .nav-image {
		display: block;
		padding-top: 36px;
		opacity: 0;
		transition: opacity ease-in-out .75s .5s;
	}

	.navigation .dropdown-menu-cont .dropdown-right {
		opacity: 0;
		transform: translateY(100px);
		transition:
			opacity ease-in-out .75s .75s,
			transform ease-in-out .75s .75s;
	}

	.navigation .dropdown-menu-cont .nav-image img {
		width: 100%;
	}

	.navigation .nav-item.level-1.open  .nav-title {
		display: block;
	}

	.navigation .dropdown-menu-cont .nav-title a {
		line-height: 1.2;
		margin-bottom: 0;
		color: var(--white);
		font-size: 25px;
		letter-spacing: 0.06em;
		font-weight: var(--font-weight-semibold);
		text-transform: uppercase;
		padding-block: 36px 14px;
		border-bottom: 1px solid #333232;
	}

	.navigation .dropdown-menu-cont .cta-cont {
		grid-column: 2;
		align-self: end;
	}

	.navigation .nav-item.level-1.open .cta-cont {
		display: block;
	}
	
	.navigation .dropdown-menu-cont .cta-cont > div {
		display: flex;
		gap: 52px;
	}

	.navigation .nav-item.level-1.open .dropdown-menu-cont .nav-image {
		opacity: 1;
		transition-delay: 0;
	}

	.navigation .nav-item.level-1.open .dropdown-menu-cont .dropdown-right {
		opacity: 1;
		transform: translateY(0);
		transition-delay: 0;
	}
}

@media (min-width: 90em) {
	.navigation .dropdown-menu-cont {
		column-gap: 91px;
		padding-block: 67px 64px;
		padding-right: 79px;
		padding-left: 72px;
	}

	.navigation .dropdown-menu-cont .nav-image {
		padding-top: 0;
	}
}
