/*
Theme Name: XTerra
*/


html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video,input,textarea{font-size:100%;font:inherit;padding:0;border:0;margin:0;vertical-align:baseline;box-sizing: border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}

body { font-size: 18px; line-height: 1.5em; font-family: 'Urbanist', sans-serif; color: #444; }
.container { width: 1240px; margin: 0 auto; }
a img { border: none; }
.clear { clear: both; }
.clearfix:before,
.clearfix:after { content:""; display:table; }
.clearfix:after { clear:both; }
/* For IE 6/7 (trigger hasLayout) */
.clearfix { zoom:1; }
.flex { display: flex; align-items: center; justify-content: space-between; }

/*
.half, .third, .twothirds, .quarter, .threequarters, .fifth, .twofifths, .threefifths, .fourfifths { margin: 0 4% 20px 0; box-sizing:border-box; float: left; }
.last, .right { margin: 0 0 20px 0; }
.right { float: right!important; }	
.full { width: 100%; }
.half { width: 48%; }
.quarter { width: 22%; }
.threequarters { width: 74%; }
.third { width: 30.66%; }
.twothirds { width: 65.32%; }
.fifth { width: 16.8%;}
.twofifths { width: 37.6%; }
.threefifths { width: 58.4%; }
.fourfifths { width: 79.2%; }
*/

/*
.half, .third, .twothirds, .quarter, .threequarters, .fifth, .twofifths, .threefifths, .fourfifths { margin: 0 3% 20px 0; box-sizing:border-box; float: left; }
.last, .right { margin: 0 0 20px 0; }
.right { float: right!important; }
.full { width: 100%; }
.half { width: 48.5%; }
.quarter { width: 22.75%; }
.threequarters { width: 74.25%; }
.third { width: 31.33%; }
.twothirds { width: 65.66%; }
.fifth { width: 17.6%; }
.twofifths { width: 38.2%; }
.threefifths { width: 58.8%; }
.fourfifths { width: 79.4%; }
*/

/*
.half, .third, .twothirds, .quarter, .threequarters, .fifth, .twofifths, .threefifths, .fourfifths { margin: 0 2% 20px 0; box-sizing:border-box; float: left; }
.last, .right { margin: 0 0 20px 0; }
.right { float: right!important; }	
.full { width: 100%; }
.half { width: 49%; }
.quarter { width: 23.5%; }
.threequarters { width: 74.5%; }
.third { width: 32%; }
.twothirds { width: 66%; }
.fifth { width: 18.4%; }
.twofifths { width: 38.8%; }
.threefifths { width: 59.2%; }
.fourfifths { width: 79.6%; }
*/

.half, .third, .twothirds, .quarter, .threequarters, .fifth, .twofifths, .threefifths, .fourfifths, .eighth, .threeeighths, .fiveeighths, .seveneighths { padding: 0 20px 20px 0; box-sizing:border-box; float: left; 
}
.last { padding: 0 0 20px 0;  }
.right { float: right; padding: 0 0 20px 20px; }	
.full { width: 100%; }
.half { width: 50%; }
.quarter { width: 25%; }
.threequarters { width: 75%; }
.third { width: 33.33%; }
.twothirds { width: 66.66%; }
.fifth { width: 20%; }
.twofifths { width: 40%; }
.threefifths { width: 60%; }
.fourfifths { width: 80%; }
.eighth { width: 12.5%; }
.threeeighths { width: 37.5%; }
.fiveeighths { width: 62.5%; }
.seveneighths { width: 87.5%; }

.alignleft { float: left; margin: 0 10px 0 0; }
.alignright { float: right; margin: 0 0 0 10px; }
.aligncenter { display: block; margin: 0 auto 10px auto; }

body .fl-row { padding: 0; }
.padbot-1x, .padbot-1x .fl-row-content-wrap { padding-bottom: 40px; }
.padbot-2x, .padbot-2x .fl-row-content-wrap { padding-bottom: 80px; }
.padbot-3x, .padbot-3x .fl-row-content-wrap { padding-bottom: 120px; }
.padbot-4x, .padbot-4x .fl-row-content-wrap { padding-bottom: 160px; }
.padbot-5x, .padbot-5x .fl-row-content-wrap { padding-bottom: 200px; }
.padbot-6x, .padbot-6x .fl-row-content-wrap { padding-bottom: 260px; }
.padbot-7x, .padbot-7x .fl-row-content-wrap { padding-bottom: 320px; }
.padbot-8x, .padbot-8x .fl-row-content-wrap { padding-bottom: 380px; }
.padbot-9x, .padbot-9x .fl-row-content-wrap { padding-bottom: 440px; }
.padbot-10x, .padbot-10x .fl-row-content-wrap { padding-bottom: 500px; }
.padtop-1x, .padtop-1x .fl-row-content-wrap { padding-top: 40px; }
.padtop-2x, .padtop-2x .fl-row-content-wrap { padding-top: 80px; }
.padtop-3x, .padtop-3x .fl-row-content-wrap { padding-top: 120px; }
.padtop-4x, .padtop-4x .fl-row-content-wrap { padding-top: 160px; }
.padtop-5x, .padtop-5x .fl-row-content-wrap { padding-top: 200px; }
.padtop-6x, .padtop-6x .fl-row-content-wrap { padding-top: 260px; }
.padtop-7x, .padtop-7x .fl-row-content-wrap { padding-top: 320px; }
.padtop-8x, .padtop-8x .fl-row-content-wrap { padding-top: 380px; }
.padtop-9x, .padtop-9x .fl-row-content-wrap { padding-top: 440px; }
.padtop-10x, .padtop-10x .fl-row-content-wrap { padding-top: 500px; }
.padleft-1x { padding-left: 20px; }
.padleft-2x { padding-left: 40px; }
.padleft-3x { padding-left: 60px; }
.padleft-4x { padding-left: 80px; }
.padleft-5x { padding-left: 100px; }
.padright-1x { padding-right: 20px; }
.padright-2x { padding-right: 40px; }
.padright-3x { padding-right: 60px; }
.padright-4x { padding-right: 80px; }
.padright-5x { padding-right: 100px; }
.padleft .fl-col-content {
  padding-left: calc( (100vw - 1280px) / 2) !important;
}
.padright .fl-col-content {
  padding-right: calc( (100vw - 1280px) / 2) !important;
}

/* --------------------- HEADER ---------------- */

#header-mobile {
	display: none;
	padding-top: 10px;
	padding-bottom: 10px;
}
#logo {
	vertical-align: bottom;
	width: 180px;
}

