/*
Theme Name: Bright Fit
Theme URI: brightfit.ru
Description: Bright Fit official theme.
Author: Timofey Kuznecov
Author URI: tiku.ru
Template: 
Version: 1.0
.
This theme was created for Bright Fit company.
.
*/

/* General */

* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html {
	scroll-behavior: smooth;
	overflow-x: hidden;
}


body {
	font-family: 'Nunito Sans Variable', sans-serif;
	color: #262626;
	overflow-x: hidden;
}

a {
	color: #00BDC7;
	transition: color .2s ease-in-out, background-color .2s ease-in-out, opacity .2s ease-in-out;
}

a:hover {
	opacity: .8;
}

h1 {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}

@media only screen and (max-width: 1160px) {
	h1 {
		font-size: 24px;
		font-weight: 800;
		line-height: 24px;
	}
}

ul {
	margin-left: 20px;
}

ul li::marker, ol li::marker {
	color: #00BDC7;
	font-weight: bolder;
}

ul {
	list-style-type: square;
}

.no-margin-bottom {
	margin: 0!important;
}

.max-width-560 {
	max-width: 560px;
	margin: 0 0 80px 0;
}

.main-container {
	margin: 0 auto;
	max-width: 1160px;
}

@media only screen and (max-width: 1160px) {
	.main-container-padding {
		padding: 0 10px;
	}
}

/* General end */

/* Header */

.main-container-header {
	max-width: 1440px;
	margin-bottom: 6px;
}

.header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 60px;
}

@media only screen and (max-width: 1160px) {
	.header {
		padding: 0;
	}
}

.header-menu {
	display: flex;
	align-items: flex-start;
}

.header-logo img {
	width: 109px;
}

@media only screen and (max-width: 1160px) {
	.header-menu-desktop {
		display: none;
	}
}

.header-menu-desktop ul {
	list-style: none;
	margin: -6px 0 0 53px;
	padding: 0;
}

.header-menu-desktop ul li {
	display: inline-block;
	margin: 0 0 0 0;
	padding: 0;
}

.header-menu-desktop ul li a {
	font-size: 16px;
	font-weight: 600;
	color: #000;
	text-decoration: none;
	transition: color .2s ease-in-out;
	padding: 8px 12px;
	margin-right: 2px;
	border-radius: 15px;
}

.header-menu-desktop ul li a:hover {
	color: #00BDC7;
}

.header-menu-desktop ul li.current_page_item a {
	background: #F0F1F3;
}

.header-menu-desktop ul li.current_page_item a:hover {
	color: #000;
	cursor: default;
}

.header-club-select {
	padding: 11.2px 15px;
	font-weight: 600;
	font-size: 12px;
	line-height: 16px;
	border: 2px solid #00BDC7;
	border-radius: 15px;
	cursor: pointer;
	transition: background-color .2s ease-in-out, box-shadow .2s ease-in-out;
	position: relative;
	background: #fff;
	z-index: 999999;

	/* более компактное свечение */
	box-shadow: 0 0 4px rgba(0,189,199,0.25), 0 0 8px rgba(0,189,199,0.12);
	animation: pulseBoxShadow 2s infinite ease-in-out;
}

@keyframes pulseBoxShadow {
	0% {
		box-shadow: 0 0 3px rgba(0,189,199,0.2), 0 0 6px rgba(0,189,199,0.1);
	}
	50% {
		box-shadow: 0 0 6px rgba(0,189,199,0.35), 0 0 10px rgba(0,189,199,0.18);
	}
	100% {
		box-shadow: 0 0 3px rgba(0,189,199,0.2), 0 0 6px rgba(0,189,199,0.1);
	}
}


/* Уважение к пользователям, выбравшим reduced motion */
@media (prefers-reduced-motion: reduce) {
	.header-club-select {
		animation: none;
	}
}


.header-club-select:hover {
	background-color: #F0F1F3;
}

.header-main-menu {
	padding: 9.2px 13px;
	background-color: #DADDE1;
	border-radius: 15px;
	margin-left: 5px;
	cursor: pointer;
	transition: background-color .2s ease-in-out;
	border: 1px solid #DADDE1;
}

.header-main-menu:hover {
	background-color: #F0F1F3;
}

.header-main-menu img {
	cursor: pointer;
	position: relative;
	top: 1px;
}

/* Header end */

/* Main banner */

.main-banner-padding-or-margin {
	margin: 0 10px;
}

.main-banner-wraper {
	max-width: 1440px;
	margin: 0 auto;
	position: relative;
	border-radius: 40px;
	height: 70vh;
	display: grid;
}

.main-banner-wraper-aktsiya {
	max-width: 1160px;
	height: 200px;
	opacity: 1!important;
}

@media only screen and (max-width: 1160px) {
	.main-banner-wraper-aktsiya {
		margin-left: 10px!important;
		margin-right: 10px!important;
		width: inherit!important;
		height: 200px!important;
	}
}


.slide {
	display: grid;
}

.main-banner-wraper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.main-banner {
	margin-top: auto;
	margin-bottom: auto;
}

.main-banner-link {
	text-decoration: none;
	color: #000;
	margin-left: 123px;
	margin-top: auto;
	margin-bottom: auto;
	height: 70vh;
	display: grid;
}

.main-banner .banner-headline {
	font-size: 48px;
	font-weight: 800;
	max-width: 540px;
	line-height: 56px;
	display: inline-block;
}

.main-banner p {
	font-size: 14px;
	font-weight: 600;
	margin: 20px 0 40px 0;
}

.main-banner div.button {
	display: inline-block;
}

@media only screen and (max-width: 1160px) {
	.main-banner {
		position: relative;
		border-radius: 20px;
		height: calc(65vh - 40px);
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}
	
	.main-banner .banner-headline {
		font-size: 30px;
		line-height: 34px;
	}
	
	.main-banner div.button {
		align-self: flex-start;
	}
	
	.main-banner-wraper {
		border-radius: 20px;
		height: 65vh;
	}
	
	.main-banner-link {
		text-decoration: none;
		margin-left: 15px;
		color: #000;
		margin-top: auto;
		margin-bottom: auto;
		height: calc(65vh - 40px);
	}
	
	.main-banner p {
		margin: 10px 0 40px 0;
	}
	
	.main-banner div.button {
		position: relative;
		top: 5px;
		display: inline-block;
	}
}

.main-banner-slide-select-container {
	margin: 45px 0 40px 0;
	padding: 0 0 0 10px;
	overflow: auto;
	white-space: nowrap;
	-ms-overflow-style: none;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	text-align: center;
	display: flex;
	justify-content: center;
}

@media only screen and (max-width: 1160px) {
	.main-banner-slide-select-container {
		justify-content: start;
		margin-top: 20px;
	}
}


.main-banner-slide-select-container a {
	position: relative;
	width: 60px; 
	display: inline-block;
	margin-right: 10px;
	font-size: 12px;
	text-decoration: none;
	color: #141E32;
}

.main-banner-slide-select-container a img {
	width: 60px; 
    object-fit: cover;
	border-radius: 20px;
	display: block;
	aspect-ratio: 1 / 1;
	border: 2px solid #fff;
	border-color: #141E32;
	transition: border-color .2s ease-in-out;
	padding: 2px;
}

.main-banner-slide-select-container a:hover img {
	border-color: #00BDC7;
}

.main-banner-slide-select-container a p {
	margin-top: 10px;
	white-space: wrap;
}

.main-banner-slide-select-container img.main-banner-slide-selected {
	border: 2px solid #141E32;
	border-radius: 20px;
	padding: 2px;
}

.main-banner-slide-selected img {
	border: 2px solid #fff;
	border-radius: 20px;
}





.main-banner-wraper {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.slider-container {
    display: flex;
    height: 100%;
    transition: transform 0.5s ease;
}

.slide {
    position: relative;
    flex-shrink: 0;
    height: 100%;
}

.slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    border-radius: 40px;
}


@media only screen and (max-width: 1160px) {
    .slide img {
        border-radius: 20px;
    }
}




/* Main banner end */


/* Плавное появление главного баннера */

.main-banner-wraper {
    opacity: 0;
    transition: opacity 0.6s ease;
}

.main-banner-wraper.banner-visible {
    opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
    .main-banner-wraper {
        transition: none;
    }
}


/* Main banner end */

/* Main info */

.main-info-container {
	background: #F0F1F3;
	border-radius: 40px;
	display: flex;
	flex-wrap: wrap;
	margin: 20px 10px 95px 10px;
}

.main-info-container h3 {
	margin-bottom: 14px;
	font-size: 24px;
	font-weight: 800;
	line-height: 24px;
	margin-top: 41px;
}


.main-info-container p {
	font-size: 14px;
	font-weight: 500;
	margin-bottom: 10px;
}

.main-info-container em {
	color: #98A2AE;
	font-style: normal;
}

.main-info-container-photo {
	margin-right: 60px;
	position: relative;
}

.main-info-container-photo h2 {
	position: absolute;
	font-size: 36px;
	font-weight: 700;
	line-height: 36px;
	top: 240px;
	text-align: center;
	padding: 0;
	color: #fff;
	margin: 0 auto;
}

.main-info-container-photo img {
	max-width: 100%;
	border-radius: 40px;
	display: block;
	object-fit: cover;
	height: 487.2px;
	width: 380px;
}

.main-info-container-text-photo-center {
	margin-right: 90px;
}

.main-info-container-text-photo-center,
.main-info-container-text-photo-right {
	max-width: 270px;
	margin-top: 20px;
	margin-bottom: 40px;
}

.main-info-container-text-photo-center img,
.main-info-container-text-photo-right img{
	max-width: 100%;
	display: block;
	border-radius: 15px;
}

@media only screen and (max-width: 1160px) {
	
	.main-info-container-photo h2 {
		top: 180px;
		font-size: 28px;
		line-height: 28px;
		width: 100%;
	}
	
	.main-info-container-photo,
	.main-info-container-photo img,
	.main-info-container-text-photo-center,
	.main-info-container-text-photo-right	{
		margin-right: 0;
		max-width: 100%;
		width: 100%;
	}
	
	.main-info-container-text-photo-center,
	.main-info-container-text-photo-right	{
		padding: 0 15px;
	}
	
	.main-info-container {
		display: block;
		padding-bottom: 10px;
		border-radius: 20px;
		margin-bottom: 40px;
	}
	
	.main-info-container-photo img {
		max-width: 100%;
		border-radius: 40px;
		display: block;
	}
	.main-info-container-photo img {
		max-width: 100%;
		border-radius: 20px;
		display: block;
		object-fit: cover;
		height: 360px;
	}
}

/* Main info end */

/* Vozmozhnosti nashih klubov */

.vozmozhnosti-nashih-klubov-header {
	margin: 20px 0;
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}

.vozmozhnosti-nashih-klubov-container {
	display: grid;
	grid-template-areas:
	"trenirovki-v-bassejne-i-svobodnoe-plavanie trenirovki-v-bassejne-i-svobodnoe-plavanie gruppovye-zanyatiya spa-uhod-i-vosstanovlenie spa-uhod-i-vosstanovlenie"
	"zona-boevyh-iskusstv funkcionalnyj-trening gruppovye-zanyatiya hammam-i-sauny vse-zony";
	grid-template-rows: repeat(2, auto);
	grid-template-columns: 224px 224px 224px 224px 224px;
	gap: 10px;
	font-size: 14px;
	text-align: center;
	margin: 0 0 80px 0;
}

.vozmozhnosti-nashih-klubov-container p {
	margin: 19px 0 15px 0;
}

.vozmozhnosti-nashih-klubov-container a {
	border-radius: 20px;
	background-color: #F0F1F3;
	padding: 10px;
	position: relative;
	transition: background-color .2s ease-in-out;
}

.vozmozhnosti-nashih-klubov-container a:hover,
.vozmozhnosti-nashih-klubov-container-rest a:hover {
	background-color: #DADDE1;
}

.vozmozhnosti-nashih-klubov-container a {
	text-decoration: none;
	color: #000;
}

.vozmozhnosti-nashih-klubov-container img {
    object-fit: cover;
	width: 100%;
	border-radius: 20px;
	height: 155px;
}

.trenirovki-v-bassejne-i-svobodnoe-plavanie {
	grid-area: trenirovki-v-bassejne-i-svobodnoe-plavanie;
}

.gruppovye-zanyatiya {
	grid-area: gruppovye-zanyatiya;
}

.gruppovye-zanyatiya img {
	height: 400px;
	width: 100%;
}

.zona-boevyh-iskusstv {
	grid-area: zona-boevyh-iskusstv;
}

.funkcionalnyj-trening {
	grid-area: funkcionalnyj-trening;
}

.spa-uhod-i-vosstanovlenie {
	grid-area: spa-uhod-i-vosstanovlenie;
}

.hammam-i-sauny {
	grid-area: hammam-i-sauny;
}

.vse-zony {
	grid-area: vse-zony;
}

.additional-zones-count {
	width: 100%;
	aspect-ratio: 4 / 3;
	background: #141E32;
	border-radius: 20px;
	color: #fff;
	font-size: 34px;
	font-weight: 700;
	display: flex;
	flex-direction: column;
}

.additional-zones-count span {
	margin: auto;
	display: inline-block;
}

.zona-boevyh-iskusstv img,
.funkcionalnyj-trening img,
.hammam-i-sauny  img,
.vse-zony img,
.additional-service-1 img {
	width: 100%;
	aspect-ratio: 4 / 3;
}

@media only screen and (max-width: 1160px) {
	.vozmozhnosti-nashih-klubov-header {
		padding: 15px 15px 0 15px;
		font-size: 24px;
		line-height: 24px;
	}
	.vozmozhnosti-nashih-klubov-container {
		display: grid;
		grid-template-areas:
		"trenirovki-v-bassejne-i-svobodnoe-plavanie trenirovki-v-bassejne-i-svobodnoe-plavanie"
		"gruppovye-zanyatiya hammam-i-sauny"
		"gruppovye-zanyatiya zona-boevyh-iskusstv"
		"spa-uhod-i-vosstanovlenie spa-uhod-i-vosstanovlenie"
		"funkcionalnyj-trening vse-zony";
		grid-template-rows: repeat(5, auto);
		grid-template-columns: repeat(2, calc(50% - 3px));
		column-gap: 6px;
		row-gap: 6px;
		margin: 0 10px
	}
	
	.gruppovye-zanyatiya img {
		width: 100%;
		aspect-ratio: 7 / 16;
	}
	
	.vozmozhnosti-nashih-klubov-container img {
		object-fit: cover;
		width: 100%;
		border-radius: 15px;
		height: inherit;
	}
	
	.trenirovki-v-bassejne-i-svobodnoe-plavanie img {
		height: 32.5vw;
	}
	

	.spa-uhod-i-vosstanovlenie img	{
		height: 32vw;
	}
	
	.gruppovye-zanyatiya img {
		height: 90vw;
	}
	
	.hammam-i-sauny img {
		height: 40vw;
	}
	
	.zona-boevyh-iskusstv img,
	.funkcionalnyj-trening img,
	.hammam-i-sauny  img,
	.vse-zony img,
	.additional-service-1 img {
		width: 100%;
	}
	
	.vozmozhnosti-nashih-klubov-container a {
		padding: 10px;
	}
	.gruppovye-zanyatiya,
	.funkcionalnyj-trening {
		margin-right: 0px;
	}
	
	.vozmozhnosti-nashih-klubov-container p {
		margin: 15px 0 4px 0;
	}
	
	.vozmozhnosti-nashih-klubov-container a {
		display: grid;
	}
}


/* Vozmozhnosti nashih klubov rest */

.vozmozhnosti-nashih-klubov-container-rest {
	display: flex;
	flex-wrap: wrap;
	margin: 10px 0 60px 0;
}

.vozmozhnosti-nashih-klubov-container-rest a {
	width: 224px;
	margin: 0 10px 10px 0;
	background-color: #F0F1F3;
	padding: 10px;
	border-radius: 20px;
	text-decoration: none;
	color: #000;
	font-size: 14px;
	text-align: center;
	transition: background-color .2s ease-in-out;
}

.vozmozhnosti-nashih-klubov-container-rest p {
	padding: 19px 0 15px 0;
}

.vozmozhnosti-nashih-klubov-container-rest a:nth-child(5n) {
	margin-right: 0;
}

.vozmozhnosti-nashih-klubov-container-rest a img {
	object-fit: cover;
	aspect-ratio: 4 / 3;
	width: 100%;
	border-radius: 15px;
}

@media (max-width: 1160px) {
	.vozmozhnosti-nashih-klubov-container-rest a {
		width: calc(50% - 5px);
		margin: 0 10px 10px 0;
	}
	.vozmozhnosti-nashih-klubov-container-rest a:nth-child(2n) {
		margin-right: 0;
	}
	
	.vozmozhnosti-nashih-klubov-container-rest a:nth-child(5n) {
		margin-right: 10px;
	}
}



/* Vozmozhnosti nashih klubov end */

/* Gruppovye zanyatiya i klubnaya karta */

.gruppovye-zanyatiya-i-klubnaya-karta-container {
	margin: 80px 0 52px;
	display: flex;
	justify-content: space-between;
}

/* Gruppovye zanyatiya i klubnaya karta end */

/* Gruppovye zanyatiya raspisanie */

.gruppovye-zanyatiya-raspisanie {
	padding: 37px 20px 20px 40px;
	width: 560px;
	background: #F0F1F3;
	border-radius: 40px;
}

.gruppovye-zanyatiya-raspisanie h2 {
	margin-bottom: 20px;
}

.gruppovye-zanyatiya-raspisanie a {
	display: inline-block;
	padding: 8px 9px;
	margin: 6px 1px 0 0;
	background: #fff;
	border-radius: 15px;
	border: 1px solid #D9D9D9;
	text-decoration: none;
	color: #262626;
	font-size: 12px;
	font-weight: 600;
	line-height: 16px;
}

a.gruppovye-zanyatiya-raspisanie-tags-see-all {
	color: #00BDC7;
	border-color: #00BDC7;
}

.gruppovye-zanyatiya-raspisanie button {
	padding: 16px 54px;
	font-size: 16px;
}

.gruppovye-zanyatiya-raspisanie-tags {
	margin-bottom: 123px;
}

/* Gruppovye zanyatiya raspisanie end */

/* Klubnaya karta */

.klubnaya-karta {
	padding: 205px 20px 20px 40px;
	width: 560px;
	position: relative;
}

.klubnaya-karta h2 {
	font-weight: 800;
	font-size: 24px;
	line-height: 24px;
	margin-bottom: 13px;
}

.klubnaya-karta img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
	border-radius: 40px;
	z-index: -1;
}

.klubnaya-karta p {
	margin-bottom: 33px;
	max-width: 358px;
	font-weight: 400;
	font-size: 14px;
	line-height: 20px;
}

.klubnaya-karta button {
	padding: 16px 33px;
	font-size: 16px;
	margin-bottom: 20px;
}

@media only screen and (max-width: 1160px) {
	.gruppovye-zanyatiya-i-klubnaya-karta-container {
		padding: 0 10px;
		flex-wrap: wrap;
	}
	.gruppovye-zanyatiya-raspisanie,
	.klubnaya-karta {
		width: 100%;
		margin: 0 0 10px 0;
		padding: 10px;
		border-radius: 20px;
	}
	
	.gruppovye-zanyatiya-raspisanie button {
		width: 100%;
		text-align: center;
	}
	
	.gruppovye-zanyatiya-raspisanie-tags {
		margin-bottom: 20px;
	}
	
	.klubnaya-karta {
		padding-top: 260px;
	}
	
	.klubnaya-karta p {
		max-width: 270px;
	}
	
	.klubnaya-karta img {
		border-radius: 20px;
	}
}

/* Klubnaya karta end */

/* Klubnaya karta new */

.club-card-new {
	border-radius: 40px;
	display: flex;
	background: center center url('https://brightfit.ru/wp-content/themes/bright-fit/images/club-card-new-bg.webp') no-repeat;
	background-size: cover;
	margin: 0 0 80px 0;
}

.club-card-new-text {
	width: 50%;
	padding: 60px;
}

.club-card-new-text h2,
.club-card-new-text-h2 {
	font-size: 36px;
	font-weight: 800;
	line-height: 36px;
	margin-bottom: 20px;
}

.club-card-new-text p {
	max-width: 317px;
	margin: 10px 0 50px 0;
}

.club-card-new-image {
	width: 50%;
}

.club-card-new-image img {
	display: block;
}

.club-card-new .button {
	font-size: 16px;
}

@media only screen and (max-width: 1160px) {
	.club-card-new {
		border-radius: 20px;
		background: #F0F1F3;
		flex-wrap: wrap;
		flex-direction: column-reverse;
		margin: 0 10px 25px 10px;
	}
	
	.club-card-new-text,
	.club-card-new-image {
		width: 100%;
	}
	
	.club-card-new-image img {
		width: 100%;
		height: 174px;
	}
	
	.club-card-new-text {
		padding: 20px 15px 25px 15px;
	}
	
	.club-card-new-image {
		background: center center url('https://brightfit.ru/wp-content/themes/bright-fit/images/club-card-new-bg.webp') no-repeat;
		background-size: cover;
		border-radius: 20px;
	}
	
	.club-card-new a.button {
		width: 100%;
		display: inline-block;
		text-align: center;
	}
	
	.club-card-new-text h2,
	.club-card-new-text-h2	{
		font-size: 24px;
		font-weight: 700;
		line-height: 24px;
		margin-bottom: 15px;
	}
	
	.club-card-new-text p {
		margin-bottom: 18px;
	}
}


/* Klubnaya karta new end */

/* Ekskursiya wraper */

.ekskursiya-wraper {
	position: relative;
	padding: 70px 0 70px 0;
}

.ekskursiya-wraper img {
    width: 100%;
    height: 100%;
    object-fit: contain;
	object-position: right top;
    position: absolute;
    top: 0;
    left: 0;
	border-radius: 40px;
	z-index: 1;
}

.ekskursiya-container {
	background: #CECAEE;
	border-radius: 40px;
	padding: 60px 20px 10px 60px;
	display: flex;
}


.ekskursiya-container .wpcf7-form > p:nth-child(7) {
	margin-top: 20px;
	/*margin-left: -11px;*/
	margin-bottom: 35px;
}

.ekskursiya-container-text {
	width: 384px;
	z-index: 2;
}



.ekskursiya-container-form a {
	color: #000;
	transition: color .2s ease-in-out;
}

.ekskursiya-container-form a:hover {
	color: #00BDC7;
}

.ekskursiya-container-form {
	z-index: 2;
}

/* Стили для плейсхолдеров в разных браузерах (input, textarea) */
::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color: #262626;
    transition: color 0.2s ease-in-out;
}

:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: #262626;
    opacity: 1;
    transition: color 0.2s ease-in-out;
}

::-moz-placeholder { /* Mozilla Firefox 19+ */
    color: #262626;
    opacity: 1;
    transition: color 0.2s ease-in-out;
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #262626;
    transition: color 0.2s ease-in-out;
}

::-ms-input-placeholder { /* Microsoft Edge */
    color: #262626;
    transition: color 0.2s ease-in-out;
}

::placeholder { /* Современные браузеры */
    color: #262626;
    transition: color 0.2s ease-in-out;
}

/* Ховер на плейсхолдер (input, textarea) */
input:hover::-webkit-input-placeholder,
textarea:hover::-webkit-input-placeholder {
    color: #00BDC7;
}

input:hover:-moz-placeholder,
textarea:hover:-moz-placeholder {
    color: #00BDC7;
    opacity: 1;
}

input:hover::-moz-placeholder,
textarea:hover::-moz-placeholder {
    color: #00BDC7;
    opacity: 1;
}

input:hover:-ms-input-placeholder,
textarea:hover:-ms-input-placeholder {
    color: #00BDC7;
}

input:hover::-ms-input-placeholder,
textarea:hover::-ms-input-placeholder {
    color: #00BDC7;
}

input:hover::placeholder,
textarea:hover::placeholder {
    color: #00BDC7;
}

/* Фокус на плейсхолдер (input, textarea) */
input:focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
    color: #00BDC7;
}

input:focus:-moz-placeholder,
textarea:focus:-moz-placeholder {
    color: #00BDC7;
    opacity: 1;
}

input:focus::-moz-placeholder,
textarea:focus::-moz-placeholder {
    color: #00BDC7;
    opacity: 1;
}

input:focus:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder {
    color: #00BDC7;
}

input:focus::-ms-input-placeholder,
textarea:focus::-ms-input-placeholder {
    color: #00BDC7;
}

input:focus::placeholder,
textarea:focus::placeholder {
    color: #00BDC7;
}

/* Стилизация select (плейсхолдера у него нет, но можно стилизовать сам элемент) */
select {
    color: #262626;
    transition: color 0.2s ease-in-out, border-color 0.2s ease-in-out;
    outline: none;
}

select:hover {
    color: #00BDC7;
    border-color: #00BDC7;
}

select:focus {
    color: #00BDC7;
    border-color: #00BDC7;
    outline: none;
}

/* Общие стили для всех элементов формы (опционально) 
input, textarea, select {
    padding: 8px 12px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-family: inherit;
    font-size: 14px;
}*/

input:focus, textarea:focus, select:focus {
    border-color: #00BDC7;
}

input,
select,
textarea {
	display: block;
	background: #fff;
	border-radius: 15px;
	padding: 10px 9px;
	width: 100%;
	border: 0;
	outline: 0;
	margin: 0 0 10px 0;
	cursor: pointer;
}

select {
	-webkit-appearance: none; /* Для Safari и Chrome */
	-moz-appearance: none;    /* Для Firefox */
	appearance: none;         /* Стандартное свойство */
	background: #fff right 6px center url('https://brightfit.ru/wp-content/themes/bright-fit/images/select-dropdown-icon.svg') no-repeat;
	padding-right: 40px;
	background-size: 28px;
	padding: 12px 38px 12px 9px;
}

