body {
    margin: 0;
    font-family: 'Roboto', sans-serif;
    user-select: none;
}

body * {
    box-sizing: border-box;
}

.center-block {
    width: 1450px;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
}

.first-screen {
    background-image: url(../img/header-bg.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    height: 792px;
    position: relative;
}

.first-screen:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.8) 0%, #FFFFFF 100%);
}

.header {
    display: flex;
    align-items: center;
    padding-top: 31px;
    margin-bottom: 66px;
    position: relative;
}

.header__menu {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.header__logo {
    width: 140px;
    margin-right: 30px;
}

.header__logo img {
    width: 100%;
    height: auto;
}

.header__nav {
    background: linear-gradient(180deg, #FFC900 0%, #F8A100 100%);
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
    border-radius: 15px;
    padding: 21px 47px 21px 47px;
    margin-right: 31px;
    flex: 0 1 810px;
}

.header__socials {
    margin-right: 15px;
    display: flex;
}

.header__socials a {
    font-size: 0;
}

.header__socials a.header__tg {
    margin-right: 10px;
}

.header__socials a {
    overflow: hidden;
    border-radius: 9px;
}

.header__socials a img {
    transition: 0.2s linear;
}

.header__socials a:hover img {
    transform: scale(1.2);
}

.header__menu a {
    font-weight: 700;
    font-size: 18px;
    line-height: 21px;
    color: #002339;
    text-decoration: none;
    transition: 0.2s linear;
}

body a:focus {
    text-decoration: none;
}

.header__menu a:hover {
    color: #fff;
}

.header__phone {
    font-weight: 700;
    font-size: 22px;
    line-height: 26px;
    color: #002339;
    text-decoration: none;
    white-space: nowrap;
    margin-right: 9px;
    transition: 0.2s linear;
}

.header__phone:hover {
    color: #F8A100;
}

.header__phone-wrap:first-child .header__phone {
    margin-bottom: 12px;
}

.header__phone-wrap {
    font-weight: 400;
    font-size: 20px;
    line-height: 23px;
    color: #002339;
    display: flex;
}

.first-screen__desc {
    text-align: center;
    position: relative;
}

.first-screen__title {
    font-weight: 700;
    font-size: 55px;
    line-height: 64px;
    color: #002339;
    margin-bottom: 40px;
    letter-spacing: -0.7px;
}

.first-screen__subtitle {
    font-weight: 500;
    font-size: 30px;
    line-height: 41px;
    color: #002339;
    margin-bottom: 60px;
}

.first-screen__link {
    background: linear-gradient(180deg, #FFC900 0%, #F8A100 100%);
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
    border-radius: 15px;
    display: inline-block;
    font-weight: 700;
    font-size: 20px;
    line-height: 23px;
    color: #000000;
    padding: 21px 72px;
    text-decoration: none;
    transition: 0.2s linear;
}

.first-screen__link:hover {
    background: linear-gradient(180deg, #013555 0%, #012840 100%);
    color: #fff;
}

.courses__title {
    text-align: center;
    font-weight: 700;
    font-size: 40px;
    line-height: 47px;
    color: #002339;
    margin-bottom: 73px;
    letter-spacing: -0.6px;
}

.courses__list {
    display: flex;
    margin: 0 -15px;
}

.courses__item-wrap {
    flex: 0 1 calc(33% - 30px);
    margin: 0 15px 20px;
    background: #F4F4F4;
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
    border-radius: 20px;
    text-align: center;
    padding-bottom: 35px;
}

.courses__name {
    margin-top: 35px;
    margin-bottom: 10px;
    font-weight: 700;
    font-size: 24px;
    line-height: 28px;
    color: #002339;
}

.courses__age {
    margin-bottom: 10px;
    font-weight: 400;
    font-size: 24px;
    line-height: 28px;
    color: #002339;
}

.courses__age strong {
    font-weight: 700;
    font-size: 24px;
    line-height: 28px;
    color: #002339;
}

.courses__price {
    font-weight: 400;
    font-size: 24px;
    line-height: 28px;
    color: #000000;
}

.courses__price span {
    font-weight: 700;
    font-size: 28px;
    line-height: 33px;
    color: #F8A100;
}

.courses__item-wrap.form-item {
    padding: 43px 25px 34px;
    background: #FDBB00;
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
    border-radius: 20px;
    width: 450px;
}

.courses__form-title, .hidden-title {
    font-weight: 500;
    font-size: 28px;
    line-height: 33px;
    display: flex;
    align-items: center;
    text-align: center;
    color: #000000;
    margin-bottom: 43px;
}

.wpcf7-form:not(.invalid).sent .courses__form-title, .wpcf7-form:not(.invalid).sent p {
    display: none;
}

.hidden-title, .wpcf7-response-output {
    display: none;
}

.wpcf7-form.sent:not(.invalid) .hidden-title, .wpcf7-form.sent:not(.invalid) .hidden-title p {
    display: block;
}

.wpcf7-form.sent:not(.invalid) .hidden-title {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}

.courses__img img {
    max-width: 100%;
}

form.courses__form {
    display: flex;
    flex-direction: column;
}

.courses__form-wr input[type="text"], .courses__form-wr input[type="phone"] {
    border: none;
    background: #FFFFFF;
    border-radius: 20px;
    padding: 26px 25px;
    font-weight: 500;
    font-size: 20px;
    line-height: 23px;
    color: #000;
}

.courses__form-wr input::placeholder {
    color: #9B9B9B;
}

.wpcf7-form-control-wrap {
    margin-bottom: 25px;
}

.courses__form-wr input[type="phone"] {
    margin-bottom: 45px;
}

.courses__form-wr input[type="submit"] {
    background: linear-gradient(180deg, #00385B 0%, #002339 100%);
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
    border-radius: 15px;
    outline: none;
    border: none;
    font-weight: 700;
    font-size: 20px;
    line-height: 23px;
    color: #FFFFFF;
    padding: 21px 72px;
    align-self: center;
    cursor: pointer;
    transition: 0.2s linear;
}

.courses__form-wr input[type="submit"]:hover {
    background: linear-gradient(180deg, #F9F9F9 0%, #F4F4F4 100%);
    color: #01263D;
}

.courses {
    margin-bottom: 73px;
    margin-top: -155px;
    z-index: 1;
    position: relative;
}

.gallery__title {
    text-align: center;
    font-weight: 700;
    font-size: 40px;
    line-height: 47px;
    color: #002339;
    margin-bottom: 70px;
}

.gallery__list {
    display: flex;
    margin: 0 -15px;
    flex-wrap: wrap;
    justify-content: center;
}

.gallery__images {
    margin: 0 15px 20px;
    flex: 0 1 calc(25% - 30px);
    border-radius: 20px;
    overflow: hidden;
    height: 500px;
}

.gallery {
    margin-bottom: 80px;
}

.vantages__title {
    text-align: center;
    font-weight: 700;
    font-size: 40px;
    line-height: 47px;
    color: #002339;
    margin-bottom: 70px;
}

.vantages__list {
    display: flex;
    justify-content: space-between;
}

.vantages__item {
    text-align: center;
}

.vantages__name {
    font-weight: 400;
    font-size: 24px;
    line-height: 28px;
    text-align: center;
    color: #002339;
}

.vantages__icon {
    margin-bottom: 20px;
}

.vantages {
    margin-bottom: 100px;
}

.footer__item--title {
    font-weight: 400;
    font-size: 18px;
    line-height: 21px;
    letter-spacing: 0.1em;
    color: #002339;
    margin-bottom: 5px;
}

a.footer__item--phone {
    font-weight: 700;
    font-size: 24px;
    line-height: 28px;
    color: #002339;
    text-decoration: none;
    transition: 0.2s linear;
}

a.footer__item--phone:hover {
    color: #F8A100;
}

.footer__item {
    margin-bottom: 15px;
}

.footer__item--address {
    font-weight: 600;
    font-size: 18px;
    line-height: 21px;
    color: #002339;
}

.copyright {
    font-weight: 700;
    font-size: 18px;
    line-height: 21px;
    letter-spacing: 0.1em;
    color: #002339;
    margin-top: 64px;
}

.footer {
    background: radial-gradient(51.59% 554.7% at 100% 50%, #F4F4F4 0%, rgba(244, 244, 244, 0) 57.65%, #F4F4F4 100%);
}

.footer__inner {
    background-image: url(../img/footer-bg.png);
    background-repeat: no-repeat;
    background-size: 684px;
    background-position: top -42px right 34px;
    padding: 89px 0 30px 0;
}

.popup {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9;
    bottom: 0;
    display: none;
}

.popup.open {
    display: block;
}

.popup__bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgb(0, 0, 0, 0.2);
}

.popup__inner {
    position: relative;
    width: 450px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    padding: 78px 25px 34px;
    background: #FDBB00;
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.25);
    border-radius: 20px;
    max-width: 100%;
}

.popup__close {
    width: 40px;
    height: 40px;
    background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M23.6645 20.0327L39.24 4.45694C40.2535 3.44379 40.2535 1.80561 39.24 0.79258C38.2269 -0.220574 36.5887 -0.220574 35.5757 0.79258L19.9998 16.3682L4.42459 0.79258C3.41095 -0.220574 1.77338 -0.220574 0.760229 0.79258C-0.25341 1.80573 -0.25341 3.44379 0.760229 4.45694L16.3353 20.0327L0.760351 35.6082C-0.253288 36.6214 -0.253288 38.2596 0.760351 39.2726C1.00068 39.5136 1.28625 39.7048 1.60068 39.8351C1.9151 39.9654 2.25218 40.0322 2.59253 40.0319C3.25582 40.0319 3.91935 39.778 4.42471 39.2726L19.9998 23.697L35.5757 39.2726C35.816 39.5136 36.1016 39.7047 36.416 39.835C36.7304 39.9653 37.0675 40.0322 37.4078 40.0319C38.0711 40.0319 38.7346 39.778 39.24 39.2726C40.2535 38.2595 40.2535 36.6214 39.24 35.6082L23.6645 20.0327Z' fill='black'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    position: absolute;
    top: 25px;
    right: 25px;
    cursor: pointer;
}

.courses__form-wr p {
    margin: 0 0 0;
    text-align: center;
}

.courses__form-wr span.wpcf7-form-control-wrap {
    display: block;
}

.courses__form-wr input[type="text"] {
    max-width: 100%;
}

.courses__form-wr br {
    display: none;
}

span.wpcf7-spinner {
    display: none;
    margin: 0px auto 0;
}

.submitting span.wpcf7-spinner {
    display: block;
}

video.how__content-items {
    max-width: 100%;
	border-radius: 20px;
}

.courses__form-wr:not(.popup__inner) {
    height: 100%;
}

.wpcf7 {
    height: 100%;
}

form.wpcf7-form.sent {
    height: 100%;
}

.courses__form-wr select.wpcf7-form-control.wpcf7-select {
    border: none;
    background: #FFFFFF;
    border-radius: 20px;
    padding: 26px 25px;
    font-weight: 500;
    font-size: 20px;
    line-height: 23px;
    color: #000;
    width: 100%;
	-webkit-appearance: none;
}

label.form-select-wrap:before {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 50%;
    translate: 0 -20%;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
    z-index: 1;
    rotate: 45deg;
    right: 20px;
    pointer-events: none;
}

label.form-select-wrap {
    position: relative;
}

@media all and (max-width: 1700px) {
	.first-screen {
		height: auto;
	}
	
	.courses {
		margin-top: 50px;
	}
	
	.footer__inner {
		padding-left: 20px;
    	padding-right: 20px;
	}
}

@media all and (max-width: 1200px) {
    .burger {
        width: 40px;
        height: 40px;
        flex: none;
        padding: 0;
        border-radius: 9px;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40' fill='none'%3E%3Cg clip-path='url(%23clip0_1_221)'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M30 40H10C7.34784 40 4.8043 38.9464 2.92893 37.0711C1.05357 35.1957 0 32.6522 0 30V10C0 7.34784 1.05357 4.8043 2.92893 2.92893C4.8043 1.05357 7.34784 0 10 0L30 0C32.6522 0 35.1957 1.05357 37.0711 2.92893C38.9464 4.8043 40 7.34784 40 10V30C40 32.6522 38.9464 35.1957 37.0711 37.0711C35.1957 38.9464 32.6522 40 30 40Z' fill='%23F8A100'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M18.75 11.25H30C31.4432 11.2518 32.8319 10.6988 33.8789 9.70541C34.9258 8.71201 35.5508 7.3542 35.6247 5.91286C35.6985 4.47153 35.2156 3.05694 34.2757 1.96173C33.3358 0.866514 32.0109 0.17447 30.575 0.02875C30.3837 0.018125 30.1944 0 30 0H10C7.34784 0 4.8043 1.05357 2.92893 2.92893C1.05357 4.8043 0 7.34784 0 10L0 30C0 25.0272 1.97544 20.2581 5.49175 16.7417C9.00805 13.2254 13.7772 11.25 18.75 11.25Z' fill='%23FFC900'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M30 20C28.0222 20 26.0888 20.5865 24.4443 21.6853C22.7998 22.7841 21.5181 24.3459 20.7612 26.1732C20.0043 28.0004 19.8063 30.0111 20.1922 31.9509C20.578 33.8907 21.5304 35.6725 22.9289 37.0711C24.3275 38.4696 26.1093 39.422 28.0491 39.8079C29.9889 40.1937 31.9996 39.9957 33.8268 39.2388C35.6541 38.4819 37.2159 37.2002 38.3147 35.5557C39.4135 33.9112 40 31.9778 40 30V10C40 12.6522 38.9464 15.1957 37.0711 17.0711C35.1957 18.9464 32.6522 20 30 20Z' fill='%23FFC900'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_1_221'%3E%3Crect width='40' height='40' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        margin-right: 0;
        order: 4;
    }

    .burger:before {
        content: '';
        display: block;
        border-top: 4px solid #fff;
        border-bottom: 4px solid #fff;
        width: 30px;
        height: 5px;
        margin-bottom: 5px;
    }

    .burger:after {
        content: '';
        display: block;
        border-top: 4px solid #fff;
        width: 30px;
    }

    .header__nav {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background: rgb(0 0 0 / 20%);
        z-index: 9;
        margin: 0;
        border-radius: 0;
        padding: 0;
        display: none;
    }

    .header__nav.open {
        display: block;
    }

    ul.header__menu {
        display: block;
        width: 300px;
        margin-left: auto;
        background: #fff;
        padding: 70px 30px 10px;
        height: 100%;
    }

    ul.header__menu li {
        margin-bottom: 15px;
        text-align: right;
    }

    .header__logo {
        order: 1;
    }

    .header__phones {
        order: 2;
        margin-left: auto;
    }

    .header__socials {
        order: 3;
        margin-left: 30px;
    }

    .courses__item-wrap.form-item {
        flex: 0 0 600px;
        margin: 0 auto;
        max-width: 100%;
    }

    .courses__list {
        margin: 0;
        justify-content: center;
		flex-wrap: wrap;
    }

    .courses__item-wrap {
        flex: none;
        width: 450px;
        max-width: 100%;
    }

    .header__nav:before {
        content: '';
        display: block;
        width: 40px;
        height: 40px;
        position: absolute;
        top: 10px;
        right: 10px;
        background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M23.6645 20.0327L39.24 4.45694C40.2535 3.44379 40.2535 1.80561 39.24 0.79258C38.2269 -0.220574 36.5887 -0.220574 35.5757 0.79258L19.9998 16.3682L4.42459 0.79258C3.41095 -0.220574 1.77338 -0.220574 0.760229 0.79258C-0.25341 1.80573 -0.25341 3.44379 0.760229 4.45694L16.3353 20.0327L0.760351 35.6082C-0.253288 36.6214 -0.253288 38.2596 0.760351 39.2726C1.00068 39.5136 1.28625 39.7048 1.60068 39.8351C1.9151 39.9654 2.25218 40.0322 2.59253 40.0319C3.25582 40.0319 3.91935 39.778 4.42471 39.2726L19.9998 23.697L35.5757 39.2726C35.816 39.5136 36.1016 39.7047 36.416 39.835C36.7304 39.9653 37.0675 40.0322 37.4078 40.0319C38.0711 40.0319 38.7346 39.778 39.24 39.2726C40.2535 38.2595 40.2535 36.6214 39.24 35.6082L23.6645 20.0327Z' fill='black'/%3E%3C/svg%3E%0A");
        background-size: 30px;
        background-repeat: no-repeat;
        background-position: center;
    }
	
	.first-screen {
		background-size: cover;
	}
}

@media all and (max-width: 930px) {
	.footer__inner {
		background-position: center;
		background-size: contain;
		position: relative;
	}

	.footer__inner:before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: rgb(255 255 255 / 70%);
	}

	.footer__inner > div {
		position: relative;
	}
}

@media all and (max-width: 768px) {
	.gallery__images {
		height: auto;
		margin-bottom: 0;
	} 
    .footer__inner {
        background: none;
        text-align: center;
    }

    .courses__list {
        display: block;
    }

    .courses__item-wrap {
        margin-left: auto;
        margin-right: auto;
    }

    .vantages__list {
        display: block;
    }

    .vantages__item {
        margin-bottom: 25px;
    }
}

@media all and (max-width: 680px) {
    .header__phones {
        display: none;
    }

    .header__socials {
        margin-left: auto;
    }

    .first-screen__desc {
        padding: 0 20px;
    }

    .first-screen__title {
        font-size: 36px;
        line-height: 1.5;
    }

    .first-screen__subtitle {
        font-size: 24px;
    }

    .courses__form-title {
        font-size: 24px;
    }

    .gallery__title {
        font-size: 32px;
        margin-bottom: 24px;
    }

    .vantages__title {
        font-size: 32px;
        margin-bottom: 24px;
    }

    .gallery__list {
        margin: 0;
        display: block;
        text-align: center;
    }

    .gallery__images {
        margin: 0 0 20px;
        max-width: 100%;
    }

    .gallery__images img {
        max-width: 100%;
    }
}

@media all and (max-width: 380px) {
    .courses__price {
        font-size: 18px;
    }

    .courses__form-title {
        font-size: 22px;
        margin-bottom: 24px;
    }

    form.courses__form input[type="text"], form.courses__form input[type="phone"] {
        padding: 15px 15px;
    }

    form.courses__form input[type="submit"] {
        padding: 20px 30px;
        display: block;
        width: 100%;
    }
}
