
@font-face {font-family: 'AvenirNextLTPro-Demi';src: url('/webfonts/2C0E11_0_0.eot');src: url('/webfonts/2C0E11_0_0.eot?#iefix') format('embedded-opentype'),url('/webfonts/2C0E11_0_0.woff') format('woff'),url('/webfonts/2C0E11_0_0.ttf') format('truetype');}



@font-face {
	font-family: 'MyriadPro-Light';
	src:
		url('/fonts/MyriadPro-Light.eot?#iefix') format('embedded-opentype'),
		url('/fonts/MyriadPro-Light.woff') format('woff'),
		url('/fonts/MyriadPro-Light.svg#MyriadPro-Light') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'MyriadPro-Semibold';
	src:
		url('/fonts/MyriadPro-Semibold.eot?#iefix') format('embedded-opentype'),
		url('/fonts/MyriadPro-Semibold.woff') format('woff'),
		url('/fonts/MyriadPro-Semibold.svg#MyriadPro-Light') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'MyriadPro-Regular';
	src:
		url('/fonts/MyriadPro-Regular.eot?#iefix') format('embedded-opentype'),
		url('/fonts/MyriadPro-Regular.woff') format('woff'),
		url('/fonts/MyriadPro-Regular.svg#MyriadPro-Light') format('svg');
	font-weight: normal;
	font-style: normal;
}



body {
	margin: 0;
	padding: 0;
	font-size: 17px;
	letter-spacing: 0.4px;
	font-weight: normal;
	font-family: 'MyriadPro-Regular';
	background-color: #f5f5f5;
}

a {
	text-decoration: none;
	color: black;
}

h1 {
	font-weight: normal;
	letter-spacing: 1px;
	line-height: 40px;
	font-family: 'MyriadPro-Semibold';
}

h2 {
	padding-top: 12px;
	padding-bottom: 0px;
	font-weight: normal;
	letter-spacing: 0.5px;
	line-height: 32px;
	font-family: 'MyriadPro-Semibold';
}

h3 {
	font-weight: normal;
	letter-spacing: 0.5px;
	line-height: 32px;
	font-family: 'MyriadPro-Semibold';
}

input, select {
	font-size: 17px;
	font-family: 'MyriadPro-Regular';
}

div.label {
	margin-top: 20px;
}


/* GENERAL */

.clear {
	clear: both;
}

.text {
	line-height: 26px;
}


/* HEADER */

#header {
	margin: 0 auto;
	width: 1200px;
}

	#header .topline {
		float: left;
		width: 100%;
		background-color: #0D3092;
	}

	#logo {
		float: left;
		margin: 12px 24px 14px 58px;
		border: 1px solid white;
	}

	#headerslogan {
		font-weight: normal;
		font-family: 'MyriadPro-Semibold';
		padding: 15px 24px 0px 120px;
		float: left;
		line-height: 28px;
		letter-spacing: 3px;
		font-size: 22px;
		color: white;

	}

		#headerslogan img {
			image-rendering: crisp-edges;
		}

	#headerimage {
		float: left;
		width: 100%;
		position: relative;
		overflow-x: hidden;
	}

		#headerimage img {
			float: left;
			position: absolute;
			left: 0;
			width: 100%;
		}




/* MAIN MENU */

ul#mainmenu {
	float: right;
	width: 580px;
	list-style: none;
	padding: 0;
	margin: 55px 30px 0 0;
}

	ul#mainmenu li {
		float: left;
		padding: 20px 12px 0px 12px;
		font-weight: normal;
		font-family: 'MyriadPro-Semibold';
		font-size: 19px;
		text-transform: uppercase;
		letter-spacing: 1.6px;
		margin-bottom: 11px;
	}

		ul#mainmenu li a {
			text-decoration: none;
			color: white;
		}

		ul#mainmenu li a.active {
			color: red;
		}



/* CONTENT */