/* -------------------- NAV ------------------- */

#nav { 
	position: relative; 
}
#menu-button {
	display: none; 
	width: 26px; 
	height: 18px;
	position: relative;
	background: none;
	border: none;
	padding: 0;
	cursor: pointer; 
}
#menu-button span {
	display: block;
	height: 2px;
	background: #444;
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	margin-top: -1px;	
}
#menu-button::before, #menu-button::after {
	content: "";
	height: 2px;
	background: #444;
	left: 0;
	right: 0;
	position: absolute;
}
#menu-button::before {
	top: 0;
	transition: all 0.2s ease-in-out;	
}
#menu-button::after {
	bottom: 0;	
	transition: all 0.2s ease-in-out;
}

#mobile-nav {
	height: 100%;
  width: 350px;
  max-width: 100%;
  background: #fff;
  position: fixed;
  overflow: auto;
  padding: 50px 20px 30px 20px;
  right: -400px;
  top: 0;
  z-index: 9999;
  -webkit-box-shadow: 0 25px 40px rgba(0,0,0,.2);
  -moz-box-shadow: 0 25px 40px rgba(0,0,0,.2);
  box-shadow: 0 25px 40px rgba(0,0,0,.2);
  transition: all ease .3s;
  -webkit-transition: all ease .3s;
  -moz-transition: all ease .3s;
}
#mobile-nav a {
	color: #444;
	text-decoration: none;
}
#mobile-nav .close {
	text-align: right;
	margin-bottom: 30px;
}
#mobile-nav ul {
	list-style-type: none;
	margin: 0;
}
#mobile-nav .menu li {
	margin: 0;
	position: relative;
}


