/**
* Visibility control 
*/
.g-lg-visible,
.g-md-visible,
.g-sm-visible,
.g-xs-visible {
    display: none !important;
}

@media only screen and (min-width : 1200px) {
    .g-lg-visible {
        display: block !important;
    }

    .g-lg-visible_inline {
        display: inline !important;
    }

    .g-lg-visible_inline-block {
        display: inline-block !important;
    }

    .g-lg-hidden {
        display: none !important;
    }
}

@media only screen and (max-width : 1199px) and (min-width : 992px) {
    .g-md-visible {
        display: block !important;
    }

    .g-md-visible_inline {
        display: inline !important;
    }

    .g-md-visible_inline-block {
        display: inline-block !important;
    }

    .g-md-hidden {
        display: none !important;
    }
}

@media only screen and (max-width : 991px) and (min-width : 768px) {
    .g-sm-visible {
        display: block !important;
    }

    .g-sm-visible_inline {
        display: inline !important;
    }

    .g-sm-visible_inline-block {
        display: inline-block !important;
    }

    .g-sm-hidden {
        display: none !important;
    }
}

@media only screen and (max-width : 767px) {
    .g-xs-visible {
        display: block !important;
    }

    .g-xs-visible_inline {
        display: inline !important;
    }

    .g-xs-visible_inline-block {
        display: inline-block !important;
    }

    .g-xs-hidden {
        display: none !important;
    }
}

/** 
* Media Styles 
*/
@media only screen and (max-width : 1199px) {
    .l-wrapper {
        width: 940px;
    }

    .b-footer__col_1 {
        padding-right: 10px;
    }

    .b-footer__col_2 {
        width: 19%;
        margin-left: 8%;
    }

    .b-main-banner__bg {
        transform: none !important;
    }
}

@media only screen and (max-width : 991px) {
    body {
        padding-top: 85px;
    }

    .l-wrapper {
        width: 720px;
    }

    .b-header__top {
        padding: 12px 0;
    }

    .b-phones {
        font-size: 15px;
        letter-spacing: 0;
    }

    .b-phones__item {
        margin-left: 4px;
    }

    .b-header__logo {
        margin: -13px 0 -7px -7px;
    }

    .b-logo__img {
        width: 190px;
    }

    .b-nav__item {
        margin-right: 20px;
    }

    .b-nav__link {
        font-size: 15px;
        letter-spacing: 0;
    }

    .b-nav__dropdown {
        font-size: 15px;
        line-height: 20px;
    }

    .b-nav__subnav-list-item {
        margin-bottom: 6px;
    }

    .b-header__btns-content {
        font-size: 15px;
        letter-spacing: 0;
        margin-top: 4px;
    }

    .b-header__email-field {
        margin-left: 20px;
    }

    .b-header__call-field {
        margin-left: 20px;
    }

    .b-btns-group {
        margin-left: -10px;
        margin-right: -10px;
    }

    .b-btns-group__item {
        margin: 0;
    }

    .b-btns-group__btn {
        font-size: 15px;
        letter-spacing: 0;
        padding: 0 10px;
    }

    .b-footer__col_1 {
        width: 58%;
        padding-right: 10px;
    }

    .b-footer__col_2 {
        width: 19%;
        margin-left: 0;
        padding-left: 10px;
    }

    .b-nav__subnav-item > div > .b-nav__subnav-list {
        -webkit-column-count: 1;
        column-count: 1;
    }

    .b-main-banner__inner {
        padding-top: 30px;
    }

    .b-catalog__item {
        width: 50%;
    }

    .b-partners__content {
        width: 100%;
    }

    .b-partners__logo-list {
        width: 100%;
        margin: 0;
    }

    .b-documents__list {
        -webkit-column-count: 1;
        column-count: 1;
    }
}

