@media (max-width: 1023px)
{
    /*---------------
        Main styles
    ---------------*/
    .fancybox-active header.fixed
    {
        padding-right: 0;
    }

    .text_block .cols.marg
    {
        margin-left: 0;
    }

    .text_block .cols.marg .col
    {
        width: 100%;
        margin-left: 0;
    }

    .text_block .cols.marg .col.width3
    {
        width: 100%;
    }

    .text_block img.left
    {
        width: calc(50% - 30px);
        margin-right: 30px;
    }

    .text_block img.right
    {
        width: calc(50% - 30px);
        margin-left: 30px;
    }
    /*---------------
        Header
    ---------------*/
    .mob_header
    {
        display: block;
    }

    .mob_header_wrap
    {
        display: block;
    }

    .header_wrap
    {
        height: 0 !important;
    }

    header
    {
        position: fixed;
        z-index: 101;
        top: 0;
        bottom: 0;
        left: 0;

        width: 270px;
        height: auto !important;
        margin: 0;
        padding: 0;

        transition: transform .3s linear;
        transform: translateX(-100%);

        background: #fff;
    }

    header.show
    {
        transform: translateX(0);
    }


    header .mob_scroll
    {
        display: flex;
        overflow: auto;

        height: 100vh;
        padding: 20px 0 5px;

        justify-content: flex-start;
        align-items: flex-start;
        align-content: flex-start;
        flex-wrap: wrap;
    }

    header .mob_scroll > *
    {
        width: 100%;
    }

    header .cont
    {
        display: block;

        padding: 0 15px;
    }

    header .logo
    {
        display: none;
    }

    header .phones
    {
        width: 100%;
        margin: 20px 0 0;
    }

    header .col_r
    {
        margin: 20px 0 0;
    }

    header .menu
    {
        width: calc(100% + 30px);
        margin-left: -15px;
        margin-top: 10px;
    }

    header .menu .item
    {
        width: 100%;
    }

    header .menu .item > a
    {
        line-height: 35px;

        padding: 0 15px;
    }

    header .menu .sub_menu
    {
        position: static;

        display: none;
        visibility: visible;

        width: 100%;
        padding: 10px 30px 0;
        padding: 0 0 20px;

        pointer-events: all;

        opacity: 1;
        box-shadow: none;
    }

    header .menu .item > a.touch_link + .sub_menu.show
    {
        top: 0;

        display: block;
    }

    header .menu .sub_menu .list
    {
        width: 100%;
    }

    header .menu .sub_menu .list.big
    {
        width: 100%;
    }

    header .open_search
    {
        height: 58px;
    }

    header .box_search .mini_modal .close
    {
        display: none;
    }

    header .box_search .mini_modal
    {
        top: 0;

        visibility: visible;

        width: 100%;

        pointer-events: all;

        opacity: 1;
        box-shadow: 0 0 10px rgba(0,0,0,.1);
    }

    header .search .input
    {
        padding: 0 45px 0 15px;
    }

    header .favorite
    {
        margin-top: 15px;
    }

    header .adres .name
    {
        width: 100%;
        padding-right: 0;
    }

    header .box_cities .mini_modal
    {
        position: relative;

        display: none;
        visibility: visible;

        width: calc(100% + 30px);
        margin-left: -15px;

        pointer-events: all;

        opacity: 1;
    }

    header .box_cities .mini_modal.active
    {
        display: block;
    }

    header .box_cities .title
    {
        font-size: 20px;
        line-height: normal;

        padding-left: 15px;
    }

    header .cities
    {
        padding: 20px 15px 20px 5px;
    }

    header .cities .list
    {
        width: calc(50% - 10px);
    }

    header .cities .item a
    {
        font-size: 12px;
    }

    header .cities .popular a
    {
        font-size: 12px;
    }
    /*---------------
        Sidebar
    ---------------*/


    /*---------------
        Main section
    ---------------*/
    .main_slider .slide .cont{
        height: 400px;
    }

    .main_slider .slide .name
    {
        font-size: 40px;
        line-height: normal;
    }

    .main_slider .slide .img
    {
        width: 100%;
        max-width: none;

        opacity: .1;
        justify-content: center;
    }

    .main_slider .slide .info
    {
        position: relative;
        z-index: 1;

        max-width: none;
        padding-bottom: 20px;
    }

    .main_slider .slide .link{
        margin-top: 30px;
    }

    .main_slider .owl-dots{
        bottom: 20px;
    }

    .collections .grid{
        margin-left: -15px;
    }

    .collections .collection
    {
        width: calc(25% - 15px);
        margin: 15px 0 0 15px;

        padding-left: 5px;
        padding-right: 5px;
    }


    .text_block .cols .col.width3
    {
        width: calc(50% - 30px);
    }


    .news .slide .name br
    {
        display: none;
    }


    .nearest_store
    {
        min-height: 1px;
    }


    .products .slider
    {
        padding-bottom: 30px;
    }

    .products .owl-carousel .owl-nav button
    {
        display: none;
    }

    .products .owl-dots
    {
        display: flex;
    }

    .products .grid
    {
        --products_count: 4;
        margin-left: -15px;
    }

    .products .grid .product
    {
        width: calc(25% - 15px);

        margin: 15px 0 0 15px;
    }

    .products .product{
        padding-left: 5px;
        padding-right: 5px;
    }

    .products .product .code
    {
        font-size: 14px;
    }

    .products .product .desc
    {
        font-size: 12px;
    }

    .products .product .name a br
    {
        display: none;
    }


    .contacts .map
    {
        width: 100%;
        height: 300px;

        order: 2;
    }

    .contacts .info
    {
        width: 100%;
        margin-bottom: 30px;
        padding: 0 20px;
    }

    .contacts .info .box
    {
        max-width: none;
    }

    .section_form .col_l
    {
        width: 100%;
        max-width: none;
        margin-bottom: 30px;
    }

    .section_form .form
    {
        width: 100%;
    }


    .product_info .images
    {
        width: 100%;
        max-width: none;
        margin-bottom: 30px;
    }

    .product_info .data
    {
        width: 100%;
    }

    .box_filter{
        margin-top: 15px;
    }

    .open_filter
    {
        display: block;
    }

    .filter
    {
        display: none;
    }

    .filter > .flex
    {
        padding-right: 0;

        justify-content: space-between;
    }

    .filter .modal_cont
    {
        width: calc(50% - 10px);
        margin-left: 0;
    }

    .filter .mini_modal_link
    {
        width: 100%;
    }

    .filter .mini_modal
    {
        left: 0;

        width: 100%;

        transform: translateX(0);
    }

    .filter .mini_modal#cost
    {
        width: 100%;
    }

    .filter .box_choice
    {
        width: calc(50% - 10px);
        margin-left: 0;
    }

    .filter .box_btn
    {
        width: calc(50% - 10px);
    }

    .filter .submit
    {
        margin-left: 0;
    }
    /*---------------
        Footer
    ---------------*/
    footer .subscribe
    {
        width: 100%;
        margin-top: 30px;
    }

    footer .col_l
    {
        width: 320px;
    }

    footer .col_c
    {
        width: auto;
        margin-left: auto;
    }


    /*---------------
        PopUp
    ---------------*/
    .fancybox-button
    {
        width: 50px;
        height: 50px;
    }

    .fancybox-navigation .fancybox-button
    {
        top: calc(50% - 50px);

        width: 70px;
        height: 100px;
    }
}