.wpcf7-spinner {
	display: none; 
	/*margin: 0;*/
}

.ekskursiya-container form select {
	margin-bottom: 20px;
}

.ekskursiya-container form button {
	width: 100%;
	margin-top: 16px;
	padding: 16px 20px;
	font-size: 16px;
}

.ekskursiya-container form {
	max-width: 100%;
	margin: 0 0 16px 0;
	position: relative;
}

.ekskursiya-container form input,
.ekskursiya-container form p {
	width: 100%;
	max-width: 100%;
}

@media only screen and (min-width: 1160px) {
	.ekskursiya-container input,
	.ekskursiya-container select {
		max-width: 270px!important;
	}
	
	.ekskursiya-container .wpcf7-list-item {
		max-width: 400px!important;	
	}
}

.ekskursiya-container h2,
.aktsiya-header-text-form .ekskursiya-container-header-h2,
.ekskursiya-container .ekskursiya-container-h2 {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}


.ekskursiya-container h2,
.ekskursiya-container .ekskursiya-container-h2,
.aktsiya-header-text-form .ekskursiya-container-header-h2,
.ekskursiya-container p {
	max-width: 300px;
	margin-bottom: 20px;
}

.ekskursiya-container p {
	font-size: 16px;
	line-height: 24px;
}

.ekskursiya-container .wpcf7-form p {
	margin-bottom: 11px;
}

.ekskursiya-container-form .button {
	font-size: 16px;
	margin-top: 20px;
}

.ekskursiya-container p small {
	font-size: 12px;
	line-height: 14px;
}

.form-img-mobile {
	display: none;
}

@media only screen and (max-width: 1160px) {
	.ekskursiya-wraper {
		padding: 20px 0 0 0;
		margin: 0 10px;
	}
	
	.ekskursiya-container {
		padding-left: 15px;
		padding-right: 15px;
		padding-top: 210px;
		border-radius: 20px;
		flex-direction: column;
	}
	
	.ekskursiya-container h2,
	.ekskursiya-container .ekskursiya-container-h2,
	.ekskursiya-container p {
		z-index: 2;
		position: relative;
	}
	
	.ekskursiya-container p {
		font-size: 14px;
		line-height: 20px;
		font-weight: 400;
	}
	
	.single-club-form-wraper .ekskursiya-container p {
		font-size: 16px;
		line-height: 24px;
		font-weight: 500;
	}
	
	.ekskursiya-container h2,
	.ekskursiya-container .ekskursiya-container-h2, {
		font-size: 24px;
		line-height: 24px;
		font-weight: 800px;
		margin-bottom: 15px;
	}
	
	.ekskursiya-wraper img {
		border-radius: 20px;
	}
	
	.ekskursiya-container-text {
		width: 100%;
	}
	
	.form-img-desctop {
		display: none;
	}
	
	.form-img-mobile {
		display: block;
	}
}

/* Ekskursiya wraper end */

/* App banner */

.app-banner-container {
	margin: 40px 0 80px 0;
	border-radius: 40px;
	display: flex;
	background: #6E73F6;
	justify-content: space-between;
	padding: 60px 60px 50px 60px;
	background: #F0F1F3;
}

.app-banner-text p {
	max-width: 380px;
	font-size: 16px;
	line-height: 24px;
}

.app-banner-text h2,
.app-banner-text-h2 {
	margin: 0 0 20px 0;
	max-width: 380px;
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}

.app-banner-text .button {
	display: none;
}

.app-banner-qr {
	text-align: right;
}

.app-buttons-container {
	margin-top: 40px;
}

.app-buttons-container img {
	border-radius: 15px;
	border: 2px solid;
	border-color: #141E32;
	transition: border-color .2s ease-in-out;
	display: inline-block;
	height: 40px;
}

.app-buttons-container a:hover img {
	border-color: #00BDC7;
}

.bitafit-app-icon {
	display: none;
}




@media only screen and (max-width: 1160px) {
	.app-banner-container {
		margin: 0 10px 0 10px;
		border-radius: 20px;
		padding: 10px;
	}
	
	.app-buttons-container,
	.app-banner-text p,
	.app-banner-qr {
		display: none;
	}
	
	.app-banner-text {
		width: 100%;
		margin: 0 auto;
		padding: 30px 10px 10px 10px;
	}
	
	.app-banner-text .button {
		display: inherit;
		width: 100%;
		text-align: center;
		font-size: 16px;
		font-weight: 600;
		line-height: 24px;
	}
	
	.app-banner-text-headline-mobile {
		display: inherit;
		margin-bottom: 40px;
	}
	
	.bitafit-app-icon {
		display: block;
		width: 100px;
		height: 100px;
		margin: 0 auto 30px auto;
		border-radius: 20px;
	}
	
	.app-banner-text h2,
	.app-banner-text-h2 {
		text-align: center;
		font-size: 24px;
		font-weight: 700;
		line-height: 24px;
		margin-bottom: 30px;
		width: 100%;
		max-width: 100%;
	}
}

/* App banner end */

/* app banner new */

.app-bitafit-container {
	margin: 40px 0 0 0;
}

.app-bitafit-header {
	text-align: center;
}

.app-bitafit-header h2,
.app-bitafit-header-h2 {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}

.app-bitafit-content {
	margin: 80px 0 0 0;
	display: flex;
	justify-content: space-between;
}

.app-screen {
	width: 360px;
	border-radius: 40px;
	background: #F0F1F3;
	text-align: center;
	padding-bottom: 15px;
}

.app-screen img {
	margin: -40px 0 0 0;
	width: 186.2px;
}

.app-screen p {
	margin-top: 15px;
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
}

.width-message-box img {
	width: 205.86px
}

@media only screen and (max-width: 1160px) {
	
	.app-bitafit-container {
		margin-left: 10px;
		margin-right: 10px;
	}
	
	.app-bitafit-content {
		flex-direction: column;
		margin-top: 60px;
	}
	
	.app-screen {
		width: 100%;
		border-radius: 20px;
		margin: 0 0 60px 0;
	}
	
	.app-bitafit-header h2,
	.app-bitafit-header-h2	{
		font-size: 24px;
		line-height: 24px;
	}
	
	.width-message-box {
		margin-bottom: 20px;
	}
}

/* app banner new */


/* Vazhno znat i bright journal */

.vazhno-znat-i-bright-journal-container {
	display: flex;
	justify-content: space-between;
	width: 100%;
}

.vazhno-znat,
.bright-journal {
	width: 560px;
}

.vazhno-znat {
	margin-bottom: 40px;
}

.bright-journal {
	
}

.vazhno-znat-header,
.bright-journal-header {
	display: grid;
	justify-content: space-between;
	grid-template-columns: auto auto;
	grid-template-rows: auto;
}

.vazhno-znat-content,
.bright-journal-content {
	display: flex;
	justify-content: space-between;
}

.vazhno-znat-i-bright-journal-card {
	width: 32%;
	border-radius: 20px;
	background-color: #F0F1F3;
	text-decoration: none;
	padding: 10px;
	transition: background-color .2s ease-in-out;
}

.vazhno-znat-i-bright-journal-card:hover {
	background-color: #DADDE1;
}

.vazhno-znat-i-bright-journal-card img {
	width: 100%;
	display: block;
	margin-bottom: 10px;
	border-radius: 15px;
    object-fit: cover;
	aspect-ratio: 4 / 3;
}

.vazhno-znat-i-bright-journal-card h3 {
	font-size: 16px;
	color: #000;
}

.vazhno-znat-i-bright-journal-card p {
	font-size: 14px;
	color: #999;
}

@media only screen and (max-width: 1160px) {
	.vazhno-znat-i-bright-journal-container {
		margin: 0 10px;
		flex-wrap: wrap;
		width: inherit;
	}
	
	.vazhno-znat {
		width: 100%;
		margin-right: 0;
	}

	.bright-journal {
		width: 100%;
		margin-left: 0;
	}
	
	.last-3 {
		display: none;
	}
	
	.vazhno-znat-i-bright-journal-card {
		width: 49%;
		margin-right: 0;
	}
}

/* Vazhno znat i bright journal end */


/* Club */

.club-content-container {
	padding: 10px;
}

.club-content-container h1 {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}

@media only screen and (max-width: 1160px) {
	.club-content-container h1 {
		font-size: 24px;
		font-weight:800;
		line-height: 24px;
		margin-left: 5px;
		margin-top: 10px;
	}
	
	.single-club-form-wraper .club-oformit-kartu {
		margin-right: 0;
		margin-left: 0;
		padding-top: 0;
	}
}


/* Club main photos */

.club-photo-container {
	position: relative;
	height: 240px;
	display: flex;
	align-items: flex-end;
	color: #fff;
	border-radius: 20px;
}

.club-photo-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
	border-radius: 20px;
	z-index: -1;
}

.club-photo-container-ui-container {
	display: flex;
	justify-content: space-between;
	width: 100%;
	padding: 20px;
}

.club-photo-container-ui-container-video-tour {
	background: #FFFFFF;
	padding: 4px 12px;
	color: #000;
	border-radius: 15px;
	text-decoration: none;
	transition: color .2s ease-in-out;
}

.club-photo-container-ui-container-video-tour:hover {
	color: #00BDC7;
}

.club-photo-container-ui-container-video-tour:before {
	content: ' ' url('https://brightfit.ru/wp-content/themes/bright-fit/images/club-videotur-icon.svg');
}

.club-photo-container-ui-container-slides-counter {
	background: rgb(0 0 0 / .7);
	padding: 4px 8px;
	border-radius: 15px;
}

/* Club main photos end */

.club-address-container {
	display: flex;
	margin-top: 20px;
}

.club-address-container a img {
	display: block;
	padding: 11.2px 12.2px;
	border: 1px solid #DADDE1;
	border-radius: 50%;
	transition: background-color .2s ease-in-out;
}



.club-address-container p {
	display: flex;
	font-size: 12px;
	margin-left: 10px;
	align-self: center;
}

.club-top-buttons-container {
	margin-top: 20px;
}

.club-top-buttons-container a {
	padding: 12px 14px 12px 14px;
	border: 1px solid #DADDE1;
	border-radius: 15px;
	display: inline-block;
	margin: 0 7px 10px 0;
	font-size: 12px;
	line-height: 14px;
	font-weight: 600;
	text-decoration: none;
	color: #000;
}

@media only screen and (max-width: 1160px) {
	.club-top-buttons-container a {
		margin: 0 7px 10px 0;
	}
}

a.club-buy-card {
	color: #fff;
    background-color: #141E32; /* Основной цвет */
    background-image: linear-gradient(90deg, #141E32, rgba(0, 187, 197, 0.2));
    transition: background-color .2s ease-in-out;
	position: relative;
	/* margin-right: 2px; */
}


/*

.club-phone img {
	top: 2px;
}

.club-raspisanie img {
	top: 3px;
}

.club-price img {
	top: 5px;
}

*/


.club-raspisanie {
	background: 11px center url('/wp-content/themes/bright-fit/images/club-raspisanie-icon.svg') no-repeat!important;
}

.club-phone {
	background: 12px center url('/wp-content/themes/bright-fit/images/club-phone-icon.svg') no-repeat!important;
}

.club-phone,
.club-raspisanie,
.club-price {
	padding-left: 34px!important;
}

.club-price {
	margin-right: 0!important;
	background: 9px center url('/wp-content/themes/bright-fit/images/club-price-icon.svg') no-repeat!important;
}

.club-phone:hover,
.club-raspisanie:hover,
.club-price:hover,
.club-address-container a:hover img {
    background-color: #F0F1F3;
}

.club-phone,
.club-raspisanie,
.club-price {
    transition: background-color .2s ease-in-out;
}


.club-fishki-container {
	margin: 20px 0 0 0;
}

.club-fishki-content {
	display: flex;
	overflow: auto;
	/* white-space: nowrap; */
	-ms-overflow-style: none;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	margin: 0 -10px 0 -10px;
	padding: 0 10px;
}

.horizontal-scroll-buttons-container {
	display: none;
}

@media only screen and (min-width: 1160px) {
	
	.club-fishki-header {
		display: flex;
		justify-content: space-between;
		margin: 0 0 0px 0;
	}
	
	.horizontal-scroll-buttons-container {
		display: flex;
		justify-content: space-between;
		width: 70px;
		align-items: flex-start;
		margin: 0 0 10px 0;
	}
	
	.horizontal-scroll-buttons-container .inactive {
		opacity: .4;
		cursor: default;
		transition: opacity .3s ease-in-out;
	}
	
	.horizontal-scroll-buttons-container .inactive:hover {
		background-color: #F0F1F3;
	}
	
	.horizontal-scroll-buttons-container.hidden {
		display: none !important;
	}
	
	.horizontal-scroll-buttons-left img,
	.horizontal-scroll-buttons-right img {
		display: block;
	}
	
	.horizontal-scroll-buttons-left,
	.horizontal-scroll-buttons-right {
		background-color: #F0F1F3;
		border-radius: 10px;
		padding: 10px;
		cursor: pointer;
		transition: background-color .3s ease-in-out;
	}
	
	.horizontal-scroll-buttons-left {
		padding-right: 12px;
	}
	
	.horizontal-scroll-buttons-right {
		padding-left: 12px;
	}
	
	.horizontal-scroll-buttons-left:hover,
	.horizontal-scroll-buttons-right:hover {
		background-color: #BEC4CB;
	}
	
	.club-fishki-content {
		margin-right: calc((100vw - 1140px) / 2 * -1);
		margin-left: calc((100vw - 1140px) / 2 * -1);
		padding-right: calc((100vw - 1140px) / 2);
		padding-left: calc((100vw - 1140px) / 2);
		margin-bottom: 80px;
	}
}

.club-fishki-card {
	border-radius: 20px;
	background: #F0F1F3;
	text-decoration: none;
	padding: 10px 5px 20px 5px;
	margin-right: 20px;
	width: 240px;
}

.club-fishki-card img {
	width: 100%;
	display: block;
	margin-bottom: 10px;
	border-radius: 15px;
    object-fit: cover;
	width: 230px;
	height: 147px;
}

.club-fishki-card h3,
.club-fishki-card-headline {
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
	color: #000;
	margin: 15px 10px 5px 10px;
}

.club-fishki-card p {
	font-size: 14px;
	white-space: wrap;
	color: #000;
	margin-left: 10px;
	margin-right: 10px;
}

.grupovie-zanyatiya-container {
	text-align: center;
	margin: 40px 0 40px 0;
}

.grupovie-zanyatiya-container h2,
.grupovie-zanyatiya-container-header {
	margin: 0 0 35px 0;
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}

@media only screen and (max-width: 1160px) {
	.grupovie-zanyatiya-container h2,
	.grupovie-zanyatiya-container-header {
		margin: 0 0 20px 0;
		font-size: 24px;
		font-weight: 700;
		line-height: 24px;
	}
}

.grupovie-zanyatiya-container a,
.city-links .city-link {
	display: inline-block;
	border: 1px solid #D9D9D9;
	border-radius: 15px;
	padding: 10px;
	text-decoration: none;
	font-size: 12px;
	color: #262626;
	margin: 0 4px 5px 0;
	background-color: #fff;
	transition: background-color .2s ease-in-out;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.grupovie-zanyatiya-container a.button {
	text-transform: none;
	letter-spacing: inherit;
}

.city-links .city-link {
	margin-right: 0;
}

.grupovie-zanyatiya-container a:hover,
.city-links .city-link:hover {
	background-color: #F0F1F3;
}

.grupovie-zanyatiya-container a.button {
	margin: 30px auto 0 auto;
	display: block;
	max-width: 160px;
	font-size: 16px;
}

@media only screen and (max-width: 1160px) {
	.grupovie-zanyatiya-container a.button {
		margin-top: 15px;
		max-width: 200px;
	}
}


/* Тренеры */

.Trainers_page_topic_head {
	display: none!important;
}



.club-trenery-container {
	margin: 20px 0 0 0;
}

.club-trenery-content {
	display: flex;
	overflow: auto;
	white-space: nowrap;
	-ms-overflow-style: none;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	margin: 0 -10px 0 -10px;
	padding: 0 10px;
}

.club-trenery-card {
	border-radius: 20px;
	text-decoration: none;
	padding: 10px;
	margin-right: 10px;
	position: relative;
	height: 140px;
	min-width: 120px;
	display: flex;
	align-items: flex-end;
}

@media only screen and (min-width: 1160px) {
	.club-trenery-content {
		margin-right: calc((100vw - 1140px) / 2 * -1);
		margin-left: calc((100vw - 1140px) / 2 * -1);
		padding-right: calc((100vw - 1140px) / 2);
		padding-left: calc((100vw - 1140px) / 2);
	}
	
	.club-trenery-card {
		height: 211px;
		min-width: 181px;
	}
}

.club-trenery-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
	border-radius: 15px;
}

.club-trenery-card h3 {
	font-size: 12px;
	color: #fff;
}

.club-trenery-header {
	padding: 0 0 20px 0;
}

.club-trenery-header h2 {
	margin: 0 0 10px 0;
}

.club-trenery-header a {
	padding: 10px;
	border-radius: 15px;
	text-decoration: none;
	color: #000;
	font-size: 12px;
	border: 1px solid #DADDE1;
}

/* Тренеры 2 */

.club-trenery-container-new {
	background-color: #ADC1FE;
	border-radius: 20px;
	margin: 30px 0 5px 0;
	padding: 40px 20px 50px 20px;
	text-align: center;
}

.club-trenery-container-new img {
	margin: 0 auto;
}

.image-brightfit-trainers-new {
	display: none;
}

.image-brightfit-trainers-new-mobile {
	display: block;
}

.club-trenery-container-new a {
	text-decoration: none;
}

.club-trenery-container-new h3,
div.club-trenery-container-new-header {
	margin: 20px 0 30px 0;
	font-size: 24px;
	font-weight: 700;
	line-height: 24px;
}

@media only screen and (min-width: 1160px) {
	.image-brightfit-trainers-new {
		display: block;
	}
	
	.image-brightfit-trainers-new-mobile {
		display: none;
	}
	
	.club-trenery-container-new h3,
	div.club-trenery-container-new-header	{
		font-size: 34px;
		font-weight: 700;
		line-height: 36px;
		margin-bottom: 30px;
	}
	
	
	.club-trenery-container-new {
		background-color: #ADC1FE;
		border-radius: 20px;
		margin: 80px 0 40px 0;
		padding: 40px 20px 80px 20px;
		text-align: center;
	}

	.club-trenery-container-new {
		border-radius: 40px;
		padding-top: 60px;
		padding-bottom: 70px;
		margin-bottom: 80px;
	}
	
	div.on-club-cards-header {
		font-size: 34px;
		font-weight: 700;
		line-height: 36px;
	}
}




/* Тренеры */


.club-karti-container {
	margin: 0 0 35px 0;
}

.club-karti-on-club {
	margin: 0 10px;
}

.on-club-cards-header {
	display: none;
}


/* .club-karti-on-club .club-karti-filter-container, */
.club-karti-on-club .club-karti-container h3,
.club-karti-on-club #bitafit-club-filter {
	display: none;
}



.club-karti-on-club .club-karti-card-text h3,
.club-karti-on-club .on-club-cards-header {
	display: block;
}

@media only screen and (min-width: 1160px) {
	.club-karti-on-club {
		margin: 0;
	}
}

.club-karti-header {
	padding: 0 0 20px 0;
}

.club-karti-header h2 {
	margin: 0 0 10px 0;
}

.club-karti-header a {
	padding: 10px;
	border-radius: 15px;
	text-decoration: none;
	color: #000;
	font-size: 12px;
	border: 1px solid #DADDE1;
}

.club-karti-header a:hover {
	background-color: #F0F1F3;
}

.club-karti-card {
	border-radius: 20px;
	padding: 10px 10px 20px 10px;
	display: flex;
	background: #F0F1F3;
	margin: 0 0 10px 0;
	flex-direction: column;
	cursor: pointer;
}

.club-karti-card-main-info-container {
	margin: 0 0 10px 0;
}

.club-karti-card-text-promo-price {
	color: #8246FF;
	font-weight: 700;
}

.club-karti-card-text-normal-price {
	color: #98A2AE;
	font-size: 14px;
	text-decoration: line-through;
}

.club-karti-card-text h3 {
	margin: 10px 0;
}

.club-karti-card-image {
	width: 100%;
	height: 160px;
	margin: 0 10px 0 0;
	position: relative;
}

.club-karti-card-image img {
	width: 100%;
	height: 160px;
	object-fit: cover;
	border-radius: 15px;
}

.club-cards-pool-icon {
	position: absolute;
	width: 30px!important;
	height: 29px!important;
	object-fit: contain!important;
	bottom: 10px;
	left: 10px;
	border-radius: 0!important;
}

.club-card-details-popup-image {
	position: relative!important;
}

.club-card-details-popup-image .club-cards-pool-icon {
	position: absolute;
	width: 41px!important;
	height: 40px!important;
	object-fit: contain!important;
	bottom: 20px;
	left: 20px;
	border-radius: 0!important;
}


.club-karti-filter-container {
	display: flex;
	flex-direction: column;
	margin-top: 20px;
	justify-content: space-between;
}

.club-karti-filter-container-left-top select {
	border: 1px solid #DADDE1;
	width: 100%;
	display: block;
	box-shadow: 0 0 4px rgba(0,189,199,0.25), 0 0 8px rgba(0,189,199,0.12);
	animation: pulseBoxShadow 2s infinite ease-in-out;
	border: 2px solid #00BDC7;
}

.aktsiya-rasprodazha-kart-container .club-karti-filter-container-left-top select {
	/* более компактное свечение */
	box-shadow: 0 0 4px rgba(0,189,199,0.25), 0 0 8px rgba(0,189,199,0.12);
	animation: pulseBoxShadow 2s infinite ease-in-out;
	border: 2px solid #00BDC7;
}

.club-karti-filter-container-right-bottom {
	
}

.cards-group-by-club {
	margin: 20px 0 8px 0;
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
}

@media only screen and (min-width: 1160px) {

	.club-karti-filter-container-left-top select {
		width: 290px;
	}
	
	.aktsiya-rasprodazha-kart-container .club-karti-filter-container-left-top select {
		/* более компактное свечение */
		box-shadow: 0 0 4px rgba(0,189,199,0.25), 0 0 8px rgba(0,189,199,0.12);
		animation: pulseBoxShadow 2s infinite ease-in-out;
		border: 2px solid #00BDC7;
	}
	

	.club-karti-filter-container {
		flex-direction: row;
	}
	
	.club-karti-card {
		width: 279px;
		margin-right: 14.66666666666667px;
	}
	
	.club-karti-card:nth-child(4n) {
		margin-right: 0;
	}
	
	.club-karti-content {
		display: flex;
		flex-wrap: wrap;
	}
	
	.club-karti-card-image {
		width: 259px;
	}
	
	.club-karti-card-image img {
		width: 259px;
	}
}

.club-karti-card-icon-text {
	color: #141E32;
	margin-bottom: 4px;
}

.highlight {
	color: #fff;
	background: #8246FF;
}

.highlight span,
.highlight .club-karti-card-icon-text {
	color: #fff;
}

.club-oformit-kartu .ekskursiya-container {
	justify-content: space-between;
}

@media only screen and (max-width: 1160px) {
	.club-oformit-kartu .ekskursiya-container {
		padding-top: 20px;
	}

	.club-oformit-kartu img {
		display: none;
	}
}


.club-other-clubs-container {
	margin: 40px 0;
}

.club-other-clubs-header {
	padding: 0 0 20px 0;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}



.club-other-clubs-header h2,
.club-other-clubs-headline {
	margin: 0 0 10px 0;
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}

@media only screen and (max-width: 1160px) {
	.club-other-clubs-header h2,
	.club-other-clubs-headline {
		margin: 0;
		font-size: 24px;
		font-weight: 800;
		line-height: 24px;
	}
}


.club-other-clubs-content {
	display: flex;
	overflow: auto;
	white-space: nowrap;
	-ms-overflow-style: none;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	margin: 0 -10px;
	padding: 0 10px;
}

.all-clubs-content {
    overflow: visible; /* отменяем скролл */
    white-space: normal; /* разрешаем перенос */
    -webkit-overflow-scrolling: auto; /* отключаем инерционный скролл */
    margin: 0!important; /* убираем отрицательные отступы */
    padding: 0!important; /* убираем компенсирующие отступы */
    /* Если нужно, добавьте другие отступы по вашему дизайну */
	flex-wrap: wrap;
	margin-right: -10px!important;
}

.single-club-content .club-other-clubs-card-image {
	width: 266px;
}


@media only screen and (min-width: 1160px) {
	.club-other-clubs-content {
		margin-right: calc((100vw - 1140px) / 2 * -1);
		margin-left: calc((100vw - 1140px) / 2 * -1);
		padding-left: calc((100vw - 1140px) / 2);
	}
}

.club-other-clubs-card {
	text-decoration: none;
	color: #000;
	width: 282.5px;
	margin: 0 10px 20px 0;
}

.other-clubs-only .club-other-clubs-card h3,
.other-clubs-only .club-other-clubs-card p {
	padding-left: 5px;
	padding-right: 5px;
}

.other-clubs-only .club-other-clubs-card h3 {
	font-size: 16px;
	font-weight: 700;
	line-height: 24px;
	margin-top: 10px;
}

.other-clubs-only .club-other-clubs-card p {
	font-size: 14px;
	font-weight: 700;
	line-height: 24px;
	opacity: .5;
	margin-bottom: 5px;
}

.other-clubs-only .club-other-clubs-card {
	margin-right: 5px;
}

.all-clubs-content .club-other-clubs-card:nth-child(4n) {
	/* margin-right: 0; */
}




.club-other-clubs-card-image {
	position: relative;
	height: 200px;
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
	padding: 10px;
}

