@charset "utf-8";
/* CSS Document */

/*------Global------*/
a img{border:none}
body, form{padding:0px; margin:0px}
* {outline:none}
.clear{clear:both; height:0px; overflow:hidden;}
textarea{overflow:auto}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
	display:block;
}

/*----- mobile swicher ------*/
.mobile-only-inline, .mobile-only-block, .mobile-only-flex{
	display:none!important;
}
.desktop-only-inline{
	display:inline!important;
}
.desktop-only-block{
	display:block!important;
}
.desktop-only-flex{
	display:flex!important;
}
@media screen and (max-width: 800px) {
	.desktop-only-inline, .desktop-only-block, .desktop-only-flex{
		display:none!important;
	}
	.mobile-only-inline{
		display:inline!important;
	}
	.mobile-only-block{
		display:block!important;
	}
	.mobile-only-flex{
		display:flex!important;
	}
}

/*------Typography------*/

html{
	font-size: 1vw;
}
@media screen and (max-width: 800px) {
	html{
		font-size: 2.4vw;
	}
}

body, p, td, th{
	font-family: 'Poppins', sans-serif;
	font-size:1rem;
	line-height:1.8;
	color:#000;
	font-weight: 200;
	font-optical-sizing: auto;
}
p{
	padding:0px;
	margin:0px 0px 1.2rem 0px;
}
#content ul{
	margin:0px 0px 1.2rem 0px;
}

a{
	color:#000;
}
a:hover {
	color:#007197;
}

h1{
	font-family: 'Poppins', sans-serif;
	font-size: 9rem;
	letter-spacing: 0px;
	line-height: 0.9;
	color: #000;
	padding: 0px;
	margin: 0px 0px 1rem 0px;
	font-weight: 200;
	text-align: left;
}
h1 strong{
	font-weight:400;
}
h2{
	font-family: 'Poppins', sans-serif;
	font-size:3rem;
	letter-spacing: 0px;
	line-height: 1.1;
	color:#000;
	padding:0px;
	margin:0 0px 0.5rem 0px;
	font-weight:400;
	text-align:left;
	text-transform: uppercase;
}
h3{
	font-family: 'Poppins', sans-serif;
	font-size:2rem;
	line-height:1.6;
	letter-spacing: 0px;
	color:#000;
	padding:0px;
	margin:0px 0px 0px 0px;
	font-weight:400;
	text-transform: uppercase;
}
h4{
	font-family: 'Poppins', sans-serif;
	font-size:1.5rem;
	line-height:1.6;
	color:#000;
	padding:0px;
	margin:0px 0px 0 0px;
	font-weight: 400;
}
.blue{ color:#007197;}

/* form elements */
input[type='text'],
input[type='password'],
input[type='tel'],
input[type='email'],
input[type='date'],
.input{
	background:#fff;
	color: #333;
	display:inline-block;
	font-family: 'Poppins', sans-serif;
	font-size:14px;
	line-height:32px;
	height:32px;
	text-decoration: none;
	padding:0px 4px;
	border: solid 1px #555;

	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;

	-webkit-appearance: none;
	border-radius: 0;
}
textarea{
	background:#fff;
	border:solid 1px #555;
	color: #333;
	display:inline-block;
	font-family: 'Poppins', sans-serif;
	font-size:14px;

	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	padding:7px 2px;

	-webkit-appearance: none;
	border-radius: 0;
}
select{
	background:#fff;
	color: #333;
	display:inline-block;
	font-family: 'Poppins', sans-serif;
	font-size:14px;
	line-height:32px;
	height:32px;
	text-decoration: none;
	padding:0px 4px;
	border: solid 1px #555;

	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;

	-webkit-appearance: none;
	border-radius: 0;
}
button, .button, input[type="submit"], input[type="button"]{
	display: inline-block;
	width: auto;
	padding: 1rem 1.9rem;
	color: #fff;
	text-decoration: none;
	font-family: 'Poppins', sans-serif;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	text-transform: uppercase;
	border: solid 1px #007197;
	cursor: pointer;

	-webkit-appearance: none;
	transition: all 0.3s ease;

	background: #197cac;
	/*height: 3.8rem;*/
	line-height:1.4;
	border-radius: 1.9rem;
	font-size: 1.2rem;
	font-weight: 400;
	text-align: center;
}
button img, .button img, input[type="button"] img{
	display: inline-block;
	width: auto;
	height: 0.9rem;
	margin-bottom: 0.25rem;
	vertical-align: middle;
	transition: all 0.6s;
}
button:hover, .button:hover, input[type="submit"]:hover, input[type="button"]:hover{
	background:#000;
	color:#fff;
}
@media screen and (max-width: 800px) {
	button, .button, input[type="submit"], input[type="button"]{
		padding: 1.2rem 1.9rem;
		line-height:1.4;
		font-size: 1.5rem;
		border-radius: 4.8rem;
		display: block;
	}
	button img, .button img, input[type="button"] img{
		display: none;
	}
}

/*------Layout------*/
html{}
body{
	background-color: #ebf7fb;
}

#container{
}

.header{
	display: flex;
	padding: 2vw 3vw;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	box-sizing: border-box;
	width: 100%;
	position: relative;
}
.logoLink{
	position: relative;
	flex-basis: 15vw;
	display: block;
}
.logoLink img{
	display: block;
	width: 100%;
	height: auto;
}
@media screen and (max-width: 800px) {
	.logoLink{
		margin-bottom: 3vw;
	}
}








.fastLinks{
	flex-basis: 36vw; /*20vw; /*25vw;*/
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
#navMenu .fastLinks{
	flex-basis: 26vw;
}
.getCardLink{
	text-decoration: underline;
	text-transform: uppercase;
	font-size: 1.05rem; /*0.84rem; /*1.05rem;*/
	color: #000;
	font-weight: 500;
	margin-right: 1rem;
}
.fastLinksInner1{
	background: #000;
	width: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 2.85rem; /*2.28rem; /*2.85rem;*/
	border-radius: 2.175rem; /*1.74rem; /*2.175rem;*/
	padding: 0;
	border: solid 0.375rem #000;
	/*border: solid 0.3rem #000;*/
}
.callNowLink{
	background: #197cac;
	width: 9vw; /*7.2vw;/*9vw;*/
	display: block;
	height: 2.85rem; /*2.28rem; /*2.85rem;*/
	line-height: 2.85rem; /*2.28rem; /*2.85rem;*/
	border-radius: 1.425rem; /*1.14rem; /*1.425rem;*/
	font-size: 0.9rem; /*0.72rem; /*0.9rem;*/
	text-transform: uppercase;
	font-weight: 600;
	color: #fff;
	text-decoration: none;
	text-align: center;
	box-sizing: border-box;
	transition: all 0.6s;
}
.callNowLink:hover{
	color: #fff;
	background: #197cac;
}
.callNowLink img{
	display: inline-block;
	width: auto;
	height: 0.675rem; /*0.54rem; /*0.675rem;*/
	margin-bottom: 0.1875rem; /*0.15rem; /*0.1875rem;*/
	vertical-align: middle;
	transition: all 0.6s;
}
.callNowLink:hover img{
}

.menuLink{
	transition: all 0.6s;
	font-size: 0.9rem; /*0.72rem; /*0.9rem;*/
	font-weight: 400;
	text-transform: uppercase;
	text-decoration: none;
	color: #fff;
	padding: 0 1.125rem; /*0.9rem; /*1.125rem;*/
	line-height: 3rem; /*2.4rem; /*3rem;*/
}
.menuLink:hover{
	color: #fff;
}
.menuLink img{
	display: inline-block;
	height: 1.5rem; /*1.2rem; /*1.5rem;*/
	width: 2.625rem; /*2.1rem; /*2.625rem;*/
	vertical-align: middle;
	margin-right: 0.75rem; /*0.6rem; /*0.75rem;*/
	transition: all 0.6s;
}
.menuLink:hover img{
}
.mobileTopLinks{
	display: none;
}
/**/
@media screen and (max-width: 800px) {
	.logoLink{
		flex-basis: 40vw;
		margin: 0;
	}

	.header {
		padding: 6vw 5vw;
		align-items: center;
	}

	body > .header .getCardLink{
		display: none;
	}

	.fastLinks{
		flex-basis: 45vw;
	}
	.getCardLink{
		font-size: 1.15rem; /*1.05rem;*/
	}
	.fastLinksInner1{
		height: 4.2rem; /*2.85rem;*/
		border-radius: 2.7rem; /*2.175rem;*/
		border: solid 0.5rem #000;

		margin-left: auto;
	}
	.callNowLink{
		width: 25vw;/*22vw;*/
		height: 4.2rem; /*2.85rem;*/
		line-height: 4.2rem; /*2.85rem;*/
		border-radius: 2.2rem; /*1.425rem;*/
		font-size: 1.2rem; /*0.9rem;*/

		margin-right: 3vw;
	}
	.callNowLink img{
		height: 1.175rem; /*0.675rem;*/
		margin-bottom: 0.2rem; /*0.1875rem;*/

		display: none;
	}
	.menuLink{
		/*font-size: 1.15rem; /*0.9rem;*/
		padding: 0 1rem; /*1.125rem;*/
		line-height: 4rem; /*3rem;*/
		font-size: 0;
		color: #000;
	}
	.menuLink img{
		height: 2.3rem; /*1.5rem;*/
		width: 3.5rem; /*2.425rem; /*2.625rem;*/
		margin-right: 0.4rem; /*0.75rem;*/
	}

	.mobileTopLinks{
		width: 88%;
		margin: auto;
		padding-bottom: 1rem;
		display: flex;
		justify-content: flex-start;
	}
	.mobileTopLinks a{
		margin-right: 1.5rem;
	}
}











