

/* Start:/local/templates/escalada/components/bitrix/breadcrumb/.default/style.css?17838568046764*/
/* Хлебные крошки — рендерятся ВНУТРИ сетки страницы (per-page):
   грид наследуется от .wrap страницы, вертикальный клиренс шапки даёт
   сама страница, поэтому здесь — только отступ до контента и оформление. */
.breadcrumbs {
    margin: 0 0 20px;
    font-family: 'Open Sans', 'Arial', sans-serif;
    font-size: 13px;
    position: relative;
    z-index: 5;
}
.breadcrumbs__list {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 9px 20px;
    background: rgba(0, 0, 0, 0.6);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    border-radius: 24px;
}
.breadcrumbs__item { display: flex; align-items: center; color: rgba(255,255,255,0.6); }
.breadcrumbs__item + .breadcrumbs__item::before { content: "›"; margin-right: 8px; color: rgba(255,255,255,0.4); }
.breadcrumbs__link { color: rgba(255,255,255,0.85); text-decoration: none; transition: color .2s ease; }
.breadcrumbs__link:hover { color: #4a9eff; text-decoration: underline; }
.breadcrumbs__current { color: #fff; font-weight: 500; }
@media (max-width: 740px) { .breadcrumbs { font-size: 12px; } .breadcrumbs__list { padding: 7px 14px; } }

/* На страницах с гридом .container (cards/schedule/3d-tur/events) контент без обёртки .wrap,
   поэтому у .wrap крошек убираем боковой padding (иначе пилюля уезжает ~70px вправо). */
.container .breadcrumbs .wrap { padding-left: 0; padding-right: 0; }

/* events: контент тесно к шапке — даём крошкам воздух. */
.events-page .breadcrumbs { padding-top: 24px; }

/* lesson: герой полноэкранный с центрированным контентом — крошки выносим
   абсолютом ПОВЕРХ героя, по левому краю страничной сетки (.wrap). */
.lesson-banner { position: relative; }
.lesson-banner > .breadcrumbs { position: absolute; top: 140px; left: 0; right: 0; margin: 0; z-index: 6; }
@media (max-width: 1260px) { .lesson-banner > .breadcrumbs { top: 88px; } }
@media (max-width: 1024px) { .lesson-banner > .breadcrumbs { top: 84px; } }

/* lesson: баннер relative (якорь крошек) красился бы поверх контента, который
   дизайн надвигает на низ героя — возвращаем контент-секции выше баннера. */
.lesson-list { position: relative; }
.lesson-content, .lesson-video { position: relative; z-index: 1; }

/* === Нормализация зазора «шапка→крошки» к ~23px (клиренс = высота шапки + 23). ===
   Высота .header: 119px (>=1261), 68px (1025-1260), 64px (<=1024). Простые .xxx-page. */
@media (min-width: 1261px) {
  .trainers-page, .vacancies-page, .rules-page, .privacy-page,
  .loyality-page, .loyalty-program-page, .contacts-page { padding-top: 142px !important; }
}
@media (min-width: 1025px) and (max-width: 1260px) {
  .trainers-page, .vacancies-page, .rules-page, .privacy-page,
  .loyality-page, .loyalty-program-page, .contacts-page { padding-top: 91px !important; }
}
@media (max-width: 1024px) {
  .trainers-page, .vacancies-page, .rules-page, .privacy-page,
  .loyality-page, .loyalty-program-page, .contacts-page { padding-top: 87px !important; }
}

/* container-страницы (schedule/3d-tur): крошки в intro внутри .container.
   bc = page-spacer(20) + .container padding + intro(40). Цель bc = 142/91/87. */
@media (min-width: 1261px) { .schedule-page .container, .page-3d-tur .container { padding-top: 82px !important; } }
@media (min-width: 1025px) and (max-width: 1260px) { .schedule-page .container, .page-3d-tur .container { padding-top: 31px !important; } }
@media (max-width: 1024px) { .schedule-page .container, .page-3d-tur .container { padding-top: 27px !important; } }

/* cards: клиренс на intro padding-top (= позиция крошек). Цель 142/91/87. */
@media (min-width: 1261px) { .cards-page__intro { padding-top: 142px !important; } }
@media (min-width: 1025px) and (max-width: 1260px) { .cards-page__intro { padding-top: 91px !important; } }
@media (max-width: 1024px) { .cards-page__intro { padding-top: 87px !important; } }

/* lesson (≤575): короткий баннер flex-центрирует контент — крошки-абсолют перекрывали
   заголовок. Топ-выравниваем контент героя, опускаем ниже крошек; height:auto+min-height,
   чтобы деталка (с кнопкой) не переполнялась. */
@media (max-width: 575px) {
  /* list: контент flex-центрирован — топ-выравниваем ниже крошек */
  .lesson-banner:not(.lesson-banner--detail) { align-items: flex-start; padding-top: 140px; padding-bottom: 75px; height: auto; min-height: 220px; }
  /* detail: контент bottom-aligned (align-items:flex-end), пилюля 2 строки (низ ~158) —
     увеличиваем высоту баннера, чтобы нижний контент опустился ниже крошек */
  .lesson-banner.lesson-banner--detail { height: 330px !important; }
}

/* Фикс: явный line-height, чтобы высота пилюли не зависела от line-height страницы
   (на cards наследовался 15.6px → пилюля ниже). Приводим к общей (~44px). */
.breadcrumbs__list, .breadcrumbs__item, .breadcrumbs__link, .breadcrumbs__current { line-height: 26px; }

/* events (мобилка): клиренс шапки даёт .events-page margin-top (фикс. 100px), а он НЕ ужимался
   под меньшую шапку → зазор раздувался (~70px на телефоне вместо ~23px). Нормализуем как у .xxx-page.
   pill top = page-spacer + .events-page margin-top + .breadcrumbs padding-top(24).
   page-spacer: 20px, но 10px при <=768. Цель pill top = 91 (1025-1260) / 87 (<=1024). Десктоп (>=1261) не трогаем. */
@media (min-width: 1025px) and (max-width: 1260px) { .events-page { margin-top: 47px !important; } } /* 20+47+24=91 */
@media (min-width: 769px)  and (max-width: 1024px) { .events-page { margin-top: 43px !important; } } /* 20+43+24=87 */
@media (max-width: 768px)                          { .events-page { margin-top: 53px !important; } } /* 10+53+24=87 */

/* End */


/* Start:/local/templates/escalada/components/bitrix/news.list/vacancies/style.css?17838568045305*/
/* ============================================================
   Component: news.list / vacancies
   Стили блока ".menu*" (вкладки вакансий).
   Вынесено из глобального css/new-1.css (Фаза 2.2a рефакторинга).
   У компонента — своя копия классов; общие с bath-complex
   классы продублированы намеренно (дедуп — Фаза 4).

   ВАЖНО (каскад): page_*.css компонента грузится РАНЬШЕ
   глобальных base.css/new.css. Поэтому ".menu__title" поднят
   до ".menu .menu__title", чтобы выиграть у глобальной утилиты
   ".h2" равной специфичности.

   Классы kids-club (.menu__tabs-nav, .menu__tabs-nav--scroll,
   .menu__menu__tabs-btn) ОСТАВЛЕНЫ в new-1.css (там их потребитель
   kids-club). Здесь — собственная копия для vacancies.
   ============================================================ */

/* --- Контейнер --- */
.menu {
    padding-bottom: 60px;
}

/* --- Заголовок (на элементе ".menu__title h2"; scope-bump против .h2) --- */
.menu .menu__title {
    margin-bottom: 30px;

    text-align: center;
    letter-spacing: 2px;
}

/* --- Навигация вкладок --- */
.menu__tabs-nav {
    max-width: max-content;
    margin: 0 auto 70px;

    background-color: #2b334c;
    border-radius: 100px;

    display: flex;
    flex-wrap: wrap;
    position: relative;
    z-index: 1;
}

.menu__tabs-nav--scroll {
    margin: 100px auto 0 auto;
}

.menu__tabs-nav.right:after {
    left: 375px;
    width: 202px;
}

.menu__menu__tabs-btn {
    display: inline-block;
    /*padding: 2px 40px 1px;*/
    opacity: 0.2;
    cursor: pointer;
    background: transparent;
    border: 0;
    border-radius: 100px;
    font-family: 'GothemPro', 'Open Sans', 'Arial', sans-serif;
    font-style: italic;
    font-weight: bold;
    padding: 10px 30px 8px;
    font-size: 20px;
    line-height: 1;
    text-transform: uppercase;
    color: #FFFFFF;
    text-align: center;

    transition: opacity .3s linear;
    position: relative;
    z-index: 2;
}

.menu__menu__tabs-btn:hover {
    opacity: .6;
}

.menu__menu__tabs-btn.active {
    opacity: 1;
    background-color: #323D5E;
}

/* --- Тело вкладок --- */
.menu__tabs-item {
    display: none;
}

.menu__tabs-item.active {
    display: block;
}

/* --- Список вакансий --- */
.menu__list-item {
    padding: 35px 0 12px;
    border-bottom: 1px solid #212328;

    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.menu__list-info-main {
    width: 100%;
    max-width: 770px;
}

.menu__service-name {
    font-family: 'GothemPro', 'Open Sans', 'Arial', sans-serif;
    font-style: italic;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 20px;
    line-height: 32px;
    margin-bottom: 20px;
    letter-spacing: 2px;
    color: #FFFFFF;
}

.menu__service-desc {
    font-size: 14px;
    line-height: 22px;
    color: #B2B2B2;
}

.menu__service-desc p {
    margin: 0 0 15px;
}

.menu__list-info-secondary {
    text-align: right;
}

.menu__service-duration {
    font-style: italic;
    opacity: .7;
}

.menu__service-duration span {
    display: inline-block;
    padding-right: 50px;

    position: relative;
}

.menu__service-duration span::after {
    content: 'минут';
    display: block;

    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
}

/* --- Media --- */
@media (max-width: 1024px) {
    .menu__list-item {
        flex-direction: column;
    }

    .menu__list-info-secondary {
        text-align: left;
    }
}

@media (max-width: 812px) {
    .menu__tabs-nav {
        margin-bottom: 0;
        width: calc(100%);
        white-space: nowrap;
        display: block;
        overflow: auto;
        scrollbar-width: none;
        -ms-overflow-style: none;
        -webkit-overflow-scrolling: touch;
    }
    .menu__tabs-nav::-webkit-scrollbar {
        display: none;
    }

    .menu__tabs-nav:after {
        width: 230px;
        border-radius: 100px;
        height: 36px;
    }
    .menu__tabs-nav.right:after {
        width: 112px;
        left: 240px;
    }
    .menu__menu__tabs-btn {
        height: 36px;
        font-size: 14px;
        line-height: 18px;
        padding: 10px 15px 8px;
        opacity: 1;
        color: #4D4F53;
    }
    .menu__menu__tabs-btn.active {
        color: #fff;
        /*background-color: #323D5E;*/
    }
    .menu__menu__tabs-btn:first-child{
        margin-right: -10px;
    }
}

@media (max-width: 374px) {
    .menu__tabs-nav:after {
        width: 200px;
        height: 32px;
    }
    .menu__tabs-nav.right:after {
        left: 204px;
        width: 90px;
    }
    .menu__menu__tabs-btn {
        height: 32px;
        font-size: 13px;
        line-height: 18px;
        padding: 8px 6px 6px;
    }
}

@media (max-width: 740px) {
    .menu {
        padding-bottom: 0;
    }

    .menu .menu__title {
        margin-bottom: 15px;
    }

    .menu__service-name {
        font-size: 18px;
        line-height: 25px;
        margin-bottom: 10px;
    }
}

/* End */
/* /local/templates/escalada/components/bitrix/breadcrumb/.default/style.css?17838568046764 */
/* /local/templates/escalada/components/bitrix/news.list/vacancies/style.css?17838568045305 */