@media only screen and (max-width: 1160px) {
	.all-clubs-content .club-other-clubs-card {
		width: 100%;
		margin: 0 0 20px 0;
	}
	.all-clubs-content .club-other-clubs-card-image {
		width: 100%;
	}
}

.club-other-clubs-card-strelka-icon {
	width: 40px;
	background: #fff;
	padding: 8px;
	border-radius: 50%;
	display: block;
	opacity: 0;
	transition: opacity .2s ease-in-out;
}

.club-other-clubs-card:hover .club-other-clubs-card-strelka-icon {
	opacity: 1;
}

.club-other-clubs-card-image-background {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
	border-radius: 20px;
	z-index: -1;
}

.club-work-time,
.club-about {
	margin: 0 0 20px 0;
	font-size: 14px;
	line-height: 20px;
}

.club-work-time {
	margin: 50px 0 0 0;
}

.club-about {
	margin: 15px 0 40px 0;
	max-width: 555px;
}

.club-work-time-headline,
.club-about-headline {
	color: #898f98;
	margin: 0 0 8px 0;
}


@media only screen and (min-width: 1160px) {
	.club-headline {
		margin: 40px 0 80px 0;
		display: flex;
		justify-content: space-between;
	}
	
	.club-content-container {
		padding: 0;
	}
	
	.club-content-container-header {
		width: 560px;
	}

	
	.club-photo-container {
		width: 560px;
		height: 420px;
		margin-right: 10px;
		border-radius: 40px;
	}
	
	.club-photo-container img {
		border-radius: 40px;
	}
	
	.club-top-buttons-container {
		margin-top: 40px;
	}
}


/* Footer */

.footer-wraper {
	max-width: 1372px;
	margin: 0 auto;
	border-radius: 40px;
}

.footer {
	padding: 80px 100px 80px 110px;
	margin: 80px 0 20px 0;
	background: #8246FF;
	border-radius: 40px;
	color: #fff;
}

.footer a {
	color: #fff;
	text-decoration: none;
}

.footer-coluns-container {
	display: flex;
	margin: 0;
}

.footer-coluns-container ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer-coluns-container ul li {
	margin: 0 0 23px 0;
}

.footer-coluns-container ul li a {
	transition: opacity .2s ease-in-out;
}

.footer-coluns-container ul li a:hover {
	opacity: .6;
}


.footer-menu-1-column {
	width: 180px;
}

.footer-menu-2-column {
	width: 200px;
}

.footer-menu-3-column {
	width: 310px;
}

.footer-download-app h2,
.footer-download-app .footer-download-app-h2 {
	font-size: 24px;
	font-weight: 700;
	line-height: 24px;
	margin-bottom: 29px;
}


.footer-download-app img,
.main-menu-apps img {
	border-radius: 15px;
	border: 2px solid;
	border-color: #fff;
	transition: border-color .2s ease-in-out;
	display: block;
	margin: 0 0 18px 0;
	height: 40px;
}

.AppGallery {
	margin: 0;
}

.footer-download-app a:hover img,
.main-menu-apps a:hover img {
	border-color: rgb(255 255 255 / .4);
}

.footer-download-app img {
	border-color: #fff;
}

.footer-social-medias img,
.main-menu-social-medias img {
	display: inline-block;
	background: #fff;
	padding: 8px 9px;
	border: 1px solid #DADDE1;
	border-radius: 15px;
	margin-right: 7px;
	transition: opacity .2s ease-in-out;
}

.footer-social-medias a:hover img,
.main-menu-social-medias a:hover img {
	opacity: .8;
}

.footer-download-app-mobile,
.main-menu-download-app-mobile {
	display: none;
}

.footer-download-app-mobile .button,
.main-menu-download-app-mobile .button {
	background: #fff;
	color: #000;
	display: block;
	margin: 0 0 20px 0;
	text-align: center;
}

@media only screen and (max-width: 1160px) {
	
	.footer {
		border-radius: 20px;
		margin: 40px 10px 20px 10px;
		padding: 30px 20px 20px 20px;
	}
	
	.footer-coluns-container {
		flex-direction: column;
	}
	
	.footer-download-app,
	.footer-qr-code,
	.main-menu-apps	{
		display: none;
	}
	
	.footer-download-app-mobile,
	.main-menu-download-app-mobile	{
		display: block;
	}
	
	.footer-download-app-mobile .button {
		font-size: 16px;
		font-weight: 600;
		line-height: 24px;
		margin: -5px 0 40px 0;
	}
	
	.footer-social-medias {
		margin: 15px 0 0 0;
	}
}


/* Footer end */

/* Main menu */

.overlay-main-menu {
  left: 50%;          /* Сдвигаем блок на 50% вправо */
  transform: translateX(-50%); /* Возвращаем назад на 50% своей ширины */
  width: 100%;
  max-width: 1440px;  /* Ограничиваем ширину */
  position: fixed;
  z-index: -1;
  background-color: rgb(0 0 0 / 0);
  opacity: 0;
  transition: .2s ease-in-out;
  display: block; /* или visibility: hidden */
}

.overlay-main-menu.active {
  opacity: 1;
  z-index: 999;
}

/* The content */
.overlay-main-menu-content {
	position: absolute;
	right: -9px;
	top: 0;
	/* margin-left: calc((100% - 320px) - ((100% - 1160px) / 2) + 10px); */
	z-index: 99;
	background: #8246FF;
	max-width: 320px;
	max-height: 90vh;
	border-radius: 20px;
	transition: .2s ease-in-out;
	padding: 0 40px;
	opacity: 0;
	color: #fff;
	border: 2px solid #fff;
	width: 320px;
}

@media only screen and (max-width: 1480px) {
	.overlay-main-menu-content {
		right: 0;
	}
}

.overlay-main-menu-content a {
	color: #fff;
	text-decoration: none;
}

.overlay-main-menu-content ul {
	list-style: none;
}

.overlay-main-menu-content ul li {
	margin: 0 0 20px 0;
}

.overlay-main-menu-content ul li a {
	transition: opacity .2s ease-in-out;
}

.overlay-main-menu-content ul li a:hover {
	opacity: 1;
}


.overlay-main-menu.active .overlay-main-menu-content {
  opacity: 1;
}

.overlay-main-menu .closebtn-main-menu {
  z-index: 99;
  cursor: pointer;
}

.closebtn-main-menu {
	display: inline-block;
	position: relative;
	padding: 9px 10px;
	background: #fff;
	border: 1px solid #DADDE1;
	top: 8px;
	left: 229px;
	border-radius: 15px;
	z-index: 99;
}

.closebtn-main-menu img {
	display: block;
	z-index: 99;
}


/* Search full screen */
.main-menu-scroll-container {
	overflow: auto;
	height: 90vh;
	margin: -47px -40px 0 -40px;
	padding: 20px 20px;
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE и Edge */
}


.main-menu-scroll-container ul {
	margin-left: 0;
}

.main-menu-scroll-container::-webkit-scrollbar {
	display: none; /* Chrome, Safari, Opera */
}

.main-menu-apps {
	margin: 0 0 20px 0;
}


@media only screen and (max-width: 1160px) {
	.closebtn-main-menu {
		top: 10px;
		left: calc(100vw - 60px);
		border: 0;
	}
	
	.overlay-main-menu-content {
		margin: 0;
		border-radius: 0;
		height: 100vh;
		max-height: 100vh;
		top: 0;
		right: 0;
		padding: 0 10px;
		border: 0;
		width: 100%;
		max-width: 100%;
	}
	
	.main-menu-scroll-container {
		height: 100vh;
		margin: -47px -10px 0 -10px;
		padding: 20px 10px 20px 10px;
		scrollbar-width: none; /* Firefox */
		-ms-overflow-style: none; /* IE и Edge */
	}
	
	.overlay-main-menu {
	  	background: #8246FF;
	}
	
	.overlay-main-menu {
	  left: 0;          /* Сдвигаем блок на 50% вправо */
	  transform: translateX(0px); /* Возвращаем назад на 50% своей ширины */
	  width: 100%;
	  max-width: 100%;  /* Ограничиваем ширину */
	  right: 0;
	}
}

/* Main menu end */


/* Search full screen */
/* The overlay effect with black background */
.overlay {
  height: 100%;
  width: 100%;
  position: fixed;
  z-index: -1;
  top: 0;
  left: 0;
  background-color: rgb(0 0 0 / .5);
  opacity: 0;
  transition: .2s ease-in-out;
  display: block; /* или visibility: hidden */
}

.overlay.active {
  opacity: 1;
  z-index: 99999;
}

/* The content */
.overlay-content {
	position: relative;
	top: calc(50% - 300px);
	margin: auto;
	z-index: 999;
	background: #fff;
	max-width: 420px;
	height: 600px;
	border-radius: 40px;
	transform: translateY(100%);
	transition: .2s ease-in-out;
	padding: 0 40px;
}


.overlay-content h2 {
	
}

.menu-club-select-container {
	display: flex;
	justify-content: space-between;
	margin: 0 0 20px 0;
}

.menu-club-select-container img {
	display: block;
}

.menu-club-select-container a {
	padding: 10px;
	border: 1px solid #DADDE1;
	border-radius: 15px;
}

.menu-club-select-container .vibor-cluba-h2 {
	font-size: 24px;
	font-weight: 800;
	line-height: 24px;
	margin-top: 10px;
}

.overlay.active .overlay-content {
  transform: translateY(0%);
}

/* Close button 
.overlay .closebtn {
  position: absolute;
  top: 0;
  right: 28px;
  font-size: 60px;
  cursor: pointer;
  color: #000;
  z-index: 99999;
  transition: color 0.2s ease-out;
}
*/
.overlay .closebtn {
  z-index: 99999;
  cursor: pointer;
}

.no-scoll {
	overflow-y: hidden!important;
}

.closebtn {
	display: inline-block;
	position: relative;
	padding: 10px;
	background: #fff;
	border: 1px solid #DADDE1;
	top: -14px;
	left: 354px;
	border-radius: 15px;
	z-index: 99999;
}

.closebtn img {
	display: block;
	z-index: 999999;
}



/* Search full screen */
.menu-club-search-scroll-container {
	overflow: auto;
	height: 600px;
	margin: -47px -40px 0 -40px;
	padding: 20px 40px;
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE и Edge */
}

.menu-club-search-scroll-container::-webkit-scrollbar {
	display: none; /* Chrome, Safari, Opera */
}


/* Menu club search */

/* Стили для кнопок городов */
.cities-container {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin: 0 -40px;
	padding: 0 40px;
}


@media only screen and (max-width: 430px) {
	.closebtn {
		top: 0px;
		left: calc(100vw - 60px);
		background: none;
		border: 0;
	}
	
	.overlay-content {
		margin: 0;
		border-radius: 0;
		height: 100vh;
		top: 0;
		padding: 0 10px;
	}
	.menu-club-search-scroll-container {
		height: 100vh;
		margin: -47px -10px 0 -10px;
		padding: 60px 10px 20px 10px;
		scrollbar-width: none; /* Firefox */
		-ms-overflow-style: none; /* IE и Edge */
	}
	.cities-container {
		margin: 0 -10px;
		padding: 0 10px;
	}
}

.cities-container.scrollable {
	flex-wrap: nowrap;
	overflow-x: auto;
	margin-bottom: 20px;
	padding-bottom: 10px;
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE и Edge */
}

.cities-container.scrollable::-webkit-scrollbar {
	display: none; /* Chrome, Safari, Opera */
}

.city-btn {
	border: 1px solid #DADDE1;
	outline: none;
	padding: 12px 16px;
	cursor: pointer;
	white-space: nowrap;
	border-radius: 15px;
	font-size: 12px;
	transition: all 0.2s;
	color: #141E32;
	background: #fff;
}

.city-btn:hover {
	background-color: #F0F1F3;
	color: #333;
}

.city-btn.active {
	background: #141E32;
	color: #fff;
}

/* Стили для поиска */
.search-container {
	display: none;
	margin-bottom: 20px;
	position: relative;
}


#searchInput {
	background-image: url('https://brightfit.ru/wp-content/themes/bright-fit/images/club-select-search-icon.svg');
	background-position: 10px;
	background-repeat: no-repeat;
	width: 100%;
	font-size: 12px;
	padding: 12px 40px 12px 40px;
	border: 1px solid #ddd;
	border-radius: 15px;
	box-sizing: border-box;
}

#searchInput::placeholder {
	color: #98A2AE;
	font-size: 12px;
}

.clear-search {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	cursor: pointer;
	opacity: 0;
	transition: opacity 0.2s;
	padding: 5px;
}

.clear-search.visible {
	opacity: 0.5;
}

.clear-search:hover {
	opacity: 1 !important;
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	cursor: pointer;
	opacity: 0;
	transition: opacity 0.2s;
	padding: 5px
}

.clear-search svg {
	width: 16px;
	height: 16px;
	color: #000;
}

/* Стили для списка клубов */
.clubs-list {
	list-style-type: none;
	padding: 0;
	margin: 15px 0 25px 0;
	display: none;
}

.clubs-list li {
	text-decoration: none;
	font-size: 16px;
	color: black;
	display: block;
	border-radius: 4px;
	margin-bottom: 9px;
}

.clubs-list li a {
	text-decoration: none;
	color: #000;
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
}

.club-address {
	display: flex;
	align-items: center;
	color: #898f98;
	font-size: 14px;
	margin-top: 4px;
}

.club-icons {
	display: inline-flex;
	margin-left: 10px;
	gap: 8px;
}

.club-icons svg {
	width: 16px;
	height: 16px;
	opacity: 0.7;
}

/* Стили для пустого состояния */
.empty-state {
	display: none;
	flex-direction: column;
	align-items: center;
	text-align: center;
	border-radius: 8px;
}

.empty-state svg {
	width: 80px;
	height: 80px;
	margin-bottom: 20px;
	opacity: 0.5;
}

.empty-state p {
	color: #666;
	font-size: 16px;
	margin: 0;
}


/* Бегущая строка */

body {
  margin: 0;
  overflow-x: hidden;
}

.marquee-container {
  width: 100vw;
  overflow: hidden;
  position: relative;
  background: #8246FF;
  padding: 0;
  margin: 0 0 40px 0;
  height: 60px;
  display: flex;
  align-items: center;
  color: #fff;
  font-weight: 900;
  font-stretch: 125%;
}

.marquee-track {
  display: flex;
  position: absolute;
  white-space: nowrap;
}

.marquee-content {
  font-size: 24px;
  padding: 0 50px;
}

/* Бегущая строка */


/* Pre Sale оформить карту */

.pre-sale-oformit-karty {
	padding: 0;
}

.pre-sale-oformit-karty .ekskursiya-container {
	/*height: 500px;*/
	padding: 40px 20px 0px 43px;
	margin-bottom: 80px;
	margin-top: 80px;
}

.pre-sale-oformit-karty img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.pre-sale-oformit-karty .ekskursiya-container-text {
	position: relative;
	width: 560px;
	/* height: 500px; */
	margin: -40px 80px 0 -42px;
	padding: 40px 0 0 0;
	display: flex;
	align-items: flex-end;
	border-radius: 40px;
}

.pre-sale-oformit-karty .ekskursiya-container-text p {
	color: #fff;
	font-size: 24px;
	line-height: 24px;
	font-weight: 700;
	z-index: 4;
	position: relative;
	background-image: linear-gradient(rgb(147 96 255 / 0) 40%, #9360FF 90%);
	margin: 0;
	padding: 400px 40px 40px 40px;
	border-radius: 0 0 40px 40px;
	max-width: 100%;
}

@media only screen and (max-width: 1160px) {
	.pre-sale-oformit-karty {
		margin: 0;
	}
	
	.pre-sale-oformit-karty .ekskursiya-container {
		height: inherit;
		padding: 0;
	}
	
	.pre-sale-oformit-karty .ekskursiya-container-text {
		width: 100%;
		height: auto;
		aspect-ratio: 1 / 1;
		margin: 0 0 20px 0;
		border-radius: 20px;
	}
	
	.pre-sale-oformit-karty .ekskursiya-container-text p {
		padding: 80px 40px 40px 40px;
		border-radius: 0 0 20px 20px;
	}
	
	.pre-sale-oformit-karty img {
		width: 100%!important;
		height: auto;
		aspect-ratio: 1 / 1;
		object-position: top;
		border-radius: 20px;
	}
	
	.pre-sale-oformit-karty .ekskursiya-container-form {
		padding: 20px;
	}
}

/* Pre Sale оформить карту конец */



/* Кнопки */

button,
div.button,
a.button,
input.button,
.wp-block-button__link {
    font-size: 12px;
    font-weight: 600;
    color: #fff;
    padding: 14px 33px;
    border-radius: 15px;
    cursor: pointer;
    border: 0;
    outline: 0;
    background-color: #141E32; /* Основной цвет */
    background-image: linear-gradient(90deg, #141E32, rgba(0, 187, 197, 0.2));
    transition: background-color .2s ease-in-out;
	text-decoration: none;
}

button:hover,
a.button:hover,
input.button:hover,
a.club-buy-card:hover,
.wp-block-button__link:hover {
    background-color: #00bbc5; /* Цвет, в который переходит градиент */
}

/* Кнопки конец */


/* Cookie */

.cookie-notice {
	position: fixed;
	bottom: 20px;
	left: 20px;
	background: #141E32;
	color: #fff;
	padding: 7.7px 8px;
	border-radius: 20px;
	display: none;
	gap: 4px;
	z-index: 9999!important;
	max-width: 320px;
	border: #fff;
	font-size: 14px;
	font-weight: 600;
	align-items: start;
	flex-wrap: wrap;
}

.cookie-notice p {
	margin: 8px 0 0 0;
	padding: 0;
	position: relative;
	top: -3px;
	width: 258px;
}

.cookie-notice a {
	color: var(--card-background);
	border-color: var(--background-color);
}

.cookie-notice button {
	cursor: pointer;
	word-break: keep-all;
	word-wrap: normal;
	border-radius: 15px;
	background: #fff;
	color: #000;
	padding: 4.2px 11.42px;
	margin-left: auto;
	font-size: 12px;
	line-height: 14px;
	font-weight: 600;
}

.cookie-notice img {
	width: 30px;
	position: relative;
	top: 4px;
}

@media only screen and (max-width: 960px) {
	.cookie-notice {
		left: 0;
		right: 0;
		bottom: 0;
		max-width: 100%;
		border-radius: 20px 20px 0 0;
	}
	
	.cookie-notice p {
		width: calc(100% - 50px);
	}
}

/* Cookie конец */



/* Акции */

/* Все акции */

.other-aktsii-container .cities-container {
	margin-left: -10px;
	margin-right: -10px;
	padding-left: 10px;
	padding-right: 10px;
	margin-top: 10px;
	margin-bottom: 5px;
}

@media only screen and (min-width: 1160px) {
	.other-aktsii-container .cities-container {
		margin-left: calc((100vw - 1140px) / 2 * -1);
		margin-right: calc((100vw - 1140px) / 2 * -1);
		padding-left: calc((100vw - 1140px) / 2);
		padding-right: calc((100vw - 1140px) / 2);
		margin-bottom: 30px;
		margin-top: 20px;
	}
	
	.aktsiya-rasprodazha-kart-container .other-aktsii-container .cities-container {
		margin-top: 0px;
	}
}

/* Все акции конец */


/* Страница акции простая */

.other-aktsii-container {
	margin: 10px 10px;
}

.other-aktsii-container h2,
.other-aktsii-container-headline-h2 {
	margin: 20px 0;
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}

.astsiya-content p {
	margin: 20px 0;
}

.astsiya-content ul {
	margin: 20px 0 20px 40px;
}


@media only screen and (min-width: 1160px) {
	.aktsiya-header {
		display: flex;
		justify-content: space-between;
		margin: 40px 0;
	}
	
	.aktsiya-header-text-form {
		width: 360px;
	}
	
	.aktsiya-header-text-form .club-oformit-kartu {
		padding: 0;
	}
	
	.aktsiya-header-text-form .ekskursiya-container {
		flex-direction: column;
		padding: 40px;
	}
	
	.aktsiya-header-text-form .ekskursiya-container h2,
	.aktsiya-header-text-form .ekskursiya-container-header-h2	{
		font-size: 24px;
		font-weight: 800;
		line-height: 24px;
	}
}


.aktsiya-header-text {
	padding: 10px;
	max-width: 560px;
}

.other-aktsii-content {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
}

.other-aktsii-content a {
	color: #000;
	text-decoration: none;
}

.other-aktsii-content .button {
	color: #fff;
}

.aktsiya-card {
	display: flex;
	position: relative;
	padding: 15px;
	margin: 0 0 10px 0;
	width: 100%;
	height: 400px;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: stretch;
	flex-direction: column;
}

.aktsiya-card .h3 {
	font-size: 30px;
	font-weight: 800;
	line-height: 34px;
}

.aktsiya-card button,
.aktsiya-card div.button {
	align-self: flex-start;
}

.aktsiya-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    border-radius: 20px;
}

@media only screen and (min-width: 1160px) {
	.other-aktsii-content {
		flex-direction: row;
		/* justify-content: space-between; */
		margin-right: -40px;
	}
	
	.aktsiya-card .h3 {
		font-size: 30px;
		font-weight: 700;
		line-height: 34px;
	}
	
	.aktsiya-card {
		margin: 0 0 40px 0;
		width: 360px;
		height: 480px;
	}
	
	.other-aktsii-container {
		margin: 15px 0 30px 0;
	}
	
	
	.aktsiya-item {
		margin-right: 40px;
	}
}


/* Страница акции простая конец */

/* Акции конец */



/* Виды тренировок на странице услуги */

.usluga-header {
	padding: 20px 0 0 0; 
}

.usluga-header .button {
	text-decoration: none;
	font-size: 16px;
	line-height: 24px;
	font-weight: 600;
}

.usluga-header-image img {
	border-radius: 15px;
	display: block;
	width: 100%;
	object-fit: cover;
	aspect-ratio: 4 / 3;
}

.usluga-header-headline {
	font-size: 24px;
	line-height: 24px;
	margin: 20px 0;
}

.usluga-cities-headline {
	font-size: 14px;
	line-height: 20px;
	margin: 40px 0 10px 0;
	font-weight: bold;
}


.usluga-header-text {
	margin: 20px 0 40px 0;
}

.usluga-header {
	margin: 0 0 40px 0;
}

.fishki-container {
	margin: 20px 0 40px 0;
}

.fishki-headline {
	font-size: 24px;
	line-height: 24px;
	margin: 10px 0;
	font-weight: 700;
}

.fishka-kard {
	padding: 20px 10px;
	border-radius: 20px;
	margin: 0 0 10px 0;
}

.fishka-kard img {
	display: block;
	width: 180px;
	border-radius: 50%;
	margin: 20px auto 40px auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

.fishka-kard h3,
.fishka-kard-h3 {
	font-size: 18px;
	line-height: 24px;
	margin: 10px 0;
	font-weight: 700;
}

.fishka-kard p {
	font-size: 14px;
	line-height: 20px;
	margin: 10px 0;
}

.fishka-kard-left {
	background-color: #C1C1F8;
}

.fishka-kard-center {
	background-color: #6FADF7;
}

.fishka-kard-right {
	background-color: #CCF2F4;
}

.child-page-item {
	display: block; /* или flex/grid в зависимости от вашей вёрстки */
	margin-bottom: 20px;
}
.child-page-item.hidden {
	display: none;
}

.child-page-item {
    transition: all 0.3s ease;
}


.vidy-trenirovok-headline {
	margin: 20px 0 10px 0;
	font-size: 24px;
	line-height: 24px;
	font-weight: 700;
}

.child-page-content h3,
.child-page-content-h3 {
	font-size: 18px;
	line-height: 24px;
	margin: 10px 0;
	font-weight: 700;
}

.child-page-content p {
	font-size: 14px;
	line-height: 20px;
	margin: 10px 0;
}

.vidy-trenirovok-container {
	margin: 0 0 40px 0;
}

.drugie-uslugi-headline {
	font-size: 24px;
	line-height: 24px;
	margin: 40px 10px 10px 10px;
	font-weight: 700;
}



@media only screen and (min-width: 1160px) {
	/* Виды тренировок на странице услуги */
	.usluga-header {
		display: flex;
		justify-content: space-between;
		margin-bottom: 80px;
	}
	
	.usluga-header-image,
	.usluga-header-content {
		width: 560px;
	}
	
	.fishki-container-content {
		display: flex;
		justify-content: space-between;
	}
	
	.fishka-kard {
		width: 373px;
	}
	
	.vidy-trenirovok-container {
		column-count: 3;
		column-gap: 1%;
		orphans: 2;
		widows: 2;
		column-fill: balance;
	}

	.child-page-item {
		break-inside: avoid; /* Основное свойство для предотвращения разрыва */
		page-break-inside: avoid; /* Для старых браузеров */
		margin-bottom: 20px; /* Отступ между блоками */
	}

	.child-page-content {
		display: inline-block; /* Помогает с предотвращением разрывов */
		width: 100%; /* Занимает всю доступную ширину */
	}
	/* Виды тренировок на странице услуги */
}




/* Страница контактов */
.contacts-container {
	margin: 10px 0 40px 0;
}

.contacts-content {
	padding: 15px;
	background-color: #8246FF;
	border-radius: 20px;
	color: #fff;
	margin: 0 0 20px 0;
}

.contacts-content .footer-social-medias {
	margin-top: 0;
}

.contacts-content a {
	text-decoration: none;
	color: #fff;
}

.contacts-clubs {
	background-color: #F0F1F3;
	padding: 30px 15px 15px 15px;
	border-radius: 20px;
	margin-bottom: 20px;
}

.contacts-clubs-list {
	padding-bottom: 30px;
}

.contacts-content p {
	margin: 20px 0;
}

.contacts-klubi-bright-fit-na-karte {
	position: relative;
	height: 160px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 -15px -15px -15px;
	background: #000;
	border-radius: 20px;
}

.contacts-image-klubi-bright-fit-na-karte {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
	border-radius: 20px;
	opacity: 0.8;
}

.contacts-klubi-bright-fit-na-karte .button {
	z-index: 3;
	text-decoration: none;
}

@media only screen and (min-width: 1160px) {
	.contacts-container {
		margin: 35px 0 40px 0;
		display: flex;
		justify-content: space-between;
	}
	
	.contacts-content,
	.contacts-clubs {
		width: 560px;
	}
	
	.contacts-content {
		margin: 0;
		border-radius: 40px;
		padding: 40px;
	}
	
	.contacts-content .footer-social-medias {
		margin-top: 100px;
	}
	
	.contacts-clubs {
		display: flex;
		justify-content: space-between;
		margin-bottom: 0;
		border-radius: 40px;
		padding: 40px;
	}
	
	.contacts-klubi-bright-fit-na-karte {
		width: 210px;
		margin: -40px -40px -40px 0;
		height: inherit;
	}
	
	.contacts-clubs-list {
		width: 290px;
		padding-bottom: 0;
	}
	
	.contacts-clubs-list h2,
	.contacts-clubs-list-h2	{
		font-size: 34px;
		font-weight: 700;
		line-height: 36px;
	}
	
	.contacts-image-klubi-bright-fit-na-karte {
		border-radius: 40px;
	}
	
	.contacts-klubi-bright-fit-na-karte {
		border-radius: 40px;
	}
	
	.clubs-list {
		margin: 18px 0 25px 0;
	}
}


.contact-form-wraper {
	padding: 10px;
	position: relative;
}

.contact-form-wraper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.contact-form-container {
	background: #F0F1F3 center center url('/wp-content/themes/bright-fit/images/contact-form-gradient-background.png') no-repeat;
	border-radius: 20px;
	padding: 25px 15px 30px 15px;
}

.contact-form-container  form {
	margin: 20px 0 0 0;

}

.contact-form-container h2,
.contact-form-text-h2,
.contact-form-container p,
.contact-form-container form {
	position: relative;
    z-index: 2;
}

.contact-form-container p {
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
}

.contact-form-container h2 {
	margin-bottom: 5px;
	font-weight: 800;
}

.wpcf7-acceptance .wpcf7-list-item {
	margin-right: 20px!important;
}

.contact-form-image-spiral-desctop {
	display: none;
}

.contact-form-container textarea {
	margin-top: 25px;
	height: 160px;
	margin-bottom: 20px;
}

.contact-form-container .button {
	margin-top: 10px;
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
}


	/* Чекбокс согласия (на всю ширину) */
	.contact-form-container .wpcf7-form > p:nth-child(9) {
		grid-column: 1 / -1 !important;
		grid-row: 5 !important;
		position: relative;
		left: -10px;
		top: 10px;
		margin-bottom: 10px;
	}
	
	.contact-form-container .wpcf7-form > p:nth-child(10) {
		grid-column: 1 / -1 !important;
		grid-row: 6 !important;
		position: relative;
		left: -10px;
		top: 10px;
		margin-bottom: 10px;
	}
	
	.contact-form-container .wpcf7-form > p:nth-child(11) {
		grid-column: 1 / -1 !important;
		grid-row: 7 !important;
		position: relative;
		left: -10px;
		top: 10px;
		margin-bottom: 10px;
	}


@media only screen and (min-width: 1160px) {
	.contact-form-image-spiral-desctop {
		display: block;
		left: 120px!important;
	}
	
	.contact-form-image-spiral-mobile {
		display: none;
	}
	
	.contact-form-wraper img {
		object-fit: contain;
	}
	
	.contact-form-wraper {
		padding: 40px 0;
		margin: 0;
	}
	
	.contact-form-container {
		display: flex;
		border-radius: 40px;
		padding: 60px 60px 40px 60px;
	}
	
	.contact-form-text {
		min-width: 311px;
		margin-right: 170px;
	}
	
	.contact-form-text h2,
	.contact-form-text-h2	{
		font-size: 34px;
		font-weight: 700;
		line-height: 36px;
		margin-bottom: 20px;
	}
	
	
	.contact-form-container .wpcf7-form {
		display: grid !important;
		grid-template-columns: 1fr 1fr !important;
		column-gap: 10px !important;
		margin-top: 0;
	}

	/* Имя (первая колонка) и текстареа (вторая колонка) */
	.contact-form-container .wpcf7-form > p:nth-child(2) {
		grid-column: 1 !important;
		grid-row: 1 !important;
	}

	.contact-form-container .wpcf7-form > p:nth-child(7) {
		grid-column: 2 !important;
		grid-row: 1 / span 5 !important; /* Текстареа занимает 3 строки */
	}

	/* Телефон (первая колонка) */
	.contact-form-container .wpcf7-form > p:nth-child(3) {
		grid-column: 1 !important;
		grid-row: 2 !important;
	}

	/* Почта (первая колонка) */
	.contact-form-container .wpcf7-form > p:nth-child(4) {
		grid-column: 1 !important;
		grid-row: 3 !important;
	}
	
	.contact-form-container .wpcf7-form > p:nth-child(5) {
		grid-column: 1 !important;
		grid-row: 4 !important;
	}

	.contact-form-container .wpcf7-form > p:nth-child(6) {
		grid-column: 1 !important;
		grid-row: 5 !important;
	}

	/* Кнопка (занимает вторую колонку под текстареа) */
	.contact-form-container .wpcf7-form > p:nth-child(8) {
		grid-column: 2 !important;
		grid-row: 6 !important;
		top: 0;
		left: 0;
	}
	
	.contact-form-container textarea {
		margin-top: 0;
	}


	/* Чекбокс согласия (на всю ширину) */
	.contact-form-container .wpcf7-form > p:nth-child(9)
	{
		grid-column: 1 / -1 !important;
		grid-row: 7 !important;
		position: relative;
		left: -10px;
		top: 10px;
	}
	
	.contact-form-container .wpcf7-form > p:nth-child(10)
	{
		grid-column: 1 / -1 !important;
		grid-row: 8 !important;
		position: relative;
		left: -10px;
		top: 10px;
	}
	
	.contact-form-container .wpcf7-form > p:nth-child(11)
	{
		grid-column: 1 / -1 !important;
		grid-row: 9 !important;
		position: relative;
		left: -10px;
		top: 10px;
	}
	
	.contact-form-container .wpcf7-textarea {
		height: calc(100% - 10px) !important;
		min-height: 140px !important;
	}
	
	.contact-form-container .button {
		margin-top: 10px;
		font-size: 16px;
		font-weight: 600;
		line-height: 24px;
	}
	
}


/* Страница контактов */









/* тест метода вывода клубных карт / клубные карты */

.club-cards {
	margin-top: 35px;
}
/* Основные стили фильтров 


.bitafit-filters {
    margin-bottom: 30px;
}

.bitafit-filter-select {
    padding: 10px 15px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 16px;
    min-width: 250px;
    margin-bottom: 15px;
}
*/

.club-karti-filter-container-right-bottom .cities-container {
	align-items: flex-start;
}


.club-karti-filter-container-right-bottom .bitafit-filter-select {
	min-width: 130px;
    border: 1px solid #ddd;
	font-size: 12px;
}


.bitafit-toggle-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 15px;
}

.bitafit-toggle-btn {
    padding: 8px 15px;
    background: #f5f5f5;
    border: 1px solid #ddd;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 14px;
}

.bitafit-toggle-btn:hover {
    background: #e9e9e9;
}

.bitafit-toggle-btn.active {
    background: #3498db;
    color: white;
    border-color: #2980b9;
}

/* Стили состояния загрузки */
.bitafit-loading,
.bitafit-loading-initial {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #555;
}

.bitafit-spinner {
    border: 3px solid #f3f3f3;
    border-top: 3px solid #3498db;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    animation: bitafit-spin 1s linear infinite;
}

@keyframes bitafit-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Стили попапа */
.club-karti-popup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: none;
    align-items: flex-end;
    justify-content: center;
    z-index: 99999999;
    overflow-y: auto;
}

