@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Rubik:wght@300;400;500;900&display=swap");
@font-face {
	font-family: "Comic Sans MS";
	src: url("./fonts/ComicSansMS.eot");
	src: url("./fonts/ComicSansMS.eot?#iefix") format("embedded-opentype"), url("./fonts/ComicSansMS.woff2") format("woff2"), url("./fonts/ComicSansMS.woff") format("woff"), url("./fonts/ComicSansMS.ttf") format("truetype"), url("./fonts/ComicSansMS.svg#ComicSansMS") format("svg");
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
/*@font-face {
	font-family: "Days One";
	src: url("./fonts/DaysOne-Regular.eot");
	src: url("./fonts/DaysOne-Regular.eot?#iefix") format("embedded-opentype"), url("./fonts/DaysOne-Regular.woff2") format("woff2"), url("./fonts/DaysOne-Regular.woff") format("woff"), url("./fonts/DaysOne-Regular.ttf") format("truetype"), url("./fonts/DaysOne-Regular.svg#DaysOne-Regular") format("svg");
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}*/
@font-face {
		font-family: 'WellwaitFree';
		src: url('./fonts/WellwaitFree-Regular.eot');
		src: url('./fonts/WellwaitFree-Regular.eot?#iefix') format('embedded-opentype'),
				url('./fonts/WellwaitFree-Regular.woff2') format('woff2'),
				url('./fonts/WellwaitFree-Regular.woff') format('woff'),
				url('./fonts/WellwaitFree-Regular.ttf') format('truetype'),
				url('./fonts/WellwaitFree-Regular.svg#WellwaitFree-Regular') format('svg');
		font-weight: normal;
		font-style: normal;
		font-display: swap;
}
:root {
	--black: #000;
	--white: #fff;
	--yellow: #FDF231;
	--blue: #00C2CB;
	--dark: #2E2E2E;
	--gray: #E1E1E1;
	--font: "Rubik", sans-serif;
	--font-second: "Comic Sans MS";
	--font-third: "WellwaitFree", sans-serif;
	--transition: .3s;
}

body {
	font-family: var(--font);
	color: var(--dark);
	font-size: 17px;
	line-height: 1.2;
	min-height: 100vh;
	display: grid;
	grid-template-rows: auto 1fr auto;
	grid-template-columns: 100%;
	background-color: var(--blue);
}

a {
	transition: var(--transition);
}
a img.alignright {
	display: block;
	margin: 0 1em 1em 0;
}
a img.alignleft {
	float: left;
	margin: 0 1em 1em 0;
}
a img.aligncenter {
	display: block;
	margin: 1em auto;
}

.custom-ul ul {
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
	list-style-type: none;
}
.custom-ul ul li:before {
	content: "•";
	display: inline-block;
	margin-right: 3px;
}

img,
svg {
	max-width: 100%;
	height: auto;
}

img.alignright {
	float: right;
	margin: 0 0 1em 1em;
}
img.alignleft {
	float: left;
	margin: 0 1em 1em 0;
}
img.aligncenter {
	display: block;
	margin: 1em auto;
}

input:not([type=submit]):not([type=checkbox]):not([type=radio]):not([class*=ymaps]),
textarea,
select {
	margin-bottom: 20px;
	outline: none;
	width: 100%;
	font-family: var(--font);
	color: var(--dark);
	border: none;
	border-radius: 0;
	padding: 0;
	transition: var(--transition);
	line-height: 1.2;
	font-size: 17px;
	font-weight: 300;
	border: none;
	border-bottom: 2px solid #BDBDBD;
}

textarea {
	height: 130px;
}

input[type=checkbox] {
	border: 1px solid var(--blue);
	width: 30px;
	height: 30px;
	background-color: transparent;
	transition: var(--transition);
	-webkit-appearance: none;
	-moz-appearance: none;
	cursor: pointer;
	margin-right: 10px;
	flex: 0 0 auto;
	border-radius: 5px;
}
input[type=checkbox]:checked {
	background-image: url("./images/checkbox.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-color: var(--blue);
}

input[type=submit] {
	min-width: 270px;
	margin-bottom: 20px;
}

.wpcf7-acceptance {
	font-size: 17px;
	font-weight: 300;
}
.wpcf7-acceptance a {
	color: var(--blue);
}
.wpcf7-acceptance a:hover {
	text-decoration: none;
}
.wpcf7-list-item {
	margin: 0 0 20px;
}
.wpcf7-list-item > label {
	display: flex;
	align-items: center;
}
.wpcf7-not-valid-tip {
	transform: translateY(-10px);
	font-size: 14px;
	font-weight: 300;
}
.wpcf7-spinner {
	position: absolute;
}
.wpcf7-response-output {
	font-weight: 300;
	padding: 10px 15px !important;
	font-size: 14px;
	margin: 0 !important;
}

@media (min-width: 991px) {
	.modal-dialog {
		max-width: 860px;
	}
}
@media (min-width: 576px) {
	#modal_ok .modal-dialog {
		max-width: var(--bs-modal-width);
	}
}
#modal_ok .modal-content {
	min-height: 200px;
	justify-content: center;
	align-items: center;
}
#modal_ok .modal-title {
	color: var(--blue);
	font-size: 40px;
	padding-right: 0;
}

