@media (max-width: 1023px)
{
    /*---------------
        Main styles
    ---------------*/
    :root
    {
        --font_size: 15px;
        --line_height: 21px;
    }


    .page_content
    {
        padding-top: 8px;
        padding-bottom: 40px;
    }


    .breadcrumbs
    {
        margin-bottom: 20px;
    }


    .page_title,
    .block_head .title.big
    {
        font-size: 28px;
        line-height: 32px;
    }


    .block
    {
        margin-bottom: 40px;
    }



    .text_block blockquote,
    .text_block q
    {
        margin: var(--line_height) 0;
    }



    .content_flex .content
    {
        width: 100%;
    }



    .accordion .item .title
    {
        font-size: 16px;

        padding: 12px 56px 12px 20px;
    }



    .text_block .info_block .col,
    .text_block .cols .col
    {
        width: calc(50% - 20px);
    }


    .text_block ul li:before
    {
        top: 8px;
    }



    .slider_in_text .slick-arrow.slick-prev,
    .carousel_in_text .slick-arrow.slick-prev
    {
        left: 10px;
    }

    .slider_in_text .slick-arrow.slick-next,
    .carousel_in_text .slick-arrow.slick-next
    {
        right: 10px;
    }



    .tabs a + a
    {
        margin-left: 40px;
    }



    /*---------------
        Header
    ---------------*/
    header .top
    {
        padding: 0;
    }

    header .top .cont
    {
        padding-right: 80px;
    }


    header .top .links
    {
        position: absolute;
        z-index: 999;
        top: 0;
        left: 0;

        display: none;

        width: 100%;
        padding: 10px 20px;

        text-align: left;

        background: #ecedef;
    }

    header .top .links a
    {
        line-height: 30px;
    }

    header .top .links > * + *
    {
        margin-left: 0;
    }


    header .info
    {
        padding: 20px 0;
    }


    header .search
    {
        top: -20px;
        padding: 15px 0;
        width: calc(100% - 40px);
    }

    header .search form .close
    {
        /* margin-top: 15px; */
    }

    header .search form .input
    {
        /* font-size: 20px; */
    }


    header .bottom
    {
        position: absolute;
        z-index: 999;
        top: 170px;
        left: 0;

        display: none;

        width: 100%;
        min-height: calc(100vh - 170px);
        padding: 10px 0;

        text-align: left;

        background: #fff;
    }

    header .bottom .flex
    {
        justify-content: flex-start;
    }

    header .menu .item
    {
        width: 100%;
    }

    header .menu .item + .item
    {
        margin-left: 0;
    }

    header .menu .item > a
    {
        text-align: left;

        justify-content: flex-start;
    }

    header .menu .item > a.touch_link + .sub_menu
    {
        position: relative;
        top: 0;
        left: 0;

        display: none;
        visibility: visible;

        width: 100%;
        padding: 20px;

        opacity: 1;
    }

    header .menu .item > a.touch_link + .sub_menu.show
    {
        display: block;
    }



    header .mob_menu_link
    {
        display: block;
    }



    /*---------------
        Sidebar
    ---------------*/
    aside
    {
        display: none;
    }



    /*---------------
        Main section
    ---------------*/
    .main_slider .slide .cont
    {
        min-height: 450px;
    }

    .main_slider .slide .info
    {
        line-height: var(--line_height);

        width: 500px;
        padding: 0 65px;
    }

    .main_slider .slide .desc
    {
        min-height: 0;
    }



    .products .tabs
    {
        margin-bottom: 20px;
    }




    .products .slick-list
    {
        margin: 0 -10px;
    }

    .products .slide
    {
        padding: 0 10px;
    }

    .products .slick-arrow
    {
        top: -47px;
    }


    .products .product
    {
        padding: 0;
    }

    .products .product .price
    {
        font-size: 22px;
    }

    .products .product:hover
    {
        box-shadow: none;
    }



    .promo_blocks .item
    {
        padding: 25px 25px 70px;
    }

    .promo_blocks .item .title
    {
        font-size: 20px;
        line-height: 22px;
    }

    .promo_blocks .item > * + *
    {
        margin-top: 20px;
    }

    .promo_blocks .item .bottom
    {
        padding: 25px;
    }


    .promo_blocks .stocks
    {
        grid-column: 1 / 3;
        grid-row: 1 / 3;
    }

    .promo_blocks .stocks .name
    {
        font-size: 16px;
    }

    .stocks .slick-arrow
    {
        bottom: 25px;
    }


    .promo_blocks .faq_link
    {
        grid-row: 1 / 3;
        grid-column: 3 / 5;
    }

    .promo_blocks .intriguing_link
    {
        grid-row: 3 / 4;
        grid-column: 1 / 3;
    }



    .articles .flex .item
    {
        width: calc(100% - 20px);
    }



    .welcome .text_block
    {
        padding: 40px 40px 40px 45%;
    }



    .cart_info table thead
    {
        display: none;
    }

    .cart_info table tbody tr
    {
        display: block;
        overflow: hidden;

        width: 100%;
        padding-right: 54px;

        background: #f5f5f5;
    }

    .cart_info table td
    {
        position: relative;

        display: block;
        float: left;

        background: none;
    }

    .cart_info table td.name
    {
        width: calc(100% - 120px);
        padding-bottom: 20px;
    }

    .cart_info table td.name a
    {
        width: 100%;
    }

    .cart_info table td.price,
    .cart_info table td.amount,
    .cart_info table td.discount
    {
        font-size: 18px;

        width: calc((100% - 120px) / 4) !important;
        min-width: 105px;
        padding-top: 20px;
    }

    .cart_info table td.price:before,
    .cart_info table td.amount:before,
    .cart_info table td.discount:before
    {
        color: var(--text_color2);
        font-family: var(--font_family2);
        font-size: 12px;
        font-weight: normal;
        line-height: 10px;

        position: absolute;
        top: 0;
        left: 0;

        display: block;

        padding: 0 10px;

        content: attr(data-column);

        opacity: .5;
    }

    .cart_info table td.delete
    {
        position: absolute;
        top: 0;
        right: 0;

        width: 54px;
        height: 100%;
    }



    .cart_info .cart_total
    {
        padding: 20px 54px 20px 0;
    }

    .cart_info .cart_total .exp
    {
        width: 100%;
        max-width: 100%;
        padding: 0;

        text-align: right;
    }

    .cart_info .cart_total .bonuses {
        padding-left: 10px;
        padding-right: 20px;
        width: calc((100% - 120px) / 2 + 120px);
        font-size: 16px;
    }

    .cart_info .cart_total .bonuses-wrapper {
        margin-top: 2px;
    }

    @media (min-width: 768px) {

        .cart_info .cart_total .bonuses-field input[type="text"] { margin-left: 0; }

        .cart_info .cart_total .bonuses-wrapper { display: block; margin-top: 2px; }

        .cart_info .cart_total .bonuses-wrapper > * { display: block; }

        .cart_info .cart_total .bonuses-wrapper > * > * { display: block; }
        .cart_info .cart_total .bonuses-wrapper > * > * ~ * { display: inline-block; padding-top: 12px; }

        .cart_info .cart_total .bonuses-wrapper > * ~ * > * { padding-top: 12px; }

    }

    .cart_info .cart_total .info
    {
        display: block;
        align-items: flex-start;
        /*width: 100%;*/
        width: calc((100% - 120px) / 2);
        padding: 0;
        margin-top: -2px;

        border: none;
    }

    .cart_info .cart_total .total .name,
    .cart_info .cart_total .total .val {
        width: 50%;
        padding: 0 10px 0 0;
        font-size: 16px;
        text-align: left;
    }

    .cart_info .cart_total .links { position: relative; height: 40px; justify-content: space-between; }

    .cart_info .cart_total .links .clear_link { float: left; margin: 0; }
    .cart_info .cart_total .links .checkout_link { position: absolute; left: 50%; top: 0; float: right; margin: 0 10px 0 0; width: calc(50% - 20px); min-width: 150px; }


    .checkout_info .form
    {
        margin-bottom: -20px;
        margin-left: -20px;
    }

    .checkout_info .form .col
    {
        width: calc(50% - 20px);
        margin-bottom: 20px;
        margin-left: 20px;
    }



    .faq .item
    {
        padding: 25px;
    }



    .lk .personal
    {
        padding: 25px;
    }

    .lk .personal .info,
    .lk .personal .form
    {
        width: 100%;
        margin-bottom: 40px;
        padding: 0;
    }

    .lk .personal .links
    {
        display: flex;

        width: 100%;
        padding: 0;

        border: none;

        justify-content: space-between;
        align-items: center;
        align-content: center;
        flex-wrap: wrap;
    }

    .lk .personal .links * + *
    {
        margin-top: 0;
    }



    .lk .history .head > *,
    .lk .history .head .col_price
    {
        width: 33.333% !important;
    }



    .lk .history .cart_info table th,
    .lk .history .cart_info table td
    {
        border: none;
    }

    .lk .history .cart_info table td.name
    {
        padding-right: 0;
    }

    .lk .history .cart_info table td.price,
    .lk .history .cart_info table td.amount
    {
        line-height: normal;
    }

    .lk .history .cart_info table tfoot td.total_text
    {
        padding-left: 0;
    }



    .product_info .product_name
    {
        line-height: 34px;
    }



    .reviews .item
    {
        padding: 25px;
    }



    .where_buy .block .flex .elem
    {
        width: calc(50% - 20px);
    }

    .where_buy .block .elem
    {
        padding: 20px;
    }



    /*---------------
        Footer
    ---------------*/
    footer
    {
        padding-bottom: 0;
    }


    footer .info .col
    {
        width: 33.333%;
    }


    footer .info .col:last-child
    {
        width: 100%;
        margin-top: 30px;
    }

    footer .contacts .adres br
    {
        display: none;
    }



    /*---------------
        PopUp
    ---------------*/
}