.club-karti-popup-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 1;
}

.club-karti-popup-container {
    position: relative;
    background: white;
    width: 100%;
    max-width: 800px;
    max-height: 80vh;
    padding: 30px;
    border-radius: 20px 20px 0 0;
    transform: translateY(100%);
    transition: transform 0.3s ease-out;
    z-index: 2;
    overflow-y: auto;
    box-shadow: 0 -5px 20px rgba(0, 0, 0, 0.2);
}

.club-karti-popup.active .club-karti-popup-container {
    transform: translateY(0);
}

.club-karti-popup-close {
    position: absolute;
    top: 15px;
    right: 15px;
    font-size: 30px;
    cursor: pointer;
    color: #333;
    z-index: 3;
}

.club-karti-popup-content {
    padding: 20px;
}

.club-karti-popup-content h3 {
    margin-top: 0;
    color: #333;
    font-size: 24px;
}

.club-karti-popup-price {
    font-size: 18px;
    margin: 20px 0;
}

.club-karti-popup-feature {
    margin: 15px 0;
    display: flex;
    align-items: center;
    font-size: 16px;
}

.club-karti-popup-feature img {
    margin-right: 10px;
    width: 24px;
    height: 24px;
}

/* Адаптивность */
@media (max-width: 768px) {
    .bitafit-toggle-filters {
        flex-direction: column;
    }
    
    .bitafit-toggle-btn {
        width: 100%;
    }
    
    .bitafit-filter-select .bitafit-filter-select {
        width: 100%;
    }
    
    .club-karti-popup-container {
        padding: 20px 15px;
        max-height: 90vh;
    }
    
    .club-karti-popup-content {
        padding: 10px;
    }
    
    .club-karti-popup-close {
        top: 10px;
        right: 10px;
        font-size: 25px;
    }
}



/* попап с подробной инфой по карте */



.club-card-details-popup-container {
	width: 100vw;
	height: 100vh;
	position: absolute;
	background: #fff;
	overflow: auto;
	z-index: 9;
	display: block;
}

.club-card-details-popup-close {
	display: flex;
	flex-direction: row-reverse;
	margin: 20px 0;
}

.club-card-details-popup-close-icon {
	display: block;
	border-radius: 15px;
	padding: 10px;
	background-color: #F0F1F3;
	cursor: pointer;
}

.club-card-details-popup-image img {
	display: block;
	width: 100%;
	border-radius: 15px;
	height: 190px;
	object-fit: cover;
}
/*
.club-card-details-popup-image {
	margin: 0 -10px;
}
*/

.club-card-details-popup-text h2 {
	margin: 20px 0;
	font-weight: 800;
	line-height: 28px;
}

.club-card-details-popup-text ul {
	margin: 20px 0;
}

.club-card-details-popup-text li {
	margin: 0 20px;
}

.club-karti-card-icon-text b {
	display: block;
}

.club-card-details-popup-icon-text {
	display: block;
	padding: 15px;
	border: 1px solid #DADDE1;
	background-color: #F0F1F3;
	border-radius: 15px;
	margin: 0 10px 0 0;
}

.club-card-details-popup-text .club-karti-card-icon-text {
	display: flex;
	align-items: center;
	margin: 0 0 20px 0;
}


.card-details-container {
	background-color: #F0F1F3;
	border-radius: 20px;
	padding: 20px;
	margin: 40px 0;
}

.card-details-price {
	color: #8246FF;
	font-size: 18px;
	font-weight: 700;
	border-bottom: 1px solid #BEC4CB;
	margin-bottom: 20px;
}

.card-details-price span {
	color: #98A2AE;
	font-size: 12px;
	font-weight: 600;
	text-decoration: line-through;
}

.card-details-count-down-text {
	text-align: center;
	display: none;
}

.card-details-count-down-content {
	display: flex;
	justify-content: center;
	margin-bottom: 10px;
}

.card-details-count-down-day,
.card-details-count-down-hour,
.card-details-count-down-minute {
	background-color: #fff;
	padding: 20px;
	text-align: center;
	width: 80px;
}

.card-details-count-down-day #countdown-days,
.card-details-count-down-hour #countdown-hours,
.card-details-count-down-minute #countdown-minutes {
	color: #00BDC7;
	font-size: 18px;
	font-weight: 700;
}

.card-details-count-down-day span,
.card-details-count-down-hour span,
.card-details-count-down-minute span {
	color: #98A2AE;
	font-size: 12px;
	font-weight: 600;
	display: block;
}

.card-details-count-down-day {
	border-radius: 15px 5px 5px 15px;
}

.card-details-count-down-hour {
	border-radius: 5px;
	margin: 0 4px;
}

.card-details-count-down-minute {
	border-radius: 5px 15px 15px 5px;
}

.club-card-details-popup-text p {
	margin: 20px 0;
}


@media only screen and (min-width: 1160px) {
	.club-card-details-popup-content {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	
	.club-card-details-popup-image img {
		border-radius: 40px;
		height: 332px;
		object-fit: cover;
	}
	
	.club-card-details-popup-image {
		width: 560px;
	}

	.club-card-details-popup-text {
		width: 560px;
	}
	
	.club-card-details-popup-text h2 {
		font-weight: 700;
		line-height: 36px;
		font-size: 34px;
	}

	.card-details-container {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.card-details-price {
		font-size: 24px;
		margin-bottom: 20px;
		border: 0;
	}
	.card-details-price span {
		display: block;
	}

	.card-details-count-down-container {
		display: flex;
		flex-direction:  row-reverse;
		align-items: center;
	}

	.card-details-count-down-text {
		margin: 0 40px 0 0;
		width: 80px;
		text-align: right;
	}
}



/* попап с подробной инфой по карте */

/* Анимация и базовые стили попапа */
.club-card-details-popup-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: #fff;
    overflow-y: auto;
    z-index: 99999999999;
    display: none;
    opacity: 0;
    transform: translateY(100%);
    transition: opacity 0.3s ease, transform 0.3s ease;
	padding: 0 0 0 0;
	scroll-behavior: smooth;
}

.club-card-details-popup-container .club-oformit-kartu {
	padding-bottom: 270px;
}

.club-card-details-popup-container .main-container {
	margin-top: -66px;
}

.club-card-details-popup-container.active {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

/* Запрет прокрутки основного контента */
body.popup-open {
    overflow: hidden;
}


/* Карта с клубами */

.map-form-wraper {
	margin-top: 40px;
}

.ymaps-2-1-79-balloon {
	box-shadow: none!important;
}

.ymaps-2-1-79-balloon__layout {
	border: 0;
	border-radius: 20px;
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .15), 0 5px 15px -7px rgba(0, 0, 0, .5);
}

.yandex-map {
	max-width: 1160px;
	height: 65vh;
	margin: 0 auto;
	font-family: 'Nunito Sans Variable', sans-serif!important;
}



/*
.ymaps-2-1-79-events-pane, 
.ymaps-2-1-79-user-selection-none,
.ymaps-2-1-79-map, 
.ymaps-2-1-79-i-ua_js_yes, 
.ymaps-2-1-79-map-bg, 
.ymaps-2-1-79-islets_map-lang-ru
{
	background: none!important;
}
*/

.map-club-headline {
	font-family: 'Nunito Sans Variable', sans-serif!important;
	font-size: 16px!important;
	font-weight: 600!important;
	line-height: 0px;
	margin: 14px 0;
}

.ymaps-2-1-79-inner-panes {
	border-radius: 40px!important;
	background-color: #00BDC7;
}

@media only screen and (max-width: 1160px) {
	.ymaps-2-1-79-inner-panes {
		border-radius: 20px!important;
	}
}

.ymaps-2-1-79-balloon__tail:after,
.ymaps-2-1-79-b-cluster-tabs__item-footer .ymaps-2-1-79-b-cluster-content__footer {
	display: none;
}

.ymaps-2-1-79-b-cluster-tabs__section_type_nav {
	width: 200px!important;
}

.club-map-image {
	height: 130px;
	border-radius: 15px;	
	display: block;
	margin: 0 0 4px 0;
}

.ymaps-2-1-79-balloon__close+.ymaps-2-1-79-balloon__content {
	margin-right: 0!important;
	padding: 20px!important;
}

.map-club-link {
	text-decoration: none!important;
	color: #000!important;
	font-size: 14px!important;
	font-weight: 400!important;
}

.map-club-link p {
	opacity: .5;
}

.ymaps-2-1-79-b-cluster-tabs__menu-item_current_yes .map-club-headline {
	color: #00BDC7!important;
}

.ymaps-2-1-79-b-cluster-tabs__menu-item .map-club-headline {
	color: #000;
	font-size: 14px!important;
}

.ymaps-2-1-79-balloon__close-button {
	position: relative;
	left: -12px;
	bottom: -8px;
	transition: opacity .3s ease-in-out!important;
}

.ymaps-2-1-79-b-cluster-tabs__menu-item_current_yes {
	background: rgb(255 255 255 / .0)!important;
	color: #00BDC7!important;
}

.ymaps-2-1-79-map-copyrights-promo,
.ymaps-2-1-79-copyright__wrap {
	display: none!important;
}

/* Карта с клубами */



/* Оплата по SMS */

.oplata-iz-sms {
	margin-top: 15px;
}



.oplata-iz-sms-form-zayavka,
.oplata-iz-sms-form-oplata {
	background-color: #F0F1F3;
	border-radius: 20px;
	padding: 20px;
	margin: 20px 0;
}

.oplata-iz-sms-form-zayavka {
	padding-top: 5px;
}

.oplata-iz-sms-form-oplata {
	padding-top: 1px;
}

.oplata-iz-sms-form-oplata {
	background-color: #CECAEE;
}

.oplata-iz-sms-form-zayavka small,
.oplata-iz-sms-form-oplata small {
	font-size: 12px;
	line-height: 14px;
}


.oplata-iz-sms-forms-container h2,
.oplata-iz-sms-forms-container-h2 {
	margin: 20px 0;
	font-size: 24px;
	font-weight: 700;
	line-height: 24px;
}

.oplata-iz-sms p {
	margin: 10px 0 20px 0;
}

.oplata-iz-sms-docs-container a {
	/* color: #141E32;
	text-decoration: none; */
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
}

.oplata-iz-sms-docs-container a:hover {
	color: #00BDC7;
}

.zakaz-ne-naiden {
	margin: 40px 0;
}

.zakaz-details {
	margin: 40px 0;
}

.zakaz-details table {
	table-layout: auto;
	width: 100%; 
}

.zakaz-details-itogo td {
	font-weight: 700;
	padding: 20px 0 0 0;
}

.bank-cards-info {
	background-color: #fff;
	padding: 20px;
	margin: 40px 0;
	border-radius: 20px;
}

.oplata-iz-sms-form-zayavka .button {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
}

.oplata-iz-sms-form-oplata button {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
	width: 100%;
}

.oplata-iz-sms-form-oplata input {
	margin-bottom: 15px;
}

@media only screen and (min-width: 1160px) {
	
	.oplata-iz-sms {
		margin-top: 35px;
	}
	
	.oplata-iz-sms-text {
		max-width: 560px;
		font-size: 16px;
		line-height: 24px;
		font-weight: 600;
	}
	
	.oplata-iz-sms p {
		margin: 20px 0 20px 0;
	}
	
	.oplata-iz-sms-forms-container {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	
	.oplata-iz-sms-form-zayavka,
	.oplata-iz-sms-form-oplata {
		width: 560px;
		border-radius: 40px;
		padding: 20px 40px 40px 40px;
	}
	
	.oplata-iz-sms-form-oplata-inner-wraper {
		width: 270px;
	} 
	
	.oplata-iz-sms-form-zayavka form p {
		margin: 0!important;
	}
	
	.oplata-iz-sms-form-zayavka input,
	.oplata-iz-sms-form-zayavka select {
		margin-bottom: 13px; 
		max-width: 270px;
	}
	
	.oplata-iz-sms-form-zayavka select {
		margin-bottom: 20px;
	}
	
	.oplata-iz-sms-form-zayavka .button {
		margin-top: 20px!important;
		max-width: 270px;
		font-size: 16px;
		font-weight: 600;
		line-height: 24px;
	}
	
	.oplata-iz-sms-form-zayavka .wpcf7-form > p:nth-child(8) input {
		margin-bottom: inherit!important;
	}
	
	.oplata-iz-sms-form-zayavka .wpcf7-form > p:nth-child(8) {
		position: relative!important;
		top: 10px!important;
		/* left: -10px!important; */
	}
	
	.oplata-iz-sms-form-zayavka .wpcf7-form > p:nth-child(9) {
		margin: 25px 0 0 0!important;
	}
	
	.oplata-iz-sms-form-zayavka .wpcf7-form > p:nth-child(9) input {
		margin-bottom: 0!important;
	}
	
	.oplata-iz-sms-form-oplata button {
		margin-top: 15px!important;
		font-size: 16px;
		font-weight: 600;
		line-height: 24px;
	}
	
	.oplata-iz-sms-docs-container {
		margin-top: 30px;
	}
	
	.oplata-iz-sms-form-oplata input {
		margin-bottom: 5px;
	}
}

/* Оплата по SMS */



/* Оплата */

.zakaz-details,
.zakaz-ne-naiden {
    display: none;
}

/* Оплата */


/* попап со статусом оплаты */
/* Payment Modal Styles */
.payment-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
}

.payment-modal__overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.7);
}

.payment-modal__content {
    position: relative;
    background: #fff;
    border-radius: 40px;
    max-width: 560px;
    width: 90%;
    padding: 30px;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2);
    animation: modalFadeIn 0.3s ease;
}

@keyframes modalFadeIn {
    from { opacity: 0; transform: translateY(-20px); }
    to { opacity: 1; transform: translateY(0); }
}

.payment-modal__close {
    position: absolute;
    top: 15px;
    right: 15px;
    background: none;
    border: none;
    font-size: 24px;
    cursor: pointer;
    color: #999;
    transition: color 0.2s;
	display: none;
}

.payment-modal__close:hover {
    color: #333;
}

.payment-status {
    display: none;
}

.payment-status__icon {
    width: 100px;
    height: 100px;
    margin: 0 0 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/*
.payment-status--success .payment-status__icon {
    background-color: #e8f5e9;
    color: #4caf50;
}

.payment-status--error .payment-status__icon {
    background-color: #ffebee;
    color: #f44336;
}

.payment-status--not-found .payment-status__icon {
    background-color: #fff8e1;
    color: #ffc107;
}
*/

.payment-status__title {
    font-size: 22px;
    margin-bottom: 10px;
    color: #333;
}

.payment-status__message {
    color: #666;
    margin-bottom: 25px;
    line-height: 1.5;
}

.payment-modal__button {
    display: block;
    padding: 12px 24px;
    color: white;
    border: none;
    font-size: 16px;
    cursor: pointer;
    transition: background 0.2s;
}

/* Error button state 
.payment-modal__content.error-state .payment-modal__button {
    background: #f44336;
}

.payment-modal__content.error-state .payment-modal__button:hover {
    background: #d32f2f;
}
*/	

/* Not found button state */
.payment-modal__content.not-found-state .payment-modal__button {
    background: #ffc107;
    color: #333;
}

.payment-modal__content.not-found-state .payment-modal__button:hover {
    background: #ffb300;
}
/* попап со статусом оплаты */





/* main banner */

.main-banner-wraper {
	transition: opacity .2s ease-in-out;
}

.main-banner.white-text {
    color: #fff;
}

.aktsiya-card.white-text .h3 {
    color: #fff;
}


/* кнопки переключения слайдов */

/* Кнопки навигации слайдера */
.slider-nav-buttons {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
    display: none; /* По умолчанию скрыты */
}

@media (min-width: 1160px) {
    .slider-nav-buttons {
        display: block; /* Показываем только на десктопе */
    }
}

.slider-nav-button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-image: linear-gradient(90deg, #141E32, rgba(0, 187, 197, 0.2));
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    pointer-events: auto;
    padding: 12px;
    margin: 0 20px;
}

.slider-nav-button img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.prev-button {
    left: 0;
}

.next-button {
    right: 0;
}

/* кнопки переключения слайдов */


/* main banner */



/* выпадающий список с клубами cf7 */
/* выпадающий список с клубами cf7 */



/* лайтбокс для галереи клуба */

/* Лайтбокс стили */
.lightbox {
    display: none;
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    overflow: auto;
}

.lightbox-content {
    position: relative;
    margin: auto;
    padding: 20px 0;
    max-width: 813px;
    width: 90%;
    /* height: 90vh; */
    display: flex;
    flex-direction: column;
}

.close-lightbox {
    position: absolute;
    top: 20px;
    right: -10px;
    color: white;
    font-size: 35px;
    font-weight: bold;
    cursor: pointer;
    z-index: 10;
	background-color: #FFFFFF;
	border: 1px solid #DADDE1;
	padding: 8px;
	border-radius: 15px;
	transition: background-color .2s ease-in-out;
}

.close-lightbox:hover {
	background-color: #F0F1F3;
}

.close-lightbox img {
	display: block;
}

.main-image-container {
    flex-grow: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 20px;
    position: relative;
    overflow: hidden;
	border-radius: 40px;
}

#lightbox-main-image {
    /*max-height: 80vh;*/
	height: 480px;
    width: 100%;
    object-fit: cover;
    border-radius: 40px; /* Добавьте эту строку */
}



.main-image-container img {
    object-fit: cover;
}

.thumbnails-container {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding: 10px 0;
	overflow: auto;
	-ms-overflow-style: none;  /* IE и Edge */
	scrollbar-width: none;      /* Firefox */
}

.thumbnails-container::-webkit-scrollbar {
  display: none;  /* Chrome, Safari, Opera */
}

.thumbnail {
    width: 107px;
    height: 80px;
    cursor: pointer;
    position: relative;
    flex-shrink: 0;
    border-radius: 20px; /* Добавьте эту строку */
    overflow: hidden; /* Добавьте это, чтобы изображения внутри тоже скруглялись */
}

.thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.video-thumbnail {
    position: relative;
}

.play-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	width: 93px;
}

.video-container {
    width: 100%;
    /*height: 100%;*/
    height: 480px;
    position: relative;
    padding-bottom: 56.25%; /* 16:9 Aspect Ratio */
	border-radius: 40px;
}

.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* Иконка увеличения в слайдере */
.club-photo-container {
    position: relative;
    cursor: pointer;
	margin-left: 10px;
	margin-right: 10px;
}

.club-photo-container:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60px;
    height: 60px;
    background-image: url('/wp-content/themes/bright-fit/images/club-galery-fullscreen-icon.svg');
    background-size: contain;
    background-repeat: no-repeat;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.club-photo-container:hover:after {
    opacity: 1;
}

/* Стили для навигации лайтбокса */
.lightbox-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    cursor: pointer;
}

.lightbox-prev {
    left: 20px;
}

.lightbox-next {
    right: 20px;
}

.nav-circle {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: linear-gradient(90deg, #141E32, rgba(0, 187, 197));
}

/* .nav-circle img {
    width: 16px;
    height: 16px;
} */

@media (max-width: 768px) {
    .lightbox-nav {
        display: none;
    }
}


/*
.club-karti-filter-container {
    display: none;
} */


.thumbnails-container .thumbnail {
	border: 2px solid rgb(0 0 0 / .0);
	transition: .2s ease-in-out;
}

.thumbnails-container .thumbnail:hover {
	border: 2px solid #00BDC7;
}

.thumbnails-container .active {
	border: 2px solid #fff;
}


/* лайтбокс для галереи клуба */


/* pointer scroll */

/* pointer scroll */






/* vf7 message box as popup */
/* vf7 message box as popup */




/* web stories */

/* Web Stories */

#web-stories-container {
    height: 80px;
    margin: 20px 0 41px 0;
    opacity: 0;
    transform: translateY(30px);
    animation: fadeInUp 0.4s ease-in-out 0.8s forwards;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.web-stories-list__story-poster a,
.web-stories-list__story-poster a:hover {
	border: 0;
}

/* #web-stories-container .glider-track {
	padding-left: 4%;
	padding-right: 4%;
} */

#web-stories-container .web-stories-list {
	margin: 0;

}

.web-stories-list__story-poster a>img {
	/*border-color: #000!important;*/
	transition: .2s ease-in-out;
  /* background: linear-gradient(90deg, #e0e0e0 25%, #f0f0f0 50%, #e0e0e0 75%);
  background-size: 200% 100%;
  animation: gradient-loading 1.5s infinite ease-in-out; */
}

.web-stories-list__story-poster a>img:hover {
	border-color: #00BDC7!important;
}

.web-stories-list__story-content-overlay {
	padding: 10px 0!important;
}

/* @keyframes gradient-loading {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
} */

.web-stories-list.is-view-type-circles .web-stories-list__story-poster a>img {
	border-radius: 22px!important;
}

.story-content-overlay__title {
	font-size: 12px!important;
	line-height: 14px!important;
	font-weight: 600!important;
	font-family: 'Nunito Sans Variable', sans-serif!important;
}

.web-stories-list.is-carousel .web-stories-list__carousel {
	align-items: start!important;
}

.story-content-overlay__title {
	min-height: 30px!important;
}


.web-stories-list.is-carousel .web-stories-list__carousel::scroll-button(*) {
	display: none;
}

.web-stories-list__carousel {
	padding: 0 10px!important;
}

/* Web Stories */

/* web stories */




/*form for club card*/

.club-card-details-form-container {
	
}
/*form for club card*/

/* club cards - cards groups headline*/
.club-cards-group-header {
	width: 1160px;
}
/* club cards - cards groups headline*/




/* Карьера */




.kariera-container {
	margin-top: 10px;
}

.kariera-container .club-photo-container {
	margin-left: 0;
	margin-right: 0;
}

.kariera-container .kariera-photo-slider-text {
	padding: 20px 15px 20px 15px;
}



.kariera-intro-video video {
	border-radius: 20px;
	height: 254px;
	width: 100%!important;
	object-fit: cover!important;
}

.kariera-intro-text {
	margin: 0 15px 40px 15px;
}

.kariera-intro-text .has-text-align-center {
	text-align: left!important;
}

.kariera-intro-text h1 {
	margin-top: -25px;
}

.kariera-intro-text p {
	margin: -10px 0 0 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
}

.kariera-intro-text a {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
	margin-top: -20px;
}

@media only screen and (min-width: 1160px) {
	
	.kariera-container .kariera-photo-slider-text {
		padding: 0;
	}
	
	.kariera-intro-text h1 {
		margin-top: 0;
	}
	
	.kariera-intro-text a {
		margin-top: 0;
	}
	
	.kariera-intro-text {
		margin-left: 0;
		margin-right: 0;
	}
	
	.kariera-intro-text .has-text-align-center {
		text-align: center!important;
	}
	
	.kariera-container {
		margin-top: 35px;
	}
	
	.kariera-intro-video video {
		border-radius: 40px;
		height: 480px;
		width: 100%!important;
		object-fit: cover!important;
	}
	
	.kariera-container .club-headline {
		margin-top: 80px;
	}

	.kariera-intro-text p {
		max-width: 560px;
		margin: 0 auto;
		font-size: 16px;
		font-weight: 600;
		line-height: 24px;
	}
	
	.kariera-intro-text a {
		font-size: 16px;
		font-weight: 600;
		line-height: 24px;
	}
	
	.kariera-container .kariera-photo-slider-text h2,
	.kariera-container .kariera-photo-slider-text-h2	{
		font-size: 34px;
		font-weight: 800;
		line-height: 36px;
		margin-top: 40px;
		margin-bottom: 20px;
	}
}

.kariera-photo-slider-text {
	max-width: 560px;
}

.bud-yarkim-rabotaj-v-brajte {
	border-radius: 20px;
	display: block;
	max-width: 100%;
	margin-bottom: 35px;
}

.usloviya-i-plyushki-header,
.usloviya-i-plyushki-header-h2 {
	text-align: center;
	margin: 40px 0 20px 0;
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
}

.usloviya-i-plyushki-container {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 0 10px;
}

.usloviya-i-plyushki-item img {
	display: block;
	margin: 0 auto 15px auto;
}

.usloviya-i-plyushki-item {
	text-align: center;
	width: 49%;
	margin: 0 0 40px 0;
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
}

.hh-karier-page {
	border-radius: 20px;
	background-color: #F0F1F3;
	margin: 50px 0 30px 0;
	text-align: center;
	padding: 20px;
}

.hh-karier-page h3,
.hh-karier-page-h3 {
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
	margin-top: -50px;
}

.hh-karier-page a {
	display: inline-block;
	margin: 20px 0 0 0;
	width: 100%;
}

.hh-karier-page img {
	position: relative;
	width: 100px;
	display: block;
	margin: 0 auto;
	top: -70px;
}

.form-karier-page {
	padding: 15px;
	margin: 40px 0;
	background-color: #CECAEE;
	border-radius: 20px;
}

.form-karier-page h3,
.form-karier-page-h3 {
	font-size: 24px;
	font-weight: 800;
	line-height: 24px;
	margin: 10px 0 10px 0;
}

.form-karier-page .button {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
	margin: 20px 0;
}


.form-karier-page-text {
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
	margin-bottom: 23px;
}

.hh-form-karier-page-container {
	margin-left: 10px;
	margin-right: 10px;
}


@media only screen and (min-width: 1160px) {
	
	.usloviya-i-plyushki-item img {
		margin: 0 auto 25px auto;
	}
	
	.usloviya-i-plyushki-header,
	.usloviya-i-plyushki-header-h2	{
		text-align: center;
		margin: 60px 0 60px 0;
		font-size: 34px;
		font-weight: 800;
		line-height: 36px;
	}
	
	.form-karier-page h3,
	.form-karier-page-h3	{
		margin-bottom: 10px;
		font-size: 34px;
		font-weight: 700;
		line-height: 36px;
	}
	
	.form-karier-page-text {
		font-size: 14px;
		font-weight: 600;
		line-height: 20px;
		margin-bottom: 20px;
	}
	
	.hh-karier-page a {
		display: inline-block;
		margin: 40px 0 40px 0;
		width: inherit;
		font-size: 14px;
		font-weight: 600;
		line-height: 20px;
	}
	
	.hh-karier-page h3,
	.hh-karier-page-h3	{
		margin-top: 20px;
		font-size: 34px;
		font-weight: 700;
		line-height: 36px;
	}
	
	.usloviya-i-plyushki-item {
		width: 117px;
		margin: 0 0 20px 0;
	}
	
	.hh-form-karier-page-container {
		margin: 40px 0 0 0;
		display: flex;
		justify-content: space-between;
	}
	
	.hh-karier-page,
	.form-karier-page {
		max-width: 560px;
		margin: 0;
		border-radius: 40px;
		padding: 40px 20px 20px 20px;
	}
	
	.form-karier-page {
		padding: 40px;
	}
	
	.hh-karier-page img {
		top: 0;
		width: 120px;
	}
	
	.form-karier-page .wpcf7-form {
		display: grid !important;
		grid-template-columns: 1fr 1fr !important;
		grid-template-rows: auto auto auto auto !important;
		column-gap: 8px !important;
	}

	/* Первый <p> - поле имени */
	.form-karier-page .wpcf7-form > p:nth-child(2) {
		grid-column: 1 / 2 !important;
		grid-row: 1 / 2 !important;
		margin: 0 !important;
	}

	/* Второй <p> - поле телефона */
	.form-karier-page .wpcf7-form > p:nth-child(3) {
		grid-column: 2 / 3 !important;
		grid-row: 1 / 2 !important;
		margin: 0 !important;
	}

	/* Третий <p> - поле ссылки */
	.form-karier-page .wpcf7-form > p:nth-child(4) {
		grid-column: 1 / 3 !important;
		grid-row: 2 / 3 !important;
		margin: 0 !important;
	}

	/* Четвертый <p> - кнопка отправки */
	.form-karier-page .wpcf7-form > p:nth-child(5) {
		grid-column: 1 / 2 !important; /* Половина ширины */
		grid-row: 3 / 4 !important; /* Переместил выше чекбокса */
		margin-top: 15px !important;
		margin-bottom: 20px !important;
	}

	/* Пятый <p> - чекбокс согласия */
	.form-karier-page .wpcf7-form > p:nth-child(6) {
		grid-column: 1 / 3 !important;
		grid-row: 4 / 5 !important; /* Переместил ниже кнопки */
		margin: 0 !important;
		position: relative;
		/*left: -8px;*/
	}
	
	.form-karier-page .wpcf7-form > p:nth-child(7) {
		grid-column: 1 / 3 !important;
		grid-row: 5 / 6 !important; /* Переместил ниже кнопки */
		margin: 0 !important;
		position: relative;
		/*left: -8px;*/
	}
	
	.form-karier-page .wpcf7-form > p:nth-child(8) {
		grid-column: 1 / 3 !important;
		grid-row: 6 / 7 !important; /* Переместил ниже кнопки */
		margin: 0 !important;
		position: relative;
		/*left: -8px;*/
	}

	/* Стили для кнопки, чтобы занимала половину ширины */
	.form-karier-page .wpcf7-submit {
		width: 100% !important;
		max-width: 100% !important;
	}
	
	
	
	
	
	
.form-karier-page-trenery .wpcf7-form {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: auto auto auto auto auto !important;
    gap: 16px !important;
}

/* Первый <p> - выпадающий список (занимает 2 колонки) */
.form-karier-page-trenery .wpcf7-form > p:nth-child(2) {
    grid-column: 1 / 3 !important;
    grid-row: 1 / 2 !important;
    margin: 0 !important;
}

/* Второй <p> - поле имени */
.form-karier-page-trenery .wpcf7-form > p:nth-child(3) {
    grid-column: 1 / 2 !important;
    grid-row: 2 / 3 !important;
    margin: 0 !important;
}

/* Третий <p> - поле телефона */
.form-karier-page-trenery .wpcf7-form > p:nth-child(4) {
    grid-column: 2 / 3 !important;
    grid-row: 2 / 3 !important;
    margin: 0 !important;
}

/* Четвертый <p> - поле ссылки (занимает 2 колонки) */
.form-karier-page-trenery .wpcf7-form > p:nth-child(5) {
    grid-column: 1 / 3 !important;
    grid-row: 3 / 4 !important;
    margin: 0 !important;
}

/* Пятый <p> - кнопка отправки (половина ширины) */
.form-karier-page-trenery .wpcf7-form > p:nth-child(6) {
    grid-column: 1 / 2 !important;
    grid-row: 4 / 5 !important;
    margin: 0 !important;
}

/* Шестой <p> - чекбокс согласия (занимает 2 колонки) */
.form-karier-page-trenery .wpcf7-form > p:nth-child(7) {
    grid-column: 1 / 3 !important;
    grid-row: 5 / 6 !important;
    margin: 0 !important;
}

.form-karier-page-trenery .wpcf7-form > p:nth-child(8) {
    grid-column: 1 / 3 !important;
    grid-row: 6 / 7 !important;
    margin: 0 !important;
}

.form-karier-page-trenery .wpcf7-form > p:nth-child(9) {
    grid-column: 1 / 3 !important;
    grid-row: 7 / 8 !important;
    margin: 0 !important;
}



/* Стили для кнопки, чтобы занимала половину ширины */
.form-karier-page-trenery .wpcf7-submit {
    width: 100% !important;
    max-width: 100% !important;
}
}



	
	
/* Шестой <p> - чекбокс согласия (занимает 2 колонки) */
.form-karier-page-trenery .wpcf7-form > p:nth-child(7) {
	margin-bottom: 10px!important;
}

.form-karier-page-trenery .wpcf7-form > p:nth-child(8) {
	margin-bottom: 10px!important;
}

.form-karier-page-trenery .wpcf7-form > p:nth-child(9) {
	margin-bottom: 10px!important;
}


.kariera-treneri-container {
	margin-top: 10px;
}

.kariera-treneri-container .kariera-intro-text {
	margin-bottom: 30px;
}

.kariera-treneri-spacer-after-maiin-banner {
	height: 40px!important;
}

.pochemu-byt-trenerom-v-brighfit-eto-kruto-headline,
.napravleniya-na-lyuboj-vkus-headline {
	margin: 0 15px;
	line-height: 24px;
}

.pochemu-byt-trenerom-v-brighfit-eto-kruto-container,
.napravleniya-na-lyuboj-vkus-container {
	margin: 20px 0 40px 0;
}


.napravleniya-na-lyuboj-vkus-card img,
.pochemu-byt-trenerom-v-brighfit-eto-kruto-headline img {
	display: block;
	width: 100%;
	object-fit: cover;
	height: 181px;
}


.img-border-radius img {
	width: 100%;
	border-radius: 20px;
	display: block;
}

.napravleniya-na-lyuboj-vkus-card {
	text-align: center;
	padding: 16px 16px 0 16px;
	border-radius: 20px;
	background: #F0F1F3;
	margin: 20px 10px;
}

.napravleniya-na-lyuboj-vkus-card p {
	padding: 20px;
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
}

.napravleniya-na-lyuboj-vkus-card img {
	border-radius: 10px;
}


.pochemu-byt-trenerom-v-brighfit-eto-kruto-headline {
	margin-bottom: 20px;
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
	text-align: center;
}

.pochemu-byt-trenerom-v-brighfit-eto-kruto-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 10px;
}

.pochemu-byt-trenerom-v-brighfit-eto-kruto-card {
	width: 49%;
	text-align: center;
	margin: 0 0 20px 0;
}

.pochemu-byt-trenerom-v-brighfit-eto-kruto-card p {
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
	margin: 15px 0;
}

.pochemu-byt-trenerom-v-brighfit-eto-kruto-card img {
	display: block;
	margin: 0 auto;
}


@media only screen and (min-width: 1160px) {

	.form-karier-page-trenery .wpcf7-form {
		gap: 0 !important;
		column-gap: 8px!important;
	}
	
	.pochemu-byt-trenerom-v-brighfit-eto-kruto-headline {
		margin: 85px auto 20px auto;
		font-size: 34px;
		line-height: 36px;
		max-width: 482px;
	}
	
	.napravleniya-na-lyuboj-vkus-headline {
		font-size: 34px;
		font-weight: 700;
		line-height: 36px;
		text-align: center;
		margin-top: 80px;
	}
	
	div.kariera-treneri-spacer-after-intro-text {
		height: 20px!important;
	}
	
	.kariera-treneri-container {
		margin-top: 35px;
	}
	
	.img-border-radius img {
		border-radius: 40px;
	}
	
	.napravleniya-na-lyuboj-vkus-container {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin-bottom: 60px;
	}

	.napravleniya-na-lyuboj-vkus-card {
		width: 360px;
		padding: 16px 16px 0 16px;
		border-radius: 40px;
		margin-bottom: 25px;
	}

	.napravleniya-na-lyuboj-vkus-card p {
		padding: 16px;
		font-size: 18px;
		font-weight: 700;
		line-height: 24px;
	}

	.napravleniya-na-lyuboj-vkus-card img {
		border-radius: 20px;
		margin-bottom: 0;
	}
	
	.pochemu-byt-trenerom-v-brighfit-eto-kruto-container {
		justify-content: center;
		margin: 35px 0 60px 0;
	}
	
	.pochemu-byt-trenerom-v-brighfit-eto-kruto-card {
		width: 177px;
		margin: 0 20px;
	}
}


/* Карьера */



/* скролл по кнопкам */


.all-clubs-header {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}

.all-clubs-header .horizontal-scroll-buttons-container {

}


/* чекбокс формы согласие */

.form-all-acceptance {
	display: inline-block;
	width: 20px!important;
	max-width: 20px!important;
}

.wpcf7-acceptance {
	font-size: 12px!important;
	line-height: 14px!important;
}




/* ----------------------------- Checkbox начало ---------------------------------- */
.form-all-acceptance_label, .wpcf7-acceptance {
	margin-left: 31px!important;
}

.form-all-acceptance,
#personaldata, 
#wp-comment-cookies-consent,
#mailpoet_subscribe_on_comment {
	appearance: none;
	background: transparent;
	position: relative;
	margin: 0 8px 0 2px;
	padding: 0;
	margin-left: -31px!important;
}
.form-all-acceptance::after, 
#personaldata::after, 
#wp-comment-cookies-consent::after,
#mailpoet_subscribe_on_comment::after
{
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	text-align: center;
	background: #fff;
	display: block;
	pointer-events: none;
	outline: 2px solid #fff;
    -moz-box-sizing: border-box; /* Для Firefox */  
    box-sizing: border-box; /* Ширина блока с полями */
	outline: 2px solid #000;
	transition: outline 0.2s linear; /* Время изменения */
}
.form-all-acceptance + label, 
#personaldata + label, 
#wp-comment-cookies-consent + label,
#mailpoet_subscribe_on_comment + label
{
	line-height: 20px;
	margin: 0;
}
.form-all-acceptance:hover::after, 
#personaldata:hover::after, 
#wp-comment-cookies-consent:hover::after,
#mailpoet_subscribe_on_comment:hover::after
{
	content: '';
	outline: 2px solid #00BDC7;
}
.form-all-acceptance:checked::after, 
#personaldata:checked::after, 
#wp-comment-cookies-consent:checked::after,
#mailpoet_subscribe_on_comment:checked::after,
.form-all-acceptance:hover:checked::after, 
#personaldata:hover:checked::after, 
#wp-comment-cookies-consent:hover:checked::after,
#mailpoet_subscribe_on_comment:hover:checked::after
{
	content: '\2714';
	outline: 2px solid #00BDC7;
}
.form-all-acceptance,
.form-all-acceptance::after,
#personaldata,
#personaldata::after,
#wp-comment-cookies-consent,
#wp-comment-cookies-consent::after,
#mailpoet_subscribe_on_comment,
#mailpoet_subscribe_on_comment::after
 {
	width: 20px;
	height: 20px;
	font-size: 1em!important;
	font-weight: bold;
	color: #00BDC7;
	line-height: 20px;
	vertical-align: middle;
	border-radius: 4px;
}

/* ----------------------------- Checkbox конец ---------------------------------- */


/* чекбокс формы согласие */



.club-card-label {
	color: #00BDC7;
	font-size: 14px;
	margin: 10px 0 0 0;
	font-weight: 400;
}



/* Страница услуги */

.all-uslugi-container {
	margin-top: 35px;
}

.all-uslugi-container h1 {
	margin-bottom: 20px;
}

.all-uslugi-intro-text {
	font-size: 14px;
	font-weight: 400px;
	line-height: 24px;
	margin-bottom: 40px;
}

@media only screen and (max-width: 1160px) {
	.all-uslugi-container {
		margin-top: 20px;
	}
	
	.all-uslugi-container h1 {
		margin-bottom: 10px;
	}
	
	.all-uslugi-container .ekskursiya-wraper {
		margin: 0;
	}
}

/* Страница услуги */



/* шаблон все клубы */
.clubs-all-template-container {
	margin-top: 30px;
}

@media only screen and (max-width: 1160px) {
	.clubs-all-template-container {
		margin-top: 15px;
	}
}

.clubs-all-template-container .cities-container {
	margin-bottom: 0px;
}

@media only screen and (max-width: 1160px) {
	.clubs-all-template-container .cities-container {
		margin-top: 20px;
	}
}

.clubs-all-template-container .club-other-clubs-container {
	margin-top: 10px;
}



.clubs-all-template-container .all-clubs-content a {
	padding: 10px;
	background: #F0F1F3;
	border-radius: 20px;
	position: relative;
	z-index: 1;
}

.clubs-all-template-container .all-clubs-content a:hover {
	background: #DADDE1;
}

.clubs-all-template-container .all-clubs-content a:hover .club-other-clubs-card-strelka-icon {
	display: none;
}

.clubs-all-template-container .club-other-clubs-card-image img {
	border-radius: 15px;
}

.clubs-all-template-container .club-other-clubs-card-image {
	height: 150px;
	position: relative;
	z-index: 2;
}

.clubs-all-template-container .club-other-clubs-card-content {
	padding: 15px 5px 5px 4px;
	position: relative;
	z-index: 2;
}

.clubs-all-template-container .club-other-clubs-card-content .clubs-all-h3 {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
}

.clubs-all-template-container .club-other-clubs-card-content p {
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	color: #141E32;
	opacity: 50%;
	margin-bottom: 5px;
}

/* шаблон все клубы */




/* дополнение к форме заявки на странице клуба */
.addon-form-app {
	background: #8246FF;
	border-radius: 20px;
}

.addon-form-app-content {
	padding: 20px 15px 15px 15px;
	color: #fff;
}

.addon-form-app h3,
.addon-form-app-header {
	font-size: 24px;
	line-height: 24px;
	font-weight: 800;
	margin-bottom: 15px;
}

.addon-form-app p {
	font-size: 16px;
	line-height: 24px;
	font-weight: 500;
}

.addon-form-app .button {
	width: 100%;
	margin: 20px 0 0 0;
	display: block;
	text-align: center;
	font-size: 16px;
	line-height: 24px;
	font-weight: 600;
	padding-top: 15px;
	padding-bottom: 15px;
}

@media only screen and (min-width: 1160px) {
	.addon-form-app {
		background: none;
		border-radius: 0;
	}
	
	.addon-form-app-content {
		display: none;
	}
}

/* дополнение к форме заявки на странице клуба */





/*404*/

.page-not-found-container {
	text-align: center;
	max-width: 700px;
}

.page-not-found-container .button {
	display: inline-block;
}

.page-not-found-container img {
	width: 100%;
}

.page-not-found-container h1, 
.page-not-found-container p {
	max-width: 400px;
	margin: 0 auto;
}

/*404*/


/* сообщения форм */
.wpcf7-response-output {
	background: #fff!important;
	border-radius: 20px!important;
	padding: 20px!important;
	font-size: 14px!important;
	line-height: 20px!important;
	font-weight: 600!important;
	border-width: 4px!important;
	margin-left: 0!important;
	margin-right: 0!important;
	max-width: 270px !important;
}

.wpcf7-not-valid-tip {
	display: none!important;
}

input.wpcf7-not-valid::-webkit-input-placeholder,
textarea.wpcf7-not-valid::-webkit-input-placeholder {
	color: #F71C51!important;
}

input.wpcf7-not-valid:-moz-placeholder,
textarea.wpcf7-not-valid:-moz-placeholder {
	color: #F71C51!important;
}

input.wpcf7-not-valid::-moz-placeholder,
textarea.wpcf7-not-valid::-moz-placeholder {
	color: #F71C51!important;
}

input.wpcf7-not-valid:-ms-input-placeholder,
textarea.wpcf7-not-valid:-ms-input-placeholder {
	color: #F71C51!important;
}

input.wpcf7-not-valid::placeholder,
textarea.wpcf7-not-valid::placeholder {
	color: #F71C51!important;
}

.wpcf7-not-valid,
.invalid select {
	border: 1px solid #F71C51!important;
	color: #F71C51!important;
}

form.invalid .wpcf7-response-output {
	border-color: #F71C51!important;
}


/* сообщения форм */


.simple-page-container {
	max-width: 800px;
}




/* reCAPTHCA */
.grecaptcha-badge {visibility: hidden;}
/* reCAPTHCA */



/* Хлебные крошки */

.hlebnie-kroshki-container {
	font-size: 11px;
	font-weight: 100;
	line-height: 16px;
}

.hlebnie-kroshki-container a {
	color: #141E32;
	text-decoration: none;
}

.hlebnie-kroshki-container a:hover {
	color: #00BDC7;
}

@media only screen and (max-width: 1160px) {
	.hlebnie-kroshki-container {
		padding: 0 10px;
	}
}

