body{font:1.7em/1.4 'Open Sans',Arial,sans-serif;color:#333}
a:hover{cursor:pointer}
img{max-width:100%}
h1, h2, h3{color:#337ab7}
h2{margin:2em auto 0.5em;text-align:center;color:#337ab7;text-transform:uppercase;border-bottom:1px solid #eee;display:table;padding:0 5vw 0.5em;font-size:2em;font-family:Oswald}
section:hover h2, article:hover h2{border-bottom:1px solid #fc9}

header{position:relative;background-image:url(/image/header.png);background-repeat:no-repeat;background-size:100% 100%;background-position:right bottom;padding:0 2vw 3em}
header h1{font-family:Oswald;color:#111;font-size:3.4em;text-shadow:0 2px 2px #ccc}
header p{display:table;color:#222;font-size:1.4em;margin:1em 0;border-top:1px solid #ccc;max-width:600px}
header img.animated{float:right;max-width:60%;position:absolute;right:0;bottom:0}
header .row h3{font-family:Oswald;float:left;font-size:2em}
header .row .addr{border-bottom:1px solid #ccc;padding:0.8em 0;line-height:1.6em;float:right}
header .row .addr *{white-space:nowrap}
header .row .addr span{display:none}
header .row .addr>div{display:inline-block;margin:0 1em;vertical-align:top}
header .row .addr>div:last-child{/*text-align:right*/}
header a.tel{font-size:1.1em;color:#23527c}
header a.tel::before{font-family:'FontAwesome';content:'\f10b';margin-right:0.3em;color:#ccc}
header a.tel:hover::before{transform:rotate3d(180,270,90,-360deg);transition:0.7s}
header .addr .fa{color:#ccc}
header .list-inline {font-family:Oswald;float:right}
header .list-inline a {padding:0.1em;margin:0.6em auto;display:inline-block;border-bottom:1px solid #fff;font-size:1.2em;text-decoration:none;text-transform:uppercase}
header .list-inline a:hover {border-bottom:1px solid #23527c;transform:scale(1.1)}
header .btn {margin:0 0.5em 1em}

@media (max-width:991px){
header{background:none}
header h1{font-size:2.6em}
header p{font-size:1.6em}
header img.animated{opacity:0.6}
header .row .addr *{line-height:2em;white-space:initial}
}

article img{float:right;width:160px}
article p.first{font-size:1.3em;color:#369}
#service p, #foto p{text-align:center;padding:0.5em 0 0.2em;font-size:1.05em}
#service > p, #foto > p{color:#666}

aside{margin:2em auto 1em;text-align:center;color:#fff}
#about aside{position:sticky;top:1em}
aside>*{margin:1em auto 0}
aside form{background:#369;background:linear-gradient(#39c,#369);padding:1em;box-shadow:0 0 1em #666}
aside form:hover{box-shadow:0 0 1em #333}
aside form input{margin:1em auto}
aside form h4{font-size:1.1em;margin:0.5em;padding:0;color:#fff}
aside form p{font-size:0.9em;margin:0.5em;padding:0}

form a{font-size:11px;color:#bbb;display:inline-block;margin:1em auto}
form a:hover{color:#bbb}
form.article{position:relative;background:#369;background:linear-gradient(#39c,#369);padding:1em;box-shadow:0 0 1em #666;margin-top:2em;text-align:center}
form.article img{position:absolute;left:2em;top:-1em;width:245px;height:245px;border-radius:50%;object-fit:cover}
form.article h3{margin:auto;color:white}
form.article p{color:white}
input,textarea{margin-top:10px}
input[type=submit]{text-transform:uppercase}
select.form-control{width:100%;max-width:100%}

.modal-dialog{text-align:center}
.modal-header{color:#fff;background:#333;background:linear-gradient(#666,#333)}
.modal-header .close{font-size:1.4em}
#callme input, #addreview input{margin:0}
#addreview textarea{width:99%;margin:0 auto 1em}
#addreview .form-inline{margin-top:1em}
#callme .input-group, #addreview .input-group {margin:0 auto 1em}
#callme .input-group {margin:0 auto 1em}
#callme .service2 {color:#f33;margin:0.5em auto}
#form_remont .modal-dialog label{display:block;margin:0.5em auto;color:#369;text-align:left;font-weight:normal}
#form_remont .modal-dialog label input, .modal-dialog label textarea{margin:auto}

.fotoset{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center}
.fotoset a{display:inline-block;position:relative;width:180px;max-width:26%;padding:2px;margin:2px;box-shadow:0 0 0.5em #aaa}
.fotoset a img{width:100%;height:120px;object-fit:cover;filter:sepia(40%)}
#service .fotoset a{width:260px;max-width:99%;padding:8px;margin:8px;text-transform:uppercase;text-decoration:none;color:#23527c;font-size:1.1em}
#service .fotoset a:hover{color:#f33}
#service .fotoset a img{height:100px;margin-bottom:0.5em}
.fotoset a:hover{box-shadow:0 0 1em #666;transform:scale(1.02)}
.fotoset a:hover img{filter:none}
#service .fotoset a:hover::before{font-family:'FontAwesome';content:'\f2a0';position:absolute;right:10px;top:10px;font-size:2em;border-radius:50%;background:#f33;color:#fff;display:block;width:1.5em;height:1.5em;transform:scale(-1,1);}
@media (max-width:700px){
#service .fotoset a{width:100%;max-width:100%}
#service .fotoset a img{height:80px;width:80px;float:left;margin-right:0.5em}
#service .fotoset p {text-align:left}
}
.review{overflow:auto;height:310px}
.review div{position:relative;border-bottom:1px solid #ddd}
.review .fa-quote-right{position:absolute;top:0;right:0.1em;color:#eee;z-index:-1}
.review div:hover .fa-quote-right{color:#ddd}
.review b{color:#337ab7;font-weight:400}
.review small{color:#999}
.review p{font-size:0.9em}
#review a{margin:1em auto 0;display:table}
@media (max-width:991px){
.review{overflow:initial;height:auto}
}

#step{margin:auto}
#step img{position:absolute;left:0;bottom:0}
#step div{margin:0.5em 1em 0.5em 12em;padding:0.9em;background:linear-gradient(#fff,#eee);width:60%;border-bottom:1px solid #bbb}
#step div:hover{border-bottom:1px solid #999;transform:scale(1.02)}
@media (max-width:991px){
#step div{margin:0.5em 1em;width:auto}
}

.advantage{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;text-align:center;clear:both}
.advantage div{
margin:0.5em;padding:0.5em;min-width:19%;box-shadow:inset 0 0 1em #bbb;background-color:#fff;
background-image:linear-gradient(45deg, rgba(0,0,0,.0) 30%, rgba(0,0,0,.2), rgba(0,0,0,.0) 70%);
background-repeat:no-repeat;background-size:200% 100%;background-position:200% 0;
border-top:3px solid #337ab7;
}
.advantage div:hover{transition:.5s linear;background-position:-200% 0, 0 0;transform:scale(1.03)}
.advantage .fa{display:block;font-size:1.6em;color:#337ab7;padding:0.3em}
.advantage div:hover .fa{transform:rotate3d(180,270,90,-360deg);transition:0.7s}
@media screen and (max-width:640px){
.advantage{display:block}
.advantage div{padding:1em}
.advantage .fa{display:none}
.advantage br{display:none}
}

footer{color:#fff;padding:2em 0 1em;background:#333;}
footer,aside form,form.article{
background-image:linear-gradient(rgba(0,0,0,0.9),rgba(0,0,0,0.5)),url('/image/bg.jpg');background-size:auto,cover;background-repeat:repeat,no-repeat;background-attachment:scroll,fixed}
footer address p:first-child{font-size:1.4em;border-bottom:1px solid #666;padding:5px}
footer a{color:#eee}
footer a:hover{color:#fff}
footer form{background:rgba(0,0,0,0.3);padding:1em 0.5em 0.5em;text-align:center}
.map{margin-top:1em}
iframe{max-width:100%}
.btn:hover {transform:scale(1.05)}

.social.fa{color:#369;font-size:30px}
.social.fa.fa-skype{color:#39f}
.social.fa.fa-instagram{color:#f03}
.social.fa.fa-whatsapp{color:#093}
.social.fa.fa-phone-square{color:#834995;/*transform:rotate(315deg)*/}
.social.fa.fa-vk{color:#369}
.social.fa.fa-facebook-square{color:#336}
.social.fa.fa-odnoklassniki{color:#c30}
.social.fa:hover{transform:scale(1.2)}

.animated, #service .fotoset a:hover::before, form.article:hover img{animation-name:zoomIn;animation-duration:1s;animation-fill-mode:both}
@keyframes zoomIn{from {opacity:0;transform:scale3d(.3,.3,.3)} 50%{opacity:1}}

#nav1,#nav2{font-size:2.4em;cursor:pointer;position:fixed;top:1vw;right:1vw;color:#337ab7;}
#nav2{top:calc(1em + 1vw);color:rgba(0,0,0,0.2);display:none}
#nav1:hover,#nav2:hover{color:#23527c;transform:scale(1.1)}
#nav, #nav li{display:block;margin:auto;padding:0}
#nav {height:100%;width:0;position:fixed;z-index:1;top:0;right:0;background:rgba(0,0,0,0.9);overflow-x:auto;transition:0.5s;padding-top:2em}
#nav a{padding:8px 1em;text-decoration:none;color:#ddd;display:block;transition:0.3s;border-bottom:1px solid rgba(255,255,255,0.05);text-align:right}
#nav a[href^="#"]{text-align:left}
#nav a[href^="#contact"]{border-bottom:1px solid rgba(255,255,255,0.2)}
#nav li:last-child a{border-bottom:0;}
#nav a:hover {color:#ff0;background:rgba(255,255,255,0.2)}
#nav .fa-times {position:absolute;top:0;right:0;font-size:1.2em;border-bottom:none}