@charset 'UTF-8';

html
{
    height: 100%;
}

body
{
    font-family: 'Roboto', sans-serif;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    min-height: 100%;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
}

header + .container
{
    -webkit-box-flex: 2;
    -ms-flex-positive: 2;
    flex-grow: 2;
}

*,
*:hover,
*:focus
{
    outline: none !important;
}

a:hover
{
    text-decoration: none;
}

.black-bg
{
    background: #212121;
}

.inset
{
    max-width: 100%;
}

.errortext,
.red
{
    color: #f1161e;
}

a.red:hover
{
    color: #f1161e;
}

.white
{
    color: #fff;
}

.white-bg
{
    background: #fff;
}

.graylight-bg
{
    background-color: #f5f5f5;
}

.gray
{
    opacity: .5;
}

.green
{
    color: #008c28;
}

.success
{
    margin-bottom: 10px;

    text-align: center;

    color: green;
}

.error
{
    margin-bottom: 10px;

    text-align: center;

    color: red;
}

img.slick-slide
{
    height: auto;
}

.slick-arrow
{
    position: absolute;
    z-index: 9;
    top: 50%;

    width: 32px;
    /*background: no-repeat url(/images/slider-arrows.png) left center #ffffff;*/
    height: 64px;
    margin-top: -32px;

    cursor: pointer;
    text-indent: -9999px;

    border: none;
    -webkit-box-shadow: 0 2px 32px rgba(0, 0, 0, .5);
            box-shadow: 0 2px 32px rgba(0, 0, 0, .5);
}

.slick-prev.slick-arrow
{
    left: 0;

    border-radius: 0 32px 32px 0;
}

.slick-next.slick-arrow
{
    right: 0;

    border-radius: 32px 0 0 32px;
    background-position: right center;
}

.clients-slider-area
{
    margin-top: 45px;
    margin-bottom: 50px;
}

.slick-vertical .slick-arrow
{
    top: auto;
    right: auto;
    left: 50%;

    width: 60px;
    height: 60px;
    margin: 0 0 0 -30px;

    background: no-repeat url(/images/slider-arrows-v.png) 0 center transparent;
}

.slick-vertical .slick-prev.slick-arrow
{
    top: -17px;

    background-position: center top;
}

.slick-vertical .slick-next.slick-arrow
{
    bottom: -44px;

    background-position: center bottom;
}

.slick-dots
{
    position: absolute;
    right: 0;
    bottom: 30px;
    left: 0;

    margin: 0;
    padding: 0;

    list-style: none;

    text-align: center;
}

.slick-dots > li
{
    display: inline-block;

    margin: 0 5px;
}

.slick-dots > li > button
{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 10px;
    height: 10px;
    padding: 0;

    cursor: pointer;
    text-indent: -9999px;

    border: 1px solid #fff;
    border-radius: 6px;
    background: none;
    -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .2);
            box-shadow: 0 0 5px rgba(0, 0, 0, .2);
}

.slick-dots > li.slick-active > button
{
    background: #fff;
}

.btn
{
    font-size: inherit;
	border-radius: 0;

    -webkit-transition: all .2s ease-out;
            transition: all .2s ease-out;
}

.btn-primary
{
    border-color: #f1161e;
    background-color: #f1161e;
}


.btn-primary:active,
.btn-primary:hover,
.btn-primary:active:hover,
.btn-primary:focus
{
    border-color: #f1161e;
    background-color: #f1161e;
}

.btn-primary.disabled,
.btn-primary:disabled
{
    opacity: .8;
    color: #fff;
    border-color: #f1161e;
    background-color: #f1161e;
}

.btn-secondary
{
    color: #000;
    border-color: #d4d4d4;
    background-color: #d4d4d4;
}

.btn-dark
{
    font-weight: 500;

    text-transform: uppercase;

    color: #513237;
    border-color: #dcd6d6;
    background-color: #dcd6d6;
}

.btn-dark:active,
.btn-dark:hover,
.btn-dark:active:hover,
.btn-dark:focus
{
    color: #513237;
    border-color: #dcd6d6;
    background-color: #dcd6d6;
}

.btn-light
{
    font-weight: 500;

    color: #513335;
    border-color: #e8e8e8;
    border-radius: 0;
    background-color: #e8e8e8;
}