#mobile-nav .menu li.menu-item-has-children::after {
  width: 10px;
  height: 10px;
  position: absolute;
  right: 0;
  top: 10px;
  border-bottom: 2px solid #444;

  border-left: 2px solid #444;

  content: "";
  transform: rotate(-45deg);
}
#mobile-nav .menu a {
	display: block;
	padding: 8px 0;
	font-size: 20px;
	font-weight: 600;
}
#mobile-nav ul li ul {
	display: none;
}
#mobile-nav .menu ul a {
	padding-left: 10px;
	font-weight: 400;
}
#menu-close {
	font-size: 30px;
}

#nav ul { 
	list-style-type: none; 
}
#nav ul li { 
	display: inline-block; 
	position: relative; 
}
#nav ul li a {  
	text-decoration: none;
}
#nav ul li a:hover, #nav ul li.current_page_item a, #nav ul li.current-page-parent a {  

}
#nav ul li ul { 
	position: absolute; 
	left: -9999px; 
}
#nav ul li:hover ul { 
	left: 0px; 
}
#nav ul li ul li { 
	float: none; 
}
#nav ul li ul li a { 
	white-space: nowrap; 
}
#nav ul li:hover a {  

} /* to make the top link stay hovered when you move down the list */
#nav ul li:hover ul a {  

}/* so only the top link stays hovered */
#nav ul li ul li a:hover {  

} /* most specific hover */

/* ------------- CONTENT ------------ */

.custom-row { 
	position: relative; 
}
.custom-row .container { 
	position: relative; 
	z-index: 10; 
}
.overlay { 
	position: absolute; 
	top: 0; 
	left: 0; 
	bottom: 0; 
	right: 0; 
	z-index: 1; 
}
.light { 
	color: white; 
}

ul, ol { 
	margin-left: 20px; 
	margin-bottom: 10px; 
}
ul li, ol li { 
	margin-bottom: 5px; 
}
ul { 
	list-style-type: disc; 
}
ol { 
	list-style-type: decimal; 
}
ol li ol { 
	list-style-type: lower-alpha; 
}
p { 
	margin-bottom: 20px; 
}

img { 
	max-width: 100%; 
	height: auto; 
}
iframe { 
	max-width: 100%; 
}
.center { 
	text-align: center; 
}
.text-right {
	text-align:right;
}
.text-left {
	text-align: left;
}
.nomargin { 
	margin: 0!important; 
}
strong { 
	font-weight: bold; 
}
em { 
	font-style: italic; 
}

h1, h2, h3, .serif {
	font-family: 'DM Serif';
}
h1, h2, h3, h4, h5, h6 { 
	line-height: 1.1em; 
	font-weight: bold;
}
.light h1, .light h2, .light h3, .light h4, .light h5, .light h6 { 
	color: white; 
}
h1 {
	font-size: 56px;
}
h1 strong, h2 strong {
	color: #ff630e;
}
h2 {
	font-size: 48px;
}
h3 {
	font-size: 36px;
}
h4 {
	font-size: 32px;
}
h5 {
	font-size: 24px;
}
h6 {
	font-size: 20px;
	padding-left: 10px;
	border-left: 6px solid #051f76;
}

.list .fl-list-item-content-icon {
	display: none;
}
.list .fl-list-item-content-text {
	padding-left: 36px;
	background: url(images/clean.png) no-repeat left center;
	background-size: 24px auto;
}

.button a {  

}

input[type=text], input[type=email], input[type=tel], input[type=password], textarea { 
	width: 100%; 
	padding: 10px; 
	background: #eee; 
	border: 1px solid #ddd; 
}
input[type=submit] {  

}

.hero {
	position: relative;
}
.hero::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 86px;
	background: url(images/curve-overlay.png) no-repeat;
	background-size: 100% 100%;
	width: 100%;
	z-index: 100;
}

.hex .fl-row-content-wrap {
	background-size: 60% auto!important;
}

#footer .fl-row {
	position: relative;
}
#footer .fl-row::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 60%;
  top: 0;
  background: url(images/footer3.jpg) no-repeat top right;
  display: block;
  background-size: cover;
  mix-blend-mode: color-burn;
  transform: rotate(180deg);
  opacity: 0.6;
}

