/* All */
body {
	background-color: #ffffff !important;
}
.bathhouse-entity header nav.navbar {
	padding-top: 15px;
}
.bathhouse-entity .content-wrapper {
	margin-top: 15px !important;
}
body.bathhouse-entity section {
	padding-top: 55px !important;
	padding-bottom: 0 !important;
	scroll-margin-top: 100px;
	overflow: hidden;
}

.bathhouse-entity header nav .log_in_href,
.bathhouse-entity header nav .all_bath,
.bathhouse-entity header nav .navbar-toggler {
	border: none;
	background-color: #2e2e2e14;
}

.bathhouse-entity header.fixed nav .log_in_href,
.bathhouse-entity header.fixed nav .all_bath,
.bathhouse-entity header.fixed nav .navbar-toggler {
	background-color: #ffffff;
}

.bathhouse-entity header .navbar-toggler svg path {
	fill: #2e2e2e;
}

.all_bath.mob-ver {
	display: none;
}
.bathhouse-entity .svg-logo-fixed {
	display: block;
}
.bathhouse-entity .svg-logo {
	display: none;
}
.bathhouse-entity header.fixed .svg-logo-fixed {
	display: block;
}
.bathhouse-entity header.fixed .svg-logo {
	display: none;
}

.bathhouse-entity header nav .all_bath {
	color: #2e2e2e;
}

.bathhouse-entity header .all_bath svg path {
	fill: #2e2e2e;
}

.bathhouse-entity header nav .log_in_href {
	color: #2e2e2e;
}

.dis_none {
	display: none;
}
.mob-ver {
	display: none;
}
a {
	text-decoration: none;
}
header path.logo-path {
	fill: #415e44;
}
.swiper-button-wrap {
	gap: 28px;
}
.swiper-button {
	background-color: #2e2e2e14;
	border-radius: 30px;
	width: 48px;
	height: 48px;
}
.swiper-button svg {
	width: 16px;
}
.section-our-baths .swiper-button-next,
.section-our-baths .swiper-button-prev {
	margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
}

@media (max-width: 991px) {
	.bathhouse-entity .container {
		max-width: 820px;
	}
}
@media (max-width: 768px) {
	.bathhouse-entity .container {
		max-width: 620px;
	}
}
/* END All */

/* Swiper slider */
.swiper {
	width: 100%;
	height: 100%;
}
.swiper-slide {
	text-align: center;
	font-size: 18px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.swiper-slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 20px;
}
.autoplay-progress {
	position: absolute;
	right: 16px;
	bottom: 16px;
	z-index: 10;
	width: 48px;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	color: var(--swiper-theme-color);
}
.autoplay-progress svg {
	--progress: 0;
	position: absolute;
	left: 0;
	top: 0px;
	z-index: 10;
	width: 100%;
	height: 100%;
	stroke-width: 4px;
	stroke: var(--swiper-theme-color);
	fill: none;
	stroke-dashoffset: calc(125.6px * (1 - var(--progress)));
	stroke-dasharray: 125.6;
	transform: rotate(-90deg);
}
body.bathhouse-entity section .swiper-pagination_blcks:has(.swiper-pagination-lock) {
	display: none;
}

@media (max-width: 991px) {
	body.bathhouse-entity section .swiper-pagination {
		display: none;
	}
}
@media (max-width: 768px) {
	.bathhouse-entity header nav .all_bath.comp-ver {
		display: none;
	}
	.bathhouse-entity header nav .log_in_href {
		display: none;
	}
	.bathhouse-entity header nav.navbar {
		padding-top: 0;
	}
	.bathhouse-entity .content-wrapper {
		margin-top: 0;
	}
}
/* END Swiper slider */

/* Header */
/* END Header */

/* Первый блок */
.section_logo .container {
	position: relative;
	height: 575px;
}

.img_background .overlay-dark {
	position: relative;
	z-index: 2;
	background: rgba(0, 0, 0, 0.3);
	height: 100%;
	width: 100%;
	border-radius: 10px;
}
.section_logo .img_background picture,
.section_logo .img_background .img_picture {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	padding: inherit;
	z-index: 1;
}
.section_logo .img_background img {
	object-fit: cover;
	width: 100%;
	height: 100%;
	border-radius: 20px;
}
.section_logo .inform {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
	position: relative;
	z-index: 3;
}
.section_logo .inform .top {
	display: flex;
	justify-content: space-between;
}
.section_logo .inform .logo {
	padding: 15px;
	border-radius: 0 0 10px 10px;
	background: #00000030;
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	max-width: 126px;
	position: absolute;
	top: 0 !important;
	left: 54px;
}
.section_logo .inform .bottom {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}
.section_logo .inform .bottom button {
	display: none;
	background: #ffffff33;
	padding: 18px 32px;
	border-radius: 35px;
	border-color: transparent;
	font-weight: 500;
	font-size: 20px;
	line-height: 140%;
	color: #ffffff;
}
.section_logo .inform .bottom button svg {
	margin-right: 8px;
	margin-bottom: 0.2rem;
	width: 17px;
}
.section_logo .inform .bottom button svg path {
	fill: #fff;
}
.section_logo .inform .title {
	font-size: 80px;
	color: #fff;
	line-height: 100%;
	letter-spacing: -3px;
}
.section_logo .inform .bottom .txt {
	color: #ffffff;
	font-size: 25px;
	line-height: 130%;
	display: block;
	opacity: 70%;
}
.section_logo .inform {
	position: absolute;
	padding: 66px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
	top: 0;
	left: 0;
	width: 100%;
}

.bottom-txt {
	max-width: 50rem;
}

@media (max-width: 1199.99px) {
	.section_logo .inform .bottom {
		display: grid;
		gap: 20px;
	}
	.section_logo .inform .bottom button {
		display: block;
		font-size: 12px;
		padding: 10px 25px;
	}
	.section_logo .inform .bottom .btns_blck {
		margin: auto;
	}
}
@media (max-width: 991px) {
	.section_logo .container {
		height: 420px;
	}
	.section_logo .inform {
		padding: 30px 54px;
	}
	.section_logo .inform .title {
		font-size: 60px;
		width: 100%;
		line-height: 115%;
	}
	.section_logo .inform .logo {
		display: flex;
		max-width: 140px;
		padding: 10px;
		max-height: 140px;
		top: 16px;
	}
	.section_logo .img_background img {
		height: 420px;
	}
	.section_logo .inform .bottom .txt {
		font-size: 22px;
	}

	@media (max-width: 768px) {
		.section_logo .inform {
			padding: 20px;
		}
		.section_logo .inform .title {
			font-size: 45px;
		}
		.section_logo .inform .bottom .txt {
			font-size: 17px;
		}
		.section_logo .inform .logo {
			top: 8px;
		}
	}
	@media (max-width: 450px) {
		.section_logo .inform {
			padding: 32px;
		}
		.section_logo .inform .logo {
			max-width: 100px;
			top: 0;
			left: 40px;
		}
	}
}
/* END Первый блок */

/* Блок "Наши бани" */
/* .section-our-baths::before, */
/* .section-our-baths::after {
	content: "";
	position: absolute;
	top: 0;
	width: 8%;
	height: 100%;
	background: linear-gradient(270deg, #ffffff 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 3;
} */

/* .section-our-baths::before {
	left: 0;
	transform: scaleX(-1);
} */

/* .section-our-baths::after {
	right: 0;
} */

.section-our-baths h2 {
	font-size: 60px;
	letter-spacing: -3px;
}
.our-baths-swiper {
	margin-top: 15px;
	overflow: visible;
	padding-bottom: 0.5rem;
}

.our-baths-swiper .our-baths-swiper .img_picture {
	height: 344px;
	width: 593px;
}

.our-baths-swiper .inform {
	position: absolute;
	left: 0;
	bottom: 0;
	color: #fff;
	width: 100%;
	z-index: 100;
}

.our-baths-swiper .inform-wrap {
	margin-top: auto;
	overflow: hidden;
	border-radius: 20px;
	position: relative;
	padding-top: 6rem;
	text-align: left;
	padding: 30px 35px;
	justify-content: space-between;
	display: flex;
	align-items: end;
	width: 100%;
}

.our-baths-swiper .left,
.our-baths-swiper .right {
	z-index: 3;
	padding-top: 10rem;
}

.our-baths-swiper .inform .title {
	font-size: 35px;
	font-weight: 600;
	line-height: 130%;
}
.our-baths-swiper .inform .price {
	font-size: 17px;
	font-weight: 400;
	line-height: 130%;
	gap: 1rem;
	display: flex;
	opacity: 70%;
}
.our-baths-swiper .inform .price .time,
.our-baths-swiper .inform .price .people {
	position: relative;
}
.our-baths-swiper .inform .price .time::before,
.our-baths-swiper .inform .price .people::before {
	content: "";
	position: absolute;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background-color: #fff;
	right: -10px;
	top: 10px;
}

.our-baths-swiper .right .btn {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background-color: #fff;
}

.our-baths-swiper .right .btn svg {
	margin-top: 0.5rem;
}

.our-baths-slide-wrap {
	overflow: hidden;
	border-radius: 20px;
	height: 344px;
	position: relative;
	width: 100%;
}