#content {
	margin: 0 auto;
	background-color: white;
	min-height: 800px;
	padding: 40px 60px;
	box-sizing: border-box;
	clear: both;
	width: 1200px;
}

	#content a {
		color: #0D3092;
	}

	#content .maintext {
		margin-bottom: 20px;
	}










#certimage {
	float: right;
	transform: rotate(10deg);
	position: relative;
	top: -44px;
	left: 30px;
}



.servicebox {
	float: left;
	width: 100%;
	margin-bottom: 40px;
}

	.servicebox .item {
		float: left;
		font-size: 18px;
		font-weight: normal;
		font-family: 'MyriadPro-Semibold';
		letter-spacing: 0.5px;
		padding: 12px 20px;
		margin-right: 3px;
		margin-bottom: 3px;
		box-sizing: border-box;
		background: #eeeeee;
		border-radius: 6px;
	}

		.servicebox .item:hover {
			background: radial-gradient(circle, #ffffff, #eeeeee);
		}

		.servicebox .item a {
			color: black;
			text-decoration: none;
		}






.serviceitembox {
	float: left;
	width: 100%;
	background: radial-gradient(circle, #fefefe, #efefef);
	border-radius: 6px;
	margin-bottom: 80px;
}

	.serviceitembox .text {
		padding: 0px 26px 20px 26px;
	}

		.serviceitembox .text h2 {
			padding-top: 17px;
		}

	.serviceitembox .image {
		padding: 20px;
	}








.textblock  {
	background: radial-gradient(circle, #fefefe, #efefef);
	border-radius: 6px;
	padding: 18px 24px;
	width: 56%;
	font-size: 16px;
	margin-top: 30px;
	box-sizing: border-box;
}

	.textblock h3 {
		margin-top: 0px;
		padding-top: 0px;
	}






.cta-break {
	display: block;
}



.cta-textblock {
	float: left;
	width: 100%;
	background-color: #eeeeee !important; font-weight: bold; color: #0D3092; line-height: 38px;
	margin-right: 0px;
	width: 100%;
	background: radial-gradient(circle, #fefefe, #efefef);
	border-radius: 6px;
	padding: 20px;
	box-sizing: border-box;
	margin-bottom: 100px;
}

	.cta-textblock div {
		font-size: 26px;
		font-weight: bold;
		line-height: 42px;
	}

.cta-textblock .imagecontainer {
	float: right;
	width: 33.33%;
	padding-left: 20px;
	box-sizing: border-box;
}

	.cta-textblock .imagecontainer img {
		float: left;
		width:100%;
		height: auto;
	}

	.cta-image {
		image-rendering: -webkit-optimize-contrast;
	}

.cta-textblock .textcontainer {
	float: left;
	width: 66.66%;
	margin-top: 8px;
}

.mapsiframe {
	width: 100%;
	padding-right: 0px;
	box-sizing: border-box;
}


.borderedimageright {
	padding-left: 20px;
}














.teamportraitfoto {
	padding-left: 45px;
	width: 24%;
	/*border-radius: 6px;*/
	padding-right: 0px;
}




.serviceitems {
	margin: 0 -55px;
}

	.serviceitems .inner {
		float: left;
		width: 100%;
		display: flex;
		flex-wrap: wrap;
	}

	.serviceitems .item {
		float: left;
		width: 33.2%;
		padding: 40px;
		box-sizing: border-box;
	}

	.serviceitems.type2 .item {
		width: 50%;
	}

		.serviceitems .item .teamportraitfoto {
			float: left;
			width: 100%;
			padding: 0;
			margin: 0;
			border-radius: 0px;
		}

		.serviceitems.type2 .item .teamportraitfoto {
			width: 45%;
		}

		.serviceitems .item .textbox {
			float: left;
			width: 100%;
			text-align: center;
			margin-top: 40px;
			padding: 0;
			box-sizing: border-box;
		}

		.serviceitems.type2 .item .textbox {
			width: 55%;
			text-align: left;
			padding-left: 30px;
		}

		.serviceitems .item .phone {
			font-size: 20px;
			font-weight: bold;
			color: #0D3092;
			background: url('/images/phone.png') no-repeat center left;
			background-size: 24px 24px;
			padding-left: 32px;
			background-position: 0px -1px;
			white-space: nowrap;
			display: inline-block;
		}

		.serviceitems .item .teamtitle {
			font-size: 24px;
			/*font-weight: bold;*/
			font-family: 'MyriadPro-Semibold';
		}

		.serviceitems .item .teamdesc {
			font-family: 'MyriadPro-Semibold';
			margin-bottom: 20px;
		}



.topcontainer {
	float: left;
	width: 100%;
	margin-top: 60px;
	margin-bottom: 120px;
}














/* RESPONSIVE */

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

	#header {
		 width: 100%;
	}

	#content {
		 width: 100%;
	}

}



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

	#headerslogan {
		padding-left: 30px;
	}

}


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

	#certimage {
		left: 0px;
	}

}


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

	#logo {
		margin: 20px 24px 20px 20px;
		padding: 0px;
		float: left;
		border: 1px solid white;
	}

	ul#mainmenu {
		width: 200px;
		float: right;
		padding-top: 14px;
		padding-right: 20px;
		padding-bottom: 0px;
		margin: 0;
	}

	ul#mainmenu li {
		float: right;
		padding: 0px 0px 0px 20px;
		font-size: 19px;
		text-transform: uppercase;
		letter-spacing: 1px;
	}

	#headerslogan {
		padding-top: 21px;
	}

}



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

	#content {
		padding: 24px;
	}

	.textblock {
		padding: 18px 24px;
	}

	.cta-textblock {
		width: 100%;
		box-sizing: border-box;
	}

}


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

	.serviceitemboxcontainertype1 {
		margin: 0 -30px;
	}

	.serviceitemboxwrapper.type1 {
		padding: 30px;
	}

}


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

	.serviceitems.type2 .item .textbox {
		padding-left: 30px;
		box-sizing: border-box;
		text-align: left;
		margin-top: 10px;
	}

	.textblock {
		width: 100%;
	}

}


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

	#headerimage img {
		width: 200%;
		left: -50%;
	}

}


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

	.serviceitems {
		margin: 0 -30px;
	}

	.serviceitems .item {
		width: 100%;
		padding: 30px;
	}

	.serviceitems.type2 .item {
		width: 100%;
		padding: 30px;
	}

	.serviceitems.type2 .item .teamportraitfoto {
		width: 100%;
	}

	.serviceitems .item .teamtitle {
		font-size: 22px;
	}

	.topcontainer h2 {
		font-size: 22px;
	}

	.serviceitems.type2 .item .textbox {
		width: 100%;
		padding-left: 0;
		text-align: center;
		margin-top: 40px;
	}

	.cta-textblock {
		font-size: 20px;
	}

	.cta-break {
		display: block;
		height: 10px;
	}

	.cta-textblock {
		padding: 14px 14px 20px 14px !important;
		line-height: 32px;
		width: 100%;
		min-height: 144px;
		box-sizing: border-box;
	}


	.portraitfoto {
		padding-left: 12px;
		padding-bottom: 12px;
		width: 40%;
	}



	.cta-textblock div {
		font-size: 20px;
		font-weight: bold;
		line-height: 38px;
	}

	.cta-textblock .imagecontainer {
		float: left;
		padding: 0 20px 0 0;
	}

	.cta-textblock .textcontainer .title {
		float: left;
		width: 100%;
	}

	.cta-textblock .textcontainer .phone {
		float: left;
		width: 100%;
	}

	.cta-textblock .textcontainer .email {
		float: left;
		width: 100%;
	}

	.cta-textblock .textcontainer .iso {
		height: 150px;
	}

	.servicebox .item {
		width: 100%;
		margin-right: 0;
	}

	.serviceitems .item .textbox {
		margin-top: 20px;
		text-align: left;
	}

	.serviceitems.type2 .item .textbox {
		margin-top: 20px;
		text-align: left;
	}

	h2.managementteam {
		margin-bottom: 0;
	}

}



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

	.serviceitembox {
		background: none;
		background-color: #fff;
		margin-bottom: 60px;
	}

	.serviceitembox .text {
		margin: 0;
		padding: 0;
	}

	.serviceitembox .image {
		width: 100%;
		padding: 20px 0;
	}

	#headerslogan {
		padding-left: 15px;
		padding-bottom: 10px;
	}

	#certimage {
		left: 0px;
		height: 80px;
		top: -20px;
	}

	#headerslogan img {
		width: 100px;
	}

	.companyimage {
		width: 100%;
		box-sizing: border-box;
		padding-left: 0px;
		padding-bottom: 20px;
	}

	.teamportraitfoto {
		width: 100%;
		padding: 0 0 20px 0;
	}

}


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

	.serviceitemimage {
		width: 100%;
		box-sizing: border-box;
		padding: 0px 0px 20px 0px;
	}

	.textblock {
		width: 100%;
		box-sizing: border-box;
	}



	.footerright {
		padding-left: 20px;
	}

	.serviceitemtext {
		padding: 0;
		margin: 0;
	}

	.serviceitembox {
		background-color: white;
		background: none;
	}

	#logo {
		width: 114px;
		margin-left: 10px;
		padding-left: 0px;
	}

	ul#mainmenu {
		width: auto;
		margin-top: 9px;
		padding-right: 10px;
		padding-top: 6px;
		float: left;
		margin-bottom: 10px;
	}

	ul#mainmenu li {
		clear: both;
		padding-left: 10px;
		line-height: 28px;
		float: left;
		margin-bottom: 0px;
	}

	body, div, p, td {
		font-size: 14px;
		line-height: 22px;
	}

	h1, h2, h3 {
		letter-spacing: 0.5px;
		line-height: 27px;
	}

	h1 {
		font-size: 20px;
	}
	h2 {
		font-size: 18px;
	}
	h3 {
		font-size: 16px;
	}

	input, select {
		font-size: 14px;
	}

	.cta-textblock {
		padding-right: 0px;
	}

	#content {
		padding: 16px;
	}

	.textblock {
		padding: 16px 20px;
	}

	.topcontainer {
		margin-bottom: 100px;
	}

	.cta-textblock .imagecontainer {
		width: 100%;
		padding: 0;
	}

	.cta-textblock .textcontainer {
		width: 100%;
	}

	.teamportraitfoto {
		width: 100%;
	}

}


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

	.serviceitemboxcontainertype1 {
		margin: 0 -20px;
	}

	.serviceitemboxwrapper.type1 {
		padding: 20px;
	}

	.serviceitemboxcontainertype2 {
		margin: 0 -20px;
	}

	.serviceitemboxwrapper.type2 {
		padding: 20px;
	}


	.serviceitemboxwrapper.type1 .inner .teamtitle {
		font-size: 20px;
	}
	.serviceitemboxwrapper.type2 .inner .teamtitle {
		font-size: 20px;
	}

	.serviceitemboxwrapper.type1 .inner .phone {
		font-size: 17px;
		background: url('/images/phone.png') no-repeat center left;
		background-size: 20px 20px;
		background-position: 0px -1px;
		padding-left: 32px;
		margin-top: 15px;
	}

	.serviceitemboxwrapper.type1 .inner .teamemail {
		margin-top: 15px;
	}

}


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

	.serviceitemboxwrapper.type1 .inner .teamtitle {
		font-size: 16px;
	}
	.serviceitemboxwrapper.type2 .inner .teamtitle {
		font-size: 18px;
	}

}