html {
-webkit-text-size-adjust:100%
}

body,html,ul,ul li {
margin:0;
padding:0;
overflow-x:hidden;
}

body,html{
height:100%;
width:100%;
background:#fff;
color:#000;
position:relative;
font-family:'Roboto',Verdana,sans-serif;
}

.wpcf7-response-output{
	margin-bottom: 20px !important;
}

body {
-webkit-transition:font-size .75s;
transition:font-size .75s;
font-size:87.5%;
min-height:100%!important;
height:auto;
line-height:150%;
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box;
font-weight:300;
}

*{
outline:none;
font-family: 'Roboto', sans-serif;
line-height:150%;
}

a{
color:#262a46;
text-decoration:none;
}

.no-touch a:hover{
color:#ff6100;
}

.main-width{
max-width:1200px;
padding:0 25px;
position:relative;
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box;
}

.main-width.small-size{
	max-width:800px;
}

.main-width.no-padding{
	padding:0 !important;
}

header{
background:#2f3337;
padding:12px 0 8px 0;
}

header #logo img{
width:90px;
height:auto;
}

header #menu-arrow-button{
width:30px;
height:25px;
background:url(images/menu-close.png) center no-repeat;
background-size:contain;
position:absolute;
right:25px;
top:5px;
cursor:pointer;
}

#head-menu{
background:#ff6100;
display:none;
position:absolute;
width:100%;
font-weight:300;
z-index:100;
}

#head-menu.active{
	display: block;
}

#head-menu ul,
#head-menu ul li{
padding:0;
margin:0;
}

#head-menu ul li{
border-top:1px solid #fff;
}

#head-menu ul li:nth-child(1){
border-top:0;
}

#head-menu ul li a{
display:block;
padding:8px 25px;
color:#fff;
font-style:italic;
text-transform:uppercase;
}

#head-menu ul li a:hover,
#head-menu ul li.current-menu-item > a,
#head-menu ul li.current-page-parent > a{
background:#bdbcbc;
color:#000;
}

.orange{
	background:#ff6100;
	color: #fff;
}

h1{
	margin:0 0 10px;
}

.content-box-linie,
.content-box-linie-top{
position: relative;
height: 30px;
width: 101%;
top: -30px;
left: -10px;
padding-top: 30px;
padding-left: 15px;
color: white;
background:#fff;
-webkit-transform: rotate(-2deg);
}

.content-box-linie-top{
top: auto;
bottom:-30px;
padding-top: 0;
padding-bottom: 30px;
}


#footer-box-sub .content-box-linie-top{
bottom:-70px;
}

.content-box .main-width{
padding:30px 25px;
}

.content-box.orange .main-width{
padding:30px 25px 55px;
}

.content-box.orange-top .main-width{
padding:75px 25px 30px;
}

.content-box.orange-top.page .main-width{
	padding-top: 45px;
}

.service-block .main-width{
padding:0 25px;
margin:-30px 0;
}

.text-center{
text-align:center;
}

.text-right{
text-align:right;
}

.white-color,
.white-color a{
color:#fff;
}

footer{
background:#2f3337;
position:relative;
bottom:0;
width:100%;
color:#818181;
text-align:center;
font-size:100%;
z-index:100;
}

#footer-box{
position:fixed;
bottom:0;
left:0;
width:100%;
z-index:-1;
}

#footer-box-orange{
position:fixed;
bottom:0;
left:0;
width:100%;
z-index:100;
}

footer a{
color:#818181;
}

footer ul,
footer ul li{
padding:0;
margin:0;
list-style:none;
}

footer ul li{
text-transform:uppercase;
}

footer ul li .splitter{
padding:0 8px;
color:#ff6100;
display:none;
}

footer ul li:nth-last-child(1) .splitter{
display:none;
}

footer .main-width{
padding:60px 25px 25px;
}

footer .address{
margin:15px 0;
}

footer label{
display:inline-block;
margin-right:10px;
}

footer ul li a:hover,
footer ul li.current-menu-item > a,
footer ul li.current-page-parent > a{
color:#fff;
}

footer #top-button{
width:24px;
height:20px;
background:url(images/arrow-up.png) center no-repeat;
background-size:contain;
position:absolute;
top:25px;
left:50%;
margin-left:-12px;
cursor:pointer;
}

.no-touch footer #top-button:hover{
background-image:url(images/arrow-up-hover.png);
}