#navMenuWrap{
	background: #fff;
	width: 0;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	overflow: hidden;
	transition: all 0.4s ease;
	z-index: 1000;
}
#navMenu{
	background: #fff;
	width: 100vw;
	height: 100vh;
}
.navActive #navMenuWrap {
	width: 100vw;
	z-index: 1000;
}

#activateNav{
	z-index: 3010;
	position: relative;
	float: right;
}

/**/

a#activateNav > div{
	display:flex;
	flex-direction:column;
	width: 25px;
	cursor:pointer;
}
#activateNav > div span{
	background: #fff;
	border-radius:10px;
	height: 2px;
	margin: 3px 0;
	transition: .4s  cubic-bezier(0.68, -0.6, 0.32, 1.6);
}
#activateNav > div span:nth-of-type(1){
	width:50%;
}
#activateNav > div span:nth-of-type(2){
	width:100%;
}
#activateNav > div span:nth-of-type(3){
	width:75%;
}
.navActive #activateNav > div span:nth-of-type(1){
	transform-origin:bottom;
	transform:translate(-2px,0px) rotatez(45deg) translate(4px,0px)
}
.navActive #activateNav > div span:nth-of-type(2){
	transform-origin:top;
	transform:translate(-1px,0px) rotatez(-45deg)
}
.navActive #activateNav > div span:nth-of-type(3){
	transform-origin:bottom;
	width:50%;
	transform: translate(10px,-4px) rotatez(45deg);
}
@media screen and (max-width: 800px) {
	.navLogo{
		width: 40vw;
	}
	.navLogoWrap{
		padding: 4vw 0 3vw 4vw;
	}
}

.splittedNavWrap{
	display: flex;
	flex-direction: row;
	margin: 0 6vw 6vw 6vw;
	position: relative;
}
.splittedNav{
	flex-basis: 24%;
	margin-right: 1%;
}
.splittedNav.splittedNav2{
	flex-basis: 49%;
}
.splittedNavTitle{
	color: #fff;
	text-transform: uppercase;
	font-weight: 700;
	background: #197cac;
	font-size: 1.3rem;
	line-height: 2.4rem;
	padding: 0 0.5rem;
	margin-bottom: 0.7rem;
}
.splittedNavColumns{
	display: flex;
}
.splittedNavColumn{
	flex-basis: 50%;
}
.parentNavItem{
	font-size: 2rem;
	line-height: 1.3;
	padding: 2rem 1rem 1rem 1rem;
}
.parentNavItem a{
	color: #000;
	text-transform: uppercase;
	font-weight: 400;
}
.splittedNav ul{
	padding: 0;
	margin: 0;
}
.splittedNav > ul{
	padding-left: 0.6rem;
}
.splittedNav > ul > li > ul{
	padding-top: 0.6rem;
}
.splittedNav li{
	list-style: none;
	padding: 0.3rem 0;
	margin: 0;
	font-size: 1.2rem;
	line-height: 1.5;
	font-weight: 300;
}
.splittedNav a{
	text-decoration: none;
	text-transform: none;
}
.splittedNav li.bold-class > a{
	font-weight: 500;
	text-transform: uppercase;
	text-decoration: underline;
}
.splittedNav a:hover{
	text-decoration: underline;
}
@media screen and (max-width: 800px) {
	#navMenu{
		height: auto;
		background-color: #eee;
	}
	#navMenuWrap{
		height: auto;
		background-color: #eee;
	}
	.navActive #navMenuWrap{
		position: absolute;
	}
	.splittedNavWrap{
		display: block;
		flex-direction: row;
		margin: 0 6vw 60px 6vw;
		position: relative;

		text-align: left;
	}
	.splittedNavColumns{
		display: block;
		padding-bottom: 0.5rem;
	}
	.splittedNavTitle{
		margin-top: 1rem;
		line-height: 4rem;
		padding: 0 2rem;
		margin-bottom: 1.5rem;
	}
	.splittedNav li{
		padding: 0.7rem 0;
	}
	.parentNavItem{
	}


	.tgl3{
		display: inline;
		vertical-align: middle;
	}
	.tgl3:after{
		content: "+";
		font-weight: 500;
		font-size: 2rem;
		display: inline;
		margin-left: 0.5rem;
	}
	.active .tgl3:after{
		content: "-";
	}
	.tgl4{
		display: inline-block;
		vertical-align: middle;
	}
	.tgl4::after {
		content: "+";
		font-weight: 200;
		font-size: 2rem;
		line-height: 2rem;
		display: inline;
		margin-left: 2rem;
		vertical-align: middle;
	}
	.active .tgl4:after{
		content: "-";
	}
	.splittedNav li {
		font-size: 1.4rem;
		font-weight: 300;
	}
}













/**/
.titleBox{
	padding: 4vw 4vw 3vw 4vw;
	overflow: hidden;
}
.titleBox h1{
	font-family: 'Poppins', sans-serif;
	font-size: 8.1rem; /*9.5rem;*/
	letter-spacing: 0px;
	line-height: 0.9;
	color: #000;
	padding: 0px;
	/*margin: 0px 0px 2rem 0px;*/
	margin: 0px 0px 0px 0px;
	font-weight: 200;
	text-align: left;
}
.titleBox h1 strong{
	font-weight: 500;
}
@media screen and (max-width: 800px) {
	.titleBox h1 {
		font-size: 4rem;
		line-height: 1.1;
	}
}
/**/
.heroBox{
	position: relative;
	overflow: hidden;
	height: 40vw;
	transition: all 0.3s ease;
}
.heroBox::after{
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.3);
	opacity: 0;
	transition: opacity 0.5s ease;
	transition-delay: 0.3s;
}
.heroBox.act::after{
	opacity: 1;
}
.heroBox img{
	display: block;
	width: 100%;
	height: auto;

	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translateX(-50%) translateY(-50%);
	-moz-transform: translateX(-50%) translateY(-50%);
	-o-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	transition: opacity 0.5s ease;
	transition-delay: 0.3s;
	opacity: 0;
}
.heroBox.act img{
	opacity: 1;
}
.heroBox2{
	position: relative;
}
.heroBox2::after{
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.6);
}
.heroBox2 img{
	display: block;
	width: 100%;
	height: 100vw;
	object-fit: cover;
	position: relative;
	z-index: 0;

	max-height: 130vh;
	min-height: 60vw;
}
.heroBox2 .heroTitle{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	height: 100%;
	top: 0;
	left: 5%;
	width: 80%;
	position: absolute;
	z-index: 5;
}
.heroBox2.heroWithForm .heroTitle{
	width: 50%;
}
.heroBox2 .heroTitle *{
	color: #fff;
}
.heroBox2 .heroTitle h1{
	font-size: 8rem;
}
.heroBox2.heroWithForm .heroTitle h1{
	font-size: 7rem;
	margin-bottom: 2rem;
}
.heroBox2 .heroTitle p{
	font-size: 2.5rem;
	line-height: 1.4;
	width: 60%;
}
.heroBox2 .heroCaption{
	position: absolute;
	/*width: 42%;*/
	width: calc(80% - 60vh);
	right: 10%;
	bottom: 6vh;
	z-index: 5;
	min-width: 35%;
}
.heroBox2 .heroCaption *{
	color: #fff;
}
.heroBox2 .heroCaption p{
	font-size: 2rem;
	line-height: 1.4;
}
.heroBox2 .heroForm{
	position: absolute;
	width: 28%;
	right: 5%;
	bottom: 23vh;
	z-index: 5;
	background-color: #fff;
	padding: 3vw 3vw;
}