/* Хлебные крошки */



/* валидация чекбоксов согласий */

.cf7-acceptance-error .form-all-acceptance::after {
	outline: 2px solid #F71C51!important;
}

.cf7-acceptance-error .wpcf7-list-item-label,
.cf7-acceptance-error .wpcf7-list-item-label a,
.cf7-acceptance-error .wpcf7-list-item-label a:hover {
	color: #F71C51!important;
}

/* валидация чекбоксов согласий */


.fixed-header {
	position: fixed;
	background: #fff;
	width: 100%;
	z-index: 99;
	height: 60px;
    transition: box-shadow 0.3s ease; /* плавное появление/исчезновение */
}

#fixed-header.scrolled {
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15); /* лёгкая тень */
}



.hlebnie-kroshki-container {
	margin-top: 70px;
}

.header-club-select-in-main-menu {
	color: #333;
	position: absolute;
	top: 8px;
	right: 54px;
	display: inline-block;
}

@media only screen and (max-width: 1160px) {
	.header-club-select-in-main-menu {
		top: 10px;
		right: 56px;
	}
}





/* Клубные карты - кнопка «Подробнее» */

.club-card-read-more-button {
	padding-top: 20px;
	margin-top: auto;
}

.club-card-read-more-button-inner-wrapper {
	background: #fff;
	border: 2px solid #00BDC7;
	border-radius: 16px;
	padding: 8px;
	text-align: center;
	transition: .2s ease-in-out;
}

.club-card-read-more-button-inner-wrapper:hover {
	background: #00BDC7;
	color: #fff;
}

.club-karti-card .club-card-label {
	font-size: 14px;
	color: #8246FF;
	margin: 0;
}

/* Клубные карты - кнопка «Подробнее» */



.club-card-popup-detail-flyout-button-container {
	position: sticky;
	top: calc(var(--vh, 1vh) * 100 - 66px);
	text-align: center;
	z-index: 999999999999999999999999999;
	height: 66px;
	background-color: #fff;
	border: 1px solid #DADDE1;
	border-radius: 16px 16px 0 0;
	padding: 10px 15px;
}

.club-card-popup-detail-flyout-button-container .button {
	display: block;
}

@media only screen and (min-width: 1160px) {
	.club-card-popup-detail-flyout-button-container {
		visibility: hidden;
	}
}




/* Стрелочки для листания городов в меню поиска клуба */


.cities-container-wrapper .hidden {
	display: none;
}

.cities-nav-btn, .cities-nav-btn:hover {
	margin: 0;
	padding: 0;
	background: none;
	opacity: 1;
}

.cities-container-wrapper {
    position: relative;
	overflow: visible;
}


.cities-nav-btn {
    position: absolute;
    top: 20px;
    transform: translateY(-50%);
    width: 32px;
    height: 32px;
    background: #fff;
    border: 2px solid #00BDC7;
    cursor: pointer;
    z-index: 99;
    display: none;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    opacity: 0;
    visibility: hidden;
	transition: .3s ease-in-out;
	box-shadow: 0 0 4px rgba(0,0,0,0.25);
}

.cities-nav-btn:hover {
	background-color: #F0F1F3;
	padding: 24px 20px 24px 20px;
}


.cities-nav-btn.prev,
.cities-nav-btn.prev:hover {
    left: -40px;
	border-radius: 0 15px 15px 0;
	border-left: 0;
	padding: 24px 20px 24px 16px;
}

.cities-nav-btn.next,
.cities-nav-btn.next:hover {
    right: -40px;
	border-radius: 15px 0 0 15px;
	border-right: 0;
	padding: 24px 16px 24px 20px;
}



/* Показываем стрелки только на десктопе и только когда контейнер скроллируемый */
@media only screen and (min-width: 1160px) {
    
    /* Правильный селектор для показа стрелок когда контейнер скроллируемый */
    .cities-container-wrapper .cities-nav-btn {
        display: flex;
    }

	.cities-container-wrapper .hidden {
		display: none;
	}
    
    .cities-container.scrollable ~ .cities-nav-btn,
    .cities-container-wrapper .cities-nav-btn {
        opacity: 1;
        visibility: visible;
    }
    
    /* Скрываем стрелки, когда скролл достиг края */
    .cities-nav-btn.hidden {
        opacity: 0.3;
        pointer-events: none;
    }
}

/* Адаптация для мобильных устройств */
@media only screen and (max-width: 1160px) {
    .cities-nav-btn {
        display: none !important;
    }
}


/* Стрелочки для листания городов в меню поиска клуба */

	
/* разные цвета кнопок */

/* Белая с черными буквами */
.btn-belaya-s-chernymi-bukvami,
.btn-belaya-s-chernymi-bukvami:hover {
  background-color: #fff!important;
  color: #000!important;
  background-image: none!important;
}

/* Черная с белыми буквами */
.btn-chernaya-s-belymi-bukvami,
.btn-chernaya-s-belymi-bukvami:hover {
  background-color: #000!important;
  color: #fff!important;
  background-image: none!important;
}

/* Бирюзовая с белыми буквами */
.btn-biryuzovaya-s-belymi-bukvami,
.btn-biryuzovaya-s-belymi-bukvami:hover {
  background-color: #00bcd4!important;
  color: #fff!important;
  background-image: none!important;
}

/* Бирюзовая с черными буквами */
.btn-biryuzovaya-s-chernymi-bukvami,
.btn-biryuzovaya-s-chernymi-bukvami:hover {
  background-color: #00bcd4!important;
  color: #000!important;
  background-image: none!important;
}

/* разные цвета кнопок */


/* Поставщикам */

.o-nas-container p {
	margin-bottom: 20px;
	max-width: 500px;
}

.o-nas-intro-text-wraper {
	padding: 40px 0;
	position: relative;
	z-index: 1;
}

.o-nas-intro-text-inner-wraper {
	border-radius: 40px;
	background: #CECAEE;
	padding: 40px;
}

.o-nas-heart {
    width: 499px;
    height: 376px;
    position: absolute;
    top: 0;
    right: 40px;
    z-index: 2;
}

.o-nas-container-columns-container {
	display: flex;
	gap: 200px;
}


@media only screen and (max-width: 1160px) {
	.o-nas-heart {
		width: 144px;
		height: 109px;
		position: absolute;
		top: 0;
		right: calc(50% - 72px);
		z-index: 2;
	}
	
	.o-nas-intro-text-wraper {
		padding-top: 60px 0;
	}
	
	.o-nas-intro-text-inner-wraper {
		padding-top: 80px;
	}
	
	.o-nas-container-columns-container {
		display: block;
	}
	
	.o-nas-container p {
		max-width: 100%;
	}
}

/* Поставщикам */

/* Страница скачать приложение */

.app-download-container {
	text-align: center;
	background: #F0F1F3;
	border-radius: 20px;
}


.app-download-container .app-icon {
	width: 100px;
	border-radius: 20px;
}


@media only screen and (max-width: 1160px) {
	
	.app-download-container {
		margin: 0 10px;
	}
	
	.app-download-container .app-buttons-container {
		display: block;
	}
	
	.app-download-container .app-buttons-container a {
		display: block;
		width: 100%;
		border-radius: 15px;
		border: 2px solid;
		border-color: #141E32;
		transition: border-color .2s ease-in-out;
	}
	
	.app-download-container .app-buttons-container a:hover {
		border-color: #00BDC7;
	}
	
	.app-download-container .app-buttons-container img {
		border: 0;
	}
}


/* Страница скачать приложение */

/* Флайаут скачать приложение */

/* Баннер */
.app-banner {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #fff;
  color: #333;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 11px 16px;
  box-sizing: border-box;
  z-index: 1001;
  transform: translateY(-100%);
  transition: transform 0.3s ease;
  border-bottom: 1px solid #ddd;
}

.app-banner-inner {
  display: flex;
  justify-content: start;
  align-items: center;
}

.app-banner-texts {
  font-size: 13px;
  color: #999;
  margin-left: 8px;
}

.app-banner-texts b {
  font-size: 16px;
  color: #333;
}



.app-banner-img {
	width: 80px;
	border-radius: 20px;
}


.app-banner a, .app-banner a:hover {
	color: #fff;
	background: #0066ff;
	padding: 8px 16px;
	border-radius: 20px;
	text-decoration: none;
	font-size: 13px;
}


.app-banner.visible {
  transform: translateY(0);
}

/* Кнопка закрытия */
.close-btn {
  background: none;
  border: none;
  color: #ccc;
  font-size: 22px;
  cursor: pointer;
  padding: 0;
  margin-right: 8px;
}

/* Флайаут скачать приложение */



/* Корпоративным клиентам */

.corp-clients-container {
	text-align: center;
}

.corp-clients-container h2,
.corp-clients-container-h2 {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}

.corp-clients-container .button {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
}


.corp-clients-into-container {
	position: relative;
	padding: 40px 0 0 0;
}

.corp-clients-into-image {
    width: 100%;
    height: calc(100% - 40px);
    object-fit: contain;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
	object-position: 80px top;
}

.corp-clients-into-inner-container {
	display: flex;
}

.corp-clients-into-inner-container-text,
.corp-clients-into-inner-container-form {
	position: relative;
    z-index: 2;
	padding: 40px;
	text-align: left;
}

.corp-clients-into-inner-container-text h1 {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
	margin-bottom: 20px;
}

.corp-clients-into-inner-container-text p {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
}


.corp-clients-into-inner-container {
	background: rgb(206 202 238 / .6);
	border-radius: 40px;
	
}

.corp-clients-into-inner-container-form {
	background: #CECAEE;
	border-radius: 40px;
}

.corp-clients-into-inner-container-form .button {
	max-width: 260px;
}

.corp-clients-into-inner-container-form .corp-clients-textarea-headline {
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
	margin-bottom: 10px;
}

.kakuyu-polzu-mozhet-prinesti-container,
.udobno-dlya-sotrudnikov-container {
	display: flex;
	justify-content: space-between;
}

.kakuyu-polzu-mozhet-prinesti-item,
.udobno-dlya-sotrudnikov-container-item {
	display: flex;
	width: 360px;
	padding: 20px;
	background: #F0F1F3;
	border-radius: 20px;
	text-align: left;
}

.kakuyu-polzu-mozhet-prinesti-item h3,
.kakuyu-polzu-mozhet-prinesti-item-h3,
.udobno-dlya-sotrudnikov-container-item-h3,
.udobno-dlya-sotrudnikov-container-item h3 {
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
	margin-bottom: 10px;
}

.kakuyu-polzu-mozhet-prinesti-item p,
.udobno-dlya-sotrudnikov-container-item p {
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
}

.kakuyu-polzu-mozhet-prinesti-item img,
.udobno-dlya-sotrudnikov-container-item img {
	background: #fff;
	border-radius: 50%;
	padding: 8px;
	margin-left: 10px;
}

@media only screen and (max-width: 1160px) {
	.corp-clients-container {
		text-align: left;
	}
	
	.corp-clients-container h2,
	.corp-clients-container-h2	{
		font-size: 24px;
		font-weight: 700;
		line-height: 24px;
	}
	
	.corp-clients-into-image {
		display: none;
	}
	
	.corp-clients-into-inner-container {
		display: block;
	}
	
	.corp-clients-container .button {
		max-width: 100%;
		display: block;
		text-align: center;
	}

	.corp-clients-into-inner-container-text,
	.corp-clients-into-inner-container-form {
		padding: 10px;
		border-radius: 20px;
	}
	
	.corp-clients-into-inner-container-text h1 {
		font-size: 24px;
		font-weight: 700;
		line-height: 24px;
		margin: 10px 0;
	}
	
	.corp-clients-into-inner-container-text p {
		font-size: 14px;
		font-weight: 400;
		line-height: 20px;
		margin-bottom: 20px;
	}
	
	.corp-clients-into-inner-container {
		border-radius: 20px;
	}
	
	.kakuyu-polzu-mozhet-prinesti-container,
	.udobno-dlya-sotrudnikov-container {
		display: block;
	}
	
	.kakuyu-polzu-mozhet-prinesti-item,
	.udobno-dlya-sotrudnikov-container-item {
		width: 100%;
		margin-bottom: 10px;
	}
}

/* Корпоративным клиентам */


.align-center {
	text-align: center
}

.messenger-buttons img {
	height: 50px;
}



/* попап после отправки формы */

/* Затемнение фона */
.cf7-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 999999999999;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s ease;
}

/* Активное состояние */
.cf7-modal-overlay.active {
    opacity: 1;
    visibility: visible;
}

/* Само окно */
.cf7-modal {
    background: #fff;
    padding: 80px;
    max-width: 500px;
    width: 90%;
    border-radius: 12px;
    text-align: center;
    position: relative;
    box-shadow: 0 20px 60px rgba(0,0,0,0.3);
    animation: popupFade 0.3s ease;
}

/* Кнопка закрытия */
.cf7-modal-close {
    position: absolute;
    top: 0px;
    right: 10px;
    font-size: 28px;
    cursor: pointer;
}

/* Анимация */
@keyframes popupFade {
    from { transform: translateY(20px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}

/* Скрываем стандартный вывод */
.wpcf7-response-output {
    display: none !important;
}


.cf7-modal {
    background: #fff;
    padding: 40px;
    max-width: 500px;
    width: 90%;
    border-radius: 20px;
    text-align: center;
    position: relative;
    box-shadow: 0 20px 60px rgba(0,0,0,0.3);
}

/* Успех */
.cf7-modal-overlay.success .cf7-modal {
    border: 4px solid #46b450;
}

/* Ошибка */
.cf7-modal-overlay.error .cf7-modal {
    border: 4px solid #F71C51;
}

/* попап после отправки формы */

.vidi-trenirovok-intro-container {
	display: flex;
	justify-content: space-between;
	padding: 40px;
	background: #F0F1F3;
	border-radius: 40px; 
}

.vidi-trenirovok-intro-container-image {
	width: 520px;
}

.vidi-trenirovok-intro-container-text {
	width: 520px;
}

.trenirovka-type {
	position: relative;
	top: -4px;
	padding: 7px 10px;
	background: #fff;
	border-radius: 10px;
	font-size: 12px;
	line-height: 14px;
	font-weight: 600;
	white-space: nowrap;
	margin: 0;
	display: inline-block;
}

.trenirovka-intensivnost {
	padding: 7px 14px;
	background: #fff;
	border-radius: 10px;
	display: inline-flex;
	width: 80px;
	justify-content: space-between;
}

.trenirovka-intensivnost img {
	display: block;
}

.inactive-trenirovka-intensivnost {
	opacity: .2;
}

.vidi-trenirovok-intro-container-image img {
    width: 100%;
    object-fit: cover;
	border-radius: 20px;
}

@media only screen and (max-width: 1160px) {
	.vidi-trenirovok-intro-container {
		flex-direction: column-reverse;
		padding: 15px;
		border-radius: 20px; 
	}
	
	.vidi-trenirovok-intro-container-image {
		width: 100%;
	}

	.vidi-trenirovok-intro-container-text {
		width: 100%;
	}

	.vidi-trenirovok-intro-container-image img {
		border-radius: 15px;
		margin-bottom: 15px; 
	}
}


.accordion-container {
	margin-top: 70px;
}


/* Style the buttons that are used to open and close the accordion panel */
.accordion {
  background-color: #F0F1F3;
  cursor: pointer;
  margin-top: 10px;
  padding: 40px 20px 40px 40px;
  width: 100%;
  transition: 0.4s;
  font-size: 24px;
  font-weight: 800;
  line-height: 24px;
  border-radius: 40px;
  position: relative;
  z-index: 10;
}




/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
.accordion:hover {
  background-color: #ddd;
}

/* Style the accordion panel. Note: hidden by default */
.panel {
  padding: 104px 40px 0px 40px;
  background-color: #F0F1F3;
  border-radius: 40px;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease-out;
  margin-top: -104px;
  position: relative;
  z-index: 4;
  width: 100%;
  float: left;
  font-size: 14px;
  line-height: 20px;
  font-weight: 400px;
}

.panel p {
  max-width: 800px;
}

.accordion:after {
  position: relative;
  top: -20px;
  content: url('https://brightfit.ru/wp-content/themes/bright-fit/images/icon-accordion-open.svg');
  float: right;
  background: #00BDC7;
  padding: 20px 20px 15.2px 20px;
  border-radius: 50%;
  transition: transform 0.3s ease;
}

.accordion.active:after {
  transform: rotate(45deg);
}


@media only screen and (max-width: 1160px) {
	.accordion {
	  padding: 20px 15px 15px 15px;
	  border-radius: 20px;
	}
	
	.accordion span {
	  max-width: 80%;
	  font-size: 18px;
	  font-weight: 700;
	  line-height: 24px;
	  display: inline-block;
	}
	
	.accordion:after {
	  position: relative;
	  top: 0px;
	  content: url('https://brightfit.ru/wp-content/themes/bright-fit/images/icon-accordion-open-small.svg');
	  padding: 9px 12px 7px 12px;
	  border-radius: 50%;
	}

	.panel {
	  padding: 83px 15px 0px 15px;
	  border-radius: 20px;
	  margin-top: -83px;
	  position: relative;
	}
}



.clear {
	clear: both;
}

.video-primer-trenirovki-container {
	margin-top: 80px;
	text-align: center;
}

.video-primer-trenirovki-container h2 {
	margin-bottom: 40px;
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}

.video-primer-trenirovki-video {
	width: 813px;
	aspect-ratio: 16 / 9;
	border-radius: 40px;
}

@media only screen and (max-width: 1160px) {
	.video-primer-trenirovki-video {
		width: 100%;
		aspect-ratio: 16 / 9;
		border-radius: 20px;
	}

}

.raspisanie-trenirovki-container {
	margin-top: 80px;
	text-align: center;
}

.raspisanie-trenirovki-container h2,
.raspisanie-trenirovki-container-headline-h2 {
	margin-bottom: 40px;
	font-size: 34px;
	font-weight: 700;
	line-height: 36px
}

.raspisanie-trenirovki-container .container {
	border-radius: 40px;
	height: 750px;
	overflow-y: auto;       /* вертикальный скролл */

	/* Firefox */
	scrollbar-width: none;

	/* IE 10+ */
	-ms-overflow-style: none;
}

.raspisanie-trenirovki-container .container::-webkit-scrollbar {
	display: none;
}


/* виды тренировок NEW */


/* гео карта на главной */

.glavnaya-geo-map-container {
	border-radius: 40px;
	height: 560px;
	margin: 80px 0;
}

.glavnaya-geo-map-container .ymaps-2-1-79-inner-panes {
	border-radius: 0 40px 40px 0!important;
}

.glavnaya-geo-map-container-filter {
	width: 380px;
	border-radius: 40px;
	height: 560px;
	padding: 40px 30px 30px 30px;
	background: #CECAEE;
	position: absolute;
	z-index: 10;
}

.glavnaya-geo-map-container-filter h1,
.glavnaya-geo-map-container-filter-h1 {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
	margin-bottom: 30px;
}

#clubs-map {
	margin: 0 0 0 340px;
	width: calc(100% - 340px);
	height: 560px;
}

@media only screen and (max-width: 1160px) {
	.glavnaya-geo-map-container {
		border-radius: 20px;
		height: 720px;
		margin: 80px 10px;
	}
	
	.glavnaya-geo-map-container-filter h1,
	.glavnaya-geo-map-container-filter-h1	{
		font-size: 24px;
		font-weight: 700;
		line-height: 27px;
		margin-bottom: 20px;
	}
	
	.glavnaya-geo-map-container-filter {
		width: 100%;
		border-radius: 20px;
		height: auto;
		padding: 15px;
		background: #CECAEE;
		position: absolute;
		z-index: 10;
	}
	
	.glavnaya-geo-map-container .ymaps-2-1-79-inner-panes {
		border-radius: 0 0 20px 20px!important;
	}
	
	#clubs-map {
		margin: 0;
		padding: 160px 0 0 0;
		width: 100%;
		height: 720px;
	}
}

/* гео карта на главной */


/* гео карточки клубов на главной */

.glavnaya-geo-clubs-cards-container {
	margin: 0 0 80px 0;
}

.glavnaya-geo-clubs-cards-header {
	display: flex;
	justify-content: space-between;
	margin: 0 0 20px 0;
}

.glavnaya-geo-clubs-cards-header h2,
.glavnaya-geo-clubs-cards-header-h2 {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}

.glavnaya-geo-clubs-cards-wraper {
	display: flex;
	overflow: auto;
	white-space: nowrap;
	-ms-overflow-style: none;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	margin-right: calc((100vw - 1140px) / 2 * -1);
	margin-left: calc((100vw - 1140px) / 2 * -1);
	padding-right: calc((100vw - 1140px) / 2);
	padding-left: calc((100vw - 1140px) / 2);
}

.glavnaya-geo-clubs-cards-card {
	min-width: 275px!important;
	max-width: 275px!important;
	width: 275px!important;
	margin: 0 20px 0 0;
	background: #F0F1F3;
	border-radius: 20px;
	padding: 10px;
	text-decoration: none;
}

.glavnaya-geo-clubs-cards-card-no-bg {
	background: none!important;
}

@media only screen and (max-width: 1160px) {
	.glavnaya-geo-clubs-cards-wraper {
		margin: 0 -10px 0 -10px;
		padding: 0 10px;
	}
	
	.glavnaya-geo-clubs-cards-container {
		margin: 0 10px 40px 10px;
	}
	
	.glavnaya-geo-clubs-cards-card {
		margin: 0 10px 0 0;
	}
	
	.glavnaya-geo-clubs-cards-header h2,
	.glavnaya-geo-clubs-cards-header-h2 {
		font-size: 24px;
		font-weight: 700;
		line-height: 24px;
	}
}

.glavnaya-geo-clubs-cards-card-image-container {
	position: relative;
	height: 150px;
}

.glavnaya-geo-clubs-cards-card-icons-container {
	display: inline-flex;
	position: absolute;
	z-index: 4;
	background: #fff;
	padding: 5px 0 5px 5px;
	border-radius: 10px;
	bottom: 10px;
	left: 10px;
}

.glavnaya-geo-clubs-cards-card-icons-container img {
	margin: 0 5px 0 0;
}

.glavnaya-geo-clubs-cards-card-image-main {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
	border-radius: 15px;
}

.glavnaya-geo-clubs-cards-card-headline,
.glavnaya-geo-clubs-cards-card-adress,
.glavnaya-geo-clubs-cards-card-phone,
.glavnaya-geo-clubs-cards-card-button {
	color: #000;
}

.glavnaya-geo-clubs-cards-card-headline {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
	margin:15px 0 0 0;
}

.glavnaya-geo-clubs-cards-card-adress {
	opacity: .5;
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
}

.glavnaya-geo-clubs-cards-card-phone {
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	margin: 10px 0 0 0;
}

.glavnaya-geo-clubs-cards-card-phone img {
	position: relative;
	top: 4px;
}

.glavnaya-geo-clubs-cards-card-button {
	padding: 13px 15px;
	background: #fff;
	border: 2px solid #00BDC7;
	border-radius: 15px;
	display: inline-block;
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
	margin: 15px 0 0 0;
	transition: background .2s ease-in-out, color .2s ease-in-out;
}

.glavnaya-geo-clubs-cards-card-button:hover {
	color: #fff;
	background: #00BDC7;
}

/* гео карточки клубов на главной */

/* выпадающее меню выбора города */
/* ===================================== */
/* Выпадающее меню выбора города */
/* ===================================== */

/* ===================================== */
/* Выпадающее меню выбора города */
/* ===================================== */

.menu-item-city {
    position: relative;
}

/* Ссылка города */
.city-toggle {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    text-decoration: none;
}

/* Контейнер стрелок */
.city-arrow {
    position: relative;
    display: inline-block;
    width: 14px;
    height: 14px;
    margin-left: 8px;
    flex-shrink: 0;
}

/* Стрелки внутри */
.city-arrow img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: opacity 0.25s ease;
}

/* Верхняя стрелка по умолчанию прозрачная */
.city-arrow .arrow-up {
    opacity: 0;
}

/* Когда меню открыто — переключаем opacity */
.city-toggle.active .arrow-down {
    opacity: 0;
}

.city-toggle.active .arrow-up {
    opacity: 1;
}

/* Dropdown для обычного меню */
.menu-item-city:not(.menu-item-city--mobile) .city-submenu {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    background: #fff;
    list-style: none;
    margin: 0 !important;
    padding: 20px !important;
    min-width: 180px;
    box-shadow: 0 8px 25px rgba(0,0,0,0.08);
    opacity: 0;
    visibility: hidden;
    transform: translateY(5px);
    transition: all 0.25s ease;
    z-index: 9999;
    border: 1px solid #DADDE1;
    border-radius: 16px;
}

.menu-item-city:not(.menu-item-city--mobile).open .city-submenu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.city-submenu li {
    margin: 0;
    padding: 0;
    display: block !important;
}

.city-submenu li a {
    display: block;
    padding: 8px 15px;
    text-decoration: none;
    color: #333;
    white-space: nowrap;
}

.city-submenu li a:hover {
    background: #f5f5f5;
}


/* ===================================== */
/* Выбор города в гамбургер-меню */
/* ===================================== */

.main-menu-city-select {
    margin: 20px 0;
}

.menu-item-city--mobile {
    position: static;
    width: 100%;
}

.menu-item-city--mobile .city-toggle {
    display: flex;
    align-items: center;
    width: 100%;
    color: #fff;
    text-decoration: none;
    padding: 0;
}

.menu-item-city--mobile .city-name {
    display: inline-block;
}

.city-name-desktop:before {
	content: url("https://brightfit.ru/wp-content/themes/bright-fit/images/icon-geolocation.svg");
	display: inline-block;
	position: relative;
	top: 2px;
	margin-right: 10px;
}

