

/* Start:/local/templates/escalada/components/bitrix/news.list/main-top-banner/style.css?178385680410684*/
/* main-top-banner component styles
 * Extracted from inline <style> in template.php (Pass A, chunk 3).
 * Class names unchanged; rule contents unchanged (no url(/local/templates/escalada/components/bitrix/news.list/main-top-banner/) in this block). */

/* ===== Base (>=1920px) ===== */
        .main-top-banner {
            overflow: hidden;
        }
        .main-top-banner__container {
            max-width: 1780px;
            margin: 0 auto;
        }
        .main-top-banner__wrapper {
			padding-top: 180px;
			padding-bottom: 120px;
        }
        .main-top-banner__title {
            font-family: 'GothemPro', 'Open Sans', 'Arial', sans-serif;
            text-transform: uppercase;
            font-style: italic;
            font-weight: bold;
            color: #FFFFFF;
            margin: 0 0 5px 0;
            line-height: 110%;
            font-size: 75px;
            font-style: normal;
        }
        .main-top-banner__subtitle {
            font-size: 32px;
            font-weight: 400;
            margin: 0 0 204px 0;
        }
        .main-top-banner__info {
			padding-left: 20px;
            width: 670px;
            position: relative;
            z-index: 9;
        }
        .main-top-banner__bonus span {
            font-size: 40px;
            color: #EEC33E;
            text-transform: uppercase;
            margin: 0;
        }
        .main-top-banner__bonus {
            font-size: 20px;
            line-height: 200%;
            margin: 0 0 52px 0;
        }
        .newIntro__button {
			padding: 12px 64px;
            margin-bottom: 72px;
			border: 2px solid #3C8CDD;
          	border-radius: 4px;
            font-family: 'Open Sans', 'Arial', sans-serif;
			font-weight: 500;
			font-size: 14px;
			line-height: 22px;
			text-align: center;
			letter-spacing: 0.07em;
			text-transform: uppercase;
    		cursor: pointer;
			color: #fff;
			background: #2597D4;
            transition: all 0.3s ease-in-out;
        }
		.newIntro__button.button-bgno{
			background: none;
            transition: all 0.3s ease-in-out;
		}
		.newIntro__button:hover {
			background: none;

        }
        .newIntro__button:hover.button-bgno {
			background: #2597D4;

        }
        .newIntro__button.mobile {
            display: none;
        }
        .main-top-banner__block {
            position: relative;
        }
        .main-top-banner__block .main-top-banner__text {
            position: relative;
            margin: 0;
            z-index: 0;
            font-family: 'Fedra Sans Pro';
            font-size: 320px;
            font-weight: 600;
            text-transform: uppercase;
            line-height: 200px;
        }
        .main-top-banner__block .main-top-banner__text--hidden {
            position: absolute;
            bottom: 0;
            z-index: 2;
            left: 0;
        }
        .main-top-banner__text--hidden span {
            opacity: 0;
        }
        .main-top-banner__image {
            position: absolute;
            bottom: -140px;
            right: 130px;
            z-index: 0;
        }
        .main-top-banner__video {
            position: absolute;
            top: -230px;
            right: 720px;
            cursor: pointer;
        }
        .main-top-banner__video span {
            position: absolute;
            right: 20px;
            top: -70px;
            font-size: 20px;
            font-weight: 400;
            width: max-content;
        }
        .main-top-banner__shadow {
            width: 580px;
            height: 580px;
            background: #2597D4; 
            position: absolute;
            right: 345px;
            bottom: 70px;
        }
        .main-top-banner__shadow {
            border-radius: 50%;
            filter: blur(150px);
            z-index: 0;
        }

/* ===== <=1919px ===== */
        @media (max-width: 1919px) {
			.main-top-banner__container {
				max-width: 1340px;
				margin: 0 auto;
			}
			.main-top-banner__wrapper {
				padding-top: 180px;
				padding-bottom: 120px;
			}
			.main-top-banner__block .main-top-banner__text {
				font-size: 225px;
			}
			.main-top-banner__image {
				position: absolute;
				bottom: -120px;
				right: 20px;
				width: 780px;
				z-index: 0;
        	}
			.main-top-banner__info {
				padding-left: 20px;
				width: 565px;
			}
			.main-top-banner__title {
            	margin: 0 0 10px 0;
				font-size: 64px;
			}
			.main-top-banner__subtitle {
				font-size: 25px;
                font-weight: 400;
				margin: 0 0 140px 0;
			}
			.main-top-banner__video {
				top: -210px;
				right: 540px;
			}
			.main-top-banner__video span {
				right: -20px;
				top: -60px;
			}
			.main-top-banner__shadow {
				right: 175px;
			}
		}

/* ===== <=1259px ===== */
		@media (max-width: 1259px) {
			.main-top-banner__container {
				max-width: 990px;
			}
			.main-top-banner__wrapper {
                padding-top: 120px;
                padding-bottom: 80px;
            }
		    .main-top-banner__block .main-top-banner__text {
				margin: 0;
		        font-size: 172px;
    		}
			.main-top-banner__info {
				padding-left: 10px;
				width: 440px;
			}
			.main-top-banner__title {
				margin: 0;
				font-size: 50px;
			}
			.main-top-banner__subtitle {
				font-size: 18px;
				margin: 0px 0 60px 0;
			}
			.main-top-banner__image {
				bottom: -70px;
				right: -20px;
				width: 595px;
			}
		    .main-top-banner__video {
 				top: -120px;
				right: 370px;
			}
			.main-top-banner__video span {
				font-size: 14px;
				line-height: 120%;
				right: -10px;
				top: -50px;
			}
			.main-top-banner__video img {
				width: 80px;
			}
			.main-top-banner__shadow {
				right: 10px;
			}
		}

/* ===== <=1023px ===== */
        @media (max-width: 1023px) {
			.main-top-banner__container {
				max-width: 740px;
			}
            .main-top-banner__wrapper {
                padding-top: 110px;
                padding-bottom: 110px;
            }
            .main-top-banner__title {
                font-size: 36px;
            }
            .main-top-banner__subtitle {
                font-size: 18px;
                margin: 0 0 90px 0;
            }
            .main-top-banner__info {
                width: 340px;
            }
            .newIntro__button {
                font-size: 12px;
            }
            .main-top-banner__bonus span {
                font-size: 24px;
            }
            .main-top-banner__bonus {
                font-size: 14px;
                margin: 0 0 35px 0;
            }
            .main-top-banner__block .main-top-banner__text {
                font-size: 130px;
                line-height: 100px;
            }
            .main-top-banner__video {
                top: -120px;
                right: 290px;
            }
            .main-top-banner__video img {
                width: 60px;
            }
            .main-top-banner__video span {
				top: -40px;
                right: -20px;
                font-size: 14px;
                line-height: normal;
            }
            .main-top-banner__image {
                bottom: -80px;
        		right: -30px;
                width: 450px;
            }
            .main-top-banner__shadow {
                width: 350px;
                height: 350px;
                right: 64px;
                bottom: 10px;
                filter: blur(80px);
            }
        }