.references-button{
display:inline-block;
border:1px solid #fff;
padding:2px 10px;
margin-left:15px;
margin-right:15px;
font-size:110%;
margin-bottom:-5px;
margin-top:10px;
}

.no-touch .references-button:hover{
border-color:#2f3337;
color:#2f3337;
}

.reference-block{
font-size:116.66666667%;
}

#header-image > div{
background:url(images/header-image.jpg) no-repeat right 0 bottom;
background-size:auto 70%;
height:250px;
}

h1{
font-size:250%;
color:#ff6100;
font-weight:600;
line-height:125%;
}

h1 .small{
font-size:62.500000001%;
font-weight:100;
display:block;
}

h2{
font-weight:500;
text-transform:uppercase;
border-bottom:1px solid #000;
padding-bottom:10px;
margin:0;
}

h3{
font-weight:500;
font-size:180%;
text-align:center;
color:#ff6100;
margin:0 0 20px;
}

h4{
font-size:130%;
margin:0 0 10px;
}

#header-image h1{
position:absolute;
top:25px;
left:25px;
}

.button{
display:inline-block;
padding:7px 20px;
background:#ff6100;
color:#fff;
cursor:pointer;
font-weight:300;
}

#content .button-container{
position:absolute;
left:0;
width:100%;
z-index:99;
margin-top:8px;
}

#content .button-dark{
background:#2f3337;
}

.no-touch .button:hover{
background:#2f3337;
color:#fff;
}

.no-touch #content .button-dark:hover{
background:#818181;
color:#fff;
}

.service-block .service-box{
padding:20px;
background:#ccc center no-repeat;
background-size:cover;
margin-bottom:20px;
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box;
}

.service-block .service-box:nth-last-child(1){
margin-bottom:0;
}

.service-block .service-box .button{
display:inline-block;
width:auto;
margin:20px 0 0;
}

.service-block{
z-index:99;
position:relative;
}

.service-block .service-box-39{
background-image:url(images/service-1.jpg);
}

.service-block .service-box-37{
background-image:url(images/service-2.jpg);
}

.service-block .service-box-35{
background-image:url(images/service-3.jpg);
}

#headline h1{
color:#fff;
text-transform:uppercase;
font-size:200%;
margin:0;
}

#headline h2{
padding:0;
border:0;
font-size:140%;
}

#headline.content-box .main-width{
padding:30px 25px 45px;
}

#image-footer{
	height: 170%;
	position: absolute;
	bottom:0;
	right:50px;
}

#content.page-content{
min-height:200px;
}

input,textarea{
	width:100%;
	padding:5px 10px;
	font-size:100%;
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box;
font-family:'Roboto',Verdana,sans-serif;
border: 1px solid #aaa;
}

.ajax-loader{
	position: absolute;
	left: 0;
	left: 25px;
}

.wpcf7-validation-errors,
.wpcf7-mail-sent-ok{
	border: 1px solid red !important;
	padding: 10px 20px !important;
	color: red;
	text-align: center;
}

.wpcf7-mail-sent-ok{
	border: 1px solid #1ac12e !important;
	color:#1ac12e !important;
}

.wpcf7-not-valid-tip{
	display: none !important;
}

#footer-box-orange-sub{
	margin-top: 40px;
}

@media screen and (min-width:440px){
#header-image > div{
background-size:auto 80%;
}

#header-image h1{
top:35px;
}

footer ul li{
display:inline-block;
}

footer ul li .splitter{
display:inline-block;
}
}

@media screen and (min-width:600px){
#header-image > div{
background-position:right 25px bottom;
height:280px;
}

#header-image h1{
position:absolute;
top:40%;
left:15%;
}

.content-box.orange-top .main-width{
padding-top:55px;
}

.content-box.orange-top.page .main-width{
	padding-top: 45px;
}

.wpcf7-form p{
padding-bottom: 1px;
}

.wpcf7-form label{
	width: 38%;
max-width: 170px;
float: left;
padding-top:6px;
}

.wpcf7-form input,.wpcf7-form textarea{
width: 60%;
max-width: 400px;
}

.wpcf7-form .button-set{
	width: 98%;
	max-width: 570px;
	text-align: right;
}

.wpcf7-form .button-set .button{
	width:130px;
}
}

@media screen and (min-width:750px){
header{
height:60px;
}

header #menu-arrow-button{
display:none;
}