.modal-content {
	border: none;
	display: flex;
	flex-direction: row;
	border-radius: 35px;
}
.modal-wrapper {
	padding: 20px;
	flex: 0 0 420px;
}
.modal-header {
	display: block;
	border: unset;
	padding: 0;
	text-align: center;
}
.modal-title {
	font-weight: 700;
	font-size: 25px;
	margin-bottom: 10px;
	font-family: var(--font-second);
	color: var(--dark);
	text-align: left;
	line-height: 1.4;
}
.modal-title span {
	color: var(--blue);
}
.modal-text {
	font-weight: 300;
	margin-bottom: 10px;
	max-width: 290px;
}
.modal-close {
	position: absolute;
	right: 25px;
	top: 25px;
	cursor: pointer;
}
.modal-img {
	padding: 30px 0;
}
.modal-body {
	padding: 0;
}
.modal input[type=submit]:hover {
	background-color: var(--yellow);
	color: var(--dark);
}
.modal-form {
	max-width: 310px;
}

#modal_gift .modal-img {
	padding: 0;
}
#modal_gift .modal-img img,
#modal_gift .modal-img svg {
	max-width: unset;
	margin: -70px 0 -55px;
	transform: translateX(-50px);
}

.btn,
input[type=submit] {
	background-color: var(--blue);
	display: inline-block;
	cursor: pointer;
	color: var(--white);
	transition: var(--transition);
	padding: 20px 30px;
	border-radius: 30px;
	font-weight: 500;
	text-decoration: none;
	text-align: center;
	border: none;
	outline: none;
	font-size: 20px;
	line-height: 1;
	font-family: var(--font);
}
.btn:hover,
input[type=submit]:hover {
	background-color: var(--white);
	color: var(--blue);
}
.btn.alt,
input[type=submit].alt {
	background-color: var(--white);
	color: var(--dark);
}
.btn.alt:hover,
input[type=submit].alt:hover {
	background-color: var(--yellow);
	color: var(--dark);
}
.btn.black,
input[type=submit].black {
	background-color: var(--dark);
	color: var(--white);
}
.btn.black:hover,
input[type=submit].black:hover {
	background-color: var(--yellow);
	color: var(--dark);
}
.btn.yellow,
input[type=submit].yellow {
	background-color: var(--yellow);
	color: var(--dark);
}
.btn.yellow:hover,
input[type=submit].yellow:hover {
	background-color: var(--white);
	color: var(--dark);
}

#scroll_up {
	background-color: var(--yellow);
	color: var(--white);
	position: fixed;
	z-index: 20;
	right: 30px;
	bottom: 30px;
	width: 40px;
	height: 40px;
	line-height: 35px;
	text-align: center;
	cursor: pointer;
	display: none;
	box-shadow: 0px 0px 17.1px 0px rgba(0, 0, 0, 0.12);
	transition: background-color 0.3s ease-in-out;
	border-radius: 5px;
}
#scroll_up svg {
	max-width: 20px;
}
#scroll_up svg path {
	fill: var(--blue);
}
#scroll_up:hover {
	background-color: var(--white);
}

.wp-pagenavi {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 2px;
	text-align: center;
}
.wp-pagenavi a,
.wp-pagenavi span {
	text-decoration: none;
	background-color: var(--yellow);
	color: var(--dark) !important;
	padding: 5px;
	min-width: 40px;
	min-height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
}
.wp-pagenavi span.current {
	background-color: var(--white);
	color: var(--black) !important;
}
.wp-pagenavi a:hover {
	background-color: var(--white);
	color: var(--black) !important;
}