/* ===== <=767px ===== */
        @media (max-width: 767px) {
            .main-top-banner__wrapper {
                padding-top: 70px;
                padding-bottom: 70px;
            }
            .main-top-banner__title {
                font-size: 28px;
            }
            .main-top-banner__subtitle {
                font-size: 12px;
                margin: 0 0 60px 0;
            }
            .main-top-banner__info {
                width: 240px;
            }
            .newIntro__button {
                padding: 12px 40px;
                margin-bottom: 50px;
				font-size: 12px;
            }
            .main-top-banner__bonus span {
                font-size: 20px;
            }
            .main-top-banner__bonus {
                font-size: 10px;
                margin: 0 0 26px 0;
            }
            .main-top-banner__block .main-top-banner__text {
                font-size: 100px;
                line-height: 76px;
            }
            .main-top-banner__video {
                top: -100px;
        		right: 230px;
            }
            .main-top-banner__video img {
                width: 50px;
            }
    		.main-top-banner__video span {
				top: -34px;
				right: -14px;
				font-size: 12px;
			}
            .main-top-banner__image {
                bottom: -60px;
                right: -10px;
                width: 350px;
            }
            .main-top-banner__shadow {
                width: 260px;
                height: 260px;
                filter: blur(50px);
                right: 25px;
            }
        }

/* ===== <=575px ===== */
        @media (max-width: 575px) {
            .main-top-banner__wrapper {
                padding-top: 62px;
                padding-bottom: 20px;
            }
			.main-top-banner__title {
				font-size: 32px;
			}
            .main-top-banner__subtitle {
                margin: 0 0 230px 0;
				font-size: 16px;
            }
            .main-top-banner__info {
                width: 272px;
            }
            .newIntro__button {
                max-width: 100%;
                font-size: 14px;
                margin-bottom: 0;
                display: none;
            }
            .main-top-banner__bonus span {
                font-size: 16px;
            }
            .main-top-banner__bonus {
                font-size: 10px;
                margin-bottom: 12px;
            }
            .main-top-banner__block .main-top-banner__text {
                font-size: 17vw;
                line-height: 56px;
            }
            .main-top-banner__video {
                top: -86px;
                right: 220px;
            }
            .main-top-banner__video img {
                width: 50px;
            }
            .main-top-banner__video span {
                font-size: 13px;
                right: -23px;
                top: -40px;
            }
            .main-top-banner__image {
                width: 333px;
                bottom: -38px;
                right: -21px;
            }
            .main-top-banner__shadow {
                width: 260px;
                height: 260px;
                filter: blur(50px);
                right: 25px;
            }
            .main-top-banner__block {
                margin-bottom: 40px;
            }
        }

/* End */


/* Start:/local/templates/escalada/components/bitrix/news.list/action-timer/style.css?17838568045344*/
.action-timer {
    --timer-bg: #050607;
    --timer-muted: rgba(255, 255, 255, 0.12);
    --timer-accent: #2597d4;
    --timer-text: #fff;
    --timer-size: 212px;
    --timer-gap: 84px;
    --timer-title-size: 44px;
    --timer-subtitle-size: 36px;
    --timer-label-size: 32px;
    --timer-value-size: 90px;
    --timer-cta-width: 353px;
    --timer-cta-height: 60px;
    
    display: flex;
    flex-direction: column;
    gap: 48px;
    width: 100%;
    max-width: 1400px;
    margin: 0 auto 90px auto;
    box-sizing: border-box;
	padding: 0 10px;
}