.city-name-mobile:before {
	content: url("https://brightfit.ru/wp-content/themes/bright-fit/images/icon-geolocation-white.svg");
	display: inline-block;
	position: relative;
	top: 2px;
	margin-right: 10px;
}

.menu-item-city--mobile .city-arrow {
    margin-left: 12px;
}

.menu-item-city--mobile .city-submenu {
    position: static;
    background: transparent;
    list-style: none;
    margin: 0 !important;
    padding: 0 !important;
    border: 0;
    box-shadow: none;
    border-radius: 0;
    min-width: 100%;

    opacity: 1;
    visibility: visible;
    transform: none;

    max-height: 0;
    overflow: hidden;
    transition: max-height 0.35s ease, margin-top 0.35s ease;
}

.menu-item-city--mobile.open .city-submenu {
    max-height: 600px;
    margin-top: 16px !important;
}

.menu-item-city--mobile .city-submenu li {
    display: block !important;
}

.menu-item-city--mobile .city-submenu li + li {
    margin-top: 8px;
}

.menu-item-city--mobile .city-submenu li a {
    display: block;
    padding: 0 0 0 20px;
    color: #fff;
    background: transparent;
    text-decoration: none;
    white-space: normal;
}

.menu-item-city--mobile .city-submenu li a:hover {
    background: transparent;
    opacity: 0.7;
}



/* выпадающее меню выбора города */



/* имоджи для выбора клуба у клубных карт */

.emoji-finger-point-up {
	display: block;
}

.bitafit-select-club-prompt {
	align-self: center;
	max-width: 350px;
	font-size: 28px;
	font-weight: bold;
}


/* имоджи для выбора клуба у клубных карт */


/* реферальная программа */

.referalnaya-programma-container {
	background: #F0F1F3;
	border-radius: 40px;
	padding: 60px;
}

	.referalnaya-programma-container img {
		display: block;
		width: 140px;
	}

.referalnaya-programma-rabotaet {
	
}

.referalnaya-programma-ne-rabotaet {
	text-align: center;
}

.referalnaya-programma-ne-rabotaet img {
		margin: 0 auto;
}


@media only screen and (max-width: 1160px) {
	.referalnaya-programma-container {
		background: #F0F1F3;
		border-radius: 20px;
		padding: 40px 0 0 0;
		margin: 0 10px;
	}
	
	.referalnaya-programma-container .ekskursiya-wraper {
		margin: 0;
	}
	
	.referalnaya-programma-container img {
		margin: 0 auto;
	}
}


/* реферальная программа */



/* Блог */

.blog-container {
	display: flex;
	justify-content: space-between;
	max-width: 1160px;
	margin-top: 20px;
	margin-bottom: 80px;
}

.blog-container-left {
	max-width: 760px;
}

.blog-container-right {
	max-width: 295px;
	position: relative;
	z-index: 98;
}

.blog-container-left img {
	border-radius: 40px;
	display: block;
	margin: 40px 0;
}

.blog-container-left table {
	border: 1px solid #ccc;
	border-collapse:collapse;
	margin: 40px 0;
}

.blog-container-left td, 
.blog-container-left td, 
.blog-container-left th {
	padding: 8px;
	border: 1px solid #ccc;
	vertical-align: top;
	text-align: left;
}

.blog-container-left th {
	font-weight: 700;
	background: #00BDC7;
	color: #fff;
	text-align: center;
	vertical-align: middle;
}

.blog-container-left ul, 
.blog-container-left ol {
	margin: 20px 0 20px 20px;
}

.blog-container-left ul li, 
.blog-container-left ol li {
	margin: 0 0 10px 0;
}

.blog-container-left h1 {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
	margin-top: 40px;
}

.blog-container-left h2 {
	font-size: 24px;
	font-weight: 700;
	line-height: 24px;
	margin: 40px 0 20px 0;
}

.blog-container-left p {
	margin: 40px 0;
}

.blog-container-left h2 + p {
  margin-top: 0 !important;
}

.blog-container-left .post-main-image {
	width: 760px;
	height: 400px;
	object-fit: cover;
	border-radius: 40px;
	margin-bottom: 40px;
	margin-top: 0;
}

.blog-container-left .post-details-container {
	display: flex;
	justify-content: space-between;
}

.blog-container-left .post-details-container-left {
	display: flex;
	justify-content: flex-start;
	height: 50px;
}

.blog-container-left .post-details-container-left-author-image {
	margin-right: 10px;
}

.blog-container-left .post-details-container-left-author-image img {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	object-fit: cover;
	display: inline;
	margin: 0;
}

.blog-container-left .post-details-container-left-author-text {
	align-self: center;
}

.blog-container-left .post-details-container-left-author-name {
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}

.blog-container-left .post-details-container-left-author-role {
	color: #898f98;
	font-size: 12px;
	font-weight: 600;
	line-height: 14px;
}

.blog-container-left .post-details-container-right {
	display: flex;
	justify-content: flex-end;
	color: #898f98;
	font-size: 12px;
	font-weight: 600;
	line-height: 14px;
}

.blog-container-left .post-details-container-right-date {
	margin-right: 10px;
}

.blog-container-left .post-details-container-right-category {
	margin-right: 20px;
}

.blog-container-left .post-details-container-right-category a {
	text-decoration: none;
	color: #898f98;
	font-size: 12px;
	font-weight: 600;
	line-height: 14px;
}

.blog-container-left .post-details-container-right-views img {
	vertical-align: middle;
	display: inline;
	margin: 0
}



.blog-container-right .zapishis-na-ekskursiyu-v-klub {
	padding: 20px 15px 15px 15px;
	background: #CECAEE;
	border-radius: 20px;
	margin: 0 0 40px 18px;
}

.blog-container-right .zapishis-na-ekskursiyu-v-klub-headline {
	font-size: 24px;
	font-weight: 700;
	line-height: 24px;
	margin: 0 0 16px 0;
}

.blog-container-right .zapishis-na-ekskursiyu-v-klub-text {
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}

.blog-container-right .zapishis-na-ekskursiyu-v-klub .button {
	display: block;
	text-align: center;
}


.blog-container-right .table-of-content-container {
	margin: 0 0 40px 0;
}


.blog-container-right .table-of-content-headline {
	font-size: 24px;
	font-weight: 700;
	line-height: 24px;
	margin: 0 0 20px 18px;
	
}

.blog-container-right .table-of-conten-item {
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	padding: 8px 0 8px 18px;
	border-left: 2px solid #F0F1F3;
	transition: color .2s ease, border-left .2s ease;
	text-decoration: none;
	display: block;
	color: #000;
}

.blog-container-right .table-of-conten-item-active,
.blog-container-right .table-of-conten-item:hover {
	border-left: 2px solid #00BDC7;
	color: #00BDC7;
}

.blog-container-right .popular-posts-container {
	
}

.blog-container-right .popular-posts-item {
	display: flex;
	margin: 0 0 15px 18px;
	text-decoration: none;
}

.blog-container-right .popular-posts-item-post-image {
	width: 50px;
	height: 50px;
	object-fit: cover;
	display: block;
	margin-right: 10px;
	border-radius: 15px;
}

.blog-container-right .popular-posts-item-post-name {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
	color: #000;
	transition: color .2s ease;
}

.blog-container-right .popular-posts-item:hover .popular-posts-item-post-name {
	color: #00BDC7;
}



.blog-home-container {
	max-width: 1160px;
	margin-top: 20px;
	margin-bottom: 80px;
}

.blog-home-container h1 {
	margin-bottom: 20px;
}

.blog-home-container .blog-categories,
.blog-home-container .blog-categories li {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
}

.blog-home-container .blog-categories .current-cat a {
	background: #141E32;
	color: #fff;
	cursor: default;
}

.blog-home-container .blog-categories {
	margin-top: 20px;
}

@media only screen and (max-width: 1160px) {
	.blog-home-container .blog-categories {
		flex-wrap: nowrap;          /* запрет переноса */
		overflow-x: auto;           /* горизонтальный скролл */
		-webkit-overflow-scrolling: touch; /* плавный скролл на iOS */
		padding-bottom: 5px;        /* чтобы скролл не обрезался */
		scrollbar-width: none;     /* Firefox */
		-ms-overflow-style: none;  /* IE/Edge */
		margin-left: -10px;
		margin-right: -10px;
		padding-left: 10px;
		padding-right: 10px;
	}
	
	.blog-home-container .blog-categories::-webkit-scrollbar {
		display: none;             /* Chrome, Safari */
	}
}

.blog-home-container .blog-categories li a {
	text-decoration: none;
	font-size: 12px;
	font-weight: 600;
	line-height: 14px;
	color: #000;
	padding: 13px 15px;
	border-radius: 15px;
	border: 1px solid #DADDE1;
	margin-right: 5px;
	white-space: nowrap;
}


.blog-home-top-block {
	display: flex;
	justify-content: space-between;
	margin-top: 40px;
}



.blog-home-top-block-left, 
.blog-home-top-block-right {
	width: 560px;
	background: #F0F1F3;
	border-radius: 40px;
	padding: 20px;
}



.blog-home-top-block-right {
	padding-bottom: 0;
}

.blog-home-top-block-left,
.blog-home-top-block-right-item {
	text-decoration: none;
	color: #000;
}


.blog-home-top-block-left-post-image {
	width: 520px;
	height: 270px;
	object-fit: cover;
	border-radius: 20px;
	margin-bottom: 20px;
}

.blog-home-top-block-right-item {
	display: flex;
	margin-bottom: 20px;
}

.blog-home-top-block-right-item-image {
	width: 140px;
	height: 80px;
	object-fit: cover;
	border-radius: 15px;
	margin-right: 20px;
}



.blog-home-top-block-right-item-text {
	width: 340px;
}

.blog-home-top-block-right-item-text-post-details,
.blog-home-top-block-left-post-details {
	display: flex;
	justify-content: space-between;
}

.blog-home-top-block-left-post-headline {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}



.blog-home-top-block-left-post-details {
	font-size: 12px;
	font-weight: 600;
	line-height: 14px;
	color: #828793;
	margin-bottom: 10px;
}

.blog-home-top-block-right-item-text-post-headline {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
}

.blog-home-top-block-right-item-text-post-details {
	font-size: 12px;
	font-weight: 600;
	line-height: 14px;
	margin-bottom: 5px;
	color: #828793;
}



.blog-home-top-block-right-item-text-post-details-right-image-eye-views {
	position: relative;
	top: 3px;
}

.blog-home-content-block {
	margin-top: 80px;
}

.blog-home-content-block-category-container {
	margin-bottom: 20px;
}

.main-page-blog-block-header {
	display: flex;
	justify-content: space-between;
}

.blog-home-content-block-category-container .button {
	font-size: 16px;
	display: block;
	width: 184px;
	margin: 0 auto;
	text-align: center;
}

.blog-home-content-block-category-head-container {
	display: flex;
	justify-content: space-between;
	margin-bottom: 20px;
}

.blog-home-content-block-category-head-name {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}

.blog-home-content-block-category-head-more {
	text-decoration: none;
	font-size: 12px;
	font-weight: 600;
	line-height: 14px;
	padding: 13px 15px;
	border-radius: 15px;
	border: 1px solid #00BDC7;
	color: #000;
}

.blog-home-content-block-category-head-more-mobile {
	display: none;
}

.blog-home-content-block-category-posts-container {
	display: flex;
	flex-wrap: wrap;
	margin-right: -20px;
}

.blog-glavnaya-container {
	flex-wrap: nowrap!important;          /* запрет переноса */
	overflow-x: auto;           /* горизонтальный скролл */
	-webkit-overflow-scrolling: touch; /* плавный скролл на iOS */
	gap: 0px;                  /* расстояние между элементами */
	padding-bottom: 20px;        /* чтобы скролл не обрезался */
	scrollbar-width: none;     /* Firefox */
	-ms-overflow-style: none;  /* IE/Edge */
	margin-right: calc((100vw - 1140px) / 2 * -1);
	margin-left: calc((100vw - 1140px) / 2 * -1);
	padding-right: calc((100vw - 1140px) / 2);
	padding-left: calc((100vw - 1140px) / 2);
}

.blog-home-content-block-category-post-card {
	width: 275px;
	min-width: 275px;
	background: #F0F1F3;
	border-radius: 20px;
	padding: 10px 10px 20px 10px;
	text-decoration: none;
	color: #000;
	margin-bottom: 20px;
	margin-right: 20px;
}


/*
.blog-home-content-block-category-post-card:nth-child(4n) {
	margin-right: 0;
}
*/

.blog-home-content-block-category-post-card-image {
	width: 255px;
	height: 150px;
	display: block;
	object-fit: cover;
	border-radius: 15px;
	margin-bottom: 15px;
}

.blog-home-button-center {
	text-align: center;
}

@media only screen and (max-width: 1160px) {
	.blog-home-top-block {
		flex-direction: column;
	}
	
	.blog-home-top-block-left, 
	.blog-home-top-block-right {
		width: 100%;
		background: #F0F1F3;
		border-radius: 20px;
		padding: 10px;
	}
	
	.blog-home-top-block-left {
		margin-bottom: 40px;
	}
	
	.blog-home-top-block-right {
		background: none;
		padding: 0;
	}
	
	
	.blog-home-top-block-left-post-image {
		width: 100%;
		height: 150px;
		object-fit: cover;
		border-radius: 15px;
		margin-bottom: 15px;
	}
	
	.blog-home-top-block-left-post-headline {
		font-size: 16px;
		font-weight: 600;
		line-height: 24px;
	}
	
	.blog-home-top-block-right-item-text {
		flex: 1;
	}
	
	.blog-home-top-block-right-item-image {
		width: 50px;
		height: 50px;
		object-fit: cover;
		border-radius: 15px;
		margin-right: 10px;
		flex: 0 0 50px;
	}
	
	.blog-home-top-block-right-item-text-post-details {
		margin-bottom: 0;
	}
	
	.blog-home-content-block-category-posts-container {
		flex-wrap: nowrap!important;          /* запрет переноса */
		overflow-x: auto;           /* горизонтальный скролл */
		-webkit-overflow-scrolling: touch; /* плавный скролл на iOS */
		gap: 10px;                  /* расстояние между элементами */
		padding-bottom: 20px;        /* чтобы скролл не обрезался */
		scrollbar-width: none;     /* Firefox */
		-ms-overflow-style: none;  /* IE/Edge */
		margin-left: -10px;
		margin-right: -10px;
		padding-left: 10px;
		padding-right: 10px;
	}
	
	.blog-category-container .blog-home-content-block-category-posts-container {
		flex-direction: column;
	}
	
	.blog-home-content-block-category-post-card {
		margin-bottom: 0;
		margin-right: 0;
	}
	
	.blog-category-container .blog-home-content-block-category-post-card {
		width: 100%;
	}
	
	.blog-home-content-block-category-post-card-image {
		width: 100%;
		height: 150px;
		display: block;
		object-fit: cover;
		border-radius: 15px;
		margin-bottom: 15px;
	}
	
	.blog-home-content-block-category-head-more {
		display: none;
	}
	
	.blog-home-content-block-category-head-more-mobile {
		display: block;
		text-decoration: none;
		font-size: 12px;
		font-weight: 600;
		line-height: 14px;
		padding: 13px 15px;
		border-radius: 15px;
		border: 1px solid #00BDC7;
		color: #000;
		text-align: center;
		margin-bottom: 40px;
	}
	
	.blog-container {
		flex-direction: column;
	}
	
	.blog-container-right {
		display: none;
	}
	
	.blog-container-left {
		max-width: 100%;
	}
	
	.blog-container-left .post-main-image {
		width: 100%;
		height: 180px;
	}
	
	.blog-container-left .post-details-container {
		flex-direction: column;
	}
	
	.blog-container-left .post-details-container-right {
		justify-content: flex-start;
		margin-top: 15px;
	}
	
	.post-details-container-right-views {
		margin-left: auto;
	}
	
	.blog-home-content-block-category-container {
		margin: 40px  10px 20px 10px;
	}
	
	.blog-home-content-block-category-container .button {
		display: block;
		text-align: center;
		font-size: 16px;
	}
}

.blog-home-content-block-category-post-card-delails-container {
	font-size: 12px;
	font-weight: 600;
	line-height: 14px;
	color: #828793;
	display: flex;
	justify-content: space-between;
	margin-bottom: 10px;
}

.blog-home-content-block-category-post-card-headline {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
}

.blog-category-container {
	margin-top: 40px;
}

.blog-pagination {
	margin-top: 40px;
}

.blog-pagination {
	text-align: center;
}

.page-numbers {
	text-decoration: none;
	color: #000;
	font-size: 12px;
	font-weight: 600;
	line-height: 14px;
	padding: 11.2px 15.6px;
	border: 1px solid #DADDE1;
	border-radius: 15px;
}

.blog-pagination .current {
	border-color: #00BDC7;
}

.blog-pagination .prev img,
.blog-pagination .next img {
	position: relative;
	top: 3px;
}


.blog-pagination .next img {
	left: 1px;
}

.blog-pagination .prev img {
	right: 1px;
}

.post-content hr {
	border: none;
	height: 2px;
	background: #F0F1F3;
	margin-bottom: 20px;
}

.post-share-and-to-top-container {
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}

.post-share {
	text-decoration: none;
	color: #000;
	font-size: 12px;
	font-weight: 600;
	line-height: 14px;
	padding: 12.2px 15px 10.2px 15px;
	border-radius: 15px;
	border: 1px solid #DADDE1;
}

.post-to-top {
	display: block;
	padding: 15.2px 12.2px;
	border-radius: 15px!important;
	border: 1px solid #DADDE1;
	margin: 0!important;
	cursor: pointer;
}

.post-tags span {
	font-size: 12px;
	font-weight: 600;
	line-height: 14px;
	padding: 5px 10px;
	border: 1px solid #DADDE1;
	border-radius: 15px;
	margin-right: 10px;
}

.ya-share2__popup-content .ya-share2__mobile-popup-copy-link .ya-share2__item.ya-share2__item_copy.ya-share2__item_copy-link-button {
	background: #fff!important;
}

.blog-read-more-post-container {
	display: flex;
	padding: 10px;
	border-radius: 20px;
	background: #F0F1F3;
	align-items: center;
}

.blog-read-more-post-image {
	width: 80px;
	height: 80px;
	object-fit: cover;
	border-radius: 15px!important;
	display: block;
	margin: 0 15px 0 0!important;
}

.blog-read-more-post-text {
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
}

.blog-read-more-post-link {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
}

@media only screen and (max-width: 1160px) {
	.blog-read-more-post-container {
		flex-direction: column;
	}
	
	.blog-read-more-post-image {
		width: 100%;
		height: 80px;
		object-fit: cover;
		border-radius: 15px!important;
		display: block;
		margin: 0 0 10px 0!important;
	}
	
	.blog-read-more-post-text {
		margin-right: auto;
	}
	
	.wp-block-table {
		overflow: auto;
		white-space: nowrap;
		-ms-overflow-style: none;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
		margin-left: -10px;
		margin-right: -10px;
		padding-left: 10px;
		padding-right: 10px;
	}
	
	.wp-block-table td, .wp-block-table th, .wp-block-table tr {
		white-space: wrap;
	}
	.wp-block-table table {
		min-width: 760px!important;
		white-space: wrap;
	}
}


.zapishis-na-ekskursiyu-v-klub-container {
	background: #fd99ea center center url('https://brightfit.ru/wp-content/themes/bright-fit/images/zapishis-na-ekskursiyu-v-klub-bg-image.webp') no-repeat;
	border-radius: 40px;
	background-size: cover;
	padding: 40px;
}

.zapishis-na-ekskursiyu-v-klub-headline {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
	margin: 0 0 20px 0!important;
}

.zapishis-na-ekskursiyu-v-klub-text {
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	margin: 0 0 20px 0!important;
}

.zapishis-na-ekskursiyu-v-klub-button a {
	display: inline-block;
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
	padding: 13px 56.5px;
}

/* Блог */



/* попап выбор города */

.bf-geo-popup-overlay{
    position: fixed;
    inset: 0;
    background: transparent;
    z-index: 9998;
    pointer-events: none;
}

.bf-geo-popup{
    position: fixed;
    top: 80px;
    right: 20vw;
    width: 300px;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 16px 40px rgb(0 0 0 / .4);
    padding: 15px;
    z-index: 9999;
    pointer-events: auto;
}

.bf-geo-popup__title{
    font-size: 16px;
    line-height: 24px;
    font-weight: 600;
}

.bf-geo-popup__city{
    font-size: 16px;
    line-height: 24px;
    font-weight: 600;
    color: #00BDC7;
	margin-bottom: 15px;
}

