@media print,
(max-width: 1279px)
{
    /*-------------------
        Global styles
    -------------------*/
    :root
    {
        --font_size: 15px;
        --font_size_title: 36px;
    }


    html.custom_scroll ::-webkit-scrollbar
    {
        width: 5px;
        height: 5px;
    }



    /*--------------
        Fancybox
    --------------*/
    .fancybox__slide
    {
        padding: 32px;
    }



    /*------------
        Header
    ------------*/
    header .menu_item + .menu_item
    {
        margin-left: 24px;
    }


    header .contacts
    {
        margin-left: 25px;
    }

    header .contacts .phone
    {
        font-size: 18px;
        line-height: 22px;
    }

    header .contacts .time
    {
        line-height: 20px;
    }


    header .consult_btn
    {
        font-size: 13px;
        line-height: 22px;

        margin-left: 32px;
        padding: 8px 16px;
    }



    /*----------------
        Block head
    ----------------*/
    .block_head .desc
    {
        font-size: 20px;
        line-height: 28px;

        margin-top: 16px;
    }



    /*------------------
        Form elements
    ------------------*/
    .form .columns
    {
        --form_columns_offset: 24px;
    }


    .form .radios .row,
    .form .checks .row
    {
        margin-left: -24px;
    }

    .form .radios .row > *,
    .form .checks .row > *
    {
        margin-left: 24px;
    }


    .form .balcony_design .row,
    .form .window_design .row
    {
        margin-bottom: -32px;
        margin-left: -24px;
    }

    .form .balcony_design .row > *,
    .form .window_design .row > *
    {
        width: calc(25% - 24px);
        margin-bottom: 32px;
        margin-left: 24px;
    }


    .form .radio .images
    {
        margin-top: 8px;
    }



    /*----------------
        Typography
    ----------------*/
    .text_block
    {
        line-height: 25px;
    }


    .text_block h2
    {
        font-size: 26px;
        line-height: 32px;

        margin-bottom: 28px !important;
    }


    .text_block img.left
    {
        width: calc(50% - 12px);
        margin-right: 24px;
    }

    .text_block img.right
    {
        width: calc(50% - 12px);
        margin-left: 24px;
    }



    /*-----------------
        Main slider
    -----------------*/
    .main_slider .data
    {
        width: 700px;
        height: 439px;
        padding: 60px 124px 70px 48px;
    }



    /*----------------
        Directions
    ----------------*/
    .directions .grid
    {
        grid-gap: 16px;
    }


    .directions .direction .thumb
    {
        height: 144px;
        margin-bottom: -16px;
    }


    .directions .direction .info
    {
        padding: 20px 16px;
    }


    .directions .direction .name
    {
        font-size: 16px;
    }


    .directions .direction .price
    {
        font-size: 13px;
    }


    .directions .direction .btns
    {
        padding-right: 16px;
        padding-left: 16px;
    }


    .directions .direction .details,
    .directions .direction .calc_btn
    {
        font-size: 13px;
    }

    .directions .direction .calc_btn .icon
    {
        width: 14px;
        height: 16px;
        margin-right: 4px;
    }


    .directions .direction.big .thumb
    {
        height: 419px;
    }



    /*--------------
        Projects
    --------------*/
    .projects .row
    {
        margin-bottom: -24px;
        margin-left: -24px;
    }

    .projects .row > *,
    .projects .row.big > *
    {
        width: calc(33.333% - 24px);
        margin-bottom: 24px;
        margin-left: 24px;
    }


    .projects .project .info
    {
        padding: 24px 16px 16px;
    }



    /*------------------
        Consult form
    ------------------*/
    .consult_form .info
    {
        width: 436px;
    }


    .consult_form .info .desc
    {
        font-size: 22px;
        line-height: 32px;

        margin-top: 16px;
    }


    .consult_form .call
    {
        font-size: 20px;
        line-height: 28px;

        margin-top: 64px;
    }

    .consult_form .call .icon
    {
        width: 40px;
        height: 40px;
    }


    .consult_form .call .phone
    {
        font-size: 22px;
        line-height: 28px;

        margin-top: 4px;
    }


    .consult_form .form
    {
        width: calc(100% - 480px);
    }



    /*----------------
        Advantages
    ----------------*/
    .advantages .item br
    {
        display: none;
    }


    .advantages .item .icon
    {
        height: 60px;
        margin-bottom: 20px;
    }



    /*-----------
        Steps
    -----------*/
    .steps .row > *
    {
        width: calc(16.6% - 24px);
        margin-left: 24px;
    }


    .steps .step
    {
        line-height: 19px;
    }

    .steps .step + .step:before
    {
        left: -79px;
    }



    /*-----------
        Quote
    -----------*/
    .quote .data
    {
        width: calc(100% - 447px);
    }


    .quote .text
    {
        line-height: 26px;

        padding: 28px;

        border-radius: 20px;
    }

    .quote .text:after
    {
        bottom: -16px;
        left: 40px;

        width: 32px;
        height: 32px;
    }


    .quote .author
    {
        margin-top: 28px;
    }



    /*--------------
        Articles
    --------------*/
    .articles .row
    {
        margin-bottom: -24px;
        margin-left: -24px;
    }

    .articles .row > *
    {
        width: calc(33.333% - 24px);
        margin-bottom: 24px;
        margin-left: 24px;
    }


    .articles .article .info
    {
        padding: 24px 20px 20px;
    }



    /*--------------
        Services
    --------------*/
    .services table th,
    .services table td
    {
        padding: 16px 20px;
    }



    /*-------------
        Reviews
    -------------*/
    .reviews .row
    {
        margin-bottom: -40px;
        margin-left: -24px;
    }

    .reviews .row > *
    {
        width: calc(25% - 24px);
        margin-bottom: 40px;
        margin-left: 24px;
    }



    /*----------
        Calc
    ----------*/
    .calc .type
    {
        padding: 20px 24px;
    }


    .calc .type .row
    {
        margin-left: -40px;
    }

    .calc .type .row > *
    {
        margin-left: 40px;
    }


    .calc .calc_info
    {
        padding: 24px;
    }


    .calc .col_left
    {
        width: calc(100% - 360px);
    }

    .calc .col_right
    {
        width: 320px;
    }


    .calc .image .item
    {
        width: 80px;
        height: 147px;
    }

    .calc .image .item.big_h
    {
        height: 206px;
    }


    .calc .image .item .name
    {
        font-size: 9px;
        line-height: 11px;

        padding: 10px;
    }


    .calc .form .columns
    {
        --form_columns_offset: 24px;
    }



    /*------------
        Footer
    ------------*/
    footer
    {
        padding: 32px 0;
    }


    footer .menu
    {
        font-size: 13px;
    }


    footer .contacts
    {
        margin-right: 64px;
    }
}

