/*
Theme Name: Levin
Author: Dmitriy Karfagenskiy
Author URI: http://karfagenskiy.com/
*/

@charset "UTF-8";
/* CSS Document */

/* =Reset default browser CSS. Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */

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, font, 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 {
	background: transparent;
	border: 0;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}
body {
	line-height: 1;
}
h1, h2, h3, h4, h5, h6 {
	clear: both;
	font-weight: normal;
}
ol, ul {
	list-style: none;
}
blockquote {
	quotes: none;
}
blockquote:before, blockquote:after {
	content: '';
	content: none;
}
del {
	text-decoration: line-through;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
a img {
	border: none;
}
/*   end of reset code */

*{
	font-family: Rubik, Helvetica, sans-serif;


}
body{

	background: #fff;
	color: #17323d;
	font-size: 15px;

	line-height: 1;
	border-top: solid #26a7df 5px;
}
.home{
	/*background: #26a7df;*/
}
header{
	height: 200px;
	display: block;
	position: relative;
	overflow: visible;
}
content{
	display: block;
	background: #26a7df;
	min-height: calc( 100vh - 205px );
}
.home content{
	background: transparent;
	padding-bottom: 50px;
	min-height: 645px;
}
header, wrapper{
	display: block;
	margin-left: 90px;
	margin-right: 90px;
}
footer{
	padding-left: 90px;
	padding-right: 90px;
}
header nav{
	padding-top: 71px;
}
header nav a{
	color: #a8abad;
	font-weight: 500;
	font-size: 15px;
	display: inline-block;
	padding-bottom: 2px;

	border-bottom: solid transparent 2px;
	margin-right: 30px;
	text-decoration: none;
	position: relative;
	z-index: 11;
}
body:not(.home) header nav a.active{
	border-bottom-color: rgba(168,171,173,0.2);
}
.home header nav a{
	color: #17323d;
	border-bottom-color: rgba(255,255,255,0.2);
}
header nav a:hover{
	color: #17323d;
}
header nav a::after{
	content: '';
	display: block;
	position: absolute;
	bottom: -2px;
	left: 0px;
	height: 2px;
	width: 0%;
	background: #26a7df;
	overflow: visible;

	-webkit-transition: width 0.3s ease;
	-moz-transition: width 0.3s ease;
	-ms-transition: width 0.3s ease;
	-o-transition: width 0.3s ease;
	transition: width 0.3s ease;
}
header nav a:hover::after{
	width: 100%;
}
.home header nav a::after{
	background: rgba(255,255,255, 0.6);
}
.home header nav a.active::after{
	width: 100%;
}
header a#logo{
	display: block;
	text-decoration: none;
	width: 165px;
	height: auto;
	position: absolute;
	right: -38px;
	top: 48px;
	z-index: 12;
}
.home header a#logo{
	width: 210px;
	top: 20px;
	right: -45px;
}
header a#logo img{
	width: 100%;
	height: auto;
}

footer{
	background: #fff;
	background: #fafafa;
	padding-top:20px;
	padding-bottom: 17px;
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row;
	justify-content: space-between;
	/*align-items: center;*/
	min-height: 18px;
	position: relative;
	z-index: 11;
}
footer a#flogo{
	display: block;
	text-decoration: none;
	width: 160px;
	height: auto;
}
footer a#flogo img{
	width: 100%;
	height: auto;
}
footer nav{
	width: auto;
	display: inline-block;
	font-size: 13px;
	line-height: 1;
	color: #a8abad;
	font-weight: 400;
	text-align: right;
}
footer nav a{
	text-decoration: none;
	color: inherit;
	display: inline-block;
	margin-left: 35px;
}
footer nav a:hover{
	color: #17323d;
}

h1{
	font-size: 50px;
	font-weight: 500;
	margin: 7px 0px 30px;
	color: #17323d;
	text-indent: -2px;
}
h2{

}
outer{
	display: block;
	position: relative;
}
.home{
	/*background: rgba(38, 167, 223, 0.9);*/
}