/* ------------------- MEDIA QUERIES -------------------- */

@media only screen and (max-width: 1279px) { 

.container { 
	width: 100%;
padding-left: 60px;
padding-right: 60px;	
}
.fl-row-fixed-width {
	padding-left: 40px;
	padding-right: 40px;
}
.fl-row-content-wrap {
	padding-left: 0!important;
	padding-right: 0!important;
}

.m-row .fl-col-group {
    display: flex!important;
    flex-wrap: wrap;
}

.fl-col.l-quarter {
	flex-basis: 25%!important;
}
.fl-col.l-threequarters {
	flex-basis: 75%!important;
}
.fl-col.l-half {
	flex-basis: 50%!important;
}
.fl-col.l-twothirds {
	flex-basis: 66.66%!important;
}
.fl-col.l-third {
	flex-basis: 33.33%!important;
}
.fl-col.l-threequarters {
	flex-basis: 75%!important;
}

}


@media only screen and (max-width: 980px) {
	

.fl-col.t-full {
	flex-basis: 100%!important;
}
.fl-col.t-half {
	flex-basis: 50%!important;
}
.fl-col.t-quarter {
	flex-basis: 25%!important;
}
.fl-col.t-threequarters {
	flex-basis: 75%!important;
}
.fl-col.t-third {
	flex-basis: 33.33%!important;
}
.fl-col.t-twothirds {
	flex-basis: 66.66%!important;
}
.padbot-1x, .padbot-1x .fl-row-content-wrap { padding-bottom: 30px; }
.padbot-2x, .padbot-2x .fl-row-content-wrap { padding-bottom: 60px; }
.padbot-3x, .padbot-3x .fl-row-content-wrap { padding-bottom: 90px; }
.padbot-4x, .padbot-4x .fl-row-content-wrap { padding-bottom: 120px; }
.padbot-5x, .padbot-5x .fl-row-content-wrap { padding-bottom: 150px; }
.padbot-6x, .padbot-6x .fl-row-content-wrap { padding-bottom: 180px; }
.padbot-7x, .padbot-7x .fl-row-content-wrap { padding-bottom: 210px; }
.padbot-8x, .padbot-8x .fl-row-content-wrap { padding-bottom: 240px; }
.padbot-9x, .padbot-9x .fl-row-content-wrap { padding-bottom: 270px; }
.padbot-10x, .padbot-10x .fl-row-content-wrap { padding-bottom: 300px; }
.padtop-1x, .padtop-1x .fl-row-content-wrap { padding-top: 30px; }
.padtop-2x, .padtop-2x .fl-row-content-wrap { padding-top: 60px; }
.padtop-3x, .padtop-3x .fl-row-content-wrap { padding-top: 90px; }
.padtop-4x, .padtop-4x .fl-row-content-wrap { padding-top: 120px; }
.padtop-5x, .padtop-5x .fl-row-content-wrap { padding-top: 150px; }
.padtop-6x, .padtop-6x .fl-row-content-wrap { padding-top: 180px; }
.padtop-7x, .padtop-7x .fl-row-content-wrap { padding-top: 210px; }
.padtop-8x, .padtop-8x .fl-row-content-wrap { padding-top: 240px; }
.padtop-9x, .padtop-9x .fl-row-content-wrap { padding-top: 270px; }
.padtop-10x, .padtop-10x .fl-row-content-wrap { padding-top: 300px; }
.padleft-1x { padding-left: 20px; }
.padleft-2x { padding-left: 30px; }
.padleft-3x { padding-left: 40px; }
.padleft-4x { padding-left: 50px; }
.padleft-5x { padding-left: 70px; }
.padright-1x { padding-right: 20px; }
.padright-2x { padding-right: 30px; }
.padright-3x { padding-right: 40px; }
.padright-4x { padding-right: 50px; }
.padright-5x { padding-right: 60px; }

.hero::after {
	height: 43px;
}

#header-mobile {
	display: flex;
}
#menu-button { 
	display:inline-block; 
}

#footer .fl-row::after {
	width: 100%;
}
	
}