@media screen and (max-width: 800px) {
	.heroBox{
		height: auto;
	}
	.heroBox img{
		position: static;
		-webkit-transform: none;
		-moz-transform: none;
		-o-transform: none;
		transform: none;
	}

	.heroBox2 .heroTitle {
		height: auto;
		padding-top: 10vw;
	}
	.heroBox2.heroWithForm .heroTitle{
		width: 90%;
	}

	.heroBox2 .heroTitle h1 {
		font-size: 5rem;
		line-height: 1.1;
	}
	.heroBox2.heroWithForm .heroTitle h1 {
		font-size: 4rem;
	}
	.heroBox2 .heroTitle p{
		font-size: 2rem;
		width: auto;
	}
	.heroBox2 .heroForm {
		position: relative;
		width: auto;
		right: 0;
		bottom: auto;
		z-index: 5;
		background-color: #fff;
		padding: 8vw 8vw;
	}
	.heroBox2 .heroCaption {
		width: 90%;
		right: auto;
		bottom: 3vw;
		z-index: 5;
		left: 5%;
	}
	.heroBox2 .heroCaption p {
		font-size: 1.5rem;
		line-height: 1.4;
	}
}
/**/






.line-reveal {
	width: 120%;
	height: 3px;
	overflow: hidden;
	position: absolute;
	z-index: 0;
}
.line-reveal .overlay {
	background: black;
	height: 10px;
	position: absolute;
	top:-5px;
	width: 100%;
	transform-origin: 100% 0;
	animation: wipe 3s ease;
	animation-iteration-count: infinite;
	animation-direction: alternate;
	animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1.000); // cubic
	/*animation-timing-function: cubic-bezier(1.000, 0.000, 0.000, 1.000); // expo*/
}
.line-reveal .line {
	border: 3px dashed white;
	backface-visibility:hidden;
}
.line-a {
	left: 0;
	top: 60%;
	transform-origin: 0 0;
	transform: rotate(-50deg);
}
.line-a .line {
	border-color: #444;
}
.line-b {
	left: 0;
	bottom: 20%;
	transform-origin: 0 0;
	transform: rotate(-5deg);
}
.line-b .overlay {
	animation-delay: .5s;
}
.line-b .line {
	border-color: #444;
}
.line-c {
	right: 10%;
	bottom: 0;
	transform-origin: 100% 0;
	transform: rotate(70deg);
}
.line-c .overlay {
	animation-delay: 1s;
}
.line-c .line {
	border-color: #444;
}
@keyframes wipe {
	to {
		transform: scaleX(0);
	}
}