.btn-light:active,
.btn-light:hover,
.btn-light:active:hover,
.btn-light:focus
{
    color: #513335;
    border-color: #ece9da;
    background-color: #ece9da;
}

.btn-lg,
.btn-group-lg > .btn
{
    font-size: 18px;

    padding: 9px 25px 8px 26px;
}

.mt-142
{
    margin-top: 142px;
}

.mb-142
{
    margin-bottom: 142px;
}

.mb-152
{
    margin-bottom: 152px;
}

.hidden
{
    display: none;
}

.custom-select
{
    padding: .375rem 2.2rem .375rem .75rem;

    cursor: pointer;

    background: #fff url('data:image/svg+xml;charset=utf8,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 -10 17 28\'%3E%3Cpath fill=\'%23000000\' fill-opacity=\'0.7\' d=\'M5.41 0.590088L10 5.17009L14.59 0.590088L16 2.00009L10 8.00009L4 2.00009L5.41 0.590088Z\'/%3E%3C/svg%3E') no-repeat right .75rem center;
}

.custom-select:focus,
.custom-select.active
{
    background: #fff url('data:image/svg+xml;charset=utf8,%3Csvg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 -10 14 28\'%3E%3Cpath fill=\'%23F1161E\' fill-opacity=\'1\' d=\'M10.59 7.40991L6 2.82991L1.41 7.40991L1.23266e-07 5.99991L6 -8.82626e-05L12 5.99991L10.59 7.40991Z\'/%3E%3C/svg%3E') no-repeat right .75rem center;
}

/**************************************************************/
.logo
{
    line-height: 1;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: 43px;

    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.logo > img
{
    height: 43px;
    margin-right: 10px;
}

.logo > span
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
        flex-direction: column;

    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.logo .logo-name
{
    font-size: 16px;
    font-weight: 500;

    color: #000;
}

.logo .logo-slogan
{
    font-size: 12px;

    color: rgba(0, 0, 0, .54);
}

header
{
    margin-bottom: 16px;
    padding: 20px 0;
}

.header-phone
{
    font-size: 17px;
    font-weight: bold;
    line-height: normal;
}

.header-email
{
    font-size: 15px;

    letter-spacing: .25px;

    color: rgba(0, 0, 0, .64);
}

header .fa-bars
{
    color: #000;
}

.misccall > a
{
    display: inline-block;

    width: 21px;
    height: 21px;
	font-size: 17px;
    text-align: center;

    color: #fff;
    background: #f1161e;
}

.misccall > a + a
{
    margin-left: 7px;
}

footer
{
    padding: 30px 0 50px;
}

.copy-right
{
    font-size: 18px;
}

.copy-right .red
{
    font-weight: 500;
}

.copy-left
{
    font-size: 14px;

    color: rgba(0, 0, 0, .7);
}

.mob-menu.home
{
    display: none;
}

.menu
{
    margin: 28px 0 0;
    padding: 0;

    list-style: none;
}

.left-menu li
{
    display: block;
}

.left-menu > li
{
    display: block;

    margin-bottom: 30px;
}

.left-menu li > ul
{
    display: none;
}

.left-menu li.active > ul
{
    display: block;
}

.left-menu a
{
    font-size: 18px;

    color: rgba(0, 0, 0, .87);
}

.left-menu a.active:not(.is_parent)
{
    color: #f1161e;
}

.left-menu > li > ul > li
{
    margin-bottom: 7px;
}

.left-menu > li > ul > li > a
{
    font-size: 17px;

    color: rgba(0, 0, 0, .57);
}

.left-menu .level-2
{
    margin-top: 14px;

    border-left: 1px solid #bdbdbd;
}

.homepage .col.main
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    height: calc(100vh - 200px);
    min-height: 500px;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.mainpage-menu
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    height: 420px;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f1161e+0,f1161e+100&1+0,0+68 */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */

    background: radial-gradient(ellipse at center, rgba(241, 22, 30, 1) 0%, rgba(241, 22, 30, 0) 68%, rgba(241, 22, 30, 0) 100%);

    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f1161e', endColorstr='#00f1161e', GradientType=1);
    /* IE6-9 fallback on horizontal gradient */
}

.mainpage-menu > div
{
    width: 50%;
    height: 50%;
    padding: 1px;
}

