/* =======================
===    HEADER.CSS    =====
==========================

Contains
|
|-- Header Menu
|
|-- Header Nav
|
|-- Mobile Nav
|
|-- Hero

===*/


.header-menu{
  background-color:#fff;
  width:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:50px;
  position:fixed;
  box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
  z-index:1500;
	padding:10px;
}

.header-menu.alert-enabled{
	top:60px;
}
.header-menu--transparent{
	background-color:transparent;
	padding-top:20px;
}

@media (min-width: 992px){  

  .header-menu{
    position:relative;
    min-height:80px;    
		padding:0 15px;
		
  }
	.header-menu.alert-enabled{
		top:0;
	}
  
}

.header-menu__container{
  max-width:1400px;
  width:100%;
  padding-left:15px;
  padding-right:15px;
  margin-left:auto;
  margin-right:auto;
  display:flex;
  align-items:center;
  align-self:stretch;
  justify-content: space-between;
}

.header-menu__nav{
  display:none;
  flex-grow:1;
  height:100%;
  align-items:center;
  position:static;
}   

@media (min-width:992px){
	
	.header-menu__container{	
		padding-left:15px;
		padding-right:15px;		
	}

  .header-menu__nav{
    display:flex;  
		margin-right:2rem;		
  }
  
}

.header-menu__btn-group{
  display:flex;
  flex-direction: row;
  align-items:center;
}

.header-menu__btn{
  display:flex;
  flex-direction: row;
  margin-right:auto;
  align-items:center;
}

.header-menu__phone-btn a,
.footer-menu__phone-btn a {
  display:flex;
  flex-direction:row;
  align-items:center;  
  color: #285843;
}

.header-menu__phone-number,
.footer-menu__phone-number{
  font-size:1rem;
  font-weight:bold;  
  line-height:1;
  color:inherit;  
}

.header-menu__btn:last-of-type{
  margin-right:0;
}

.header-menu__logo{
  display:flex;
  align-items: center;  
  height: 100%;
  margin-right:1rem;
  line-height:1;  
}

.header-menu__social-bar{
	display:none;
	align-items:center;
	width:100%;	
	margin:auto;
	margin-left:2rem;
	border-left:1px solid #cacaca;
	justify-content: space-between;	
}

.header-menu__cta-btn{
	display:none;
}

@media (min-width:992px){

	.header-menu__social-bar{
		display:flex;
	}
	.header-menu__cta-btn{
		display:flex;
		border-bottom:5px solid transparent;
	}
	
}
	
.header-menu__social-link{
	color: #285843;
	margin-right:0.5rem;
}

.header-menu__social-link:first-of-type{	
	margin-left:1.5rem;
}
.header-menu__social-link:last-of-type{	
	margin-right:0;
}

.header-menu__social-link .fa-circle{
	opacity:0;
	transition: all 0.2s ease-in;
}

.header-menu__social-link:hover .fa-circle{
	opacity:1;
}
.menu__container{
	display:flex;
	align-items:center;
	height:100%;
	padding:0;
	margin-top:0;
	margin-bottom:0;
}

.menu__container--left{
	margin-left:0;
	margin-right:auto;
}

.menu__container--right{
	margin-right:0;
	margin-left:auto;
}
.menu__container--center{
	margin-left:auto;
	margin-right:auto;	
}

.menu__list{
	list-style:none;
	padding:0;
	margin-top:0;
	margin-bottom:0;
  display:flex;
  align-items:center;
  height:100%;	
}

.menu__list-item{
  display:flex;
  align-items: center;  
  height: 100%;
  margin-right:1.5rem;
  line-height:1;
  pointer-events: all;
/*  border-bottom: 5px solid transparent;  */
}
.menu__list-item:last-of-type{
  margin-right:0rem; 
}

.menu__list-item:active,
.menu__list-item:focus,
.menu__list-item:hover{
/*  border-bottom:5px solid #285843;*/
}

.menu__logo{
  max-width:200px;
	max-height:40px;
	height:40px;
  margin-right:1rem;  
}

