/*@media screen and (min-width: 1920px){
    body {
        max-width: 1920px;
        margin: 0 auto;
    }
}*/

@media screen and (max-width: 1366px) {
    #body.triple-col > section {
        width: calc(100% - 320px);
    }
    #body.triple-col > section + aside {
        display: none;
    }
}


@media screen and (max-width: 1550px) {
    .main_horizontal_banner .html_block{
        padding-top: 35px;
    }
}
@media screen and (max-width: 1499px) {

    .promo .form-title-block{
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 20px;
    }
    .promo .form-title-block .title{
        margin-bottom: 15px;
    }
    .promo .form-title-block .row > div{
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    .promo .form-content{
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    .copyright{
        font-size: 12px;
        line-height: 18px;
    }

}
@media screen and (max-width: 1399px) {
    /*.banners .left-banner{
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    .banners .right-banner{
        display: none;
    }*/
}
@media screen and (max-width: 1300px) {

    .mainpage-about-utp-block .number{
        display: block;
        margin: 0 0 5px 0;
        line-height: 55px;
    }
    .mainpage-about-utp-block .text{
        margin: 0 0 0 0;
        display: block;
    }
}
@media screen and (max-width: 1199px) {
    .mainpage-about-utp-block{
        margin-top: 0;
    }
}
@media screen and (max-width: 991px) {
    .hide-991{
        display: none;
    }
    .mainpage-about-utp{
        padding-bottom: 25px;
    }
}
@media screen and (max-width: 767px) {
    .mainpage-about-utp{
        padding: 25px 0 25px 0;
    }
    .mainpage-about-utp-block .number{
        font-size: 40px;
        line-height: 40px;
    }
    .mainpage-about-utp-block .text{
        font-size: 16px;
        line-height: 22px;
    }
}
@media screen and (max-width: 575px) {
    .mainpage-about-utp-block{
        margin-bottom: 20px;
        text-align: center;
    }
    .mainpage-about-utp-block .text br{
        display: none;
    }
}


@media screen and (max-width: 1049px) and (min-width: 1024px) {
    .bx-filter-properties {
        float: none;
        width: 100%;
    }

    .bx-filter-result.active {
        float: none;
        margin-top: 10px;
        margin-left: 0;
    }
}

@media screen and (max-width: 729px){
    .bx-filter-properties {
        float: none;
        width: 100%;
    }

    .bx-filter-result.active {
        float: none;
        margin-top: 10px;
        margin-left: 0;
    }
}

@media screen and (max-width: 659px){
    .bx-filter-properties {
        width: 380px;
        margin: 0 auto;
    }
    .bx-filter-properties > div:nth-child(2n){
        margin-right: 0;
    }
    .bx-filter-title {
        text-align: center;
    }
    .bx-filter-result.active {
        margin: 10px auto 0
    }
}

@media screen and (max-width: 441px){
    .bx-filter-properties {
        width: 100%;
    }
    .bx-filter-properties .bx-filter-parameters-box .bx-filter-parameters-box-title {
        font-size: 16px;
        min-width: 130px;
        width: calc(100% - 20px);
    }
    .bx-filter-properties > div {
        width: calc(50% - 10px);
    }
}

@media screen and (max-width: 379px){
    .bx-filter-properties > div {
        width: 100%;
        margin-right: 0;
        float: none;
    }
    .bx-filter-block {
        width: calc(100% - 62px);
    }
}

@media screen and (max-width: 1279px) {


}
@media screen and (max-width: 1135px) {
    .section_features > a {
        font-size: 11px;
    }
}

@media screen and (max-width: 1499px){
    .product-block .text{
        height: 80px;
        font-size: 18px;
        line-height: 20px;
        font-weight: bold;
    }
}
@media screen and (max-width: 767px){
    .product-slider-list .container{
        margin-bottom: 0;
    }
}

@media screen and (max-width: 575px){
    .product-slider-list h2{
        font-size: 23px;
        padding-top: 10px;
    }
}



@media screen and (max-width: 991px){
    .work-stages h2{
        margin-bottom: 30px;
    }
    .advantages-block {
        margin-bottom: 30px;
    }
    .advantages-block h2{
        margin-bottom: 25px;
    }
    .mainpage-about-utp{
        margin-bottom: 30px;
    }
    .about-main h1, .about-main .h1, .about-main h2{
        margin-bottom: 25px;
    }
    .about-main {
        margin-bottom: 30px;
    }
    .about-main blockquote{
        padding-left: 55px;
    }
    section .banners > .right {
        display: block;
    }
    section .banners > .left {
        width: 78.71%;
    }



    #body > aside:first-child {
        position: absolute;
        top: 0;
        left: 0;
        margin-left: -300px;
        transition: margin 0.3s;
        width: 270px;
    }
    #body > section {
        width: 100% !important;
        margin-left: 0;
    }
    .special_elements_header .arrows {
        display: none;
    }
    .mainpage-about .content .metrics {
        display: none;
    }
    .mainpage-about .content .text {
        width: 100%;
    }
    #menu .switcher a {
        /*line-height: 40px;
        border-bottom: 1px solid #e1e1e1;*/
    }
    footer .info {
        display: none;
    }

    .section_features > a:before {
        font-size: 1.7vw;
    }


    .mobile-menu{
        display: none;
        position: fixed;
        top: 0;
        background: #fff;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 999;
        padding: 65px 15px 20px 15px;
        overflow: auto;
        height: 100%;
    }
    .mobile-close-menu{
        width: 30px;
        height: 30px;
        position: absolute;
        right: 22px;
        top: 20px;
    }
    .mobile-menu .citysel{
        display: inline-block;
        vertical-align: top;
        margin-top: 10px;

    }

    .mobile-menu time-work{
        display: block;
        float: none;
    }
    header .mobile-menu .auth{
        display: inline-block;
    }
    .mobile-menu .auth{
        margin: 2px 0 0 0;
        width: 130px;
    }
    .mobile-menu .topmenu{
        display: block;
        float: none;
        clear: both;
        margin-bottom: 15px;
    }
    .mobile-menu .topmenu ul li{
        margin-right: 0;
        float: none;
        border-bottom: 1px solid #004288;
    }
    .mobile-menu .topmenu a{
        font-size: 16px;
        display: block;
        line-height: 40px;
    }
    .mobile-menu .phone{
        display: block;
        width: auto;
        margin-right: 15px;
        padding-left: 0;
    }
    .mobile-menu .phone a{
        font-size: 20px;
        line-height: 23px;
        color: #333;
    }
    .mobile-menu .time-work{
        display: block;
        width: auto;
        font-size: 14px;
        text-align: left;
        float: none;
        clear: both;
        margin: 0 0 15px 0;
        padding: 0 0 0 0;
    }
    .mobile-catalog{
        display: block;
        background: #004288;
        color: #ffffff;
        font-size: 15px;
        /*font-family: 'RotondaC';*/
        font-family: Roboto;
        font-weight: bold;
        padding: 10px 15px;
        margin-bottom: 15px;
        position: relative;
    }
    .mobile-catalog:before{
        content: "";
        position: absolute;
        right: 15px;
        top: 17px;
        width: 15px;
        height: 10px;
        background: url(/bitrix/templates/pgsnew_v2_0/images/arrow-w.svg) no-repeat;
        -webkit-background-size: 100% 100%;
        background-size: 100% 100%;
    }
    .mobile-catalog.active:before{
        transform: rotate(-180deg);
    }

    .aside-left #menu{
        display: none;
    }

}

