/*
--------------------
Connecting fonts
--------------------
*/
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

/*
--------------------
Connecting colors
--------------------
*/
:root {
    --white: #ffffff;
    --black: #33383F;
    --grey: #E8E8E8;
    --grey2: #909090;
    --grey3: #C1C1C1;
    --grey4: #F4F4F4;
}

/*
--------------------
ÐžÑÐ½Ð¾Ð²Ð½Ñ‹Ðµ ÑÑ‚Ð¸Ð»Ð¸
--------------------
*/
* {
    -moz-box-sizing: border-box;
         box-sizing: border-box;
}

body {
    font-family: "Inter", Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    font-size: 16px;
    color: var(--black);
    margin: 0;
    display: flex;
    flex-direction: column;
}

.hidden-specialization {
    display: none;
}

/* ÑÐºÑ€Ñ‹Ð²Ð°ÐµÐ¼ Ð»Ð¸ÑˆÐ½Ð¸Ðµ ÑÐ»ÐµÐ¼ÐµÐ½Ñ‚Ñ‹ */
.tags-block .is-extra { display: none; }
.tags-block.is-expanded .is-extra { display: inline-block; }

/* ÐºÐ½Ð¾Ð¿ÐºÐ° Ñ‚Ð¾Ð³Ð¾ Ð¶Ðµ Ð²Ð¸Ð´Ð°, Ñ‡Ñ‚Ð¾ Ð¸ Ñ‚ÐµÐ³Ð¸ */
.show-more-btn{
  border:1px solid var(--grey);
  color:var(--grey2);
  font-weight:500;
  line-height:1.1;
  text-transform:uppercase;
  padding:11px;
  display:block;
  background:none;
  margin:0 20px 20px;
  width:auto;
  cursor:pointer;
  transition:all .3s ease;
}
.show-more-btn:hover{ background:var(--black); color:var(--white); }
.show-more-btn:focus{ outline:none!important; box-shadow:none!important; }

/* Ð°ÐºÑ‚Ð¸Ð²Ð½Ð¾Ðµ ÑÐ¾ÑÑ‚Ð¾ÑÐ½Ð¸Ðµ (ÐºÐ¾Ð³Ð´Ð° Ñ€Ð°Ð·Ð²Ñ‘Ñ€Ð½ÑƒÑ‚Ð¾) Ð¼Ð¾Ð¶Ð½Ð¾ Ð¿Ð¾Ð´ÑÐ²ÐµÑ‚Ð¸Ñ‚ÑŒ Ð·Ð°Ð»Ð¸Ð²ÐºÐ¾Ð¹ */
.tags-block.is-expanded .show-more-btn{
  background:var(--black);
  color:var(--white);
  border-color:var(--black);
}

/* Ð½ÐµÐ¾Ð±ÑÐ·Ð°Ñ‚ÐµÐ»ÑŒÐ½Ð¾: Ð´ÐµÐ»Ð°ÐµÐ¼ <li> Ñ ÐºÐ½Ð¾Ð¿ÐºÐ¾Ð¹ Ð²Ñ‹Ð³Ð»ÑÐ´ÐµÑ‚ÑŒ ÐºÐ°Ðº Ð¾ÑÑ‚Ð°Ð»ÑŒÐ½Ñ‹Ðµ */
.tags-block .tags-toggle{ list-style:none; display:inline-block; }


body, html {height: 100%;}
body.lock, body.modal-open-noscroll {overflow: hidden;}

body.lock:after {
    content: "";
    width: 100%;
    height: 100%;
    background: rgb(0 0 0 / 50%);
    position: fixed;
}

input:not([type=checkbox]):not([type=radio]),
textarea,
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

input, textarea, a:focus, input:focus, button:active, button:focus, select:focus {outline:none !important; box-shadow: none !important;}
button::-moz-focus-inner {border: 0 !important;}

h1, h2 {
    font-size: 94px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: -3px;
    text-transform: uppercase;
    margin: 0;
}

p {
    margin: 0 0 15px;
    line-height: 1.3;
}

a {text-decoration: none;}

.flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.btn {
    display: inline-block;
    font-weight: 400;
    color: #212529;
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    text-transform: uppercase;
    font-size: 18px;
    line-height: 1.3;
    letter-spacing: 0.01em;
    padding: 10px 25px;
    border-radius: 4px;
}

.unstyled {
    padding: 0;
    margin: 0;
    list-style: none;
}

section {
    padding-left: 40px;
    padding-right: 40px;
}

.btn-arrow {
    border-radius: 25px;
    border: 1px solid var(--black);
    padding: 13px 20px;
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--black);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 110%; /* 17.6px */
    text-transform: uppercase;
}

.btn-arrow:after {
    content: "";
    background: url(../img/btn-arrow2.svg) no-repeat;
    width: 15px;
    height: 8px;
}