.menu__logo--mobile{
  max-width:50px;	
  margin-right:1rem;
}
@media(min-width:992px){
	.menu__logo{
    height:60px;
		max-height:60px;

	}
}
.menu__link{  
  align-items:center;
  display:flex;  
	font-family:'Montserrat', sans-serif;
	color: #000;	
  font-weight:700;
  text-decoration: none;
	text-transform: uppercase;
	letter-spacing:0px;
	font-size:1rem;
	height: 100%;
  border-bottom: 5px solid transparent;
  width: 100%;
}

.menu__link:active,
.menu__link:focus,
.menu__link:hover{
  color: #285843;
  text-decoration: none;  
	border-bottom: 5px solid #285843;
}

.menu__overlay{
	position: fixed;
  width: 100%;
  height: 100%;
  bottom: 0;
  left: 0;
  top: 0;
  margin-top: 80px;
  right: 0;
  z-index: 1090;
  display: none;
	opacity:0;
  background-color: rgba(0,0,0,0.8);
	transition: all 0.3s ease;
	pointer-events: none;
}

.sub-menu--lvl-1{
  background-color:#fff;
  border-bottom: 1px solid #cacaca;
  width:100%;
  position:absolute;
  left:0;
  right:0;
  bottom: 0px;
  transform: translate(0,100%);
  display:none;
  z-index:1100;
  border-top:1px solid #cacaca; 
}

.sub-menu__container--lvl-1{
  max-width:1440px;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
  padding-bottom:2rem;
  padding-top:2rem;
  display:flex;
  flex-direction:column;
  align-items:center;
}

.sub-menu__wrap--lvl-1{
  max-width:1200px;
  width: 100%; 
  margin-right: auto;
  margin-left: auto; 
  display:flex;
  flex-direction:column;
  align-items:start;
}

.sub-menu__list{
  list-style: none;
  padding:0;
  margin:0;
}

.sub-menu__list--lvl-1{
  display:flex;
  flex-direction:row;
  justify-content: start;
  max-width:1200px;
  width:100%;  
	transition: all 0.2s ease-in;  
}

.sub-menu__list--lvl-2{
  
}

.sub-menu__list-item--lvl-1{
  width: 33%;
  padding: 0 2rem;
  border-left: 1px solid #cacaca;
}

.sub-menu__list-item--lvl-1.menu-item-has-children:nth-of-type(1){
  border-left: none;
  padding-left:0;
}

.sub-menu__link{
  font-weight: 500;
  color: #2e2e2e;
  font-size:1rem;
  text-decoration:none;
  display:block;
  padding:0.25rem 0;
}
.sub-menu__list-item--lvl-1.menu-item-has-children > .sub-menu__link  {
  font-weight:bold;
  display:block;
  margin-bottom:0.5rem;
  font-size:1.2rem;
}
.sub-menu__list-item--lvl-1.menu-item-has-children:nth-of-type(1) > .sub-menu__link{
  color:#285843;
}
.sub-menu__list-item--lvl-1.menu-item-has-children:nth-of-type(2) > .sub-menu__link{
  color:#F08B1D;
}
.sub-menu__list-item--lvl-1.menu-item-has-children:nth-of-type(3) > .sub-menu__link{
  color:#FF4E00;
}
.menu__list-item:focus-within{
  color:#285843;
}
.menu__list-item:hover > .sub-menu--lvl-1,
.menu__list-item:hover > .menu__overlay{
  display:block;
	opacity:1;
}
.menu__list-item:hover > .menu__link{
  color:#285843;
}

.sub-menu__list-item--lvl-2{
  margin-bottom:0.5rem;
}
.simple-menu--levels-2 .sub-menu__list{
  margin-left: 0px;
  max-width:800px;
  width:100%;
  flex-wrap:wrap;
  justify-content:start;
  
}
.simple-menu--levels-2 .sub-menu__list-item{
  width:50%;
  margin-bottom:1rem;
  display:inline-block;
  border-left:none;
  padding-left:0px;  
}

.sub-menu__parent-link{
  font-size:1.5rem;
  margin-bottom:1.5rem;
  color:#285843;
  
}