.action-timer__header {
    width: 100%;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.action-timer__title {
    font-family: 'GothemPro';
    font-weight: 700;
    font-size: var(--timer-title-size);
    line-height: 1.2;
    margin: 0;
}

.action-timer__highlited-title {
    color: #EEC33E;
}

.action-timer__bonus {
	font-family: 'Open Sans', 'Arial', sans-serif;
}

.action-timer__subtitle {
    font-family: 'GothemPro';
    font-weight: 700;
    color: var(--timer-accent);
    font-size: var(--timer-subtitle-size);
    line-height: 1.2;
}

.action-timer__wrap {
    display: flex;
    gap: var(--timer-gap);
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
}

.action-timer__panel {
    width: var(--timer-size);
    text-align: center;
    flex-shrink: 0;
}

.action-timer__circle {
    position: relative;
    width: var(--timer-size);
    height: var(--timer-size);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 13px auto;
}

.action-timer__center-number {
    font-size: var(--timer-value-size);
    font-weight: 400;
    line-height: 1;
}

.action-timer__label {
    font-size: var(--timer-label-size);
    color: var(--timer-text);
    text-transform: lowercase;
    font-weight: normal;
    display: block;
}

.action-timer__dots {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.action-timer__dot {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    transform-origin: 0 0;
    opacity: 1;
    transition: background 0.25s, opacity 0.25s, transform 0.25s;
    background: var(--timer-muted);
    box-shadow: 0 0 6px rgba(23, 162, 255, 0.07);
}

.action-timer__dot.active {
    background: var(--timer-accent);
    box-shadow: 0 6px 18px rgba(23, 162, 255, 0.14);
}

.action-timer__cta {
    display: block;
    width: var(--timer-cta-width);
    height: var(--timer-cta-height);
    margin: 0 auto;
    padding: 16px 23px;
    border: 2px solid var(--timer-accent);
    border-radius: 4px;
    background: transparent;
    color: var(--timer-text);
	font-family: 'Open Sans', 'Arial', sans-serif;
    font-weight: 500;
    cursor: pointer;
    font-size: 16px;
    transition: all 0.3s ease;
}

.action-timer__cta:hover {
    background: var(--timer-accent);
}

@media (max-width: 1439px) {
    .action-timer {
        --timer-size: 162px;
        --timer-gap: 50px;
        --timer-title-size: 34px;
        --timer-subtitle-size: 26px;
        --timer-value-size: 68px;
        --timer-label-size: 25px;
        --timer-cta-width: 270px;
		--timer-cta-height: 45px;
        gap: 35px;
    }

	.action-timer__dot {
		width: 6px;
		height: 6px;
	}

	.action-timer__cta {
		font-size: 14px;
		padding: 11px 20px;
	}

}

@media (max-width: 1023px) {
    .action-timer {
        --timer-size: 140px;
        --timer-gap: 30px;
        --timer-title-size: 28px;
        --timer-subtitle-size: 20px;
        --timer-value-size: 51px;
        --timer-label-size: 20px;
        --timer-cta-width: 241px;
		--timer-cta-height: 34px;
        gap: 35px;
    }
    
    .action-timer__wrap {
        gap: var(--timer-gap);
    }
    
    .action-timer__header {
        gap: 18px;
    }
    
    .action-timer__dot {
        width: 5px;
        height: 5px;
    }

	.action-timer__circle {
		margin: 0 auto 10px auto;
	}

	.action-timer__cta {
		padding: 6px 18px;
	}

}

@media (max-width: 767px) {
    .action-timer {
        --timer-size: 110px;
        --timer-gap: 20px;
        --timer-title-size: 22px;
        --timer-subtitle-size: 16px;
        --timer-value-size: 40px;
        --timer-label-size: 16px;
        --timer-cta-width: 187px;
		--timer-cta-height: 26px;
        gap: 30px;
    }
    
    .action-timer__wrap {
        gap: var(--timer-gap);
    }
    
    .action-timer__header {
        gap: 15px;
    }
    
    .action-timer__dot {
        width: 4px;
        height: 4px;
    }
    
    .action-timer__cta {
		padding: 3px 16px;
        font-size: 12px;
    }

	.action-timer__circle {
		margin: 0 auto 6px auto;
	}

}

@media (max-width: 575px) {
    .action-timer {
        --timer-size: 78px;
        --timer-gap: 0px;
        --timer-title-size: 18px;
        --timer-subtitle-size: 14px;
        --timer-value-size: 27px;
        --timer-label-size: 12px;
        --timer-cta-width: 268px;
		--timer-cta-height: 50px;
        gap: 25px;
    }
    
    .action-timer__wrap {
        gap: var(--timer-gap);
    }
    
    .action-timer__header {
        gap: 12px;
    }

    .action-timer__dot {
        width: 3px;
        height: 3px;
    }
    
    .action-timer__cta {
		padding: 3px 16px;
        font-size: 13px;
    }
}
/* End */


/* Start:/local/templates/escalada/components/bitrix/news.list/main_topslider/style.css?17838568044273*/
/* ============================================================
   main_topslider (news.list) — стили карусели "О нас" главной страницы.
   Вынесено из template-бандла (css/main-page.css), Проход A, чанк 5b.
   Эмитит шаблон: .about-slider* (БЕЗ модификатора --parties).
   Класс-близнец .main-group__carousel* (компонент main-groups) — отдельный файл.
   Мульти-селекторные правила main-page.css (.main-page__gym/.main-swim/.owl-carousel img/
   .events-slider-nav) разделены lossless: сюда уносятся ТОЛЬКО .about-slider*.
   url(/local/templates/escalada/components/bitrix/news.list/main_topslider/) пересчитаны от components/bitrix/news.list/main_topslider/ (+4 уровня до images/).
   ============================================================ */

/* --- База --- */

.about-slider{
    position: relative;
    margin: 55px 0;
}
.about-slider__info{
    max-width: 600px;
    position: absolute;
    bottom: 30px;
    height: 150px;
    left: 70px;
    z-index: 2;
    text-align: left;
}
.about-slider__title,
.about-slider__text{
    text-align: left;
}
/* Специфичность .about-slider ... повышена намеренно: page-бандл (main-page.css)
   грузится раньше template-бандла, где лежит .h1,.h2,.h3{margin-bottom:30px}. Без этого
   .h3 (двойной класс на заголовке) переопределил бы margin-bottom (был бы баг 10px->30px). */
.about-slider .about-slider__title{
    margin-bottom: 10px;
}
.about-slider__item{
    height:70vh;
    position: relative;
    background: no-repeat center;
    background-size: cover;
}
.about-slider__info .btn {
    margin-top: 16px;
}
.about-slider__item:after,
.about-slider__item:before{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, #090B11 6.13%, rgba(9, 11, 17, 0) 95.74%);
    opacity: 0.3;
    z-index: 0;
}
.about-slider__item:after{
    background: linear-gradient(0deg, #090B11 6.13%, rgba(9, 11, 17, 0) 95.74%);
}
.about-slider__item > div{
    display: none;
}
.about-slider__numb{
    display: inline-block;
    vertical-align: top;
    position: absolute;
    left: 60px;
    bottom: 172px;
    transform: translateX(-50%);
}
.about-slider .owl-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 120px;
    margin-bottom: 20px;
    position: absolute;
    bottom: 180px;
    left: 70px;
}
.about-slider .owl-nav .owl-prev,
.about-slider .owl-nav .owl-next {
    width: 30px;
    height: 30px;
    border-radius: 100%;
    border: 1px solid #FFFFFF;
    background: url("/local/templates/escalada/components/bitrix/news.list/main_topslider/../../../../images/svg/ico-arrow-right-white.svg") no-repeat center;
    background-size: 6px 10px;
    color: transparent;
    overflow: hidden;
    z-index: 3;
}
.about-slider .owl-nav .owl-prev {
    transform: rotate(180deg);
}

/* --- @media (max-width: 740px) --- */

@media (max-width: 740px){
    .about-slider__numb{
        position: static;
        margin: 0 0 20px 61px;
    }
    .about-slider__info{
        position: static;
        background-color: transparent;
        padding: 30px 20px 0;
        max-width: 100%;
        height: auto;
        min-height: 120px;
    }
    .about-slider__item{
        height:30vh;
    }
    .about-slider__info{
        min-height: 125px;
        padding-bottom: 0;
    }
    .about-slider .owl-nav{
        bottom: -78px !important;
        left: 20px;
    }
    .about-slider__item:after,
    .about-slider__item:before{
        display: none;
    }
    /* Специфичность повышена: иначе h3,.h3{font-size:25px;line-height:35px}
       из template-бандла (грузится позже) перебивал бы мобильный размер. */
    .about-slider .about-slider__title{
        font-size: 15px;
        line-height: 150%;
    }
}

/* --- @media (max-width: 1024px) --- */

@media (max-width: 1024px){
    .about-slider .owl-nav,
	.about-slider__info{
       left: 20px;
    }
    .about-slider .about-slider__title{
        margin-bottom: 15px;
    }
}

/* End */


/* Start:/local/templates/escalada/components/bitrix/news.list/cards/style.css?17838568048378*/
/* ========================================
   Component: bitrix:news.list / cards
   Шаблон: components/bitrix/news.list/cards/template.php
   ----------------------------------------
   Стили самого компонента «Виды клубного членства»:
   табы (.club-cards__tabs*) + блоки-карточки (.club-cards__block*).
   Вынесено из css/pages/cards.css (Фаза 2.1a рефакторинга).
   Подключается по конвенции Bitrix (style.css рядом с template.php).
   ======================================== */

/* ========================================
   🃏 Табы переключения
   ======================================== */
.club-cards__tab {
    background: #fff;
    padding: 20px 16px;
    text-align: center;
    text-transform: uppercase;
    width: 226px;
    font-size: 20px;
    color: #020303;
    border: none;
    border-radius: 0;
    font-weight: 700;
    transition: all linear .2s;
    cursor: pointer;
    margin-bottom: 18px;
}
.club-cards__tab:not(:last-child) {
    margin-right: 18px;
}
.club-cards__tab:hover {
    background: #2597D4;
    color: #fff;
}
.club-cards__tab.active {
    background: #2597D4;
    color: #fff;
}
.club-cards__tabs {
    margin-bottom: 20px;
}

/* ========================================
   🃏 Карточка-блок
   ======================================== */
.club-cards__view {
    font-size: 24px;
    color: #FFFFFF;
    margin-bottom: 40px;
    margin-top: 0;
}

.club-cards__block {
    justify-content: space-between;
    display: none;
}
.club-cards__block.show {
    display: flex;
}
.club-cards__block-info {
    width: 548px;
    display: flex;
    flex-direction: column;
}
.club-cards__image {
    position: relative;
    width: 608px;
    height: 385px;
}
.club-cards__image-inner {
    border-radius: 40px;
    width: 100%;
    height: 100%;
    overflow: hidden;
    box-shadow: 0 0 40px -10px #2597D4;
    transition: all linear .2s;
}
.club-cards__image-inner img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}
.club-cards__image span {
    position: absolute;
    width: 50%;
    height: 50%;
    z-index: 5;
    transition: all linear .2s;
}
.club-cards__image span:nth-child(1) {
    top: 0;
    left: 0;
}
.club-cards__image span:nth-child(2) {
    top: 0;
    right: 0;
}
.club-cards__image span:nth-child(3) {
    bottom: 0;
    left: 0;
}
.club-cards__image span:nth-child(4) {
    bottom: 0;
    right: 0;
}

.club-cards__image span:nth-child(1):hover ~ .club-cards__image-inner {
    transform: perspective(1000px) rotateX(12deg) rotateY(-12deg);
}
.club-cards__image span:nth-child(2):hover ~ .club-cards__image-inner {
    transform: perspective(1000px) rotateX(12deg) rotateY(12deg);
}
.club-cards__image span:nth-child(3):hover ~ .club-cards__image-inner {
    transform: perspective(1000px) rotateX(-12deg) rotateY(-12deg);
}
.club-cards__image span:nth-child(4):hover ~ .club-cards__image-inner {
    transform: perspective(1000px) rotateX(-12deg) rotateY(12deg);
}

.club-cards__block-title {
    text-transform: uppercase;
    color: #FFFFFF;
    font-size: 50px;
    margin-bottom: 25px;
    font-weight: 700;
    margin-top: 0;
    line-height: normal;
}
.club-cards__list {
    padding: 0;
    margin: 0;
    margin-bottom: auto;
    list-style-type: none;
}
.club-cards__item {
    position: relative;
    padding-left: 22px;
}
.club-cards__item::before {
    content: '';
    position: absolute;
    left: 0;
    top: 6px;
    width: 10px;
    height: 10px;
    background: #2597D4;
    border-radius: 50%;
}
.club-cards__item p {
    color: #FFFFFF;
    font-size: 16px;
    line-height: normal;
    margin: 0;
}
.club-cards__button {
    margin-top: 40px;
    padding: 12px 46px;
    width: 350px;
    background: #2597D4;
    color: #fff;
    border: 2px solid #3C8CDD;
    border-radius: 4px;
    font-family: 'Open Sans', 'Arial', sans-serif;
    font-weight: 500;
    font-size: 14px;
    line-height: 22px;
    text-align: center;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    cursor: pointer;
    transition: all linear .2s;
}
.club-cards__button:hover {
    box-shadow: 0 0 40px -10px #2597D4;
}

/* ========================================
   📱 Адаптив (desktop overrides по убывающей ширине)
   ======================================== */
@media screen and (max-width: 1400px) {
    .club-cards__tab {
        width: 200px;
        padding: 18px 10px;
        font-size: 18px;
        margin-bottom: 16px;
    }
    .club-cards__tab:not(:last-child) {
        margin-right: 16px;
    }
    .club-cards__view {
        font-size: 22px;
        margin-bottom: 32px;
    }
    .club-cards__block-title {
        font-size: 44px;
        margin-bottom: 22px;
    }
    .club-cards__block-info {
        width: calc(100% - 590px);
    }
    .club-cards__image {
        width: 550px;
        height: 344px;
    }
    .club-cards__item {
        position: relative;
        padding-left: 20px;
    }
    .club-cards__item::before {
        width: 8px;
        height: 8px;
    }
    .club-cards__item p {
        font-size: 16px;
    }
}

@media screen and (max-width: 1200px) {
    .club-cards__tab {
        width: 184px;
        padding: 14px 6px;
        margin-bottom: 14px;
    }
    .club-cards__tab:not(:last-child) {
        margin-right: 14px;
    }
    .club-cards__view {
        font-size: 22px;
        margin-bottom: 28px;
    }
    .club-cards__block-title {
        font-size: 36px;
        margin-bottom: 20px;
    }
    .club-cards__block-info {
        width: calc(100% - 525px);
    }
    .club-cards__image {
        width: 490px;
        height: 306px;
    }
    .club-cards__item {
        position: relative;
        padding-left: 20px;
    }
}

@media screen and (max-width: 1024px) {
    .club-cards__tab {
        width: 140px;
        padding: 10px 3px;
        margin-bottom: 10px;
        font-size: 14px;
    }
    .club-cards__tab:not(:last-child) {
        margin-right: 10px;
    }
    .club-cards__view {
        font-size: 18px;
        margin-bottom: 22px;
    }
    .club-cards__block-title {
        font-size: 27px;
        margin-bottom: 15px;
    }
    .club-cards__block-info {
        width: calc(100% - 395px);
    }
    .club-cards__image {
        width: 370px;
        height: 236px;
    }
    .club-cards__item {
        position: relative;
        padding-left: 15px;
    }
    .club-cards__item::before {
        width: 6px;
        height: 6px;
        top: 8px;
    }
    .club-cards__button {
        padding: 12px 30px;
        width: 240px;
    }
}

@media screen and (max-width: 768px) {
    .club-cards__tab {
        width: 168px;
        padding: 10px 3px;
        margin-bottom: 18px;
        font-size: 14px;
        margin: 0 9px 9px 9px !important;
    }
    .club-cards__tab:not(:last-child) {
        margin-right: 0;
    }
    .club-cards__tabs {
        margin-bottom: 15px;
        justify-content: center;
        display: flex;
        flex-wrap: wrap;
    }
    .club-cards__view {
        font-size: 18px;
        margin-bottom: 22px;
    }
    .club-cards__block {
        width: 340px;
        margin: 0 auto;
        flex-direction: column;
    }
    .club-cards__block-title {
        font-size: 24px;
        margin-bottom: 20px;
        text-align: center;
    }
    .club-cards__block-info {
        width: 100%;
    }
    .club-cards__image {
        width: 100%;
        height: auto;
        order: -1;
        margin-bottom: 20px;
    }
    .club-cards__item {
        position: relative;
        padding-left: 15px;
    }
    .club-cards__item::before {
        width: 6px;
        height: 6px;
        top: 8px;
    }
    .club-cards__button {
        padding: 12px 30px;
        width: 240px;
        margin: 40px auto 0 auto;
        font-size: 12px;
    }
}

@media screen and (max-width: 576px) {
    .club-cards__tab {
        width: 155px;
    }
    .club-cards__view {
        font-size: 16px;
        margin-bottom: 20px;
    }
    .club-cards__block {
        width: 100%;
    }
    .club-cards__block-title {
        font-size: 20px;
    }
    .club-cards__item {
        position: relative;
        padding-left: 15px;
    }
    .club-cards__button {
        width: 240px;
    }
}

/* End */


/* Start:/local/templates/escalada/components/bitrix/news.list/owl-slider/style.css?17838568044501*/
/* ============================================================
   owl-slider (bitrix:news.list) — кастомные стили слайдера тренажёрного
   зала / бассейна на главной. Компонент рендерится дважды: в секциях
   .main-page__gym.main-page__gym--power и .main-page__gym.main-page__gym--swim (обе площадки: Академка IBLOCK_ID=15,
   Коммунарка IBLOCK_ID=36 — разметка и классы одинаковы).

   Проход A, чанк 9b. Вынесено из template-бандла (css/main-page.css).
   Эмитит шаблон: .slider-wrapper > .owl-carousel (vendor-структура) + .owl-counter.
   Сюда перенесены ТОЛЬКО собственные правила компонента — навигация owl-стрелок
   внутри .main-page__gym/.main-swim и оверрайды счётчика .owl-counter.

   Сюда НЕ переносится (намеренно):
     - vendor-структура .owl-carousel/.owl-item/.owl-nav/.owl-dots — js/owl.carousel.css;
     - база .slider-wrapper{position:relative} и .owl-counter{position:absolute;...}
       — css/base.css (общая инфраструктура счётчика, грузится в template-бандле);
     - глобальное .owl-carousel .owl-item img{height:70vh} — остаётся в main-page.css
       (применяется к другим owl-каруселям; у owl-slider img inline height:auto, не матчит);
     - .events-slider-nav .events-slider-prev/next — чужой компонент (events_v2), мульти-
       правила расщеплены lossless: эти селекторы оставлены в main-page.css.

   Каскад: style.css компонента грузится в page-бандле РАНЬШЕ template-бандла
   (main-page.css/base.css/new.css). Правила .main-page__gym/.main-swim .owl-nav/.owl-prev/.owl-next
   имеют специфичность (0,2,0) и не имеют конкурентов в более поздних бандлах — перенос
   lossless. Оверрайды .owl-counter в @media квалифицированы как .slider-wrapper .owl-counter
   (0,2,0), чтобы победить base.css .owl-counter{left:100px} (template-бандл грузится ПОЗЖЕ
   page-бандла) — это восстанавливает stage-поведение (на dev до фикса счётчик ошибочно
   оставался left:100px на <=1024/<=740 из-за порядка бандлов).

   url(/local/templates/escalada/components/bitrix/news.list/owl-slider/) пересчитаны от components/bitrix/news.list/owl-slider/ (+4 уровня до images/):
   ../images/  ->  ../../../../images/
   ============================================================ */

/* --- Навигация (стрелки) owl-slider в секциях .main-page__gym / .main-swim --- */

.main-page__gym .owl-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 120px;
    margin-bottom: 20px;
    position: absolute;
    bottom: 180px;
    left: 70px;
}

