/* ==========================================================================
   Оформление блоков конструктора под INGRAVITY (aeroyoga.by) (не входит в модуль — при обновлении модуля не затирается).
   Без «панельности»: карточки без рамок и теней, иконки без плашек, заголовки — Unbounded (AyFonts.css), текст Manrope,
   letter-spacing не используем. Подключает Constructor.php последним — правила перекрывают blocks/*.css.
   ========================================================================== */
.cb-page {
    --cb-btn-radius: 999px;
    --cb-radius: 16px;
    --cb-soft: #6c6170;
}
.cb-page .cb-tone--light, .cb-page .cb-on-light {--cb-card-border: transparent; --cb-card-shadow: none}
.cb-page .cb-tone--dark, .cb-page .cb-on-dark {--cb-card-border: transparent; --cb-card-shadow: none}

/* ---- Заголовки ---- */
.cb-page :is(h1, h2, h3, .cb-title__h, .cb-banner__title, .cb-page-header__title, .cb-tile__name, .cb-stats__value, .cb-calc__total b, .cb-calc__total) {
    font-family: var(--ay-head-font); letter-spacing: normal}
.cb-page .cb .cb-title__h {font-weight: 600; line-height: 1.15}
.cb-page .cb .cb-banner__title {font-weight: 600; line-height: 1.1; letter-spacing: normal}
.cb-page .cb-banner--hero .cb-banner__title {font-size: clamp(36px, 4.6vw, 64px)}
.cb-page .cb h3 {font-weight: 600}
.cb-page .cb .cb-tile__name {font-weight: 600}
.cb-page .cb-title__eyebrow::before, .cb-page .cb-banner__eyebrow::before {content: none}
.cb-page .cb-banner__eyebrow {font-size: 16px; font-weight: 500}
.cb-page .cb-on-dark .cb-banner__eyebrow, .cb-page .cb-tone--dark .cb-title__eyebrow {color: var(--ay-accent-light, #e3a6e5)}

/* ---- Первый экран: пункты без кружков-плашек, цена — золотом ---- */
.cb-page .cb-on-dark .cb-banner__points li::before {background-color: var(--ay-accent-light, #e3a6e5)}
.cb-page .cb-banner__points li {font-weight: 500}
.cb-page .cb-banner__text {font-size: 18px}
.cb-page .cb-on-dark .cb-banner__price b {color: var(--ay-accent-light, #e3a6e5)}
.cb-page .cb-banner__price b {font-family: var(--ay-head-font); font-weight: 600}

/* ---- Плитки: стрелка без белого кружка ---- */
.cb-page .cb-tile__go {background-color: transparent; border: 1px solid rgba(255, 255, 255, .6); filter: none}
.cb-page .cb-tile:hover .cb-tile__go {background-color: var(--cb-primary); border-color: var(--cb-primary)}
.cb-page .cb-tile::before {background: linear-gradient(180deg, rgba(20, 8, 22, 0) 40%, rgba(20, 8, 22, .72) 100%)}

/* ---- Отзывы: текст колонками, без карточек ---- */
.cb-page .cb .cb-reviews__card {padding: 0 8px 0 0; background: none; box-shadow: none; border: 0}
.cb-page .cb-tone--light .cb-reviews__scroller .cb-reviews__card {box-shadow: none}
.cb-page .cb-reviews__card::after {top: -18px; right: auto; left: -6px; font-size: 96px; opacity: .55}
.cb-page .cb-reviews__card > :first-child {margin-top: 34px}
.cb-page .cb .cb-reviews__text {font-size: 17px}
.cb-page .cb-reviews__author {border-top: 0; padding-top: 6px}
.cb-page .cb-reviews__avatar--letter {font-family: var(--ay-head-font); font-weight: 600}

/* ---- Калькулятор: без рамки, итог на мягком фоне ---- */
.cb-page .cb .cb-calc {background: var(--cb-alt); border: 0; box-shadow: none; border-radius: var(--cb-radius)}
.cb-page .cb-bg--muted .cb .cb-calc, .cb-page .cb-bg--muted .cb-calc {background: var(--cb-white)}
.cb-page .cb .cb-calc__extra {border-color: transparent; background: var(--cb-white)}
.cb-page .cb-bg--muted .cb-calc__extra {background: var(--cb-alt)}
.cb-page .cb .cb-calc__extra:has(input:checked) {border-color: var(--cb-btn-bg)}
.cb-page .cb .cb-calc__result {background: var(--es-dark, #1d1220); color: rgba(255, 255, 255, .8)}
.cb-page .cb .cb-calc__result-label, .cb-page .cb .cb-calc__note {color: rgba(255, 255, 255, .72)}
.cb-page .cb .cb-calc__total {color: #fff; font-weight: 600}
.cb-page .cb .cb-calc__currency {color: var(--ay-accent-light, #e3a6e5)}

/* ---- Контакты: иконки без подложки ---- */
.cb-page .cb-contacts__item::before {background: none}
.cb-page .cb-contacts__item {grid-template-columns: 28px minmax(0, 1fr)}
.cb-page .cb-contacts__item::before, .cb-page .cb-contacts__item::after {width: 28px; height: 28px}
.cb-page .cb-contacts__map--side {border: 0; box-shadow: none; border-radius: var(--cb-radius)}

/* ---- Вопросы: значок без кружка ---- */
.cb-page .cb-faq__icon {border-color: transparent}
.cb-page .cb-faq__item[open] .cb-faq__icon {background: none; border-color: transparent; color: var(--cb-accent)}
.cb-page .cb-faq--list .cb-faq__item {border: 0; border-bottom: 1px solid var(--cb-line); border-radius: 0; background: none}
.cb-page .cb-faq--list .cb-faq__item[open] {box-shadow: none}
.cb-page .cb-faq__summary {font-size: 18px}

/* ---- Цены: прайс без карточек ---- */
.cb-page .cb-tablePrice__group {padding: 0; background: none; border: 0; box-shadow: none}
.cb-page .cb-tablePrice__wrap {border: 0; box-shadow: none}

/* ---- Галерея: фото без теней ---- */
.cb-page .cb-gallery__link {box-shadow: none; border-radius: 4px}


/* ---- Светлая кнопка на тёмном фоне — белый контур ---- */
.cb-page :is(.cb-on-dark, .cb-tone--dark) .cb-btn--light {border: 1px solid rgba(255, 255, 255, .7); background: transparent; color: #fff}
.cb-page :is(.cb-on-dark, .cb-tone--dark) .cb-btn--light:hover {border-color: #fff; background: #fff; color: var(--es-heading, #1d1220)}

/* ---- Фото в разворотах без теней; вопросы — шрифтом текста ---- */
.cb-page :is(.cb-text__media picture, .cb-text__media > img, .cb-banner--split .cb-banner__side) {box-shadow: none; border-radius: var(--cb-radius)}
.cb-page .cb-faq__summary :is(h3, .cb-faq__q) {font-family: inherit; font-weight: 500}
.cb-page .cb-faq--list .cb-faq__summary {padding-inline: 0}

/* ---- INGRAVITY: заголовки Unbounded крупные и плотные, h3 — шрифтом текста ---- */
.cb-page .cb h3, .cb-page .cb .cb-tile__name {font-family: inherit; font-weight: 700}
.cb-page .cb .cb-tile__name {font-family: var(--ay-head-font); font-weight: 500}
.cb-page .cb-banner--hero .cb-banner__title {font-size: clamp(34px, 4.4vw, 62px); font-weight: 600}
.cb-page .cb-view--overlay .cb-banner--hero .cb-banner__wrap {min-height: min(100vh, 860px)}
.cb-page .cb-title__eyebrow {font-weight: 600; color: var(--cb-accent)}

/* ---- Цифры: без белых плашек и полосок, крупно цветом ---- */
.cb-page .cb .cb-stats__item {background: none; box-shadow: none; border: 0; padding: 0}
.cb-page .cb .cb-stats__item::before {content: none}
.cb-page .cb .cb-stats__value {color: var(--cb-accent); font-family: var(--ay-head-font); font-weight: 500}

/* ---- Первый экран внутренних страниц: заголовок скромнее, чем на главной ---- */
.cb-page:not([data-cb-name="AY: Главная"]) .cb-banner--hero .cb-banner__title, .cb-page:not([data-cb-name="AY: Главная"]) .cb-banner__title {font-size: clamp(28px, 3.2vw, 46px); max-width: 15em}