.home bg{
	display: block;
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: -1;
	overflow: hidden;
	background: rgba(38, 167, 223, 0.9);
}
.home fg{
	display: block;
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 10;
	overflow: hidden;
	opacity: 0.9;
}
bg blue{
	/*position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	background: rgba(38, 167, 223, 0.9);*/
	/*-webkit-clip-path: polygon(0px 0px, 60vw 0px, 100vw 40vw, 100vw 100%, 0px 100%, 0px 0px);*/

}
bg white{
	display: block;
	background: #fff;
	position: absolute;
	width: 60vw;
	height: 60vw;
	right: -35vw;
	top: -30vw;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	z-index: 1;
}
bg grey{
	display: block;
	background: rgba(23,50,61,0.05);
	position: absolute;
	width: 140vw;
	height: 140vw;
	right: -75vw;
	top: 3vw;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	z-index: 2;
}
fg a.mask{
	display: block;
	position: absolute;
	width: 70vw;
	height: 70vw;
	right: -35vw;
	/*bottom: -35vw;*/

	width: 1074px;
	height: 1074px;
	right: -537px;
	/*top: 360px;*/
	top: 500px;
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	overflow: hidden;

	text-decoration: none;

	z-index: 10;
	opacity: 0.9;
}
fg a.text{
	display: inline-block;
	position: absolute;
	text-align: right;
	width: auto;
	right: 85px;
	bottom: 50px;
	color: #fff;
	font-size: 22px;
	font-weight: 500;
	text-decoration: none;
	z-index: 13;
}
fg a.text::before{
	display: inline-block;
	content: '';
	width: 17px;
	height: 17px;
	margin-right: 8px;
	background-image: url(images/a-down-white.png);
	background-size: cover;
	background-repeat: no-repeat;
	vertical-align: baseline;
}
fg a.mask project{
	display: block;

	position: absolute;
	width: 72%;
	height: 72%;
	left: 14%;
	top: -36%;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
@keyframes home1 {
  0%   {transform: scale(1.0125); opacity: 1;}
	30%   {opacity: 1;}
  33%  {transform: scale(1.15); opacity: 0;}
  96% {transform: scale(1); opacity: 0}
  100% {transform: scale(1.0125); opacity: 1;}
}
@keyframes home2 {
	0%	{transform: scale(1); opacity: 0;}
	30%  {transform: scale(1); opacity: 0;}
	33%  {opacity: 1;}
	63%  {opacity: 1;}
	66%  {transform: scale(1.15); opacity: 0;}
	100%  {transform: scale(1.15); opacity: 0;}
}
@keyframes home3 {
	0%	{transform: scale(1); opacity: 0;}
	63%  {transform: scale(1); opacity: 0;}
	66%  {opacity: 1;}
	96%  {opacity: 1;}
	100%  {transform: scale(1.15); opacity: 0;}
}
fg a.mask project ins{
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;

  animation-duration: 24s;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
}
fg ins#bg1{
	opacity: 1;
	animation-name: home1;
	background-image: url(images/project1.jpg);
}
fg ins#bg2{
	opacity: 0;
	animation-name: home2;
	background-image: url(images/project2.jpg);
}
fg ins#bg3{
	opacity: 0;
	animation-name: home3;
	background-image: url(images/project3.jpg);
}
content{
	/*display: flex;*/
}
wrapper{
	width: auto;
}
.home content wrapper{
	padding-top: 20px;
}
.home content p{
	font-size: 21px;
	line-height: 1.15;
	color: #fff;
	font-weight: 300;
	/*max-width: 650px;*/
	max-width: 750px;
	margin-top: 1em;
}
.home content p:first-child{
	margin-top: 0px;
	font-size: 30px;
}
.home content b, .home content strong{
	font-weight: 500;
}
.home content ul{
	color: #17323d;
	/*font-size: 20px;*/
	line-height: 1;
	font-weight: 400;
	max-width: 600px;
	column-count: 2;
	column-gap: 20px;
	font-size: 17px;
}
.home content li{
	margin-bottom: 10px;
	display: block;
	padding-left: 15px;
}
.home content li::before{
	content: '•';
	color: #fff;
	margin-right:8px;
	position: relative;
	left: -15px;
	margin-right: -6px;
}
.home content ul.second{
	column-count: 1;
	max-width: 600px;
	margin-top: 10px;
	font-size: 17px;
}
.home content ul ul{
	font-size: 12px;
	column-count: 2;
	margin-top: 8px;
}
.home content ul ul li{
	margin-bottom: 6px;
	line-height: 1.1;
}
.home content ul ul li::before{
	content: '—';
	margin-right: -9px;
}
.home content ul ul li:last-child{
	max-width: 260px;
}
content hr{
	height: 2px;
	background: #fff;
	margin-top: 40px;
	margin-bottom: 40px;
	border: 0px none;
	width: calc( 100% + 80px );
	margin-right: -80px;
}
content h2{
	color: #17323d;
	font-size: 25px;
	line-height: 1;
	font-weight: 500;
	margin: 0px 0px 25px;
}