.slick-slider {
	padding-bottom: 74px;
}
.slick-arrow {
	background-image: url("./images/slick_arrow.svg");
	width: 54px;
	height: 54px;
	background-position: 45% 50%;
	background-repeat: no-repeat;
	background-size: 18px;
	border-radius: 50%;
	background-color: var(--white);
	outline: none;
	font-size: 0;
	cursor: pointer;
	transition: var(--transition);
	position: absolute;
	bottom: 0;
	z-index: 5;
	left: calc(50% - 75px);
	border: none;
}
.slick-arrow:hover {
	background-color: var(--yellow);
}
.slick-next {
	left: unset;
	right: calc(50% - 75px);
	transform: rotate(180deg);
}
.slick-slide {
	margin-right: 20px;
}
.slick-list {
	margin-right: -20px;
}

.contact-item {
	color: var(--white);
	display: flex;
	align-items: center;
	gap: 10px;
}
.contact-item a {
	color: var(--white);
	text-decoration: none;
}
.contact-item a:hover {
	color: var(--dark);
}
.contact-item__icon .icon {
	max-width: 32px;
	height: 32px;
}
.contact-item__icon .icon.address, .contact-item__icon .icon.phone {
	stroke: var(--dark);
	fill: none;
}

.social {
	padding: 0;
	margin: 0;
	list-style-type: none;
	display: flex;
	align-items: center;
	gap: 19px;
}
.social .icon {
	max-width: 36px;
	max-height: 36px;
}
.social a {
	display: block;
}
.social a:hover {
	transform: translateY(-5px);
}