@media screen and (max-width: 768px){

    /*.mobile-catalog {
        display: none;
    }

    .aside-left #menu{
        display: none;

        position: fixed;
        top: 80px;
        bottom: 0;
        z-index: 10;
        overflow-y: scroll;

        left: 0;
        right: 0;
    }*/
}


@media screen and (max-width: 799px) {




    .mainpage-about .content ~ div:not(.tabs) ol li {
        padding-left: 20px;
    }
    .mainpage-about .content ~ div:not(.tabs) > div:not(:last-child) {
        width: calc(50% - 10px);
    }
    .mainpage-about .content ~ div:not(.tabs) > div:nth-child(2) {
        margin-right: 10px;
    }
    .mainpage-about .content ~ div:not(.tabs) > div:nth-child(4) {
        margin-left: 10px;
    }
    .mainpage-about .content ~ div:not(.tabs) > div:nth-child(5) {
        display: none;
    }
    .mainpage-about h2 {
        font-size: 20px;

    }
    footer .additional .wrapper {
        display: block;
    }
    footer .additional .wrapper > .features {
        display: none;
    }
    footer .additional .wrapper > div {
        float: none;
        margin: 0 auto;
    }
    footer .additional .wrapper > div:first-child > div:first-child {
        display: none;
    }
}
@media screen and (max-width: 767px){
    .work-stages{
        margin-bottom: 30px;
    }
    .main_horizontal_banner .html_block{
        position: relative;
        max-width: 100%;
        height: auto;
        padding: 20px 75px 20px 15px;
    }
    .main_horizontal_banner .slick-dots{
        display: none !important;
    }
    .main_horizontal_banner .html_block .heading{
        font-size: 25px;
        line-height: 29px;
        max-height: inherit;
    }
    .main_horizontal_banner .html_block .text{
        max-height: inherit;
        font-size: 15px;
        line-height: 20px;
    }
    .banner-main .slick-slider .slick-arrow.slick-next{
        top: auto;
        bottom: 15px;
        width: 45px;
        height: 45px;
    }
}