@media (max-width: 1399.99px) {
	/* .section-our-baths::before, */
	.section-our-baths::after {
		width: 100px;
	}
	.our-baths-slide-wrap {
		height: 330px;
	}
}
@media (max-width: 1220.99px) {
	/* .section-our-baths::before, */
	.section-our-baths::after {
		width: 60px;
	}
}
@media (max-width: 1199.99px) {
	.our-baths-slide-wrap {
		height: 277px;
	}
	.our-baths-swiper .inform .title {
		font-size: 30px;
	}
	.our-baths-swiper .inform .price {
		font-size: 15px;
	}
	.our-baths-swiper .inform .price .time::before,
	.our-baths-swiper .inform .price .people::before {
		top: 7px;
	}
	.our-baths-swiper .left,
	.our-baths-swiper .right {
		padding-top: 5rem;
	}
}
@media (max-width: 991px) {
	/* .section-our-baths::before,  */
	.section-our-baths::after {
		width: 30px;
	}
	.section-our-baths h2 {
		font-size: 35px;
	}
	.our-baths-swiper .inform-wrap {
		padding: 15px 15px;
	}
	.our-baths-swiper .inform .title {
		font-size: 24px;
	}
	.our-baths-swiper .inform .price {
		font-size: 11px;
	}
	.our-baths-swiper .inform .price .time::before,
	.our-baths-swiper .inform .price .people::before {
		top: 6px;
	}
	.our-baths-slide-wrap {
		height: 210px;
	}
	.section_bath .title {
		position: relative;
		margin-bottom: 90px;
	}
	.section_bath .title .custom-nav {
		display: none;
	}
	.section_bath .title .tab-blcks {
		width: auto;
	}
	.section_bath .title .tab-blcks .bath-swiper {
		margin: 0;
		position: absolute;
		bottom: -55px;
		left: 0;
		right: 0;
	}
	.section_bath .tab-blcks .swiper-slide {
		padding: 15px;
		font-size: 12px;
	}
	.section_bath .bath_slider_blcks {
		height: 450px;
	}
	.section_bath .bath_slider_blcks .swiper {
		background: #fff;
		border-radius: 10px;
	}

	.section_bath .bath_slider_blcks .swiper-slide .inform {
		padding: 20px 25px;
		flex-direction: column;
		justify-content: flex-start;
		position: relative;
		padding-top: 30px;
		padding-bottom: 85px;
	}
	.section_bath .bath_slider_blcks .inform .left .btn_blcks button {
		padding: 15px 20px;
		font-size: 13px;
	}
	.section_bath .bath_slider_blcks .inform .left {
		width: 100%;
		height: auto;
		justify-content: flex-end;
	}
	.section_bath .bath_slider_blcks .inform .left .title {
		font-size: 18px;
		margin-bottom: 15px;
	}
	.section_bath .bath_slider_blcks .inform .left .txt {
		font-size: 14px;
		margin-bottom: 30px;
	}
	.section_bath .bath_slider_blcks .inform .left .title,
	.section_bath .bath_slider_blcks .inform .left .txt,
	.section_bath .bath_slider_blcks .inform .right {
		color: #fff;
	}
	.section_bath .bath_slider_blcks .inform .left .btn_blcks {
		position: absolute;
		bottom: 80px;
	}
	.section_bath .bath_slider_blcks .inform .right .price {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
	}
	.section_bath .bath_slider_blcks .inform .price .time {
		color: #fff;
		font-size: 18px;
		margin-bottom: 0;
	}
	.section_bath .bath_slider_blcks .inform .price .people {
		font-size: 12px;
		color: #fff;
	}
	.section_bath .bath_slider_blcks .swiper-pagination {
		width: 100%;
		right: 0;
		left: 0;
		height: 40px;
		bottom: 25px;
	}
	.section_bath .bath_slider_blcks .swiper-pagination .swiper-button-prev,
	.section_bath .bath_slider_blcks .swiper-pagination .swiper-button-next {
		height: 50px;
		width: 50px;
		background: #9da0a7;
	}
	.section_bath .bath_slider_blcks .swiper-pagination .swiper-button-prev {
		left: 15px;
	}
	.section_bath .bath_slider_blcks .swiper-pagination .swiper-button-next {
		right: 15px;
	}

	.section_bath.new_bath_sec .title {
		margin-bottom: 30px;
	}
	.section_bath.new_bath_sec .bath_slider_blcks .swiper.bath_new-info-swiper {
		height: 450px;
	}
}
@media (max-width: 768px) {
	.section-our-baths::before,
	.section-our-baths::after {
		width: 0;
	}
	.our-baths-slide-wrap {
		height: 300px;
	}
	.our-baths-swiper .inform-wrap {
		padding: 30px 35px;
	}
	.our-baths-swiper .inform .title {
		font-size: 30px;
	}
	.our-baths-swiper .inform .price {
		font-size: 15px;
	}
}
@media (max-width: 450px) {
	.our-baths-slide-wrap {
		height: 240px;
	}

	.our-baths-slide-wrap .right {
		display: none;
	}
	.our-baths-swiper .inform .title {
		font-size: 22px;
		margin-bottom: 3px;
	}
	.our-baths-swiper .inform .price {
		font-size: 14px;
	}
	.our-baths-swiper .inform .price .time::before,
	.our-baths-swiper .inform .price .people::before {
		top: 8px;
	}
}
@media (max-width: 360px) {
	.our-baths-slide-wrap {
		height: 205px;
	}
	.our-baths-swiper .inform-wrap {
		padding: 20px 15px;
	}
}
/* END Блок "Наши бани" */

/* Блок "Галерея" */
.gallery_section .title {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}
.gallery_section .title h2 {
	margin-bottom: 0;
	font-size: 64px;
	line-height: 93%;
	font-weight: 400;
	color: #131826;
	letter-spacing: -3px;
}
.gallery_blcks {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-template-rows: auto auto auto;
	column-gap: 10px;
	row-gap: 10px;
	justify-items: center;
	overflow: hidden;
	border-radius: 20px;
}
.gallery_blcks a {
	width: 100%;
	height: 393px;
}
.gallery_blcks picture {
	display: block;
	height: 100%;
}
/* 1-я строка: img 1 и 2 — по 3 фракции */
.gallery_blcks a:nth-child(1) {
	grid-column: 1 / span 3; /* столбцы 1,2,3 */
	grid-row: 1;
}
.gallery_blcks a:nth-child(2) {
	grid-column: 4 / span 3; /* столбцы 4,5,6 */
	grid-row: 1;
}
/* 2-я строка */
/* img 3 – в левой части */
.gallery_blcks a:nth-child(3) {
	grid-column: 1 / span 2;
	grid-row: 2;
}
/* колонка 3-4: img4 и img5 одна над другой */
.gallery_blcks a:nth-child(4) {
	grid-column: 3 / span 2;
	grid-row: 2;
}
/* img 6 – правая часть */
.gallery_blcks a:nth-child(5) {
	grid-column: 5 / span 2;
	grid-row: 2;
}
/* 3-я строка: img7 и img8 по 3 фракции */
.gallery_blcks a:nth-child(6) {
	grid-column: 1 / span 3;
	grid-row: 3;
}
.gallery_blcks a:nth-child(7) {
	grid-column: 4 / span 3;
	grid-row: 3;
}
/* Общие стили для картинок */
.gallery_blcks img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.gallery_section .gallery_more {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	grid-template-rows: auto auto auto;
}

.gallery_section .gallery_more a {
	grid-column: 4 / span 3;
	grid-row: 3;
	height: 393px;
	width: calc(50% - 5px);
	position: absolute;
	right: 0;
	bottom: 0;
	justify-content: center;
	align-items: center;
	display: grid;
	text-align: center;
	align-content: center;
	backdrop-filter: blur(5px);
	border-radius: 0 0 20px 0;
}
.gallery_section span.gallery_more__btn {
	display: block;
	width: 77px;
	height: 77px;
	background-color: #fff;
	border-radius: 550%;
	margin: auto;
}
.gallery_section .gallery_more svg {
	margin: auto auto auto;
	display: block;
	margin-top: 30px;
}

.gallery_section span.gallery_bore__txt {
	font-weight: 600;
	font-size: 35px;
	line-height: 130%;
	text-align: center;
	color: #fff;
	display: block;
	margin-top: 23px;
}
.gallery_bore__txt.gallery_bore__txt_mob {
	display: none !important;
}
@media (max-width: 991px) {
	.gallery_section .title h2 {
		font-size: 35px;
	}
	.gallery_blcks a {
		height: 220px;
	}
	.gallery_section .gallery_more a {
		height: 220px;
	}
	.gallery_section span.gallery_more__btn {
		width: 60px;
		height: 60px;
	}
	.gallery_section .gallery_more svg {
		margin-top: 20px;
	}
	.gallery_section span.gallery_bore__txt {
		font-size: 25px;
	}
}

@media (max-width: 767px) {
	.gallery_section .title h2 {
		font-size: 35px;
	}
	.gallery_blcks {
		column-gap: 10px;
		row-gap: 10px;
	}
	.gallery_blcks a {
		height: 200px;
	}
	.gallery_section .gallery_more a {
		height: 200px;
	}
	.gallery_section span.gallery_bore__txt {
		font-size: 20px;
	}
	.gallery_section span.gallery_more__btn {
		width: 60px;
		height: 60px;
	}
	.gallery_section .gallery_more svg {
		margin-top: 21px;
	}
}

@media (max-width: 450px) {
	.gallery_blcks a {
		height: 140px;
	}
	.gallery_section .gallery_more a {
		height: 140px;
	}
	.gallery_bore__txt {
		display: none !important;
	}
	.gallery_bore__txt.gallery_bore__txt_mob {
		display: block !important;
	}
	.gallery_section span.gallery_more__btn {
		width: 38px;
		height: 38px;
	}
	.gallery_section .gallery_more svg {
		margin-top: 10px;
		width: 12px;
	}
	.gallery_section span.gallery_bore__txt {
		font-size: 15px;
		margin-top: 0.5rem;
	}
}
/* END Блок "Галерея" */

/* Блок "Услуги" */
.services_section .title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 30px;
}
.services_section .title h2 {
	font-size: 64px;
	font-weight: 400;
	color: #131826;
	margin-bottom: 0;
	letter-spacing: -3px;
}

.service-section ul#serviceTab {
	border: none;
	padding-top: 1rem;
}

.service-section .tab-content {
	margin-top: 30px;
}

.service-section h2 {
	font-size: 60px;
	line-height: 100%;
}

.service-section .nav-link {
	font-weight: 500;
	font-size: 20px;
	line-height: 140%;
	color: #2e2e2e;
	padding: 11px 23px;
	transition: all 0.3s ease-in-out;
	border: none !important;
	border-top-left-radius: none !important;
	border-top-right-radius: none !important;
	width: max-content;
}

.service-section .nav-link:hover {
	color: #469c4f !important;
	background-color: rgba(70, 156, 79, 0.1) !important;
	padding: 11px 23px;
	border-radius: 30px;
	border: none !important;
}

.service-section .nav-link:focus {
	color: #469c4f !important;
	background-color: rgba(70, 156, 79, 0.1) !important;
	padding: 11px 23px;
	border-radius: 30px;
	border: none !important;
}

.service-section .nav-link.active {
	color: #469c4f !important;
	background-color: rgba(70, 156, 79, 0.1) !important;
	padding: 11px 23px;
	border-radius: 30px;
	border: none !important;
}

.service-section .card-container {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 15px;
	padding-bottom: 4rem;
}

.service-section .card {
	height: 300px;
	border: none;
	position: relative;
	border-radius: 20px;
}

.service-section .card-body {
	background-color: #f5f5f7;
	border-radius: 20px;
	width: 260px;
	height: 300px;
	padding: 30px;
	top: 0;
	left: 0;
	position: relative;
	transition: width 0.1s ease-in-out, height 0.5s ease-in-out, top 0.2s ease-in-out, left 0.2s ease-in-out, box-shadow 0.5s ease-in-out;
	will-change: width, height, top, left, box-shadow;
	transform-origin: center center;
}
.service-section .card-body:hover,
.service-section .card-body:focus,
.service-section .card-body:active {
	background: #fdfdfd;
	box-shadow: 0px 20px 30px 0px #00000026;
	position: absolute;
	height: 340px;
	width: 280px;
	top: -20px;
	left: -9.5px;
	z-index: 12;
}
.service-section .card-body:has(#showMoreBtn):hover {
	position: relative;
	transform: none;
	width: 260px;
	max-height: 300px;
	height: 300px;
	padding: 30px;
	top: 0;
	left: 0;
	transition: all 0.3s ease-in-out;
}

.service-section .card-body:not(:hover) {
	max-height: 300px;
}
.service-section .card-body-content-top {
	display: flex;
	gap: 20px;
}

.card-body-btn {
	bottom: 30px;
	position: absolute;
}

.service-section .price-container,
.service-section .time-container {
	font-weight: 400;
	font-size: 15px;
	line-height: 130%;
	color: #2e2e2e;
}

.service-section .time-container {
	opacity: 50%;
}