/**/
.twoColumnsChessBox{
	background: #000;
	display: block;
	padding: 6vw 5vw;
	position: relative;
	overflow: hidden;
}
.twoColumnsChessBox, .twoColumnsChessBox p, .twoColumnsChessBox *{
	color: #fff;
}
.twoColumnsChessBox p{
	font-size: 1.8rem;
	line-height: 1.6;
}
.twoColumnsChessBox h2{
	font-size: 4rem;
	text-transform: none;
	line-height: 1.4;
	font-weight: 200;
	margin: 0;
}
.oneOfTwoChess1{
	width: 28vw;
	padding-bottom: 2rem;
	position: relative;
	z-index: 10;
}
.oneOfTwoChess2{
	width: 60vw;
	margin-left: auto;
	position: relative;
	z-index: 10;
}
@media screen and (max-width: 800px) {
	.twoColumnsChessBox h2{
		line-height: 1;
		margin-bottom: 1rem;
		font-size: 3rem;
	}
	.oneOfTwoChess1{
		width: 70vw;
		padding-bottom: 2rem;
	}
	.oneOfTwoChess2{
		width: 70vw;
	}
}
/**/
.sectionTwoColumnsBox{
	padding: 6vw 14vw 4vw 14vw;
	overflow: hidden;
}
.sectionTwoColumnsTitleBox{
	padding-bottom: 3vw;
}
.sectionTwoColumnsBox h2{
	text-align: center;
	font-weight: 200;
	font-size: 4rem;
	text-transform: none;
	margin: 0;
}
@media screen and (min-width: 801px) {
	.twoColumnsBox {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
}
.oneOfTwo1{
	flex-basis: 48%;
}
.w100ImageBox{
	position: relative;
}
.w100ImageBox img{
	display: block;
	width: 100%;
	height: auto;
}
.sectionTwoColumnsBox .w100ImageBox img{
	display: block;
	border-radius: 4vw;
}
.oneOfTwo2{
	flex-basis: 48%;
}
.oneOfTwoColumnTitle p{
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 1.4;
}
.oneOfTwoColumnContent p{
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 1.6;
}
.oneOfTwoColumnContent h3{
	font-size: 1.4rem;
	font-weight: 600;
	text-transform: none;
}
@media screen and (max-width: 800px) {
	.sectionTwoColumnsBox {
		padding: 12vw 14vw 12vw 14vw;
	}
	.sectionTwoColumnsBox h2{
		font-size: 3rem;
		margin-bottom: 1rem;
		text-align: left;
		line-height: 1.3;
	}
	.oneOfTwo1{
		margin-bottom: 1rem;
	}
	.oneOfTwoColumnContent p {
		margin-bottom: 2rem;
		font-size: 1.8rem;
	}
	.oneOfTwoColumnContent h3 {
		font-size: 1.8rem;
	}
}
/**/

.sectionTwoColumnsAltBox{
	padding: 0 14vw 7vw 14vw;
	overflow: hidden;
}
@media screen and (min-width: 801px) {
	.twoColumnsAltBox {
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
		flex-direction: row-reverse;
	}
	.twoColumnsAltBox-2 {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.twoColumnsAltBoxTitle{
		width: 52%;
	}
}
.sectionTwoColumnsAltBox h2{
	text-align: left;
	font-weight: 200;
	font-size: 4rem;
	text-transform: none;
	margin: 0 0 2rem;
}
.oneOfTwoAlt1{
	flex-basis: 35%;
}
.oneOfTwoAlt1-2{
	flex-basis: 53%;
}
.oneOfTwoAlt2{
	flex-basis: 48%;
	margin-right: 10%;
}
.oneOfTwoAlt2-2{
	flex-basis: 35%;
}
.sectionTwoColumnsAltBox .w100ImageBox img{
	display: block;
	border-radius: 4vw;
}
.whatWeDoItem h3{
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 1.4;
	text-transform: none;
	margin: 0 0 0.5rem 0;
}
.whatWeDoItem p {
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 1.6;
	margin: 0 0 1rem 0;
}
@media screen and (max-width: 800px) {
	.whatWeDoItem p {
		font-size: 1.4rem;
	}
}
.whatWeDoItem{
	margin-bottom: 1rem;
	position: relative;
	padding-bottom: 1rem;
}
.whatWeDoItem::after{
	content: '';
	display: block;
	height: 0;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 80%;
	border-bottom: solid 1px #000;
}
.whatWeDoItem:last-child{
	margin-bottom: -1rem;
	padding-bottom: 0;
}
.whatWeDoItem:last-child::after{
	border-bottom: none;
}
.altTextContent p{
	font-size: 2rem;
	line-height: 1.6;
	margin: 0;
}
@media screen and (max-width: 800px) {
	.sectionTwoColumnsAltBox{
		padding: 0 14vw 12vw 14vw;
	}

	.sectionTwoColumnsAltBox h2{
		font-size: 3rem;
		margin-bottom: 1rem;
	}
	.oneOfTwoAlt2{
		margin-bottom: 1rem;
		margin-right: 0;
	}
	.oneOfTwoAlt1-2{
		padding-bottom: 3rem;
		margin-right: 0;
	}
}
/**/
.sectionTwoColumnsUniversalBox{
	padding: 9vw 14vw 8vw 14vw;
}
.sectionTwoColumnsUniversalBox.blackBg + .sectionTwoColumnsUniversalBox.blackBg,
.sectionTwoColumnsUniversalBox.whiteBg + .sectionTwoColumnsUniversalBox.whiteBg
{
	padding: 0vw 14vw 8vw 14vw;
}
.sectionTwoColumnsUniversalBox.blackBg{
	background: #000;
}
.sectionTwoColumnsUniversalBox.blackBg *{
	color: #fff;
}
.sectionTwoColumnsUniversalTitleBox{
	padding-bottom: 3vw;
}
@media screen and (min-width: 801px) {
	.twoColumnsUniversalBox {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.twoColumnsUniversalBox.reverse {
		flex-direction: row-reverse;
	}
}
.oneOfTwoUniversal1{
	flex-basis: 47%;
}
.sectionTwoColumnsUniversalBox .w100ImageBox img{
	display: block;
	border-radius: 4vw;
}
.oneOfTwoUniversal2{
	flex-basis: 47%;
}
.sectionTwoColumnsUniversalBox p{
	font-size: 1.5rem;
	font-weight: 300;
	line-height: 1.6;
	margin: 0 0 1.1rem 0;
}
.sectionTwoColumnsUniversalBox li{
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 1.4;
	margin: 0 0 1.1rem 0;
}
.sectionTwoColumnsUniversalBox ul{
	margin: 0;
	padding: 0 0 0 1.2rem;
}
@media screen and (max-width: 800px) {
	.sectionTwoColumnsUniversalBox p{
		font-size: 1.8rem;
		line-height: 1.6;
	}
	.sectionTwoColumnsUniversalBox li{
		font-size: 1.8rem;
		line-height: 1.6;
	}
}
.sectionTwoColumnsUniversalBox h2{
	font-weight: 200;
	font-size: 4rem;
	text-transform: none;
	margin: 0 0 0.7rem 0;
}
.sectionTwoColumnsUniversalBox.sectionTwoColumnsBlogBox h2{
	font-size: 3rem;
	line-height: 1.2;
}
.sectionTwoColumnsUniversalBox .blogPageTitleWrap h2,
.sectionTwoColumnsUniversalBox .blogPageTitleWrap h1
{
	font-weight: 200;
	font-size: 3rem;
	text-transform: none;
	margin: 0;
	line-height: 1.3;
}
@media screen and (min-width: 801px) {
	.sectionTwoColumnsUniversalBox .oneOfTwoColumnUniversalContent h2:first-child {
		margin-top: -0.5rem;
	}
}
.sectionTwoColumnsUniversalBox h3{
	font-size: 2rem;
	font-weight: 400;
	text-transform: none;
	margin: 0 0 0.7rem 0;
}
.sectionTwoColumnsUniversalBox p strong{
	font-weight: 600;
}
.oneOfTwoColumnUniversalButton{
	padding-top: 2rem;
}
.oneOfTwoColumnUniversalButton .button{
	display: block;
}
@media screen and (max-width: 800px) {
	.sectionTwoColumnsUniversalBox {
		padding: 12vw 14vw 12vw 14vw;
	}
	.sectionTwoColumnsUniversalBox.blackBg + .sectionTwoColumnsUniversalBox.blackBg,
	.sectionTwoColumnsUniversalBox.whiteBg + .sectionTwoColumnsUniversalBox.whiteBg
	{
		padding: 0vw 14vw 12vw 14vw;
	}
	.sectionTwoColumnsUniversalBox h2{
		font-size: 3rem;
		margin-bottom: 1rem;
	}
	.oneOfTwoUniversal1{
		margin-bottom: 1rem;
	}
	.sectionTwoColumnsUniversalBox .w100ImageBox{
		padding-bottom: 2rem;
	}

}
/**/
.sectionIndustriesWeServe{
	background: #000;
	padding: 7vw 10vw 6vw 10vw;
}
@media screen and (min-width: 801px) {
	.industriesWeServeColumns {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
	}
}
.industriesWeServeColumns, .industriesWeServeColumns p, .industriesWeServeColumns h2, .industriesWeServeColumns h3{
	color: #fff;
}
.industriesWeServeLeft{
	flex-basis: 30%;
}
.industriesWeServeLeft h2{
	font-weight: 700;
	text-transform: uppercase;
	text-align: right;
	font-size: 3.5rem;
	margin: 0 0 2rem;
}
.industriesWeServeRight{
	flex-basis: 66%;
}
.industriesWeServeItem{
	display: block;
	text-decoration: none;
	margin-bottom: 2rem;
}
.industriesWeServeItem h3{
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 1.4;
	text-transform: none;
	margin: 0 0 0.5rem 0;
	border-bottom: solid 1px #fff;
	display: inline-block;
}
.industriesWeServeItem p{
	font-size: 1.2rem;
	font-weight: 300;
	line-height: 1.4;
	margin: 0 0 1rem 0;
}
.industriesWeServeItem p img{
	height: 0.8rem;
	width: auto;
	margin-left: 0.5rem;
	transition: all 0.3s ease;
}
.industriesWeServeItem:hover p img{
	margin-left: 1.5rem;
}
@media screen and (max-width: 800px) {
	.industriesWeServeItem p img{
		display: none;
	}

	.sectionIndustriesWeServe{
		padding: 16vw 10vw 12vw 10vw;
	}
	.industriesWeServeLeft h2{
		text-align: left;
		font-size: 2.5rem;
	}

	.industriesWeServeItem h3{
		font-size: 1.8rem;
		line-height: 1.8;
		margin: 0 0 1rem 0;
	}

	.industriesWeServeItem p{
		font-size: 1.6rem;
		line-height: 1.8;
		margin: 0 0 2rem 0;
	}





}
/**/
.sectionCta{
	padding: 7vw 14vw 6vw 14vw;
}
.sectionCta h2{
	text-align: center;
	font-weight: 200;
	font-size: 4rem;
	text-transform: none;
	margin: 0 0 1.5rem;
}
.sectionCta p{
	text-align: center;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 1.4;
	margin: 0 0 1.5rem;
}
@media screen and (max-width: 800px) {
	.sectionCta{
		padding: 12vw 10vw 12vw 10vw;
	}
	.sectionCta h2{
		font-size: 3rem;
		text-align: left;
	}
	.sectionCta p{
		text-align: left;
	}
	.ctaContent a.button{
		display: block;
	}
}
/**/
.sectionOneWide{
	padding: 6vw 7vw 6vw 7vw;
}
@media screen and (min-width: 801px) {
	.oneWideContent {
		width: 75%;
	}
}
.sectionOneWide.blackBg{
	background-color: #000;
}
.sectionOneWide.blackBg *{
	color: #fff;
}
.sectionOneWide h2{
	text-align: left;
	font-weight: 200;
	font-size: 4rem;
	text-transform: none;
	margin: 0 0 1.5rem;
}
.sectionOneWide.seoPageContentWrap h1{
	display: none;
}
.sectionOneWide p{
	text-align: left;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 1.4;
	margin: 0 0 1.5rem;
}
.sectionOneWide.blogPageContentWrap p,
.sectionOneWide.seoPageContentWrap p
{
	text-align: left;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 1.8;
	margin: 0 0 1.5rem;
}
.sectionOneWide.blogPageContentWrap h2,
.sectionOneWide.seoPageContentWrap h2
{
	font-size: 2.6rem;
}
.sectionOneWide.blogPageContentWrap h3,
.sectionOneWide.seoPageContentWrap h3
{
	font-size: 2.2rem;
	text-transform: none;
}

@media screen and (max-width: 800px) {
	.sectionOneWide{
		padding: 12vw 6vw 12vw 6vw;
	}
	.sectionOneWide h2{
		font-size: 3rem;
	}
	.sectionOneWide p{
		line-height: 1.8;
	}
}
/**/

.footerWrap{
	background-color: #000;
	position: relative;
}
.footerWrap:after{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/testimonials-bg-sm.jpg) repeat center;
	background-size: 3vw;
	opacity: 0.8;
	z-index: 0;
}
.footer{
	position: relative;
	z-index: 10;
	padding: 7vw 4vw;
}
.footer, .footer p, .footer a{
	color: #fff;
}

/**/
#testimonialsBox{
	box-sizing:border-box;
	overflow: hidden;

	padding-bottom: 7vw;
	background: url(../images/testimonials-line.png) no-repeat bottom center;
	background-size: 80% auto;
	margin-bottom: 6vw;
}

.testimBoxTitle{
	color: #fff;
	text-transform: uppercase;
	font-size: 1.6rem;
	text-align: center;
	font-family: 'Poppins', Arial, Helvetica, 'sans-serif';
	padding-bottom: 0;
	position: relative;
	z-index: 2;
	pointer-events: none;
	letter-spacing: 0.2rem;
	font-weight: 600;
	top: 1rem;
}
@media screen and (max-width: 800px) {
	.testimBoxTitle {
		padding-bottom: 2rem;
		font-size: 2.5rem;
		line-height: 1.2;
	}
}

.testimCaoruselItem{
	text-align:center;
	color:#fff;
	position: relative;
}
.testimCaoruselItemIn{
	height:30vw;
	display:table;
	width:80%;
	margin:auto;
	position: relative;
	z-index: 1;
}
#testimonialsBox .slick-list{
	overflow: visible!important;
}
.testimCaoruselItemIn2{
	display:table-cell;
	vertical-align:middle;
}
#testimonialsBox .slick-list{
	overflow: visible!important;
}
.ttimCont{
	font-size:2rem;
	line-height:1.5;
	font-weight:300;
	font-family: 'Poppins', Arial, Helvetica, 'sans-serif';
	text-align: center;
}
.quotesFont{
	font-family:"Poppins",Arial, Helvetica, sans-serif;
}
.ttimSign{
	padding-top:2rem;
	font-size:1.5rem;
	font-weight: 200;
	font-family: 'Poppins', Arial, Helvetica, 'sans-serif';
}
#testimonialsBox .slick-prev {
	left: 20px;
	top:43%;
	z-index:100;
	width:40px;
	height:40px;
}
#testimonialsBox .slick-next {
	right: 20px;
	top:43%;
	z-index:100;
	width:40px;
	height:40px;
}
#testimonialsBox .slick-prev::before{
	content: '';
	font-size: 40px;
	line-height:40px;
	background:url(../images/l.png) no-repeat center center;
	background-size:100% 100%;
	display: block;
	width: 100%;
	height: 100%;
}
#testimonialsBox .slick-next::before {
	content: '';
	font-size: 40px;
	line-height:40px;
	background:url(../images/r.png) no-repeat center center;
	background-size:100% 100%;
	display: block;
	width: 100%;
	height: 100%;
}

