img, legend {border:0;} legend, td, th {padding:0;} html {font-family:sans-serif; -ms-text-size-adjust:100%; -webkit-text-size-adjust:100%;} body {margin:0;} article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {display:block;} audio, canvas, progress, video {display:inline-block; vertical-align:baseline;} audio:not([controls]) {display:none; height:0;} [hidden], template {display:none;} a {background-color:transparent;} a:active, a:hover {outline:0;} abbr[title] {border-bottom:1px dotted;} b, optgroup, strong {font-weight:700;} dfn {font-style:italic;} h1 {font-size:2em; margin:.67em 0;} mark {background:#ff0; color:#000;} small {font-size:80%;} sub, sup {font-size:75%; line-height:0; position:relative; vertical-align:baseline;} sup {top:-.5em;} sub {bottom:-.25em;} svg:not(:root) {overflow:hidden;} figure {margin:1em 40px;} hr {box-sizing:content-box; height:0;} pre, textarea {overflow:auto;} code, kbd, pre, samp {font-family:monospace, monospace; font-size:1em;} button, input, optgroup, select, textarea {color:inherit; font:inherit; margin:0;} button {overflow:visible;} button, select {text-transform:none;} button, html input[type=button], input[type=reset], input[type=submit] {-webkit-appearance:button; cursor:pointer;} button[disabled], html input[disabled] {cursor:default;} button::-moz-focus-inner, input::-moz-focus-inner {border:0; padding:0;} input {line-height:normal;} input[type=checkbox], input[type=radio] {box-sizing:border-box; padding:0;} input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button {height:auto;} input[type=search] {-webkit-appearance:textfield; box-sizing:content-box;} input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {-webkit-appearance:none;} fieldset {border:1px solid silver; margin:0 2px; padding:.35em .625em .75em;} table {border-collapse:collapse; border-spacing:0;} 

html {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
*, *:before, *:after {-webkit-box-sizing: inherit; -moz-box-sizing: inherit; box-sizing: inherit;}
#fancybox-wrap, #fancybox-wrap * {-webkit-box-sizing: content-box; -moz-box-sizing: content-box; box-sizing: content-box;}

html, body {margin: 0; padding: 0;}
body {font: 300 16px/1.5 'Roboto', sans-serif; color: #333; background: #fff;}

h1 {margin: 0; font-size: 36px; font-weight: normal;}
h2 {margin: 0 0 40px; font-size: 30px; font-weight: normal;}
h3 {margin: 20px 0 0; font-size: 18px; font-weight: 500;}

p {margin: 20px 0;}
ul, ol {margin: 20px 0; padding: 0 0 0 40px;}

h1 + p {margin: 10px 0 20px;}
h2 + p {margin: 10px 0 20px;}
h3 + p {margin: 10px 0 20px;}
h2 + ul, h2 + ol {margin: 10px 0 20px;}
h3 + ul, h3 + ol {margin: 10px 0 20px;}
h1 + h2 {margin: 10px 0 0;}
h2 + h3 {margin: 10px 0 0;}

h2 + table {margin: 10px 0 20px;}
h3 + table {margin: 10px 0 20px;}

a {color: #000; text-decoration: underline;}
a:hover {text-decoration: none;}
a img {border: none;}

hr {height: 0; margin: 40px 0; border: none; border-top: 1px dashed #ccc;}

b, strong {font-weight: 500;}

::-webkit-input-placeholder {color: #898989;}
:-moz-placeholder {color: #898989; opacity: 1;}
::-moz-placeholder {color: #898989; opacity: 1;}
:-ms-input-placeholder {color: #898989;}

.in {width: 100%; min-width: 320px; max-width: 1240px; margin: 0 auto; padding: 0 20px;}
.s > .in {padding-top: 80px; padding-bottom: 80px;}

.s h2 {text-align: center;}

.navigation {position: fixed; top: 0; left: 0; right: 0; background: #fff; box-shadow: 0 0 10px rgba(0, 0, 0, .25); z-index: 999;}
.navigation > .in {padding-top: 10px; padding-bottom: 10px;}
.navigation .logo {float: left; display: inline-block; text-decoration: none; font-size: 18px; font-weight: 400; text-transform: uppercase;}
.navigation .logo img {width: 53px; margin: 0 5px 0 0; vertical-align: middle;}
.navigation .menu {margin: 10px 0; padding: 0; text-align: right;}
.navigation .menu li {display: inline-block; margin: 0 10px;}
.navigation .menu li a {font-size: 22px; font-weight: 400; text-decoration: none;}
.navigation .menu li a:hover {text-decoration: underline;}
.navigation .menu-toggle {display: none; float: right; padding: 0 0 0 22px; font-size: 22px; line-height: 53px; text-transform: uppercase; background: url('../img/menu-toggle.png') left center no-repeat; font-weight: 500; cursor: pointer;}

.head {position: relative; display: flex; justify-content: center; align-items: center; min-height: 100vh; background: #eee url('../img/head.jpg') center center no-repeat; background-size: cover; color: #fff;}
.head::after {content: ' '; position: absolute; top: 0; bottom: 0; left: 0; right: 0; background: rgba(0, 0, 0, .2); z-index: 1;}
.head > .in {z-index: 2; padding-bottom: 0;}
.head .content {max-width: 900px; margin: 0 auto; text-align: center; font-size: 22px; text-shadow: 0 0 5px rgba(0, 0, 0, .9);}
.head .logo {display: inline-block; width: 200px;}
.head .logo img {display: block; max-width: 100%;}
.head h1 {}

.reference {background: #000; color: #fff; text-align: center;}
.reference span {display: inline-block; margin: 0 20px; padding: 5px 20px; font-size: 22px; font-weight: 500; background: #222; border-radius: 5px;}

.foot {background: #000; color: #ccc;}
.foot > .in {padding-top: 20px; padding-bottom: 20px;}
.foot a {color: #ccc; text-decoration: none;}
.foot a:hover {text-decoration: underline;}

.clanky {background: #f7f7f7; box-shadow: inset 0 0 5px rgba(0,0,0,.05);}

.news {margin: -1.5%;}
.news .item {float: left; width: 30.3333%; margin: 1.5%; text-align: justify;}
.news .item h3 {margin-top: 10px; text-align: left;}
.news .item img {max-width: 100%; box-shadow: 0 0 10px rgba(0, 0, 0, .1);}
.news .item .more {text-align: right;}
.news .item .more a {display: inline-block; padding-right: 16px; background: url('../img/arrow.png') right center no-repeat; text-decoration: none;}
.news .item .more a:hover {text-decoration: underline;}

.kontakt .in > .left {width: 66.6666%;}
.kontakt .in > .right {width: 30.3333%;}
.kontakt .in > .right h3 {margin-top: 0;}

.services {}
.services .item {margin: 40px -1.5%; padding: 0 0 40px; border-bottom: 1px dashed #ddd;}
.services .item:last-child {padding-bottom: 0; border-bottom: none;}
.services .col {float: left; width: 47%; margin: 0 1.5%; text-align: justify;}
.services .col h3 {margin: 0 0 10px; font-size: 22px; font-weight: normal;}
.services .col img {max-width: 100%; box-shadow: 0 0 10px rgba(0, 0, 0, .1);}
.services .col p:last-child {margin-bottom: 0;}

.button {display: inline-block; padding: 10px 20px; background: #fff; color: #000; text-decoration: none; border-radius: 5px; text-shadow: none;}
.button:hover {background: #000; color: #fff;}

.iframe-wrap {position: relative; width: 100%; height: 0; padding: 0 0 56.25%;}
.iframe-wrap iframe {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}

.left {float: left;}
.right {float: right;}
.clr {clear: both;}

.tc {text-align: center !important;}
.tr {text-align: right !important;}

.cf::before, .cf::after {content:""; display:table;}
.cf::after {clear:both;}
.cf {zoom:1;}

table {margin: 20px 0; border-collapse: collapse; border: none;}
table.center {margin-left: auto; margin-right: auto;}
table th {text-align: left; font-weight: 500}
table th, table td {padding: 1px 10px;}

form > div > div {margin: 0 0 20px;}
form > div > div.send {margin-top: -20px; text-align: right;}
form .left, form .right {width: 48.5%;}
form label {display: block;}
form input[type=text], form textarea {width: 100%; padding: 10px; border: 1px solid #999; color: #000;}
form textarea {height: 164px; margin-bottom: 0;}
form input[type=checkbox] + label {display: inline;}
form input[type=submit] {display: inline-block; padding: 10px 51px 10px 30px; border: none; color: #fff; border: 1px solid #000; background: #000 url('../img/arrow-white.png') right 30px center no-repeat;}
form input[type=submit]:hover {background-color: #fff; color: #000; background-image: url('../img/arrow.png');}
form .validator-msg {color: #f00;}
.js form.form .validator-msg {display: none;}

@media (max-width: 1400px) {
	.head {background-image: url('../img/head-w1366.jpg');}
}

@media (max-width: 1100px) {
	h2 {margin-bottom: 20px;}
	.s > .in {padding-top: 40px; padding-bottom: 40px;}

	.head > .in {padding-top: 90px;}

	.foot > .in {padding-top: 20px; padding-bottom: 20px;}
	
	.services .item {margin-top: 20px; padding-bottom: 20px;}
}
@media (max-width: 767px) {
	h1 {font-size: 30px;}
	h2 {font-size: 26px;}

	.head .content {font-size: 18px;}
	.head .logo {width: 100px;}

	.kontakt .in > .left, .kontakt .in > .right {float: none; width: 100%;}
	.kontakt .in > .right {text-align: center;}

	.foot .left, .foot .right {float: none; text-align: center;}

	.news .item {width: 47%;}
}
@media (max-width: 600px) {
	.js .navigation .menu-toggle {display: block;}
	.js .navigation .menu {display: none; position: absolute; right: 0; top: 73px; min-width: 140px; margin: 0; text-align: left; background: #fff; border: 1px solid #eee;}
	.js .navigation .menu li {display: block; margin: 0;}
	.js .navigation .menu li a {display: block; padding: 10px 20px; border-top: 1px solid #eee; font-size: 18px;}
	.js .navigation .menu li:first-child a {border-top: none;}
	.js .navigation .menu li a:hover {text-decoration: none; background: #f7f7f7;}
}
@media (max-width: 480px) {
	.navigation .logo span {display: none;}

	.news .item {width: 97%;}
	.news .item img {width: 100%;}

	.services .col {width: 97%;}
}