@media print,
(max-width: 1144px)
{
	/*------------
        Header
    ------------*/
    header
    {
        position: fixed;
        z-index: 101;
        top: 0;
        left: 0;

        width: 325px;
        height: 100%;
        min-height: -moz-available;
        min-height: -webkit-fill-available;
        min-height:         fill-available;
        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: 100%;
        min-height: -moz-available;
        min-height: -webkit-fill-available;
        min-height:         fill-available;
        padding: 20px 0;

        justify-content: flex-start;
        align-items: flex-start;
        align-content: flex-start;
        flex-wrap: wrap;
        overscroll-behavior-y: contain;
    }

    header .mob_scroll > *
    {
        width: 100%;
    }


    header .logo
    {
        display: none;
    }


    header .menu
    {
        display: block;

        width: 100%;
    }

    header .menu_item + .menu_item
    {
        margin-top: 12px;
        margin-left: 0;
    }

    header .menu_item > a
    {
        font-size: 15px;
    }


    header .contacts
    {
        width: 100%;
        margin-top: 40px;
        margin-left: 0;
    }


    header .consult_btn
    {
        font-size: 14px;
        line-height: 24px;

        margin-top: 16px;
        margin-left: 0;
        padding: 8px 20px;
    }



    /*-----------------
        Mob. header
    -----------------*/
    .mob_header
    {
        display: block;
    }
	
}