html {overflow-y: scroll;}
body {
	margin: 0;
	padding: 0;
	background:url(../gfx/body_bg.jpg) repeat left top;
	font-family: 'Lato', sans-serif;
	font-size: 18px;
	font-weight: 300;
}
body.mce-content-body {
	background: #fff;
}
html, body {
	height:100%;
}
body.mce-content-body {
	background: #fff;
}



img {
	border: 0;
	vertical-align: middle;
}
fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}
textarea {
	resize: vertical;
}
a {
	cursor: pointer;
	text-decoration: none;
}
a:hover {
	text-decoration: none;
}
h1,h2,h3,h4,h5,h6 {
	margin: 0;
	padding: 0;
	font-family: 'Playfair Display', serif;
}

p,
pre {
	margin: 0;
	padding: 0;
}
header,
section,
footer,
article {
	display: block;
}
/* Custom styles
-------------------------------------------------------- */
.textsize_box {
	position: absolute;
	right: 0;
	top: 100px;
	background: #fff;
	border: 2px solid #ccc;
	padding: 20px;
	font-size: 4em;
	display: none;
	z-index: 1200;
	width: 100%;
	box-sizing: border-box;
}
body.mce-content-body h1,
article h1 {
	font-size: 56px;
	padding: 0 0 14px 0;
}
body.mce-content-body h2,
article h2 {
	font-size: 46px;
	padding: 0 0 14px 0;
}
article h2 span {
	background: #fff;
	display: inline-block;
	font-size: 26px;
	line-height: 1em;
	margin-left: 6px;
	padding: 4px 10px 8px;
}
body.mce-content-body h3,
article h3 {
	font-size: 36px;
	padding: 0 0 14px 0;
}
body.mce-content-body h4,
article h4 {
	font-size: 20px;
	padding: 0 0 8px 0;
	margin:0;
}
body.mce-content-body img,
article img {
	border: 1px solid #e8e8e8;
	padding: 9px;
	background: #fff;
}
body.mce-content-body p,
article p {
	line-height: 1.5em;
}
body.mce-content-body ul,
article ul {
	margin: 0;
	padding: 0;
}
body.mce-content-body ul li,
article ul li {
	margin: 0;
	padding: 0 0 10px 18px;
	line-height: 1.3em;
	list-style: none;
	background: url(../gfx/bullet.png) 0 8px no-repeat;
}
body.mce-content-body table,
article table {
	width: 100%;
	border-left: 1px solid #ececec;
	border-top: 1px solid #ececec;
}
body.mce-content-body table th,
article table th {
	background: #5a6b77;
	padding: 9px;
	color: #fff;
	font-weight: 300;
	text-align: left;
	border-right: 1px solid #6b7a85;
	font-weight: bold;
}
body.mce-content-body table th:last-child,
article table th:last-child {
	background: #5a6b77;
	padding: 9px;
	color: #fff;
	font-weight: bold;
	text-align: left;
	border-right: 1px solid #dcdcdc;
}
body.mce-content-body table td,
article table td {
	padding: 10px 9px;
	background: #fff;
	color: #505050;
	border-right: 1px solid #ececec;
	border-bottom: 1px solid #ececec;
}
body.mce-content-body table tr:nth-child(odd) td,
article table tr:nth-child(odd) td {
	padding: 10px 9px;
	background: #f8f8f8;
	color: #505050;
	border-right: 1px solid #ececec;
	border-bottom: 1px solid #ececec;
}

.center_x{
	width:100%;
	max-width:1200px;
	margin:0 auto;
}




.header{
	width:100%;
	height:100%;
	padding-bottom: 4px;
}
.header.home,
.header.blog_page {
	background: url(../gfx/top_edge_services.png) repeat-x left bottom #fff !important;
}
.header .bg {
	width:100%;
	height:100%;
	background: url(../gfx/home_top_bg.jpg) no-repeat center center;

	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	border:20px solid #000;
	box-sizing:border-box;
	position:relative;
	display:table;
}
.header_text{
	width:100% !important;
	height:auto;
	display:table-cell;
	vertical-align:bottom;
}
.header_text h1{
	width:100%;
	height:auto;
	background:rgba(0,0,0,0.60);
	text-align:center;
	color:#fff;
	font-size:38px;
	font-weight:normal;
	padding:20px 0 10px;
}