.header-mobile-menu{
  display:block;  
  background-color:#fff;
  height:100%;
  position:fixed;
  z-index:12500;
	margin-top:60px;	
  width:100%; 
	pointer-events: none;
	box-shadow:inset 0px 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24)
}

.header-mobile-menu.menu--hidden{
  display: block;
	height:100%;
	opacity:0;
	z-index:-1;
	visibility:hidden;
	transition:all 0.3s ease-in;
}

.header-mobile-menu.menu--visible{
	visibility: visible;
  opacity:1;
	transition:opacity 0.3s ease-in;
}

.lock-scroll{
	overflow:hidden;
}
@media (min-width: 992px){  

  .header-mobile-menu{
    display:none;
    visibility: hidden;
    opacity:0;
   
 }
  
}

.header-mobile-menu__container{
  display: flex;
  flex-direction:column;
	justify-content: center;
  padding-top:60px;
  width:100%;
  height:100%;
  position:relative;
	margin-top:-60px;
	pointer-events: none;
  
}

.header-mobile-menu__footer{
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  width:100%;
  height:50px;
  background-color: #f4f4f4;
	border-top:1px solid #cacaca;
	padding:1rem;
}
.header-mobile-menu__social-bar{
	display:flex;
	align-items:center;
	width:100%;
	max-width:300px;
	margin:auto;
	justify-content: space-around;
	color:#285843;
}
.header-mobile-menu__social-link,
.footer-menu__social-link{
	color:#285843;
}

.header-mobile-menu__nav {
  padding-bottom:50px;
  overflow-y:auto;
	pointer-events: all;
}

.menu-mobile__container{
	display:flex;
	width:100%;
	flex-direction: column;
	align-items:start;
}

.menu-mobile__list,
.sub-menu--mobile__list{
	list-style: none;
	padding:0;
	margin:0;
	width:100%;
	display:flex;
	flex-direction: column;
}

.menu-mobile__list-item{		
	width:100%;
}

.menu-mobile__link{
	display:flex;
	align-items:center;
	justify-content:space-between;
	font-family:'Montserrat', sans-serif;
	letter-spacing:2px;
	font-weight:800;
	font-size:1.25rem;
	text-transform: uppercase;
	width:100%;
	padding:1rem 1.5rem;
	border-bottom:none;
	font-weight:bold;
	text-decoration: none;
	transition:all 0.2s ease;
}
.menu-mobile__link--lvl-1{
	background-color:#fff;
	color:#285843;
	text-decoration: none;
}
.menu-mobile__link:active,
.menu-mobile__link:focus,
.menu-mobile__link:hover,
.menu-mobile__link[aria-expanded="true"]{
  background-color: #fff;
	color: #285843;
	border-left:10px solid #285843;
	text-decoration: none;
}

.menu-mobile__link--lvl-2{
	background-color:rgba(122,0,60,0.7);
	padding-left:1.5rem;	
	color: #fff;	
}
.menu-mobile__link--lvl-3{
	padding:0.8rem;
	padding-left:2rem;	
	font-size:0.9rem;
  background-color:rgba(122,0,60,0.5);
	color:#fff;	
	
}
.menu-mobile__list-item--lvl-2:last-of-type .menu-mobile__link--lvl-2,
.menu-mobile__list-item--lvl-3:last-of-type .menu-mobile__link--lvl-3{
	border-bottom:none;		
}


.mobile-search{
	display:flex;
	background-color:#fff;
	width:100%;
	border-bottom:rgba(164,173,153,1);
}
.mobile-search__container{
	width:100%;
	display:flex;
	padding:0.5rem 1rem;
	align-items:center;
}

.mobile-search__container .fa-search{
	color: rgba(120,0,60,1)!important;
}



.header-menu__search-btn .fa-search, .header-menu__search-container .fa-times-circle{
	color:rgba(120,0,60,1);
}

.header-menu__search-container{
	display:none;
	align-items:center;
	justify-content:center;
	transition: all 0.2s ease-in;
	width:100%;
	height:80px;
	position:absolute;
	z-index:1150;
	top:0;
	left:0;
	right:0;
	background-color:#fff;
}