.main-page__gym .owl-nav {
	bottom: 20px;
}
.main-page__gym .owl-prev,
.main-page__gym .owl-next,
.main-swim .owl-prev,
.main-swim .owl-next {
    width: 30px;
    height: 30px;
    border-radius: 100%;
    border: 1px solid #FFFFFF;
    background: url("/local/templates/escalada/components/bitrix/news.list/owl-slider/../../../../images/svg/ico-arrow-right-white.svg") no-repeat center;
    background-size: 6px 10px;
    color: transparent;
    overflow: hidden;
    z-index: 3;
}
.main-page__gym .owl-prev,
.main-swim .owl-prev {
    transform: rotate(180deg);
}

/* Порядок медиа намеренно как на stage (new.css): сначала 740, затем 1024 — при наложении
   на узких вьюпортах позже идущий блок 1024 (.owl-counter left:50px) побеждает 740 (left:20px). */

/* --- @media (max-width: 740px) --- */

@media (max-width: 740px){
    .main-page__gym .owl-nav{
        bottom: -78px !important;
        left: 20px;
    }
	.slider-wrapper .owl-counter {
        bottom: -58px !important;
        left: 20px;
	}
}

/* --- @media (max-width: 1024px) --- */

@media (max-width: 1024px){
    .main-page__gym .owl-nav {
       left: 20px;
    }
	.main-page__gym .owl-nav{
	bottom: 20px;
	}
	.slider-wrapper .owl-counter{
	left: 50px;
	bottom: 42px;
	}
}