#testimonialsBox .slick-dots li button::before {
	font-size: 10px;
	line-height: 20px;
	width: 20px;
	height: 20px;
	color: #fff;
	opacity: .75;
}

#testimonialsBox .slick-dots li.slick-active button::before {
	opacity: 1;
	color: #fff;
}
@media screen and (max-width: 800px) {
	#testimonialsBox{
		height:auto;
		min-height:46rem;
		padding-bottom: 12vw;
		background-size: 100% auto;
	}
	.ttimCont{
		font-size:2.2rem;
		line-height:1.6;
	}
	.ttimSign{
		padding-top:1rem;
		font-size:1.5rem;
		letter-spacing:0px;
		line-height: 1.6;
	}
	#testimonialsBox .slick-prev {
		left: 8px;
		top:45%;
	}
	#testimonialsBox .slick-next {
		right: 8px;
		top:45%;
	}
	#testimonialsBox .slick-dots {
		bottom: -3rem;
	}

	.testimCaoruselItem{
		padding-top: 2rem;
		padding-bottom: 2rem;
	}
	.testimCaoruselItemIn{
		height:auto;
		display:block;
		width:80%;
	}
	.testimCaoruselItemIn2{
		display:block;
		vertical-align:middle;
		padding: 0 20px;
	}

}

/**/