.header-menu__search-container .header-menu__search-inner{
	max-width:1400px;
	display:flex;
	align-items:center;
	justify-content:center;
	margin:auto;
	height:100%;
	width:100%;
	padding-right:1rem;
}
.header-menu__search-container.is-active{
	display:flex;
	visibility:visible;
	opacity:1;
}

.header-menu__search-container .mobile-search__container input{
	height:50px;
	font-size:1.5em;	
}

.header-menu__search-container .mobile-search__container .fa-search{
	font-size:2em;	
}










/*================
====  HERO  ======
================*/
#hero-slider{
	margin-top: 0px;	
}

@media (min-width:992px){
	
	#hero-slider{
		margin-top: -80px;	
	}
	
}


.hero__image{
	background-size:cover;	
	background-color:#294b55;
	width:100%;
	height:350px;
	position:relative;
	text-align: center;
	display:flex;
	flex-direction: column;
	align-items:center;
	justify-content: center;
	margin-top:60px;
}

.hero__container{
	width:100%;
	max-width:1400px;
	padding-left:15px;
}
.hero__content{
	max-width:40%;
}
.hero__content--left{
	justify-content: center;
	align-items:flex-start;
	text-align: left;
	margin-left:0;
	padding-left:15px;
}

.hero__content--right{
	justify-content: center;
	align-items:flex-start;
}

.hero__image--homepage{	
	height:70vw;
}

@media (min-width:992px){
	
	.hero__image{		
		height:400px;		
		margin-top:0;
	}	
	
	.hero__image--homepage{		
		height:60vw;		
	}	
	
	.hero__container{
		width:100%;
		max-width:1400px;
		padding-left:15px;
	}
}

@media(min-width:1440px){
	
	.hero__image--homepage{		
		height:50vw;	
	}	
	
}

@media(min-width:1920px){
	
	.hero__image--homepage{		
		height:40vw;	
	}	
	
}

@media(min-width:2200px){
	
	.hero__image--homepage{		
		height:30vw;	
	}	
	
}

@media(min-width:3000px){
	
	.hero__image--homepage{		
		height:25vw;	
	}	
	
}

.hero__map{
	background-size:cover;	
	background-color:#294b55;
	width:100%;
	height:400px;
	position:relative;
	text-align: center;
	display:flex;
	flex-direction: column;
	align-items:center;
	justify-content: flex-end;	
}

@media (min-width:992px){
	.hero__map{		
		height:400px;		
	}	
}

.hero__image-caption{
  position: absolute;
  bottom:0;
  right:0;
  padding:0.25rem 1rem 0 1rem;
  background-color: #000;
  color: #fff;
  font-size:0.8rem;
}

.hero__image-overlay{	
	position:absolute;
	width:100%;
	height:100%;
	left:0;
	right:0;
	bottom:0;
	top:0;
	pointer-events: none;
	z-index:1050;	
  background: linear-gradient(47deg, rgba(0,0,0,0.765983893557423) 0%, rgba(0,0,0,0.4166841736694677) 86%, rgba(0,0,0,0) 100%);
}
/*
.hero__image::before{
	content:'';
	height:12px;
	background-color:#fff;
	width:100px;
	-moz-transform: rotate(315deg);
-webkit-transform: rotate(315deg);
-o-transform: rotate(315deg);
-ms-transform: rotate(315deg);
transform: rotate(315deg);
}
*/
.hero__content-container{
	z-index:1100;
	position:relative;
	display:flex;
	flex-direction:column;
}

.stripe__white--top{
	  content: '';
    height: 12px;
    background-color: #fff;
    width: 100%;
	  margin-bottom:8px;
		
}

.stripe__outline--top{
	  content: '';
    height: 12px;
	  border:3px solid #fff;
    background-color: transparent;
    width: 100%;    
}

.stripe__dark--top{
	  content: '';
    height: 16px;
    background-color: #000;
    width: 100px;
	  margin-bottom:6px;
		
}

.stripe__outline-dark--top{
	  content: '';
    height: 16px;
	  border:4px solid #000;
    background-color: transparent;
    width: 100px;    
}
.stripe__white--bottom{
	  content: '';
    height: 12px;
    background-color: #fff;
    width: 100%;	
}