/* End */


/* Start:/local/templates/escalada/components/bitrix/news.list/main-groups/style.css?17838568044530*/
/* ============================================================
   main-groups (news.list) — стили карусели групп главной страницы
   Вынесено из template-бандла (css/main-page.css), Фаза 2.2b.
   Эмитит шаблон: groups-slider*, .main-group .groups-slider.
   Класс-близнец .main-abouts__carousel* (компоненты main_topslider/parties_slider)
   ОСТАЁТСЯ в main-page.css — общие мульти-селекторные правила были разделены.
   url(/local/templates/escalada/components/bitrix/news.list/main-groups/) пересчитаны от components/bitrix/news.list/main-groups/ (+4 уровня до css/images).
   ============================================================ */

/* --- База --- */

.groups-slider{
    position: relative;
    margin: 55px 0;
}
.groups-slider__info{
    max-width: 600px;
    position: absolute;
    bottom: 30px;
    height: 150px;
    left: 70px;
    z-index: 2;
    text-align: left;
}
.groups-slider__info{
    max-width: 540px;
    height: 260px;
}
.groups-slider__title,
.groups-slider__text{
    text-align: left;
}
/* Специфичность .groups-slider ... повышена намеренно: page-бандл грузится
   раньше template-бандла, где лежит .h1,.h2,.h3{margin-bottom:30px}. Без этого
   .h3 переопределил бы margin-bottom заголовка карусели (был баг 10px->30px). */