@media only screen and (max-width : 767px) {
    .g-mob-wrapp {
        display: inline;
    }

    .l-wrapper {
        width: auto;
        margin: 0 20px;
    }

    body {
        padding-top: 113px;
    }

    .b-header {
        background: none;
        border: none;
    }

    .b-header__top {
        padding: 0;
        background: #fff;
        height: 113px;
        position: fixed;
        left: 0;
        right: 0;
        top: 0;
        z-index: 1001;
    }

    .b-header__phones {
        float: none;
        margin: 0 -20px;
        border-bottom: 1px solid #e6e6e6;
    }

    .b-phones {
        font-size: 18px;
        position: relative;
        z-index: 1002;
    }

    .b-phones__header {
        display: block;
        padding: 14px 18px;
        position: relative;
        height: 48px;
    }

    .b-phones__content {
        display: none;
        position: absolute;
        left: 0;
        right: 0;
        top: 100%;
        background: #fff;
        border-bottom: 1px solid #e6e6e6;
        padding: 4px 18px 18px;
    }

    .b-phones__item {
        display: block;
        margin: 0 0 20px 0;
    }

    .b-phones__header .b-phones__item {
        margin: 0;
    }

    .b-phones__show {
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        font-size: 14px;
        padding: 0 20px;
        border: none;
        background: none;
        color: #ff5a00;
        height: 48px;
        line-height: 48px;
    }

    .b-phones__close {
        width: 48px;
        height: 48px;
    }

    .b-phones__close:before,
    .b-phones__close:after {
        background: #ff5a00 !important;
    }

    .b-phones.is-open .b-phones__show {
        display: none;
    }

    .b-phones.is-open .b-phones__close {
        display: block;
    }

    .b-phones.is-open .b-phones__content {
        display: block;
    }

    .b-header__logo {
        float: left;
        margin: 8px 0 0 -9px;
    }

    .b-logo__img {
        width: 203px;
    }

    .b-header__nav-btn {
        display: block;
        position: absolute;
        right: 0;
        bottom: 0;
    }

    .b-nav-btn {
        display: block;
        position: relative;
        width: 63px;
        height: 63px;
        border: none;
        background: none;
        padding: 0;
    }

    .b-nav-btn:before,
    .b-nav-btn:after {
        content: '';
    }

    .b-nav-btn:before,
    .b-nav-btn:after,
    .b-nav-btn > span {
        position: absolute;
        width: 23px;
        height: 3px;
        left: 50%;
        top: 50%;
        margin: -2px 0 0 -12px;
        background: #000;
        -webkit-transition: 0.25s ease-in-out;
        transition: 0.25s ease-in-out;
    }

    .b-nav-btn:active:before,
    .b-nav-btn:active:after,
    .b-nav-btn:active > span {
        background: #ff5a00;
    }

    .b-nav-btn:before {
        -webkit-transform: translateY(-7px);
        transform: translateY(-7px);
    }

    .b-nav-btn:after {
        -webkit-transform: translateY(7px);
        transform: translateY(7px);
    }

    .b-btns-group {
        margin-left: -15px;
        margin-right: -15px;
    }

    .b-btns-group__btn {
        font-size: 18px;
        letter-spacing: 0.2px;
        padding: 9px 15px 10px;
        margin-bottom: 4px;
        line-height: 20px;
        height: auto;
        white-space: normal;
        text-overflow: clip;
        overflow: visible;
    }

    .b-footer {
        padding: 35px 0 85px;
    }

    .b-footer__col {
        float: none;
        width: auto;
        margin: 0;
        padding: 0;
    }

    .b-footer__nav {
        -webkit-column-count: 1;
        column-count: 1;
        margin-bottom: 28px;
    }

    .b-footer__nav-item {
        max-width: none;
    }

    .b-footer__nav_mob-inline .b-footer__nav-item {
        width: auto;
        margin-right: 15px;
    }

    .b-footer__nav_mob-inline .b-footer__nav-item:last-child {
        margin-right: 0;
    }

    .b-footer__dev {
        margin-top: 34px;
        margin-bottom: 24px;
    }

    .b-copyright {
        display: inline;
        margin: 0;
    }

    .b-footer__email {
        display: inline;
    }

    .b-mobile-menu {
        position: fixed;
        left: -100%;
        width: 100%;
        top: 49px;
        bottom: 0;
        background: #666666;
        z-index: 1001;
        padding-top: 44px;
        -webkit-transition: 0.25s ease-in-out;
        transition: 0.25s ease-in-out;
    }

    html.is-nav-open .b-mobile-menu {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }

    .b-mobile-menu__back {
        position: absolute;
        left: 0;
        top: 0;
        width: 58px;
        height: 44px;
        border: none;
        padding: 0;
        background: none;
    }

    .b-mobile-menu__back:before,
    .b-mobile-menu__back:after,
    .b-mobile-menu__back > span {
        position: absolute;
        width: 22px;
        height: 2px;
        left: 50%;
        top: 50%;
        margin: -2px 0 0 -11px;
        background: #fff;
        -webkit-transition: 0.25s ease-in-out;
        transition: 0.25s ease-in-out;
    }

    .b-mobile-menu__back:before,
    .b-mobile-menu__back:after {
        content: '';
        width: 12px;
    }

    .b-mobile-menu__back:before {
        transform: translate(-2px,1px) rotate(-45deg);
        transform-origin: left top;
    }

    .b-mobile-menu__back:after {
        transform: translate(-2px,-1px) rotate(45deg);
        transform-origin: left bottom;
    }

    .b-mobile-menu__close {
        display: block;
        position: absolute;
        right: 0;
        top: 0;
        width: 58px;
        height: 44px;
    }

    .b-mobile-menu__close:before,
    .b-mobile-menu__close:after {
        background: #fff !important;
        height: 2px;
        width: 24px;
        margin: -1px 0 0 -12px;
    }

    .b-mobile-menu__inner {
        height: 100%;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 40px;
        border-top: 1px solid rgba(255,255,255,0.2);
    }

    .b-mobile-menu__inner .l-wrapper {
        margin: 0;
    }

    .b-header__nav {
        float: none;
    }

    .b-nav__item {
        float: none;
        height: auto;
        margin: 0;
        padding: 0;
        border-bottom: 1px solid rgba(255,255,255,0.2);
    }

    .b-nav__item-inner {
        padding-top: 0;
    }

    .b-nav__link {
        display: block;
        border: none;
        padding: 17px 20px 19px;
        font-size: 18px;
        color: #fff;
    }

    .b-nav__item_has-dropdown .b-nav__link:before,
    .b-nav__item_has-dropdown .b-nav__link:after {
        content: '';
        position: absolute;
        width: 8px;
        height: 1px;
        background: #b3b3b3;
        right: 22px;
        top: 50%;
    }

    .b-nav__item_has-dropdown .b-nav__link:before {
        -webkit-transform-origin: right top;
        transform-origin: right top;
        transform: rotate(45deg);
    }

    .b-nav__item_has-dropdown .b-nav__link:after {
        margin-top: -1px;
        -webkit-transform-origin: right bottom;
        transform-origin: right bottom;
        transform: rotate(-45deg);
    }

    .b-header__btns {
        float: none;
        padding: 54px 20px 0;
    }

    .b-header__btns-content {
        float: none;
        margin: 0;
        font-size: 18px;
        color: #fff;
    }

    .b-header__email-field {
        float: none;
        margin: 0 0 43px 0;
    }

    .b-header__question-field {
        float: none;
        margin: 0 0 19px 0;
    }

    .b-header__question-btn {
        color: #fff;
        border-bottom-color: rgba(255,255,255,0.5);
        border-bottom-style: dashed;
    }

    .b-header__call-field {
        float: none;
        margin: 0;
    }

    .b-header__call-btn {
        height: 33px;
        line-height: 33px;
        padding: 0 31px;
        font-size: 15px;
    }

    .b-nav__dropdown {
        display: none;
        position: absolute;
        left: 100%;
        width: 100%;
        top: 0;
        padding: 10px 18px;
        font-size: 18px;
        line-height: 24px;
        right: auto;
        margin: 0;
        background: none;
        z-index: auto;
        overflow: visible;
        opacity: 1;
        visibility: visible;
        -webkit-transform: scaleY(1);
        transform: scaleY(1);
        -webkit-transition: none;
        transition: none;
    }

    .b-nav__item.is-open .b-nav__dropdown {
        display: block;
    }

    .b-nav__dropdown:before {
        display: none;
    }

    .b-nav__dropdown-close {
        display: none;
    }

    .b-nav__dropdown-inner {
        position: static;
        background: none;
    }

    .b-nav__subnav {
        font-size: 18px;
        line-height: 24px;
        padding: 0;
        float: none;
        width: auto;
    }

    .b-nav__subnav-item > div {
        display: none !important;
        position: absolute;
        left: 100%;
        width: 100%;
        top: 0;
        padding: 10px 18px;
        right: auto;
        bottom: auto;
        overflow: visible;
    }

    .b-nav__subnav-item.is-open > div {
        display: block !important;
    }

    .b-nav__subnav-item,
    .b-nav__subnav-list-item {
        margin-bottom: 15px;
        padding-right: 0;
    }

    .b-nav__subnav-link,
    .b-nav__subnav-list-link {
        color: #fff;
        border-bottom-color: rgba(255,255,255,0.5);
    }

    .b-nav__subnav-link:hover,
    .b-nav__subnav-link.is-active,
    .b-nav__subnav-list-link:hover,
    .b-nav__subnav-list-link.is-active {
        color: #fff;
        border-bottom-color: #fff;
    }

    .b-nav__subnav-list-link + .b-nav__subnav-list {
        margin-top: 15px;
    }

    .b-nav__subnav-list .b-nav__subnav-list {
        padding-left: 0;
    }

    .b-nav__item.is-open .b-nav__item-inner:before {
        display: none;
    }

    .b-mobile-menu__wrapper {
        -webkit-transition: 0.25s ease-in-out;
        transition: 0.25s ease-in-out;
    }

    .b-mobile-menu.is-step-1 .b-mobile-menu__wrapper {
        transform: translate3d(-100%, 0, 0);
    }

    .b-mobile-menu.is-step-2 .b-mobile-menu__wrapper {
        transform: translate3d(-200%, 0, 0);
    }

    .b-mobile-menu.is-step-1 .b-mobile-menu__back,
    .b-mobile-menu.is-step-2 .b-mobile-menu__back {
        display: block;
    }

    .b-mobile-menu.is-step-2 {
        background: #fff;
    }

    .b-mobile-menu.is-step-2 .b-mobile-menu__back:before, 
    .b-mobile-menu.is-step-2 .b-mobile-menu__back:after, 
    .b-mobile-menu.is-step-2 .b-mobile-menu__back > span,
    .b-mobile-menu.is-step-2 .b-mobile-menu__close:before, 
    .b-mobile-menu.is-step-2 .b-mobile-menu__close:after {
        background: #000 !important;
    }

    .b-mobile-menu.is-step-2 .b-nav__subnav-list-link {
        color: #000;
        border-bottom-color: rgba(0,0,0,0.2);
    }

    .b-mobile-menu.is-step-2 .b-mobile-menu__inner {
        border-top-color: #e6e6e6;
    }

    .b-image-group {
        margin: 0 -7px 7px;
    }

    .b-image-group__item {
        padding: 0 7px 14px;
    }

    .b-category-list {
        margin-top: 72px;
    }

    .b-category-list__image-field {
        float: none;
        width: auto;
        padding: 0;
        margin-bottom: 17px;
    }

    .b-category-list__content-field {
        float: none;
        width: auto;
        padding: 13px 20px 17px;
    }

    .b-category-list__item {
        padding: 12px 0;
        margin-bottom: 20px;
    }

    .b-category-list__item-title {
        margin-bottom: 15px;
    }

    .b-contacts {
        width: auto;
        padding-right: 0;
        min-height: 0;
        margin-bottom: 24px;
    }

    .b-maps {
        position: static;
        margin: 0;
        height: 460px;
    }

    .b-main-banner {
        height: auto;
    }

    .b-main-banner__inner {
        padding-top: 59px;
        padding-bottom: 102px;
    }

    .b-main-banner__title {
        font-size: 40px;
        line-height: 40px;
        margin-bottom: 22px;
    }

    .b-main-banner__text {
        font-size: 20px;
        line-height: 27px;
        letter-spacing: 0.1px;
    }

    .b-main-slider-wrapper {
        margin: -55px 0 10px;
    }

    .b-main-slider__image-field {
        width: 100%;
    }

    .b-main-slider__content-field {
        margin-left: 0;
        clear: both;
        padding: 25px 21px 118px;
    }

    .b-main-slider .slick-dots {
        bottom: 58px;
        left: 15px;
        right: 15px;
        top: auto;
        transform: none;
        text-align: left;
    }

    .b-main-slider .slick-dots li {
        display: inline-block;
    }

    .b-catalog__item {
        width: 100%;
        margin-right: 0;
    }

    .b-catalog__item {
        padding-bottom: 10px;
    }

    .b-catalog__item-content {
        padding-left: 10px;
        padding-right: 5px;
    }

    .b-catalog {
        margin-bottom: 100px;
    }

    .b-about {
        padding: 60px 0 100px;
        margin-bottom: 84px;
    }

    .b-about__content {
        margin: 0 -10px;
        padding: 44px 32px 66px;
    }

    .b-about__title {
        line-height: 32px;
        margin-bottom: 10px;
    }

    .b-partners {
        margin-bottom: 76px;
    }

    .b-documents__title {
        line-height: 38px;
    }

    .b-table .b-table__image-cell img {
    max-width: 150px;
    height: auto;
}
}