@media screen and (min-width: 801px) {
	.footerColumns{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
}
.footerColumns{
	/*padding-top: 6vw;*/
}
.footerAddress p{
	font-size: 1rem;
	font-weight: 300;
	line-height: 1;
}
.footerCopyright{
	border-top: solid 2px #fff;
	padding-top: 1rem;
}
.footerCopyright p{
	font-size: 1rem;
	font-weight: 300;
	line-height: 1;
	text-align: right;
}
.socialBoxTitle{
	font-size: 1rem;
	font-weight: 300;
	line-height: 1;
	text-align: left;
	text-transform: uppercase;
	margin-top: 2rem;
	margin-bottom: 1rem;
}
.socialBox img{
	height: 2rem;
	width: auto;
	margin: 0 1.2rem 0 0;
}
.footerSocialBoxWrapper{
	margin-left: auto;
}
@media screen and (max-width: 800px) {
	.footerLeft{
		margin: 10vw 0;
	}
	.footerLeft, .footerLeft p{
		text-align: center;
	}
	.footerRight{
		margin: 10vw 0;
	}
	.footerRight, .footerRight p{
		text-align: center;
	}
	.footerCopyright{
		padding-top: 9vw;
		margin: auto;
		width: 80%;
	}
	.socialBoxTitle {
		text-align: center;
		margin-top: 8vw;
	}
}

/**/

.indexPageNumbers .next.page-numbers,
.indexPageNumbers .prev.page-numbers{
	display: none;
}

.navigation.pagination h2{
	display: none;
}

.nav-links, .my-nav-links{
	display: block;
	margin: 24px auto 24px auto;
	text-align: center;
}
.nav-links > a.page-numbers, .nav-links > span.page-numbers{
	display: inline-block;
	background: #e9e8e8;
	color: #000;
	text-decoration: none;
	line-height: 40px;
	min-width: 20px;
	padding: 0 10px;
	margin: 0 5px 20px 5px;
	text-transform: uppercase;
	font-size: 16px;
	font-weight: 400;
}
.nav-links > span.page-numbers, .nav-links > a.page-numbers:hover{
	color: #fff;
	background-color: #007197;
}
.nextPrev{
	padding: 2rem 7vw;
	display: flex;
	justify-content: space-between;
}

/*contact*/
.requestsSelectorBlock{
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
	text-align: center;
	justify-content: space-around;
}
.requestsSelectorItem p{
	padding: 15px 10px;
	line-height: 1.4;
	font-size: 13px;
}
.requestsSelectorItem a.button{
	padding: 10px 20px;
	white-space: normal;
	height: auto;
	line-height: 1.4;
	margin: 0 5px;
}
.contactBlockWrap{
	background: #e9e8e8;
	clear: both;
	padding: 10px 20px 20px 20px;
	margin-bottom: 30px;
}
.academyTitle h2{
	font-size: 16px;
}
@media screen and (max-width: 800px) {
	.contactBlockWrap{
		margin: 0 -30px 40px -30px;
	}
}
@media screen and (min-width: 801px) {
	.locRow{
		width: 100%;
		position: relative;
	}
	.locRow::after{
		content: "";
		display: block;
		clear: both;
	}
	.locFieldHalf{
		width: calc(50% - 4px);
		float: right;
	}
	.locFieldHalf:first-child{
		width: calc(50% - 4px);
		float: left;
	}
	.contactLeft p{
		text-align: left;
	}

	.locFieldQur{
		width: calc(25% - 4px);
		float: left;
	}
	.locFieldQur:first-child{
		width: calc(25% - 8px);
		margin-right: 8px;
	}
	.locFieldPt{
		width: calc(16% - 8px);
		float: left;
		margin-right: 8px;
	}
	.locFieldPt.locFieldLast{
		margin-right: 0;
		float: right;
	}
	.locFieldPtL{
		width: calc(37% - 8px);
		float: left;
		margin-right: 8px;
	}
}
@media screen and (min-width: 1400px) {
	.locForm1 .locFieldLLabel{
		width: 180px;
		float: left;
		white-space: nowrap;
	}
	.locForm1 .locFieldWithLLabel{
		width: calc(100% - 190px);
		float: right;
	}
	.locForm1 .locFieldWithLLabel span.wpcf7-list-item {
		margin: 0 5px 0 0;
		width: calc(33% - 5px);
	}
}
@media screen and (max-width: 1400px) and (min-width: 801px) {
	.locForm1 .locFieldLLabel{
		padding-bottom: 0;
		white-space: nowrap;
	}
	.locForm1 .locFieldWithLLabel{
	}
	.locForm1 .locFieldWithLLabel span.wpcf7-list-item {
		margin: 0 5px 0 0;
		width: calc(33% - 5px);
	}
}
.locField {
	padding-bottom: 8px;
	font-family: 'Poppins', sans-serif;
	font-size: 14px;
	color: #444;
}
.locForm input[type="text"], .locForm input[type="email"]{
	text-align: left;
	width: 100%;
}
.locForm select{
	width: 100%;
	text-align: left;
	color: #999;
	padding-left: 1px;
}
.locForm textarea{
	width: 100%;
	text-align: left;
	display: block;
}
.locForm p{
	/*display: none;*/
	padding: 0;
	margin: 0;
}
.contactLeft{
	padding-bottom: 20px;
}
.locRowLast{
	text-align: center;
	padding-top: 10px;
}
/**/


/* Team */
.teamListBox{
	margin: 0 -1%;
	position: relative;
	padding: 2rem 0;
}
h3.teamSectionHeader{
	margin: 2rem 0 -2rem 0;
	font-size: 2.2rem;
	text-transform: none;
}
@media screen and (min-width: 801px) {
	.teamListBox {
		display: flex;
		flex-wrap: wrap;
	}
}
.teamItem{
	/*float: left;*/
	width: 31%;
	margin: 3rem 1%;
	position: relative;
}
.teamItem img.mainImg{
	width: 100%;
	height: auto;
}
@media screen and (min-width: 801px) {
	.teamItem img.mainImg{
		height: 32vw;
		object-fit: cover;
		border-radius: 4rem;
	}
}

.clear{
	clear: both;
}
.tiTextContent{
	line-height: 1.4;
}
.tiTextText{
	display: flex;
}
.teamItemDescrHead{
	font-weight: 400;
	padding-top: 0.5rem;
	font-size: 2.2rem;
}
.teamItemDescrHead a{
	text-decoration: none;
}
.teamItemDescrJob{
	/*font-style: italic;*/
	font-size: 1.2rem;
	/*letter-spacing: 1px;*/
	padding-right: 40px;
}
.team_job_title{
	font-size: 1.2rem;
	font-weight: 700;
	padding-bottom: 0.8rem;
}
.teamItemMailLink{
	margin: 0.8rem 0 0 1rem;
	/*float: right;
	position: absolute;
	right: 3px;
	bottom: 4px;*/
}
.teamItemMailLink img{
	width: 2.5rem;
	height: auto;
	display: block;
	float: right;
}
.page-template-team_landing .container_new_top h3,
.page-template-team .container_new_top h3{
	text-transform: uppercase;
	font-size: 1.5rem;
	margin: 1rem 0;
}
.teamTopContent1{

}
.teamTopContent1 p{
	text-align: left;
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 1.8;
	margin: 0 0 1.5rem;
}
.teamTopContent1 {
	padding: 0vw 7vw 0vw 7vw;
}
@media (max-width: 1000px) {
	.teamItem{
		width: 48%;
	}
}
@media (max-width: 767px) {
	.teamItem{
		width: 100%;
		margin: 3rem 0;
	}
	.teamListBox{
		margin: 0;
	}
}

/**/
.team_email img{
	width: 2.5rem;
	height: auto;
}
.team_job_title{
	margin-bottom: 1rem;
}
.sectionTwoColumnsUniversalBox.sectionTwoColumnsTeamBox p{
	line-height: 1.6;
}

/* equipment */
.imageWrapperEquipment{
	padding: 2rem;
}
.contentPaddingEquipment{
	padding: 0 2rem 2rem 2rem;
}
.columnRightEquipment h3{
	font-weight: 300;
	font-size: 2rem;
	line-height: 1.4;
	padding: 2rem 0 0.5rem 0;
	margin: 0;
}
.contentPaddingEquipment a{
	display: inline-block;
	line-height: 2rem;
	padding: 0.5rem 4rem 0.5rem 0;
	position: relative;
}
.contentPaddingEquipment p{
	margin: 0.8rem 0;
}
.equipmentImage{
	width: 100%;
}
.triEquipment{
	display: block;
	width: 24px;
	height: 24px;
	background: #999999;
	border-radius: 50%;
	position: absolute;
	top:0;
	right: 0;
}
.triEquipment span{
	display: block;
	position: absolute;
	/* margin: 6px 0 0 9px; */
	top: 6px;
	left: 9px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 9px;
	border-color: transparent transparent transparent #ffffff;
}
img.equipmentLogo{
	height: 3rem;
	width: auto;
	margin-right: 1rem;
	vertical-align: middle;
}
.columnRightEquipment {
	width: 90%;
	margin: auto;
}
@media screen and (min-width: 801px) {
	.contentPaddingEquipment{
	}
	.contentPaddingEquipment a{
		display: block;
	}
	.equipmentWrapper{
		display: flex;
		flex-grow: 1;
		flex-wrap: nowrap;
		align-items: center;
		background: #fff;
		margin: auto;
		margin-bottom: 3vw;
		width: 85%;
		border-radius: 3rem;
	}
	.columnLeftEquipment {
		flex-basis: 20%;
		width: 20%;
	}
	.columnRightEquipment {
		flex-basis: 80%;
		width: 80%;
		margin: 0;
	}
	.contentPaddingEquipment{
		column-count: 3;
		column-gap: 2rem;
		column-rule: 1px solid #e8e8e8;
	}
	.contentPaddingEquipment p{
		break-inside: avoid;
		border-bottom: solid 1px #e8e8e8;
	}
}
@media screen and (max-width: 800px) {
	.equipmentWrapper {
		/*margin: 0 -20px 20px -20px;
		border-bottom: solid 4px #e9e8e8;*/
	}
}

/**/
.frontPageTop{
	background-color: #000;
	position: relative;
	overflow: hidden;
}
.frontPageTop .getCardLink{
	color: #fff;
}
.frontPageHeader *{
	color: #ebf7fc;
}
.frontPageTop #navMenu .getCardLink{
	color: #000;
}
.frontPageHeader p {
	line-height: 1.4;
	font-size: 1.8rem;
	color: #ebf7fc;
}
.frontPageHeader h1 {
	line-height: 0.95;
	font-size: 9rem;
	font-weight: 100;
	letter-spacing: -0.3rem;
	color: #ebf7fc;
}
.frontPageHeader h1 strong {
	font-weight: 500;
}
.frontPageHeader{
	margin: auto;
	width: 80%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 5vw 0 5vw 0;
	position: relative;
}
.frontPageHeaderLeft h1{
	opacity: 0;
}
.frontPageHeaderLeft p{
	opacity: 0;
}
.frontPageHeaderLeft{
	flex-basis: 56%;
}
.frontPageHeaderRight{
	flex-basis: 44%;
	position: relative;
}
.frontPageHeaderImage{
	width: 100%;
	height: auto;
}
.frontPageHeaderSpin{
	position: absolute;
	left: 11.2vw;
	top: 12.2vw;
	width: 25.8%;
}
#miCanvas{
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}
/**/
:root {
	--color-bg1: rgb(108, 0, 162);
	--color-bg2: rgb(0, 17, 82);
	--color1: 18, 113, 255;
	--color2: 221, 74, 255;
	--color3: 100, 220, 255;
	--color4: 200, 50, 50;
	--color5: 180, 180, 50;
	--color-interactive: 140, 100, 255;
	--circle-size: 80%;
	--blending: hard-light;
}