.groups-slider .groups-slider__title{
    margin-bottom: 10px;
}
.groups-slider__item{
    height:70vh;
    position: relative;
    background: no-repeat center;
    background-size: cover;
}
.groups-slider__item{
    padding-top: 54%;
}
.groups-slider__item:after,
.groups-slider__item:before{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(90deg, #090B11 6.13%, rgba(9, 11, 17, 0) 95.74%);
    opacity: 0.3;
    z-index: 0;
}
.groups-slider__item:after{
    background: linear-gradient(0deg, #090B11 6.13%, rgba(9, 11, 17, 0) 95.74%);
}
.groups-slider__item:after,
.groups-slider__item:before{
    opacity: .3;
}
.groups-slider__item > div{
    display: none;
}
.groups-slider__numb{
    display: inline-block;
    vertical-align: top;
    position: absolute;
    left: 60px;
    bottom: 172px;
    transform: translateX(-50%);
}
.groups-slider__numb{
    bottom: 291px;
}
.groups-slider .owl-nav{
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 120px;
    margin-bottom: 20px;
    position: absolute;
    bottom: 180px;
    left: 70px;
}
.groups-slider .owl-nav{
    bottom: 300px;
}
.groups-slider .owl-prev,
.groups-slider .owl-next{
    width: 30px;
    height: 30px;
    border-radius: 100%;
    border: 1px solid #FFFFFF;
    background: url("/local/templates/escalada/components/bitrix/news.list/main-groups/../../../../images/svg/ico-arrow-right-white.svg") no-repeat center;
    background-size: 6px 10px;
    color: transparent;
    overflow: hidden;
    z-index: 3;
}
.groups-slider .owl-prev{
    transform: rotate(180deg);
}
.main-group .groups-slider{
    margin: -5px 0 0;
    position: relative;
}

/* --- @media (max-width: 1024px) --- */

@media (max-width: 1024px){
    .groups-slider .owl-nav,
    .groups-slider__info{
       left: 20px;
    }
    .groups-slider__info{
        bottom: 40px;
    }
    .groups-slider__numb{
        bottom: 282px;
    }
}

/* --- @media (max-width: 740px) --- */

@media (max-width: 740px){
    .groups-slider__numb{
        position: static;
        margin: 0 0 20px 61px;
    }
    .groups-slider__info{
        position: static;
        background-color: transparent;
        padding: 30px 20px 0;
        max-width: 100%;
        height: auto;
        min-height: 120px;
    }
    .groups-slider__item{
        height:30vh;
    }
    .groups-slider .owl-nav{
        bottom: -78px !important;
        left: 20px;
    }
    .main-group .groups-slider{
        margin: 0;
    }
    .main-group .groups-slider:before{
        display: none;
    }
    .groups-slider__item{
        padding-top: 0;
    }
    .groups-slider__item:after,
    .groups-slider__item:before{
        display: none;
    }
    /* Специфичность повышена: иначе h3,.h3{font-size:25px;line-height:35px}
       из template-бандла (грузится позже) перебивал бы мобильный размер. */
    .groups-slider .groups-slider__title{
        font-size: 15px;
        line-height: 150%;
    }
}

/* End */


/* Start:/local/templates/escalada/components/bitrix/news.list/events_v2/style.css?17838568047875*/
/* ============================================================
   Component: bitrix:news.list / events_v2
   Шаблон: components/bitrix/news.list/events_v2/template.php
   ------------------------------------------------------------
   Слайдер «Клубная жизнь» на ГЛАВНОЙ (academicheskaya / kommunarka).
   Вынесено из глобального css/new.css (Фаза 2.2c рефакторинга).
   Подключается по конвенции Bitrix (style.css рядом с template.php),
   мёржится в page_*.css.

   ГРАНИЦА (что эмитит template.php и потребляет ТОЛЬКО events_v2):
     .club-life__columns, .club-life__slide*, .club-life__img,
     .club-life__image, .club-life__nav, .club-life__prev/next.
   Проверено: ни один АКТИВНЫЙ компонент эти классы больше не использует
   (events_grid → .club-life-grid*; main-groups → .main-group__carousel*;
    main_topslider → .main-abouts__carousel*). Поэтому селекторы оставлены
   в ИСХОДНОЙ специфичности (0,1,0) — конкурентов-глобалей нет.

   НЕ ПЕРЕИМЕНОВАНО (омонимы / чужие неймспейсы / orphan-layout):
     .main-group__carousel* — компонент main-groups (отдельный rename);
     .main-page__groups-info / .main-page__groups-descr — обёртка-секция (переименована в B2, проход 5);
     .main-group__slider-menu*, .slider-topmenu*, .main-group .owl-item —
       легаси-topmenu: только в template_copy.php + мёртвый groupsChanged()
       в script.js (бинд к несуществующему [data-carousel-groups]);
     .events-slider__* — другой компонент (news.list/.default на /events/);
     .pagetitle-events-detail — заголовок страницы детали (не слайдер);
     .groups__left / .groups__columns — layout групп без активного эмиттера;
     .wrap-big, .events, .groups, .pagetitle, .btn — утилиты/обёртки.

   КАСКАД: page_*.css компонента грузится РАНЬШЕ template-бандла
   (main-page.css / new.css). Эти же .club-life*-правила частично живут в
   main-page.css/new.css (туда же перенесён мобильный фикс
   .page-content .club-life__right{position:relative}@767 — .page-content
   это секция, НЕ часть блока .club-life). НЕ поднимаем специфичность здесь,
   чтобы не перебить моб. оверрайды main-page.css. url(/local/templates/escalada/components/bitrix/news.list/events_v2/) в правилах этого
   файла ОТСУТСТВУЮТ — пересчёт не нужен.
   ============================================================ */

/* --- Контейнер колонок слайдера --- */
.club-life__columns {
    height: 400px;
    border-top: 2px solid #2597D4;
}

/* --- Левая инфо-колонка / тексты --- */
.club-life__slide {
    display: flex;
}
.club-life__slide-info {
    width: 440px;
    padding-right: 30px;
    text-align: left;
    position: absolute;
}
.club-life__slide-info.hidden {
    display: none;
}
.club-life__slide-title {
    padding-top: 33px;
    font-size: 24px;
    font-weight: 700;
    line-height: 28px;
    margin-bottom: 60px;
    text-transform: uppercase;
    font-family: "GothemPro", "Arial", sans-serif;
}
.club-life__slide-date {
    font-family: "GothemPro-light", "Arial", sans-serif;
    color: rgba(255, 255, 255, .5);
    font-size: 18px;
}
.club-life__slide-text {
    opacity: 0.7;
    font-size: 14px;
    line-height: 22px;
    font-weight: 100;
}

/* --- Картинки слайда --- */
.club-life__img {
    display: none;
}
.club-life__image {
    height: 400px;
    width: 712px;
    background-size: cover;
    background-position: center;
}

/* --- Навигация слайдера (стрелки-контейнер + счётчик) --- */
.club-life__nav {
    position: absolute;
    bottom: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 142px;
    z-index: 2;
}
.club-life__next,
.club-life__prev {
    cursor: pointer;
}

/* ============================================
   Адаптив (значения 1:1 с исходником new.css)
   ============================================ */
@media (max-width: 1440px) {
    .club-life__image {
        height: 360px;
        width: 450px;
    }
    .club-life__nav {
        bottom: 30px;
    }
}
@media (max-width: 1024px) {
    .club-life__slide-date {
        font-size: 14px;
    }
}
@media (max-width: 767px) {
    .club-life__nav {
        bottom: 14%;
        left: 36px;
    }
}
@media (max-width: 575px) {
    .club-life__slide-date {
        font-size: 10px;
    }
    .club-life__nav {
        bottom: 24%;
        left: 50%;
        transform: translateX(-50%);
    }
}

/* ============================================================
   Перенос из css/new.css (Батч 3): list-вид слайдера «Клубная жизнь».
   .club-life__right (контейнер-вьюпорт слайдера), .owl-item, и
   .club-life__img-slider .owl-nav/.owl-prev/.owl-next (стрелки нав-бар).
   url(/local/templates/escalada/components/bitrix/news.list/events_v2/) стрелок пересчитан с css/-уровня (../images) на уровень
   компонента news.list/events_v2/ (../../../../images) — 1:1 с
   соседним news.detail style.css (events_v2 и events_grid).
   КАСКАД: эти правила раньше жили в new.css (template-бандл, грузится
   ПОЗЖЕ page-бандла) и выигрывали по порядку у одноимённых правил
   main-page.css. После переноса в этот style.css (page-бандл, ДО
   main-page.css) специфичность поднята .club-life-префиксом
   (0,1,0)->(0,2,0 / для .owl-nav 0,2,0->0,3,0), чтобы сохранить
   победу над main-page.css (.club-life__right{width:720px}@1600 и
   .club-life__img-slider .owl-nav{margin:0}@767). .main-page__events-*
   правила (0,2,0+) по-прежнему выигрывают, где должны.
   ============================================================ */
.club-life .club-life__right {
    width: 712px;
    height: 400px;
    position: absolute;
    right: 70px;
    overflow: hidden;
}
.club-life__right .owl-item {
    width: 660px;
}
.club-life .club-life__img-slider .owl-nav {
    width: 139px;
    height: 70px;
    background: #090B12;
    border: 1px solid #08192A;
    margin-top: -70px;
    position: relative;
    font-size: 0;
}
.club-life__img-slider .owl-nav div {
    width: 50%;
    height: 100%;
    display: inline-block;
}
.club-life__img-slider .owl-prev,
.club-life__img-slider .owl-next {
    background: url("/local/templates/escalada/components/bitrix/news.list/events_v2/../../../../images/to-left.svg") no-repeat center;
}
.club-life__img-slider .owl-next {
    transform: rotate(180deg);
}
.club-life__img-slider .owl-prev:hover,
.club-life__img-slider .owl-next:hover {
    background: url("/local/templates/escalada/components/bitrix/news.list/events_v2/../../../../images/to-right.svg") no-repeat center;
    transform: rotate(0deg);
}
.club-life__img-slider .owl-prev:hover {
    transform: rotate(180deg);
}
@media (max-width: 1440px) {
    .club-life .club-life__right {
        height: 360px;
        width: 450px;
    }
}
@media (max-width: 1024px) {
    .club-life .club-life__right {
        width: 334px;
        right: 20px;
    }
    .club-life__image {
        height: 360px;
        width: 334px;
    }
}
@media (max-width: 1000px) {
    .club-life .club-life__right {
        margin-left: -150px;
    }
}

/* End */


/* Start:/local/templates/escalada/css/forms.css?178385680413597*/
textarea.input,
input[type="text"].input{
    padding:7px 20px;
    margin-bottom:10px;
    width:100%;
    background:#1A1A1A;
    border:1px solid #1A1A1A;
    color:#fff;
    font-size:16px;
    line-height:36px;
    font-weight:100;
    font-family:'Open Sans', 'Arial', sans-serif;
}
textarea.input::placeholder,
input[type="text"].input::placeholder{
    color:#BFBFBF;
}
textarea.input:focus,
input[type="text"].input:focus{
    background:#333333;
    border:1px solid #333333;
}
.popup{
    /*display: none;*/
    width: 100%;
    max-width: 860px;
    top: 80px;
}
.popup-content{
    background: #FFFFFF;
    border-radius: 5px;
    color: #090B11;
    padding: 0 20px;
}
.popup-top{
    padding: 40px 0 32px;
    max-width: none;
    margin: 0 auto;
}
.pop-from__title,
.pop-title{
    text-align: center;
    margin-bottom: 10px;
    color: #090B11;
    font-size: 25px;
    line-height: 35px;
}
.pop-from__title{
    margin-bottom: 20px;
}
.pop-descr{
    max-width: 460px;
    margin: 0 auto 50px;
    color: #090B11;
    text-align: center;
}
.pop-card{
    max-width: 310px;
    width: 100%;
    box-shadow: 5px 5px 30px rgba(0, 0, 0, 0.6);
    margin: 0 auto 60px;
    line-height: 0;
    border-radius: 10px;
    position: relative;
    overflow: hidden;
}
.pop-card:after{
    content: '';
    display: block;
    width: 147px;
    height: 20px;
    background: url(/local/templates/escalada/js/../images/svg/logo-card.svg) no-repeat 0 50%;
    background-size: contain;
    position: absolute;
    top: 26px;
    left: 25px;
    z-index: 2;
}
.pop-card img{
    width: 100%;
}
.pop-card__tr{
    font-weight: 300;
    color: #090B11;
    padding: 15px 0;
    border-top: 1px solid #E6E6E6;
}
.pop-card__bot{
    max-width: 638px;
    margin-top: 25px;
}
.fancybox-is-open .fancybox-bg{
    opacity: 0;
}
.popup-form{
    background: #F7F7F7;
    padding: 40px 20px 50px;
    margin: 0 -20px;
}
.popup-form form{
    width: 100%;
    max-width: 420px;
    margin: 0 auto 20px;
}
.popup-form .input-holder{
    display: block;
    width: 100%;
    cursor: pointer;
    margin-bottom: 25px;
    position: relative;
}
.popup-form input.input::placeholder{
    color: #000000;
    font-family: 'Open Sans', 'Arial', sans-serif;
    font-weight: 300;
    font-size: 14px;
    line-height: 22px;
}
.popup-form input.input{
    -webkit-appearance: none;
    font-family: 'Open Sans', 'Arial', sans-serif;
    font-weight: 300;
    font-size: 14px;
    line-height: 22px;
    color: #000000;
    padding: 0 5px;
    width: 100%;
    max-width: 100%;
    background: none;
    border: 0;
    border-bottom: 1px solid #E6E6E6;
}
.popup-form textarea.input:focus,
.popup-form input[type="text"].input:focus{
    background: transparent;
    border: 0;
    border-bottom: 1px solid #E6E6E6;
}
.popup-form button{
    display: block;
    width: 220px;
    margin: 0 auto 20px;
}
.popup-form button:hover{
    color: #0a7ddd;
}
.popup-form .agree{
    font-family: 'Open Sans', 'Arial', sans-serif;
    font-weight: 300;
    font-size: 14px;
    line-height: 22px;
    text-align: center;
}
.popup .fancybox-close-small:after{
    display: none;
}
.popup .fancybox-close-small{
    background: url("/local/templates/escalada/css/../images/svg/ico-close.svg") no-repeat center;
    background-size: 22px;
}

/* === Captcha (moved from captcha.css) === */
/* Уменьшаем виджет капчи до ~50% */
.smart-captcha,
[id^="captcha-container-"] {
    transform: scale(0.73);
    transform-origin: left top;
    margin-bottom: -14px;
}

/* Inline-сообщение об ошибке капчи */
.captcha-error-msg {
    color: #e74c3c;
    font-size: 13px;
    line-height: 1.3;
    margin-bottom: 8px;
    display: none;
}
.captcha-error-msg.visible {
    display: block;
}


/* ============================================================
   Перенесено из new.css (Батч 4 v2 — форм-специфичные стили).
   url(/local/templates/escalada/css/) не менялся: оба файла в css/, относительные пути идентичны.
   Generic fancybox-скин ОСТАВЛЕН в new.css (Б5/base, image-лайтбоксы).
   ============================================================ */

/* --- Попап «Консультация» (.consult) --- */
.consult,
.fancybox-slide > div:first-of-type.consult{
    /*display: none;*/
    width:440px;
    height: auto;
}
.consult__descr-top{
    font-family:'Open Sans', 'Arial', sans-serif;
    opacity:0.7;
    font-size:16px;
    color:#FFFFFF;
    line-height:26px;
    margin-bottom:40px;
}
.consult__descr{
    font-family:'GothemPro-light', 'Arial', sans-serif;
    color: rgba(255,255,255,.5);
    font-size:14px;
    line-height:20px;
    margin-top:20px;
}
.consult__descr a {
    color: rgba(255,255,255,.5);
    border-bottom: solid 1px rgba(255, 255, 255, .5);
}
.consult__descr a:hover {
    color: rgba(255,255,255,.9);
    border-bottom: solid 1px rgba(255, 255, 255, .7);
}
.consult .fancybox-close-small{
    background:url("/local/templates/escalada/css/../images/cross-remove-sign-h.svg") no-repeat center !important;
    top:30px !important;
    right:30px !important;
    opacity:0.3;
    position: fixed;
}
.consult .fancybox-close-small:hover{
    background:url("/local/templates/escalada/css/../images/cross-remove-sign.svg") no-repeat center !important;
}

/* --- input.input (appearance/radius reset) --- */
input.input{
    -webkit-appearance:none;
    border-radius:0;
}

/* --- Подсветка незаполненных полей --- */
textarea.input.input--error,
input[type="text"].input.input--error,
input.input.input--error {
    border-color: #e74c3c !important;
}

/* --- Попап-форма (.popup-form) — белый фон --- */
.popup-form h2,
.popup-form .consult__descr-top {
    color: #000;
}
.popup-form [data-fancybox-close] {
    display: none;
}

/* ============================================================
   Radio-группа «Выберите удобный способ связи» (call-variant)
   Стилизуем через formstyler-обёртку .jq-radio
   ============================================================ */
.call-variant {
    margin: 12px 0 16px;
    width: 100%;
}
.call-variant__title {
    font-size: 14px;
    color: #fff;
    margin-bottom: 10px;
    line-height: 1.3;
    text-align: left;
}
.call-variant__list {
    display: flex;
    gap: 8px;
}
.call-variant__item {
    flex: 1 1 0;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    user-select: none;
}
/* Внешняя окружность (formstyler-обёртка input-а) */
.call-variant__item .jq-radio {
    width: 22px;
    height: 22px;
    margin: 0 0 6px;
    padding: 0;
    border: 2px solid #fff;
    border-radius: 50%;
    background: transparent;
    background-image: none;
    box-shadow: none;
    transition: background 0.15s, border-color 0.15s;
    box-sizing: border-box;
    flex-shrink: 0;
    display: flex !important;
    align-items: center;
    justify-content: center;
    overflow: visible;
}
.call-variant__item .jq-radio.checked {
    background: transparent;
    background-image: none;
    border-color: #3C8CDD;
    box-shadow: none;
}
/* Внутренняя точка — formstyler даёт ей margin/box-shadow со своей специфичностью,
   точечно перебиваем !important-ом, чтобы точка стояла строго по центру и без artefact-shadow */
.call-variant__item .jq-radio__div {
    width: 10px !important;
    height: 10px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 50%;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    transition: background 0.15s;
    flex-shrink: 0;
}
.call-variant__item .jq-radio.checked .jq-radio__div {
    background: #3C8CDD !important;
    background-image: none !important;
    box-shadow: none !important;
}
.call-variant__label {
    font-size: 14px;
    color: #fff;
}
.call-variant.input--error .call-variant__title { color: #ff5b5b; }
.call-variant.input--error .jq-radio { border-color: #ff5b5b; }
/* Форма В («Узнать больше» в карточке клуба) — белый фон, переопределяем цвета */
.popup-form .call-variant__title,
.popup-form .call-variant__label {
    color: #333;
}
.popup-form .call-variant__item .jq-radio {
    border-color: #C3C3C3;
}
.popup-form .call-variant__item .jq-radio.checked {
    border-color: #3C8CDD;
}
.popup-form .call-variant.input--error .jq-radio {
    border-color: #ff5b5b;
}

/* ============================================================
   Нижний feedback-баннер (.bottom-banner) — форма «Оставить заявку».
   Подключается через local/include/feedback.php (который сам делает SetAdditionalCSS forms.css).
   ВАЖНО: исходный порядок правил из new.css сохранён 1:1 — базовое
   .bottom-banner{background:url} ДОЛЖНО идти ПОСЛЕ @media-оверрайдов
   (background:none / background-position-x), иначе при равной
   специфичности уезжает каскад (фон на мобиле). Не переставлять.
   ============================================================ */
.bottom-banner__info{
    float:right;
    text-align:center;
    max-width:540px;
}
.bottom-banner__title{
    font-size:30px;
    line-height:48px;
    text-transform:uppercase;
    font-family:'Montserrat-Semi', 'Arial', sans-serif;
}
.bottom-banner .title--blue{
    font-size:40px;
    line-height:58px;
    font-weight:100;
    margin:15px 0;
    font-family:'GothemPro-Black', 'Arial', sans-serif;;
}
@media (max-width:1024px) {
    .bottom-banner__info textarea.input,.bottom-banner__info input[type="text"].input {
        padding:4px 20px;
    }
    .bottom-banner {
        background:none;
    }
    .bottom-banner>img{
        display:none
    }
    .bottom-banner .wrap{
        position:relative;
        transform:initial;
        top:0;
        left:auto;
        right:auto;
        width:auto;
    }
    .bottom-banner__info {
        float:initial;
        max-width:450px;
        width:100%;
        margin:35px auto;
        padding:0 10px;
    }
}
@media (max-width:900px) {
    .bottom-banner {
        padding-top: 0;
    }
}
@media (max-width:490px) {
    .bottom-banner{
        background-position-x:-10%;
    }
}
.bottom-banner{
    background: url("/local/templates/escalada/css/../images/statics/feedback-bottom_compress.webp") no-repeat 5% center;
    background-size: auto 120%;
    padding: 65px 0 10px;
}
.bottom-banner .wrap:after{
    content: '';
    display: block;
    clear: both;
}
@media (max-width: 900px) {
	.bottom-banner{
			padding-top:0;
		}
}

/* ФИКС (баг): картинка feedback-баннера показывалась на мобилке, т.к. базовое
   .bottom-banner{background:url(/local/templates/escalada/css/...)} (выше) идёт ПОСЛЕ @media ≤1024 {background:none}
   и перебивает его при равной специфичности. Финальный оверрайд (последний в каскаде):
   на ≤1024 прячем фон-картинку — фон под формой = основной фон страницы. */
@media (max-width: 1024px) {
    .bottom-banner { background: none; }
}

/* ФИКС (баг): попап карточки (fancybox baseClass .cardDetail) грузит .popup БЕЗ штатной
   обёртки .fancybox-content → контент не центрировался и уезжал вниз за вьюпорт (был виден
   только скроллом до низа). Центрируем .popup флексом в слайде; при высокой форме — внутр. скролл. */
.cardDetail .fancybox-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px 15px;
}
.cardDetail .fancybox-slide::before { display: none; }
/* ФИКС мерцания: оверлей cards-попапа делаем прозрачным СРАЗУ (белая форма без тёмного фона).
   Глобальное .fancybox-is-open .fancybox-bg{opacity:0} проигрывало дефолту fancybox в бандле
   и «включалось» поздно (когда попап дозагружал forms.css) → тёмный фон успевал мигнуть.
   Scoped + !important выигрывает с 1-го кадра. Консультацию не трогаем (там тёмная панель формы). */
.cardDetail .fancybox-bg { opacity: 0 !important; }
.cardDetail .popup { top: 0; margin: 0; max-height: 100%; overflow: auto; }

/* Консультация (baseClass consultDetail из forms.js): тот же fix центрирования, что у cards
   (fancybox не оборачивает ajax-контент в .fancybox-content, форма уезжала за низ вьюпорта),
   + стабильный тёмный оверлей (dimming) вместо мерцающего — форма выделяется, «фон и форма» сразу. */
.consultDetail .fancybox-slide { display: flex; align-items: center; justify-content: center; padding: 30px 15px; }
.consultDetail .fancybox-slide::before { display: none; }
.consultDetail .fancybox-bg { opacity: 0.87 !important; }
.consultDetail .consult { top: 0; margin: 0; max-height: 100%; overflow: auto; }

/* End */
/* /local/templates/escalada/components/bitrix/news.list/main-top-banner/style.css?178385680410684 */
/* /local/templates/escalada/components/bitrix/news.list/action-timer/style.css?17838568045344 */
/* /local/templates/escalada/components/bitrix/news.list/main_topslider/style.css?17838568044273 */
/* /local/templates/escalada/components/bitrix/news.list/cards/style.css?17838568048378 */
/* /local/templates/escalada/components/bitrix/news.list/owl-slider/style.css?17838568044501 */
/* /local/templates/escalada/components/bitrix/news.list/main-groups/style.css?17838568044530 */
/* /local/templates/escalada/components/bitrix/news.list/events_v2/style.css?17838568047875 */
/* /local/templates/escalada/css/forms.css?178385680413597 */