.service-section h3.card-title {
	font-family: Libre Franklin;
	font-weight: 600;
	font-size: 20px;
	line-height: 130%;
	margin-top: 15px;
	text-align: left;
	padding: 0;
}

.service-section p.card-text {
	-webkit-line-clamp: 4;
	line-clamp: 4;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-weight: 400;
	font-size: 15px;
	line-height: 140%;
	opacity: 0;
	margin-bottom: 0;
	transition: all 0.3s ease-in-out;
}

.service-section .card-body:hover p.card-text {
	opacity: 70%;
	margin-bottom: 2rem;
}

.service-section .card-body-btn .btn {
	background-color: #ffffff;
	border-radius: 50%;
	width: 48px;
	height: 48px;
	transition: all 0.3s ease-in-out;
}

.service-section .card-body:hover .card-body-btn .btn {
	background-color: #2e2e2e;
}

.service-section .card-body-btn .btn svg {
	transition: all 0.3s ease-in-out;
	margin-top: 0.5rem;
}

.service-section .card-body:hover .card-body-btn .btn svg path {
	fill: #fff;
}
.service-section button#showMoreBtn {
	display: grid;
}
.service-section .card-body:has(#showMoreBtn):hover .card-body-show-more {
	background-color: #000000;
}

.service-section .card-body:has(#showMoreBtn):hover .card-body-show-more svg path {
	fill: #fff;
}