.header__top {
	background-color: var(--blue);
	padding: 4px 0;
	color: var(--white);
}
.header__top a {
	color: var(--white);
	text-decoration: none;
}
.header__top a:hover {
	color: var(--dark);
}
.header__phone {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
.header__address .icon.address {
	stroke: var(--white);
	fill: transparent;
}
.header__worktime strong {
	font-weight: normal;
}
.header__worktime .icon {
	fill: var(--white);
}
.header__bottom {
	box-shadow: 0px 0px 17.1px 0px rgba(0, 0, 0, 0.12);
	background-color: var(--white);
}
.header__logo img,
.header__logo svg {
	max-height: 90px;
}
.header__contacts {
	max-width: 1190px;
	margin: 0 auto;
}
.header__menu {
	font-weight: 300;
	max-width: 935px;
}
.header__menu ul {
	display: flex;
	justify-content: space-between;
	gap: 15px;
	list-style-type: none;
	padding: 0;
	margin: 0;
}
.header__menu ul li a {
	color: var(--dark);
	text-decoration: none;
}
.header__menu ul li a:hover {
	color: var(--blue);
}

.banner {
	background-color: var(--yellow);
	font-family: var(--font-second);
	font-size: 22px;
	padding: 50px 0 40px;
	border-radius: 0px 0px 14.401vw 14.401vw;
	line-height: 1.3;
	position: relative;
}
.banner:after {
	content: "";
	display: block;
	width: 67.708vw;
	height: 148px;
	background-color: var(--white);
	border-radius: 1.51vw;
	position: absolute;
	bottom: -45px;
	left: calc(50% - 33.854vw);
	z-index: -1;
}
.banner__content {
	position: relative;
	z-index: 5;
}
.banner__title {
	font-size: 60px;
	line-height: 1.05;
}
.banner__title span {
	font-size: 80px;
	display: block;
	color: var(--blue);
	font-family: var(--font-third);
}
.banner__subtitle {
	margin-top: 18px;
	max-width: 455px;
}
.banner__text {
	margin-top: 60px;
	max-width: 550px;
	line-height: 1.35;
	position: relative;
}
.banner__text:before {
	content: "";
	display: block;
	width: 130px;
	height: 331px;
	background-image: url("./images/banner_rocket.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	right: calc(100% + 33px);
	bottom: 0;
}
.banner__btn {
	margin-top: 60px;
	max-width: 270px;
}
.banner__img {
	position: relative;
	max-width: 530px;
	margin-left: auto;
}
.banner__img:before {
	content: "";
	display: block;
	border-radius: 50px;
	background-color: var(--white);
	position: absolute;
	width: 100%;
	height: 100%;
	bottom: -20px;
	left: -20px;
}
.banner__img:after {
	content: "";
	display: block;
	width: 177px;
	height: 167px;
	background-image: url("./images/banner_star.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	right: -15px;
	top: calc(100% + 13px);
}
.banner__img img {
	position: relative;
	border-radius: 40px;
}
.banner__hero {
	position: absolute;
	width: 100%;
	text-align: center;
	bottom: -85px;
	pointer-events: none;
}
.banner__hero-img {
	padding-left: 10rem;
}

.section-title {
	font-size: 60px;
	font-family: var(--font-third);
	margin-bottom: 30px;
	color: var(--white);
}
.section-title.black {
	color: var(--dark);
}
.section-separator {
	height: 20px;
	width: 100%;
	background-color: var(--white);
	box-shadow: 0px 4px 30px 0px rgba(80, 76, 17, 0.3);
}

.principle {
	padding: 115px 0 55px;
	overflow: hidden;
}
.principle__btn {
	margin-top: 30px;
}
.principle__btn .btn {
	max-width: 270px;
}
.principle__list {
	position: relative;
}
.principle__list:before, .principle__list:after {
	content: "";
	display: block;
	position: absolute;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	z-index: -1;
}
.principle__list:before {
	top: -38px;
	left: -137px;
	width: 177px;
	height: 167px;
	background-image: url("./images/principle_star_left.svg");
}
.principle__list:after {
	bottom: -97px;
	right: -100px;
	width: 158px;
	height: 178px;
	background-image: url("./images/principle_star_right.svg");
}
.principle-item {
	border-radius: 25px;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
	border: 2px solid var(--white);
	padding: 23px 18px;
	color: var(--white);
	height: 100%;
	min-height: 252px;
}
.principle-item__title {
	font-size: 30px;
	font-family: var(--font-second);
}
.principle-item__text {
	margin-top: 10px;
}
.principle-item.yellow {
	background-color: var(--yellow);
	color: var(--dark);
	border-color: var(--yellow);
}
.principle-item.white {
	background-color: var(--white);
	color: var(--dark);
	border-color: var(--white);
}
.principle__col:nth-child(3) .principle-item {
	position: relative;
}
.principle__col:nth-child(3) .principle-item:before {
	content: "";
	display: block;
	width: 357px;
	height: 413px;
	background-image: url("./images/principle_girl.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	bottom: -2px;
	left: calc(50% - 29px);
	pointer-events: none;
}

.about {
	padding: 90px 0 108px;
	background-color: var(--yellow);
	border-radius: 17vw 0 0 17vw;
	background-image: url("./images/about_bg.svg");
	background-position: calc(50% - 24px) calc(50% - 52px);
	background-repeat: no-repeat;
	position: relative;
	margin-bottom: 75px;
}
.about:before {
	content: "";
	display: block;
	bottom: -20px;
	position: absolute;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	border-radius: 17vw 0 0 17vw;
	background: var(--gray);
	box-shadow: 0px 4px 30px 0px rgba(80, 76, 17, 0.3);
}
.about:after {
	content: "";
	display: block;
	bottom: -3px;
	position: absolute;
	right: 0;
	width: 55.9vw;
	height: 84px;
	background-image: url("./images/about_flowers.svg");
	background-repeat: no-repeat;
	background-position: bottom left;
}
.about__btn {
	max-width: 310px;
	margin-top: 40px;
}
.about__img {
	position: relative;
	max-width: 350px;
}
.about__img img {
	border-radius: 40px;
	position: relative;
}
.about__img:before {
	content: "";
	display: block;
	border-radius: 50px;
	background-color: var(--white);
	position: absolute;
	width: 100%;
	height: 100%;
	bottom: -20px;
	left: -20px;
}

.direction {
	padding: 55px 0 93px;
	background-image: url("./images/direction_bg.svg");
	background-position: calc(50% + 20px) calc(50% - 20px);
	background-repeat: no-repeat;
	overflow: hidden;
}
.direction__btn {
	margin-top: 30px;
}
.direction__btn .btn {
	max-width: 310px;
}
.direction-item {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 20px;
	padding: 20px 20px 30px;
	border-radius: 25px;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
	background-color: var(--white);
	height: 100%;
	position: relative;
	color: var(--dark);
	text-decoration: none;
	cursor: pointer;
}
.direction-item:after {
	content: "";
	display: block;
	width: 14px;
	height: 14px;
	background-image: url("./images/link.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	top: 25px;
	right: 21px;
	transition: var(--transition);
}
.direction-item:hover:after {
	transform: translate3d(5px, -5px, 0px);
}
.direction-item__title {
	font-weight: 500;
}
.direction-item__text {
	font-family: var(--font-second);
	font-size: 24px;
}
.direction-item.yellow {
	background-color: var(--yellow);
}
.direction-item.coming {
	background-color: var(--gray);
	justify-content: center;
	position: relative;
	cursor: unset;
}
.direction-item.coming:after {
	content: "";
	display: block;
	background-image: url("./images/direction_cloud.svg");
	width: 269px;
	height: 207px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	bottom: -118px;
	right: -123px;
}
.direction-item.coming .direction-item__title {
	color: var(--blue);
	font-size: 20px;
	font-family: var(--font-second);
	max-width: 210px;
}

.birthday {
	padding: 90px 0;
	border-radius: 0 20.104vw 0 0;
	background-color: var(--yellow);
	position: relative;
	box-shadow: 0px 4px 30px 0px rgba(80, 76, 17, 0.3);
	overflow: hidden;
	background-image: url("./images/birthday_bg.svg");
	background-position: calc(50% - 35px) 50%;
	background-repeat: no-repeat;
}
.birthday:before {
	content: "";
	display: block;
	height: 89px;
	width: 49vw;
	background-color: var(--white);
	box-shadow: 0px 4px 30px 0px rgba(80, 76, 17, 0.3);
	border-radius: 53.5px 0px 0px 53.5px;
	position: absolute;
	bottom: 42px;
	right: 0;
	z-index: 5;
}
.birthday__content {
	position: relative;
	z-index: 10;
}
.birthday__text {
	max-width: 640px;
}
.birthday__text ul {
	gap: 19.5px;
	margin-bottom: 1em;
}
.birthday__img {
	margin-top: -95px;
	position: relative;
	z-index: 3;
}
.birthday__img img {
	max-width: unset;
	transform: translateX(-145px);
}
.birthday__btn .btn {
	max-width: 310px;
}

.main-gallery {
	padding: 90px 0 50px;
	background-image: url("./images/main_gallery_bg.svg");
	background-position: calc(50% - 5px) 60px;
	background-repeat: no-repeat;
	overflow: hidden;
}
.main-gallery .slick-next {
	right: 0;
}
.main-gallery .slick-prev {
	left: unset;
	right: 93px;
}
.main-gallery .slick-active img {
	border-radius: 155px 40px 40px 40px;
	transition: var(--transition);
}
.main-gallery .slick-active + .slick-active img, .main-gallery .slick-active + .slick-active + .slick-active img {
	border-radius: 40px;
}
.main-gallery .slick-active + .slick-active + .slick-active + .slick-active img {
	border-radius: 40px 155px 40px 40px;
}

.club {
	position: relative;
	overflow: hidden;
	padding: 20px 0;
}
.club__wrapper {
	background-color: var(--yellow);
	background-image: url("./images/club_bg.svg");
	background-position: calc(50% - 34px) calc(50% + 9px);
	background-repeat: no-repeat;
	position: relative;
	padding: 15px 0 24px;
	border-radius: 200px;
	box-shadow: 0px 4px 30px 0px rgba(80, 76, 17, 0.3);
	margin: 0 -20px;
}
.club:before {
	content: "";
	display: block;
	background-color: var(--white);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border-radius: 200px;
	margin-left: -40px;
	margin-right: -40px;
	border: 20px solid var(--white);
}
.club__text {
	max-width: 640px;
}

.schedule {
	padding: 170px 0 90px;
	background-image: url("./images/schedule_bg.svg");
	background-position: calc(50% - 53px) calc(50% + 45px);
	background-repeat: no-repeat;
	position: relative;
}
.schedule:before {
	content: "";
	display: block;
	width: 158px;
	height: 97px;
	background-image: url("./images/schedule_cloud.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: -60px;
	left: calc(50% - 80px);
}
.schedule__btn {
	margin-top: 30px;
}
.schedule__btn .btn {
	max-width: 310px;
}
.schedule-item {
	background-color: var(--white);
	border-radius: 40px;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
	padding: 20px;
	display: flex;
	height: 100%;
	background-repeat: no-repeat;
	background-position: center right;
	min-height: 216px;
	color: var(--dark);
	text-decoration: none;
	cursor: pointer;
}
.schedule-item:hover .schedule-item__content:after {
	transform: translate3d(5px, -5px, 0px);
}
.schedule-item__content {
	flex: 0 0 50%;
	font-family: var(--font-second);
	display: flex;
	flex-direction: column;
	gap: 30px;
	position: relative;
}
.schedule-item__content:after {
	content: "";
	display: block;
	width: 21px;
	height: 21px;
	background-image: url("./images/link_alt.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	top: 6px;
	right: -35px;
	transition: var(--transition);
}
.schedule-item__title {
	font-size: 28px;
}
.schedule-item__text {
	font-size: 32px;
	font-weight: 700;
}
.schedule__col:first-child .schedule-item {
	position: relative;
}
.schedule__col:first-child .schedule-item:before {
	content: "";
	display: block;
	width: 388px;
	height: 270px;
	background-image: url("./images/schedule_children.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 100%;
	left: calc(50% - 235px);
	pointer-events: none;
}
.schedule__col:nth-child(2) .schedule-item {
	position: relative;
}
.schedule__col:nth-child(2) .schedule-item:before {
	content: "";
	display: block;
	width: 211px;
	height: 155px;
	background-image: url("./images/schedule_cloud_2.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	bottom: calc(100% - 20px);
	left: calc(50% - 10px);
	pointer-events: none;
}

.spectacle {
	padding: 80px 0;
	background-color: var(--yellow);
	border-radius: 0 17vw 17vw 0;
	background-image: url("./images/spectacle_bg.svg");
	background-position: calc(50% - 500px) 50px;
	background-repeat: no-repeat;
	position: relative;
}
.spectacle:before {
	content: "";
	display: block;
	bottom: -20px;
	position: absolute;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	border-radius: 0 17vw 17vw 0;
	background: var(--gray);
	box-shadow: 0px 4px 30px 0px rgba(80, 76, 17, 0.3);
}
.spectacle:after {
	content: "";
	display: block;
	bottom: 0;
	position: absolute;
	left: 0;
	width: 46vw;
	height: 66px;
	background-image: url("./images/spectacle_flowers.svg");
	background-repeat: no-repeat;
	background-position: bottom right;
}
.spectacle__title {
	margin-bottom: 10px;
}
.spectacle__name {
	margin-top: 10px;
	font-family: var(--font-second);
	font-size: 40px;
}
.spectacle__date {
	margin-top: 20px;
	font-family: var(--font-second);
	font-size: 40px;
}
.spectacle__text {
	margin-top: 20px;
}
.spectacle__btn {
	margin-top: 20px;
}
.spectacle__btn .btn {
	max-width: 310px;
}

.review {
	background-image: url("./images/review_bg.svg");
	background-position: calc(50% - 3px) 120px;
	background-repeat: no-repeat;
	padding: 120px 0 90px;
	overflow: hidden;
}
.review-item {
	border-radius: 20px;
	border: 2px solid var(--white);
	padding: 18px 20px 30px;
	color: var(--white);
	transition: var(--transition);
}
.review-item__title {
	font-size: 24px;
	font-weight: 700;
	font-family: var(--font-second);
}
.review-item__text {
	margin-top: 10px;
	font-weight: 300;
}
.review .slick-active + .slick-active .review-item {
	background-color: var(--white);
	color: var(--dark);
	border-color: var(--white);
}
.review .slick-active + .slick-active + .slick-active .review-item {
	color: var(--white);
	background-color: transparent;
}
.review .slick-active + .slick-active + .slick-active + .slick-active .review-item {
	background-color: var(--yellow);
	color: var(--dark);
	border-color: var(--yellow);
}
.review__btn .btn {
	max-width: 310px;
}
.footer__bg {
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	width: 50vw;
	border-radius: 0 11.901vw 0 0;
	background-color: var(--yellow);
	z-index: -1;
}
.footer__content {
	height: 100%;
	position: relative;
	padding: 30px 20px 30px 0;
}
.footer__content a {
	color: var(--dark);
}
.footer__content a:hover {
	color: var(--blue);
}
.footer__map {
	height: 458px;
	background-color: var(--gray);
	border-radius: 11.901vw 11.901vw 0 0;
	display: none;
}
.footer__map iframe {
	border-radius: 11.901vw 11.901vw 0 0;
	overflow: hidden;
}
.footer__logo {
	margin-bottom: 30px;
}
.footer__logo svg,
.footer__logo img {
	max-width: 90px;
	max-height: 90px;
	border-radius: 20px;
}
.footer__contacts {
	display: flex;
	flex-direction: column;
	gap: 20px;
	font-size: 20px;
	font-weight: 300;
	margin-bottom: 40px;
}
.footer__contacts .contact-item {
	color: var(--dark);
}
.footer__address {
	font-size: 17px;
}
.footer__phone {
	font-weight: 500;
}
.footer__worktime strong {
	font-weight: 500;
}
.footer__links {
	font-size: 15px;
	font-weight: 300;
	display: flex;
	flex-wrap: wrap;
	-moz-column-gap: 20px;
			 column-gap: 20px;
	row-gap: 5px;
}
.footer__links a {
	text-decoration: underline;
	color: var(--dark);
}
.footer__links a:hover {
	color: var(--blue);
}
.footer__dev {
	margin-top: 10px;
	font-size: 15px;
	font-weight: 500;
}
.footer__dev a {
	text-decoration: none;
}

.page-banner {
	background-color: var(--yellow);
	padding: 40px 0 60px;
	border-radius: 0 0 9.844vw 9.844vw;
}
.page-banner__title h1,
.page-banner__title .h1 {
	font-size: 60px;
	font-family: var(--font-third);
	color: var(--blue);
	margin-bottom: 0;
}
.page-content {
	color: var(--white);
	padding: 60px 0;
	font-weight: 300;
}
.page-content a {
	color: var(--yellow);
}
.page-content a:hover {
	color: var(--white);
}
.page-content strong,
.page-content b {
	font-weight: 500;
}

.club-banner {
	background-color: var(--yellow);
	padding: 40px 0;
	border-radius: 0 0 9.844vw 9.844vw;
}
.club-banner__title h1,
.club-banner__title .h1 {
	font-size: 60px;
	font-family: var(--font-third);
	color: var(--blue);
	margin-bottom: 10px;
}
.club-banner__btn .btn {
	max-width: 270px;
}
.club-banner__btn .btn:hover {
	background-color: var(--blue);
	color: var(--white);
}

.club-list {
	padding: 80px 0 100px;
	background-image: url("./images/club_page_bg.svg");
	background-position: calc(50% - 30px) 230px;
	background-repeat: no-repeat;
}
.club-list__wrapper {
	display: flex;
	flex-direction: column;
	gap: 70px;
}
.club-list__wrapper + .club-list__wrapper {
	margin-top: 70px;
}

.tour-item {
	position: relative;
}
.tour-item__title {
	margin-bottom: 0;
	line-height: 1;
}
.tour-item__date {
	font-size: 60px;
	font-weight: 300;
	color: var(--white);
}
.tour-item__text {
	max-width: 750px;
	color: var(--white);
	font-weight: 300;
}
.tour-item__gallery {
	margin: 30px 0;
}
.tour-item__gallery img {
	border-radius: 2.083vw;
}
.tour-item__col:nth-child(1) img {
	border-radius: 8.073vw 2.083vw 2.083vw 2.083vw;
}
.tour-item__col:nth-child(3) img {
	border-radius: 2.083vw 8.073vw 2.083vw 2.083vw;
}
.tour-item__btn .btn {
	max-width: 270px;
}

.directions {
	background-color: var(--yellow);
	padding: 45px 0 60px;
	border-radius: 0 0 15.844vw 15.844vw;
	position: relative;
	background-image: url("./images/directions_bg.svg");
	background-position: calc(50% - 173px) 45px;
	background-repeat: no-repeat;
	overflow: hidden;
}
.directions:after {
	content: "";
	display: block;
	bottom: -23px;
	position: absolute;
	left: calc(50% - 155px);
	width: 798px;
	height: 124px;
	background-image: url("./images/directions_flowers.svg");
	background-repeat: no-repeat;
	background-position: bottom center;
}
.directions__title h1,
.directions__title .h1 {
	font-size: 60px;
	font-family: var(--font-third);
	color: var(--blue);
	margin-bottom: 20px;
}
.directions__text {
	font-size: 18px;
	font-weight: 300;
}
.directions__text ul {
	margin-bottom: 1em;
	gap: 20px;
}
.directions-list {
	padding: 100px 0;
}
.directions-list__wrapper {
	display: flex;
	flex-direction: column;
	gap: 80px;
}
.directions-list.yellow {
	background-color: var(--yellow);
	border-radius: 15.625vw;
}
.directions-list.yellow .direction-post__title,
.directions-list.yellow .direction-post__text,
.directions-list.yellow .direction-post__subtitle {
	color: var(--dark);
}
.directions-list.yellow .btn {
	background-color: var(--dark);
	color: var(--white);
}
.directions-list.yellow .btn:hover {
	background-color: var(--blue);
	color: var(--white);
}
.directions-list.yellow .direction-post__col:nth-child(2n) .direction-post-day {
	background-color: var(--blue);
}
.directions-list.yellow .direction-post__col:nth-child(2n) .direction-post-day__text {
	color: var(--white);
}
.directions-list.yellow .direction-post__col:nth-child(2n) .direction-post-day__title {
	color: var(--white);
}
.directions-list.bg-1 {
	background-image: url("./images/directions_1_bg.svg");
	background-position: calc(50% - 27px) 517px;
	background-repeat: no-repeat;
}
.directions-list.bg-2 {
	background-image: url("./images/directions_2_bg.svg");
	background-position: calc(50% + 12px) 146px;
	background-repeat: no-repeat;
}
.directions-list.bg-3 {
	background-image: url("./images/directions_3_bg.svg");
	background-position: calc(50% - 23px) 120px;
	background-repeat: no-repeat;
}

.direction-post__title {
	margin-bottom: 10px;
}
.direction-post__text {
	max-width: 750px;
	font-size: 18px;
	font-weight: 300;
	color: var(--white);
}
.direction-post__btn {
	max-width: 270px;
	margin-top: 20px;
}
.direction-post__subtitle {
	font-weight: 700;
	font-size: 25px;
	color: var(--white);
	margin-top: 20px;
}
.direction-post__schedule {
	margin-top: 30px;
}
.direction-post-day {
	background-color: var(--white);
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
	border-radius: 25px;
	height: 100%;
}
.direction-post-day__title {
	border-bottom: 1px solid var(--gray);
	font-size: 25px;
	font-weight: 700;
	color: var(--blue);
	padding: 15px 20px;
	line-height: 1;
}
.direction-post-day__text {
	padding: 13px 20px 18px;
}
.direction-post-day__text ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	font-weight: 300;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.direction-post__col:nth-child(2n) .direction-post-day {
	background-color: var(--yellow);
}
.direction-post__col:nth-child(2n) .direction-post-day__title {
	color: var(--dark);
}

.admin-edit {
	position: absolute;
	top: 0;
	right: 0;
	width: 40px;
	height: 40px;
	color: var(--white);
	background-color: var(--dark);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}
.admin-edit:hover {
	background-color: var(--black);
}

.page-404 {
	font-weight: var(--font-second);
	color: var(--yellow);
	font-size: 100px;
}

.btn-mobile-menu {
	position: relative;
	z-index: 10;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.btn-mobile-menu span {
	background: var(--blue);
	display: block;
	width: 28px;
	height: 4px;
	margin-bottom: 7px;
	border-radius: 2px;
}

.btn-mobile-menu span:first-child {
	position: relative;
	top: 0;
	transition: top 0.3s 0.3s, transform 0.3s 0s;
}

.btn-mobile-menu span:nth-child(2) {
	opacity: 1;
	transition: opacity 0.3s;
}

.btn-mobile-menu span:last-child {
	margin-bottom: 0;
	position: relative;
	top: 0;
	transition: top 0.3s 0.3s, transform 0.3s 0s;
}

.btn-mobile-menu.opened span:first-child {
	top: 11px;
	transform: rotate(-45deg);
	transition: top 0.3s 0s, transform 0.3s 0.3s;
}

.btn-mobile-menu.opened span:nth-child(2) {
	opacity: 0;
}

.btn-mobile-menu.opened span:last-child {
	top: -11px;
	transform: rotate(45deg);
	transition: top 0.3s 0s, transform 0.3s 0.3s;
}
.mob-contacts {
	font-size: 14px;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	gap: 5px;
}
.mob-contacts a {
	color: var(--blue);
	text-decoration: none;
	font-weight: 700;
}

.header__menu-rocket img {
	max-height: 200px;
}

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

.captcha-image{
	border: 1px solid var(--blue);
	margin-bottom: 6px;
}
.captcha-image svg{
	width: 45px;
	height: 45px;
}
.captcha-image svg path{
	fill: var(--blue);
}