.header_text h1 span{
	text-transform:uppercase;
	font-size:56px;
	line-height:1.2em;
	font-weight:bold;
	padding:0 90px;
	background-image: url(../gfx/hand_left.png), url(../gfx/hand_right.png);
	background-position: left center, right center;
	background-repeat: no-repeat;
}
.scrollText {
	background:rgba(0,0,0,0.60) url(../gfx/arrow.down.png) center bottom no-repeat;
	text-align:center;
	padding: 0 0 30px;
	color:#fff;
	text-transform: uppercase;
}
@media only screen and (max-width : 1000px) {
	.scrollText {
		display: none;
	}
}
.menu_line{
	width:100%;
	position:absolute;
	left:0;
	display:inline;
	padding:0;
	z-index: 1000;
}
.logo{
	width:270px;
	height:50px;
	background:#000;
	padding:15px;
	position:fixed;
	z-index:1300;
	top:20px;
}
.logo a{
	width:96%;
	height:96%;
	margin:2%;
	display:block;
	background:url(../gfx/logo.png) no-repeat center center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	-o-background-size: contain;
	background-size: contain;
	-webkit-transition: all 0.1s ease-in-out;
	-moz-transition: all 0.1s ease-in-out;
	-ms-transition: all 0.1s ease-in-out;
	-o-transition: all 0.1s ease-in-out;
	transition: all 0.1s ease-in-out;
}
.logo a:hover{
	width:100%;
	height:100%;
	margin:0;
}
.main_nav {
	width:381px;
	position:fixed;
	top:20px;
	z-index:1200;
}
.scrolledDown .main_nav,
.scrolledDown .logo{
	top:0;
}
.main_nav .trigger {
	width:80px;
	height:80px;
	float:right;
	background-image: url(../gfx/menu_icon.png), url(../gfx/menu_icon.png), url(../gfx/menu_icon.png);
	background-position: center 30px, center 38px, center 46px;
	background-repeat: no-repeat;
	background-color:rgba(0,0,0,0.6);
	-webkit-transition: background 0.2s ease-in-out;
	-moz-transition: background 0.2s ease-in-out;
	-ms-transition: background 0.2s ease-in-out;
	-o-transition: background 0.2s ease-in-out;
	transition: background 0.2s ease-in-out;
}
.main_nav .trigger:hover {
	background-position: center 26px, center 38px, center 50px;
	background-color:rgba(0,0,0,1.0);
}
.main_nav.active .trigger{
	background:url(../gfx/menu_close.png) no-repeat center center rgba(0,0,0,1.0);
}

.main_nav ul{
	list-style:none;
	padding:0;
	margin:0;
	display:none;
	width:100%;
}
.main_nav.active ul{
	position:relative;
	z-index:1300;
	padding:1px 0 0 0;
	display:inline-block !important;
}
.main_nav li{
	width:100%;
	padding:0;
	margin:0;
}

.main_nav li.active a,
.main_nav li.active a:hover{
	color:#a9c900;
	background:url(../gfx/main_nav_active.png) no-repeat right center #0d0d0d;
	cursor:default;
}