.service-section span.card-body-show-more {
	display: block;
	background-color: #fff;
	border-radius: 50%;
	height: 68px;
	width: 68px;
	margin: auto;
	transition: all 0.3s ease-in-out;
}
.service-section span.card-body-show-more svg {
	margin-top: 1.3rem;
	transition: all 0.3s ease-in-out;
}
.service-section span.card-body-show-more svg path {
	transition: all 0.3s ease-in-out;
}
.card-body-show-more-txt {
	padding-top: 20px;
	font-weight: 600;
	font-size: 20px;
	line-height: 130%;
	letter-spacing: -2%;
	text-align: center;
}
@media (max-width: 1399px) {
	.service-section .card-container {
		grid-template-columns: repeat(4, 1fr);
	}
}
@media (max-width: 1199px) {
	.service-top {
		display: block !important;
	}
	.service-section .card-container {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media (max-width: 991px) {
	.service-section h2 {
		font-size: 35px;
	}
	ul#serviceTab {
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		margin: 1.5rem -1.5rem 1.125rem -1.5rem !important;
		padding: 0 1.5rem;
		justify-self: auto;
		scrollbar-width: none;
	}
	.service-section .card-body {
		width: 250px;
		height: 300px;
	}
	.service-section .card-body:hover,
	.service-section .card-body:focus,
	.service-section .card-body:active {
		height: 340px;
		width: 260px;
	}
}
@media (max-width: 768px) {
	.service-section .card-container {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 480px) {
	.service-section .card-body:not(:hover) {
		max-height: max-content;
	}
	.service-section .card {
		height: max-content;
	}
	.service-section .card-container {
		grid-template-columns: 1fr;
	}
	.service-section .card-body:hover,
	.service-section .card-body:focus,
	.service-section .card-body:active {
		background: linear-gradient(0deg, #f5f5f7, #f5f5f7), linear-gradient(205.93deg, rgba(253, 253, 253, 0) 0%, #fdfdfd 50.17%);
		box-shadow: 0px 20px 30px 0px #00000026;
		position: relative;
		height: max-content;
		max-height: max-content;
		width: 100%;
		top: 0;
		left: 0;
	}
	.service-section .card-body:has(#showMoreBtn):hover {
		position: relative;
		transform: none;
		height: 100%;
		max-height: 330px;
		width: 100%;
		padding: 30px;
		top: 0;
		left: 0;
		transition: all 0.3s ease-in-out;
	}
	.service-section .card-body {
		width: 100%;
	}

	.service-section p.card-text,
	.service-section .card-body:hover p.card-text {
		opacity: 100%;
	}
	.service-section .card:has(.showMoreBtn) {
		height: 60px;
	}
	.card-body-btn {
		display: none;
	}
	.service-section span.card-body-show-more {
		display: none;
	}
	.card-body-show-more-txt {
		padding-top: 0;
	}
}
/* END Блок "Услуги" */

/* Блок "Меню кухни" */
body.bathhouse-entity .section_menu {
	margin-top: -30px !important;
}
.section_menu .container {
	position: relative;
	padding-top: 0 !important;
	height: 385px;
}
.section_menu .img_background {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	padding: inherit;
}
.section_menu .img_background .img_picture {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	padding: inherit;
	z-index: 1;
}
.section_menu .img_background .img_picture::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	backdrop-filter: blur(20px);
	z-index: 1;
	border-radius: 20px;
	mask: linear-gradient(to top, black, transparent);
	-webkit-mask: linear-gradient(180deg, rgba(46, 46, 46, 0) 28.78%, #2e2e2e 100%);
}
.section_menu .img_background img {
	object-fit: cover;
	width: 100%;
	height: 100%;
	border-radius: 20px;
}
.section_menu .content {
	position: absolute;
	z-index: 3;
	align-items: center;
	justify-content: center;
	display: grid;
	align-content: center;
	margin: auto;
	width: 100%;
	height: 100%;
	text-align: center;
	color: #fff;
}

.section_menu .content span.menu-svg-icon {
	display: block;
	margin: auto;
	height: 68px;
	width: 68px;
	background-color: #fff;
	border-radius: 50%;
	margin-bottom: 10px;
}

.section_menu .content span.menu-svg-icon svg {
	margin-top: 1.2rem;
}
.section_menu .content h2 {
	font-size: 60px;
	line-height: 100%;
	margin-bottom: 12px;
}
.section_menu .content .bottom {
	font-size: 20px;
	line-height: 130%;
	text-align: center;
	opacity: 70%;
	padding: 0 1.5rem;
}
.section_menu .content .bottom p {
	margin-bottom: 0;
}
.section_menu .content .bottom a {
	color: #fff;
}
.menu-wrap {
	position: relative;
	width: 100%;
	height: 100%;
}
@media (max-width: 991px) {
	body.bathhouse-entity .section_menu {
		margin-top: -50px !important;
	}
	.section_menu .title .txt {
		width: 100%;
	}
}
@media (max-width: 450px) {
	.section_menu .container {
		height: 352px;
	}
	.section_menu .content span.menu-svg-icon {
		margin-bottom: 26px;
	}
	.section_menu .content h2 {
		font-size: 35px;
	}
	.section_menu .content .bottom {
		opacity: 70%;
		font-family: Libre Franklin;
		font-weight: 400;
		font-size: 15px;
		line-height: 140%;
		text-align: center;
	}
}

/* END Блок "Меню кухни" */

/* Блок "Сертификаты" */
.section_sertificates .title {
	margin-bottom: 40px;
	align-items: center;
}
.section_sertificates .title h2 {
	margin-bottom: 0;
	font-size: 60px;
	line-height: 100%;
	color: #2e2e2e;
	letter-spacing: -3px;
}

.sert-next,
.sert-prev {
	margin-top: calc(0px - (var(--swiper-navigation-size) / 1.2)) !important;
}

.sert_swiper {
	padding: 0.5rem;
	margin: -0.5rem;
	height: 450px;
}

.sert_swiper .swiper-slide {
	height: 425px;
	border-radius: 20px !important;
	overflow: hidden;
	position: relative;
	cursor: pointer;
}

.wave-bg img {
	border-radius: inherit;
	mix-blend-mode: Darken;
}

.sert-icon-star {
	height: 120px;
}

.sert-icon-star img {
	object-fit: contain;
}

.sert_swiper .swiper-slide .top {
	position: absolute;
	top: 0;
	margin-top: 4rem;
	width: 100%;
}

.sert_swiper .swiper-slide .bottom {
	margin-top: 25px;
}
.sert_swiper .swiper-slide .bottom .bottom-title {
	font-family: Libre Franklin;
	font-weight: 600;
	font-size: 22px;
	line-height: 130%;
	text-align: center;
	padding-left: 1rem;
	padding-right: 1rem;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.sert_swiper .swiper-slide .bottom .bottom-sub-title {
	font-family: Libre Franklin;
	font-weight: 400;
	font-size: 17px;
	line-height: 130%;
	text-align: center;
	opacity: 70%;
	padding: 0 3rem 0 3rem;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin-top: 5px;
	margin-bottom: 30px;
}

.sert_swiper .swiper-slide .price {
	border-radius: 30px;
	padding-top: 14.5px;
	padding-right: 25px;
	padding-bottom: 14.5px;
	padding-left: 25px;
	border: none;
	font-weight: 600;
	font-size: 15px;
	line-height: 130%;
	text-align: center;
	background-color: #ffffff;
	color: #2e2e2e !important;
	max-width: max-content;
	width: auto;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 2rem;
	margin: 0 auto;
}
/* сертификат с ценой */

.sert-with-price-on-top .top-title {
	font-family: Arsenal;
	font-weight: 700;
	font-style: Italic;
	font-size: 70px;
	line-height: 130%;
	letter-spacing: -7px;
	text-align: center;
	margin-left: -1rem;
}
/* светло-бежевый сертифкат */
.light-beige-bg {
	background-color: #dfdad3;
	height: 100%;
}

.light-beige-bg.sert-with-price-on-top .top-title {
	color: #dfdad3;
	text-shadow: -1px -1px 0px #afa69a, 1px 1px 0px #afa69a, 2px 2px 0px #afa69a, 3px 3px 0px #afa69a, 4px 4px 0px #afa69a;
}
/* END светло-бежевый сертифкат */
/* светло-зеленый сертификат */
.light-green-bg {
	background-color: #dbe3d9;
	height: 100%;
}

.light-green-bg.sert-with-price-on-top .top-title {
	color: #dbe3d9;
	text-shadow: -1px -1px 0px #90a484, 1px 1px 0px #90a484, 2px 2px 0px #90a484, 3px 3px 0px #90a484, 4px 4px 0px #90a484;
}
/* END светло-зеленый сертификат */
/* сертификат цвета слоновой кости */

.ivory {
	background-color: #eceae1;
	height: 100%;
}
/* END сертификат цвета слоновой кости */
/* сертификат с фото на фоне */
.sert-with-img-bg {
	color: #fff;
}
.sert-with-img-bg .sert-img-bg {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	padding: inherit;
	z-index: -1;
}
.sert_swiper .swiper-slide .sert-with-img-bg .bottom {
	margin-top: 150px;
}
.sert_swiper .swiper-slide .sert-with-img-bg .bottom:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	backdrop-filter: blur(20px);
	mask: linear-gradient(to top, black, transparent);
	-webkit-mask: linear-gradient(to top, black, transparent);
	z-index: -1;
}
body.bathhouse-entity .section_sertificates {
	padding-top: 0 !important;
}
/* END сертификат с фото на фоне */

@media (max-width: 991px) {
	.section_sertificates .title h2 {
		font-size: 35px;
	}
	.sert-swiper .sert_blcks {
		padding: 30px 15px;
	}
	.sert-swiper .sert_blck .title {
		margin-bottom: 20px;
	}
}

svg.sert-laurel-wreath-icon {
	width: 110px;
}
@media (max-width: 480px) {
}

/* END Блок "Сертификаты" */

/* СЕО секция */
.seo-section .title h2 {
	font-size: 60px;
	line-height: 100%;
	margin-bottom: 16px;
	letter-spacing: -3px;
}
.seo-section p {
	font-size: 20px;
}
@media (max-width: 991px) {
	.seo-section .title h2 {
		font-size: 35px;
	}
	.seo-section p {
		font-size: 18px;
	}
}
/* END СЕО секция */

/* Блок "Отзывы" */
.section_reviews .title {
	display: flex;
	justify-content: space-between;
	margin-bottom: 35px;
	align-items: center;
}
.section_reviews .title h2 {
	margin-bottom: 0;
	font-size: 60px;
	line-height: 100%;
	font-weight: 400;
	color: #131826;
	margin-right: 9px;
	letter-spacing: -3px;
}
.section_reviews .title svg {
	margin-right: 9px;
}
.reviews-slide-wrap {
	border-radius: 20px;
	background-color: #f5f5f7;
	height: 360px;
	padding: 40px;
	text-align: left;
}
.top-left {
	align-items: center;
}
.reviews-img {
	height: 60px;
	width: 60px;
}
.reviews-top-text {
	margin-left: 17px;
}
.reviews-autor {
	font-weight: 600;
	font-size: 25px;
	line-height: 130%;
}
.reviews-date {
	font-weight: 400;
	font-size: 15px;
	line-height: 130%;
	letter-spacing: 0;
	opacity: 50%;
}
.reviews-slide-wrap .bottom {
	margin-top: 19px;
}
.reviews-txt {
	font-size: 20px;
	line-height: 150%;
	-webkit-line-clamp: 4;
	line-clamp: 4;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin-bottom: 33px;
}
a.reviews-link {
	background-color: #fff;
	padding: 14px 20px;
	border-radius: 30px;
	color: #2e2e2e;
	font-family: Libre Franklin;
	font-weight: 600;
	font-size: 15px;
	line-height: 130%;
}
.reviews-link svg {
	margin-left: 10px;
}
.star-rating.rating-1 svg:nth-child(-n + 1) path,
.star-rating.rating-2 svg:nth-child(-n + 2) path,
.star-rating.rating-3 svg:nth-child(-n + 3) path,
.star-rating.rating-4 svg:nth-child(-n + 4) path,
.star-rating.rating-5 svg:nth-child(-n + 5) path {
	fill: #469c4f;
}

.reviews-prev,
.reviews-next {
	margin-top: calc(0px - (var(--swiper-navigation-size) / 1.2)) !important;
}

@media (max-width: 991px) {
	.section_reviews .title h2 {
		font-size: 35px;
	}
	.reviews-prev,
	.reviews-next {
		margin-top: calc(0px - (var(--swiper-navigation-size) / 1)) !important;
	}
}
@media (max-width: 450px) {
	.reviews-slide-wrap .top {
		display: grid !important;
		gap: 1rem;
	}
	.reviews-slide-wrap {
		height: 375px;
	}
	.reviews-txt {
		font-size: 17px;
	}
}
/* END Блок "Отзывы" */

/* Блок "Акции" */
.section_promo .title h2 {
	display: flex;
	justify-content: space-between;
	margin-bottom: 25px;
	align-items: center;
	font-size: 60px;
	line-height: 100%;
	letter-spacing: -3px;
}
.promo-swiper {
	padding: 0.6rem;
	margin: -0.6rem;
	height: 380px;
}
.promo-wrap {
	height: 344px;
	border-radius: 20px;
	border-top: 3px solid #ed4f2f;
	width: 431px;
	text-align: left;
	position: relative;
	overflow: hidden;
}
.swiper-slide .promo-wrap img {
	border-radius: 0;
}
.promo-icon-heart {
	width: 62px;
	height: 62px;
	position: relative;
	margin-left: 52px;
}
.promo-icon-heart svg.icon-bg {
	position: absolute;
}
.promo-icon-heart svg.icon-heart {
	position: absolute;
	top: 30%;
	left: 29%;
}
.img-promo-bg {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	padding: inherit;
	z-index: -1;
}
.promo-wrap.promo-with-photo .promo-content {
	color: #fff;
}
.promo-wrap.promo-without-photo {
	background-color: #f5f5f7;
}
.promo-content {
	position: absolute;
	bottom: 0;
	padding: 40px 35px;
}
.promo-content .title {
	margin-bottom: 16px;
	font-weight: 600;
	font-size: 30px;
	line-height: 110.00000000000001%;
	vertical-align: bottom;
}
.promo-content .txt {
	font-size: 17px;
	line-height: 130%;
	opacity: 70%;
	-webkit-line-clamp: 1;
	line-clamp: 1;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.promo-next,
.promo-prev {
	margin-top: calc(0px - (var(--swiper-navigation-size) / 1.2)) !important;
}
@media (max-width: 991px) {
	.section_promo .title h2 {
		font-size: 35px;
	}
	.promo-swiper .sert_blcks .sert_blck .top {
		display: flex;
		flex-wrap: wrap;
	}
	.promo-swiper .sert_blcks .sert_blck .promo_icon_top {
		flex-shrink: 0;
		margin-right: 10px;
		margin-bottom: 0;
	}
	.promo-swiper .sert_blcks .sert_blck .title {
		width: 78%;
		margin-bottom: 20px;
		font-size: 19px;
	}
}
/* END Блок "Акции" */

/* Блок "Контакты" */
.section_contacts .container {
	max-width: 1554px !important;
}
.section_contacts .title {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
	align-items: center;
}
.section_contacts .title h2 {
	margin-bottom: 0;
	font-size: 60px;
	line-height: 100%;
	font-weight: 400;
	color: #131826;
	letter-spacing: -3px;
}
.section_contacts .contacts_blcks .puncts {
	display: flex;
	padding-top: 15px;
	padding-bottom: 20px;
	border-top: 1px solid #5150291a;
	border-bottom: 1px solid #5150291a;
	gap: 140px;
	color: #131826;
}
.section_contacts .puncts .metro .txt {
	font-size: 16px;
	line-height: 100%;
	font-weight: 400;
	margin-bottom: 15px;
}
.section_contacts .puncts .metro .info {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: 20px;
	line-height: 100%;
	font-weight: 400;
}
.section_contacts .map_blck {
	height: 700px;
	position: relative;
	margin-top: 55px;
}
.section_contacts .map_blck .map {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	border-radius: 10px;
}
.section_contacts .map_blck .map img {
	border-radius: 10px;
	object-fit: cover;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.section_contacts .map_blck .map .ymaps3x0--map-container {
	border-radius: 50px;
}
.section_contacts .map_blck .info {
	position: absolute;
	z-index: 2;
	background: #fff;
	border-radius: 35px;
	padding: 62px 65px;
	width: 627px;
	height: 640px;
	top: 30px;
	left: 30px;
	bottom: 30px;
}
.section_contacts.new_contacts .map_blck .info .map_top div,
.section_contacts.new_contacts .map_blck .info .metro_blck,
.section_contacts.new_contacts .map_blck .info .add {
	display: flex;
	align-items: center;
	gap: 15px;
}
.section_contacts.new_contacts .map_blck .info .add span {
	width: fit-content;
}
.section_contacts.new_contacts .map_blck .info .map_top .map_title {
	flex-direction: column;
	align-items: center;
}
.section_contacts.new_contacts .map_blck .info .map_top .map_title span {
	font-size: 32px;
	text-align: center;
	margin-bottom: 15px;
	color: #1d1d1f;
}
.section_contacts.new_contacts .map_blck .info .map_top svg,
.section_contacts.new_contacts .map_blck .info .metro_blck svg {
	flex-shrink: 0;
}
.section_contacts.new_contacts .map_blck .info .soc a {
	backdrop-filter: blur(104.4px);
	color: #fff;
	gap: 10px;
}

.section_contacts .map_blck .info .top {
	display: flex;
	gap: 10px;
	align-items: center;
	font-size: 16px;
	line-height: 100%;
	font-weight: 400;
	margin-bottom: 15px;
	color: #131826;
}
.section_contacts .map_blck .info .bottom a {
	font-size: 20px;
	text-decoration: none;
	color: #131826;
	line-height: 100%;
	font-weight: 400;
}
.section_contacts .map_blck .info .add .bottom {
	font-size: 20px;
	color: #131826;
	line-height: 100%;
}
.section_contacts .map_blck .info .soc {
	align-items: center;
	gap: 10px;
	margin-top: 30px;
	display: flex;
}
.section_contacts .map_blck .info .road {
	display: flex;
	gap: 25px;
}
.section_contacts .map_blck .info .road a {
	margin-top: 30px;
	text-decoration: none;
	color: #2e2e2e;
	display: flex;
	align-items: center;
	font-size: 20px;
	font-weight: 600;
	line-height: 140%;
	gap: 10px;
}

.map_top a,
.map_middle,
.map_middle a {
	font-size: 20px;
	line-height: 130%;
	color: #2e2e2e;
}
.map_top {
	gap: 16px;
	display: grid;
	margin-bottom: 30px;
}
.map_middle,
.metro_blcks {
	gap: 16px;
	display: grid;
}
@media (max-width: 991px) {
	.section_contacts .container {
		max-width: 854px !important;
	}
	.section_contacts .title h2 {
		font-size: 35px;
	}
	.section_contacts .puncts .metro .info {
		font-size: 15px;
	}
	.section_contacts .puncts .metro .txt {
		display: none;
	}
	.section_contacts .title {
		margin-bottom: 20px;
		align-items: flex-end;
	}
	.section_contacts .contacts_blcks .puncts {
		flex-direction: column;
		gap: 15px;
		padding: 0;
		border: none;
	}
	.section_contacts .contacts_blcks .puncts .metro {
		padding-bottom: 15px;
		/*border-bottom: 1px solid #5150291A;*/
	}
	.section_contacts .map_blck {
		margin-top: 0;
		height: auto;
	}
	.section_contacts .map_blck .info .tel,
	.section_contacts .map_blck .info .mail,
	.section_contacts .map_blck .info .add,
	.section_contacts .map_blck .info .soc {
		display: flex;
		align-items: center;
		gap: 15px;
	}
	.section_contacts .map_blck .info {
		position: relative;
		top: auto !important;
		left: auto !important;
		bottom: auto !important;
		width: auto !important;
		height: auto;
		padding: 0px;
		margin-bottom: 40px;
	}
	.section_contacts .map_blck .info .top {
		margin-bottom: 0;
		gap: 10px;
		font-size: 14px;
	}
	.section_contacts .map_blck .info .top span {
		display: none;
	}
	.section_contacts .map_blck .info .bottom a,
	.section_contacts .map_blck .info .add .bottom {
		font-size: 14px;
	}
	.section_contacts .map_blck .map {
		position: relative;
		top: auto;
		bottom: auto;
		left: auto;
		right: auto;
		height: 470px;
	}
	.section_contacts .map_blck .map .mob-ver {
		position: absolute;
		z-index: 3;
		bottom: 30px;
		left: 15px;
		display: flex;
		align-items: flex-end;
		gap: 10px;
	}
	.section_contacts .map_blck .map .mob-ver button {
		background: #415e44;
		padding: 20px;
		border-radius: 25px;
		color: #fff;
		font-size: 12px;
		line-height: 100%;
		border: none;
	}
	.section_contacts .map_blck .map .mob-ver .logo {
		padding: 10px;
		border-radius: 12px;
		background: #00000030;
		backdrop-filter: blur(104.4px);
		max-width: 130px;
	}
	.section_contacts.new_contacts .map_blck .info .map_top div span,
	.section_contacts.new_contacts .map_blck .info .map_top div a,
	.section_contacts.new_contacts .map_blck .info .metro_blck,
	.add {
		font-size: 17px;
	}
	.section_contacts.new_contacts .map_blck .info .soc a {
		font-size: 15px;
		gap: 5px;
	}
	.section_contacts.new_contacts .map_blck .road {
		top: auto;
		right: 10px;
		left: 10px;
		bottom: 10px;
		flex-direction: row;
	}
	.section_contacts.new_contacts .map_blck .road a {
		font-size: 15px;
	}
}
@media (max-width: 768px) {
	.section_contacts .container {
		max-width: 700px !important;
	}
}
/* END Блок "Контакты" */

/* Footer */
.footer_alt {
	background-color: #f7f7f8 !important;
}
.footer_alt .top,
.footer_alt .bottom {
	display: flex;
	align-items: center;
	flex-direction: row;
	justify-content: space-between;
	width: 100%;
}
.footer_alt .top {
	border-bottom: 1px solid #51502924;
	padding-bottom: 30px;
}
.footer_alt .top .top_single-logo {
	max-width: 110px;
}
.footer_alt .top_middle {
	display: flex;
	align-items: center;
}
.footer_alt .anchor {
	text-decoration: none;
	color: #131826;
	font-weight: 700;
	margin-right: 130px;
}
.footer_alt .footer_menu {
	display: flex;
	flex-direction: row;
	list-style-type: none;
	padding: 0;
	margin-bottom: 0;
	gap: 35px;
}
.footer_alt .footer_menu a {
	text-decoration: none;
	font-size: 16px;
	line-height: 100%;
	color: #131826;
}
.footer_alt .footer_menu a:hover {
}
.footer_alt .top_right button {
	background: #415e44;
	border-color: transparent;
	padding: 15px 30px;
	color: #fff;
	border-radius: 60px;
	font-size: 12px;
}
.footer_alt .bottom {
	padding-top: 25px;
	padding-bottom: 50px;
}
.footer_alt .bottom_left {
	display: flex;
	align-items: center;
	gap: 100px;
}
.footer_alt .bottom_left a {
	display: flex;
	align-items: center;
}
.footer_alt .bottom_left button {
	border: 1px solid #515029;
	border-radius: 25px;
	font-size: 16px;
	font-weight: 400;
	line-height: 100%;
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 15px 20px;
	background: #ffffff;
}
.footer_alt .bottom_right {
	display: flex;
	gap: 90px;
	align-items: center;
}
.footer_alt .bottom_right a {
	color: #131826;
	font-size: 14px;
	line-height: 100%;
}

.footer.new_style {
	background-color: #415e441a;
	margin-top: 90px;
}
.footer.new_style,
.footer.new_style a {
	color: #6e6e73;
}
.footer.new_style .footer_bath {
	padding-top: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid #d8e1e8;
}
.footer.new_style .footer_bath .title_footer {
	font-size: 18px;
	font-weight: 500;
}
.footer.new_style .footer_bath .txt {
	font-size: 14px;
}
.footer.new_style .footer_all {
	padding-top: 40px;
	padding-bottom: 50px;
}
.footer.new_style .footer_all .footer_info_txt {
	margin-top: 10px;
	font-size: 14px;
	font-weight: 300;
}
.footer.new_style .footer_all .footer_inform {
	margin-top: 40px;
	display: flex;
	align-items: center;
	gap: 10px;
}
.footer.new_style .footer_all .footer_inform a:first-child {
	display: flex;
	align-items: center;
	gap: 10px;
}

@media (max-width: 991px) {
	.footer_alt .top {
		flex-direction: column;
	}
	.footer_alt .top .top_single-logo {
		display: none;
	}
	.footer_alt .top_middle {
		flex-direction: column;
	}
	.footer_alt .anchor {
		margin-right: 0;
	}
	.footer_alt .footer_menu {
		text-align: center;
		flex-direction: column;
		margin-top: 15px;
		gap: 15px;
	}
	.footer_alt .top_right {
		display: none;
	}
	.footer_alt .bottom {
		flex-direction: column;
	}
	.footer_alt .bottom_left {
		flex-direction: column-reverse;
		gap: 30px;
		margin-bottom: 20px;
	}
	.footer_alt .bottom_right {
		flex-direction: column;
		gap: 20px;
	}

	.footer.new_style .footer_bath .title_footer {
		font-size: 20px;
	}
	.footer.new_style .footer_bath .txt {
		font-size: 12px;
	}
	.footer.new_style .footer_all {
		padding-bottom: 20px;
	}
	.footer.new_style .footer_all .footer_inform {
		margin-top: 20px;
		flex-wrap: wrap;
	}
	.footer.new_style .footer_all .footer_inform .punct {
		display: none;
	}
}
/* END Footer */

/* Модальные окна */
.info_bath.modal p {
	/* margin-bottom: 0; */
}
.modal .modal-dialog {
	max-width: 550px;
}
.info_bath.modal .modal-dialog {
	max-width: 650px;
}
/* .modal-backdrop.fade.show {
	opacity: 1;
	background: #00000030;
	backdrop-filter: blur(104.4px);
} */
.modal .modal-content {
	position: relative;
	background: #ffffff;
	border-radius: 20px;
}
.info_bath.modal .modal-content {
	max-height: 92vh;
	border: none;
	padding: 0.3rem;
}
.modal .modal-content .btn-close {
	position: absolute;
	right: -40px;
	padding: 0;
	width: 25px;
	height: 25px;
	z-index: 2;
	opacity: 1;
}
.modal .modal-content .modal-body {
	overflow-y: overlay;
	scrollbar-width: none;
}
.info_bath.modal .modal-body {
	border-radius: 0.5rem;
	padding: 0;
	padding-bottom: 100px;
}
.info_bath.modal .modal-body::-webkit-scrollbar {
	width: 5px; /* Ширина всего элемента навигации */
	border-radius: 10px;
}
.info_bath.modal .modal-body::-webkit-scrollbar-track {
	background: #f7f7f8; /* Цвет дорожки */
	border-radius: 10px;
}
.info_bath.modal .modal-body::-webkit-scrollbar-thumb {
	background-color: #415e44; /* Цвет бегунка */
	border-radius: 10px; /* Округление бегунка */
	border: none;
}
.info_bath.modal .modal_slider {
	border-radius: 0.5rem;
	height: 370px;
	max-width: 895px;
}
.info_bath.modal .modal_slider .swiper {
	border-radius: 20px;
}
.info_bath.modal .modal_slider .swiper-slide {
	background: transparent;
}
.info_bath.modal .modal_slider .img_background {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
.info_bath.modal .modal_slider .img_background picture,
.info_bath.modal .modal_slider .img_background img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1;
	border-radius: 0.5rem;
}
.info_bath.modal .swiper-pagination_blcks {
	position: absolute;
	bottom: 30px;
	height: 50px;
	left: 30px;
	right: 30px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: row-reverse;
}
.info_bath.modal .swiper-button-next:after,
.info_bath.modal .swiper-button-prev:after {
	display: none;
}
.info_bath.modal .swiper-button-next,
.info_bath.modal .swiper-button-prev {
	padding: 16px;
	position: relative;
	top: auto;
	right: auto;
	bottom: auto;
	left: auto;
	margin-top: 0;
	height: 100%;
	width: auto;
	border: 1px solid #ffffff;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.info_bath.modal .swiper-button-next svg,
.info_bath.modal .swiper-button-prev svg {
	width: 15px;
	height: 15px;
}
.info_bath.modal .modal_title {
	margin: 25px;
}
.info_bath.modal .modal_title h2 {
	color: #2e2e2e;
	margin: 0;
	font-weight: 700;
	font-size: 40px;
	line-height: 100%;
	vertical-align: bottom;
}
.info_bath.modal .modal_brief_info {
	margin: 0 25px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}
.modal.reserv_bath .modal_brief_info {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}
.info_bath.modal .modal_brief_price_info,
.modal.reserv_bath .modal_brief_price_info {
	background-color: #2e2e2e;
	color: #fff;
	border-radius: 20px;
	padding: 12px 23px;
}
.info_bath.modal .modal_brief_price_info span.price,
.modal.reserv_bath .modal_brief_price_info span.price {
	display: block;
	font-weight: 600;
	font-size: 20px;
	line-height: 125%;
}
.info_bath.modal span.span_opacity,
.modal.reserv_bath span.span_opacity {
	opacity: 50%;
	font-weight: 500;
	font-size: 13px;
	line-height: 100%;
	display: block;
}

.info_bath.modal .modal_brief_info .right {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}
.info_bath.modal .modal_brief_info .span_wrap,
.reserv_bath.modal .modal_brief_info .span_wrap {
	width: 100%;
	margin-left: 2.3rem;
}
.info_bath.modal .modal_brief_info .guess,
.info_bath.modal .modal_brief_info .time,
.info_bath.modal .modal_brief_info .good_place,
.reserv_bath.modal .modal_brief_info .guess,
.reserv_bath.modal .modal_brief_info .time,
.reserv_bath.modal .modal_brief_info .good_place {
	display: flex;
	border: 1px solid #f1f1f4;
	border-radius: 16px;
	padding: 13px 10px;
	align-items: center;
	position: relative;
}
.modal_brief_info svg {
	position: absolute;
}

span.max_guests,
span.min_booking_time,
span.good_place__text_top {
	display: block;
	font-weight: 600;
	font-size: 16px;
	line-height: 125%;
}

.good_place .icon-by-den {
	width: 32px;
	position: absolute;
}

.info_bath.modal .modal_brief_info .video {
	padding-top: 15px;
	padding-bottom: 15px;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.info_bath.modal .modal_brief_info .video a {
	background: #415e44;
	color: #fff;
	text-decoration: none;
	padding: 5px 10px;
	font-size: 14px;
	line-height: 100%;
	font-weight: 400;
	border-radius: 35px;
}
.info_bath.modal .modal_days {
	display: flex;
	align-items: flex-start;
	gap: 30px;
}
.info_bath.modal .modal_days,
.info_bath.modal .modal_txt_inform,
.info_bath.modal .modal_inform_puncts,
.info_bath.modal .modal_comforts,
.info_bath.modal .modal_rules,
.info_bath.modal .modal_ohter_txt,
.info_bath.modal .modal_ohter_list {
	margin: 25px;
}
.info_bath.modal .modal_txt_inform {
	font-size: 15px;
}
.info_bath.modal .modal_days .day_blck {
	display: flex;
	flex-direction: column;
}
.info_bath.modal .modal_days .day_txt {
	color: #2e2e2e;
	font-family: Libre Franklin;
	font-weight: 600;
	line-height: 160%;
	text-transform: uppercase;
}
.info_bath.modal .modal_days .day_hour {
	display: block;
	width: max-content;
	color: #2e2e2e;
	font-weight: 400;
	font-size: 13px;
	line-height: 160%;
}
.info_bath.modal .modal_inform_puncts .title_txt,
.info_bath.modal .modal_comforts .title_txt,
.info_bath.modal .modal_rules .title_txt {
	color: #2e2e2e;
	margin-bottom: 15px;
	font-weight: 600;
	font-size: 20px;
	line-height: 160%;
}
.info_bath.modal .modal_inform_puncts .puncts_blcks,
.modal.reserv_bath .puncts_blcks {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 10px;
}
.info_bath.modal .modal_inform_puncts .punct,
.modal.reserv_bath .punct {
	display: flex;
	gap: 20px;
	align-items: center;
	background-color: #f6f6f8;
	border-radius: 20px;
	padding: 25px;
}
.info_bath.modal .modal_inform_puncts .punct .left,
.modal.reserv_bath .punct .left {
	width: 64px;
	height: 64px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #ffffff;
	border-radius: 12px;
	flex-shrink: 0;
	box-shadow: 0px 2.93px 4.48px 0px #0000000d;
	box-shadow: 0px 36px 55px 0px #00000026;
}
.info_bath.modal .modal_inform_puncts .punct .right,
.modal.reserv_bath .punct .right {
	width: fit-content;
	display: flex;
	flex-direction: column;
}
.info_bath.modal .modal_inform_puncts .punct .right .top_txt,
.modal.reserv_bath .punct .right .top_txt {
	color: #2e2e2e;
	font-weight: 500;
	font-style: Medium;
	font-size: 17px;
	line-height: 160%;
}
.info_bath.modal .modal_inform_puncts .punct .right .bottom_txt,
.modal.reserv_bath .punct .right .bottom_txt {
	font-size: 15px;
	line-height: 130%;
	text-transform: lowercase;
	opacity: 70%;
}
.modal.reserv_bath .puncts_blcks {
	margin-bottom: 20px;
}
.info_bath.modal .modal_comforts .comforts_blcks {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.info_bath.modal .modal_comforts .comfort {
	padding: 10px 15px;
	border: 1px solid #00000012;
	border-radius: 50px;
}
.info_bath.modal .modal_comforts .comfort span {
	color: #2e2e2e;
	font-weight: 500;
	font-size: 15px;
	line-height: 160%;
	text-align: center;
}
.info_bath.modal .modal_rules .txt {
	color: #2e2e2e;
	font-weight: 400;
	font-size: 15px;
	line-height: 160%;
}
.info_bath.modal .modal-footer {
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	width: 100%;
	bottom: 0;
	left: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #ffffff 100%);
	padding: 40px;
	border-radius: 20px;
}
.info_bath.modal .modal-footer button,
.reserv_bath.modal .modal_reserv_form button.btn_blck {
	background: #469c4f;
	border: none;
	color: #fff;
	border-radius: 20px;
	margin: auto;
	width: 100%;
	padding-top: 20px;
	padding-bottom: 20px;
	font-family: Libre Franklin;
	font-weight: 600;
	font-size: 20px;
	line-height: 160%;
	text-align: center;
}
.info_bath.modal .modal_ohter_txt {
	color: #131826;
	font-size: 14px;
	font-weight: 300;
	line-height: 140%;
}
.info_bath.modal .modal_ohter_list li {
	color: #415e44;
	list-style-type: none;
	position: relative;
	font-size: 18px;
	font-weight: 700;
	line-height: 234%;
}
.info_bath.modal .modal_ohter_list li::before {
	content: "✔";
	position: absolute;
	top: 0;
	left: -20px;
	color: #415e44;
}

.reserv_bath.modal .bold {
	font-weight: 700;
}
.reserv_bath.modal .modal-body {
	padding: 25px;
}
.reserv_bath.modal .modal_title {
	margin-bottom: 20px;
}
.reserv_bath.modal .modal_title h2 {
	color: #2e2e2e;
	margin-bottom: 15px;
	font-weight: 700;
	font-size: 40px;
	line-height: 100%;
	vertical-align: bottom;
}
.reserv_bath.modal .modal_title .info {
	color: #415e44;
	font-size: 14px;
	font-weight: 400;
	line-height: 100%;
	display: flex;
	align-items: center;
	gap: 5px;
}
.reserv_bath.modal .modal_inform {
	background: #efefef;
	border-radius: 10px;
	padding: 25px 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 15px;
}
.reserv_bath.modal .modal_inform .left {
	width: 50%;
	font-size: 14px;
	line-height: 100%;
	font-weight: 400;
}
.reserv_bath.modal .modal_inform .right {
	color: #415e44;
	font-size: 21px;
	font-weight: 700;
	line-height: 100%;
}
.reserv_bath.modal .modal_inform .hight {
	font-size: 30px;
}
.reserv_bath.modal .modal_reserv_form .form_blck {
	display: ;
	justify-content: space-between;
	gap: 5px;
}
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input {
	max-width: 100%;
	position: relative;
	width: 100%;
	margin-bottom: 10px;
}
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input label.inp_place {
	position: absolute;
	left: 20px;
	top: 15px;
	background: #f7f7f8;
	width: 85%;
	transition: 0.2s;
	font-family: Libre Franklin;
	font-weight: 400;
	font-size: 17px;
	line-height: 160%;
}
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input label.inp_place:before {
	content: "";
	position: absolute;
	z-index: 1;
	left: 0;
	width: 100%;
	top: 0;
	height: 50px;
	background: transparent;
	transition: 0.2s;
}
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input label.inp_place.active {
	width: fit-content;
	top: 0;
	left: 15px;
	padding: 0 10px;
	color: #469c4f;
	font-size: 12px;
	line-height: 160%;
	background: transparent;
}
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input label.inp_place.active:before {
	height: 100%;
}

/* Основные стили для всех устройств */
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input input {
	padding: 16px 20px;
	width: 100%;
	background: #f5f5f7;
	border: 2px solid transparent;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	font-weight: 400;
	box-sizing: border-box;
	/* Добавляем для iOS */
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
}

.blck_input.active input,
.blck_input.active textarea,
.number-blck.active input {
	border: 2px solid #469c4f !important;
	outline: none;
}

/* Специальные стили для date и time inputs */
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input input[type="date"],
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input input[type="time"] {
	padding: 16px 20px;
	width: 100%;
	background: #f5f5f7;
	border: 2px solid transparent;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	font-weight: 400;
	box-sizing: border-box;
	/* Ключевые свойства для iOS */
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	/* Дополнительные свойства для стабильности на iOS */
	height: auto;
	min-height: 56px; /* 16px + 16px padding + минимальная высота */
	line-height: normal;
	/* Для iOS Safari */
	-webkit-user-select: none;
	user-select: none;
	outline: none;
}

.blck_input.active input[type="date"],
.blck_input.active input[type="time"],
.number-blck.active input[type="date"],
.number-blck.active input[type="time"] {
	border: 2px solid #469c4f !important;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

/* Дополнительные фиксы специально для iOS Safari */
@supports (-webkit-touch-callout: none) {
	.reserv_bath.modal .modal_reserv_form .form_blck .blck_input input[type="date"],
	.reservv_bath.modal .modal_reserv_form .form_blck .blck_input input[type="time"] {
		/* Принудительное применение стилей на iOS */
		background: #f5f5f7 !important;
		border-radius: 20px !important;
		-webkit-border-radius: 20px !important;
		padding: 16px 20px !important;
		font-size: 16px; /* Предотвращает зум на iOS */
		outline: none;
	}

	.blck_input.active input[type="date"],
	.blck_input.active input[type="time"] {
		border: 2px solid #469c4f !important;
		background: #f5f5f7 !important;
		outline: none;
	}
}

/* Альтернативный подход - медиа-запрос для iOS */
@media screen and (-webkit-min-device-pixel-ratio: 2) {
	.reserv_bath.modal .modal_reserv_form .form_blck .blck_input input[type="date"],
	.reserv_bath.modal .modal_reserv_form .form_blck .blck_input input[type="time"] {
		-webkit-appearance: none !important;
		appearance: none !important;
		background-color: #f5f5f7 !important;
		border: 2px solid transparent !important;
		border-radius: 20px !important;
		padding: 16px 20px !important;
		font-size: 16px !important; /* Важно для предотвращения автозума */
		height: 56px !important;
		line-height: 1.2 !important;
		outline: none;
	}
}

/* Фикс для webkit календаря на iOS */
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input input[type="date"]::-webkit-datetime-edit,
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input input[type="time"]::-webkit-datetime-edit {
	padding: 0;
	margin: 0;
}

.reserv_bath.modal .modal_reserv_form .form_blck .blck_input input[type="date"]::-webkit-calendar-picker-indicator,
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input input[type="time"]::-webkit-calendar-picker-indicator {
	background: transparent;
	bottom: 0;
	color: transparent;
	cursor: pointer;
	height: auto;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: auto;
}

/* Дополнительный фикс для старых версий iOS */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
	.reserv_bath.modal .modal_reserv_form .form_blck .blck_input input[type="date"],
	.reserv_bath.modal .modal_reserv_form .form_blck .blck_input input[type="time"] {
		background: #f5f5f7;
		border: 2px solid transparent;
		border-radius: 20px;
		-webkit-border-radius: 20px;
		padding: 16px 20px;
		-webkit-appearance: none;
		appearance: none;
	}
}
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input .txt {
	position: relative;
	z-index: 2;
}
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input .open-button {
	position: absolute;
	right: 20px;
	top: 33px;
	background: #fff;
	pointer-events: none;
}
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input .open-button button {
	border: none;
	background: #f7f7f8;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}
.reserv_bath.modal .modal_reserv_form .form_blck .blck_input.promo_c_blck {
	max-width: 100%;
}
.reserv_bath.modal .modal_reserv_form .form_blck .promo_c_blck .promo_c_info {
	position: absolute;
	right: 20px;
	top: 30px;
}
.reserv_bath.modal .modal_reserv_form .form_blck .number-blck {
	position: relative;
}
.reserv_bath.modal .modal_reserv_form .form_blck .number-blck input {
	text-align: center;
}
.reserv_bath.modal .modal_reserv_form .form_blck .number-blck input::-webkit-inner-spin-button,
.reserv_bath.modal .modal_reserv_form .form_blck .number-blck input::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
.reserv_bath.modal .modal_reserv_form .form_blck .number-blck button {
	position: absolute;
	top: 17px;
	border: none;
	background: transparent;
	color: #8b8e95;
	display: block;
}
/* .reserv_bath.modal .modal_reserv_form .form_blck .number-blck.active button {
	display: block;
} */
input[type="time"]::-webkit-calendar-picker-indicator,
input[type="date"]::-webkit-calendar-picker-indicator {
	display: none;
}
.reserv_bath.modal .modal_reserv_form .form_blck .number-blck .qty-minus {
	left: 15px;
}
.reserv_bath.modal .modal_reserv_form .form_blck .number-blck .qty-plus {
	right: 15px;
}
.reserv_bath.modal .modal_reserv_form button.btn_blck {
	margin-bottom: 20px;
}
.reserv_bath.modal .modal_reserv_form .desk_caller_check .custom_checkbox {
	display: flex;
	gap: 8px;
	align-items: center;
	position: relative;
	font-weight: 400;
	font-size: 12px;
	line-height: 140%;
}
.reserv_bath.modal .modal_reserv_form .desk_caller_check a {
	text-decoration: none;
}
.reserv_bath.modal .modal_reserv_form .desk_caller_check input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}
.reserv_bath.modal .modal_reserv_form .desk_caller_check span А {
	cursor: pointer;
	display: block;
	position: relative;
	font-weight: 400;
	font-size: 12px;
	line-height: 150%;
}
.reserv_bath.modal .modal_reserv_form .desk_caller_check .custom_checkbox .checkmark {
	height: 17px;
	width: 17px;
	background-color: #f1f1f1;
	border: 2px solid #469c4f;
	border-radius: 5px;
	position: relative;
	flex-shrink: 0;
	transition: all 0.2s ease;
}
.reserv_bath.modal .modal_reserv_form .desk_caller_check .custom_checkbox input:checked ~ .checkmark {
	background-color: #469c4f;
	border-color: #469c4f;
}
.reserv_bath.modal .modal_reserv_form .desk_caller_check .custom_checkbox .checkmark::after {
	content: "";
	position: absolute;
	display: none;
	left: 2.8px;
	top: 2.4px;
	border-width: 0 2px 2px 0;
	background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDEwIDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTggMi4yNUwzLjg3NSA2LjM3NUwyIDQuNSIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=");
	background-repeat: no-repeat;
	background-position: center;
	width: 9px;
	height: 9px;
}
.reserv_bath.modal .modal_reserv_form .desk_caller_check .custom_checkbox input:checked ~ .checkmark::after {
	display: block;
}
.notification_modal .modal-body {
	padding: 40px;
}
.notification_modal h2 {
	margin-bottom: 35px;
	color: #2e2e2e;
	font-family: Arsenal;
	font-weight: 700;
	font-size: 40px;
	line-height: 100%;
	vertical-align: bottom;
}
.notification_modal .description {
	font-family: Libre Franklin;
	font-weight: 400;
	line-height: 150%;
}
.notification_modal .success_txt {
	font-size: 14px;
	text-align: center;
	color: #131826;
	font-weight: 400;
}
.sectif_bath .modal_inform_img {
	position: relative;
	height: 195px;
}
.sectif_bath .modal_inform_img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 20px;
}
.reserv_bath.modal.sectif_bath .modal_title {
	margin-top: 25px;
}
.sectif_bath .modal_inform_img .img_background {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	padding: inherit;
}
.sectif_bath .overlay-dark {
	border-radius: 10px;
}
.sectif_bath .modal_inform_img picture {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	padding: inherit;
	z-index: 1;
}
.sectif_bath .modal_inform_img picture img {
	border-radius: 10px;
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.sectif_bath .modal_inform_img .txt {
	position: relative;
	z-index: 3;
	padding: 25px 40px 40px 40px;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	font-size: 34px;
	font-weight: 700;
	color: #fff;
	line-height: 93%;
}
.sectif_bath .comment_txt {
	padding: 30px 20px;
	width: 100%;
	background: #f5f5f7;
	border: none;
	border-radius: 20px;
}
.reserv_bath.modal.sectif_bath .modal-body {
	padding: 5px;
}
.reserv_bath.modal.sectif_bath .modal_title,
.reserv_bath.modal.sectif_bath .modal_reserv_form {
	margin-left: 25px;
	margin-right: 25px;
}
.reserv_bath.modal.sectif_bath .custom_checkbox {
	margin-bottom: 30px;
}

.modal-content .btn-close svg path {
	fill: #fff;
	transition: all 0.3s ease-in-out;
}

.modal-content .btn-close:hover svg path,
.modal-content .btn-close:active svg path {
	fill: #469c4f;
}

.modal.req_call_bath .modal_title {
	margin-bottom: 30px;
	text-align: center;
}

.modal.req_call_bath .modal_title h2 {
	margin-bottom: 10px;
}
.modal.req_call_bath .modal_title p {
	font-family: Libre Franklin;
	font-weight: 400;
	font-size: 20px;
	line-height: 160%;
	text-align: center;
	margin-bottom: 0;
}
@media (max-width: 991px) {
	.info_bath.modal .modal-content {
		max-height: 95vh;
		max-height: 95dvh;
	}
	.modal .modal-content .btn-close {
		right: 10px;
		top: 10px;
	}
	.info_bath.modal .modal_slider {
		height: 210px;
	}
	.modal .modal-content .btn-close path {
		fill: #469c4f;
	}
	.info_bath.modal .modal_brief_info,
	.modal.reserv_bath .modal_brief_info {
		height: auto;
		flex-wrap: wrap;
	}
	.info_bath.modal .modal_brief_info .left {
		max-width: 100%;
		justify-content: flex-start;
	}
	.info_bath.modal .modal_brief_info .right {
		max-width: 100%;
	}
	.info_bath.modal .modal_days {
		flex-wrap: wrap;
		gap: 15px;
	}
	.info_bath.modal .modal_inform_puncts .punct,
	.info_bath.modal .modal_inform_puncts .punct .right {
		max-width: 100%;
	}
	.reserv_bath.modal .modal_reserv_form .form_blck {
		flex-direction: column;
	}
	.reserv_bath.modal .modal_reserv_form .form_blck .blck_input {
		max-width: 100%;
	}
	.reserv_bath.modal .modal_reserv_form .desk_caller_check .custom_checkbox {
		font-size: 12px;
	}
	.reserv_bath.modal .modal_title {
		flex-direction: column;
		gap: 10px;
		margin-bottom: 10px;
	}
	.reserv_bath.modal .modal_title h2 {
		font-size: 40px;
	}
	.reserv_bath.modal .modal_inform {
		padding: 20px 15px;
		flex-direction: column;
		align-items: flex-start;
		gap: 15px;
	}
	.reserv_bath.modal .modal_inform .left {
		width: 100%;
	}
	.reserv_bath.modal .modal_inform .right {
		font-size: 15px;
	}
	.reserv_bath.modal .modal_inform .hight {
		font-size: 20px;
	}
	.reserv_bath.modal .modal_reserv_form .form_blck .blck_input label.inp_place {
		top: 15px;
		width: 80%;
	}
	.sectif_bath .modal_inform_img .txt {
		padding: 20px 15px;
		font-size: 20px;
	}
	.notification_modal .success_txt br {
		display: none;
	}
	.sectif_bath .modal_inform_img {
		height: 200px;
	}
	.reserv_bath.modal.sectif_bath .modal_title,
	.reserv_bath.modal.sectif_bath .modal_reserv_form {
		margin-left: 20px;
		margin-right: 20px;
	}
	.reserv_bath.modal.sectif_bath .modal_title {
		margin-top: 25px;
	}
}
@media (max-width: 480px) {
	.bathhouse-entity .bath-modal-swiper .swiper-button-prev,
	.bathhouse-entity .bath-modal-swiper .swiper-button-next {
		display: flex !important;
	}
	.info_bath.modal .modal_slider {
		height: 270px;
	}
	.info_bath.modal .modal_title h2 {
		font-size: 35px;
	}
	.info_bath.modal .modal_title {
		margin: 15px;
	}
	.info_bath.modal .modal_brief_info {
		margin: 0 15px;
	}
	.info_bath.modal .modal_days,
	.info_bath.modal .modal_txt_inform,
	.info_bath.modal .modal_inform_puncts,
	.info_bath.modal .modal_comforts,
	.info_bath.modal .modal_rules,
	.info_bath.modal .modal_ohter_txt,
	.info_bath.modal .modal_ohter_list {
		margin: 15px;
	}

	.info_bath.modal .modal-footer {
		padding: 15px;
	}
	.reserv_bath.modal .modal-body {
		padding: 30px 15px;
	}
	.puncts_blcks .left {
		display: none !important;
	}
	.info_bath.modal .modal_inform_puncts .punct,
	.modal.reserv_bath .punct {
		padding: 20px;
	}
	.info_bath.modal .modal_txt_inform {
		font-size: 16px;
		line-height: 150%;
	}
	.info_bath.modal .modal_inform_puncts .punct {
		padding: 15px;
	}
	.info_bath.modal .modal_inform_puncts .punct .right .top_txt {
		line-height: 130%;
		margin-bottom: 0.3rem;
	}
	.info_bath.modal .modal-body {
		padding-bottom: 100px;
	}
	span.max_guests,
	span.min_booking_time,
	span.good_place__text_top {
		font-size: 17px;
	}
	.info_bath.modal .modal_brief_price_info span.price {
		font-size: 17px;
	}
	.reserv_bath.modal .modal_reserv_form .desk_caller_check .custom_checkbox .checkmark::after {
		left: 2.4px;
	}
	.notification_modal .modal-body {
		padding: 20px;
	}
}
/* END Модальные окна */

/* Канал Дена */
.channel_video {
}
.channel_video .channel_blck {
	background-color: #0000008a;
	backdrop-filter: blur(104.4px);
	display: flex;
	border-radius: 12px;
	padding-top: 40px !important;
	padding-bottom: 40px;
	align-items: center;
	justify-content: space-between;
	padding-left: 30px;
	position: relative;
	overflow: hidden;
}
.channel_video .left {
	display: flex;
	align-items: center;
	gap: 60px;
}
.channel_video .left h4 {
	font-size: 24px;
	font-weight: 700;
	line-height: 100%;
	color: #fff;
	margin-bottom: 0;
}
.channel_video .left span {
	font-size: 18px;
	color: #fff;
	line-height: 100%;
}
.channel_video .right {
	margin-right: 370px;
}
.channel_video .right button {
	color: #515029;
	background: #ffffff;
	border-radius: 30px;
	padding: 20px 40px;
	font-weight: 700;
	border: none;
}
.channel_video .channel_logo {
	position: absolute;
	right: -110px;
	top: -45px;
}

@media (max-width: 991px) {
	.channel_video {
		margin-top: 20px;
	}
	.channel_video .channel_blck {
		display: flex;
		flex-direction: column;
		padding: 15px !important;
		align-items: flex-start;
		width: 100%;
	}
	.channel_video .left {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 5px;
		margin-bottom: 40px;
	}
	.channel_video .left h4 {
		font-size: 16px;
	}
	.channel_video .left span {
		font-size: 12px;
	}
	.channel_video .right {
		margin: 0;
		padding: 10px 15px 10px 0;
	}
	.channel_video .right button {
		padding: 10px 15px;
		font-size: 12px;
		font-weight: 400;
	}
	.channel_video .channel_logo {
		right: -170px;
	}
}
/* END Канал Дена */

.modal-content .scroll-indicator {
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 10;
	cursor: pointer;
	transition: all 0.5s ease;
	opacity: 1;
}

.modal-content .arrow-icon {
	width: 30px;
	height: 30px;
	border: 2px solid #2e2e2e;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(10px);
	animation: bounce 2s infinite;
	transition: transform 0.3s ease;
}

.modal-content .arrow-icon::after {
	content: "";
	width: 8px;
	height: 8px;
	border-right: 2px solid #2e2e2e;
	border-bottom: 2px solid #2e2e2e;
	transform: rotate(45deg);
	margin-top: -2px;
	transition: border-color 0.3s ease;
}

.modal-content .scroll-indicator.fade-out {
	opacity: 0;
	pointer-events: none;
}

.modal-content .scroll-indicator.fade-in {
	opacity: 1;
	pointer-events: auto;
}

@keyframes bounce {
	0%,
	20%,
	50%,
	80%,
	100% {
		transform: translateY(0) translateX(-50%);
	}

	40% {
		transform: translateY(-10px) translateX(-50%);
	}

	60% {
		transform: translateY(-5px) translateX(-50%);
	}
}

body.bathhouse-entity .section-our-baths {
	padding-top: 10px !important;
}

body.bathhouse-entity .section-navigation {
	padding-top: 0 !important;
}
.section-navigation .border {
	margin-top: 30px;
}

.section-navigation .nav-link {
	font-weight: 500;
	font-size: 20px;
	line-height: 140%;
	color: #2e2e2e;
	transition: all 0.3s ease-in-out;
	border: none !important;
	border-top-left-radius: none !important;
	border-top-right-radius: none !important;
	width: max-content;
	padding: 11px 23px;
	padding-right: 20px !important;
	padding-left: 20px !important;
}
.section-navigation .nav-link svg {
	margin-right: 10px;
}
.section-navigation .nav-link.active,
.section-navigation .nav-link:hover,
.section-navigation .nav-link:focus {
	color: #469c4f !important;
	background-color: rgba(70, 156, 79, 0.1) !important;
	border-radius: 30px;
	border: none !important;
}
.section-navigation .nav-link svg path {
	transition: all 0.3s ease-in-out;
}

.section-navigation .nav-link.active svg path,
.section-navigation .nav-link:hover svg path,
.section-navigation .nav-link:focus svg path {
	fill: #469c4f;
}

.section-navigation .nav-link {
	font-weight: 500;
	font-size: 18px;
	line-height: 140%;
	letter-spacing: revert-layer;
}
button.nav-button-call {
	position: absolute;
	top: 33px;
	right: 15px;
	color: #fff;
	border: none;
	border-radius: 30px;
	background: #469c4f;
	padding: 10px 20px;
	font-weight: 500;
	font-size: 18px;
	line-height: 140%;
}
@media (max-width: 1199.98px) {
	button.nav-button-call {
		display: none;
	}
}
@media (max-width: 991px) {
	.section-navigation .border {
		margin-top: 0;
	}
	.section-navigation .navbar-nav {
		flex-direction: row;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		justify-self: auto;
		scrollbar-width: none;
	}
}
.gradient-image-container .img_background {
	position: relative;
	width: 100%;
	height: 100%;
	--dynamic-gradient: linear-gradient(180deg, rgba(85, 85, 85, 0) 49.03%, #665854 100%); /* Запасной градиент */
}

.gradient-image-container .img_background:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	backdrop-filter: blur(20px);
	mask: linear-gradient(to top, black 0%, transparent 50%);
	-webkit-mask: linear-gradient(to top, black 0%, transparent 50%);
	background: var(--dynamic-gradient); /* Градиент через переменную */
	border-radius: 20px;
	transition: all 0.3s ease-in-out;
}

.gradient-image-container.swiper .img_background:before {
	bottom: -10px;
}

.section_logo {
	margin-top: 3rem !important;
}

.section_logo .container {
	padding-top: 0 !important;
}

@media (max-width: 1399.99px) {
	.promo-swiper,
	.reviews_swiper,
	.sert_swiper {
		overflow: visible;
	}
}
@media (max-width: 768px) {
	.section_logo {
		margin-top: 1rem !important;
	}
}
@media (max-width: 991px) {
	.section_logo .inform .title,
	section .title h2 {
		letter-spacing: 0px !important;
	}
}
@media (max-width: 768px) {
	.section_logo {
		margin-top: 1rem !important;
	}
}

@media (max-width: 450px) {
	.promo-swiper,
	.reviews_swiper,
	.sert_swiper {
		overflow: visible;
	}
	.our-baths-swiper,
	.sert_swiper,
	.promo-swiper {
		margin-left: 0.07rem;
	}
}
@media (max-width: 390px) {
	.section_logo .img_background img {
		height: 418px;
	}
	.section_logo .inform .title {
		font-size: 45px;
		letter-spacing: 0px;
	}
	.section_contacts .map_blck .info .road {
		display: grid;
		gap: 0;
	}
}

.rew-by-den {
	display: flex;
	align-items: center;
	gap: 8px;
}
img.icon-rew-by-den {
	width: 32px;
	margin-bottom: 0.2rem;
}
.rew-by-den-txt {
	color: #469c4f;
	font-size: 18px;
	line-height: 160%;
	text-align: center;
	font-weight: 600;
}
@media (max-width: 480px) {
	.rew-by-den {
		margin: 15px;
	}
}
.modal_brief_info .border-wrap {
	background: linear-gradient(314.34deg, rgba(7, 229, 254, 0) 38.89%, #4dd75b 74.63%, #c5f541 103.61%);
	border-radius: 16px;
	position: relative;
	padding: 1px 1px;
}

.modal_brief_info .good_place {
	background: #fff !important;
	padding: 11px 8px !important;
	position: absolute !important;
	top: 10px;
	z-index: 9999;
	left: 10px;
	border: none !important;
}

span.span_rew-by-den {
	color: #469c4f;
	font-weight: 500;
	font-size: 15px;
	line-height: 160%;
	text-align: center;
	display: block;
	align-items: center;
	align-content: center;
	position: relative;
	width: max-content;
	padding-left: 0.7rem;
}
span.span_rew-by-den svg {
	left: 0;
	top: 6px;
}

/* @media (max-width: 991px) {
    .container, .container-md, .container-sm {
        max-width: 825px!important;
    }
} */
.flatpickr {
	position: relative;
}
.input-date-button,
.input-time-button {
	position: absolute;
	width: 35px;
	right: 2px;
	top: 15px;
	color: #2e2e2e;
	background: #f5f5f7;
	border-radius: 20rem;
}
.input-date-button svg,
.input-time-button svg {
	width: 20px;
}

.our-baths-list-wrap {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 15px;
	padding-bottom: 1rem;
	margin-top: 1.3rem;
}
.our-baths-list-wrap .img_background img {
	height: 333px;
	width: 100%;
	border-radius: 20px;
	object-fit: cover;
}
.our-baths-list-wrap .card-info {
	justify-content: center;
	width: 100%;
}

.our-baths-list-wrap .card-info__content {
	border-radius: 0;
	text-align: center;
	margin-bottom: 27px;
	gap: 10px;
	display: grid;
}
.our-baths-list-wrap .card-info__content:before {
	content: none;
}

.our-baths-list-wrap .card-info__content .title {
	font-size: 35px;
	font-weight: 600;
	line-height: 130%;
	text-align: center;
	vertical-align: bottom;
}
.our-baths-list-wrap .card-info__content .price {
	font-size: 17px;
	font-weight: 400;
	line-height: 130%;
	gap: 1rem;
	display: flex;
	opacity: 70%;
	margin: auto;
}
.our-baths-list-wrap .card-info__content .time,
.our-baths-list-wrap .card-info__content .people {
	position: relative;
}
.our-baths-list-wrap .card-info__content .time::before,
.our-baths-list-wrap .card-info__content .people::before {
	content: "";
	position: absolute;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background-color: #fff;
	right: -10px;
	top: 10px;
}
@media (max-width: 480px) {
	.our-baths-list-wrap {
		grid-template-columns: repeat(1, 1fr);
	}
	.our-baths-list-wrap .card-info__content .title {
		font-size: 30px;
	}
	.our-baths-list-wrap .card-info__content .price {
		font-size: 13px;
	}
	.our-baths-list-wrap .card-info__content .time::before,
	.our-baths-list-wrap .card-info__content .people::before {
		top: 8px;
	}
}

.description-text {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

.description-text.truncated {
	-webkit-line-clamp: 3;
}

.show-more-btn {
	width: max-content;
	border: none;
	padding: 8px 16px;
	cursor: pointer;
	border-radius: 20px;
	color: #2e2e2e;
	background-color: #2e2e2e14;
	margin: auto;
	font-size: 12px;
}

body.bathhouse-entity .good-place-section {
	padding-top: 0!important;
}
.good-place-wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #4a884a1a;
	border-radius: 20px;
	overflow: hidden;
	color: #4a884a;
	position: relative;
	height: 160px;
}
.good-place-left {
	display: flex;
	align-items: center;
}
.left-img {
	position: absolute;
	left: -50px;
}
.left-txt {
	margin-left: 14rem;
	z-index: 1;
}
.left-header {
	font-family: Arsenal;
	font-weight: 700;
	font-size: 40px;
	line-height: 100%;
	vertical-align: bottom;
}
.left-sub-header {
	font-size: 20px;
	line-height: 100%;
	vertical-align: bottom;
	margin-top: 12px;
}
.good-place-right {
	margin-right: 50px;
}
.good-place-right button {
	outline: none;
	background: #ffffff;
	color: #4a884a;
	font-weight: 600;
	font-size: 18px;
	line-height: 160%;
	text-align: center;
	border: none;
	padding: 13px 22px;
	border-radius: 30px;
	box-shadow: 0px 4px 4px -4px #4a884a40, 0px 9px 14px -4px #4a884a17;
	width: max-content;
}
@media (max-width: 1199.99px) {
	.left-sub-header {
		max-width: 25rem;
	}
}
@media (max-width: 991.99px) {
	.left-header {
		font-size: 35px;
	}
	.left-sub-header {
		max-width: 24rem;
		font-size: 18px;
	}
	.good-place-right {
		margin-right: 25px;
	}
	.good-place-right button {
		font-size: 16px;
	}
}
@media (max-width: 767.99px) {
	.good-place-left {
		display: flex;
	}
	.left-img {
		width: 15rem;
	}
	.left-txt {
		margin-left: 11rem;
	}

	.left-header {
		font-size: 30px;
	}
	.left-sub-header {
		max-width: 14rem;
		font-size: 16px;
	}
	/* .good-place-right {
		position: absolute;
		right: 1.2rem;
		bottom: 0.5rem;
		margin: 0;
	} */
	.good-place-right {
		margin-right: 20px;
	}
	.good-place-right button {
		font-size: 12px;
	}
}
@media (max-width: 575.98px) {
	body.bathhouse-entity .good-place-section {
		margin-top: 1rem;
	}
}
@media (max-width: 480px) {
	.good-place-wrap {
		display: grid;
		height: 170px;
		padding: 22px;
		gap: 15px;
	}
	.left-txt {
		margin-left: 0;
	}
	.left-header {
		font-size: 25px;
    }
	.left-sub-header {
		max-width: 12rem;
        font-size: 14px;
		margin-top: 6px;
    }
	.left-img {
        width: 13rem;
        right: -4.5rem;
        left: auto;
        top: -1.6rem;
    }
	.good-place-right button {
        font-size: 14px;
		padding: 7px 20px;
	}
	.good-place-right button svg {
		display: none;
	}

}

@media (max-width: 360px) {
	.good-place-wrap {
        padding: 15px;
    }
}