.mainpage-menu > div > a
{
    font-size: 25px;
    font-weight: 500;
    line-height: normal;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    height: 100%;

    text-align: center;

    color: rgba(0, 0, 0, .87);
    background: #fff;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.mainpage-menu > div > a > span
{
    display: inline-block;

    max-width: 200px;
}

.mainpage-menu > div > a:hover
{
    color: #f1161e;
}

.red-hr
{
    height: 2px;
    margin-bottom: 24px;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f1161e+0,f1161e+100&1+0,0+100 */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */

    background: -webkit-gradient(linear, left top, right top, from(rgba(241, 22, 30, 1)), to(rgba(241, 22, 30, 0)));
    background: linear-gradient(to right, rgba(241, 22, 30, 1) 0%, rgba(241, 22, 30, 0) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f1161e', endColorstr='#00f1161e', GradientType=1);
    /* IE6-9 */
}

.plan-detail
{
    font-size: 18px;

    color: rgba(0, 0, 0, .87);
}

.plan-detail a
{
    font-weight: 600;

    text-decoration: underline;

    color: rgba(0, 0, 0, .87);
}

.plan-detail a:hover
{
    text-decoration: none;
}

.plan-detail a.btn
{
    text-decoration: none;

    color: #fff;
    border-radius: 0;
}

.main_header1
{
    font-size: 24px;
    font-weight: 700;
    margin-top: 10px;
    color: #f1161e;
    display: block;
}

.main_header2
{
    font-size: 20px;
    margin-top: 10px;
    font-weight: 700;
}
.main_header3 {
    font-weight: 700;
}
.cont_header1 {
    font-weight: 700;
    margin-top: 10px;
    color: #f1161e;
    display: block;
}
.cont_header2 {
    padding-left: 20px;
}
.cont_header3 {
    padding-left: 40px;
}
.plan-detail
{
    text-align: justify;
}

.plan-detail table,
.plan-detail table td,
.plan-detail table th
{
    width: auto !important;

    border: 1px solid lightgray;
}

.plan-detail table td,
.plan-detail table th
{
    padding: 5px 10px;
}

.plan-detail table th
{
    background: #e6e6e6;
}

.plan-detail table tr > td:last-child {
    text-align: center;
}

.custom-select.form-control:disabled,
.custom-select.form-control[readonly]
{
    background-color: #fff;
}

.input-price-area
{
    position: relative;
}

.input-price-form
{
    position: absolute;
    z-index: 2;
    top: 52px;

    display: none;

    width: 390px;
    max-width: 100vw;
    padding: 25px 20px 35px;

    background: #fff;
    -webkit-box-shadow: 0 0 4px rgba(0, 0, 0, .25);
            box-shadow: 0 0 4px rgba(0, 0, 0, .25);
}

.input-price-form:before
{
    position: absolute;
    top: -13px;
    left: 50%;

    display: block;

    width: 15px;
    height: 14px;
    margin-left: -7px;

    content: '';

    background: no-repeat url(/images/trangle-up.png) center transparent;
}

.input-price-text.active + .input-price-form
{
    display: block;
}

.plan-list
{
    font-size: 12px;
    font-weight: 400;
}

.plan-list thead
{
    font-weight: 100;

    color: #fff;
    background: #f1161e;
}

.plan-list .plan-item-name
{
    font-weight: 500;

    text-decoration: underline;

    color: #000 !important;
}

.plan-list th
{
    padding-top: 10px;
    padding-bottom: 10px;
}

.plan-list th,
.plan-list td
{
    padding-right: 12px;
    padding-left: 12px;
}

.plan-list td
{
    padding-top: 15px;
    padding-bottom: 15px;

    border: 1px solid #e0e0e0;
}

.plan-list .currency.fas
{
    font-size: 11px;

    opacity: .8;
}

.redsquare,
.plan-detail ul
{
    margin: 0;
    padding: 0;

    list-style: none;
}

.redsquare > li,
.plan-detail ul > li
{
    position: relative;

    margin: 0 0 10px 25px;
    padding: 0 0 0 20px;
}

.redsquare > li:before,
.plan-detail ul > li:before
{
    position: absolute;
    top: 8px;
    left: 2px;

    display: block;

    width: 8px;
    height: 8px;

    content: '';
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);

    background: #f1161e;
    border: 4px solid #f1161e;
}

.imginromb
{
    line-height: 84px;

    width: 90px;
    height: 90px;
    margin: 0 auto 10px;

    text-align: center;

    background: no-repeat url(/images/chto-vkhodit-v-paket-bg.png) center / cover;
}

.chto-vkhodit-v-paket
{
    font-size: 16px;
    font-weight: 500;

    margin-bottom: 40px;

    text-align: center;

    color: #000 !important;
}

.chto-vkhodit-v-paket > small
{
    font-weight: 300;

    display: block;

    text-align: center;

    opacity: .5;
}

.navigation-pages
{
    margin-top: 10px;
    padding: .25rem .5rem;
}

.navigation-pages a
{
    color: #513335;
}

.contacts__info-wrapper
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 45px;
}

