@media (max-width: 767px)
{
    /*-------------------
        Global styles
    -------------------*/
    :root
    {
        --cont_padding: 20px;
        --font_size_title: 80px;
        --block_offset: 60px;
    }



    /*------------
        Header
    ------------*/
    header .logo
    {
        font-size: 20px;

        gap: 12px;
    }


    header .logo img
    {
        width: 64px;
        height: 64px;
    }



    /*-------------------
        First section
    -------------------*/
    .first_section .cont
    {
        min-height: 0;

        padding-block: 148px var(--block_offset);
    }


    .first_section .image
    {
        display: none;
    }


    .first_section .items
    {
        font-size: 14px;

        margin-bottom: calc(var(--cont_padding) * -1);
        margin-left: calc(var(--cont_padding) * -1);

        gap: 0;
    }


    .first_section .items > *
    {
        width: calc(33.333% - var(--cont_padding));
        margin-bottom: var(--cont_padding);
        margin-left: var(--cont_padding);
        padding-top: 24px;
    }


    .first_section .items > *:before
    {
        width: 10px;
        height: 10px;
    }


    .first_section .items br
    {
        display: none;
    }


    .first_section .btns
    {
        width: 100%;
    }


    .first_section .btns .btn
    {
        flex: 1;
    }



    /*--------------
        Services
    --------------*/
    .services .block_title
    {
        margin-bottom: -16px;
    }


    .services .item .icon
    {
        width: 56px;
        height: 56px;
    }


    .services .item .name
    {
        width: calc(100% - 80px);
    }



    /*-------------------
        Contacts info
    -------------------*/
    .contacts_info .page_title
    {
        margin-bottom: calc(var(--cont_padding) * 2);
    }


    .contacts_info .item .label
    {
        font-size: 20px;
    }


    .contacts_info .map
    {
        height: 360px;
    }



    /*------------------
        Bottom links
    ------------------*/
    .bottom_links .item
    {
        font-size: 18px;
    }


    .bottom_links .item .icon
    {
        height: 56px;
    }



    /*----------------
        About info
    ----------------*/
    .about_info .data
    {
        gap: calc(var(--block_offset) / 2);
    }


    .about_info .boss
    {
        padding-top: calc(var(--block_offset) / 2);
    }


    .about_info .boss .info
    {
        order: 2;

        width: 100%;

        gap: 16px;
    }


    .about_info .boss .name
    {
        font-size: 20px;
    }


    .about_info .boss .image
    {
        width: 200px;
        margin-bottom: var(--cont_padding);
    }


    .about_info .col_right
    {
        gap: calc(var(--cont_padding) * 2);
    }



    /*----------------
        Advantages
    ----------------*/
    .advantages .info
    {
        gap: var(--cont_padding);
    }


    .advantages .info .desc
    {
        font-size: 18px;
    }


    .advantages .info .desc br
    {
        display: none;
    }


    .advantages .info .image
    {
        top: -80px;
        right: -60px;
        bottom: auto;

        width: 300px;
        height: 185px;
    }


    .advantages .grid .col,
    .advantages .grid .item1,
    .advantages .grid .item2,
    .advantages .grid .item3
    {
        width: 100%;
    }


    .advantages .grid .item .icon,
    .advantages .grid .item3 .icon
    {
        height: 60px;
    }


    .advantages .grid .item .desc
    {
        margin-top: -8px;
    }



    /*------------
        Footer
    ------------*/
    footer
    {
        padding-block: var(--block_offset) calc(var(--cont_padding) * 2);
    }


    footer .row > *
    {
        width: calc(50% - var(--cont_padding));
    }


    footer .row > *.col
    {
        display: flex;
        align-content: center;
        align-items: center;
        flex-wrap: wrap;
        justify-content: space-between;
        order: 3;

        width: calc(100% - var(--cont_padding));
        padding-top: var(--cont_padding);
    }


    footer .logo
    {
        font-size: 20px;

        width: auto;

        gap: 12px;
    }


    footer .logo img
    {
        width: 64px;
        height: 64px;
    }


    footer .btns
    {
        width: auto;
    }


    footer .copyright
    {
        width: 100%;
    }
}
