@media print,
(max-width: 1023px)
{
    /*-------------------
        Global styles
    -------------------*/
    :root
    {
        --sidebar_width: 100%;
    }


    .content_flex .content
    {
        width: 100%;
    }



    /*------------
        Header
    ------------*/
    header
    {
        position: fixed;
        top: 0;
        right: 100%;
        left: auto;

        width: 325px;
        height: 100%;
        min-height: -moz-available;
        min-height: -webkit-fill-available;
        min-height:         fill-available;
        margin: 0;
        padding: 0;

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

        background: var(--bg);
    }


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


    header .scroll
    {
        display: flex;
        overflow: auto;
        flex-direction: column;

        height: 100%;
        min-height: -moz-available;
        min-height: -webkit-fill-available;
        min-height:         fill-available;
        padding-block: var(--cont_padding);

        overscroll-behavior-y: contain;
    }



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

    .wrap{
        margin-top: 96px;
    }



    /*-------------
        Sidebar
    -------------*/
    aside
    {
        margin-top: var(--cont_padding_double);
    }



    /*-------------------
        First section
    -------------------*/
    .first_section .data
    {
        width: 460px;

        gap: var(--inner_gap_b);
    }


    .first_section .items .icon
    {
        width: 24px;
        height: 24px;
    }


    .first_section .items span
    {
        width: calc(100% - 40px);
    }


    .first_section .btn
    {
        width: 300px;
    }


    .first_section .image
    {
        right: calc(var(--cont_padding) * -1);

        width: 448px;
    }



    /*----------------
        About info
    ----------------*/
    .about_info .block_head
    {
        padding-bottom: 0;
    }


    .about_info .data
    {
        overflow: hidden;

        padding-block: var(--cont_padding_double) 0;
    }


    .about_info .image
    {
        position: relative;
        left: 0;

        width: 320px;
        margin-inline: auto;
        margin-top: var(--cont_padding_double);
    }


    .about_info .info
    {
        width: 100%;
    }


    .about_info .bg
    {
        width: 100%;
        height: auto;

        border-radius: 0 0 var(--border_radius_s) var(--border_radius_s);
    }


    .about_info .bg img
    {
        width: 100%;
        height: auto;
    }



    /*-------------------
        Contacts info
    -------------------*/
    .contacts_info .contacts .info
    {
        width: 100%;

        gap: var(--inner_gap_s);
    }


    .contacts_info .contacts .map
    {
        width: 100%;
        max-width: 100%;
        margin-top: var(--inner_gap);
    }



    .contacts_info .requisites .label
    {
        width: 240px;
    }


    .contacts_info .requisites .val
    {
        width: calc(100% - 240px);
    }



    /*------------------
        Action block
    ------------------*/
    .action_block .data
    {
        width: 100%;
    }


    .action_block .desc
    {
        font-size: var(--font_size);
    }



    /*--------------------
        Contacts block
    --------------------*/
    .contacts_block .data
    {
        width: 324px;
        min-height: 260px;
    }


    .action_block .image
    {
        position: relative;
        left: 0;

        width: 480px;
        margin-inline: auto;
    }



    /*---------------
        Documents
    ---------------*/
    .documents .anchors .row > *:nth-child(12) ~ *,
    .documents .anchors.show_all .row > *:nth-child(16) ~ *
    {
        display: none;
    }


    .documents .anchors.show_all .row > *:nth-child(12) ~ *
    {
        display: block;
    }



    .documents .grid_row
    {
        --count_per_line: 2;
    }



    /*--------------
        Articles
    --------------*/
    .articles .grid_row
    {
        --count_per_line: 2;
    }



    /*-------------
        Reviews
    -------------*/
    .reviews .rating .val img
    {
        width: 60px;
        height: 30px;
    }


    .reviews .rating .stars
    {
        gap: 2px;
    }


    .reviews .grid_row
    {
        --count_per_line: 2;
    }



    /*------------
        Prices
    ------------*/
    .prices .head .title
    {
        width: calc(100% - 44px);
    }


    .prices .head .arr
    {
        width: 20px;
        height: 20px;
    }



    .prices table td.price
    {
        width: 180px;
    }



    /*----------------
        Info block
    ----------------*/
    .info_block .info
    {
        width: 400px;
    }


    .info_block .image
    {
        right: calc(var(--cont_padding_double) * -1);

        width: 352px;
    }



    /*-------------
        Persons
    -------------*/
    .persons .grid_row
    {
        --count_per_line: 2;
    }



    /*-----------
        Steps
    -----------*/
    .steps .grid_row
    {
        --count_per_line: 1;
        --offset_h: 0;
    }


    .steps .step .number span
    {
        min-width: 64px;
    }



    /*-----------
        Cases
    -----------*/
    .cases .head
    {
        min-height: 220px;
    }


    .cases .head .title
    {
        align-content: flex-start;
        align-items: flex-start;
        flex-direction: column;
        justify-content: flex-start;

        font-size: 48px;
    }


    .cases .head .image
    {
        right: 12%;
        left: auto;

        width: 180px;
    }



    /*-----------------
        Person info
    -----------------*/
    .person_info .photo
    {
        margin-bottom: var(--inner_gap_b);
    }


    .person_info .info
    {
        order: 2;

        width: 100%;
    }


    .person_data .item .label
    {
        margin-bottom: var(--inner_gap_s);
    }



    /*-----------
        Certs
    -----------*/
    .certs .grid_row
    {
        --count_per_line: 4;
    }


    .certs .grid_row > *:nth-child(4) ~ *,
    .certs .grid_row.show_all > *:nth-child(5) ~ *
    {
        display: none;
    }


    .certs .grid_row.show_all > *:nth-child(4) ~ *
    {
        display: flex;
    }



    /*-----------
        Posts
    -----------*/
    .posts .grid_row
    {
        --count_per_line: 2;
    }


    .posts .post .icon
    {
        width: 24px;
        height: 24px;
    }


    .posts .post .date
    {
        width: calc(100% - 44px);
    }



    /*------------
        Videos
    ------------*/
    .videos .grid_row
    {
        --count_per_line: 2;
    }



    /*--------------
        Services
    --------------*/
    .services .grid_row
    {
        --count_per_line: 2;
    }



    /*-------------------
        Services list
    -------------------*/
    .services_list .grid_row
    {
        --count_per_line: 2;
    }



    /*------------------
        Service data
    ------------------*/
    .service_data .cont
    {
        gap: var(--cont_padding_double);
    }


    .service_data .facts .grid_row
    {
        --offset_v: var(--block_padding_b);
        --count_per_line: 2;
    }


    .steps .step .number span
    {
        min-width: 64px;
    }



    /*------------------
        Errors facts
    ------------------*/
    .errors_facts .grid_row
    {
        --count_per_line: 2;
    }


    .errors_facts .item .icon
    {
        width: 28px;
        height: 28px;
        margin-top: 6px;
    }


    .errors_facts .item span
    {
        width: calc(100% - 40px);
    }



    /*------------
        Footer
    ------------*/
    footer .bottom
    {
        font-size: var(--font_size_s);
    }


    footer .col
    {
        width: 100%;
        margin-bottom: var(--cont_padding_double);
    }
}