.main_nav li a{
	width:100%;
	float:left;
	font-size:20px;
	font-family: 'Playfair Display', serif;
	color:#fff;
	text-align:right;
	padding:11px 22px 15px 22px;
	box-sizing:border-box;
	background:url(../gfx/arrow_green_17px.png) no-repeat 110% center #000;
	border-bottom:1px solid rgba(255,255,255,0.10);
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.main_nav li a:hover{
	color:#b5d800;
	background:url(../gfx/arrow_green_17px.png) no-repeat 94% center #000;
	padding:11px 50px 15px 22px;
}
.main_nav .videoBtn {

}
.main_nav .videoBtn a {
	display: block;
	border: 2px solid #272727;
	font-size: 20px;
	color: #fff;
	background-color: #000;
	font-family: 'Playfair Display', serif;
	text-align: center;
	text-transform: uppercase;
}
.main_nav .videoBtn a span {
	display: inline-block;
	padding: 25px 37px 25px 0;
	background: url(../gfx/icon.play.png) 100% center no-repeat;
}
.top_icons{
	width:auto;
	float:right;
	background:#000;
	padding:0 10px 10px 0px;
}
.top_icons a{
	float:left;
	width:40px;
	height:40px;
	border:1px solid rgba(253,253,253,0.16);
	margin:0 0 0 10px;
	background-position:center center;
	background-repeat:no-repeat;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.top_icons a:hover{
	background:#262626;
	border:1px solid rgba(253,253,253,0.25);
	background-position:center center;
	background-repeat:no-repeat;
}
.top_icons a.wai{
	background-image:url(../gfx/icon_aA.png);
}
.top_icons a.sitemap{
	background-image:url(../gfx/icon_sitemap.png);
}
.top_icons a.fb{
	background-image:url(../gfx/icon_fb.png);
}

.picture_tooltips{
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
	z-index:999;
}

.tooltip_wrapper{
	width:400px;
	position:relative;
	z-index:1000;
	text-align:center;
}

.tooltip_1{
	left:25%;
	top:55%;
}

.tooltip_2{
	left:60%;
	top:20%;
}

.tooltip_3{
	left:55%;
	top:55%;
}

.tooltip_container{
	width:400px;
	height:auto;
	position:absolute;
	top:100%;
	display:none;
}
.tooltip_content{
	width:100%;
	background:#fff;
	padding:20px 20px 10px 20px;
	box-sizing:border-box;
}
.tooltip_arrow{
	width:400px;
	height:24px;
	font-size:0;
	background:url(../gfx/tooltip_arrow.png) no-repeat center bottom;
}
.tooltip_content a{
	display:inline-block;
	font-size:22px;
	color:#000;
	font-family: 'Playfair Display', serif;
	text-transform:uppercase;
	background:url(../gfx/arrow_black_16px.png) no-repeat 95% center;
	padding:8px 40px 8px 0;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.tooltip_content a:hover{
	background:url(../gfx/arrow_black_16px.png) no-repeat 95% center;
	padding:8px 50px 8px 0px;
}


a.tooltip_trigger{
	background:url(../gfx/icon_plus.png) no-repeat center center rgba(255,255,255,0.3);
	width:44px;
	height:44px;
	border:3px solid rgba(255,255,255,0.5);
	display:inline-block;
	-webkit-border-radius: 25px 25px 25px 25px;
	border-radius:  25px 25px 25px 25px;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
a.tooltip_trigger:hover{
	background:url(../gfx/icon_plus.png) no-repeat center center rgba(255,255,255,0.7);
	border:3px solid rgba(255,255,255,1.0);
}


.tooltip_wrapper.active a.tooltip_trigger{
	background:url(../gfx/icon_close.png) no-repeat center center rgba(255,255,255,1.0);
	border:3px solid rgba(255,255,255,1.0);

}
.services {
	width:100%;
	background: #fff;
	font-size:0;
	padding:40px 0 0;
}
.each_service,
.blog_item,
.footer_column {
	width:30%;
	display:inline-block;
	margin:0 0 4% 5%;
	font-size:20px;
	vertical-align: top;
}

.footer_column {
	margin:0 0 0 5%;
}

.each_service p,
.blog_item p,
.footer_column p{
	line-height:1.4em;
}
.first_child {
	margin:0;
}
.each_service .intro_item_link{
	text-align:center;
}
.intro_item_link{
	color:#000;
}
.intro_item_link .icon {
	width:100%;
	height:220px;
	margin:10px 0;
	background-repeat:no-repeat;
	background-position:center center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	-o-background-size: contain;
	background-size: contain;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.intro_item_link .content {
	width:100%;
	padding:10px 0 0 0 ;
}
.intro_item_link h2{
	width:100%;
	background:url(../gfx/service_line_bg.png) repeat-x center center;
	padding:0 0 8px 0;
	margin:0;
	font-size:34px;
}
.blog_list .blog_item {
	margin: 0 5% 5% 0;
}
.blog_list .blog_item:nth-child(3n) {
	margin: 0 0 5% 0;
}
.blog_item .intro_item_link h2{
	background:none;
}
.intro_item_link h2 span{
	padding:0 15px;
	background:#fff;
}
.intro_item_link .read_more{
	width:100%;
	background:url(../gfx/service_line_bg.png) repeat-x center center;
	padding:15px 0;
}
.intro_item_link .read_more span{
	background:url(../gfx/arrow_white_16px.png) no-repeat 110% center #fff;
	padding:4px 20px 6px 20px;
	font-size:22px;
	font-family: 'Playfair Display', serif;
	color:#000;
	text-transform:uppercase;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.blog_item .intro_item_link .read_more span{
	padding:4px 20px 6px 0px;
}
.intro_item_link:hover .read_more span{
	padding:4px 38px 6px 20px;
	background:url(../gfx/arrow_white_16px.png) no-repeat 90% center #000;
	color:#fff;

}
.intro_item_link:hover .icon {
	width:100%;
	height:240px;
	margin:0;
	background-repeat:no-repeat;
	background-position:center center;
	-webkit-background-size: contain;
	-moz-background-size: contain;
	-o-background-size: contain;
	background-size: contain;
}
.blog {
	width:100%;
	/*background:url(../gfx/top_edge_content.png) repeat-x left top;*/
	font-size:0;
	padding:45px 0 60px;
}
/*.blog.blog_list {
	background:url(../gfx/top_edge_services.png) repeat-x left top;
}*/

.blog h1{
	font-size:56px;
	width:100%;
	text-transform:uppercase;
	line-height:0.8em;
	padding:0 0 20px 0;
	border-bottom:1px solid #eae5d8;
	margin:0 0 20px 0;
	background:url(../gfx/service_line_bg.png) repeat-x center 36px;
}
.blog h1 span{
	font-size:22px;
	padding:0 12px 0 0;
	font-weight:normal;
	text-transform: capitalize;
	background:url(../gfx/body_bg.jpg) no-repeat left top;
}
.blog h1 a{
	font-size:22px;
	float:right;
	font-weight:normal;
	background:url(../gfx/arrow_white_16px.png) no-repeat 110% center;
	color:#000;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	padding:4px 0;
	margin:-4px 0 0 0;
}

.blog h1 a:hover{
	padding:4px 38px 4px 20px;
	background:url(../gfx/arrow_white_16px.png) no-repeat 90% center #000;
	color:#fff;
}



.blog_item {
	text-align:left;
	background:#fff;
	box-sizing:border-box;
	padding:20px;
	-webkit-box-shadow: 0 2px 5px 0 #eae5d8;
	box-shadow: 0 2px 5px 0 #eae5d8;
}
.blog_image {
	width:100%;
	position:relative;
	overflow:hidden;
	background:#000;
	z-index:998;
}
.blog_image .picture_edge{
	width:100%;
	height:4px;
	position:absolute;
	z-index:999;
	top:100%;
	margin:-4px 0 0 0;
	background:url(../gfx/bottom_edge_img.png) repeat-x left top ;
}
.blog_image img {
	width:100%;
	height:auto;
	border:0;
	padding:0;
	filter: alpha(opacity=90);
	-moz-opacity: 0.9;
	-khtml-opacity: 0.9;
	opacity: 0.9;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	z-index:1;
}
.intro_item_link:hover img {
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	filter: alpha(opacity=100);
	-moz-opacity: 1.0;
	-khtml-opacity: 1.0;
	opacity: 1.0;
}
.blog .short_content {
	padding:10px 0 0 0;
}
.blog .short_content h2 {
	font-size:28px;
	font-weight:normal;
	line-height:1.2em;
	padding:0 0 10px 0;
	margin:0;
}
.blog .short_content h2 span {
	display: inline-block;
	background: #f1efe8;
	line-height: 1em;
	font-size: 16px;
	padding: 4px 10px 8px;
	margin-left: 6px;
}
footer{
	width:100%;
	background-image:url(../gfx/top_edge_footer.png), url(../gfx/footer_bg.jpg);
	background-position: left top, right top;
	background-repeat: repeat-x, no-repeat;
	background-color:#000;
	font-size:0;
	padding:20px 0;
}
.footer_column {
	font-size:18px;
	color:#fff;
	vertical-align:top;
}
.footer_column h3 {
	font-size:36px;
	color:#dfd5b9;
	border-bottom:1px solid rgba(234,229,216,0.2);
	font-weight:normal;
	margin:0 0 10px 0;
}

.footer_contacts ul {
	list-style:none;
}
.footer_contacts li {
	padding:0;
	margin:0;
	padding:10px 0 10px 30px;
	border-bottom:1px solid rgba(234,229,216,0.2);
	background-repeat:no-repeat;
	background-position:left center;
}
.footer_contacts li:last-child {
	border:none;
}
.footer_contacts li.phone{
	background-image:url(../gfx/icon_phone.png);
}
.footer_contacts li.mail{
	background-image:url(../gfx/icon_mail.png);
}
.footer_contacts li.address{
	background-image:url(../gfx/icon_home.png);
}
.footer_contacts a{
	color:#fff;
}
.footer_contacts a:hover{
	color:#d6ff00;
}

.arego {
	width:100%;
	color:#fff;
	font-size:14px;
	border-top:1px solid rgba(234,229,216,0.2);
	padding:10px 0;
}

.arego a{
	color:#fff;
}

.arego a:hover{
	color:#993f98;
}




/*CSS for subpages stars here*/
.header.subpage {
	width:100%;
	height:40%;
	background: url(../gfx/top_edge_services.png) 0 bottom repeat-x;
}
.header.subpage .bg {
	width: 100%;
	height: 100%;
	background-image: url(../gfx/subpage_header_temp.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}
.submenu {
	width:100%;
	margin:0;
	-webkit-box-shadow:inset 0 -3px 0 0 rgba(236,231,215,0.7);
	box-shadow:inset 0 -3px 0 0 rgba(236,231,215,0.7);
	background: #fff;
}
.back{
	width:100%;
	margin:0;
	-webkit-box-shadow:inset 0 -3px 0 0 rgba(236,231,215,0.7);
	box-shadow:inset 0 -3px 0 0 rgba(236,231,215,0.7);
	background: #fff;
}

.back.empty{
	background:url(../gfx/top_edge_services.png) repeat-x left top;
	-webkit-box-shadow:none;
	box-shadow:none;
}
.back a{
	display:inline-block;
	padding:20px 30px;
	background:url(../gfx/arrow_black_16px_left.png) no-repeat left center;
	font-size:22px;
	font-family: 'Playfair Display', serif;
	color:#000;
	text-transform:uppercase;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.back a:hover{
	padding:20px 20px;
}
.submenu ul{
	list-style:none;
	max-width:1200px;
	margin:0 auto;
	padding:0;
	text-align:center;
}
.submenu li{
	display:inline-block;
}
.submenu li a{
	display:inline-block;
	color:#000;
	font-size:22px;
	font-family: 'Playfair Display', serif;
	text-transform:uppercase;
	padding:20px 25px;
	background:url(../gfx/submenu_hover.png) no-repeat center 200%;
	-webkit-transition: all 0.25s ease-in-out;
	-moz-transition: all 0.25s ease-in-out;
	-ms-transition: all 0.25s ease-in-out;
	-o-transition: all 0.25s ease-in-out;
	transition: all 0.25s ease-in-out;
}
.submenu li a:hover{
	border-bottom:3px solid #000;
	color:#000;
}
.submenu li.active a, .submenu li.active a:hover{
	background:url(../gfx/submenu_active_arrow.png) no-repeat center bottom;
	border-bottom:3px solid #000;
	color:#000;
	cursor: default;
}
.content_wrap{
	width:1200px;
	height:auto;
	margin:0 auto;
}

.left_content{
	padding:40px 0;
	width:64%;
	display:inline-block;
	font-size:18px;
}

.left_content.narrow{
	padding:40px 0;
	width:30%;
	display:inline-block;
	font-size:18px;
}
.right_content{
	vertical-align:top;
	width:30%;
	margin:0 0 0 5%;
	display:inline-block;
	background:rgba(236,231,215,0.5);
	padding:40px 20px 10px 20px;
	box-sizing:border-box;
}
.right_content.wide{
	width:64%;
	margin:0 0 0 5%;
	background:none;
	padding:40px 0;
}
.left_content p {
	line-height:1.4em;
}
.left_content ul{
	line-height:1.4em;
	padding:0 0 18px 0;
}


.left_content h2,
.right_content.wide h2{
	width:100%;
	padding:0 0 20px 0;
	margin:0;
	font-size:46px;
	font-weight:normal;
}

.left_content img{
	max-width:100%;
	height:auto;
	box-sizing:border-box;
	margin-bottom:30px;
}

.right_content h3{
	width:100%;
	font-size:36px;
	font-weight:normal;
	border-bottom:1px solid #dbd8cd;
	padding:0 0 10px 0;
	margin:0 0 15px 0;
}
.contact_person{
	width:100%;
	padding:0 0 30px 0;
}
.contact_person img {
	border: 1px solid #dbd8cd;
	padding: 4px;
	background: #fff;
	width:100px;
	height:auto;
	display:inline-block;
	vertical-align:top;
	box-sizing:border-box;
}

ul.contact_details{
	width:200px;
	list-style:none;
	margin:0;
	padding:0 0 0 10px;
	display:inline-block;
	vertical-align:top;
}

ul.contact_details li{
	border-bottom:1px solid #dbd8cd;
	padding:6px 0 6px 26px;
	font-size:16px;
	background:none;
}

ul.contact_details li.name{
	padding-left:0;
	font-weight:bold;
}
ul.contact_details li.phone{
	background:url(../gfx/icon_phone_black.png) no-repeat left center;
}
ul.contact_details li.mail{
	background:url(../gfx/icon_mail_black.png) no-repeat left center;
}
ul.contact_details li.address{
	background:url(../gfx/icon_home_black.png) no-repeat left center;
}
ul.contact_details li.location{
	background:url(../gfx/icon_location_black.png) no-repeat left center;
}
ul.contact_details li a{
	color:#000;
}
ul.contact_details li a:hover{
	color:#478708;
}


.form_wrapper{
	width:100%;
	box-sizing:border-box;
	background:#fff;
	border:1px solid #ebe5d6;
	font-size:0;
	padding:10px;
}

.input{
	width:50%;
	display:inline-block;
	font-size:18px;
	padding:10px 12px;
	box-sizing:border-box;
}
.input.message{
	width:100%;
}
.input label,
.input input,
.input textarea{
	width:100%;
	padding:8px 10px;
	box-sizing:border-box;
	font-family: 'Lato', sans-serif;
	font-size:18px;
	display:inline-block;
}

.input input,
.input textarea{
	border:none;
	background:#f2f2f2;
	-webkit-box-shadow:inset 0 2px 2px 0 #e1e1e1;
	box-shadow:inset 0 2px 2px 0 #e1e1e1;
}
.input textarea{
	min-height:140px;
}

.input.send_button input{
	width:auto;
	border:none;
	color:#fff;
	-webkit-box-shadow:none;
	box-shadow:none;
	font-family: 'Playfair Display', serif;
	background:url(../gfx/arrow_white_16px.png) no-repeat 90% center #000;
	padding:4px 50px 6px 20px;
	font-size:24px;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.input.send_button{
	width:100%;
}
.input.send_button input:hover{
	padding:4px 60px 6px 30px;
	font-family: 'Playfair Display', serif;
	cursor:pointer;
}
.messages {
	display:inline-block;
	width:100%;
	box-sizing:border-box;
	font-size:20px;
	font-weight:bold;
}
.messages .message {
	padding: 18px 60px 18px 18px;
	display: none;
	border: 1px solid #e7e7e7;
}
.messages .success {
	background: url(../gfx/icon_success.png) 93% center no-repeat #f7f7f7;
	color:#5b9b28;
}
.messages .required,
.messages .email,
.messages .server {
	background: url(../gfx/icon_error.png) 93% center no-repeat #f7f7f7;
	color:#DF0003;
}
input.error{
	color:#DF0003;
	border:2px solid #DF0003;
}





.latest_blog{
	width:100%;
}
.latest_blog img{
	width:100%;
	height:auto;
	border: 1px solid #dbd8cd;
	padding: 4px;
	background: #fff;
	display:inline-block;
	box-sizing:border-box;
}
.latest_blog h4{
	font-size:22px;
	font-weight:normal;
	padding:6px 0 ;
	border-bottom:1px solid #dbd8cd;
}

.latest_blog a.read_more{
	background:url(../gfx/arrow_white_16px.png) no-repeat 110% center;
	padding:4px 20px 6px 0;
	font-size:20px;
	font-family: 'Playfair Display', serif;
	color:#000;
	text-transform:uppercase;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	width:100%;
	box-sizing:border-box;
	display:block;
}
.latest_blog a.read_more:hover{
	background:url(../gfx/arrow_white_16px.png) no-repeat 90% center #000;
	padding:4px 20px 6px 20px;
	font-family: 'Playfair Display', serif;
	color:#fff;
}





@media only screen and (max-width : 1366px) {
	.tooltip_1{
		left:16%;
		top:55%;
	}

	.tooltip_2{
		left:50%;
		top:10%;
	}

	.tooltip_3{
		left:55%;
		top:46%;
	}
}
@media only screen and (max-width : 1240px) {
	.center_x{
		padding:0 20px;
		box-sizing:border-box;
	}
	.header_text h1{
		font-size:30px;
	}
	.header_text h1 span{
		font-size:42px;
	}
	.intro_item_link h2{
		font-size:28px;
	}
	.blog .short_content  h2{
		font-size:22px;
	}
	.top_icons{
		padding:0px 20px 10px 0px;
	}

	.content_wrap{
		width:100%;
		height:auto;
		padding:0 30px;
		box-sizing:border-box;
	}
	.right_content h3{
		font-size:30px;
	}
	.contact_person img {
		border: 1px solid #e8e8e8;
		padding: 4px;
		background: #fff;
		width:30%;
	}
	ul.contact_details{
		width:67%;
		padding:0 0 0 2%;
		box-sizing:border-box;
	}
	ul.contact_details li{
		font-size:14px;
	}
	.tooltip_1{
		left:6%;
		top:55%;
	}

	.tooltip_2{
		left:50%;
		top:10%;
	}

	.tooltip_3{
		left:50%;
		top:44%;
	}
}
@media only screen and (max-width : 1024px) {
	.header_text h1{
		font-size:26px;
	}
	.header_text h1 span{
		font-size:32px;
	}
	.intro_item_link h2{
		font-size:22px;
	}
	.each_service, .blog_item, .footer_column {
		font-size:16px;
	}
	.intro_item_link .read_more span{
		font-size:18px;
	}
	.intro_item_link .icon, .intro_item_link:hover .icon {
		height:200px;
		margin:0;
	}
	.blog .short_content  h2{
		font-size:20px;
	}
	.footer_column h3 {
		font-size:28px;
	}

	.right_content h3{
		font-size:22px;
	}
	.contact_person img,
	ul.contact_details {
		width:100%;
	}
	ul.contact_details{
		margin:0;
		padding:0 0 0 2%;
		box-sizing:border-box;
		vertical-align:top;
	}
	.submenu li a{
		font-size:18px;
		padding:18px 20px;
		border-bottom:1px solid #dbd8cd;
	}
	.latest_blog a.read_more{
		font-size:18px;
	}
	.right_content h3,
	.right_content h2,
	.left_content h2,
	.left_content.narrow h2,
	.right_content.wide h2{
		font-size:30px;
	}

	.tooltip_1{
		left:4%;
		top:55%;
	}

	.tooltip_2{
		left:50%;
		top:10%;
	}

	.tooltip_3{
		left:50%;
		top:44%;
	}
	.header.subpage{
		width:100%;
		height:60%;
	}
	.main_nav li a,
	.main_nav li a:hover{
		font-size:20px;
		padding:10px 15px 12px 15px;
	}

}

@media only screen and (max-width : 840px) {
	.picture_tooltips{
		display:none;
	}
}


@media only screen and (max-width : 768px) {
	.header_text h1{
		padding:20px;
		box-sizing:border-box;
	}
	.header_text h1 span{
		font-size:32px;
		padding:0;
		background:none;
		padding:0;
	}
	.intro_item_link h2, .blog .short_content  h2{
		font-size:16px;
	}
	.intro_item_link .icon, .intro_item_link:hover .icon {
		height:180px;
	}
	.footer_column h3 {
		font-size:22px;
	}
	.content_wrap{
		width:100%;
		padding:0;
	}
	.left_content,
	.right_content,
	.left_content.narrow,
	.right_content.wide{
		width:100%;
		display:block;
		padding:0;
		margin:0;
		padding:30px;
		box-sizing:border-box;
	}
	.left_content.narrow,
	.right_content.wide{
		padding:20px 30px;
	}
	.left_content.narrow .contact_person{
		padding:0;
	}
	.contact_person,
	.latest_blog{
		width:46%;
		display:inline-block;
		vertical-align:top;
	}
	.latest_blog{
		padding:0 0 0 6%
	}
	.contact_person img {
		border: 1px solid #e8e8e8;
		padding: 4px;
		background: #fff;
		width:30%;
	}
	ul.contact_details{
		width:67%;
		padding:0 0 0 2%;
		box-sizing:border-box;
	}
	ul.contact_details li{
		font-size:16px;
		padding:8px 0 8px 26px;
	}
	.submenu li {
		width:100%;
		display:block;
		padding:0;
		margin:0;
	}
	.submenu li a,
	.submenu li a:hover{
		width:100%;
		display:block;
		padding:12px 20px;
		background:#fff;
		color:#000;
		margin:0;
		box-sizing:border-box;
	}
}



/*This is the main mobile breakingpoint*/
@media only screen and (max-width : 640px) {

	.header{
		width:100%;
		height:70%;
		background: url(../gfx/home_top_bg_mobile.jpg) no-repeat right top;
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
	}


	.menu_line{
		position:fixed;
		top:10px;
		background:#000;
		height:60px;
		padding:0 0 10px 0;
		z-index:1200;
	}
	.menu_line.scrolledDown{
		top:0;
		padding:0;
	}
	.logo{
		width:40%;
		height:60px;
		padding:0;
		z-index:1200;
		position:absolute;
		top:0;
		left:20px;
	}
	.logo a, .logo a:hover{
		width:100%;
		height:40px;
		padding:0;
		margin:10px 0 0 0;
		background:url(../gfx/logo.png) no-repeat center center;
		-webkit-background-size: contain;
		-moz-background-size: contain;
		-o-background-size: contain;
		background-size: contain;
	}
	.main_nav{
		width:100%;
		z-index:1100;
		top:0;
		left:0;
		padding:0 20px;
		box-sizing:border-box;
		position:absolute;
		background:#000;
	}
	.main_nav ul{
		margin:0;
		border-top:1px solid #181818;
		position:relative;
		z-index:1200;
	}
	.main_nav li a,
	.main_nav li a:hover{
		font-size:18px;
		padding:9px 22px 10px 22px;
		background:none;
	}
	.top_icons{
		display:none;
	}
	.main_nav .trigger,
	.main_nav .trigger:hover {
		width:60px;
		height:60px;
		background:url(../gfx/menu_icon_mobile.png) no-repeat center center #000;
	}
	.main_nav.active .trigger{
		background:url(../gfx/menu_close_mobile.png) no-repeat center center #000;
	}


	.each_service,
	.blog_item,
	.footer_column {
		width:100%;
		display:inline-block;
		margin:0;
		font-size:18px;
	}
	.home_top{
		width:100%;
		height:50%;
		border:none;
	}


	.header_text h1{
		padding:16px;
		font-size:22px;
		box-sizing:border-box;
		line-height:1em;
	}
	.header_text h1 span{
		font-size:24px;
		padding:0;
		background:none;
	}
	.intro_item_link h2,
	.blog .short_content  h2{
		font-size:20px;
	}

	.each_service .content p,
	.each_service .content .read_more{
		display:none;
	}
	.each_service {
		width:100%;
		border-bottom:1px solid #ece7d7;
		padding:20px 0 ;
	}
	.each_service .intro_item_link{
		text-align:left;
		display:block;
		height:100%;
		float:left;
		width:100%;
	}
	.intro_item_link{
		color:#000;
	}
	.intro_item_link .icon,
	.intro_item_link:hover .icon  {
		width:30%;
		height:90px;
		float:left;
	}
	.intro_item_link .content {
		width:65%;
		float:right;
	}
	.intro_item_link h2{
		width:100%;
		background:none;
		padding:15px 0 0 0;
		font-size:24px;
	}
	.intro_item_link h2 span{
		padding:0;
	}

	.blog h1{
		font-size:26px;
		background:none;
	}

	.blog h1 span{
		font-size:16px;
	}
	.blog h1 a,
	.blog h1 a:hover{
		font-size:16px;
		padding:0 20px 0 0;
		color:#000;
		background:url(../gfx/arrow_black_16px.png) no-repeat right center;
	}
	.footer_column {
		padding:0 0 40px 0;
		font-size:16px;
	}
	.footer_column h3 {
		font-size:22px;
	}

	.blog_item.no_mobile{
		display:none;
	}
	.left_content h2{
		width:100%;
		padding:0 0 20px 0;
		margin:0;
		font-size:26px;
		font-weight:normal;
	}
	.contact_person,
	.latest_blog{
		width:100%;
		padding:0 0 30px 0;

	}

}
@media only screen and (max-width : 400px) {
	.intro_item_link h2{
		font-size:20px;
	}
	.blog h1{
		font-size:22px;
		background:none;
	}
	.input{
		width:100%;
	}

	.input.send_button input,
	.input.send_button input:hover{
		background:#000;
		padding:4px 20px 6px 20px;
		font-size:18px;
	}

	.header_text h1{
		font-size:18px;
		padding:10px;
	}
	.header_text h1 span{
		font-size:20px;
	}
}

@media only screen and (max-width : 320px) {
	.blog h1 a{
		display:none;
	}
	.contact_person img,
	ul.contact_details {
		width:100%;
	}
	.header_text h1{
		font-size:16px;
	}
	.header_text h1 span{
		font-size:18px;
	}
}


@media only screen and (max-width : 280px) {
	.intro_item_link .icon{
		display:none;
	}
	.intro_item_link .content {
		width:100%;
		float:left;
		text-align:center;
	}
}
ul.sitemap {
	border-top: 1px solid #eae5d8;
	margin: 40px 0;
}
.sitemap li {
	line-height: 1em;
	border-bottom: 1px solid #eae5d8;
}
.sitemap li ul {
	border-top: 1px solid #eae5d8;
	margin: 0;
}
.sitemap li ul li:last-child {
	border-bottom: none;
}
.sitemap li a {
	display: block;
	background: url(../gfx/bullet.png) 0 18px no-repeat;
	padding: 14px 0 14px 15px;
	font-size: 18px;
	color: #5a6065;
	-webkit-transition: color 0.3s ease;
	-moz-transition: color 0.3s ease;
	-ms-transition: color 0.3s ease;
	-o-transition: color 0.3s ease;
	transition: color 0.3s ease;
	text-transform: uppercase;
}
.sitemap li a:hover {
	color: #a9c900;
	text-decoration: none;
}
.sitemap li li a {
	background: url(../gfx/bullet.png) 50px 18px no-repeat;
	padding: 14px 0 14px 65px;
}
.sitemap li li li a {
	background: url(../gfx/bullet.png) 100px 18px no-repeat;
	padding: 14px 0 14px 116px;
}
@media only screen and (max-height: 400px) {
	.menu_line {
		position:absolute;
		top: 0;
	}
}
/* Custom styles
-------------------------------------------------------- */
.clearfix:before,
.clearfix:after {
	content: " "; /* 1 */
	display: table; /* 2 */
}
.clearfix:after {
	clear: both;
}
.clearfix {
	*zoom: 1;
}
.reset {
	padding: 0;
	margin: 0;
}
ul.reset li {
	list-style: none;
}