@media only screen and (max-width: 768px) {

.container { 
padding-left: 20px;
padding-right: 20px;	
}
.fl-row-fixed-width {
	padding-left: 0px;
	padding-right: 0px;
}

.padbot-1x, .padbot-1x .fl-row-content-wrap { padding-bottom: 20px; }
.padbot-2x, .padbot-2x .fl-row-content-wrap { padding-bottom: 40px; }
.padbot-3x, .padbot-3x .fl-row-content-wrap { padding-bottom: 60px; }
.padbot-4x, .padbot-4x .fl-row-content-wrap { padding-bottom: 80px; }
.padbot-5x, .padbot-5x .fl-row-content-wrap { padding-bottom: 100px; }
.padbot-6x, .padbot-6x .fl-row-content-wrap { padding-bottom: 120px; }
.padbot-7x, .padbot-7x .fl-row-content-wrap { padding-bottom: 140px; }
.padbot-8x, .padbot-8x .fl-row-content-wrap { padding-bottom: 160px; }
.padbot-9x, .padbot-9x .fl-row-content-wrap { padding-bottom: 180px; }
.padbot-10x, .padbot-10x .fl-row-content-wrap { padding-bottom: 200px; }
.padtop-1x, .padtop-1x .fl-row-content-wrap { padding-top: 20px; }
.padtop-2x, .padtop-2x .fl-row-content-wrap { padding-top: 40px; }
.padtop-3x, .padtop-3x .fl-row-content-wrap { padding-top: 60px; }
.padtop-4x, .padtop-4x .fl-row-content-wrap { padding-top: 80px; }
.padtop-5x, .padtop-5x .fl-row-content-wrap { padding-top: 100px; }
.padtop-6x, .padtop-6x .fl-row-content-wrap { padding-top: 120px; }
.padtop-7x, .padtop-7x .fl-row-content-wrap { padding-top: 140px; }
.padtop-8x, .padtop-8x .fl-row-content-wrap { padding-top: 160px; }
.padtop-9x, .padtop-9x .fl-row-content-wrap { padding-top: 180px; }
.padtop-10x, .padtop-10x .fl-row-content-wrap { padding-top: 200px; }
.padleft-1x, .padleft-2x, .padleft-3x, .padleft-4x, .padleft-5x, .padright-1x, .padright-2x, .padright-3x, .padright-4x, .padright-5x { padding-left: 0; padding-right: 0; }
	

.full, .half, .third, .twothirds, .quarter, .threequarters, .fifth, .twofifths, .threefifths, .fourfifths, .threeeighths, .fiveeighths, .seveneighths { 
	width: 100%; 
	margin: 0 0 20px 0; 
	float: none; 
}



.fl-col.m-quarter {
	flex-basis: 25%!important;
}
.fl-col.m-threequarters {
	flex-basis: 75%!important;
}
.fl-col.m-half {
	flex-basis: 50%!important;
}
.fl-col.m-twothirds {
	flex-basis: 66.66%!important;
}
.fl-col.m-third {
	flex-basis: 33.33%!important;
}
.fl-col.m-threequarters {
	flex-basis: 75%!important;
}
.fl-col.m-full {
	flex-basis: 100%!important;
}
	
	h1 {
	font-size: 40px;
}
h2 {
	font-size: 36px;
}
h3 {
	font-size: 30px;
}
h4 {
	font-size: 24px;
}
h5 {
	font-size: 21px;
}


}

@media only screen and (max-width: 679px) {
	

	
}

@media only screen and (max-width: 499px) {
	
.fl-col.s-quarter {
	flex-basis: 25%!important;
}
.fl-col.s-threequarters {
	flex-basis: 75%!important;
}
.fl-col.s-half {
	flex-basis: 50%!important;
}
.fl-col.s-twothirds {
	flex-basis: 66.66%!important;
}
.fl-col.s-third {
	flex-basis: 33.33%!important;
}
.fl-col.s-threequarters {
	flex-basis: 75%!important;
}
.fl-col.s-full {
	flex-basis: 100%!important;
}
	
}

@media only screen and (max-width: 339px) {
	

	
}