@keyframes moveInCircle {
	0% {
		transform: rotate(0deg);
	}
	50% {
		transform: rotate(180deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

@keyframes moveVertical {
	0% {
		transform: translateY(-50%);
	}
	50% {
		transform: translateY(50%);
	}
	100% {
		transform: translateY(-50%);
	}
}

@keyframes moveHorizontal {
	0% {
		transform: translateX(-50%) translateY(-10%);
	}
	50% {
		transform: translateX(50%) translateY(10%);
	}
	100% {
		transform: translateX(-50%) translateY(-10%);
	}
}


.gradient-bg {
	width: 100%;
	height: 100%;
	position: absolute;
	overflow: hidden;
	background: linear-gradient(40deg, var(--color-bg1), var(--color-bg2));
	top: 0;
	left: 0;
	opacity: 0.3;
}
.gradient-bg svg {
	position: fixed;
	top:0;
	left:0;
	width: 0;
	height: 0;
}
.gradient-bg .gradients-container {
	filter: url(#goo) blur(40px) ;
	width: 100%;
	height: 100%;
}
.gradient-bg .g1 {
	position: absolute;
	background: radial-gradient(circle at center, rgba(var(--color1), 0.8) 0, rgba(var(--color1), 0) 50%) no-repeat;
	mix-blend-mode: var(--blending);

	width: var(--circle-size);
	height: var(--circle-size);
	top: calc(50% - var(--circle-size) / 2);
	left: calc(50% - var(--circle-size) / 2);

	transform-origin: center center;
	animation: moveVertical 30s ease infinite;

	opacity: 1;
}
.gradient-bg .g2 {
	position: absolute;
	background: radial-gradient(circle at center, rgba(var(--color2), 0.8) 0, rgba(var(--color2), 0) 50%) no-repeat;
	mix-blend-mode: var(--blending);

	width: var(--circle-size);
	height: var(--circle-size);
	top: calc(50% - var(--circle-size) / 2);
	left: calc(50% - var(--circle-size) / 2);

	transform-origin: calc(50% - 400px);
	animation: moveInCircle 20s reverse infinite;

	opacity: 1;
}
.gradient-bg .g3 {
	position: absolute;
	background: radial-gradient(circle at center, rgba(var(--color3), 0.8) 0, rgba(var(--color3), 0) 50%) no-repeat;
	mix-blend-mode: var(--blending);

	width: var(--circle-size);
	height: var(--circle-size);
	top: calc(50% - var(--circle-size) / 2 + 200px);
	left: calc(50% - var(--circle-size) / 2 - 500px);

	transform-origin: calc(50% + 400px);
	animation: moveInCircle 40s linear infinite;

	opacity: 1;
}
.gradient-bg .g4 {
	position: absolute;
	background: radial-gradient(circle at center, rgba(var(--color4), 0.8) 0, rgba(var(--color4), 0) 50%) no-repeat;
	mix-blend-mode: var(--blending);

	width: var(--circle-size);
	height: var(--circle-size);
	top: calc(50% - var(--circle-size) / 2);
	left: calc(50% - var(--circle-size) / 2);

	transform-origin: calc(50% - 200px);
	animation: moveHorizontal 40s ease infinite;

	opacity: 0.7;
}
.gradient-bg .g5 {
	position: absolute;
	background: radial-gradient(circle at center, rgba(var(--color5), 0.8) 0, rgba(var(--color5), 0) 50%) no-repeat;
	mix-blend-mode: var(--blending);

	width: calc(var(--circle-size) * 2);
	height: calc(var(--circle-size) * 2);
	top: calc(50% - var(--circle-size));
	left: calc(50% - var(--circle-size));

	transform-origin: calc(50% - 800px) calc(50% + 200px);
	animation: moveInCircle 20s ease infinite;

	opacity: 1;
}
.gradient-bg .interactive {
	position: absolute;
	background: radial-gradient(circle at center, rgba(var(--color-interactive), 0.8) 0, rgba(var(--color-interactive), 0) 50%) no-repeat;
	mix-blend-mode: var(--blending);

	width: 100%;
	height: 100%;
	top: -50%;
	left: -50%;

	opacity: 0.7;
}
/**/
@media screen and (max-width: 800px) {
	.frontPageHeader {
		width: 90%;
	}
	.frontPageHeader h1 {
		font-size: 4rem;
	}
	.frontPageHeader p {
		font-size: 1rem;
	}

	.frontPageHeaderSpin {
		position: absolute;
		left: 12.5vw;
		top: 13.7vw;
		width: 25%;
	}
	body > .frontPageTop > .header .getCardLink{
		display: none;
	}

}
/**/

.sectionFourBlocks{
	padding: 6vw 0 6vw 0;
}
.fourBlocksColumnsWrap {
	padding: 0 12vw 0 12vw;
	overflow: hidden;
}
.fourBlocksColumns{
}
@media screen and (min-width: 801px) {
	.fourBlocksColumns{
		width: 80%;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
}
.fourBlocksColumnsSide{
	flex-basis: 30%;
	font-size: 1.8rem;
	font-weight: 300;
	line-height: 1.4;
}
.fourBlocksColumnsMain{
	flex-basis: 62%;
	flex-wrap: wrap;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.fourBlocksBlock{
	flex-basis: 48%;
	height: 16vw;
	background-color: #fff;
	border-radius: 3rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin-bottom: 1vw;
	box-sizing: border-box;
	padding: 2vw;
	text-align: center;
}
.fourBlocksBlockTitle{
	font-weight: 700;
	color: #007197;
	font-size: 2.8rem;
	line-height: 1.1;
}
.fourBlocksBlockText{
	font-weight: 300;
	color: #000;
	font-size: 1.2rem;
	line-height: 1.4;
}
/**/
.sectionFourBlocksTitleWrap {
	display: flex;
	position: relative;
	width: 100%;
	height: 6rem;
	overflow: hidden;
	z-index: 1;
	line-height: 1;
	margin-bottom: 3rem;
}
.sectionFourBlocksTitle {
	display: flex;
	position: absolute;
	top: 0;
	left: 0;
	align-items: center;
	justify-content: flex-start;
	width: 100%;
	height: 100%;
	white-space: nowrap;
	transform: scale(2);
	transition: all 1s ease;
}
.sectionFourBlocksTitleAnimation {
	display: flex;
	animation: scrollText 33s infinite linear;
}
.sectionFourBlocksTitleInner {
	margin: 0;
	font-size: 3rem;
	font-weight: 700;
	text-transform: uppercase;
	color: #000; /*#555556;*/
	line-height: 1;
	padding-right: 0.5em;
}
@keyframes scrollText {
	from   { transform: translateX(0%); }
	to { transform: translateX(-50%); }
}

@media screen and (max-width: 800px) {
	.sectionFourBlocksTitleInner {
		font-size: 2rem;
	}
	.sectionFourBlocksTitleWrap {
		margin-bottom: 2rem;
	}
	.fourBlocksColumnsMain{
		padding-top: 3rem;
	}
	.fourBlocksBlock {
		height: 34vw;
		margin-bottom: 3vw;
	}
}
/**/


.newBlackBoxWrap{
	background: #000;
	padding: 8vw 0;
	position: relative;
	overflow: hidden;
}
/*.m1{
	position: absolute;
	width: 20vw;
	height: 80%;
	top: 10%;
	left: 73vw;
	background: url(../images/m1.png) no-repeat center;
	background-size: contain;
	opacity: 0.2;
}
.m2{
	position: absolute;
	width: 12vw;
	height: 12vw;
	top: 37%;
	left: 77vw;
	background: url(../images/m2.png) no-repeat center;
	background-size: contain;
	opacity: 0.2;
}*/
.m1{
	position: absolute;
	width: 3vw;
	height: 3vw;
	top: 8.55vw;
	left: 10vw;
	background: url(../images/m1.png) no-repeat center;
	background-size: contain;
	opacity: 1;
}
.m2{
	position: absolute;
	width: 1.8vw;
	height: 1.8vw;
	top: calc(8.55vw + 0.82vw);
	left: calc(10vw + 0.61vw);
	background: url(../images/m2.png) no-repeat center;
	background-size: contain;
	opacity: 1;

	animation: load3 1.0s infinite linear;
}
@keyframes load3 {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}
.newBlackBox{
	width: 85%;
	/*margin-left: 10%;*/
	margin: auto;
}
@media screen and (min-width: 800px) {
	.newBlackBox{
		display: flex;
		align-items: stretch;
		justify-content: center;
	}
}
.newBlackBoxLeft{
	flex-basis: 50%;
	text-align: left;
	color: #fff;
	text-transform: uppercase;
}
.newBlackBoxWrap2 .newBlackBoxLeft{
	flex-basis: 30%;
}
.bblText1{
	font-size: 3.5vw;
	line-height: 1.1;
	font-weight: 700;
}
.bblText2{
	font-size: 3vw;
	line-height: 1.1;
	font-weight: 200;
}
.newBlackBoxRight{
	/*display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;*/
	font-size: 2.1vw;
	line-height: 1.2;
	padding-left: 2vw;
}
.newBlackBoxRight a{
	display: block;
	text-decoration: underline;
	color: #fff;
	text-transform: uppercase;

	padding: 0.7vw 0.5vw 0.7vw 0.5vw;
}
.newBlackBoxWrap2 .newBlackBoxRight a{
	text-transform: none;
}
.newBlackBoxRight a:hover{
	text-decoration: none;
}
@media screen and (max-width: 800px) {
	.bblText1{
		font-size: 3.2rem;
		font-weight: 400;
		text-align: center;
	}
	.bblText2{
		font-size: 2.8rem;
		text-align: center;
	}
	.newBlackBox{
		text-align: center;
		margin: auto;
	}
	.newBlackBoxRight{
		padding-top: 30px;
		padding-left: 0;
		font-size: 5vw;
		display: block;
	}
	.newBlackBoxRight a{
		margin-bottom: 2rem;
	}
	.newBlackBoxLeft br{
		display: none;
	}
	.m1, .m2{
		display: none;
	}

}

/**/
.sectionTwoColumnsBoxLG{
	padding: 6vw 7vw 6vw 10vw;
	background: #000;
	/*margin-top: 6vw;*/
}
.sectionTwoColumnsBoxLG *{
	color: #fff;
}
.sectionTwoColumnsBoxLG h2{
	text-align: left;
	font-weight: 200;
	font-size: 4rem;
	text-transform: none;
	margin: 0;
}
@media screen and (min-width: 801px) {
	.twoColumnsBoxLG {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.oneOfTwo2LG{
		padding-top: 3rem;
	}

}
.oneOfTwo1LG{
	flex-basis: 30%;
}
.w100ImageBoxLG{
	position: relative;
	margin-top: -11vw;
	padding-bottom: 2rem;
}
.w100ImageBoxLG img{
	display: block;
	width: 100%;
	height: auto;
}
.sectionTwoColumnsBoxLG .w100ImageBoxLG img{
	display: block;
}
.oneOfTwo2LG{
	flex-basis: 65%;
}
.oneOfTwoColumnTitleLG p{
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 1.4;
}
.oneOfTwoColumnContentLG p{
	font-size: 1.4rem;
	font-weight: 300;
	line-height: 1.6;

}
.oneOfTwoColumnContentLG h3{
	font-size: 1.2rem;
	font-weight: 600;
	text-transform: none;
}
@media screen and (max-width: 800px) {
	.sectionTwoColumnsBoxLG {
		padding: 12vw 14vw 12vw 14vw;
		margin-top: 0;
	}
	.sectionTwoColumnsBoxLG h2{
		font-size: 3rem;
		margin-bottom: 1rem;
		text-align: left;
		line-height: 1.3;
	}
	.oneOfTwo1LG{
		margin-bottom: 1rem;
	}
	.oneOfTwoColumnContentLG p {
		margin-bottom: 2rem;
		font-size: 1.4rem;
	}
	.oneOfTwoColumnContentLG h3 {
		font-size: 1.4rem;
	}

	.w100ImageBoxLG{
		margin-top: 0;
	}
	.w100ImageBoxLG img{
		width: 70%;
	}

}
/**/
body.home .sectionCta{
	padding-bottom: 0;
	margin-bottom: -4vw;
}
@media screen and (max-width: 800px) {
	body.home .sectionCta{
		padding-left: 14vw;
		padding-right: 14vw;
	}
}
body.home .sectionTwoColumnsBox {
	padding-bottom: 8vw;
}
/**/
.imageBgSection{
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding: 7vw 0vw;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative;
	overflow: hidden;
}
.imageBgTitle{
	flex-basis: 40%;
	z-index: 10;
	padding: 2rem 0;
}
.imageBgTitle *{
	color: #fff;
	text-transform: none;
}
.imageBgTitle h2{
	color: #fff;
	text-align: left;
	font-size: 3rem;
	font-weight: 200;
	line-height: 1.4;
}
.imageBgTitle h3{
	color: #fff;
	text-align: left;
	font-size: 2rem;
	font-weight: 300;
	text-transform: none;
}
.imageBgTitle p{
	color: #fff;
	text-align: left;
	font-weight: 400;
	font-size: 1rem;
	display: inline;
}


.imageBgSection.withOverlay::before{
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.4);
}
.imageBgText{
	position: relative;
	z-index: 10;
	color: #fff;
	text-align: left;
}
@media screen and (min-width: 801px) {
	.imageBgText{
		width: 40%;
	}
	.imageBgSection{
		padding: 7vw 14vw;
	}
	.imageBgTitle + .imageBgText{
		width: auto;
		padding-left: 4vw;
	}
	.imageBgSection{
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: flex-start;
	}

}
.imageBgText h2{
	color: #fff;
	text-align: left;
	font-size: 3rem;
	font-weight: 400;
}
.imageBgText h3{
	color: #fff;
	text-align: left;
	font-size: 2rem;
	font-weight: 300;
	text-transform: none;
}
.imageBgText p{
	color: #fff;
	text-align: left;
	font-weight: 400;
	font-size: 1rem;
	display: inline;
}
.imageBgTextBlock{
	text-decoration: none;
	display: block;
	padding: 2rem 0;
	border-bottom: solid 1px #fff;
}
.imageBgTextBlock .rarr{
	display: inline-block;
	width: auto;
	height: 0.9rem;
	margin-bottom: 0.25rem;
	vertical-align: middle;
	transition: all 0.6s;
}
.imageBgTextBlock:last-child{
	border-bottom:none;
}
.imageBgTextBlock img.rarr {
	display: inline-block;
	width: auto;
	height: 0.9rem;
	margin-bottom: 0.25rem;
	vertical-align: middle;
	transition: all 0.6s;
	position: relative;
	left: 0;
	margin-left: 0.5rem;
}
.imageBgTextBlock:hover img.rarr {
	left: 1rem;
}
@media screen and (max-width: 800px) {
	.imageBgTitle{
		width: 80%;
		margin: auto;
	}
	.imageBgTitle h2 ,
	.imageBgTitle h3
	{
		font-size: 3.5rem;
	}
	.imageBgTitle p{
		font-size: 1.5rem;
	}

	.imageBgText{
		width: 80%;
		margin: auto;
	}
	.imageBgText h3 {
		font-size: 2.5rem;
	}
	.imageBgText p{
		font-size: 1.5rem;
	}
	.imageBgTextBlock img.rarr {
		height: 1.5rem;
	}

}

/**/
.blueLines{
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
	width: 50%;
	overflow: hidden;
}
.blueLines::before{
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: -12%;
	height: 1.6rem;
	width: 150%;
	transform: rotate(-52deg);
	background: #1872a0;
}
.blueLines::after{
	content: '';
	display: block;
	position: absolute;
	top: 65%;
	left: -10%;
	height: 1rem;
	width: 150%;
	transform: rotate(-52deg);
	background: #1872a0;
}
@media screen and (min-width: 801px) {
	#menu-item-2830{
		margin-bottom: 1rem;
	}
}
@media screen and (max-width: 800px) {
	.blueLines::before{
		content: '';
		display: block;
		position: absolute;
		top: 60%;
		left: -29%;
		height: 1.6rem;
		width: 170%;
		transform: rotate(-52deg);
		background: #1872a0;
	}
	.blueLines::after{
		content: '';
		display: block;
		position: absolute;
		top: 65%;
		left: -10%;
		height: 1rem;
		width: 150%;
		transform: rotate(-52deg);
		background: #1872a0;
	}

}

/**/
.sectionFaq{
	padding: 7vw 8vw 6vw 8vw;
}
.sectionCta + .sectionFaq{
	padding-top: 0;
	margin-top: -3vw;
}
.faqContent > h2{
	margin-bottom: 1.8rem;
	font-size: 2.5rem;
}
.sectionFaq h2{
	text-transform: none;
}
.faqBox{
	padding-bottom: 4rem;
}
.faqBox h2{
	text-align: center;
	color: #007197;
	padding-bottom: 3rem;
	margin: 0;
	font-size: 3rem;
}
.faqItem{
	background: #fff;
	line-height: 1.6;
	font-size: 1.8rem;
	color: #000;
	border: solid 1px #007197;
	padding: 1rem 1rem 1.5rem 2rem;
	margin-bottom: 1.5rem;
	border-radius: 2rem;
}
.faqQ{
	cursor: pointer;
	font-weight: 400;
	font-size: 1.8rem;
	padding-right: 4rem;
	position: relative;
}
.faqQ::after{
	content: "-";
	display: block;
	float: right;
	position: absolute;
	top: 0;
	right: 0.5rem;
	font-weight: 200;
	font-size: 3rem;
	height: 3.5rem;
	line-height: 3.5rem;
}
.faqQ h4{
	font-size: 1.4rem;
	font-weight: 400;
	margin: 0;
	line-height: 1.8;
}
.faqQ p{
	font-size: 1.2rem;
	margin: 0;
	line-height: 1.4;
}
.faqItem.collapse .faqQ::after{
	content: "+";
}
.faqA{
	display: block;
	overflow: hidden;
	transition: all .3s ease-out;
	font-size: 1.4rem;
}
.faqA p{
	margin: 0;
	font-size: 1.2rem;
}
.faqItem.collapse .faqA{
	height: 0!important;
}
.faqApad{
	padding: 1rem 0;
}
.faqApad *:last-child{
	margin-bottom: 0;
}
@media screen and (max-width: 800px) {
	.faqQ{
		text-align: left;
	}
	.faqA{
		text-align: left;
	}
}
/**/

.landingForm h2{
	text-transform: none;
}
.landingForm input[type=text], .landingForm input[type=email]{
	width: 100%;
	border-width: 0 0 1px 0;
	font-size: 1.3rem;
	line-height: 2.5rem;
	height: 2.5rem;
}
.landingForm .lfq2{
	padding: 1rem 0;
}
.landingForm .lfq2submit{
	padding-top: 2rem;
	position: relative;
}
.landingForm .wpcf7-submit{
	display: block;
	width: 100%;
}
.landingForm .wpcf7-spinner {
	float: right!important;
	margin-top: calc(-1rem - 24px)!important;
}
/**/
img.aligncenter {
	clear: both;
	display: block;
	margin: auto;
}