.contacts__info
{
    margin-right: 60px;
}

.contacts__info > div
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 15px;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.contacts__info > div:last-child
{
    margin-bottom: 0;
}

.contacts-info__item > i
{
    font-size: 22px;

    margin-right: 15px;

    color: #f1161e;
}

.contacts-info__item > i.fa-phone
{
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
}

.contacts-info__item > a
{
    color: #121212;
}

.contacts-info__item > a:hover
{
    color: #f1161e;
}

.contacts__schedule > p
{
    margin-bottom: 5px;
}

.contacts__schedule > p:last-child
{
    margin-bottom: 0;
}

.contacts__addresses
{
    margin-bottom: 30px;
}

.contacts__addresses > p
{
    margin-bottom: 10px;
}

.contacts__addresses > p:last-child
{
    margin-bottom: 0;
}

.contacts__map
{
    height: 454px;
}

.modal
{
    max-width: 450px !important;
}

.modal .title
{
    font-weight: bold;

    text-align: center;
}

.modal form
{
    width: 100%;
}

.modal form > div
{
    width: 100%;
}

.modal form > div input,
.modal form > div textarea
{
    width: 100%;
}

.modal__close
{
    font-size: 11px;

    position: absolute;
    top: 5px;
    right: 5px;

    color: #848484;
}

.modal__content
{
    padding: 25px 50px;
    max-height: calc( 100vh - 230px );
    overflow: auto;
}

.form-control
{
    border-radius: 0;
}

.header-search-submit
{
    border-radius: 0;
}

.custom-select
{
    border-radius: 0;
}

.gallery-item {
    display: block;
    margin-bottom: 30px;
    text-align: center;
}
.gallery-item > img {
    max-width: 100%;
    height: auto;
}
h2{
	color: #F1161E !important;
	margin-top: 10px;
	margin-bottom: 5px !important;
}
.our-project-table td{
	padding: 5px 25px 5px 0;
}

.mainpage-menu > div:nth-child(2n+1) > a {
	    text-align: right !important;
}

.mainpage-menu > div:nth-child(2n) > a {
	    text-align: left !important;
}
.mainpage-menu > div:nth-child(2n+1) > a span{
	    width: 200px;
}
.mainpage-menu > div:nth-child(2n) > a span{
	    width: 200px;
}
.left-menu a:hover{
	color:#f1161e;
}
.our-project-table th, td {padding: 20px 15px !important;}
.our-project-table tr {padding: 25px 05px !important;}
.our-project-table td {text-align: justify !important;}
.our-project-table td {padding-right: 50px !important;}


.copy-right{
	text-align: right !important;
}

.active > a{
	color: #F1161E !important;
}


.right-contac-block, .google-map-btn {
	text-align: right;
}
.right-contact{
	font-size: 16px;
    line-height: 26px;
}
.graffic-raboti{
	padding-bottom: 10px;
}
.contacts-info__item{
	margin-bottom: 5px;
}
.level-3{
	padding-left: 20px;

}
.level-3 li a {
	font-size: 17px;
	color: grey;




@media (max-height: 780px) {
.mainpage-menu, .mainpage-menu a{
	height: 250px;
	font-size: 15px;
}

.right-contac-block, .google-map-btn {
	text-align: left !important;
	}
.google-map-btn{
	margin-top:10px;
	}
.red .right-contac-block{
	margin-top:10px;
	}
}