@media screen and (max-width: 700px) {
    .section_features {
        display: block;
        height: auto;
    }
    .section_features > a {
        display: block;
        width: calc(100% - 70px);
        font-size: 3vw;
    }
    .section_features > a:not(:last-child) {
        margin-bottom: 20px;
    }
}

@media screen and (min-width: 480px) {
    .mainpage-about .tabs {
        display: none;
    }
}
@media screen and (min-width: 320px) and (max-width: 479px){



    #body > section > .banners {
        display: none;
    }

    .mainpage-about h2 {
        display: none;
    }
    .mainpage-about .tabs {
        display: flex;
        justify-content: space-around;
    }
    .mainpage-about .tabs label {
        text-align: center;
        color: #004288;
        font-weight: bold;
        font-size: 18px;
        line-height: 44px;
        position: relative;
    }
    .mainpage-about .tabs label.active:after {
        content: '';
        width: 100%;
        height: 4px;
        background: red;
        position: absolute;
        bottom: 5px;
        left: 0;
    }

    #breadcrumbs {
        margin-top: 20px;
    }

    .section_list.list .section {
        width: 145px;
    }
    .section_list.list .section .image {
        width: 150px;
    }
    .section_features > a:before {
        height: 50px;
    }
    .section_features > a {
        line-height: 50px;
    }
}

@media screen and (max-width: 1499px){
    .promo:before{
        bottom: 15px;
    }
}

@media screen and (max-width: 991px){
    .promo .agree{
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 767px){
    .promo{
        padding: 30px 0 80px 0;
    }
    .promo .checkboxes:after{
        content: "";
        display: table;
        width: 100%;
        clear: both;
    }
    .promo .checkbox{
        float: left;
        margin-right: 30px;
    }
    .promo .checkbox:last-child{
        margin-right: 0;
    }
    .promo .btn.submit{
        display: block;
        max-width: 300px;
        padding-left: 0;
        padding-right: 0;
        margin: 0 auto;
    }
}

@media screen and (max-width: 1599px){
    footer .info .contacts .row > div{
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    footer .contacts .block {
        margin-bottom: 10px;
    }
}
@media screen and (min-width: 1200px) and (max-width: 1450px){
    .info-logo-soc > div{
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }
}

@media screen and (max-width: 1199px) {
    .logo-footer{
        margin-bottom: 30px;
    }
    .socnet a {
        margin: 0 10px 10px 0;
    }
}

@media screen and (max-width: 991px) {
    .footer {
        padding: 0 0 15px;
    }
    .logo-footer{
        margin: 0 auto 15px;
        width: 250px;
    }
    footer .menu, .copyright{
        display: none;
    }
    .socnet{
        text-align: center;
    }
    .socnet a {
        float: none;
        display: inline-block;
        vertical-align: top;
    }
}

.img-responsive {
    width: 100%;
    height: auto;
}