.projects content{
	background: #fff;
	display: block;
	overflow: hidden;
}
projects{
	margin: -1px;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: flex-start;
}
projects a{
	display: inline-block;
	display: flex;
	width: 25%;
	height: auto;
	border: solid #fff 1px;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	text-decoration: none;
	overflow: hidden;
	position: relative;
}
projects a img{
	display: block;
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
projects a:hover img{
	-moz-transform: scale(1.05);
	-webkit-transform: scale(1.05);
	-o-transform: scale(1.05);
	-ms-transform: scale(1.05);
	transform: scale(1.05);
}
projects a .title{
	display: inline-block;
	max-width: 180px;
	height: auto;
	background: rgba(255,255,255,0.95);
	padding: 15px;
	color: #17323d;
	font-size: 13px;
	line-height: 1.15;
	font-weight: 400;
	position: absolute;

	bottom: 20px;
	left: -215px;
	-webkit-transition: left 0.4s ease;
	-moz-transition: left 0.4s ease;
	-ms-transition: left 0.4s ease;
	-o-transition: left 0.4s ease;
	transition: left 0.4s ease;
}
projects a:hover .title{
	left: 0px;
}
projects a::after{
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border: solid rgba(255, 255, 255, 0.9) 0px;

	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;

	-webkit-transition: border 0.1s ease;
	-moz-transition: border 0.1s ease;
	-ms-transition: border 0.1s ease;
	-o-transition: border 0.1s ease;
	transition: border 0.1s ease;
}
projects a:hover::after{
	border-width: 3px;
}

content project{
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row;
	align-content: flex-start;
	align-items: stretch;
}
project textpane{
	display: block;
	width: 50%;
	/*height: 100%;*/
	background: #51b9e5;
	min-height: calc( 100vh - 205px );
}
project textpane nav{
	position: absolute;
	bottom: 55px;
	left: 0px;
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
}
/*project textpane nav.float{
	position: fixed;
	width: calc( 50% - 180px );
	left: 90px;
	bottom: 55px;
}*/
project nav a{
	text-decoration: none;
	display: flex;
	align-items: center;
	width: 50%;
}
project nav a:last-child{
	justify-content: flex-end;
	text-align: right;
}
project nav icon{
	display: block;
	width: 90px;
	height: auto;
	box-sizing: border-box;
	border: solid #fff 2px;
	background-size: 90px;
	background-repeat: no-repeat;
	background-position: center;
	overflow: hidden;
	flex-grow: 0;
	flex-shrink: 0;
}
project nav img{
	width: 100%;
	height: auto;
	display: block;


}
project nav a:hover icon{
	/*border-color: #26a7df;*/
	border-width: 4px;
}
project nav a span{
	font-size: 14px;
	line-height: 1.1;
	display: inline-block;
	vertical-align: middle;
	color: #fff;
	font-weight: 400;
	padding: 0px 15px;
	opacity: 0.7;
}
project nav a:hover span{
	opacity: 1;
}
/*project nav a:hover img{
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
	-o-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}*/

project imagepane{
	display: flex;
	width: 50%;
	align-items: center;
	align-content: center;
}
project imagepane img{
	width: 100%;
	height: auto;
}
project textpane wrapper{
	padding-top: 55px;
	padding-bottom: 145px;
	position: relative;
	height: 100%;
	box-sizing: border-box;
}
project h2{
	font-size: 32px;
	color: #fff;
	font-weight: 500;
	display: inline-block;
	padding-bottom: 15px;
	border-bottom: solid #fff 2px;
	margin-bottom: 18px;
}
project p{
	font-size: 18px;
	line-height: 1.2;
	color: #17323d;
	font-weight: 400;
	margin-bottom: 30px;
}
project h4{
	color: #17323d;
	font-size: 18px;
	font-weight: 500;
}

header h1 a{
	text-decoration: none;
	color: inherit;
}
header h1 a:hover{
	color: #26a7df;
}


content company{
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row;
	align-content: flex-start;
	align-items: stretch;
}
company lpane{
	display: block;
	width: 50%;
	/*height: 100%;*/
	/*background: #51b9e5;*/
	min-height: calc( 100vh - 205px );

	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
company rpane{
	display: block;
	width: 50%;
	background: rgba(255,255,255,0.85);
}
company wrapper{
	padding-top:90px;
	padding-bottom: 65px;
}
company lpane p{
	color: #fff;
	font-size: 19px;
	line-height: 1.25;
	font-weight: 400;
	margin-bottom: 25px;
}
company p b, company p strong{
	font-weight: 700;
	color: #17323d;
}
company rpane p{
	color: rgba(0,0,0,0.65);
	font-size: 15px;
	line-height: 1.25;
	font-weight: 400;
	margin-bottom: 20px;
}
company rpane h5{
	font-weight: 700;
	color: #17323d;
	line-height: 1;
	font-size: 16px;
	margin-bottom: 20px;
	position: relative;
	overflow: visible;

	margin-top: 55px;
}
company rpane h5:first-child{
	margin-top: 0px;
}
company rpane h5::before{
	display: inline-block;
	content: '';
	width: 15px;
	height: 15px;

	background-image: url(images/a-down-blue.png);
	background-size: cover;
	background-repeat: no-repeat;

	position: absolute;
	left: -25px;
	bottom: 3px;
}
company certs{
	background: rgba(255, 255, 255, 0.25);
	width: 100%;
}
company certs wrapper{
	padding-top:55px;
	padding-bottom: 55px;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
}
company certs img{
	display: block;
	height: 48px;
	width: auto;
}

.contact content{
	position: relative;
}
content #map{
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0px;
	top: 0px;
}
.mapboxgl-ctrl.mapboxgl-ctrl-attrib{
	opacity: 0.5;
}
.mapboxgl-ctrl-attrib .mapbox-improve-map{
	font-weight: 400 !important;
}
content contact{
	position: absolute;
	left: 0;
	top: 0;
	width: 490px;
	height: 100%;
	background: rgba(255, 255, 255, 0.8);
}
contact wrapper{
	padding-top: 90px;
	padding-bottom: 90px;
}
contact p{
	font-size: 20px;
	line-height: 1.22;
	font-weight: 400;
	color: #17323d;
	margin-bottom: 25px;
	padding-left: 28px;
	position: relative;
}
contact p a{
	color: inherit;
	text-decoration: none;
}
contact p a:hover{
	text-decoration: underline;
}
contact p::before{
	display: inline-block;
	content: '';
	width: 17px;
	height: 17px;

	background-image: url(images/a-down-blue.png);
	background-size: cover;
	background-repeat: no-repeat;

	position: absolute;
	left: 0px;
	top: 2px;
}

@media (min-width: 1600px){
	projects a{
		width: 20%;
	}
	.home content{
		min-height: 800px;
	}
	fg a.mask{
		width: 1300px;
		height: 1300px;
		right: -655px;
		top: 480px;
	}
	.home content p{
		font-size: 26px;
		max-width: 950px;
	}
	.home content p:first-child{
		font-size: 39px;
	}
	content hr{
		margin-top: 60px;
		margin-bottom: 60px;
	}
	.home content li{
		/*margin-bottom: 15px;*/
	}
	.home header a#logo{
		width: 240px;
		right: -25px;
		top: 35px;
	}
	company lpane p{
		font-size: 25px;
		font-weight: 300;
	}
	company rpane p{
		font-size: 20px;
	}
	company rpane h5:not(:first-child){
		margin-top: 80px;
	}
	.projects content{
		min-height: calc( 100vh - 260px );
	}
}
@media (max-width: 1300px){
	header{
		height: 170px;
	}
	header nav{
		padding-top: 55px;
	}
	heder nav a{
		font-size: 14px;
	}
	h1{
		font-size: 45px;
	}
	header a#logo{
		width: 160px;
		top: 31px;
		right: -40px;
	}
	fg a.mask{
		width: 80vw;
		height: 80vw;
		right: -40vw;
		top: auto;
		bottom: -40vw;
	}
	.home content ul{
		max-width: 550px;
		font-size: 16px;
	}
	.home content ul.second{
		margin-top: 10px;
		font-size: 16px;
		max-width: 500px;
	}
	company certs img{
		height: 40px;
	}
}
@media (max-width: 1150px){
	.home content{
		min-height: 0px;
		padding-bottom: 80px;
	}
	.home content wrapper{
		padding-top: 0px;
	}
	.home content p{
		font-size: 18px;
		max-width: 600px;
	}
	.home content p:first-child{
		font-size: 24px;
	}
	content h2{
		font-size: 21px;
	}
	.home content ul{
		font-size: 16px;
		max-width: 50%;
	}
	.home content ul ul{
		max-width: 480px;
		column-count: 1;
	}
	.home header a#logo{
		width: 190px;
		right: -60px;
	}
	company certs img{
		height: 36px;
	}

	contact p{
		font-size: 18px;
	}
	contact p::before{
		width: 15px;
		height: 15px;
		top: 1px;
	}
	content contact{
		width: 450px;
	}
}
@media (max-width: 1020px){
	header, wrapper {
		margin-left: 60px;
		margin-right: 60px;
	}
	footer {
		padding-left: 60px;
		padding-right: 60px;
		background: #fff;
	}
	content{
		/*min-height: calc( 100vh - 230px );*/
		min-height: 80vw;
	}
	.home content p{
		max-width: 480px;
	}
	.home content ul{
		column-count: 1;
	}
	.home content ul.second{
		margin-top: 0px;
	}
	.home content li{
		display: block;
	}
	.home content li br{
		display: none;
	}
	.home content ul ul{
		max-width: 50%;
	}
	.home content ul ul li:last-child{
		max-width: 260px;
	}
	content hr{
		margin-right: 0;
		width: 100%;
	}
	.home header a#logo{
		width: 160px;
		right: -40px;
		top: 31px;
	}
	.home content{
		padding-bottom: 150px;
	}
	bg white{
		width: 70vw;
		height: 70vw;
		right: -35vw;
		top: -39vw;
	}
	bg grey{
		width: 300vw;
		height: 300vw;
		right: -150vw;
		top: 40vw;
	}
	fg a.mask{
		width: 110vw;
		height: 110vw;
		right: -55vw;
		bottom: -55vw;
	}
	fg a.text{
		font-size: 18px;
		right: 60px;
	}

	projects a{
		width: 33.33%;
	}
	project textpane{
		width: 40%;
		min-height: 80vw;
	}
	project imagepane{
		width: 60%;
	}
	project p, project h4{
		font-size: 16px;
	}
	project textpane nav{
		flex-wrap: wrap;
	}
	project nav a{
		width: 100%;
		margin-top: 10px;
	}
	project nav a:last-child{
		text-align: left;
	}
	project nav icon{
		width: 80px;
		flex-grow: 0;
		flex-shrink: 0;
		order: -1;
	}

	content company{
		flex-wrap: wrap;
	}
	company lpane, company rpane{
		width: 100%;
		min-height: 0px;
	}
	company wrapper {
		padding-top: 56px;
		padding-bottom: 35px;
	}
	company certs img{
		height: 45px;
	}
	company lpane p{
		margin-bottom: 18px;
	}
	company rpane h5:not(:first-child){
		margin-top: 40px;
	}
	project nav a:last-child {
		justify-content: flex-start;
	}
	contact wrapper{
		padding-top: 55px;
		padding-bottom: 55px;
	}
	content contact{
		width: 50%;
	}
}
@media (max-width: 760px){
	header, wrapper {
		margin-left: 40px;
		margin-right: 40px;
	}
	footer{
		padding-left: 40px;
		padding-right: 40px;
		background: #fafafa;
	}
	header{
		height: 135px;
	}
	header nav{
		padding-top: 40px;
	}
	header nav a{
		font-size: 14px;
		margin-right: 25px;
	}
	header nav a::after{
		display: none;
	}
	h1{
		font-size: 36px;
	}
	header a#logo, .home header a#logo{
		width: 130px;
		top: 25px;
		right: -15px;
	}
	content{
		min-height: 0px;
	}
	.home content p{
		max-width: 470px;
	}
	.home content ul{
		font-size: 15px;
	}
	.home content ul.second{
		font-size: 15px;
	}
	.home content li::before{
		left: -10px;
		margin-right: -5px;
	}

	projects{
		align-content: flex-start;
		align-items: flex-start;
	}
	projects a{
		display: block;
		flex-wrap: wrap;
	}
	projects a img{
		height: auto;
		-webkit-transition: none;
		-moz-transition: none;
		-ms-transition: none;
		-o-transition: none;
		transition: none;
	}
	projects a:hover img{
		-moz-transform: none;
		-webkit-transform: none;
		-o-transform: none;
		-ms-transform: none;
		transform: none;
	}
	projects a .title{
		display: block;
		position: static;
		max-width: none;
		font-size: 11px;
		text-align: center;
		padding: 10px 15px 20px;
		-webkit-transition: none;
		-moz-transition: none;
		-ms-transition: none;
		-o-transition: none;
		transition: none;
	}
	projects a::after{
		display: none;
	}
	project textpane{
		width: 50%;
		min-height: 0px;
	}
	project imagepane{
		width: 50%;
		align-items: flex-start;
	}
	project nav icon{
		width: 50px;
	}
	content h2{
		font-size: 18px;
	}
	project textpane wrapper{
		padding-top: 40px;
		padding-bottom: 200px;
	}
	project textpane nav{
		bottom: 40px;
	}
	project p{
		margin-bottom: 15px;
	}
	project p, project h4{
		font-size: 14px;
	}
	company wrapper{
		padding-top: 40px;
		padding-bottom: 30px;
	}
	company lpane p{
		font-size: 15px;
		margin-bottom: 10px;
	}
	company rpane p{
		margin-bottom: 15px;
	}
	company rpane h5{
		font-size: 15px;
		margin-bottom: 15px;
	}
	company certs wrapper{
		padding-top: 30px;
		padding-bottom: 30px;
		justify-content: space-around;
	}
	company certs img{
		height: 40px;
	}
	company rpane h5:not(:first-child) {
		margin-top: 30px;
	}
	.contact content{
		height: 505px;
	}
	content contact{
		width: 100%;
		height: 155px;
	}
	contact wrapper {
		padding-top: 30px;
		padding-bottom: 5px;
	}
	contact p {
		font-size: 15px;
		margin-bottom: 10px;
		padding-left: 24px;
	}
	contact p::before{
		width: 14px;
		height: 14px;
		top: 0px;
	}
	content #map{
		height: 350px;
		top: 155px;
	}
}
@media (max-width: 650px){

}
@media (max-width: 560px){
	company rpane p{
		font-size: 13px;
	}
	company certs wrapper{
		padding-top: 20px;
		padding-bottom: 20px;
		justify-content: center;
		flex-wrap: wrap;
	}
	company certs img{
		height: 30px;
		margin: 10px;
	}
	header{
		height: 125px;
	}
	header a#logo{
		width: 110px;
		right: -30px;
		top: 50px;
	}
	.home header a#logo{
		width: 140px;
		right: -21px;
		top: 50px;
	}
	header nav{
		padding-top: 20px;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
	}
	header nav a{
		font-size: 12px;
		margin-right: 0px;
	}
	h1{
		font-size: 28px;
		margin-bottom: 20px;
		margin-top: 40px;
	}
	bg white{
		width: 120vw;
		height: 120vw;
		right: -20vw;
		top: -83vw;
		-moz-transform: rotate(15deg);
		-webkit-transform: rotate(15deg);
		-o-transform: rotate(15deg);
		-ms-transform: rotate(15deg);
		transform: rotate(15deg);
	}
	.home content{
		padding-bottom: 93vw;
	}
	.home content wrapper{
		padding-top: 60px;
	}
	.home content p{
		font-size: 15px;
		line-height: 1.2;
		max-width: 334px;
	}
	.home content p:first-child{
		font-size: 19px;
	}
	.home content b, .home content strong{
		display: block;
	}
	content hr{
		margin-top: 30px;
		margin-bottom: 30px;
	}
	content h2{
		font-size: 16px;
		margin-bottom: 15px;
	}
	.home content ul{
		font-size: 14px;
		max-width: none;
		line-height: 1.2;
	}
	.home content ul ul{
		max-width: none;
	}
	.home content li{
		margin-bottom: 6px;
	}
	.home content ul ul li:last-child{
		max-width: none;
	}
	fg a.mask{
		width: 150vw;
		height: 100vw;
		right: -30vw;
		bottom: -15vw;

		-moz-transform: rotate(-15deg);
		-webkit-transform: rotate(-15deg);
		-o-transform: rotate(-15deg);
		-ms-transform: rotate(-15deg);
		transform: rotate(-15deg);
	}
	fg a.mask project{
		width: 100%;
		height: 100%;
		left: 0%;
		top: -15%;

		-moz-transform: rotate(15deg);
		-webkit-transform: rotate(15deg);
		-o-transform: rotate(15deg);
		-ms-transform: rotate(15deg);
		transform: rotate(15deg);
	}
	fg a.text{
		font-size: 16px;
		right: 40px;
		bottom: 40px;
	}
	bg grey{
		top: -240vw;
		right: 3vw;
	}
	footer{
		flex-wrap: wrap;
		justify-content: center;
	}
	footer a#flogo{
		width: 145px;
		margin-bottom: 5px;
	}
	footer nav{
		text-align: center;
		width: 100%;
	}
	footer nav a{
		margin-left: 0px;
		display: block;
		margin-bottom: 5px;
	}
	projects a{
		width: 50%;
	}
	content project{
		flex-wrap: wrap;
	}
	project textpane{
		width: 100%;
	}
	project imagepane{
		width: 100%;
		order: -1;
	}
	content project h2{
		display: block;
	}

	project textpane nav{

	}
	project nav a{
		flex-direction: column;
		align-items: flex-start;
		width: auto;
		margin-top: 0px;
	}
	project nav icon{
		width: 60px;
	}
	project nav a:hover icon{
		border-width: 2px;
	}
	project nav a span{
		opacity: 1;
		display: block;
		padding: 0px;
		font-size: 13px;
		margin-top: 5px;
		order: 2;
		max-width: 60px;
	}
	project nav a:last-child{
		justify-content: flex-end;
		text-align: right;
	}
	project textpane wrapper{
		padding-bottom: 190px;
	}
}
@media (max-width: 400px){
	company certs img{
		height: 32px;
		margin: 10px 15px;
	}
}
@media (max-width: 350px){
	bg white{
		top: -75vw;
	}
	projects a{
		width: 100%;
	}
}

@media (min-width: 761px){
	.mapboxgl-ctrl-bottom-left{
		left: 50% !important;
	}
}
@media (min-width: 1021px){
	.mapboxgl-ctrl-bottom-left{
		left: 450px !important;
	}
}
@media (min-width: 1151px){
	.mapboxgl-ctrl-bottom-left{
		left: 490px !important;
	}
}