.btn-arrow span {color: #c63417;}

.btn-arrow:hover, .btn-grey {
    background: var(--black);
    color: var(--white);
}

.btn-arrow:hover:after, .btn-grey:after {
    filter: brightness(0) invert(1);
}

.btn-grey:hover {
    background: #ffffff;
    color: var(--black);
}

.btn-grey:hover:after {filter: none;}

.btn-light {
    background: var(--white);
    border: none;
}

.check {
	position: relative;
	display: flex;
    align-items: center;
	margin-bottom: 0;
    gap: 10px;
}

.checkbox {display: none;}

.checkbox-custom {
    width: 12px;
    min-width: 12px;
    height: 12px;
    cursor: pointer;
    background: #FFFFFF;
    border: 1px solid var(--black);
    border-radius: 50%;
    position: relative;
}

.checkbox:checked + .checkbox-custom::after {
    content: "";
    background: var(--black);
    width: 4px;
    height: 4px;
    position: absolute;
    left: 3px;
    top: 3px;
    border-radius: 50%;
}

.check a, .check p {
	display: inline-block;
	vertical-align: middle;
	margin-bottom: 0;
	font-size: 16px;
	line-height: 1.2;
}

.check a {
    text-decoration: underline;
    color: var(--black);
}

/*
--------------------
Styles for Header
--------------------
*/
header {
    width: 100%;
    position: absolute;
    top: 40px;
    left: 0;
    z-index: 100;
}

.header-block {padding: 0 40px;}

.header-nav {
    display: flex;
    align-items: center;
    gap: 40px;
}

.mobile-nav {
    background: url(../img/nav.svg) no-repeat;
    width: 34px;
    height: 26px;
    border: none;
    cursor: pointer;
}

.schedule {
    border: 1px solid var(--white);
    border-radius: 25px;
    color: var(--white);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 15px;
}

.schedule:after {
    content: "";
    background: url(../img/btn-arrow.svg) no-repeat;
    width: 15px;
    height: 9px;
}

.login-blk {
    display: flex;
    align-items: center;
    gap: 40px;
    color: var(--white);
}

.login-blk a {display: block;}

.login {
    color: var(--white);
    font-size: 14px;
    line-height: 1;
}

.language {
    display: flex;
    align-items: center;
}

.language li {
    color: var(--grey);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
    padding: 5px 7px;
    width: 25px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.language li.active {
    color: var(--white);
    border: 1px solid var(--white);
    border-radius: 50%;
}

header.fixed {
    position: fixed;
    border-radius: 30px;
    border: 1px solid var(--black);
    background: var(--grey);
    box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.25), -2px -2px 10px var(--grey3);
    width: auto;
    top: 20px;
    left: 20px;
}

header.fixed .header-block {
    padding: 0 5px;
    align-items: stretch;
}

header.fixed .header-nav {
    gap: 0;
    order: 1;
}

header.fixed .mobile-nav {
    filter: invert(0.5);
    padding: 10px;
    width: 56px;
    height: 56px;
    background-position: center;
    cursor: pointer;
    border-right: 1px solid var(--black);
}

header.fixed .mobile-nav:hover {filter: invert(1);}

header.fixed .schedule {
    height: 25px;
    color: var(--grey2);
    border: 1px solid var(--grey2);
    margin: 0 20px;
}

header.fixed .schedule:after {background: url(../img/btn-arrow-grey.svg) no-repeat;}

header.fixed .logo {
    background: url(../img/logo-sm.svg) center no-repeat;
    width: 56px;
    height: 56px;
    order: 3;
}

header.fixed .logo img,
header.fixed .login-blk .login,
header.fixed .login-blk .language,
header.fixed .login-blk img {display: none;}

header.fixed .login-blk {order: 2;}

header.fixed .login-blk {
    border-left: 1px solid var(--black);
    border-right: 1px solid var(--black);
}

header.fixed .login-blk a {
    background: url(../img/icon-tel2.svg) center no-repeat;
    width: 56px;
    height: 56px;
}

.create-nav {
    width: 100%;
    max-width: 737px;
    background: var(--grey);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    display: flex;
}

.create-nav-blk {
    width: 62%;
    border-right: 1px solid var(--black);
}

.create-nav-blk2 {width: 38%;}

.create-nav-title {
    padding: 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid var(--black);
}

.create-nav-title .header-nav, .create-nav-title .login-blk {gap: 30px;}
.create-nav-title .tel {display: none;}
.create-nav-title .mobile-nav {filter: invert(1);}

.create-nav-title .mobile-nav.active {
    background: url(../img/close.svg) no-repeat;
    width: 30px;
    height: 30px;
    filter: none;
}

.create-nav-title .schedule,
.create-nav-title .language li.active {
    border-color: var(--black);
    color: var(--black);
}

.create-nav-title .schedule:after {background: url(../img/btn-arrow2.svg) no-repeat;}
.create-nav-title .login {color: var(--black);}
.create-nav-title .language li {color: var(--grey2);}
.create-nav-title .schedule {height: 25px;}

.create-nav-blk2 .logo {padding: 40px;}

.create-nav-blk2 .logo img {
    width: 100%;
}

.create-nav-blk2 .tel-blk .btn-arrow {font-size: 14px;}
.create-nav-blk2 .contact-blk p {font-size: 20px;}
.create-nav-blk2 .contact-blk:nth-child(3) p {font-size: 14px;}
.create-nav .accordion-item {border-color: var(--grey2);}

/*
--------------------------
Styles for Header inside
--------------------------
*/
header.inside {
    position: relative;
    top: 0;
    padding: 30px 0;
}

header.inside.fixed {
    position: fixed;
    padding: 0;
    top: 20px;
}

header.inside .schedule {
    border: 1px solid var(--black);
    color: var(--black);
}

header.inside .mobile-nav, header.inside .schedule:after, header.inside .login-blk .tel {filter: invert(1);}
header.inside .login-blk a {color: var(--black);}
header.inside .language li {color: var(--grey2);}

header.inside .language li.active {
    color: var(--black);
    border-color: var(--black);
}


/*
-----------------------
Styles for Breadcrumbs
-----------------------
*/
.breadcrumbs {
    padding: 10px 40px 20px;
}

.breadcrumbs ul, .breadcrumbs ul li  {
    display: flex;
    align-items: center;
}

.breadcrumbs ul li, .breadcrumbs ul li a {
    color: var(--black);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

.breadcrumbs ul li:not(:last-child):after {
    content: "";
    background: url(../img/arrow.svg) no-repeat;
    width: 5px;
    height: 9px;
    margin: 0 10px;
}


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

.error-blk {
    padding-top: 40px;
    padding-bottom: 40px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
}

.error-left {max-width: 900px;}

.error-blk span {
    font-size: 250px;
    line-height: 0.8;
    letter-spacing: -5px;
    text-transform: uppercase;
}

.error-blk p {
    font-size: 110px;
    line-height: 0.85;
    letter-spacing: -3px;
    text-transform: uppercase;
    margin-bottom: 0;
    text-align: center;
}

.error-right {
    text-align: center;
    align-items: center;
}







/*
----------------
Styles for Hero
----------------
*/
.hero {
    position: relative;
    background: url(../img/hero-bg.jpg) top center / cover no-repeat;
    padding-top: 250px;
    padding-bottom: 73px;
}

.hero:before {
    content: "";
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.80) 0%, rgba(0, 0, 0, 0.00) 90.06%);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.hero-container {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 40px;
    color: var(--white);
}

.hero-title {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.hero-title h1 {
    color: var(--white);
    font-size: 100px;
    font-weight: 400;
    line-height: 0.9;
    letter-spacing: -5px;
    overflow: hidden;
}

.line-wrapper {
    overflow: hidden;
}

.block {display: block;}

.hero-title p {
    font-size: 24px;
    line-height: 1.1;
    letter-spacing: -1px;
    margin-bottom: 0;
}

.hero-info {
    border: 1px solid var(--white);
    background: rgba(255, 255, 255, 0.20);
    backdrop-filter: blur(6.5px);
    display: flex;
	max-width: 900px;
}

.hero-info-title {
    flex: 1;
    padding: 40px;
}

.hero-info-title p {
    font-size: 44px;
    line-height: 1;
    letter-spacing: -3px;
    text-transform: uppercase;
    display: table;
    margin: 0 auto;
}

.hero-info-title p span {display: block;}

.letter {
    display: inline-block;
    opacity: 0;
    transform: translateY(20px);
    animation: fadeInUp 1.5s ease forwards;
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(100%);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.hero-info-blk {
    display: flex;
    flex-direction: column;
    gap: 20px;
    flex: 1;
    padding: 40px 26px;
    border-left: 1px solid var(--white);
}

.hero-info-blk span {
    font-size: 16px;
    font-weight: 800;
    line-height: 1.1;
    text-transform: uppercase;
}

.hero-info-blk p {
    font-size: 14px;
    line-height: 1;
    margin: 0;
}


/*
-------------------------
Styles for Possibilities
-------------------------
*/
.possibilities {
    padding-top: 120px;
    padding-bottom: 40px;
}

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

.column-block h2 {max-width: 55%;}
.column-block h2 span {display: block;}

.column-block > div {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
    max-width: 520px;
}

.column-block > div p {
    font-size: 24px;
    line-height: 1.2;
    margin-bottom: 0;
}

/*
--------------------
Styles for Club
--------------------
*/
.club {
    padding: 0;
    display: flex;
    justify-content: space-between;
}

.club-title {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.club-title .time {margin: 10px 0;}

.club-title .time p {
    font-size: 20px;
    text-transform: none;
    letter-spacing: 0;
    margin-bottom: 10px;
}

.club-title span {
    color: var(--grey2);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

.club-title p {
    font-size: 44px;
    line-height: 0.9;
    letter-spacing: -3px;
    text-transform: uppercase;
    margin: 0;
}

.club-info {
    padding: 40px;
    width: 35%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
}

.club-image {
    padding: 40px;
    width: 70%;
    overflow: hidden;
}

.club-image .swiper-slide {
    max-width: 600px;
    width: auto;
}

.club-image .swiper-slide img {
    width: 100%;
    height: 600px;
    object-fit: cover;
    object-position: top;
}

.club-btn {
    position: relative;
    margin-top: auto;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.club-number {
    display: flex;
    align-items: center;
    gap: 10px;
}

.club-number span, .club .swiper-pagination {
    color: var(--grey2);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

.club .swiper-pagination {
    position: relative;
    bottom: 0;
    display: flex;
    align-items: center;
    gap: 10px;
}

.club-arrow {
    display: flex;
    align-items: center;
    position: relative;
    gap: 10px;
}

.swiper-button-prev, .swiper-button-next {
    position: relative;
    left: 0;
    right: 0;
    border-radius: 25px;
    border: 1px solid var(--black);
    padding: 7px 25px;
    margin: 0;
    top: 0;
    height: auto;
    width: auto;
}

.swiper-button-prev:after {transform: rotate(180deg);}

.swiper-button-prev:after, .swiper-button-next:after {
    content: "";
    background: url(../img/btn-arrow2.svg) center / cover no-repeat;
    width: 15px;
    height: 9px;
}

/* Ð¡Ñ‚Ð¸Ð»Ð¸ Ð´Ð»Ñ Ð³Ð¾Ñ€Ð¸Ð·Ð¾Ð½Ñ‚Ð°Ð»ÑŒÐ½Ð¾Ð¹ Ð»Ð¸Ð½Ð¸Ð¸ */
.line {
    position: relative;
    border: none; /* Ð£Ð±Ð¸Ñ€Ð°ÐµÐ¼ Ð¸ÑÑ…Ð¾Ð´Ð½Ñ‹Ðµ Ð³Ñ€Ð°Ð½Ð¸Ñ†Ñ‹ */
}

.line::before,
.line::after {
    content: '';
    position: absolute;
    height: 1px;
    background: var(--black);
    width: 0;
    transition: width 1s ease;
}

.line::before {
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.line::after {
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.line.animate::before,
.line.animate::after {
    width: 100%;
}

/* Ð¢Ð¾Ð»ÑŒÐºÐ¾ Ð²ÐµÑ€Ñ…Ð½ÑÑ Ð»Ð¸Ð½Ð¸Ñ */
.lineTop {
    position: relative;
    border: none; 
}

.lineTop::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 1px;
    background: var(--black);
    width: 0;
    transition: width 1s ease;
}

.lineTop.animate::before {
    width: 100%;
}

/* Ð¢Ð¾Ð»ÑŒÐºÐ¾ Ð½Ð¸Ð¶Ð½ÑÑ Ð»Ð¸Ð½Ð¸Ñ */
.lineBottom {
    position: relative;
    border: none; 
}

.lineBottom::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 1px;
    background: var(--black);
    width: 0;
    transition: width 1s ease;
}

.lineBottom.animate::after {
    width: 100%;
}

/* Ð¡Ñ‚Ð¸Ð»Ð¸ Ð´Ð»Ñ Ð²ÐµÑ€Ñ‚Ð¸ÐºÐ°Ð»ÑŒÐ½Ð¾Ð¹ Ð»Ð¸Ð½Ð¸Ð¸ */
.line2 {
    position: relative;
    border: none; /* Ð£Ð±Ð¸Ñ€Ð°ÐµÐ¼ Ð¸ÑÑ…Ð¾Ð´Ð½Ñ‹Ðµ Ð³Ñ€Ð°Ð½Ð¸Ñ†Ñ‹ */
}

.line2::before {
    content: '';
    position: absolute;
    width: 1px;
    background: var(--black);
    left: 0;
    top: 50%;
    height: 0;
    transform: translateY(-50%);
    transition: height 1s ease;
}

.line2.animate::before {
    height: 100%;
}

.animateUp {
    position: relative;
    opacity: 0;
    visibility: hidden;
    transform: translateY(200px);
    transition: all 0.8s ease;
}

.animateUp.animate {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.animateDown {
    position: relative;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-200px);
    transition: all 0.8s ease;
}

.animateDown.animate {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.numbers {
    display: flex;
    gap: 100px;
}

.number-blk {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding-top: 40px;
    padding-bottom: 40px;
    flex: 1;
    position: relative;
}

.number-blk:not(:first-child) {padding-left: 100px;}

.number-blk:after {
    content: "";
}

.number-blk span {
    letter-spacing: -3px;
    text-transform: uppercase;
}

.number {
    font-size: 140px;
    line-height: 0.85;
}

.number-title {
    font-size: 44px;
    line-height: 0.9;
}

.number-blk p {
    font-size: 14px;
    line-height: 1;
    margin: 0;
}

/*
---------------------
Styles for Ðccordion
---------------------
*/
.accordion {
    border-top: 1px solid var(--grey);
}

.accordion-item {
    border-bottom: 1px solid var(--grey);
    padding: 10px;
}

.accordion-header {
    cursor: pointer;
    position: relative;
    user-select: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 24px;
    line-height: 1.1;
    letter-spacing: -1px;
}

.accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: all 0.3s ease-out;
}

.accordion-content p {
    font-size: 16px;
    line-height: 1.3;
    max-width: 90%;
}

.accordion-content.active {
    max-height: 200px;
    margin-top: 10px;
}

.accordion-header::after {
    content: "";
    transition: transform 0.3s ease;
    background: url(../img/check.svg) no-repeat;
    width: 15px;
    height: 8px;
}

.accordion-header.active::after {
    transform: rotate(180deg);
}

/*
--------------------
Styles for Areas
--------------------
*/
.areas {
    padding-top: 120px;
    padding-bottom: 120px;
    display: flex;
    flex-direction: column;
    gap: 80px;
}

.area-block {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.area-blk {
    padding-bottom: 40px;
    display: flex;
    gap: 160px;
}

.area-blk img {object-fit: cover;}

.area-blk span {
    font-size: 44px;
    line-height: 0.9;
    letter-spacing: -3px;
    text-transform: uppercase;
}

.area-blk > div {
    display: flex;
    justify-content: space-between;
    width: 60%;
}

.area-blk p {
    max-width: 520px;
    margin-bottom: 0;
    font-size: 20px;
}

.area-blk.lineBottom:after {background: var(--grey2);}
.area-blk.lineBottom:hover:after {background: var(--black);}

.delay-500 { --delay: 500ms; }
.delay-1000 { --delay: 1000ms;}
.delay-1500 { --delay: 1500ms;}

/*
--------------------
Styles for Trainers
--------------------
*/
.trainers {
    background: url(../img/trainers-bg.jpg) top center / cover no-repeat;
    position: relative;
    padding: 120px 0 0;
}


.trainers:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.40) 0%, rgba(0, 0, 0, 0.40) 100%);
    z-index: 1;
}

.trainers-container {
    position: relative;
    z-index: 2;
    color: var(--white);
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.trainers-container h2 {
    font-size: 110px;
    padding-left: 40px;
    padding-right: 40px;
}

.trainers-block {
    display: flex;
}

.trainers-block > div {
    flex: 1;
    padding: 40px 40px 120px 40px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
}

.trainers-block > div p {
    font-size: 20px;
    margin-bottom: 0;
}

.trainers .lineTop::before, .trainers .line2::before {
    background: var(--white);
}

.trainers-block > div.line2 span {
    font-size: 44px;
    line-height: 1;
    letter-spacing: -3px;
    text-transform: uppercase;
    max-width: 69%;
}

.trainers-block > div ul {
    margin: 0;
}

.trainers-block > div ul li {
    font-size: 36px;
    line-height: 1.2;
    padding: 10px 0;
}

.trainers-block > div ul li::marker {margin-right: 10px;}

.tariffs {
    padding-top: 120px;
    padding-bottom: 120px;
}

.tariffs h2 {
    font-size: 110px;
    max-width: 100%;
}

/*
--------------------
Styles for App
--------------------
*/
.apps {padding: 0;}

.app-block {
    display: flex;
}

.app-blk {
    flex: 1;
}

.app-blk > * {padding: 40px;}

.app-blk ol {
    margin: 0;
    padding-left: 60px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.app-blk ol li {
    line-height: 1.1;
    font-size: 20px;
}

.app-image {
    padding-top: 120px;
    padding-bottom: 120px;
    flex: 1;
}

.apps-link {
    display: flex;
    gap: 40px;
    justify-content: center;
    align-items: center;
}

.apps-link a {
    border: 1px solid var(--black);
    border-radius: 10px;
    width: 216px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.app-image {
    display: flex;
    gap: 40px;
    justify-content: center;
    align-items: flex-start;
}

.app-image span {position: relative;}

.app-image span:after {
    content: "";
    background: url(../img/app-bg.png) no-repeat;
    position: absolute;
    top: 0;
    left: -1%;
    width: 102%;
    height: 100%;
    background-size: 100% 100%;
}

.app-image img {
    border-radius: 43px;
    width: 100%;
}


/*
--------------------
Styles for Map
--------------------
*/
.map {padding: 40px;}

.map iframe {
    width: 100%;
    height: 600px;
    border: none;
}

/*
--------------------
Styles for Services
--------------------
*/
.services .accordion-header {
    align-items: flex-end;
    width: 50%;
}

.services .accordion-header:after {margin-left: auto;}


/*
--------------------
Styles for Footer
--------------------
*/
footer {
    margin-top: auto;
}

.footer-container {
    display: flex;
}

.fblk {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex: 1;
    padding: 40px;
}

.footer-nav {padding: 0;}

.schedule-block {
    padding: 40px;
    width: 100%;
    display: flex;
    align-items: flex-start;
}

.schedule-block .schedule {
    border-color: var(--black);
    color: var(--black);
}

.schedule-block .schedule:after {filter: invert(1);}

.services {
    width: 100%;
    padding: 40px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.services span {
    color: var(--grey2);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

.services .accordion-item {
    padding-left: 0;
    padding-right: 0;
}

.services .accordion-item .flex a {
    color: var(--black);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

.services .accordion-content ul {
    padding-left: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.services .accordion-content ul li a {
    color: var(--grey2);
    font-size: 14px;
    line-height: 1;
}

.footer-contact {gap: 30px;}

.contact-blk {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.contact-blk span {
    color: var(--grey2);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

.contact-blk p {
    margin-bottom: 0;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
    font-size: 14px;
}

.contact-blk:nth-child(2) p {font-size: 16px;}

.contact-blk:nth-child(3) p {
    font-weight: 400;
    text-transform: none;
}

.contact-blk a {
    color: var(--black);
}

.tel-blk {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.tel-blk a {
    color: var(--black);
    font-size: 24px;
    line-height: 1.1;
    letter-spacing: -1px;
}

.footer-form {
    display: flex;
    flex-direction: column;
    gap: 35px;
}

.footer-form h3 {
    font-size: 44px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: -3px;
    text-transform: uppercase;
    margin: 0;
}

.form-control {
    display: block;
    width: 100%;
    border: none;
    border-bottom: 1px solid var(--grey);
    padding: 10px 0;
    line-height: 1.3;
}

.footer-form button {
    margin: 20px 0;
    width: 100%;
    justify-content: center;
}

.footer-form .apps-link {
    justify-content: space-between;
    width: 100%;
}

input::-webkit-input-placeholder {color: var(--grey2);}
input:-moz-placeholder {color: var(--grey2);}
input::-moz-placeholder {color: var(--grey2);}
input:-ms-input-placeholder {color: var(--grey2);}

.footer-bottom {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 50px 40px 30px;
}

.footer-link {
    display: flex;
    align-items: center;
    gap: 40px;;
}

.footer-link a, .footer-link span {
    color: var(--black);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

.footer-bottom img {width: 30%;}

.create-mobile-nav.fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
}

.blocks {
    padding-top: 40px;
    padding-bottom: 40px;
    display: flex;
    align-items: flex-start;
    gap: 40px;
}

.block-left {
    min-width: 560px;
    display: flex;
    flex-direction: column;
    gap: 30px;
    align-items: flex-start;
}

.title {
    font-size: 44px;
    line-height: 0.9;
    letter-spacing: -3px;
    text-transform: uppercase;
}

.title2 {
    font-size: 110px;
    line-height: 0.85;
    letter-spacing: -3px;
    text-transform: uppercase;
}


.politics-blk {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.politics-blk p {margin-bottom: 0;}

.block-right {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.block-right h2 {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
    letter-spacing: 0;
}

.block-right ul {
    padding-left: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/*
--------------------
Styles for Pay
--------------------
*/
.pay {padding: 0;}

.pay-blocks {
    display: flex;
    align-items: flex-start;
    padding: 40px;
    gap: 40px;
}

.pay-left {
    min-width: 50%;
    width: 50%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
}

.pay-left h2 {
    font-size: 44px;
    line-height: 0.9;
    letter-spacing: -3px;
    text-transform: uppercase;
}

.pay .block-right p {margin-bottom: 0;}

.pay-right.flex {gap: 40px;}

.pay-right.flex > div {
    gap: 30px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.pay-right h3 {
    font-size: 24px;
    line-height: 1.1;
    letter-spacing: -1px;
    font-weight: 400;
    margin: 0;
}

.pay-sm {max-width: 600px;}

.pay-right.big, .big {
    font-size: 24px;
    line-height: 1.1;
    letter-spacing: -1px;
}

.pay-right.big p {margin-bottom: 0;}

.pay-right a {
    display: block;
    color: var(--black);
}

a.pay-more {
    color: var(--grey2);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

.pay-blocks .accordion,
.pay-blocks .accordion-item {border: none;}

.pay-blocks .accordion {width: 100%;}
.pay-blocks .accordion-item {padding: 0;}

.pay-blocks .accordion-header {
    font-size: 44px;
    line-height: 0.9;
    letter-spacing: -3px;
    text-transform: uppercase;
    width: 100%;
}

.pay-blocks .accordion-header::after {
    background: url(../img/check.svg) center / cover no-repeat;
    width: 36px;
    height: 20px;
}

.pay-blocks .accordion-content.active {margin-top: 20px;}


.vacancy-block {padding: 0;}
.vacancy {display: flex;}

.vacancy > div {
    display: flex;
    gap: 10px;
    flex: 1;
    padding: 40px;
}

.vacancy-title > div {
    display: flex
;
    flex-direction: column;
    align-items: flex-start;
}

.vacancy-blk {
    width: calc(50% - 20px);
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.vacancy-blk span {
    color: var(--grey2);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

.vacancy-blk h2 {
    font-size: 16px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
    margin-bottom: 10px;
    letter-spacing: 0;
}

.vacancy-blk p {
    color: var(--grey2);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
    margin-bottom: 0;
}

.vacancy-blk ul {
    padding-left: 20px;
    margin: 0;
}

.vacancy-title {
    flex-direction: column;
    align-items: flex-start;
}

.vacancy-title p {font-size: 20px;}

.vacancy > .vacancy-info {
    flex-wrap: wrap;
    gap: 40px;
}

/*
-----------------
Styles for About
-----------------
*/
.about-title {
    padding-top: 80px;
    padding-bottom: 40px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
}

.about-title h1 {
    margin-bottom: 10px;
    font-size: 110px;
    line-height: 0.85;
}

.about-title > div {
    max-width: 1070px;
    column-count: 2;
}


/*
--------------------
Styles for Services
--------------------
*/
.services-block {
    padding: 0;
    display: flex;
}

.services-block .services {
    width: 26%;
    min-width: 26%;
}

.services-content {
    padding: 40px;
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
}

.services-blk {
    /* width: calc(33% - 23px); */
    display: flex;
    gap: 15px;
    border-bottom: 1px solid var(--grey);
    padding-bottom: 40px;
}

.services-blk:hover {border-bottom: 1px solid var(--black);}

.serv {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.serv span {
    display: block;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
    color: var(--black);
}

.serv p {
    font-size: 14px;
    line-height: 1.1;
    margin-bottom: 0;
    font-weight: 500;
    text-transform: uppercase;
    color: var(--grey2);
}

.services-block .alls {
    color: #c63417;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
    display: block;
    text-align: center;
}

.trainer {
    margin-top: auto;
    color: var(--grey2);
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.trainer span {
    font-size: 10px;
    color: var(--grey2);
}

.trainer p {
    line-height: 1;
    font-weight: 400;
    text-transform: none;
    color: var(--grey2);
}

.mission {
    padding-top: 100px;
    padding-bottom: 100px;
}

.services-block .services .accordion-header {width: auto;}


/*
--------------------
Styles for Cliens
--------------------
*/
.clients {
    background: url(../img/client.jpg) top center / cover no-repeat;
    padding: 0;
    position: relative;
    color: var(--white);
    display: flex;
    min-height: 500px;
}

.clients:before {
    content: "";
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.80) 0%, rgba(0, 0, 0, 0.00) 100%);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.clients > div {
    padding: 100px 40px;
    position: relative;
    z-index: 2;
    flex: 1;
}

.clients p {
    max-width: 520px;
    font-size: 20px;
    margin-bottom: 0;
}

.trainers-blk {
    padding-top: 120px;
    padding-bottom: 120px;
    display: flex;
    flex-direction: column;
    gap: 60px;
}

.trainers-blk h2 {font-size: 44px;}
.trainers-blk .column-block > div {max-width: 600px;}

.btn-all {justify-content: center;}

.trainersSwiper .swiper-slide {
    max-width: 352px;
    padding: 40px;
    border-top: 1px solid var(--black);
    border-bottom: 1px solid var(--black);
}

.trainersSwiper .swiper-slide:last-child {border-right: 1px solid var(--black);}
.trainersSwiper .swiper-slide a {border-radius: 0;}
.trainersSwiper .swiper-slide img {width: 100%;}

.trainer-name {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 10px;
}

.trainer-name span {
    color: var(--grey2);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

.trainer-name p {
    font-size: 20px;
    line-height: 1.1;
    margin-bottom: 0;
}

.trainers-slider {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 20px;
}

.trainers-slider .swiper {
    margin-bottom: 20px;
    width: 100%;
}

.usluga {
    padding-top: 120px;
    padding-bottom: 40px;
}

.usluga .column-block > * {flex: 1;}
.usluga .column-block > div {max-width: 50%;}
.usluga .column-block > div p {max-width: 600px;}

.two-column {
    display: flex;
}

.two-column .column {
    flex: 1;
    width: 50%;
    padding: 40px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.two-column .column p {
    font-size: 20px;
    line-height: 1.1;
    margin-bottom: 0;
}

.usluga-info {padding: 0;}

.info-block {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    flex: 1;
    padding: 40px;
}

.info-blk {
    width: calc(50% - 20px);
    min-height: 260px;
    border-bottom: 1px solid var(--grey);
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-bottom: 40px;
}

.info-blk span {
    display: block;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

.info-blk a {
    color: var(--black);
    font-size: 10px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: auto;
}

.info-blk a:after {
    content: "";
    background: url(../img/btn-arrow2.svg) no-repeat;
    width: 15px;
    height: 8px;
}

.zone-slider {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0 40px 40px;
}

.zone-slider .club-image {
    width: 100%;
    padding: 0 0 20px;
}

.uslugi-block {
    padding-top: 40px;
    padding-bottom: 40px;
}

.uslugi-block .column-block span {
    color: var(--grey2);
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

.zone-block {
    padding: 40px 0;
    counter-reset: list;
}

.zone-blk {
    display: flex;
    justify-content: space-between;
    padding: 40px;
    border-radius: 25px;
    border: 1px solid var(--black);
    background: var(--grey);
    height: 147px;
    overflow: hidden;
    transition: all linear 0.5s;
    gap: 20px;
    cursor: pointer;
}

.zone-blk.active {
    background: var(--white);
    height: auto;
}

.zone-info {
    max-width: 960px;
    display: flex;
    gap: 20px;
    position: relative;
}

.zone-info:before {
    counter-increment: list;
    content: "0" counter(list);
    font-size: 140px;
    line-height: 0.85;
    letter-spacing: -3px;
    text-transform: uppercase;
}

.zone-info > div {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.zone-info .zone-title {
    display: block;
    font-size: 44px;
    line-height: 0.9;
    letter-spacing: -3px;
    text-transform: uppercase;
}

.zone-info p {margin-bottom: 5px;}
.zone-image {width: 30%;}
.zone-image img {width: 100%;}

.zone-blk.active .zone-image img {
    height: 100%;
    object-fit: cover;
}

.trainer-column {display: flex;}
.trainer-block {padding: 0;}

.trainer-block .column {
    padding: 20px 40px;
    min-width: 42%;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.trainer-block .column span {
    color: var(--grey2);
    font-size: 14px;
    line-height: 1.1;
    text-transform: uppercase;
}

.trainer-block .column p {
    max-width: 430px;
    margin-bottom: 0;
}

.trainer-info-block {
    display: flex;
}

.trainer-info-block > div {
    padding: 40px;
    display: flex;
    flex-direction: column;
	width:30%;
}

.trainer-info-block > div.trainer-info {
    width: 50%;
}

.trainer-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.trainer-info ul {padding-left: 20px;}
.trainer-info ul li {line-height: 1.3;}

.trainer-info .accordion-header {
    font-size: 20px;
    line-height: 1.1;
    text-transform: uppercase;
    letter-spacing: 0;
}

.trainer-info .accordion-content.active {
    max-height: none;
    margin: 0;
}

.tran .column-block {
    flex-direction: column;
    gap: 40px;
}

.tran .column-block h2 {
    font-size: 94px;
    max-width: 100%;
}

.trainer-btn {margin-top: auto;}

.trainer-btn a {
    flex: 1;
    border-radius: 0;
    justify-content: center;
    padding: 13px 10px;
}

.trainer-columns {
    display: flex;
    padding: 0;
}

.trainer-columns > * {padding: 120px 40px;}

.trainer-columns > div {
    width: 35%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
}

.trainer-columns > .trainers-title {width: 65.95%;}
.trainers-title h1 {max-width: 85%;}
.trainer-columns > div p {margin-bottom: 0;}

.tags-block {padding: 10px;}

.tags-block ul {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.tags-block ul li {
    border: 1px solid var(--black);
    padding: 15px 10px;
    cursor: pointer;
}

.tags-block ul li a {
    color: var(--black);
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

.tags-block ul li:hover {background: var(--black);}
.tags-block ul li:hover a {color: var(--white);}

.trainers-list {
    display: flex;
    flex-wrap: wrap;
    padding: 1px 0 0 1px;
}

.trainer-inform {
    border: 1px solid var(--black);
    width: 33.333%;
    padding: 40px;
    margin: -1px 0 0 -1px;
}

.trainer-inform img {
    width: 100%;
    height: 510px;
    object-fit: cover;
	object-position: top;
}

.trainer-inform > div {
    margin-top: 40px;
}

.trainer-inform .trainer-btn a {font-size: 10px;}

.trainer-direction {
    min-height: 100px;
    padding: 10px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    border: 1px solid var(--black);
    border-top: none;
    border-bottom: none;
}

.trainer-direction span {
    color: var(--grey2);
    font-size: 14px;
    line-height: 1.1;
    text-transform: uppercase;
}

.trainer-direction p {margin-bottom: 0;}
.trainers-list .trainer-name {border: 1px solid var(--black);}
.trainers-list .trainer-name p {font-size: 24px;}

.show-more-btn {
    border: 1px solid var(--grey);
    color: var(--grey2);
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
    padding: 11px;
    display: block;
    background: none;
    margin: 0 20px 20px;
    width: auto;
}


.modal {
    position: fixed;
    inset: 0px;
    z-index: 99;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #32323299;
}
  
.modal-content{
    position: relative;
    width: 90%;
    max-width: 500px;
    padding: 20px;
    background: var(--white);
}

.hidden {
    display: none;
}

.close-modal {
    position: absolute;
    top: 20px;
    right: 20px;
    background: url(../img/close.svg) center / contain no-repeat;
    width: 20px;
    height: 20px;
    border: none;
    cursor: pointer;
}

.modal-title {
    font-size: 28px;
    font-weight: 500;
    text-align: center;
    margin: 0 0 30px;
}

#wpcf7-f229-o2 .wpcf7-form {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    text-align: center;
}

.forms input, #wpcf7-f229-o2 .wpcf7-form input {text-align: center;}
.forms button, #wpcf7-f229-o2 .wpcf7-form button {margin: 0 auto;}

#wpcf7-f229-o2 .wpcf7-form {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

#wpcf7-f229-o2 .wpcf7-form p {
    width: 100%;
    max-width: 400px; /* ÐžÐ³Ñ€Ð°Ð½Ð¸Ñ‡ÐµÐ½Ð¸Ðµ ÑˆÐ¸Ñ€Ð¸Ð½Ñ‹ Ñ„Ð¾Ñ€Ð¼Ñ‹ */
}

#wpcf7-f229-o2 .wpcf7-form-control {
        margin: auto;
}

/* Стили для формы в модальном окне */
.forms {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
}

.forms input,
.forms textarea {
    width: 100%;
    padding: 15px;
    border: 1px solid var(--grey);
    border-radius: 4px;
    font-size: 16px;
    font-family: "Inter", Arial, sans-serif;
    background: var(--white);
    color: var(--black);
}

.forms input:focus,
.forms textarea:focus {
    border-color: var(--black);
    outline: none;
}

.forms textarea {
    min-height: 100px;
    resize: vertical;
}

.forms button {
    margin-top: 10px;
    width: 100%;
    justify-content: center;
}


.create-nav .footer-contact:before {content: none;}


/*
--------------------
Styles for Adaptive
--------------------
*/
@media (max-width: 1699px) {
    .numbers {gap: 80px;}
    .number-blk:not(:first-child) {padding-left: 80px;}
    .area-blk > div, .area-blk {gap: 40px;}
    .app-image span {width: 25%;}
    .map iframe {height: 325px;}
    .services-blk {width: calc(50% - 20px);}
    .two-column .column {width: 36%;min-width: 36%; flex: 0}
    .trainer-block .column {min-width: 50%;}
    .trainers-title h1 {max-width: 100%;}
}

@media (max-width: 1599px) {
    .footer-form .apps-link img {max-width: 140px;}
    .app-image img {border-radius: 33px;}
    .hero-info-blk {min-width: 20%;}
    .tariffs h2 {max-width: 65%;}
    .trainers-block > div.line2 span {font-size: 40px;}
    .area-blk > div {gap: 0;}
    .area-blk span {min-width: 300px;}
    .trainers-block > div {flex: 5;}
    .trainers-block > div:nth-child(1) {flex: 3;}
    .fblk {min-width: 36%;}
    .footer-contact {min-width: 28%;}
    .numbers {gap: 20px;}
    .number-blk:not(:first-child) {padding-left: 20px;}
    .column-block > div {max-width: 33%;}
    .pay-left {min-width: 560px; width: 560px;}
    .vacancy-title {max-width: 36%;}
    .about-title h1 {font-size: 64px;}
    .services-block .services {width: 30%; min-width: 340px;}
    .title2 {font-size: 64px;}
    .club-info {width: 50%;}
    .usluga {padding-top: 40px;}
    .zone-info {max-width: 800px;}
    .trainer-columns > .trainers-title {width: 64%;}
    .trainers-title h1 {font-size: 86px;}
}

@media (max-width: 1439px) {
    .hero-title h1, .number {font-size: 120px;}
    h1, h2, .trainers-container h2 {font-size: 80px;}
    .footer-form h3, .club-title p {font-size: 40px;}
    .tariffs h2 {font-size: 70px; max-width: 50%;}
    .trainers-block > div ul li {font-size: 26px;}
    .area-blk img {max-width: 430px;}
    .area-blk span {font-size: 36px;}
    .error-left {max-width: 700px;}
    .error-blk span {font-size: 200px;}
    .error-blk p {font-size: 80px;}
    .pay-left {min-width: 460px; width: 460px;}
    .clients-title h2 {font-size: 64px;}
    .two-column .column {width: 40%; min-width: 40%;}
    .usluga-info h2 {font-size: 40px;}
    .zone-info {max-width: 750px;}
    .trainers-title h1 {font-size: 70px;}
    .trainer-inform {width: 50%;}
}

@media (max-width: 1199px) {
    .hero-title h1 {font-size: 94px;}
    .hero-info-title p {font-size: 28px;}
    .hero-info-blk, .hero-info-title {padding: 20px;}
    .hero-info-blk {min-width: 24%;}
    .hero-info-title p {max-width: 210px;}
    .hero-info-title p span {display: inline;}
    h2 {font-size: 66px;}
    .column-block > div p {font-size: 20px;}
    .number {font-size: 80px;}
    .number-title {font-size: 28px;}
    .club {flex-direction: column;}
    .club-image:before {content: none;}
    .club-info, .club-image {width: 100%;}
    .club-info {padding-bottom: 20px;}
    .club-image {padding-top: 0;}
    .area-blk > div {gap: 40px;}
    .areas .btn-arrow {margin-left: -60px;}
    .area-blk span {max-width: 170px; min-width: 170px; font-size: 28px;}
    .area-blk p {font-size: 16px;}
    .trainers-container h2 {font-size: 64px;}
    .trainers-block > div.line2 span {font-size: 44px; max-width: 100%;}
    .trainers-block > div ul li {font-size: 24px;}
    .trainers {padding-top: 60px;}
    .trainers-block > div {padding-bottom: 60px;}
    .tariffs h2 {max-width: 65%;}
    .column-block > div {margin-top: 50px;}
    .club-title p {font-size: 44px;}
    .app-image {padding-left: 80px; justify-content: flex-start; overflow: auto; flex-wrap: nowrap; white-space: nowrap; -ms-overflow-style: none; scrollbar-width: none;}
    .app-image span {min-width: 240px; width: 240px;}
    .footer-form h3 {font-size: 28px;}
    .footer-form .apps-link img {max-width: 86px;}
    footer .apps-link a {height: 36px; width: 120px;}
    .check a, .check p {font-size: 14px; line-height: 1;}
    .services .accordion-header {width: auto;}
    .fblk {min-width: 34%;}
    .footer-contact {min-width: 31%;}
    .error-page h1 {font-size: 44px;}
    .error-blk span {font-size: 180px;}
    .error-blk p {font-size: 64px;}
    .blocks {flex-direction: column;}
    .blocks {gap: 30px;}
    .pay-blocks {flex-direction: column; gap: 20px;}
    .pay-left {min-width: 100%;}
    .pay-sm {max-width: 100%;}
    .vacancy {flex-direction: column;}
    .vacancy > .vacancy-title {max-width: 100%; flex-direction: row; gap: 40px;}
    .vacancy-title > * {flex: 1;}
    .vacancy > .vacancy-info:before {content: none;}
    .about-title h1 {font-size: 44px;}
    .services-block {flex-direction: column;}
    .services-block .services {width: 100%; min-width: 100%;}
    .services-content:before {content: none;}
    .mission h2 {font-size: 44px;}
    .mission .column-block > *, .trainers-blk .column-block > * {flex: 1;}
    .mission .column-block > div, .trainers-blk .column-block > div {margin-top: 0; max-width: 48%;}
    .trainers-blk .column-block > div {max-width: 45%;}
    .trainers-blk h2 {font-size: 28px; letter-spacing: -1px;}
    .app-image img {border-radius: 43px;}
    .usluga .column-block > div {margin-top: 0;}
    .two-column {flex-direction: column;}
    .two-column .column {width: 100%; min-width: 100%; flex-direction: row; gap: 40px;}
    .two-column .column > * {flex: 1;}
    .info-block {padding-top: 0;}
    .info-block:before {content: none;}
    .info-blk {min-height: auto; padding-bottom: 20px;}
    .usluga-info h2 {font-size: 40px; letter-spacing: -1px;}
    .trainers-blk {padding-top: 40px; padding-bottom: 40px;}
    .trainers-blk {gap: 20px;}
    .zone-info .zone-title {font-size: 28px; letter-spacing: -1px;}
    .zone-image {min-width: 300px;}
    .zone-info:before {min-width: 160px;}
    .trainer-block .column {min-width: 40%;}
    .trainer-block .column:first-child {min-width: 60%;}
    .trainer-block h1 {font-size: 40px;}
    .tran .column-block h2 {font-size: 70px;}
    .trainer-btn {flex-direction: column;}
    .trainer-btn a {width: 100%;}
    .trainers-title h1 {font-size: 64px;}
    .trainer-columns > * {padding-top: 80px; padding-bottom: 40px;}
    .trainer-inform .trainer-btn {flex-direction: row;}
	.trainer-info-block > div {width: 50%;}
}

@media (max-width: 991px) {
    section, .trainers-container h2, .header-block {padding-left: 20px; padding-right: 20px;}
    h2, .trainers-container h2 {font-size: 46px;}
    .login-blk, .header-nav, .area-blk > div, .area-blk, .trainers-block > div {gap: 20px;}
    .hero-title h1 {font-size: 80px;}
    .hero {padding-top: 350px;}
    .possibilities {padding-top: 80px;}
    .column-block > div {max-width: 42%; margin-top: 0;}
    .number {font-size: 70px;}
    .number-title {font-size: 24px;}
    .number-blk {padding-top: 20px; padding-bottom: 20px;}
    .club-info, .app-blk > * {padding: 20px;}
    .club-image {padding: 0 20px 20px;}
    .club-image .swiper-slide {max-width: 400px;}
    .club-image .swiper-slide img {height: 400px;}
    .areas, .tariffs {padding-top: 80px; padding-bottom: 80px;}
    .area-blk {flex-direction: column;}
    .area-blk img {max-width: 100%;}
    .area-blk > div {width: 100%;}
    .area-blk span {min-width: auto; max-width: 45%;}
    .area-blk p {max-width: 55%;}
    .trainers-block > div {padding: 20px;}
    .trainers-container h2 {max-width: 90%;}
    .trainers-block, .app-block {flex-direction: column;}
    .trainers {padding-bottom: 60px;}
    .tariffs h2 {max-width: 50%; font-size: 48px;}
    .app-blk {width: 100%;}
    .app-image {padding: 40px;}
    .app-image span {min-width: 0; width: auto;}
    .app-image.line2.animate::before, .footer-contact:before, .schedule-block::after {content: none;}
    .map, .fblk, .schedule-block, .services, .footer-bottom {padding: 20px;}
    .footer-container {flex-wrap: wrap;}
    .fblk {order: 1;}
    .footer-nav {min-width: 100%; order: 3; padding: 0;}
    .schedule-block.lineBottom:before {top: 0; left: 50%; transform: translateX(-50%); content: ''; position: absolute; height: 1px; background: var(--black); width: 0; transition: width 1s ease; }
    .schedule-block.lineBottom.animate:before {width: 100%;}
    .trainers-block > div.line2:before {content: none;}
    .create-nav-title, .create-nav-blk2 .logo {padding: 20px;}
    .create-nav-title .header-nav, .create-nav-title .login-blk {gap: 40px;}
    .error-left {max-width: 400px;}
    .pay-left h2 {letter-spacing: -1px;}
    .services-blk img {max-width: 160px;}
    .clients-title h2 {font-size: 42px;}
    .usluga-info h2 {font-size: 36px;}
    .zone-info:before {font-size: 100px; min-width: 120px;}
    .zone-image {min-width: 200px;}
    .trainer-column, .trainer-info-block {flex-direction: column;}
    .trainer-info:before {content: none;}
    .trainer-info-block > .trainer-info {padding-top: 0;}
    .tran .column-block > div {max-width: 100%;}
    .trainer-btn {order: 1; margin-bottom: 20px;}
    .trainer-block .accordion {order: 2;}
    .trainer-info-block > .trainer-image {padding-bottom: 15px;}
    .trainer-columns {flex-direction: column;}
    .trainer-columns > .trainers-title, .trainer-columns > div {width: 100%; padding: 0 20px 40px;}
    .trainer-columns > div:before {content: none;}
    .trainer-columns > .trainers-title {padding-top: 40px;}
    .trainer-inform .trainer-btn {flex-direction: column;}
	.trainer-info-block > div, .trainer-info-block > div.trainer-info {width: 100%;}
}

@media (max-width: 767px) {
    h1, h2 {letter-spacing: -1px;}
    .title, .error-page h1 {font-size: 28px; letter-spacing: -1px;}
    .hero-info, .login-blk {display: none;}
    .header-block {justify-content: center;}
    .hero-title h1 {font-size: 60px;}
    section, .trainers-container h2, .header-block {padding-left: 15px; padding-right: 15px;}
    .possibilities {padding-top: 40px;}
    .column-block {flex-direction: column; gap: 20px;}
    .column-block > div {max-width: 100%; gap: 20px;}
    .column-block h2 {max-width: 100%;}
    h2, .trainers-container h2, .club-title p {font-size: 36px;}
    .numbers {flex-wrap: wrap; gap: 0; padding: 0;}
    .number-blk {min-width: calc(50% - 10px); position: relative;}
    .club-image .swiper-slide {max-width: 300px;}
    .club-image .swiper-slide img {height: 300px;}
    .number-blk:nth-child(odd):before {content: none;}
    .number-blk, .number-blk:not(:first-child) {padding-left: 20px;}
    .number-blk:nth-child(3):after, .number-blk:nth-child(4):after {content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%); height: 1px; background: var(--black); width: 0; transition: width 1s ease;}
    .number-blk:nth-child(3).animate:after, .number-blk:nth-child(4).animate:after {width: 100%;}
    .areas .btn-arrow {margin-left: 0;}
    .areas, .tariffs {padding-top: 40px; padding-bottom: 40px;}
    .area-blk > div {flex-direction: column;}
    .area-blk span, .area-blk p {max-width: 100%;}
    .areas {gap: 20px;}
    .area-blk {padding-bottom: 15px;}
    .area-block {gap: 15px;}
    .area-blk span {font-size: 20px; letter-spacing: 0;}
    .trainers-block > div.line2 span {font-size: 32px; letter-spacing: -1px;}
    .trainers-block > div ul li {font-size: 20px;}
    header.fixed {position: absolute; top: 40px; width: 100%; left: 0; border: none; background: none; box-shadow: none; border-radius: 0;}
    header.fixed .logo {width: auto; height: auto; background: none;}
    header.fixed .logo img {display: block;}
    .create-mobile-nav {margin: 17px auto 0; position: relative; width: 100%; z-index: 2; display: flex; justify-content: center;}
    .nav-container {padding: 0 5px; border-radius: 30px; border: 1px solid var(--black); background: var(--grey); box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.25), -2px -2px 10px var(--grey3); display: flex;}
    .create-mobile-nav .schedule {font-size: 0; padding: 0; border: none; width: 56px; height: 56px; border-radius: 0; margin: 0; gap: 0; border-left: 1px solid var(--black); border-right: 1px solid var(--black);}
    .create-mobile-nav .schedule:after {display: none;}
    .create-mobile-nav .schedule:before {background: url(../img/icon-calendar.svg) center no-repeat;}
    .mobile-nav {width: 56px; height: 56px; background-position: center; filter: invert(0.5);}
    .header-nav {gap: 0;}
    .nav-btn-contact {border-right: 1px solid var(--black);}
    .nav-btn-contact:before, .nav-btn-tel:before, .create-mobile-nav .schedule:before {content: ""; width: 56px; height: 56px; display: block; filter: invert(0.5);}
    .nav-btn-contact:before {background: url(../img/icon-adres.svg) center no-repeat;}
    .nav-btn-tel:before {background: url(../img/icon-tel3.svg) center no-repeat;}
    .hero {display: flex; flex-direction: column;}
    .nav-btn-contact:hover:before, .nav-btn-tel:hover:before, .create-mobile-nav .schedule:hover:before {filter: invert(0);}
    .mobile-nav:hover {filter: invert(1);}
    .mobile-nav-block, .nav-contact-block, .nav-tel-block {position: absolute; left: 0; width: 100%; bottom: calc(100% + 20px); background: var(--grey4); padding: 15px;}
    .mobile-nav-block .services, .nav-contact-block .fblk {padding: 0;}
    .nav-contact-block .tel-blk {display: none;}
    .mobile-nav.active {background: url(../img/close.svg) center no-repeat; filter: invert(0);}
    .nav-contact-block .fblk {gap: 20px;}
    .nav-contact-block .contact-blk p {font-size: 28px; font-weight: 400;}
    .nav-contact-block .contact-blk:nth-child(2) p {font-size: 16px; font-weight: 500;}
    .nav-contact-block .contact-blk:nth-child(3) p, .nav-contact-block .contact-blk a {font-size: 14px;}
    .nav-tel-block .tel-blk {flex-direction: column-reverse;}
    .nav-tel-block .tel-blk a {display: flex; align-items: center; justify-content: center; gap: 10px;}
    .nav-tel-block .tel-blk a:before {content: ""; background: url(../img/icon-tel3.svg) no-repeat; width: 32px; height: 32px;}
    .error-page {flex-direction: column; gap: 20px; padding-top: 20px; padding-bottom: 20px;}
    .error-blk {padding: 0; max-width: 100%;}
    .error-left {gap: 30px; max-width: 400px;}
    .error-right {gap: 10px;}
    header.inside .schedule,  header.inside .mobile-nav, .breadcrumbs {display: none;}
    header.inside.fixed {position: relative; top: 0;}
    header.inside {padding:15px 0 20px;}
    .block-left {min-width: 100%;}
    main .create-mobile-nav {display: none;}
    main .create-mobile-nav.fixed {display: flex;}
    .pay-right.flex {flex-direction: column; gap: 20px;}
    .pay-right.flex > div {gap: 15px;}
    .pay-left h2, .pay-blocks .accordion-header {font-size: 28px;}
    .pay-left {width: 100%;}
    .pay-right.big, .big {font-size: 20px;}
    .vacancy > .vacancy-title {flex-direction: column; gap: 10px; padding-bottom: 20px;}
    .vacancy > .vacancy-info {padding-top: 20px; padding-bottom: 20px; gap: 20px;}
    .vacancy-blk {width: 100%; padding-bottom: 20px; border-bottom: 1px solid var(--grey4);}
    .vacancy-blk h2 {margin-bottom: 5px;}
    .vacancy > .vacancy-info:before {content: ""; top: 0; width: 0; transform: translateX(-50%); transition: width 1s ease; left: 50%;}
    .vacancy > .vacancy-info.animate:before {width: 100%; height: 1px;}
    .vacancy > div {padding-left: 15px; padding-right: 15px;}
    .vacancy-title p {font-size: 16px;}
    .title {font-size: 28px; letter-spacing: -1px;}
    .about-title > div {column-count: 1;}
    .services-blk {width: 100%;}
    .services-content {padding: 20px 15px; gap: 15px;}
    .mission {padding-top: 20px; padding-bottom: 20px;}
    .mission .column-block > div {max-width: 100%;}
    .clients {flex-direction: column; min-height: 280px;}
    .clients > div {padding: 20px 15px; flex: 0;}
    .clients > .clients-title {padding-bottom: 0;}
    .services-blk {padding-bottom: 15px;}
    .number-blk span {letter-spacing: -1.5px;}
    .trainers-blk {padding-top: 40px; padding-bottom: 40px;}
    .trainers-blk .column-block > div {max-width: 100%;}
    .trainers-blk {gap: 20px;}
    .trainers-slider .swiper {margin-bottom: 0;}
    .app-image img {border-radius: 33px;}
    .title2 {font-size: 28px; letter-spacing: -1px; line-height: 0.95;}
    .usluga .column-block > div {max-width: 100%;}
    .two-column .column {flex-direction: column; padding-left: 20px; padding-right: 20px;}
    .two-column .column {gap: 20px;}
    .info-block {padding: 0 20px 20px; flex-direction: column; gap: 20px;}
    .info-blk {width: 100%;}
    .usluga-info h2 {font-size: 28px;}
    .trainersSwiper .swiper-slide {max-width: 230px; padding: 15px;}
    .trainersSwiper .swiper-slide a {font-size: 10px;}
    .zone-slider {padding: 0 20px 20px;}
    .zone-block {display: flex; overflow: auto; -ms-overflow-style: none; scrollbar-width: none;}
    .zone-blk {min-width: 234px; padding: 15px; flex-direction: column; height: auto;}
    .zone-info:before {font-size: 80px; min-width: auto;}
    .zone-info {gap: 10px; align-items: flex-end;}
    .zone-info .zone-title {font-size: 16px;}
    .zone-info-more a.btn {font-size: 14px; margin-top: auto;}
    .zone-image {min-width: 100%;}
    .zone-info-more {height: 100%; display: flex; flex-direction: column;}
    .tran .column-block h2, .trainer-block h1 {font-size: 28px;}
    .footer-form h3 {letter-spacing: -1px;}
    .trainer-block .column {padding-left: 20px; padding-right: 20px;}
    .trainer-info-block > div {padding: 20px;}
    .trainer-block .column:first-child {padding-bottom: 0;}
    .trainer-columns > .trainers-title, .trainer-columns > div {padding-bottom: 20px;}
    .trainers-title h1 {font-size: 28px;}
    .tags-block ul li {padding: 10px; font-size: 10px;}
    .trainer-inform img {height: 230px;}
    .trainer-inform {padding: 15px 15px 0;}
    .trainer-inform > div {margin-top: 15px;}
    .create-mobile-nav.fixed .mobile-nav-block, .create-mobile-nav.fixed .nav-contact-block, .create-mobile-nav.fixed .nav-tel-block {bottom: auto; top: calc(100% + 20px); max-width: 500px; margin: 0 auto; left: 0; right: 0;}
    .create-mobile-nav .btn-modal {justify-content: center;}
    
    /* Адаптивные стили для галереи на мобильных */
    .gallery-container {padding: 20px;}
    .gallery-container .title {font-size: 32px;}
    .gallerySwiper .swiper-slide {height: 300px;}
    .gallery-next, .gallery-prev {width: 45px; height: 45px;}
    .gallery-next {right: 15px;}
    .gallery-prev {left: 15px;}
}

@media (max-width: 575px) {
    .hero-title h1 {font-size: 44px; letter-spacing: -3px;}
    .hero {padding-top: 316px; padding-bottom: 50px;}
    h2, .trainers-container h2, .club-title p, .column-block h2 {font-size: 28px; letter-spacing: -1px;}
    .possibilities {padding-bottom: 0;}
    .column-block > div p {max-width: 90%;}
    .club:before {content: none;}
    .number {font-size: 44px;}
    .number-title {font-size: 20px;}
    .number-blk span {letter-spacing: -1.5px;}
    .number-blk {padding: 10px; gap: 5px;}
    .number-blk:nth-child(odd) {padding-left: 25px;}
    .number-blk:nth-child(even) {padding-right: 25px; padding-left: 10px;}
    .column-block > div p, .area-blk span {font-size: 16px;}
    .area-blk p {font-size: 14px;}
    .area-blk, .area-blk > div {gap: 10px;}
    .trainers-container {gap: 20px;}
    .trainers-block > div {padding: 15px; gap: 10px;}
    .trainers-block > div.line2 span {font-size: 20px;}
    .trainers-block > div ul {padding-left: 30px;}
    .trainers {padding-top: 40px; padding-bottom: 20px;}
    .column-block > div {gap: 10px;}
    .app-blk {padding-top: 20px;}
    .club-title {gap: 20px;}
    .app-blk ol {padding-left: 45px; padding-top: 0;}
    .apps-link a {width: 120px; height: 40px;}
    .apps-link img {max-width: 100px;}
    .apps-link {padding: 0 20px;}
    .app-image {gap: 10px; padding: 20px;}
    .map {padding: 15px;}
    .footer-container {flex-direction: column;}
    .footer-form:before {top: 0; width: 0; left: 50%; height: 1px; transform: translateX(-50%); transition: width 1s ease;}
    .footer-form.animate::before {width: 100%; height: 1px;}
    .tel-blk {text-align: center; width: 100%;}
    .tel-blk button {justify-content: center;}
    .footer-form h3 {letter-spacing: -1px;}
    .footer-container:after {content: none;}
    .schedule-block {padding-bottom: 5px;}
    .footer-bottom {padding: 0 15px 10px;}
    .schedule-block, .services, .fblk {padding-left: 15px; padding-right: 15px;}
    .footer-nav {padding-left: 0; padding-right: 0;}
    .app-blk ol li {font-size: 16px;}
    .fblk {width: 100%;}
    .create-mobile-nav.fixed .mobile-nav-block, .create-mobile-nav.fixed .nav-contact-block, .create-mobile-nav.fixed .nav-tel-block {width: 90%; top: calc(100% + 20px); bottom: auto;}
    .error-blk span {font-size: 110px;}
    .error-blk p {font-size: 44px;}
    .blocks {padding-top: 20px; padding-bottom: 20px;}
    .pay-blocks {padding-left: 15px; padding-right: 15px;}
    .pay-left {gap: 20px;}
    .app-image img {border-radius: 20px;}
    .zone-slider, .info-block, .two-column .column, .trainer-block .column {padding-left: 15px; padding-right: 15px;}
    .trainer-info-block > div {padding: 15px;}
    .trainers-list .trainer-name p {font-size: 16px;}
    .trainer-direction p {font-size: 14px;}
    .trainer-direction span, .trainer-inform .trainer-name span {font-size: 10px;}
    .trainer-inform .trainer-btn a {font-size: 8px;}
    .trainer-inform img {height: 160px;}
    .close-modal {top: 10px; right: 10px; background-size: 15px;}
}

@media (max-width: 374px) {
    h2, .trainers-container h2, .club-title p, .column-block h2 {font-size: 24px;}
    .btn-arrow {font-size: 14px;}
    .block-left h1 {font-size: 22px;}
    .app-image img {border-radius: 16px;}
    .trainer-inform {width: 100%;}
    
    /* Адаптивные стили для галереи */
    .gallery-container {padding: 20px;}
    .gallery-container .title {font-size: 28px;}
    .gallerySwiper .swiper-slide {height: 250px;}
    .gallery-next, .gallery-prev {width: 40px; height: 40px;}
    .gallery-next {right: 10px;}
    .gallery-prev {left: 10px;}
}

.language.unstyled a{
	color: #ffffff;
}

.notranslate {
    translate: none;
}

.logo-h1 img {
	width: 800px;
}

/*
--------------------
Styles for Club Gallery
--------------------
*/
.club-gallery {
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.gallery-container {
    width: 100%;
    padding: 40px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.gallery-container .title {
    font-size: 44px;
    line-height: 0.9;
    letter-spacing: -3px;
    text-transform: uppercase;
    margin-bottom: 0;
}

.gallery-container span {
    color: var(--grey2);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.1;
    text-transform: uppercase;
}

.gallery-slider {
    width: 100%;
    position: relative;
    overflow: hidden;
}

.gallerySwiper {
    width: 100%;
    padding: 20px 0 60px;
    overflow: visible;
}

.gallerySwiper .swiper-slide {
    height: 400px;
    overflow: hidden;
    border-radius: 10px;
}

.gallerySwiper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
    display: block;
}

/* Принудительная фиксация ширины слайдов */
.gallerySwiper .swiper-slide {
    width: calc(100% / 1) !important;
}

@media (min-width: 768px) {
    .gallerySwiper .swiper-slide {
        width: calc(100% / 2) !important;
    }
}

@media (min-width: 1024px) {
    .gallerySwiper .swiper-slide {
        width: calc(100% / 3) !important;
    }
}

.gallerySwiper .swiper-slide:hover img {
    transform: scale(1.05);
}

/* Навигационные стрелки для галереи */
.gallery-next,
.gallery-prev {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    background: var(--white);
    border: 1px solid var(--black);
    border-radius: 50%;
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
}

.gallery-next:hover,
.gallery-prev:hover {
    background: var(--black);
}

.gallery-next {
    right: 20px;
}

.gallery-prev {
    left: 20px;
}

.gallery-next:after,
.gallery-prev:after {
    content: "";
    background: url(../img/btn-arrow2.svg) center / cover no-repeat;
    width: 15px;
    height: 9px;
}

.gallery-prev:after {
    transform: rotate(180deg);
}

.gallery-next:hover:after,
.gallery-prev:hover:after {
    filter: brightness(0) invert(1);
}

/* Пагинация для галереи */
.gallery-pagination {
    position: relative;
    bottom: 0;
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 20px;
}

.gallery-pagination .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    background: var(--grey);
    opacity: 1;
    border-radius: 50%;
    transition: all 0.3s ease;
}

.gallery-pagination .swiper-pagination-bullet-active {
    background: var(--black);
}

@media (max-width: 767px) {
	.club-gallery {width: 100%;}
	.gallery-container {padding: 0;}
	.club-gallery .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, 
	.club-gallery .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {margin: 0;}
}