@media (max-width: 479px)
{
    /*---------------
	    Main styles
	---------------*/
    :root
    {
        --font_size_title: 28px;
    }


    .cont
    {
        padding: 0 15px;
    }


    .block
    {
        margin-bottom: 40px;
    }


    .block_head
    {
        margin-bottom: 20px;
    }



    .page_head .cats a
    {
        font-size: 11px;
        line-height: 26px;

        height: 26px;
        min-height: 26px;
        padding: 0 11px;
    }



    .text_block
    {
        line-height: 22px;
    }

    .text_block h2
    {
        font-size: 24px;
    }

    .text_block p,
    .text_block img,
    .text_block ul,
    .text_block ol
    {
        margin-bottom: 20px;
    }


    .text_block blockquote,
    .text_block q
    {
        padding: 15px 20px;
    }

    .text_block blockquote .text,
    .text_block q .text
    {
        font-size: 16px;
        line-height: 24px;
    }

    .text_block .slider_in_text
    {
        margin: 30px -15px;
    }



    .form .columns > *
    {
        width: calc(100% - var(--form_columns_offset));
    }

    .form .submit
    {
        padding-top: 0;
    }

    .form .submit .agree
    {
        width: 100%;
        max-width: 100%;
        margin-bottom: 20px;
    }

    .form .submit_btn
    {
        width: 100%;
    }



    .owl-carousel .owl-nav button.owl-prev,
    .owl-carousel .owl-nav button.owl-next
    {
        width: 44px;
        height: 44px;
        margin-top: -22px;
    }

    .owl-carousel .owl-nav button.owl-prev
    {
        left: 5px;
    }

    .owl-carousel .owl-nav button.owl-next
    {
        right: 5px;
    }

    .owl-carousel .owl-nav button.owl-prev:before,
    .owl-carousel .owl-nav button.owl-next:before
    {
        width: 12px;
        height: 12px;
        margin-top: -6px;
    }



    /*---------------
		Header
	---------------*/
    .mob_header
    {
        padding: 15px 0;
    }

    .mob_header .logo a,
    .mob_header .logo img
    {
        height: 50px;
    }


    .mob_header .contacts
    {
        display: none;
    }



    /*---------------
		Sidebar
	---------------*/
    aside .service_inform
    {
        font-size: 17px;
        line-height: 23px;
    }



    /*---------------
		Main section
	---------------*/
    .main_slider .slide .cont
    {
        min-height: 360px;
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .main_slider .slide .info
    {
        font-size: 13px;
        line-height: 18px;

        padding: 0 40px;
    }

    .main_slider .slide .title
    {
        font-size: 26px;
        line-height: 30px;
    }



    .projects .flex > *
    {
        width: calc(100% - 15px);
    }



    .services .flex > *
    {
        width: calc(50% - 20px);
    }



    .about .info .links a
    {
        width: 100%;
    }



    .about .advantages
    {
        padding: 20px 30px;
    }



    .news .flex > *
    {
        width: calc(100% - 15px);
    }

    .news .flex > *.mob_hide
    {
        display: block;
    }



    .articles .flex > *
    {
        width: calc(100% - 15px);
    }



    .about_info .advantages
    {
        padding: 20px 30px;
    }



    .contacts_info .info
    {
        padding: 20px;
    }

    .contacts_info .info .item + .item
    {
        margin-top: 15px;
        padding-top: 15px;
    }

    .contacts_info .info .val
    {
        font-size: 16px;
        line-height: 22px;
    }


    .contacts_info .feedback
    {
        padding: 20px;
    }


    .contacts_info .map
    {
        height: 360px;
    }



    .project_info .slider
    {
        width: calc(100% + 30px);
        margin-right: -15px;
        margin-left: -15px;
    }


    .project_info .inform
    {
        padding: 15px;
    }

    .project_info .inform .title
    {
        font-size: 16px;
        line-height: 20px;

        margin-bottom: 15px;
    }

    .project_info .inform .cat
    {
        margin-bottom: 15px;
    }



    .services .list
    {
        margin-bottom: -40px;
    }

    .services .list > *
    {
        margin-bottom: 40px;
    }


    .services .list .service
    {
        font-size: 13px;
        line-height: 20px;
    }

    .services .list .service .icon
    {
        width: 80px;
        height: 80px;
        padding: 20px;
    }

    .services .list .service .info
    {
        width: calc(100% - 120px);
    }

    .services .list .service .name
    {
        font-size: 18px;
    }



    /*---------------
		Footer
	---------------*/
    footer .copyright
    {
        width: 100%;
        margin-bottom: 20px;

        text-align: center;
    }


    footer .creator
    {
        margin-right: auto;
        margin-left: auto;
    }
}
