@media (max-width: 767px)
{
    /*---------------
        Main styles
    ---------------*/
    :root
    {
        --font_size: 14px;
        --font_size_title: 28px;
    }



    .block_head
    {
        margin-bottom: 25px;
    }

    .block_head .title
    {
        line-height: 32px;
    }

    .block_head .title div
    {
        padding: 0;

        background: none !important;
    }



    .fixed_links
    {
        top: 0;
        right: 0;

        width: 100%;
        padding: 40px;

        background: #fff;
    }

    .fixed_links > * + *
    {
        margin-top: 20px;
    }

    .fixed_links button
    {
        font-size: 16px;
        line-height: 24px;

        width: 100%;
        height: 24px;

        text-align: center;

        border: none;
        border-radius: 0;
    }

    .fixed_links button span,
    .fixed_links button:hover span,
    .fixed_links button.active span
    {
        position: relative;
        top: 0;
        right: 0;

        display: block;
        visibility: visible;

        pointer-events: auto;

        opacity: 1;
    }

    .fixed_links button:hover,
    .fixed_links button.active
    {
        background: none;
    }


    .fixed_links button.close
    {
        display: flex;
    }



    /*---------------
        Header
    ---------------*/
    header
    {
        padding: 15px 0;
    }

    header .cont
    {
        min-height: 0;
    }


    header .logo
    {
        position: relative;

        margin: 0 auto 0 0;
    }

    header .logo img
    {
        height: 65px;
    }


    header .socials
    {
        display: none;
    }


    header .mob_menu_link
    {
        display: block;
    }



    /*---------------
        Sidebar
    ---------------*/



    /*---------------
        Main section
    ---------------*/
    .first_section
    {
        height: 500px;
        padding-top: 150px;
    }

    .first_section .info
    {
        width: 310px;
    }

    .first_section .title
    {
        font-size: 26px;
        line-height: 34px;
    }

    .first_section .link
    {
        min-width: 260px;
        margin-top: 25px;

        background-image:    -moz-linear-gradient( 78deg, rgb(252,212,31) 0%, rgb(255,185,18) 100%);
        background-image: -webkit-linear-gradient( 78deg, #fcd41f 0%, #ffb912 100%);
        background-image:     -ms-linear-gradient( 78deg, rgb(252,212,31) 0%, rgb(255,185,18) 100%);
    }


    .first_section .bg
    {
        width: 822px;
        height: 500px;
        margin-right: -680px;
    }



    .courses .tabs
    {
        margin-bottom: 20px;
    }

    .courses .tabs button
    {
        font-size: 14px;
        line-height: 40px;

        height: 42px;
        min-height: 0;
        padding: 4px 18px 6px;
    }


    .courses .flex
    {
        margin-left: 0;

        --courses_count: 1;
    }

    .courses .flex > div
    {
        width: 100%;
        margin-left: 0;
    }


    .courses .course .name
    {
        font-size: 19px;
    }



    .advantages .item .desc
    {
        font-size: 13px;
        line-height: 18px;
    }



    .shedule .tabs button
    {
        font-size: 20px;
    }


    .shedule .flex
    {
        margin-left: 0;

        --shedule_count: 1;
    }

    .shedule .flex > *
    {
        width: 100%;
        margin-left: 0;
    }


    .shedule .course .info
    {
        font-size: 13px;
        line-height: 18px;
    }

    .shedule .course .name
    {
        font-size: 19px;
        line-height: 21px;
    }



    .teachers .teacher
    {
        font-size: 14px;
        line-height: 20px;
    }



    .video_about .video_link
    {
        margin-top: 0;
        padding-bottom: 20px;
    }

    .video_about .video_link:before
    {
        bottom: -40px;
    }

    .video_about .link
    {
        padding-bottom: 62%;
    }

    .video_about .link:before
    {
        display: none;
    }



    .reviews .add_review
    {
        padding: 30px;
    }

    .reviews .add_review .title
    {
        font-size: 28px;
        line-height: 30px;

        margin-bottom: 22px;
    }



    .certs
    {
        height: 520px;
        margin-bottom: 20px;
        padding-top: 85px;

        background-position: 50% -5px;
        background-size: auto calc(100% + 60px);
    }

    .certs .or
    {
        font-size: 20px;
        line-height: 25px;

        width: 100px;
    }

    .certs .flex a
    {
        max-width: calc(50% - 50px);
    }



    .it_will_work .img
    {
        width: 100%;
        margin-top: 20px;
        padding-bottom: 129%;

        order: 3;
    }


    .it_will_work .info
    {
        width: 100%;
    }

    .it_will_work .info .name
    {
        font-size: 19px;
        line-height: 21px;
    }



    .order_block .form
    {
        padding: 0;
    }
	
	.payment_result {
		max-width: 90%;
	}



    /*---------------
        Footer
    ---------------*/
    footer
    {
        background-position: 100% -20px;
        background-size: auto calc(100% + 20px);
    }

	footer .flex {
		justify-content: center;
		flex-direction: column;
		align-content: center;
		align-items: center;
		gap: 30px;
	}

    footer .logo
    {
        font-size: 16px;
    }


    footer .phone
    {
        /*margin-top: -35px;
        margin-left: auto;*/
    }


    footer .col_left
    {
        width: 100%;

        text-align: center;
    }


    footer .payments img
    {
        margin: 0 auto;
    }


    footer .link
    {
        width: 100%;
        margin-top: 15px;
        margin-right: auto;

        text-align: center;
    }

    footer .link + .link
    {
        margin-top: 0;
    }
	
	.footer_menu {
		order: 1;
		padding-bottom: 20px;
	}
	
	.ticket_buy {
		width: 405px;
		gap: 5px;
	}
	.row_title {
		font-size: 10px;
	}
	.seats_row {
		padding-left: 45px;
		gap: 4px;
	}
	.seats_item {
		width: 9px;
		height: 9px;
	}
	.seats_row_double {
		padding-left: 45px;
	}
	.seats_row_double.row_20 > .seats_row:nth-child(3) {
		transform: translate(-6px, 0);
	}
	.seats_row.row_41 {
		transform: translate(6px, 0);
	}
	.seats_row.row_41 .row_title {
		transform: translate(-6px, 0);
	}
	
	.seats_item:hover .seat {
		transform: translate(-50%, -18px);
		padding: 5px 5px;
		width: 100px;
	}
	.seat_price {
		font-size: 13px;
	}
	.seat_price_circle {
		width: 8px;
		height: 8px;
		margin-right: 5px;
	}
	.seat_name {
		font-size: 12px;
	}
	
	.ticket_cart_table {
		width: 100%;
	}
	.checkout_form {
		width: 100%;
	}
	.ticket_cart_price {
		margin-left: auto;
	}



    /*---------------
        PopUp
    ---------------*/
    .modal
    {
        padding: 40px 50px;
    }

    .modal_title
    {
        line-height: 32px;

        margin-bottom: 20px;
    }


    #success_modal .title
    {
        font-size: 24px;
        line-height: 30px;
    }
}
