@media (max-width: 1599px) {

	.about,
	.about:before {
		border-radius: 5vw 0 0 5vw;
	}

	.banner,
	.directions,
	.club-banner {
		border-radius: 0 0 5vw 5vw;
	}

	.birthday {
		border-radius: 0 5vw 0 0;
	}

	.spectacle,
	.spectacle:before {
		border-radius: 0 5vw 5vw 0;
	}

	.directions-list.yellow {
		border-radius: 5vw;
	}
}

@media (max-width: 1399px) {
	.banner__hero-img {
		padding-left: 30rem;
	}

	.direction-item.coming:after {
		bottom: -150px;
		top: unset;
		right: -105px;
	}

	.birthday__img {
		margin-top: 0;
	}

	.club__wrapper,
	.club:before {
		border-radius: 100px;
	}

	.schedule {
		padding-top: 200px;
	}

	.schedule-item {
		background-position-x: calc(100% + 55px);
	}

	.schedule-item__title {
		font-size: 24px;
	}

	.schedule-item__text {
		font-size: 26px;
	}
}

@media (max-width: 1199px) {
	.header__menu ul {
		flex-wrap: wrap;
		justify-content: space-evenly;
	}

	.principle__col:nth-child(3) .principle-item:before,
	.banner__img:after {
		display: none;
	}

	.about__img {
		margin-left: auto;
	}

	.section-title,
	.banner__title,
	.club-banner__title h1,
	.club-banner__title .h1,
	.directions__title h1,
	.directions__title .h1,
	.page-banner__title h1,
	.page-banner__title .h1 {
		line-height: 1;
		font-size: 48px;
	}

	.schedule-item {
		background-position-x: calc(100% + 95px);
	}

	.banner__hero {
		left: 0;
		right: 0;
	}

	.tour-item__date {
		font-size: 40px;
	}

	.header__contacts {
		max-width: 100%;
	}
}

@media (max-width: 991px) {
	.header__menu {
		position: fixed;
		display: block;
		top: 0;
		left: -300px;
		background-color: var(--blue);
		width: 300px;
		box-shadow: 0px 0px 17.1px 0px rgba(0, 0, 0, 0.12);
		overflow-y: auto;
		overflow-x: hidden;
		-webkit-transition: left .3s 0s;
		transition: left .3s 0s;
		z-index: 100;
		height: 100%;
		padding: 20px 25px 30px;
	}

	.header__menu.opened {
		left: 0;
	}

	.header__menu ul {
		flex-direction: column;
		font-weight: 400;
	}

	.header__menu ul li a {
		color: var(--white);
	}

	.header__menu ul li a:hover {
		color: var(--yellow);
	}

	.header__social .social {
		justify-content: flex-end;
	}

	.banner__text,
	.banner__btn {
		margin-top: 30px;
	}

	.about {
		background-image: unset;
	}

	.modal-wrapper {
		flex: 0 0 100%;
	}

	.modal-img,
	.schedule__col:first-child .schedule-item:before {
		display: none;
	}

	.modal-title {
		padding-right: 40px;
		line-height: 1.2;
	}

	.modal-form,
	.modal-text,
	.banner__subtitle,
	.banner__text {
		max-width: 100%;
	}

	.modal input[type=submit] {
		width: 100%;
	}

	.banner:after {
		bottom: -25px;
	}

	.birthday__img img {
		transform: translateX(-60px);
	}
}

@media (max-width: 767px) {
	.header__menu {
		width: calc(100vw - 50px);
		left: -100vw;
		display: flex;
		flex-direction: column;
		gap: 30px;
	}

	.header__menu > .menu {
		flex-grow: 1;
		justify-content: flex-start;
		font-size: 20px;
	}

	.banner__title span {
		font-size: 56px;
	}

	.direction-item.coming:after,
	.schedule__col:nth-child(2) .schedule-item:before,
	.schedule:before,
	.club:before {
		display: none;
	}

	.banner {
		padding: 60px 0 80px
	}

	.principle,
	.about,
	.direction,
	.birthday,
	.club__wrapper,
	.main-gallery,
	.review {
		padding: 80px 0;
	}

	.schedule {
		padding: 40px 0 80px;
	}

	.club__wrapper {
		margin: 0;
		border-radius: 50px;
	}

	.club {
		padding: 0;
	}

	.spectacle {
		background-image: unset;
	}

	.footer__map {
		display: block;
		height: 300px;
	}

	.footer__content {
		padding: 50px 15px;
		background-color: var(--yellow);
	}

	.directions {
		padding-bottom: 100px;
	}

	.direction-post__subtitle {
		font-size: 18px;
	}

	.about__img {
		margin: 0 auto;
	}

	.header__phone a {
		color: var(--white);
		font-weight: 700;
		text-decoration: none;
		font-size: 22px;
	}

	.header__social .social {
		justify-content: center;
		flex-direction: row;
		background-color: var(--white);
		max-width: max-content;
		margin: 0 auto;
		padding: 10px 15px;
		border-radius: 30px;
	}

	.birthday__img img {
		transform: unset;
		max-width: 250px;
	}
	.birthday__img {
		text-align: center;
		margin-top: 20px;
	}
	.birthday:before {
		width: 100%;
		left: 10px;
		height: 60px;
	}
}

@media (max-width: 575px) {
	.section-title,
	.banner__title,
	.club-banner__title h1,
	.club-banner__title .h1,
	.directions__title h1,
	.directions__title .h1,
	.page-banner__title h1,
	.page-banner__title .h1 {
		line-height: 1;
		font-size: 36px;
	}

	.banner__btn,
	.principle__btn .btn,
	.about__btn,
	.direction__btn .btn,
	.birthday__btn .btn,
	.schedule__btn .btn,
	.spectacle__btn .btn,
	.review .btn,
	.direction-post__btn,
	.tour-item__btn .btn,
	.club-banner__btn .btn {
		max-width: 100%;
		width: 100%;
	}

	.schedule-item {
		background-position-x: calc(100% + 170px);
	}

	.spectacle__name {
		font-size: 36px;
	}

	.spectacle__date,
	.direction-post__title {
		font-size: 28px;
	}

	.about__img:before {
		display: none;
	}

	.banner__subtitle,
	.banner__text {
		font-size: 17px;
		max-width: 65%;
	}

	.banner__content {
		background-image: url('../images/banner_hero_mob.png');
		background-repeat: no-repeat;
		background-position: calc(50% + 94px) calc(100% - 53px);
		background-size: 200px;
	}

	.banner__btn:before {
		content: '';
		display: block;
		width: 100%;
		height: 15vw;
		background-image: url('../images/banner_btn_grass.png');
		background-repeat: no-repeat;
		background-position: top center;
		background-size: contain;
		margin-bottom: -1px;
	}

	.header__menu {
		background-image: url('../images/mobmenu_rocket.png');
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 100%;
	}
}
