@media print,
(max-width: 1279px)
{
    /*-------------------
        Global styles
    -------------------*/
    :root
    {
        --custom_scroll_width: 5px;
        --custom_scroll_height: 5px;
        --font_size: 14px;
        --font_size_b: 16px;
        --font_size_s: 12px;
        --font_size_title: 32px;
        --font_size_title_s: 24px;
        --block_head_offset: 24px;
        --sidebar_width: 100%;
    }


    .wrap
    {
        padding: 0;
    }


    .swiper-button-next,
    .swiper-button-prev
    {
        display: none;
    }


    .content_flex .content
    {
        width: 100%;
    }



    /*---------------
        More link
    ---------------*/
    .more_link a
    {
        position: relative;

        width: 400px;
        height: 40px;
    }


    .more_link a:after
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: block;

        width: 100%;
        min-width: 48px;
        height: 100%;
        min-height: 48px;

        content: '';
        transform: translate(-50%, -50%);
    }



    /*------------
        Header
    ------------*/
    header .contacts
    {
        width: 269px;
    }


    header .request_btn
    {
        position: relative;

        padding-inline: 20px;
    }


    header .request_btn:after
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: block;

        width: 100%;
        min-width: 48px;
        height: 100%;
        min-height: 48px;

        content: '';
        transform: translate(-50%, -50%);
    }


    header .warehouse a
    {
        position: relative;
    }


    header .warehouse a:after
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: block;

        width: 100%;
        min-width: 48px;
        height: 100%;
        min-height: 48px;

        content: '';
        transform: translate(-50%, -50%);
    }


    header .icon_links
    {
        min-width: 269px;
    }


    header .icon_links a
    {
        position: relative;
    }


    header .icon_links a:after
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: block;

        width: 100%;
        min-width: 48px;
        height: 100%;
        min-height: 48px;

        content: '';
        transform: translate(-50%, -50%);
    }


    header .catalog_menu
    {
        width: 180px;
    }


    header .search
    {
        width: calc(100% - 312px);
    }


    header .catalog_menu .btn,
    header .search .input
    {
        font-size: 20px;
    }



    header.fixed .search
    {
        width: calc(100% - 424px);
    }



    /*---------------
        Page head
    ---------------*/
    .page_head .cart_content
    {
        width: 100%;
    }


    .clear_cart_btn:after
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: block;

        width: 100%;
        min-width: 48px;
        height: 100%;
        min-height: 48px;

        content: '';
        transform: translate(-50%, -50%);
    }



    /*------------------
        Form elements
    ------------------*/
    .form
    {
        --form_columns_offset: 16px;
        --form_line_offset: 16px;
        --form_label_offset: 4px;
        --form_input_height: 40px;
        --form_textarea_height: 80px;
        --form_textarea_padding_block: 11px;
    }


    .form .label,
    .form .exp
    {
        font-size: var(--font_size_s);
    }


    .form .file .btn .icon,
    .form .file .selected .delete_btn .icon
    {
        width: 20px;
        height: 20px;
    }


    .form .file .btn span
    {
        width: calc(100% - 30px);
    }


    .form .file .selected span
    {
        max-width: calc(100% - 30px);
    }


    .form .submit_btn
    {
        position: relative;

        padding-inline: var(--cont_padding);
    }


    .form .submit_btn:after
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: block;

        width: 100%;
        min-width: 48px;
        height: 100%;
        min-height: 48px;

        content: '';
        transform: translate(-50%, -50%);
    }



    /*----------------
        Typography
    ----------------*/
    .text_block h2
    {
        font-size: 28px;
    }

    .text_block h3
    {
        font-size: 26px;
    }


    .text_block blockquote
    {
        padding-inline: 112px 0;

        font-size: 26px;
    }


    .text_block .delivery
    {
        gap: var(--cont_padding_double);
    }


    .text_block .delivery .image
    {
        height: 40px;
    }


    .text_block .delivery .image1
    {
        width: 259px;
    }

    .text_block .delivery .image2
    {
        width: 88px;
    }

    .text_block .delivery .image3
    {
        width: 114px;
    }


    .text_block .features
    {
        gap: var(--inner_gap_s);
    }



    /*-----------------
        Main slider
    -----------------*/
    .main_slider .swiper
    {
        border-radius: 0;
    }


    .main_slider .swiper .cont
    {
        min-height: 520px;
        padding-block: 148px 80px;
    }


    .main_slider .data
    {
        width: 388px;
    }


    .main_slider .image
    {
        height: 400px;
    }



    /*-------------
        Catalog
    -------------*/
    .catalog .big_title
    {
        margin-bottom: -36px;

        font-size: 160px;
    }


    .catalog .grid_row
    {
        --count_per_line: 4;
    }


    .catalog .category .thumb
    {
        height: 168px;
    }


    .catalog .bg
    {
        top: 50%;

        width: 140vw;

        transform: translateY(-50%);
    }



    /*-------------------
        Category info
    -------------------*/
    .category_info .head
    {
        position: sticky;
        top: var(--sticky-top);

        z-index: 5;

        --sticky-top: 84px;
    }


    .category_info .head:before
    {
        position: absolute;
        top: -8px;
        left: 50%;

        display: none;

        width: 100vw;
        height: calc(100% + 16px);

        content: '';
        z-index: -1;
        transform: translateX(-50%);

        background: var(--light_color);
        box-shadow: 0 0 5px 0 rgba(0, 0, 0, .15);
    }


    .category_info .head.is_stuck:before
    {
        display: block;
    }


    .category_info .head .sort,
    .category_info .head .limit
    {
        align-content: flex-start;
        align-items: flex-start;
        flex-direction: column;

        gap: 0;
    }


    .category_info .head .mob_filter_btn
    {
        display: flex;
    }



    /*------------
        Brands
    ------------*/
    .brands .brand .thumb
    {
        height: 124px;
    }



    /*--------------
        Products
    --------------*/
    .products .swiper-slide
    {
        width: 248px;
    }


    .products .grid_row
    {
        --count_per_line: 3;
    }


    .products .product .buy_btn,
    .products .product .btns .btn
    {
        position: relative;
    }


    .products .product .amount .btn:after,
    .products .product .buy_btn:after,
    .products .product .btns .btn:after
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: block;

        width: 100%;
        min-width: 48px;
        height: 100%;
        min-height: 48px;

        content: '';
        transform: translate(-50%, -50%);
    }


    .products .product .info
    {
        padding: var(--inner_gap_s);
    }


    .products .product .buy_btn
    {
        padding-inline: var(--inner_gap_s);
    }



    /*-----------------
        Action form
    -----------------*/
    .action_form .data
    {
        padding-block: var(--cont_padding_double);
        padding-inline: var(--cont_padding);
    }


    .action_form .block_head
    {
        width: 300px;
    }


    .action_form .form
    {
        width: calc(100% - 348px);
    }


    .action_form .bg
    {
        top: -100px;

        width: 133vw;
    }



    /*----------
        News
    ----------*/
    .news .item
    {
        min-height: 148px;
    }


    .news .item .name
    {
        font-size: 18px;
    }



    /*--------------
        Articles
    --------------*/
    .articles .grid_row
    {
        display: block;
        overflow: auto;

        width: calc(100% + var(--cont_padding_double));
        margin: 0 calc(var(--cont_padding) * -1);
        padding: 0 var(--cont_padding);

        white-space: nowrap;

        scroll-padding: 0 var(--cont_padding);
        scroll-snap-type: x mandatory;
        scrollbar-color: transparent transparent !important;
        scrollbar-width: thin !important;
    }


    .articles .grid_row::-webkit-scrollbar
    {
        display: none !important;

        width: 0 !important;
        height: 0 !important;

        background-color: transparent !important;
    }


    .articles .grid_row::-webkit-scrollbar-thumb
    {
        background-color: transparent !important;
    }


    .articles .grid_row > *
    {
        display: inline-block;

        width: 248px;
        max-width: none;
        margin: 0;

        vertical-align: top;
        white-space: normal;

        scroll-snap-align: start;
    }


    .articles .grid_row > * + *
    {
        margin-left: 6px;
    }



    /*------------
        Filter
    ------------*/
    .filter
    {
        position: fixed;
        top: 0;
        left: 100%;

        width: 100%;
        height: 100%;
        min-height: -moz-available;
        min-height: -webkit-fill-available;
        min-height:         fill-available;
        padding-block: 58px 0;

        z-index: 101;
        transition: transform .3s linear;

        background: #f6f6f6;
    }


    .filter.show
    {
        transform: translateX(-100%);
    }


    .filter .mob_head
    {
        display: flex;
    }


    .filter .form
    {
        display: flex;
        overflow: auto;
        flex-direction: column;

        height: 100%;
        min-height: -moz-available;
        min-height: -webkit-fill-available;
        min-height:         fill-available;
        padding-bottom: 80px;

        overscroll-behavior-y: contain;
    }


    .filter .form .submit
    {
        display: none;
        
        position: fixed;
        bottom: 0;
        left: 0;

        align-content: center;
        align-items: center;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;

        width: 100%;
        padding: 20px;

        z-index: 10;

        background: #f6f6f6;
        box-shadow: 0 0 5px 0 rgba(0, 0, 0, .15);
    }

    .filter.show .form .submit
    {
        display: flex;
    }

    .filter .submit_btn,
    .filter .reset_btn
    {
        width: auto;
    }


    .filter .submit_btn--toggled {
        color: var(--light_color);
        background: var(--primary_color);
    }


    .filter .fixed_submit_btn
    {
        display: none !important;
    }
    
    
    /*------------------
        Product info
    ------------------*/
    .product_info .images
    {
        width: 512px;
    }


    .product_info .images .thumbs
    {
        width: 80px;
    }


    .product_info .images .thumbs .swiper
    {
        height: 440px;
    }


    .product_info .images .big
    {
        width: calc(100% - 90px);
    }


    .product_info .images .big .swiper,
    .product_info .images .big .img
    {
        height: 465px;
    }


    .product_info .images .big .swiper-button-next,
    .product_info .images .big .swiper-button-prev
    {
        display: flex;
    }


    .product_info .data
    {
        width: calc(100% - 512px);
    }


    .product_info .price
    {
        font-size: 32px;
    }


    .product_info .amount
    {
        width: 110px;
    }


    .product_info .buy_btn,
    .product_info .btns .btn,
    .product_info .quike_buy_btn,
    .product_info .request_btn
    {
        position: relative;
    }


    .product_info .amount .btn:after,
    .product_info .buy_btn:after,
    .product_info .btns .btn:after,
    .product_info .quike_buy_btn:after,
    .product_info .request_btn:after
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: block;

        width: 100%;
        min-width: 48px;
        height: 100%;
        min-height: 48px;

        content: '';
        transform: translate(-50%, -50%);
    }


    .product_info .features .label
    {
        width: 148px;
    }

    .product_info .features .label.small
    {
        width: 92px;
    }


    .product_info .features .val
    {
        width: calc(100% - 168px);
    }

    .product_info .features .label.small + .val
    {
        width: calc(100% - 112px);
    }



    /*------------------
        Product data
    ------------------*/
    .product_data .features .label
    {
        width: 172px;
    }


    .product_data .features .val
    {
        width: calc(100% - 192px);
    }



    .product_data .files .grid_row
    {
        --count_per_line: 3;
    }


    .product_data .files .file .name
    {
        font-size: var(--font_size_b);
        line-height: calc(100% + 4px);
    }


    .product_data .files .file .info
    {
        margin-top: 4px;
    }



    /*---------------
        Cart info
    ---------------*/
    .cart_info .content
    {
        width: 100%;
    }


    .cart_info .product .btns .btn
    {
        position: relative;
    }


    .cart_info .product .amount .btn:after,
    .cart_info .product .remove_btn:after,
    .cart_info .product .btns .btn:after
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: block;

        width: 100%;
        min-width: 48px;
        height: 100%;
        min-height: 48px;

        content: '';
        transform: translate(-50%, -50%);
    }


    .cart_info .product .price .tooltip .icon
    {
        pointer-events: none;
    }


    .cart_info aside
    {
        margin-top: var(--cont_padding);
    }


    .cart_info .checkout_btn
    {
        position: relative;

        height: 40px;
    }


    .cart_info .checkout_btn:after
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: block;

        width: 100%;
        min-width: 48px;
        height: 100%;
        min-height: 48px;

        content: '';
        transform: translate(-50%, -50%);
    }



    /*----------------
        Brand info
    ----------------*/
    .brand_info
    {
        padding-bottom: 0;
    }


    .brand_info .info
    {
        padding-inline: var(--inner_block_padding);
    }



    /*----------------
        Advantages
    ----------------*/
    .advantages .swiper-horizontal > .swiper-pagination-bullets,
    .advantages .swiper-pagination-bullets.swiper-pagination-horizontal,
    .advantages .swiper-pagination-custom,
    .advantages .swiper-pagination-fraction
    {
        display: flex;
    }


    .advantages .item
    {
        padding: 19px 19px 35px;
    }



    /*------------------
        Contacts map
    ------------------*/
    .contacts_map .cont
    {
        height: 500px;
    }


    .contacts_map .map
    {
        border-radius: 0;
    }



    /*------------
        Footer
    ------------*/
    footer
    {
        padding-bottom: 0;
    }


    footer .data
    {
        border-radius: 0;
    }


    footer .request_btn
    {
        position: relative;

        padding-inline: var(--cont_padding);
    }


    footer .warehouse a,
    footer .socials a
    {
        position: relative;
    }


    footer .socials a:after,
    footer .warehouse a:after,
    footer .request_btn:after
    {
        position: absolute;
        top: 50%;
        left: 50%;

        display: block;

        width: 100%;
        min-width: 48px;
        height: 100%;
        min-height: 48px;

        content: '';
        transform: translate(-50%, -50%);
    }


    footer .contacts,
    footer .creator
    {
        width: 260px;
    }
}
