/* set up variables to control header height and max-banner height, in different contexts */
/* small screens always use the small header */
body{
	--header-height: var(--min-header-height);
	--banner-height-shim: var(--min-header-height);
}

/* header cutoff width should be adjusted for different sites, depending on the width of their menu. Don't bring it in sooner than necessary */
/* ;nav-transition-from-mobile; */
@media only screen and (min-width: 1186px) {
	
	body{
		--header-height: var(--max-header-height);
		--banner-height-shim: var(--max-header-height);
	}
	body.fixed-header.page-home{
		--banner-height-shim: 0px;
	}
	body.scrolled{
		--header-height: var(--min-header-height);
	}
}

.banner_gallery{
	--banner-height-adjust: calc( var(--banner-height-shim) + var(--toolbar-height, 0px) );
}

/************************* Alert Bar *************************/
#alert-bar {
	text-align: center;
	width: 100%;
}

#alert-bar p {
	margin-bottom: 0;
	display: flex;
    justify-content: flex-end;
    padding: .5rem 0;
	color: white;
	font-size: .94rem;
	font-weight: 600;
}

#alert-bar p a {
	display: block;
	color: white;
	font-size: .94rem;
	font-weight: 600;
	transition: color .75s ease;
}

#alert-bar p a:hover {
	color: #ccc;
	transition: color .75s ease;
}

/****************** Header Contents ****************************/
#header{
	position: sticky;
	position: -webkit-sticky;
	top: 0px;
	z-index: 509;
}

#header-inner{
	position:relative;
	/* position: absolute; */
	width:100%;
	/* box-shadow: 0 0 7px #828282; */
}

.scrolled #header-inner{
	box-shadow: 0 0 7px #828282;
}

#topMenuBG {
	height: var(--header-height);
	position:relative;
	transition: height .5s ease;
	background: transparent;
	/* background: linear-gradient(180deg, rgba(0,0,0,.9) 0%, rgba(0,0,0,0) 100%); */
}
#topMenuBG::after{
	position:absolute;
	top:0;
	bottom:0;
	right:0;
	left:0;
	z-index:-1;
	content:'';
	background: #00335e;
	opacity:1;
	/* opacity: 0; */
	transition: opacity .5s ease;
}

/* .scrolled #topMenuBG::after {
	opacity: 1;
} */

.scrolled #topMenuBG {
	background: transparent;
}



#topMenuBG #header-logo.logo-white {
	display: block;
}
.scrolled #topMenuBG #header-logo.logo-white {
	display: none;
}
#topMenuBG #header-logo.logo-black {
	display: none;
}
.scrolled #topMenuBG #header-logo.logo-black {
	display: block;
}








 
  
#topMenuBG > .standard-width {
	display: flex;
	height: 100%;
	justify-content: space-between;
	align-items: center;
}
  
#topMenuBG #header-logo {
	display: block;
	flex: 0 1 auto;
	/* height: 75%; */
	height: 67px;
	max-width: 470px;

	padding-bottom: 1rem;
}

.scrolled #topMenuBG #header-logo {
	padding-bottom: 30px;
}

@media only screen and (max-width: 1185px) {
	.scrolled #topMenuBG #header-logo,
	#topMenuBG #header-logo {
		padding-bottom: 0;
	}	
}

#topMenuBG #header-logo:hover {
	opacity: .75;
	transition: opacity 1s ease;
}

#topMenuBG #header-logo img {
	width: auto;
	height: 100%;
	display:inline-block;
}
  
#headerRight {
	display: flex;
	flex-direction: row;
}

#topHeaderContact {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-right: 1rem;
}
  
#topHeaderContact p {
	display: none;
}

#topHeaderContact p {
	margin-bottom: 0;
}
  
.div-phone-icon {
	display: block;
	width: 25px;
	height: 25px;
}

.div-phone-icon a {
	display: block;
	width: 100%;
	height: 100%;
}


/* Gallery Overlay - Start */
.jsGallery.banner_gallery {
	position: relative;
  }
  .jsGallery.banner_gallery::before {
	/* display: block; */

	display: none;

	position: absolute;
	width: 100%;
	height: 89px;
	content: '';
	bottom: -2px;
	left: 0;
	z-index: 501;
	background-image: url(images/banner-bottom-overlay_blue_1800.svg);
	background-repeat: no-repeat;
	background-position: bottom;

	/* border: 1px solid red; */
  }
  .cmsDebug .jsGallery.banner_gallery::before {
	background-image: url(../../images/banner-bottom-overlay_blue_1800.svg);
  }

  @media only screen and (min-width: 1800px) {
	.jsGallery.banner_gallery::before {
		background-image: url(images/banner-bottom-overlay_blue_3600.svg);
	}
	.cmsDebug .jsGallery.banner_gallery::before {
		background-image: url(../../images/banner-bottom-overlay_blue_3600.svg);
	}
  }
  /* Gallery Overlay - Finish */