.bf-geo-popup__actions{
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.bf-geo-popup__btn{
    border: 0;
    border-radius: 15px;
    padding: 13px;
    font-size: 12px;
    line-height: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: .2s ease;
}

.bf-geo-popup__btn--primary{
    background: #16233b;
    color: #fff;
}

.bf-geo-popup__btn--primary:hover{
    opacity: .92;
}

.bf-geo-popup__btn--secondary{
    background: #edf0f3;
    color: #1d2940;
}

.bf-geo-popup__btn--secondary:hover{
    background: #e4e8ec;
}

.bf-geo-popup__chooser{
    margin-top: 16px;
    display: none;
}

.bf-geo-popup__chooser.is-open{
    display: block;
}

.bf-geo-popup__select{
    /*
	width: 100%;
    border: 1px solid #d8dee6;
    border-radius: 14px;
    padding: 13px 14px;
    font-size: 16px;
    line-height: 1.2;
    background: #fff;
    color: #1d2940;
    outline: none;
    margin-bottom: 12px;
	*/
	border: 1px solid #ddd;
}

.bf-geo-popup__save{
    width: 100%;
}

@media (max-width: 767px){
    .bf-geo-popup{
        top: auto;
        right: 10px;
        left: 10px;
        top: 70px;
        width: auto;
        max-width: none;
        border-radius: 20px;
        padding: 20px 18px 18px;
    }

    /*
	.bf-geo-popup__actions{
        flex-direction: column;
    }
	
    .bf-geo-popup__btn{
        width: 100%;
    }
	*/
}

/* попап выбор города */




/* кнопки месенджеров у формы заявки */
.messengers-buttons-in-form-container {
	max-width: 270px;
}

.messengers-buttons-in-form-container p {
	display: flex;
	justify-content: space-between;
	align-items: center; /* центр по вертикали */
	margin: 20px 0;
	gap: 10px;
}

.oplata-iz-sms-form-zayavka .messengers-buttons-in-form-container {
	margin: 20px 0;
}

.messengers-buttons-in-form-container br,
.messengers-buttons-in-form-telegram br,
.messengers-buttons-in-form-max br {
	display: none!important;
}

.messengers-buttons-in-form-container p {
	margin: 20px 0!important;
	padding: 0!important;
}

.messengers-buttons-in-form-telegram,
.messengers-buttons-in-form-max {
	all: unset;
	display: flex!important;
	align-items: center; /* центр по вертикали */
	gap: 5px;
	border-radius: 15px;
	border: 1px solid #000;
	align-self: center;
	padding: 10px;
	display: block;
	text-decoration: none;
	cursor: pointer;
	background: rgb(206 202 238 / .6);
	font-size: 13px;
	line-height: 16px;
	font-weight: 600;
	width: 50%;
	transition: .2s ease;
}

.messengers-buttons-in-form-telegram:hover,
.messengers-buttons-in-form-max:hover {
	color: #000!important;
}

.messengers-buttons-in-form-max-icon img,
.messengers-buttons-in-form-telegram-icon img {
	all: unset;
	width: 24px;
	height: 24px;
	display: block;
}

.messengers-buttons-in-form-max-icon,
.messengers-buttons-in-form-telegram-icon,
.messengers-buttons-in-form-telegram-text,
.messengers-buttons-in-form-max-text {
	align-self: center;
}

@media only screen and (max-width: 1160px) {
	.messengers-buttons-in-form-container {
		max-width: 100%;
	}
	
	.messengers-buttons-in-form-container p {
		flex-direction: column;
	}
	
	.messengers-buttons-in-form-telegram,
	.messengers-buttons-in-form-max {
		justify-content: center;
		width: calc(100% - 21px)!important;
	}
}

.messengers-buttons-in-form-container.is-disabled {
  opacity: 0.2;
  pointer-events: none;
}

.messengers-buttons-in-form-container.is-disabled a {
  cursor: not-allowed;
}

/* кнопки месенджеров у формы заявки */

/* Bright One */

.bright-one-preimushchestva-kluba-container {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.bright-one-preimushchestva-kluba-item {
	width: 360px;
	padding: 40px;
	border-radius: 40px;
	background: #F0F1F3;
	margin-bottom: 40px;
}

@media only screen and (max-width: 1160px) {
	.bright-one-preimushchestva-kluba-item {
		width: 100%;
		padding: 2	0px;
		border-radius: 40px;
		background: #F0F1F3;
		margin-bottom: 10px;
	}
}

.bright-one-preimushchestva-kluba-item img {
	display: block;
	margin-bottom: 27px;
}

.bright-one-preimushchestva-kluba-item h3 {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
	margin-bottom: 10px;
}

.bright-one-preimushchestva-kluba-item p {
	font-size: 12px;
	font-weight: 500;
	line-height: 16px;
	color: #828793;
	margin-bottom: 0px;
}

.bright-one-info-wraper {
	padding-top: 40px;
	margin: 80px 0;
}

.bright-one-info-container {
	border-radius: 40px;
	background: #8246FF;
}

.bright-one-info-inner-container {
	border-radius: 40px;
	background: #CECAEE;
	display: flex;
	padding: 60px 60px 0 60px;
}

.bright-one-info-inner-container-text {
	width: 500px;
	margin-right: 128px;
}

.bright-one-info-inner-container-image img {
	width: 358px;
	display: block;
	margin-top: -100px;
}



.bright-one-info-container-footer {
	color: #fff;
	padding: 60px;
}

.bright-one-info-container-footer-inner {
	display: flex;
}

.bright-one-info-container-footer-qr {
	margin-right: 60px;
}

.bright-one-info-container-footer-qr img {
	width: 200px;
}

.bright-one-info-container-footer-text-apps img {
    border-radius: 15px;
    border: 2px solid;
    border-color: #fff;
    transition: border-color .2s ease-in-out;
    display: inline-block;
    margin: 0 0 18px 0;
    height: 50px;
}

.bright-one-info-inner-container-text h2,
.bright-one-info-inner-container-text-h2 {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
	margin-bottom: 20px;
}

.bright-one-info-inner-container-text p {
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	margin-bottom: 20px;
}



.bright-one-info-inner-container-text ul {
	list-style: none;
	margin-left: 0;
}

.bright-one-info-inner-container-text ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 5px;
	width: 40px;
	height: 40px;
	background-size: contain;
	background-repeat: no-repeat;
}


.bright-one-info-inner-container-list-item-1::before {
	background-image: url('https://brightfit.ru/wp-content/themes/bright-fit/images/bright-one-info-inner-container-list-item-1-01.svg');
}

.bright-one-info-inner-container-list-item-2::before {
	background-image: url('https://brightfit.ru/wp-content/themes/bright-fit/images/bright-one-info-inner-container-list-item-2-01.svg');
}

.bright-one-info-inner-container-list-item-3::before {
	background-image: url('https://brightfit.ru/wp-content/themes/bright-fit/images/bright-one-info-inner-container-list-item-3-01.svg');
}



.bright-one-info-inner-container-text ul li {
	font-size: 14px;
	font-weight: 400;
	line-height: 24px;
	margin-bottom: 20px;
	position: relative;
	padding-left: 60px;
}

.bright-one-info-inner-container-text ul li b {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
}

.bright-one-info-container-footer-text-apps h3,
.bright-one-info-container-footer-text-apps-h3 {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
	margin-top: 37px;
	margin-bottom: 40px;
}

.bright-one-info-container-footer p {
	font-size: 14px;
	font-weight: 600;
	line-height: 20px;
	margin-top: 10px;
}

@media only screen and (max-width: 1160px) {
	.bright-one-info-inner-container-image {
		display: none;
	}
	
	.bright-one-info-inner-container-text {
		width: 100%;
		margin-right: 0;
	}
	
	.bright-one-info-inner-container {
		padding: 15px 15px 0 15px;
		border-radius: 20px;
	}
	
	.bright-one-info-inner-container-text h2,
	.bright-one-info-inner-container-text-h2	{
		font-size: 24px;
		font-weight: 700;
		line-height: 24px;
		margin-top: 10px
	}
	
	.bright-one-info-inner-container-text p {
		font-weight: 600;
		margin-bottom: 15px;
	}
	
	.bright-one-info-container-footer-text-apps img {
		display: block;
		margin-bottom: 0;
	}
	
	.bright-one-info-container-footer p {
		display: none;
	}
	
	.bright-one-info-container-footer-text-apps h3,
	.bright-one-info-container-footer-text-apps-h3 {
		font-size: 24px;
		font-weight: 700;
		line-height: 24px;
		margin-top: 20px;
		margin-bottom: 20px;
	}
	
	.bright-one-info-container-footer-qr {
		display: none;
	}
	
	.bright-one-info-container-footer {
		padding: 15px;
	}
	
	.bright-one-info-container {
		border-radius: 20px;
	}
	
	.bright-one-info-wraper {
		margin-bottom: 40px;
	}
}

.bright-one-map-info {
	margin-top: 80px;
}

.bright-one-map-phone {
	text-decoration: none;
	color: #000;
	background-color: #fff!important;
	padding: 13px 15px;
	border-radius: 15px;
	border: 1px solid #DADDE1;
	font-size: 12px;
	font-weight: 600;
	line-height: 14px;
}

.bright-one-map-info .club-work-time {
	margin-top: 30px;
}

.bright-one-chastye-voprosy-container .accordion-container {
	margin-top: 0;
}

.bright-one-preimushchestva-kluba-wraper h2,
.bright-one-chastye-voprosy-container h2,
.bright-one-tarify-container h2,
.bright-one-h2 {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
	margin-bottom: 40px;
}

@media only screen and (max-width: 1160px) {
	.bright-one-preimushchestva-kluba-wraper h2,
	.bright-one-chastye-voprosy-container h2,
	.bright-one-tarify-container h2 {
		font-size: 24px;
		font-weight: 800;
		line-height: 24px;
		margin-bottom: 20px;
	}
	
	.bright-one-chastye-voprosy-container {
		margin-left: 10px;
		margin-right: 10px;
	}
	
	.bright-one-map-info {
		margin-top: 40px;
	}
}


.bright-one-preimushchestva-kluba-container {
	margin-bottom: 60px;
}


.club-karti-card-highlight {
	background: #e6daff;
}

.bright-one-tarify-container .club-karti-card {
	cursor: default;
}


/* Bright One */



.messengers-buttons-in-form-message {
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 1.4;
  color: red;
  background: rgb(255 255 255 / .8);
  padding: 8px;
  max-width: 270px;
  border-radius: 8px;
}

.bright-one-skachai-priloshenie-big-button {
	font-size: 48px!important;
	margin-top: 80px!important;
	margin-bottom: 80px!important;
}

@media only screen and (max-width: 1160px) {
	.bright-one-skachai-priloshenie-big-button {
		font-size: 20px!important;
		margin-top: 80px!important;
		margin-bottom: 80px!important;
	}
}


.messengers-buttons-in-form-container.is-disabled {
  opacity: 0.5;
}

.messengers-buttons-in-form-container.is-disabled a {
  cursor: not-allowed;
}

.wpcf7-submit.is-disabled {
  opacity: 0.5;
}

.bright-one-app-banner-qr {
	width: 250px;
}





.wpcf7-submit.is-disabled {
  opacity: 0.5 !important;
  pointer-events: none !important;
  cursor: not-allowed !important;
}

.wpcf7-submit.is-disabled:hover {
  opacity: 0.5 !important;
  cursor: not-allowed !important;
  transform: none !important;
}

.messengers-buttons-in-form-container.is-disabled {
  opacity: 0.5;
}

.messengers-buttons-in-form-container.is-disabled a {
  pointer-events: none !important;
  cursor: not-allowed !important;
}




/* tiku */
.tiku {
	text-align: center;
	color: #999;
	font-size: 13px;
	margin: 0 0 20px 0;
	padding: 10px;
	line-height: 24px;
}

.tiku img {
	position: relative;
	width: 16px;
	top: 4px;
	right: 4px;
}

.tiku a {
	color: #999;
	text-decoration: none;
	border-bottom: 1px solid #ccc;
}

/* tiku */


.align-center {
	text-align: center
}



.SmartCaptcha-Shield_position_bottom, 
.SmartCaptcha-Shield_position_left, 
.SmartCaptcha-Shield, 
.SmartCaptcha-Shield_visible {
	display: none!important;
}


.ymaps-2-1-79-balloon__tail {
	display: none;
}





/* клубы с басейном */
	.ymaps-2-1-79-balloon__tail {
		display: none;
	}

	#no-pool-clubs-message,
	.no-pool-clubs-message {
		margin-top: 16px;
		font-size: 16px;
		line-height: 1.4;
	}

	#no-pool-clubs-message a,
	.no-pool-clubs-message a {
		text-decoration: underline;
	}
/* клубы с басейном */




/* Виды тренировок NEW */
.vidi-trenirovki-all-template-new-card-text {
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	margin-top: 5px;
}

.vidi-trenirovki-all-template-new-image-wraper {
	position: relative;
}

.vidi-trenirovki-all-template-new-image-wraper .trenirovka-intensivnost {
	position: absolute;
	bottom: 10px;
	left: 10px;
}
/* Виды тренировок NEW */



/* Тарифы подписки */

.card-subscription-template-top-container,
.card-subscription-template-mid-container,
.card-subscription-template-top-container-left-header-container,
.card-subscription-template-top-container-right-header-container {
	display: flex;
	justify-content: space-between;
}



.card-subscription-template-top-container {
	margin-bottom: 40px;
	flex-wrap: wrap;
}

.card-subscription-template-top-container .button {
	display: block;
	text-align: center;
	margin-top: 40px;
}

.card-subscription-template-top-container-left-header-container,
.card-subscription-template-top-container-right-header-container {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
	margin-bottom: 20px;
}


.polnyj-s-bassejnom .card-subscription-template-top-container-left-header-container-left,
.dnevnoj-s-bassejnom .card-subscription-template-top-container-right-header-container-left {
	max-width: 210px;
}	

.card-subscription-template-top-container-left-header-container-right-small {
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}

.card-subscription-template-mid-container {
	background: #F0F1F3;
	border-radius: 40px;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}

.card-subscription-template-mid-container h2,
.card-subscription-template-mid-container-h2,
.card-subscription-template-mid-container-left-price {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}

.card-subscription-template-mid-container-left-price {
	margin: 20px 0;
}

.card-subscription-template-mid-container-left-price-old {
	font-size: 16px;
	font-weight: 600;
	line-height: 24px;
	text-decoration: line-through;
	color: #828793;
}

.card-subscription-template-top-container-left,
.card-subscription-template-top-container-right,
.card-subscription-template-mid-container-left,
.card-subscription-template-mid-container-right {
	width: 560px;
	border-radius: 40px;
	padding: 40px;
}

.card-subscription-template-mid-container-right ul,
.card-subscription-template-mid-container-right ol {
	margin-left: 20px;
}

.card-subscription-template-top-container-left {
	background: linear-gradient(to right, #e2a0f7 0%, #61a3fa 50%, #99d1ea 100%);
}

.card-subscription-template-top-container-right {
	background: #e6daff;
}

.polnyj-s-bassejnom {
	margin-bottom: 16px;
	background: linear-gradient(to top, #e2a0f7 0%, #61a3fa 50%, #99d1ea 100%);
}

.dnevnoj-s-bassejnom {
	margin-bottom: 16px;
	background: #CCF2F4;
}

.card-subscription-template-top-container-left-header-container-list,
.card-subscription-template-top-container-right-header-container-list {
	background: #fff;
	border-radius: 20px;
	padding: 15px 15px 15px 40px;
	margin-bottom: 15px;
}

.card-subscription-template-top-container-left-header-container-list ul,
.card-subscription-template-top-container-right-header-container-list ul {
	margin: 0;
	padding: 0;
	list-style-image: url("images/card-subscription-template-top-container-right-header-container-list-marker.svg");
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
}

.card-subscription-template-top-container-left-header-container-list-x ul,
.card-subscription-template-top-container-left-header-container-list-x ol {
	margin-top: 0;
	padding-top: 0;
	list-style-image: url("images/card-subscription-template-top-container-right-header-container-list-marker-x.svg");
}

.card-subscription-template-app-container {
	background: #e6daff;
	text-align: center;
	border-radius: 40px;
	padding: 60px;
	margin-top: 80px;
}

.card-subscription-template-app-container .card-subscription-template-app-container-img {
	width: 100px;
	border-radius: 20px;
}

.card-subscription-template-accordion-container {
	margin-top: 0;
}

.card-subscription-template-accordion-container-h2 {
	margin: 80px 0 40px 0;
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
}

hr.card-subscription-template-line {
	display: none;
}

a.club-karti-card-subscription {
	text-decoration: none;
	background: #e6daff;
}

.club-karti-card-subscription .club-karti-card-text-normal-price {
	text-decoration: none;
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
	color: #8246FF;
}

.club-karti-card-subscription h3 {
	color: #141E32;
}

.club-karti-card-subscription .club-card-read-more-button-inner-wrapper {
	background: #141E32;
	border-color: #141E32;
	color: #fff;
}

.card-subscription-template-top-container-text {
	margin-bottom: 20px;
}


@media only screen and (max-width: 1160px) {
	.card-subscription-template-top-container,
	.card-subscription-template-mid-container {
		display: block;
	}
	
	.card-subscription-template-top-container-left,
	.card-subscription-template-top-container-right,
	.card-subscription-template-mid-container-left,
	.card-subscription-template-mid-container-right {
		width: 100%;
		border-radius: 20px;
		padding: 20px 15px 15px 15px;
	}
	
	.card-subscription-template-top-container-left,
	.card-subscription-template-top-container-right {
		width: 90%;
		display: flex;
		flex-direction: column;
		height: auto;
		margin-right: 10px;
	}
	
	.card-subscription-template-top-container-left {
		margin-bottom: 0;
	}
	
	.card-subscription-template-top-container {
		margin: 0 -10px 20px -10px;
		padding-left: 10px;
		padding-right: 10px;
		display: flex;
		flex-wrap: nowrap !important;
		align-items: stretch;
		justify-content: start;

		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;

		scrollbar-width: none;
		-ms-overflow-style: none;
	}

	.card-subscription-template-top-container::-webkit-scrollbar {
		display: none;
	}

	.card-subscription-template-top-container > * {
		flex: 0 0 auto;
		align-self: stretch;
	}
	
	.polnyj-s-bassejnom,
	.dnevnoj-s-bassejnom {
		margin-bottom: 0px;
	}
	
	.card-subscription-template-top-container::-webkit-scrollbar {
		display: none;              /* Chrome, Safari, Opera */
	}

	.card-subscription-template-top-container > * {
		flex: 0 0 auto; /* чтобы элементы не сжимались */
	}
	
	.card-subscription-template-mid-container {
		border-radius: 20px;
	}
	
	hr.card-subscription-template-line {
		display: block;
		margin: 0;
		padding: 0;
		background: none;
		outline: none;
		border: 0;
		border-bottom: 1px solid #828793;
		margin: 0 15px;
	}
	
	.card-subscription-template-app-container {
		margin-top: 40px;
		padding: 30px 15px 15px 15px;
		border-radius: 20px;
	}
	
	.card-subscription-template-app-buttons-container {
		display: block;
	}
	
	.card-subscription-template-app-buttons-container a {
		width: 100%;
		display: block;
		border-radius: 15px;
		border: 2px solid;
		border-color: #141E32;
		transition: border-color .2s ease-in-out;
	}
	
	.card-subscription-template-app-buttons-container a:hover img {
		border-color: #00BDC7;
	}
	
	.card-subscription-template-app-buttons-container a img {
		border: 0;
	}
	
	.card-subscription-template-top-container .button {
		margin-top: 20px;
	}
	
	.card-subscription-template-top-container-left-header-container,
	.card-subscription-template-top-container-right-header-container {
		font-size: 24px;
		font-weight: 700;
		line-height: 24px;
		flex: 0 0 auto;
	}
	
	.polnyj-s-bassejnom .card-subscription-template-top-container-left-header-container-left,
	.dnevnoj-s-bassejnom .card-subscription-template-top-container-right-header-container-left {
		max-width: 145px;
	}	
	
	.card-subscription-template-accordion-container-h2 {
		margin: 40px 0 20px 0;
		font-size: 24px;
		font-weight: 800;
		line-height: 24px;
	}
	
	.card-subscription-template-mid-container h2,
	.card-subscription-template-mid-container-h2,
	.card-subscription-template-mid-container-left-price {
		font-size: 24px;
		font-weight: 700;
		line-height: 24px;
	}
	
	.card-subscription-template-top-container-text {
		flex: 0 0 auto;

		min-height: 56px;
		margin-top: 18px;
		margin-bottom: 16px;
	}
	
	.card-subscription-template-top-container-left-header-container-list {
		flex: 0 0 auto;
		box-sizing: border-box;
	}

	/* Кнопка всегда у нижнего края карточки */
	.card-subscription-template-top-container > div > .button {
		display: flex;
		align-items: center;
		justify-content: center;

		width: 100%;
		box-sizing: border-box;

		margin-top: auto;
	}
	
	.card-subscription-template-top-container-left-header-container-right-small {
		display: block;
		text-align: right;
	}
	
	/* Если осталась только одна карточка подписки */
	.card-subscription-template-top-container > div:only-child {
		flex: 0 0 100%;
		max-width: 100%;
		width: 100%;
		margin-right: 0;
	}
}





/* Тарифы подписки */


/* Вопросо и ответы на главной */
.qa-header-glavnaya {
	font-size: 34px;
	font-weight: 700;
	line-height: 36px;
	margin: 40px 0 20px 0;
}
@media only screen and (max-width: 1160px) {
	.qa-header-glavnaya {
		font-size: 24px;
		line-height: 24px;
		margin: 0 0 0 0;
	}
}

/* Вопросо и ответы на главной */

/* =======================================================
   ВРЕМЯ ПОСЕЩЕНИЯ
======================================================= */

.club-card-working-hours {
    background: #F0F1F3;
    border-radius: 20px;
    padding: 15px;
    margin-bottom: 20px;
}

.club-card-working-hours-title {
    font-size: 14px;
    line-height: 20px;
    font-weight: 600;
    margin-bottom: 5px;
}

.club-card-working-hours-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
}

.club-card-working-hours-time {
    color: #00BDC7;
    white-space: nowrap;
    font-size: 14px;
    line-height: 20px;
    font-weight: 600;
}


/* =======================================================
   ГОСТЕВЫЕ ВИЗИТЫ
======================================================= */

.club-card-guest-visits {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    background: #F0F1F3;
    border-radius: 20px;
    padding: 15px;
    margin-bottom: 20px;
}

.club-card-guest-visits-image {
    width: 60px;
    height: 40px;
    flex: 0 0 60px;
    overflow: hidden;
	border-radius: 8px;
}

.club-card-guest-visits-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.club-card-guest-visits-text {
    flex: 1;
    min-width: 0;
}

.club-card-guest-visits-title {
    margin-bottom: 4px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 600;
}

.club-card-guest-visits-description {
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
}

.club-card-guest-visits-more {
    margin-left: 5px;
    color: #00b9c9;
    text-decoration: none;
    cursor: pointer;
}

.club-card-guest-visits-more:hover {
    text-decoration: underline;
}

.club-card-guest-visits-amount {
    width: 40px;
    flex: 0 0 40px;
    height: 40px;
    box-sizing: border-box;
    border: 6px solid #00b9c9;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    font-size: 14px;
    line-height: 20;
    font-weight: 600;
}


/* =======================================================
   POPUP ГОСТЕВЫХ ВИЗИТОВ
======================================================= */

.club-card-guest-visits-popup {
    position: fixed;
    inset: 0;
    z-index: 999999999999;
    display: flex;
    align-items: center;
    justify-content: center;
    visibility: hidden;
    opacity: 0;
    overflow: hidden;
    transition: opacity .25s ease, visibility .25s ease;
}

.club-card-guest-visits-popup.is-open {
    visibility: visible;
    opacity: 1;
}


/* затемнение */

.club-card-guest-visits-popup-overlay {
    position: absolute;
    inset: 0;
    background: rgba(22, 34, 56, .32);
}


/* белое окно */

.club-card-guest-visits-popup-window {
    position: relative;
    z-index: 2;
    width: min(390px, calc(100vw - 30px));
    max-width: 100%;
    max-height: calc(100vh - 40px);
    padding: 54px 54px 38px;
    background: #fff;
    border-radius: 40px;
    overflow-y: hidden;
    overflow-x: hidden;
}


/* =======================================================
   КРЕСТИК
======================================================= */

.club-card-guest-visits-popup-close {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 99999999999999999999999999999999;
    width: 42px;
    height: 42px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 13px;
    margin: 0;
    border: 1px solid #d9dde4;
    border-radius: 15px;
    background: #fff;
    color: #162238;
    font-size: 30px;
    line-height: 1;
    font-weight: 300;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
}

.club-card-guest-visits-popup-close:hover {
    background: #f5f6f7;
}


/* =======================================================
   СОДЕРЖИМОЕ POPUP
======================================================= */

.club-card-guest-visits-popup-content {
    width: 100%;
    box-sizing: border-box;
}

.club-card-guest-visits-popup-content h3 {
    margin: 0 0 20px;
    font-size: 24px;
    line-height: 24px;
    font-weight: 800;
}


/* =======================================================
   ВЕРХНИЕ СЕРЫЕ КАРТОЧКИ POPUP
======================================================= */

.club-card-guest-visits-popup-info {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 22px;
}

.club-card-guest-visits-popup-counter,
.club-card-guest-visits-popup-club {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    box-sizing: border-box;
    padding: 14px;
    background: #f1f2f4;
    border-radius: 20px;
}


/* круг с человеком */

.club-card-guest-visits-popup-counter-icon {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    box-sizing: border-box;
    border: 5px solid #00b9c9;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    font-size: 20px;
    line-height: 1;
}


/* квадрат Bright Fit */

.club-card-guest-visits-popup-club-icon {
    width: 50px;
    height: 50px;
}

.club-card-guest-visits-popup-club-icon img {
    display: block;
    border-radius: 16px;
}


/* текст серых карточек */

.club-card-guest-visits-popup-counter > div:last-child,
.club-card-guest-visits-popup-club > div:last-child {
    flex: 1;
    min-width: 0;
}

.club-card-guest-visits-popup-counter strong,
.club-card-guest-visits-popup-club strong {
    display: block;
    font-size: 14px;
    line-height: 20px;
    font-weight: 600;
    overflow-wrap: break-word;
}

.club-card-guest-visits-popup-counter span,
.club-card-guest-visits-popup-club span {
    display: block;
    margin-top: 2px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
}


/* =======================================================
   ТЕКСТ POPUP
======================================================= */

.club-card-guest-visits-popup-text {
    font-size: 14px;
    line-height: 20px;
	font-weight: 400;
}

.club-card-guest-visits-popup-text p {
    margin: 0 0 20px;
}

.club-card-guest-visits-popup-text strong {
    font-weight: 600;
}


/* =======================================================
   КНОПКА "ПОНЯТНО"
======================================================= */

.club-card-guest-visits-popup-ok {
    display: block;
    width: 100%;
    margin: 5px 0 0;
    padding: 12px 20px;
    border: 1px solid #d9dde4;
    border-radius: 15px;
    background: #fff;
    color: #162238;
    font-size: 12px;
    line-height: 14px;
    font-weight: 600;
    text-align: center;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
}

.club-card-guest-visits-popup-ok:hover {
    background: #f5f6f7;
}


/* =======================================================
   БЛОКИРОВКА СКРОЛЛА СТРАНИЦЫ
======================================================= */

body.club-card-guest-popup-open {
    overflow: hidden !important;
}


/* =======================================================
   АДАПТИВ ОСНОВНЫХ БЛОКОВ
======================================================= */

@media (max-width: 1160px) {
    .club-card-guest-visits {
        display: grid;
        grid-template-columns: auto 1fr auto;
        grid-template-areas:
            "image . amount"
            "text text text";
        align-items: start;
    }

    .club-card-guest-visits-image {
        grid-area: image;
    }

    .club-card-guest-visits-text {
        grid-area: text;
    }

    .club-card-guest-visits-amount {
        grid-area: amount;
        justify-self: end;
    }

    .club-card-guest-visits-description {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    .club-card-guest-visits-more {
        display: block;
        margin-left: 0;
    }
}


/* =======================================================
   МОБИЛЬНЫЙ POPUP
======================================================= */

@media (max-width: 600px) {

    .club-card-guest-visits-popup {
        align-items: flex-end;
        overflow: hidden;
    }

    .club-card-guest-visits-popup-window {
        width: 100%;
        max-width: 100%;
        max-height: 92vh;
        box-sizing: border-box;
        padding: 50px 24px 28px;
        border-radius: 28px 28px 0 0;
        overflow-y: hidden;
        overflow-x: hidden;
    }

    .club-card-guest-visits-popup-close {
        top: 10px;
        right: 14px;
        width: 38px;
        height: 38px;
        font-size: 27px;
    }

    .club-card-guest-visits-popup-counter,
    .club-card-guest-visits-popup-club {
        padding: 12px;
        border-radius: 18px;
    }

    .club-card-guest-visits-popup-counter-icon,
    .club-card-guest-visits-popup-club-icon {
        width: 46px;
        height: 46px;
        flex-basis: 46px;
    }

}


/* =======================================================
   ОЧЕНЬ УЗКИЕ ЭКРАНЫ
======================================================= */

@media (max-width: 480px) {

    .club-card-working-hours-row {
        align-items: flex-start;
    }

    .club-card-working-hours-label {
        padding-right: 10px;
    }

    .club-card-guest-visits {
        gap: 10px;
    }

    .club-card-guest-visits-image {
        width: 60px;
        height: 48px;
        flex-basis: 60px;
    }

    .club-card-guest-visits-title {
        font-size: 15px;
    }

    .club-card-guest-visits-description {
        font-size: 14px;
    }

    .club-card-guest-visits-amount {
        width: 44px;
        height: 44px;
        flex-basis: 44px;
        border-width: 4px;
        font-size: 16px;
    }

}


/* нецеловое использование заголовков */

.club-template-fishki-cluba-headline {
	font-size: 24px;
	font-weight: 800;
	line-height: 24px;
}

.club-karti-card-text-headline-h3 {
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
	color: #141E32;
	margin: 10px 0;
}


/* 11 11 club cards */


/* 11 11 pre */

/* Контейнер изображения клубной карты */
.club-karti-card-image {
    position: relative;
}

/* Новая иконка в верхнем левом углу */
.club-karti-card-image .club-cards-shadow-icon {
    position: absolute;
    top: 12px;
    left: 12px;
    width: 60px;
    height: auto;
    z-index: 2;
    pointer-events: none;
	border-radius: 0;
}

/* 11 11 detail */

.club-card-details-popup-image {
    position: relative;
}

.club-card-details-popup-image .club-cards-shadow-icon {
    position: absolute;
    top: 24px;
    left: 24px;
    width: 80px;
    height: auto;
    z-index: 2;
    pointer-events: none;
	border-radius: 0;
}

/* 11 11 club cards */