@import url('https://fonts.googleapis.com/css?family=PT+Sans:400,700&subset=cyrillic-ext');

a {text-decoration:none; color:#ef0f25;}
a:hover {text-decoration:underline;}
body {font-family:"PT Sans"; color:#111; max-width:100%;}
ul {list-style-type:none; margin:0; padding:0;}
button {cursor:pointer;}
h1,h2,h3,h4,h5 {margin: 0;}
h1,.h1 {font-size: 48px; font-weight: bold;}
h2,.h2 {font-size: 36px; font-weight: bold;}
h3,.h3 {font-size: 24px; margin:10px 0;}
h4,.h4 {font-size: 24px; margin:15px 0;}

hr {height:3px; background:#d22622; border-width:0; margin-bottom:30px;}
hr.mini {height:1px; background:#e1e1e1; margin:10px 0;}

table {border-top:4px solid #e1e1e1; border-collapse:collapse; width:100%; min-width:700px; overflow:auto;}
thead {color:#797979; text-transform: uppercase;}
tr {border-top:1px solid #e1e1e1;}
tr:last-child {border-color:#d22622;}
td {padding:15px 0; text-align:right;}
td:first-child {text-align:left;}
td > p {margin: 0;}


.main, .moduletable.bg-color .custom {max-width:1500px; width:100%;}
.moduletable.bg-color {width:100vw; margin-left:-50vw;}

.breadcrumb {margin:20px 0;}
.breadcrumb .divider {margin:0 5px 0 3px;}
.padding_top_80 {padding-top:80px;}
.padding_bottom_80 {padding-bottom:80px;}
.padding_bottom_20 {padding-bottom:20px;}
.margin_top_40 {margin-top: 40px;}
.margin_top_80 {margin-top: 80px;}
.margin_bottom_40 {margin-bottom: 40px;}
.margin_bottom_80 {margin-bottom: 80px;}
.margin_bottom_20 {margin-bottom: 20px;}
.items:after {content:""; display:block; clear:both;}

.btn {transition: all 0.2s; overflow:hidden; color:#fff; background:transparent; border-width:2px; border-style:solid; text-transform:uppercase; font-weight:bold; padding:12px 25px; display:inline-block;}
.btn:hover {transition: all 0.2s; text-decoration:none;}

.btn-transparent {border-color:#fff;}
.btn-transparent:hover {background:rgba(255,255,255,0.2);}

.btn-order {color:#d22622; border-color:#d22622;}
.services .btn-order {background:#fff;}
.btn-order:hover {background:#d22622; color:#fff;}

.btn-more {background:#d22622; border-color:#d22622;}
.btn-more:hover {background:#ba1c18; border-color:#ba1c18;}

.btn-default {color:#111; border-color: #d7d7d7;}
.btn-default:hover {background:#f5f5f5;}

p .btn-default {display:block;}

.btn_next {background:#22d22e; color: #fff; border-color:#22d22e;}
.btn_next:hover {background:#25aa2e; border-color:#25aa2e;}

.services .btn {outline:solid 4px #fff;}


#body {overflow-x:hidden; background:#fff; display:flex; min-height:100vh; flex-direction:column;}
#header {background:#111; padding:20px 0;}
#header #logo {padding-right: 110px;}
#header .main {display:flex; flex-direction:row; position:relative; align-items: center;}
#header .main * {color:#fff; margin:0; padding:0;}
#header #top_menu, 
#footer .moduletable {flex:1 0 auto; display:flex; justify-content:center; order:1;}
#header #top_menu > ul > li,
#footer .moduletable > ul > li {display:inline-block;}
#header #top_menu > ul > li > a,
#footer .moduletable > ul > li > a {display:block; padding:0 15px;}
#header #header_items {order:2;}
#header #header_items .phone {font-size:24px;}
#header #header_items .select_city {position:absolute; left:190px; top:50%; transform: translate(0,-50%); padding-left:15px; border-left:1px solid #fff;}

#center {flex:1; position:relative; overflow:hidden;}
#center_middle {overflow: hidden;}

#bottom .custom.contacts {position:relative; overflow: hidden;}
#bottom .custom.contacts i, 
.kontakty .item-page i {width:30px; margin-right:5px;}

#footer {background:#111111; color:#7a7a7a;}
#footer a {color:#fff;}
#footer #author {font-size:14px; padding:10px 0;}
#footer #author a {color:#7a7a7a; text-decoration:underline;}
#footer #f_items .items {display:flex; align-items:center;}
#footer .items .moduletable:first-child {justify-content:flex-start; flex:0 0 250px; padding: 15px 0;}
#footer .items .moduletable:last-child {justify-content:flex-end; flex:0 0 250px;}
#footer .items .moduletable:last-child a {margin:0 10px;}
#footer #author .items .item:last-child {text-align:right;}

#center #top .top_slider .item:before,
#bottom .custom.contacts:before {content:""; position:absolute; left:0; top:0; right:50%; bottom:0; z-index:10;
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#d02621+0,d02621+100&1+0,0.85+100 */
background: -moz-linear-gradient(left, rgba(208,38,33,1) 0%, rgba(208,38,33,0.85) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left, rgba(208,38,33,1) 0%,rgba(208,38,33,0.85) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right, rgba(208,38,33,1) 0%,rgba(208,38,33,0.85) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d02621', endColorstr='#d9d02621',GradientType=1 ); /* IE6-9 */
}


#mobile_menu {background:#111;}
#mobile_menu a {color: #fff; display:block; padding:15px; width:100%; border}
#mobile_menu #mobile_top_menu a {border-bottom:1px solid #222;}
#mobile_menu .mcs-module {width:100%;}
#mobile_menu .city {background:#ef0f25; font-size:16px; border-bottom:none !important;}


/* modules */
#knet_popup_window {box-shadow: 0 0 15px 0 #333; max-width: 460px; width: 100%;}
#knet_popup_window input {width: 100%; padding:10px 15px; border: 1px solid #ccc;}
#knet_popup_window button {border: none; padding:10px 30px; font-size:16px; display:inline-block; color:#fff; background:#d22622;}

.home #center_middle {overflow: inherit;}

.top_slider p.h1 {margin-top: 0; margin-bottom:15px;}
.top_slider .item {position:relative; overflow: hidden;}
.top_slider .item > img {position:relative; z-index:5;}
.top_slider .text,
#bottom .custom.contacts .item:first-child {position:absolute; top:50%; right:50%; z-index:15; transform:translate(0,-50%); left:50%; margin-left:-750px; color:#fff; padding-right: 40px;}
.top_slider .info {font-size:24px; margin:20px 0;}

.moduletable.services .items {margin:0 -15px; display: flex; flex-wrap:wrap;}
.moduletable.services .items .item {padding:0 15px; display: flex; float:none;}
.moduletable.services .item-content {border:4px solid #e1e1e1; padding:10px 10px 30px; position:relative;}
.moduletable.services .description {color:#494949;}
.moduletable.services .price {font-size:24px; color:#d22622; font-weight:bold; margin:15px 0;}
.moduletable.services a {position:absolute; display:block; top:100%; transform:translate(0,-50%); left:10px;}

.bg-portfolio {background: #f2f2f2;}
.bg-portfolio h3 {margin: 0 auto; max-width: 1500px;}
.bg-portfolio .items,
.portfolio .blog .items {margin:0 -15px;}
.bg-portfolio .items .item, 
.portfolio .blog .items .item {padding:15px;}
.bg-portfolio .item-content,
.portfolio .blog .item-content {position: relative; display: flex;}
.bg-portfolio .item-content::after,
.portfolio .blog .item-content::after {content:""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.5);}
.bg-portfolio .review_text, 
.portfolio .blog .review_text {position: absolute; display: flex; flex-direction: column; justify-content: flex-end; border: 4px solid #fff; top: 30px; left:30px; right: 30px; bottom: 30px; box-sizing:border-box; z-index:2; color:#fff; transition: all .2s; padding: 35px 25px;}
.bg-portfolio .description-1,
.portfolio .blog .description-1 {flex: 1 1 100%; display: none;}
.bg-portfolio .description-2,
.portfolio .blog .description-2 {font-size:18px; margin-top: 5px;}
.bg-portfolio .item-content:hover .review_text,
.portfolio .blog .item-content:hover .review_text {background:#fff; color:#111111; transition:all .2s;}
.bg-portfolio .item-content:hover .description-1,
.portfolio .blog .item-content:hover .description-1 {display:block;}
.bg-portfolio .readmore {display:flex; justify-content:center;}

.clients .items {margin: 20px 0; display: flex; flex-wrap: wrap; border:solid #e1e1e1; border-width:3px 0 0 3px;}
.clients .item {border: solid #e1e1e1; border-width:0 3px 3px 0; padding:15px; float:none; display:flex; align-items: center; justify-content: center;}
.clients .readmore {position:relative;}
.clients a {color: #d22622; transition: all 0.2s; position:absolute; top:0; left:0; right:0; bottom:0; display: flex; align-items: center; justify-content: center;}
.clients a:hover {text-decoration:none; background:#e1e1e1; color:#333; transition: all 0.2s;}
.clients i {margin-left:10px; font-size:24px;}

.moduletable.calc {background:#f6f6f6; padding:60px 0 0 0;}
.custom.calc .item {padding:0 0 0 10px !important;}
.custom.calc .item:first-child {display:flex; justify-content:center; align-items:flex-end; flex:0 0 50%;}
.custom.calc .item:last-child {padding-left: 10px; position: relative;}
.custom.calc .item img {max-width: 410px;}
.custom.calc .item p {font-size: 20px; font-weight:bold; margin: 15px 0;}

.custom.calc .item:last-child:before,
.calculation .item:last-child:before {content: ""; position: absolute; background: url('/images/arrow_red.png'); z-index: 15; right: 100%; bottom: 95%; width: 135px; height: 55px;}

.calc_page h3 {border-bottom: 4px solid #e1e1e1; padding-bottom: 10px;}
.calc_page label {display:block; margin: 5px 0;}
.calc_page .buttons {margin: 40px 0;}
.calc_page .price {color: #898989; font-weight:400;}

.calc_page .item table {border-top: 0; max-width:1200px;}
.calc_page .item thead tr {border-top: 0;}
.calc_page .item tr {border-color: #e1e1e1;}
.calc_page .item td:nth-child(2) {text-align: left;}
.calc_page p {margin: 1em 0;}
.calc_page .item td {padding:0; vertical-align:top;}

.calc_page .item thead td {padding: 15px 0;}
.calc_page .item:first-child label {position: relative; display:inline-block; width:33%; padding: 0 10px; }
.calc_page .item:first-child .fields label:first-child:after {background:url('/images/calc_page/1.jpg') no-repeat;}
.calc_page .item:first-child .fields label:nth-child(2):after {background:url('/images/calc_page/2.jpg') no-repeat;}
.calc_page .item:first-child .fields label:last-child:after {background:url('/images/calc_page/3.jpg') no-repeat;}
.calc_page .item:first-child .fields label:after {margin-top:20px; background-repeat:no-repeat; background-size:contain; content:''; display:block; height: 350px;}

.portfolio .items {margin:0 -15px;}
.portfolio .items .item {padding:15px;}

#center #right {padding-left: 20px; width: 490px;}
#center #right .moduletable {width: 100%;}
.moduletable.calc_right {background: #f6f6f6; padding: 50px 25px 0 !important; position: relative;}
.moduletable.calc_right img {max-width: 200px; margin-top: 15px;}
.moduletable.calc_right:before {content: ""; position: absolute; background: url('/images/arrow_green.png'); z-index: 5; right: 100%; bottom: 100%; width: 135px; height: 55px; transform: translate(50%,50%);}

.uslugi #center_middle {padding-bottom: 40px;}
.uslugi #center_middle h3 a {text-decoration:underline;}

.moduletable.text {margin: 80px 0;}
.moduletable.text ul {list-style-type: square; padding-left: 20px;}
.custom.text_column_2 {column-count: 2; column-gap: 60px;}

@media screen and (max-width: 1500px) {
h1,.h1 {font-size: 36px; font-weight: bold;}
h2,.h2 {font-size: 30px; font-weight: bold;}
h3,.h3 {font-size: 24px;}
h4,.h4 {font-size: 16px;}

.main{min-width: auto; max-width:none !important; padding: 0 10px;}
.bg-color {overflow: hidden; margin-left: -10px !important; margin-right:-10px; left: 0 !important; max-width: none; min-width: auto; width: auto !important;}

.top_slider .text,
#bottom .custom.contacts .item:first-child {margin-left:-685px;}

.bg-portfolio h3 {margin: 0 15px; max-width: 1500px;}
.bg-portfolio .item-content:hover .description-1,
.portfolio .blog .item-content:hover .description-1 {display:none;}
.bg-portfolio .item-content,
.portfolio .blog .item-content {display:block;}
}
@media screen and (max-width: 1400px) {
.top_slider .text,
#bottom .custom.contacts .item:first-child {margin-left:-585px;}
}

@media screen and (max-width: 1200px) {
.margin_top_80 {margin-top: 40px;}	
	
#header .main {display: block;}
#header #logo {float:right; padding-right:0;}
#header .hamburger {display:block;}
#header .hamburger {background:transparent;}

#center #right {display:none;}

.top_slider .text,
#bottom .custom.contacts .item:first-child {margin-left:-500px;}
#footer {text-align:center;}
#footer a {display:inline-block; padding: 5px 15px !important;}
#footer #f_items .items {flex-direction:column;}
#footer .moduletable {padding: 0 10px !important;}
#footer .items .moduletable:first-child,
#footer .items .moduletable:last-child {flex:0 0 auto; padding: 10px 0;}
#footer .items .moduletable:last-child a {margin:0 10px;}
}

@media screen and (max-width: 1000px) {
.top_slider .item > img {display:none;}
.top_slider,
#bottom .custom.contacts {background:rgba(208,38,33,1);}
.top_slider .text,
#bottom .custom.contacts .item:first-child {position:static; transform:none; margin-left:0; z-index: 15; padding: 15px;}
.top_slider .info {font-size:18px; margin:20px 0;}
#center #top .top_slider .item:before,
#bottom .custom.contacts:before {display:none;}
#footer .items.col-3 > .item {width:100% !important;}
#footer .footer-menu {display:none;}
#footer #author .items .item:last-child {text-align: center;}
.calc_page .item:first-child label {width:100%; padding: 0;}
#printableArea {overflow-x:scroll;}
}

@media screen and (max-width: 900px) {
.items.col-5 > .item, 
.items.col-4 > .item, 
.items.col-3 > .item {width:50% !important;}

.moduletable.services .items .item {margin-bottom:50px;}
.moduletable.services .item-content {flex:50%; text-align:center;}
.moduletable.services a {transform:translate(-50%,-50%); left:50%;}
}
@media screen and (max-width: 700px) {
.moduletable.calc {background:#f6f6f6; padding-top:20px;}
.calculation.items.col-2 {display:flex; flex-direction:column-reverse;}
.calculation.items.col-2 > .item {width:100% !important; padding:10px; text-align:center;}
.custom.text_column_2 {column-count: 1;}
}
@media screen and (max-width: 600px) {
.btn {margin-top:10px; margin-bottom:10px; padding:10px 15px;}
.btn-order {margin: 0;}
}
@media screen and (max-width: 500px) {
.clients a {padding: 40px auto; position:static;}
.items.col-5 > .item, 
.items.col-4 > .item, 
.items.col-3 > .item,
.items.col-2 > .item {width:100% !important;}
}