.stripe__outline--bottom{
	  content: '';
    height: 12px;
	  border:3px solid #fff;
    background-color: transparent;
    width: 100%;  	

}

.hero__title{
	color: #fff;
	font-size:2rem;
	font-style:normal;
	font-weight:900;
	letter-spacing:2px;
	text-transform: uppercase;	
	z-index:1050;	
	margin-bottom:0;
}

.hero__title--dark{
	color:#000;
	font-size:2rem;
	font-style:normal;
	font-weight:900;
	letter-spacing:2px;
	text-transform: uppercase;	
	z-index:1050;	
	margin-bottom:0.5rem;
}

.hero__subtitle{
	color:#fff; 
	font-size:1.25rem;
	font-style:normal;
	font-weight:700;
	letter-spacing:2px;
	text-transform: uppercase;	
	z-index:1050;
	margin:0;	
}
.hero__subtitle--dark{
	color:#000; 
	font-size:1.25rem;
	font-style:normal;
	font-weight:700;
	letter-spacing:2px;
	text-transform: uppercase;	
	z-index:1050;
	margin:0;	
}


@media (min-width:576px){
	
	.hero__title{
		font-size:2.5rem;	
		letter-spacing:3px;	
	}

	.hero__title--dark{
		font-size:2.5rem;	
		letter-spacing:3px;	
	}

	.hero__subtitle{	
		font-size:1.25rem;	
		font-weight:700;
		letter-spacing:2px;	
	}

	.hero__subtitle--dark{	
		font-size:1.5rem;	
		font-weight:700;
		letter-spacing:2px;	
	}
	
}

@media (min-width:992px){
		
	.hero__title{
		font-size:4rem;	
		letter-spacing:5px;	
	}

	.hero__title--dark{
		font-size:4rem;	
		letter-spacing:5px;	
	}

	.hero__subtitle{	
		font-size:2rem;	
		font-weight:800;
		letter-spacing:3px;	
	}

	.hero__subtitle--dark{	
		font-size:2rem;	
		font-weight:800;
		letter-spacing:2px;	
	}
	
}
.hero__divider{
/*
	position:absolute;
	bottom:-25px;
	width:100%;
	height:200px;
	background-image: url(/wp-content/themes/ng/assets/images/background-curve-hero.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	z-index:1100;
*/
}



.hero-slider__content-wrap{
  display:flex;
  flex-direction: column;
  align-items:center;
  justify-content: center;
  width:100%;
  height:100%;
  position:relative;
  z-index:1100;
  max-width:1440px;
  margin:auto;
  padding-left:15px;
  padding-right:15px;
}

.hero-slider__content{
  z-index:1100;
  display:flex;  
	justify-content: center;
  flex-direction: column;
  margin-left:auto;
  margin-right:auto;
  color:#fff;
	margin-top:50px;
}

.hero-slider__content--left{
	align-items:start; 
  text-align: left;
	margin-left:0;
}

.hero-slider__content--center{
	align-items:center; 
  text-align: center;
}

.hero-slider__content--right{
	align-items:end;  
  text-align: right;
	margin-right:0;
}


.hero-slider__logo{
	max-width:100%;
	height:auto;
}

.hero-slider__title{
  font-size:4rem;
  letter-spacing:4px;
  font-weight:normal;
  margin-bottom:0.25rem;
	line-height:1;
}

.hero-slider__subtitle{
  font-size:1.1rem; 
  font-weight:500;
	max-width: 750px;
	font-family:'Raleway', sans-serif;
}

@media (min-width:992px){
	
	.hero-slider__title{
		font-size:5rem;
		letter-spacing:3px;		
		margin-bottom:0.75rem;
	}

	.hero-slider__subtitle{
		font-size:2rem; 		
	}
	.hero-slider__content{
		margin-top:0;
	}
}

.hero-slider__ctas{
  display:flex;
  flex-direction: row;
  justify-content: space-between;
  align-items:center;
  margin-top:1rem;
}

.carousel-control-next, 
.carousel-control-prev{
  width:10%;
}