/* ;nav-transition-from-mobile; */
@media only screen and (min-width: 1186px) {
	.fixed-header #header-inner,
	.fixed-header.page-home #header-inner {
		position: absolute;
	}

	#topMenuBG::after{
		opacity:1;
	}
	
	.fixed-header:not(.scrolled) #topMenuBG::after,
	.fixed-header.page-home:not(.scrolled) #topMenuBG::after {
		/* opacity:.7; */
		opacity: 0;
	}
	
	#topMenuBG > .standard-width {
		position: relative;
	}

	#headerRight {
		margin-right: 0;
		flex-direction: column;
		justify-content: space-between;
		height: 100%;
	}
	
	#topHeaderContact {
		/* padding-top: .5rem; */
		margin-right:0;

		align-items: flex-end;
		/* margin-bottom: .5rem; */

		grid-gap: 2rem;
	}

	#topHeaderContact p {
		display: inline-block;
		padding: 0;
		/* margin-left: 2rem; */
		margin-left: 0;
	}

	#topHeaderContact p:nth-of-type(2) {
		margin-left: 50px;
	}



	/* #topHeaderContact p.btn-header a {
		color: #116cb2;
		background: white;
		display: inline-block;
		font-weight: 600;
		font-size: 1rem;
		transition: color .75s ease;
	} */

	#topHeaderContact p.btn-header a.cms-button-a {
		  background-image: url(images/btn-mnt-skew-blue_header.svg);
		  background-repeat: no-repeat !important;
		  background-size: 100% 100%;
		  background-color: unset;
		  border: none;
		  width: 225px;
		  height: 55px;
		  text-align: center;
		  font-size: 16px;
		  transition: background .75s ease, color .75s ease;

		  text-transform: uppercase;
		  padding: 0.75rem 1.5rem .75rem 17px;
	}
	.cmsDebug #topHeaderContact p.btn-header a.cms-button-a {
		background-image: url(../../images/btn-mnt-skew-blue_header.svg);
		transition: background .75s ease, color .75s ease;
	}



	#topHeaderContact p.btn-header a.cms-button-a:hover {
		color: #106cb0;
		background-image: url(images/btn-mnt-skew-blue_header-hover.svg);
		transition: background .75s ease, color .75s ease;
	}
	.cmsDebug #topHeaderContact p.btn-header a.cms-button-a:hover {
		color: #106cb0;
		background-image: url(../../images/btn-mnt-skew-blue_header-hover.svg);
		transition: background .75s ease, color .75s ease;
	}

	#topHeaderContact p.btn-header a.cms-button-a img {
		margin-right: 0;
		width: 27px;
		height: unset;
		vertical-align: top;
	}





	#topHeaderContact p.btn-header-call {
		margin-bottom: 10px;
		margin-left: 0;
		white-space: nowrap;

		text-transform: uppercase;
	}

	#topHeaderContact p.btn-header-call a {
		background: transparent;
		color: white;
		font-size: 1.1rem;
	}


	#topHeaderContact p.btn-header-call:nth-of-type(2),
	#topHeaderContact p.btn-header-call:nth-of-type(3) {
		position: relative;
	}


	#topHeaderContact p.btn-header-call:nth-of-type(2)::before,
	#topHeaderContact p.btn-header-call:nth-of-type(3)::before {
		position: absolute;
		content: '';
		display: block;
		width: 1px;
		height: calc(100% + 28px);
		background: #3a5268;
		top: -1rem;
		left: -1rem;
	}
	/* #topHeaderContact p.btn-header a:hover {
		color: white;
		transition: color .75s ease;
	} */

	#topHeaderContact p.btn-header-phone a {
		font-weight: 700;
	}

	#topHeaderContact p.btn-header img {
		width: 22px;
		height: 16px;
		vertical-align: middle;
		margin-right: .75rem;
	}

	#topHeaderContact p.btn-header-phone img {
		height: 30px;
		margin-right: .5rem;
	}

	/* .scrolled #topHeaderContact p.btn-header a {
		color: black;
	}
	.scrolled #topHeaderContact p.btn-header a:hover {
		color: var(--brand-a);
	} */
	
	/*
	body #topHeaderContact .cms-button-a{
		transition: padding .5s ease;
	}
	body.scrolled #topHeaderContact .cms-button-a{
		padding: 0 .35rem;
	}
	*/

	.div-phone-icon {
		display: none;
	}

	#topMenuBG > .standard-width {
		align-items: flex-end;
	}
}

@media only screen and (max-width: 1185px) {
	/* .scrolled .div-phone-icon.phone-icon-black {
		display: block;
	}
	.scrolled .div-phone-icon.phone-icon-white {
		display: none;
	}
	.div-phone-icon.phone-icon-black {
		display: none;
	} */
}

@media only screen and (max-width: 679px) {
	#topMenuBG > .standard-width {
		grid-gap: 3rem;
	}
}


#topMenuBG > .standard-width {
	position: relative;
}

#topMenuBG > .standard-width::before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 2px;
	background: #3a5268;
	top: 55px;
	left: 0;
}

.scrolled #topMenuBG > .standard-width::before {
	display: none;
}
@media only screen and (max-width: 1500px) {
	#topMenuBG > .standard-width::before {
		width: calc(100% - 70px);
		left: 35px;
	}
}

@media only screen and (max-width: 1185px) {
	#topMenuBG > .standard-width::before {
		display: none;
	}
}