#head-menu{
background:none;
display:block !important;
right:0;
top:-1px;
width:auto;
}

header #logo img{
width:160px;
height:auto;
}

#head-menu ul{
display:table;
margin:0 0 0 auto;
height:81px;
}

#head-menu ul li{
display:table-cell;
vertical-align:top;
}

#head-menu ul li a{
padding:27px 20px;
height:26px;
}

#head-menu ul ul{
display:none;
z-index: 100;
position:absolute;
background:#2f3337;
height:auto !important;
box-shadow: 0 4px 7px #000;
box-shadow: 0 4px 7px rgba(0,0,0,.6);
}

.no-touch #head-menu ul li:hover > ul{
display:block;
}

#head-menu ul ul li{
display:block;
}

#head-menu ul ul li > a{
background: none !important;
padding: 5px 20px 0 !important;
}

#head-menu ul ul li.current-menu-item > a{
background: #ff6100 !important;
}

#head-menu ul ul li:hover > a{
background: #ff6100 !important;
}

#head-menu ul li:nth-child(1) a{
padding:27px 20px;
height:27px;
}

#head-menu ul li a:hover,
#head-menu ul li.current-menu-item > a,
#head-menu ul li.current-page-parent > a{
background:url(images/menu-hover-left.png) left no-repeat,url(images/menu-hover-right.png) right no-repeat #ff6100;
color:#fff;
}

#header-image > div{
background-position:right 25px bottom;
height:310px;
background-size:auto 90%;
}

#header-image h1{
position:absolute;
top:40%;
left:15%;
}

#image-footer{
	height: 240%;
}

#footer-box-orange-sub{
	margin-top: 80px;
}


#footer-box-sub .content-box-linie-top{
bottom:-110px;
}
}

@media screen and (min-width:800px){
.main-width.small-size{
margin:0 auto;
}
}

@media screen and (min-width:1000px){
.main-width{
padding-left:50px;
padding-right:50px;
}

#image-footer{
	height: 150%;
}

#footer-box-orange-sub{
	margin-top: 40px;
}


#footer-box-sub .content-box-linie-top{
bottom:-70px;
}

.content-box .main-width{
padding:50px 50px;
}

.content-box.orange .main-width{
padding:75px 50px 110px;
}

.content-box.orange-top .main-width{
padding:75px 50px 75px;
}

#headline.content-box .main-width{
padding:30px 50px 45px;
}

#content .button-container{
margin-top:62px;
}

.page-content{
margin-bottom:-25px;
}

#head-menu{
right:25px;
}

#header-image > div{
background-position:right 0 bottom;
background-size:auto 70%;
height:340px;
}

footer .main-width{
display:table;
width:100%;
}

footer .main-width > *{
display:table-cell;
vertical-align:middle;
}

footer #top-button{
width:35px;
height:28px;
position:relative;
top:auto;
left:auto;
margin-left:0;
}

footer .main-width{
padding:25px 50px;
}

footer .copyright{
text-align:left;
}

#header-image > div{
background-position:right 50px bottom;
height:340px;
background-size:auto 90%;
}

#header-image h1{
position:absolute;
top:40%;
left:20%;
}
}

@media screen and (min-width:1200px){
.main-width{
margin-left:auto !important;
margin-right:auto !important;
}

#head-menu{
right:50%;
margin-right:-575px;
}

#header-image > div{
background-position:right 100px bottom;
background-size:auto 90%;
height:370px;
}

#header-image h1{
position:absolute;
top:40%;
left:20%;
}
.service-block .main-width{
	padding:0 50px !important;
}
}

@media screen and (min-width:1400px){
.content-box-linie,
.content-box-linie-top{
height: 50px;
top: -30px;
padding-top: 50px;
}
#content .button-container{
margin-top:62px;
}


#footer-box-sub .content-box-linie-top{
bottom:-70px !important;
}
.service-block .main-width{
	padding:0 50px !important;
}
}

@media screen and (min-width:1800px){
.content-box-linie,
.content-box-linie-top{
height: 60px;
top: -30px;
padding-top: 60px;
}
#content .button-container{
margin-top:65px;
}
.service-block .main-width{
	padding:0 50px !important;
}
}

@media screen and (max-width:750px){
#head-menu ul li ul{
	border-top:1px solid #fff !important;
}
#head-menu ul li ul li a{
	padding-left:50px !important;
}
}

@import url(https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,600);