/* navMenu Global
/* ------------------------------------------------------------------------- */

.navMenu.-desktop {
  display: block;
}

.navMenu.-mobile,
.mobile-subnav__toggle-icon {
  display: none;
}

@media (max-width: 991px) {
  .navMenu.-desktop {
    display: none;
  }

  .navMenu.-mobile,
	.mobile-subnav__toggle-icon {
    display: block;
  }
}

/* navMenu Desktop
/* ------------------------------------------------------------------------- */

.navMenu.-desktop .navMenu__wrapper {
	display: flex;
	align-items: center;
}

.navMenu.-desktop .navMenu__item.-depth-1 {
	width: 100%;
	text-align: center;
	height: 3rem; /* TODO: ignore toggle button height */
}
.navMenu.-desktop .navMenu__item.-depth-1 > .navMenu__link {
	display: block;
	padding: .75rem;
}

.navMenu.-desktop .navMenu__subnavMenu.-level-2 {
	position: absolute;
	background-color: var(--color_bg_secondary);
	width: 100%;
	left: 0;
	top: 5.5rem;
	padding: .5rem 1rem;
	border-radius: var(--border-radius);
	box-shadow: 0 .5rem var(--color_white);
	
	display: none;
}

.navMenu.-desktop .subnavMenu__inner.-level-2 {
	display: flex;
	max-width: var(--content-width_wide);
	margin-left: auto;
	margin-right: auto;
}

.navMenu.-desktop .subnavMenu__main.-level-2 {
	width: 60%;
	display: flex;
	padding: 0.5rem 0;
}

.navMenu.-desktop .subnavMenu__aside.-level-2 {
	width: 40%
}
.navMenu.-desktop. .navMenu__item-depth-2 {
	width: 33.33%;
	text-align: left;
}

/* subnavMenu show/hide */

.navMenu.-desktop .navMenu__item.-depth-1.-open > a {
	color: var(--color_primary);
}

.navMenu.-desktop .navMenu__item.-depth-1.-open .navMenu__subnavMenu.-level-2 {
	display: block;
}


/* navMenu Links & Items
/* ------------------------------------------------------------------------- */

.navMenu__item:first-child.-depth-2 .navMenu__link.-depth-3 {
	font-size: var(--font-size_h3);
	font-weight: var(--font-weight_tertiary);
	line-height: 1.5rem;
}

.navMenu__link {
  font-weight: var(--font-weight_tertiary);
}

.navMenu__link:hover,
.navMenu__link:focus,
.navMenu__link:active {
  color: var(--color_primary);
  font-weight: var(--font-weight_tertiary);
}

.navMenu__link--active-link,
.navMenu__link--active-branch {
  color: var(--color_primary);
}

.navMenu__link.-depth-2,
.navMenu__link.-depth-3 {
	display: block;
	padding: 1.125rem 0;
}

.navMenu__item.-depth-2 {
	text-align: left;
  padding-right: 1rem;
	width: 33.33%;
	height: 3.75rem; /* TODO: ignore toggle button height */
}

.navMenu__link.-depth-2 {
  font-weight: normal;
	color: var(--color_grey_dark);
}




/* navMenu Mobile
/* ------------------------------------------------------------------------- */

/* .navMenu.-mobile. */

.navMenu.-mobile .navMenu__item.-depth-1 {
	position: relative;
	border-bottom: 1px solid var(--color_grey_primary);
}

.navMenu.-mobile .navMenu__item.-depth-1:last-child {
	border-bottom: none;
}


.navMenu.-mobile .navMenu__link.-depth-1 {
	padding: 1.125rem 2rem 1.125rem 0;
	display: block;
	width: fit-content;
}

.navMenu.-mobile .navMenu__item.-depth-2 {
	height: initial;
	width: 100%;
}

.navMenu.-mobile .navMenu__child-toggle:not(.mobile-subnav__toggle) {
	display: none;
}

.navMenu.-mobile .navMenu__child-toggle {
	position: absolute;
	right: 0;
	top: 0;
	padding: 1.125rem 0 1.125rem 1rem;
	width: 100%;
	text-align: right;
	
	color: var(--color_tertiary);
}

.navMenu.-mobile .navMenu__child-toggle i {
	transition: transform 0.3s;
	display: inline-block;
}

.navMenu.-mobile .navMenu__child-toggle.-open i {
	transform: rotate(180deg);
}

.navMenu.-mobile .subnavMenu.-level-2 {
	display: none;
}

.navMenu.-mobile .navMenu__item.-depth-1.-open .subnavMenu.-level-2 {
  display: block;
}

.navMenu.-mobile .card-featured-content {
	margin: 1rem 0 2rem 0;
}



/* Card Featured Content
/* ------------------------------------------------------------------------- */

.card-featured-content {
	background-image: var(--imageSrc);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
	border-radius: var(--border-radius);
}

.card-featured-content__inner {
	width: 100%;
	min-height: 28rem;
	padding: 2.5rem 1.5rem;
	display: flex;
	position: relative;
	align-items: flex-end;
	display: flex;
	margin-left: auto;
	margin-right: auto;
}

.card-featured-content__main {
	width: 100%;
	text-align: left;
}

.card-featured-content__main div {
	color: var(--color_white);
}

.card-featured-content__title {
	margin-top: 1rem;
}

.card-featured-content__icon {
	color: var(--color_grey_primary);
	font-size: 1.25rem;
}