/* ============================================================
   Интервенционное лечение боли — единая таблица стилей
   ------------------------------------------------------------
   1. @font-face
   2. :root — дизайн-токены
   3. Reset / base
   4. Утилиты: .mammology .btn, общий контейнер __inner
   5. Секции (в порядке index.html):
      hero · concept · algologist · indications · clinical-groups ·
      methods · guidance · route · safety · preparation · modic ·
      pricing · faq · reasons
   6. prefers-reduced-motion
   ============================================================ */

/* ====== 1. @font-face ====== */
@font-face {
  font-display: swap;
  font-family: "Font1";
  font-style: normal;
  font-weight: 400;
  src: url("assets/fonts/Font1_Regular.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "Font1";
  font-style: normal;
  font-weight: 700;
  src: url("assets/fonts/Font1_DemiBold.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "TT Drugs";
  font-style: normal;
  font-weight: 400;
  src: url("assets/fonts/Font1_Regular.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "TT Drugs";
  font-style: normal;
  font-weight: 700;
  src: url("assets/fonts/Font1_DemiBold.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "TT_Chocolates";
  font-style: normal;
  font-weight: 400;
  src: url("assets/fonts/TT_Chocolates_Regular.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "TT_Chocolates";
  font-style: normal;
  font-weight: 700;
  src: url("assets/fonts/TT_Chocolates_Bold.woff") format("woff");
}

/* ====== 2. Дизайн-токены ====== */
:root {
  /* Цвета */
  --color-bg: #fbf3f6;
  --color-bg-white: #ffffff;
  --color-bg-mint: #FBF4EE;
  --color-bg-video: #f3e3ea;
  --color-bg-placeholder: #ece5e8;

  --color-text: #3a2930;
  --color-text-strong: #2a1c22;
  --color-text-meta: #a76682;
  --color-text-muted: rgba(58, 41, 48, 0.6);
  --color-text-on-accent: #fdf5f8;

  --color-accent-mint: #d97a99;
  --color-accent-mint-deep: #a63d62;
  --color-accent-gold: #d97a99;
  --color-accent-gold-hover: #c4658a;

  --color-border: #e6d4db;
  --color-border-soft: rgba(58, 41, 48, 0.18);

  /* Радиусы */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --radius-round: 50%;

  /* Семейства */
  --font-sans: "TT_Chocolates", Arial, sans-serif;
  --font-serif: "TT Drugs", "Font1", Georgia, serif;
  /* Алиасы для обратной совместимости */
  --font1: var(--font-sans);
  --font2: var(--font-serif);

  /* Шкала размеров */
  --fs-sm: 16px;
  --fs-base: 18px;
  --fs-md: 19px;
  --fs-lg: 24px;
  --fs-xl: 27px;
  --fs-2xl: 32px;
  --fs-3xl: 36px;
  --fs-4xl: 42px;

  /* Контейнер */
  --container-max: 1440px;
  --container-narrow: 1120px;
  --container-px-desktop: 60px;
  --container-px-tablet: 40px;
  --container-px-mobile: 24px;
  --container-px-xs: 18px;

  /* Вертикальный ритм секций */
  --section-py-desktop: 88px;
  --section-py-tablet: 72px;
  --section-py-mobile: 56px;
  --section-py-xs: 44px;

  /* Шкала отступов 4 / 8 px */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 28px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;

  /* Алиасы для обратной совместимости */
  --space-stack-md: 20px;
  --space-stack-lg: 29px;

  /* Брейкпойнты (только справочно — в @media подставляются как литералы) */
  --bp-sm: 560px;
  --bp-md: 900px;
  --bp-lg: 1200px;

  /* Транзишены */
  --ease-out-soft: cubic-bezier(0.22, 1, 0.36, 1);
  --dur-fast: 160ms;
  --dur-base: 240ms;
  --dur-slow: 320ms;
}

/* ====== 3. Reset / base (заскоуплено под .mammology, чтобы не задеть хедер/футер сайта) ====== */
.mammology *,
.mammology *::before,
.mammology *::after { box-sizing: border-box; }

.mammology {
  background: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-sans);
}

.mammology img { display: block; max-width: 100%; height: auto; }
.mammology h1, .mammology h2, .mammology h3, .mammology h4, .mammology h5, .mammology h6 { margin: 0; font-family: var(--font-serif); }
.mammology a { color: inherit; }
.mammology ul { margin: 0; padding: 0; list-style: none; }
.mammology button { font: inherit; cursor: pointer; }

/* ====== 4. Общий контейнер для всех __inner ====== */
.mammology-hero__inner,
.mammology-concept__inner,
.mammology-algologist__inner,
.mammology-indications__inner,
.mammology-clinical-groups__inner,
.mammology-methods__inner,
.mammology-guidance__inner,
.mammology-route__inner,
.mammology-safety__inner,
.mammology-preparation__inner,
.mammology-modic__inner,
.mammology-pricing__inner,
.mammology-faq__inner,
.mammology-reasons__inner {
  display: grid;
  gap: var(--space-8) var(--space-6);
  grid-template-columns: repeat(12, minmax(0, 1fr));
  margin: 0 auto;
  max-width: var(--container-max);
  padding-block: var(--section-py-desktop);
  padding-inline: var(--container-px-desktop);
  position: relative;
  width: 100%;
}

@media (max-width: 1199px) {
  .mammology-hero__inner,
  .mammology-concept__inner,
  .mammology-algologist__inner,
  .mammology-indications__inner,
  .mammology-clinical-groups__inner,
  .mammology-methods__inner,
  .mammology-guidance__inner,
  .mammology-route__inner,
  .mammology-safety__inner,
  .mammology-preparation__inner,
  .mammology-modic__inner,
  .mammology-pricing__inner,
  .mammology-faq__inner,
  .mammology-reasons__inner {
    max-width: var(--container-narrow);
    min-height: auto;
    padding-block: var(--section-py-tablet);
    padding-inline: var(--container-px-tablet);
  }
}

@media (max-width: 900px) {
  .mammology-hero__inner,
  .mammology-concept__inner,
  .mammology-algologist__inner,
  .mammology-indications__inner,
  .mammology-clinical-groups__inner,
  .mammology-methods__inner,
  .mammology-guidance__inner,
  .mammology-route__inner,
  .mammology-safety__inner,
  .mammology-preparation__inner,
  .mammology-modic__inner,
  .mammology-pricing__inner,
  .mammology-faq__inner,
  .mammology-reasons__inner {
    gap: var(--space-7) var(--space-5);
    grid-template-columns: repeat(6, minmax(0, 1fr));
    padding-block: var(--section-py-mobile);
    padding-inline: var(--container-px-mobile);
  }
}

@media (max-width: 560px) {
  .mammology-hero__inner,
  .mammology-concept__inner,
  .mammology-algologist__inner,
  .mammology-indications__inner,
  .mammology-clinical-groups__inner,
  .mammology-methods__inner,
  .mammology-guidance__inner,
  .mammology-route__inner,
  .mammology-safety__inner,
  .mammology-preparation__inner,
  .mammology-modic__inner,
  .mammology-pricing__inner,
  .mammology-faq__inner,
  .mammology-reasons__inner {
    padding-block: var(--section-py-xs);
    padding-inline: var(--container-px-xs);
  }
}

/* ====== 5. Кнопка .mammology .btn ====== */
.mammology .btn {
  align-items: center;
  appearance: none;
  background: transparent;
  border: 1px solid transparent;
  border-radius: var(--radius-sm);
  color: inherit;
  cursor: pointer;
  display: inline-flex;
  font-family: var(--font-serif);
  font-size: 15px;
  font-weight: 700;
  height: 51px;
  justify-content: center;
  line-height: 1.8;
  padding: 0 var(--space-6);
  text-align: center;
  text-decoration: none;
  transition: background-color var(--dur-base) ease, color var(--dur-base) ease, border-color var(--dur-base) ease;
  white-space: nowrap;
}

.mammology .btn--primary {
  background: var(--color-accent-gold);
  border-color: var(--color-accent-gold);
  color: var(--color-text-on-accent);
  width: 271px;
}
.mammology .btn--primary:hover,
.mammology .btn--primary:focus-visible {
  background: var(--color-accent-gold-hover);
  border-color: var(--color-accent-gold-hover);
}

.mammology .btn--ghost {
  border-color: var(--color-accent-gold);
  color: var(--color-accent-gold);
  width: 216px;
}
.mammology .btn--ghost:hover,
.mammology .btn--ghost:focus-visible {
  background: rgba(217, 122, 153, 0.10);
  color: var(--color-accent-gold);
}

/* Карточка-ссылка (методы) */
.mammology .btn--card {
  align-items: center;
  background: transparent;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  color: var(--color-text);
  display: flex;
  font-family: var(--font-serif);
  font-size: var(--fs-lg);
  font-weight: 700;
  height: auto;
  justify-content: space-between;
  line-height: 32px;
  min-height: 104px;
  padding: var(--space-5) 27px var(--space-5) var(--space-6);
  text-align: left;
  text-decoration: none;
  transition: border-color var(--dur-fast) ease, color var(--dur-fast) ease;
  white-space: normal;
  width: 100%;
}
.mammology .btn--card::after {
  color: var(--color-accent-mint);
  content: "\2192";
  flex: 0 0 auto;
  font-family: var(--font-sans);
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
  margin-left: 24px;
}
.mammology .btn--card:hover,
.mammology .btn--card:focus-visible {
  border-color: var(--color-accent-mint);
  color: var(--color-text-strong);
  outline: none;
}

@media (max-width: 560px) {
  .mammology .btn--primary,
  .mammology .btn--ghost {
    min-width: 100%;
    white-space: normal;
    width: 100%;
  }
  .mammology .btn--card {
    font-size: 21px;
    line-height: 29px;
    min-height: 92px;
    padding: 18px 22px;
  }
}

/* ============================================================
   5. Общие примитивы секций
   ------------------------------------------------------------
   Каждая секция имеет одинаковый набор: «номер» (01, 02 …),
   «надзаголовок» (eyebrow), главный заголовок, описание (lead).
   Свойства, общие для всех, собраны здесь — индивидуальные
   тонкости (max-width, grid-column, точечные margin) живут
   в стилях своей секции.
   ============================================================ */

/* Номер секции */
.mammology-algologist__number,
.mammology-indications__number,
.mammology-clinical-groups__number,
.mammology-methods__number,
.mammology-guidance__number,
.mammology-route__number,
.mammology-safety__number,
.mammology-preparation__number,
.mammology-modic__number,
.mammology-pricing__number,
.mammology-faq__number,
.mammology-reasons__number {
  color: var(--color-text-meta);
  font-family: var(--font-serif);
  font-size: var(--fs-2xl);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 40px;
  margin: 0;
}
/* Часть секций ставит номер в колонки 1–3 (узкая колонка) */
.mammology-algologist__number,
.mammology-indications__number,
.mammology-guidance__number,
.mammology-route__number,
.mammology-safety__number,
.mammology-preparation__number,
.mammology-modic__number,
.mammology-pricing__number,
.mammology-faq__number,
.mammology-reasons__number {
  grid-column: 1 / 3;
}

/* Надзаголовок (eyebrow) и аналогичные подписи */
.mammology-algologist__eyebrow,
.mammology-indications__eyebrow,
.mammology-clinical-groups__eyebrow,
.mammology-methods__eyebrow,
.mammology-guidance__eyebrow,
.mammology-route__eyebrow,
.mammology-guidance__column-label,
.mammology-safety__eyebrow,
.mammology-preparation__eyebrow,
.mammology-modic__eyebrow,
.mammology-faq__eyebrow,
.mammology-reasons__eyebrow {
  color: var(--color-text-meta);
  font-family: var(--font-serif);
  font-size: var(--fs-sm);
  font-weight: 700;
  line-height: 24px;
  margin: 0;
}

/* Главный заголовок секции (h2) */
.mammology-algologist__title,
.mammology-indications__title,
.mammology-clinical-groups__title,
.mammology-methods__title,
.mammology-guidance__title,
.mammology-route__title,
.mammology-safety__title,
.mammology-preparation__title,
.mammology-modic__title,
.mammology-pricing__title,
.mammology-faq__title,
.mammology-reasons__title {
  color: var(--color-text);
  font-family: var(--font-serif);
  font-size: var(--fs-4xl);
  font-weight: 700;
  letter-spacing: 0;
  line-height: 48px;
  margin: 0;
}

/* Подзаголовок-карточка / h3 внутри секций */
.mammology-clinical-groups__card h3,
.mammology-methods__row-title,
.mammology-guidance__column-title {
  color: var(--color-text);
  font-family: var(--font-serif);
  font-size: var(--fs-3xl);
  font-weight: 700;
  letter-spacing: 0;
  line-height: 43px;
  margin: 0;
}

/* Адаптив номера и заголовков на мобильных — в одно правило */
@media (max-width: 900px) {
  .mammology-algologist__title,
  .mammology-indications__title,
  .mammology-clinical-groups__title,
  .mammology-methods__title,
  .mammology-guidance__title,
  .mammology-route__title,
  .mammology-safety__title,
  .mammology-preparation__title,
  .mammology-modic__title,
  .mammology-pricing__title,
  .mammology-faq__title,
  .mammology-reasons__title {
    font-size: clamp(34px, 6vw, 42px);
    line-height: 1.12;
  }
  .mammology-clinical-groups__card h3,
  .mammology-methods__row-title,
  .mammology-guidance__column-title {
    font-size: clamp(30px, 5vw, 36px);
    line-height: 1.16;
  }
}

@media (max-width: 560px) {
  .mammology-algologist__number,
  .mammology-indications__number,
  .mammology-clinical-groups__number,
  .mammology-methods__number,
  .mammology-guidance__number,
  .mammology-route__number,
  .mammology-safety__number,
  .mammology-preparation__number,
  .mammology-modic__number,
  .mammology-pricing__number,
  .mammology-faq__number,
  .mammology-reasons__number {
    font-size: 30px;
    line-height: 36px;
  }
  .mammology-algologist__title,
  .mammology-indications__title,
  .mammology-clinical-groups__title,
  .mammology-methods__title,
  .mammology-guidance__title,
  .mammology-route__title,
  .mammology-safety__title,
  .mammology-preparation__title,
  .mammology-modic__title,
  .mammology-pricing__title,
  .mammology-faq__title,
  .mammology-reasons__title {
    font-size: var(--fs-2xl);
    line-height: 38px;
  }
}

/* ============================================================
   6. Секции
   ============================================================ */

/* Dash-маркеры списков */
.mammology-clinical-groups__card li::before,
.mammology-methods__list li::before,
.mammology-route__choices li::before,
.mammology-preparation__list li::before {
  background: var(--color-accent-mint);
  content: "";
  height: 1px;
  position: absolute;
  width: 23px;
}

/* ===== Hero ===== */
.mammology-hero {
  background-color: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-sans);
  overflow: hidden;
  position: relative;
}
.mammology-hero__video {
  height: 100%;
  inset: 0;
  object-fit: cover;
  object-position: center right;
  position: absolute;
  width: 100%;
  z-index: 0;
}
.mammology-hero::before {
  background-image:
    linear-gradient(
      90deg,
      rgba(250, 235, 242, 0.94) 0%,
      rgba(250, 235, 242, 0.78) 34%,
      rgba(250, 235, 242, 0.30) 58%,
      rgba(250, 235, 242, 0) 78%
    );
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: 1;
}
.mammology-hero__inner { position: relative; z-index: 2; }
/* Режим энергосбережения: вместо видео — статичная фото-заглушка */
@media (prefers-reduced-motion: reduce) {
  .mammology-hero__video { display: none; }
  .mammology-hero {
    background-image: url("assets/hero-poster.jpg");
    background-position: center right;
    background-repeat: no-repeat;
    background-size: cover;
  }
}
@media (prefers-reduced-motion: reduce) and (max-width: 900px) {
  .mammology-hero { background-position: top center; }
}
.mammology-hero__copy { grid-column: 1 / 7; min-width: 0; position: relative; }
.mammology-hero__eyebrow {
  color: var(--color-text-muted);
  font-family: var(--font-serif);
  font-size: 16px;
  font-weight: 700;
  line-height: 33px;
  margin: 0 0 7px;
}
.mammology-hero__title {
  color: var(--color-text);
  font-family: var(--font-serif);
  font-size: 56px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 48px;
  margin: 0;
  max-width: min(584px, 100%);
}
.mammology-hero__lead {
  color: var(--color-text);
  font-size: var(--fs-md);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 30px;
  margin: 39px 0 0;
  max-width: min(576px, 100%);
}
.mammology-hero__mobile-line { display: inline; }
.mammology-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-6);
  margin-top: 31px;
}
.mammology-hero__media {
  display: none;
}
.mammology-hero__media::before {
  background:
    radial-gradient(circle at 78% 22%, rgba(214, 120, 158, 0.5) 0 70px, transparent 120px),
    radial-gradient(circle at 30% 35%, rgba(214, 120, 158, 0.32) 0 50px, transparent 95px),
    radial-gradient(circle at 60% 70%, rgba(214, 120, 158, 0.28) 0 60px, transparent 110px);
  content: "";
  filter: blur(6px);
  inset: -30px;
  opacity: 0.85;
  position: absolute;
}
.mammology-hero__media-label {
  font-family: var(--font-serif);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.04em;
  margin: 0;
  padding: 28px;
  position: relative;
  text-transform: uppercase;
  z-index: 2;
}

/* Универсальный медиа-плейсхолдер для контентных секций */
.mammology-placeholder {
  align-items: center;
  background: var(--color-bg-mint);
  border-radius: var(--radius-md);
  color: var(--color-text-meta);
  display: flex;
  font-family: var(--font-serif);
  font-size: var(--fs-sm);
  font-weight: 700;
  justify-content: center;
  letter-spacing: 0.04em;
  min-height: 360px;
  padding: 24px;
  text-align: center;
  text-transform: uppercase;
}
.mammology-hero__features {
  align-items: start;
  border-top: 1px solid var(--color-border-soft);
  display: grid;
  gap: var(--space-6);
  grid-column: 1 / -1;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 95px;
  padding-top: 31px;
  position: relative;
}
.mammology-hero__feature {
  align-items: center;
  display: flex;
  gap: var(--space-6);
  min-width: 0;
}
.mammology-hero__feature-number {
  color: var(--color-text-meta);
  font-family: var(--font-serif);
  font-size: 60px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1;
}
.mammology-hero__feature-text {
  color: var(--color-text);
  font-size: var(--fs-base);
  line-height: 24px;
  min-width: 0;
}

@media (min-width: 1200px) {
  .mammology-hero__inner {
    align-items: start;
    min-height: 640px;
    padding-bottom: 75px;
  }
  .mammology-hero__features {
    border-top-color: var(--color-border-soft);
    gap: 0;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 63px;
    padding-top: 22px;
  }
  .mammology-hero__feature:nth-child(2) { padding-left: 9px; }
  .mammology-hero__feature:nth-child(3) { padding-left: 18px; }
}

@media (max-width: 1199px) {
  .mammology-hero__copy { grid-column: 1 / 7; }
  .mammology-hero__title {
    font-size: clamp(42px, 4.6vw, 56px);
    line-height: 0.92;
  }
  .mammology-hero__lead {
    font-size: var(--fs-base);
    line-height: 29px;
    margin-top: 30px;
  }
  .mammology-hero__media {
    aspect-ratio: 699 / 446;
    grid-column: 7 / 13;
    min-height: 0;
  }
  .mammology-hero__features { margin-top: 48px; }
}

@media (max-width: 900px) {
  .mammology-hero__video { object-position: top center; }
  .mammology-hero::before {
    background-image:
      linear-gradient(
        180deg,
        rgba(250, 235, 242, 0.95) 0%,
        rgba(250, 235, 242, 0.86) 42%,
        rgba(250, 235, 242, 0.55) 100%
      );
  }
  .mammology-hero__inner {
    gap: 36px;
  }
  .mammology-hero__copy,
  .mammology-hero__media,
  .mammology-hero__features { grid-column: 1 / -1; }
  .mammology-hero__copy { max-width: 680px; }
  .mammology-hero__title { font-size: clamp(36px, 8vw, 52px); line-height: 0.95; }
  .mammology-hero__lead  { margin-top: 24px; }
  .mammology-hero__actions { margin-top: 26px; }
  .mammology-hero__features {
    grid-template-columns: 1fr;
    margin-top: 16px;
    padding-top: 28px;
  }
  .mammology-hero__feature { justify-content: flex-start; }
}

@media (max-width: 560px) {
  .mammology-hero__copy,
  .mammology-hero__media,
  .mammology-hero__features {
    max-width: calc(100vw - 36px);
    width: calc(100vw - 36px);
  }
  .mammology-hero__eyebrow { font-size: 18px; line-height: 24px; }
  .mammology-hero__title   { font-size: 34px; line-height: 1.02; }
  .mammology-hero__mobile-line { display: block; }
  .mammology-hero__lead    { font-size: 17px; line-height: 27px; max-width: 100%; width: 100%; }
  .mammology-hero__actions { gap: 12px; width: 100%; }
  .mammology-hero__media   { border-radius: var(--radius-md); min-height: 280px; }
  .mammology-hero__feature { gap: 18px; }
  .mammology-hero__feature-number { font-size: 48px; }
  .mammology-hero__feature-text { font-size: 17px; }
}

/* ===== Concept ===== */
.mammology-concept {
  background: var(--color-bg-white);
  color: var(--color-text);
  font-family: var(--font-sans);
  overflow: hidden;
}
.mammology-concept__media { grid-column: 1 / 6; }
.mammology-concept__media img {
  aspect-ratio: 5 / 6;
  border-radius: var(--radius-md);
  height: auto;
  object-fit: cover;
  width: 510px;
}
.mammology-concept__content {
  grid-column: 6 / 13;
  max-width: 703px;
  min-width: 0;
}
.mammology-concept__title {
  color: var(--color-text);
  font-family: var(--font-serif);
  font-size: var(--fs-4xl);
  font-weight: 700;
  letter-spacing: 0;
  line-height: 50px;
  margin: -5px 0 var(--space-6);
}
.mammology-concept__text {
  color: var(--color-text);
  font-size: var(--fs-base);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 30px;
}
.mammology-concept__text p { margin: 0 0 var(--space-stack-lg); }
.mammology-concept__text p:last-child { margin-bottom: 0; }

@media (max-width: 1199px) {
  .mammology-concept__media   { grid-column: 1 / 6; }
  .mammology-concept__content { grid-column: 6 / 13; }
  .mammology-concept__title { font-size: clamp(34px, 4vw, 42px); line-height: 1.16; }
  .mammology-concept__text  { font-size: 17px; line-height: 28px; }
}

@media (max-width: 900px) {
  .mammology-concept__media,
  .mammology-concept__content { grid-column: 1 / -1; }
  .mammology-concept__media img { width: 100%; }
  .mammology-concept__content   { max-width: 720px; }
}

@media (max-width: 560px) {
  .mammology-concept__title { font-size: var(--fs-2xl); line-height: 38px; margin-bottom: 18px; }
  .mammology-concept__text  { font-size: var(--fs-sm); line-height: 26px; }
  .mammology-concept__text p { margin-bottom: 22px; }
}

/* ===== Algologist + Indications (общая секция «Профессия») ===== */
.mammology-algologist,
.mammology-indications {
  color: var(--color-text);
  font-family: var(--font-sans);
  overflow: hidden;
}
.mammology-algologist  { background: #FBF4EE; }
.mammology-indications { background: var(--color-bg-white); }

.mammology-algologist__content,
.mammology-indications__head {
  grid-column: 3 / 9;
  min-width: 0;
}
.mammology-algologist__aside { grid-column: 10 / 13; }

.mammology-algologist__eyebrow,
.mammology-indications__eyebrow { margin-bottom: 9px; }

.mammology-algologist__lead {
  font-size: var(--fs-xl);
  line-height: 37px;
  margin: var(--space-6) 0;
  max-width: 655px;
}
.mammology-algologist__text {
  font-size: var(--fs-base);
  line-height: 30px;
  margin: 0;
  max-width: 650px;
}
.mammology-algologist__aside {
  align-self: start;
  border-block: 1px solid var(--color-border);
  margin-top: 9px;
  padding: 24px 17px 23px;
}
.mammology-algologist__aside p {
  font-size: 20px;
  line-height: 25px;
  margin: 0;
}
.mammology-indications__title { max-width: 570px; }

.mammology-indications__text {
  grid-column: 3 / 9;
  margin-top: var(--space-stack-md);
  max-width: 680px;
  color: var(--color-text);
  font-size: var(--fs-base);
  line-height: 30px;
}
.mammology-indications__text p { margin: 0; }
.mammology-indications__text p + p { margin-top: var(--space-stack-lg); }
.mammology-indications__note {
  background: var(--color-bg-mint);
  border-radius: var(--radius-md);
  grid-column: 3 / 11;
  margin-top: 36px;
  padding: 36px 40px;
}
.mammology-indications__note p {
  color: var(--color-text);
  font-size: var(--fs-xl);
  line-height: 34px;
  margin: 0;
  max-width: 800px;
}

@media (min-width: 1200px) {
  .mammology-indications__note { min-height: 180px; }
}

@media (max-width: 1199px) {
  .mammology-algologist__content,
  .mammology-indications__head { grid-column: 3 / 10; }
  .mammology-algologist__aside  { grid-column: 10 / 13; }
  .mammology-indications__text,
  .mammology-indications__note  { grid-column: 3 / 13; }
}

@media (max-width: 900px) {
  .mammology-algologist__number,
  .mammology-indications__number,
  .mammology-algologist__content,
  .mammology-algologist__aside,
  .mammology-indications__head,
  .mammology-indications__text,
  .mammology-indications__note { grid-column: 1 / -1; }
  .mammology-algologist__lead   { font-size: 23px; line-height: 32px; }
  .mammology-algologist__aside  { margin-top: 2px; }
  .mammology-indications__text  { max-width: none; }
  .mammology-indications__note  { margin-top: 26px; }
}

@media (max-width: 560px) {
  .mammology-algologist__lead    { font-size: 21px; line-height: 30px; }
  .mammology-algologist__text,
  .mammology-indications__text { font-size: var(--fs-sm); line-height: 26px; }
  .mammology-algologist__aside p  { font-size: var(--fs-base); line-height: 24px; }
  .mammology-indications__note    { margin-top: 24px; padding: 28px 24px; }
  .mammology-indications__note p  { font-size: 22px; line-height: 29px; }
}

/* ===== Clinical groups ===== */
.mammology-clinical-groups {
  background: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-sans);
  overflow: hidden;
}
.mammology-clinical-groups__inner { gap: var(--space-6); }
.mammology-clinical-groups__head { min-width: 0; }
.mammology-clinical-groups__eyebrow { margin-bottom: 9px; }
.mammology-clinical-groups__title { max-width: 360px; }
.mammology-clinical-groups__card {
  background: var(--color-bg-white);
  border-radius: var(--radius-md);
  min-width: 0;
}
.mammology-clinical-groups__card--complaints { background: var(--color-bg-mint); }
.mammology-clinical-groups__card h3 { margin: 0 0 22px; }
.mammology-clinical-groups__card p {
  color: var(--color-text);
  font-size: var(--fs-base);
  line-height: 30px;
  margin: 0;
}
.mammology-clinical-groups__card ul {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.mammology-clinical-groups__card li {
  color: var(--color-text);
  font-size: var(--fs-base);
  line-height: 24px;
  padding-left: 36px;
  position: relative;
}
.mammology-clinical-groups__card li::before {
  left: 0;
  top: 11px;
}

@media (min-width: 1200px) {
  .mammology-clinical-groups__head { grid-column: 3 / 6; margin-bottom: 43px; }
  .mammology-clinical-groups__card--complaints { grid-column: 1 / 5; grid-row: 2 / 4; min-height: 760px; padding: 35px 36px; }
  .mammology-clinical-groups__card--chronic    { grid-column: 5 / 13; min-height: 370px; padding: 35px 38px; }
  .mammology-clinical-groups__card--spine      { grid-column: 5 / 13; min-height: 370px; padding: 27px 43px; }
  .mammology-clinical-groups__card--neuro      { grid-column: 1 / 7; min-height: 420px; padding: 31px 44px; }
  .mammology-clinical-groups__card--headache   { grid-column: 7 / 13; min-height: 420px; padding: 31px 37px; }
}

@media (max-width: 1199px) {
  .mammology-clinical-groups__number { grid-column: 1 / 3; }
  .mammology-clinical-groups__head   { grid-column: 3 / 8; margin-bottom: 20px; }
  .mammology-clinical-groups__card   { padding: 34px 36px; }
  .mammology-clinical-groups__card--complaints { grid-column: 1 / 7; }
  .mammology-clinical-groups__card--chronic    { grid-column: 7 / 13; }
  .mammology-clinical-groups__card--spine      { grid-column: 1 / 13; }
  .mammology-clinical-groups__card--neuro      { grid-column: 1 / 7; }
  .mammology-clinical-groups__card--headache   { grid-column: 7 / 13; }
}

@media (max-width: 900px) {
  .mammology-clinical-groups__number,
  .mammology-clinical-groups__head,
  .mammology-clinical-groups__card,
  .mammology-clinical-groups__card--complaints,
  .mammology-clinical-groups__card--chronic,
  .mammology-clinical-groups__card--spine,
  .mammology-clinical-groups__card--neuro,
  .mammology-clinical-groups__card--headache { grid-column: 1 / -1; }
  .mammology-clinical-groups__head { margin-bottom: 10px; }
}

@media (max-width: 560px) {
  .mammology-clinical-groups__card   { padding: 28px 24px; }
  .mammology-clinical-groups__card h3 { font-size: 28px; line-height: 34px; margin-bottom: 18px; }
  .mammology-clinical-groups__card p,
  .mammology-clinical-groups__card li { font-size: var(--fs-sm); line-height: 26px; }
}

/* ===== Methods ===== */
.mammology-methods {
  background: var(--color-bg-white);
  color: var(--color-text);
  font-family: var(--font-sans);
  overflow: hidden;
}
.mammology-methods__head { min-width: 0; }
.mammology-methods__eyebrow { margin-bottom: 9px; }
.mammology-methods__title { max-width: 560px; }
.mammology-methods__lead {
  color: var(--color-text);
  font-size: var(--fs-base);
  line-height: 30px;
  margin: var(--space-6) 0 0;
  max-width: 520px;
}
.mammology-methods__row {
  border-top: 1px solid var(--color-border);
  display: grid;
  gap: var(--space-7) var(--space-6);
  grid-column: 1 / -1;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  min-width: 0;
  position: relative;
}
.mammology-methods__icon {
  display: block;
  overflow: hidden;
  pointer-events: none;
  position: relative;
}
.mammology-methods__icon img {
  display: block;
  max-width: none;
  position: absolute;
}
.mammology-methods__icon--injections     { height: 69px; width: 69px; }
.mammology-methods__icon--injections img { height: 179.55%; left: -39.77%; top: -39.77%; width: 179.55%; }
.mammology-methods__icon--radiofrequency { height: 63px; width: 63px; }
.mammology-methods__icon--radiofrequency img { height: 191.16%; left: -45.58%; top: -45.58%; width: 191.16%; }
.mammology-methods__icon--botulinum      { height: 56px; width: 43px; }
.mammology-methods__icon--botulinum img  { height: 208.31%; left: -91.32%; top: -52.33%; width: 272.02%; }
.mammology-methods__icon--complex        { height: 51px; width: 51px; }
.mammology-methods__icon--complex img    { height: 188.57%; left: -47.83%; top: -40.3%; width: 188.01%; }
.mammology-methods__row-title { min-width: 0; }
.mammology-methods__body {
  color: var(--color-text-strong);
  font-size: var(--fs-base);
  line-height: 30px;
  min-width: 0;
}
.mammology-methods__body p { margin: 0; }
.mammology-methods__body p + p { margin-top: var(--space-stack-lg); }
.mammology-methods__list {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin: 23px 0 var(--space-stack-lg);
}
.mammology-methods__list li {
  line-height: 24px;
  margin: 0;
  padding-left: 45px;
  position: relative;
}
.mammology-methods__list li::before {
  left: 5px;
  top: 11px;
  width: 24px;
}
.mammology-methods__links {
  display: flex;
  flex-direction: column;
  gap: 21px;
  margin-top: 43px;
  max-width: 642px;
}

@media (min-width: 1200px) {
  .mammology-methods__head { grid-column: 3 / 9; margin-bottom: 50px; }
  .mammology-methods__row { align-items: start; padding: 44px 0 64px; }
  .mammology-methods__icon       { grid-column: 1 / 2; }
  .mammology-methods__row-title  { grid-column: 1 / 6; max-width: 430px; }
  .mammology-methods__body       { grid-column: 6 / 12; max-width: 642px; }
  .mammology-methods__row--botulinum .mammology-methods__links { margin-top: 31px; }
}

@media (max-width: 1199px) {
  .mammology-methods__number { grid-column: 1 / 3; }
  .mammology-methods__head   { grid-column: 3 / 10; }
  .mammology-methods__row    { padding: 46px 0 54px; }
  .mammology-methods__icon       { grid-column: 1 / 2; }
  .mammology-methods__row-title  { grid-column: 1 / 6; }
  .mammology-methods__body       { grid-column: 6 / 13; }
}

@media (min-width: 901px) and (max-width: 1100px) {
  .mammology-methods__head { grid-column: 3 / 12; }
  .mammology-methods__row  { gap: var(--space-6) var(--space-5); padding: 42px 0 50px; }
  .mammology-methods__icon { grid-column: 1 / 2; }
  .mammology-methods__icon--injections     { height: 58px; width: 58px; }
  .mammology-methods__icon--radiofrequency { height: 54px; width: 54px; }
  .mammology-methods__icon--botulinum      { height: 48px; width: 37px; }
  .mammology-methods__icon--complex        { height: 46px; width: 46px; }
  .mammology-methods__row-title {
    font-size: 34px;
    grid-column: 1 / 13;
    line-height: 1.16;
    max-width: 640px;
  }
  .mammology-methods__body { grid-column: 1 / 13; max-width: 760px; }
}

@media (max-width: 900px) {
  .mammology-methods__number,
  .mammology-methods__head,
  .mammology-methods__row,
  .mammology-methods__icon,
  .mammology-methods__row-title,
  .mammology-methods__body { grid-column: 1 / -1; }
  .mammology-methods__row { padding: 38px 0 48px; }
  .mammology-methods__icon { margin-bottom: 2px; }
  .mammology-methods__body { max-width: 760px; }
}

@media (max-width: 560px) {
  .mammology-methods__lead,
  .mammology-methods__body,
  .mammology-methods__list li { font-size: var(--fs-sm); line-height: 26px; }
  .mammology-methods__row-title { font-size: 28px; line-height: 34px; }
  .mammology-methods__list { gap: 18px; margin: 20px 0 26px; }
}

/* ===== Guidance + Route ===== */
.mammology-guidance,
.mammology-route {
  color: var(--color-text);
  font-family: var(--font-sans);
  overflow: hidden;
}
.mammology-guidance { background: #FBF4EE; }
.mammology-route    { background: var(--color-bg-white); }

.mammology-guidance__head,
.mammology-route__head {
  grid-column: 3 / 9;
  min-width: 0;
}
.mammology-guidance__eyebrow,
.mammology-route__eyebrow { margin-bottom: 9px; }
.mammology-guidance__title { max-width: 500px; }
.mammology-route__title    { max-width: 560px; }

.mammology-guidance__column { min-width: 0; }
.mammology-guidance__column--ultrasound { grid-column: 1 / 6; }
.mammology-guidance__column--xray       { grid-column: 7 / 13; }
.mammology-guidance__column-title { margin: 8px 0 var(--space-6); }
.mammology-guidance__column-text {
  color: var(--color-text-strong);
  font-size: var(--fs-base);
  line-height: 30px;
}
.mammology-guidance__column-text p { margin: 0; }
.mammology-guidance__column-text p + p { margin-top: var(--space-stack-lg); }

.mammology-route__steps {
  grid-column: 3 / 12;
  position: relative;
}
.mammology-route__steps::before {
  background: var(--color-accent-mint);
  content: "";
  left: 8px;
  position: absolute;
  top: 0;
  width: 1px;
}
.mammology-route__step {
  min-width: 0;
  padding-left: 78px;
  position: relative;
}
.mammology-route__step::before {
  background: var(--color-accent-mint);
  border-radius: var(--radius-round);
  content: "";
  height: 18px;
  left: 0;
  position: absolute;
  top: 7px;
  width: 18px;
}
.mammology-route__step-title {
  color: var(--color-text);
  font-family: var(--font-serif);
  font-size: var(--fs-xl);
  font-weight: 700;
  letter-spacing: 0;
  line-height: 37px;
  margin: 0 0 27px;
}
.mammology-route__step-body {
  color: var(--color-text-strong);
  font-size: var(--fs-base);
  line-height: 30px;
  max-width: 880px;
}
.mammology-route__step-body p { margin: 0; }

.mammology-route__choices {
  display: grid;
  gap: 68px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 25px 0 0;
  max-width: 820px;
  padding: 0;
}
.mammology-route__choices-column {
  align-content: start;
  display: grid;
  gap: 18px;
  margin: 0;
  min-width: 0;
  padding: 0;
}
.mammology-route__choices li {
  font-size: var(--fs-base);
  line-height: 30px;
  min-width: 0;
  padding-left: 32px;
  position: relative;
}
.mammology-route__choices li::before {
  left: 0;
  top: 15px;
  width: 22px;
}

@media (min-width: 1200px) {
  .mammology-guidance__head { margin-bottom: 60px; }
  .mammology-route__steps::before { bottom: 0; left: 9px; }
  .mammology-route__step + .mammology-route__step { margin-top: 56px; }
}

@media (max-width: 1199px) {
  .mammology-guidance__head,
  .mammology-route__head { grid-column: 3 / 11; }
  .mammology-guidance__column--ultrasound { grid-column: 1 / 7; }
  .mammology-guidance__column--xray       { grid-column: 7 / 13; }
  .mammology-route__steps    { grid-column: 3 / 13; margin-top: 24px; }
  .mammology-route__steps::before { bottom: 0; }
  .mammology-route__step + .mammology-route__step { margin-top: 52px; }
}

@media (max-width: 900px) {
  .mammology-guidance__number,
  .mammology-guidance__head,
  .mammology-guidance__column,
  .mammology-route__number,
  .mammology-route__head,
  .mammology-route__steps { grid-column: 1 / -1; }
  .mammology-route__steps      { margin-top: 16px; }
  .mammology-route__step       { padding-left: 56px; }
  .mammology-route__step-title { font-size: var(--fs-lg); line-height: 32px; margin-bottom: 20px; }
  .mammology-route__choices    { gap: 12px; grid-template-columns: 1fr; }
  .mammology-route__choices-column { display: contents; }
  .mammology-route__choices-column--left  li:nth-child(1) { order: 1; }
  .mammology-route__choices-column--right li:nth-child(1) { order: 2; }
  .mammology-route__choices-column--left  li:nth-child(2) { order: 3; }
  .mammology-route__choices-column--right li:nth-child(2) { order: 4; }
  .mammology-route__choices-column--left  li:nth-child(3) { order: 5; }
  .mammology-route__choices-column--right li:nth-child(3) { order: 6; }
  .mammology-route__choices-column--left  li:nth-child(4) { order: 7; }
}

@media (max-width: 560px) {
  .mammology-guidance__column-title { font-size: 28px; line-height: 34px; }
  .mammology-guidance__column-text,
  .mammology-route__step-body,
  .mammology-route__choices li { font-size: var(--fs-sm); line-height: 26px; }
  .mammology-route__step       { padding-left: 46px; }
  .mammology-route__step::before { height: 16px; width: 16px; }
  .mammology-route__step-title { font-size: 22px; line-height: 30px; }
}

/* ===== Safety + Preparation + Modic ===== */
.mammology-safety,
.mammology-preparation,
.mammology-modic {
  color: var(--color-text);
  font-family: var(--font-sans);
  overflow: hidden;
}
.mammology-safety,
.mammology-modic       { background: #FBF4EE; }
.mammology-preparation { background: var(--color-bg-white); }

.mammology-safety__head,
.mammology-preparation__head { grid-column: 1 / 5; }
.mammology-modic__head       { grid-column: 3 / 11; }
.mammology-safety__content,
.mammology-preparation__content { grid-column: 6 / 13; }
.mammology-modic__content    { grid-column: 3 / 10; }

.mammology-safety__eyebrow,
.mammology-preparation__eyebrow,
.mammology-modic__eyebrow { margin-bottom: 10px; }

.mammology-safety__title      { max-width: 430px; }
.mammology-preparation__title { max-width: 365px; }
.mammology-modic__title       { max-width: 820px; }

.mammology-safety__content,
.mammology-preparation__content,
.mammology-modic__text {
  color: var(--color-text-strong);
  font-size: var(--fs-base);
  line-height: 30px;
}
.mammology-safety__content p,
.mammology-preparation__content p,
.mammology-modic__text p { margin: 0; }
.mammology-safety__content p + p,
.mammology-modic__text p + p { margin-top: var(--space-stack-lg); }

.mammology-preparation__list {
  display: grid;
  gap: 18px;
  margin: 25px 0 var(--space-stack-lg);
}
.mammology-preparation__list li {
  min-width: 0;
  padding-left: 47px;
  position: relative;
}
.mammology-preparation__list li::before {
  left: 3px;
  top: 15px;
  width: 24px;
}

.mammology-modic__text {
  margin-top: var(--space-6);
  max-width: 762px;
}
.mammology-modic__note {
  border-block: 1px solid var(--color-border);
  margin-top: 43px;
  max-width: 762px;
  padding: 26px 21px 24px;
}
.mammology-modic__note p {
  color: var(--color-text);
  font-family: var(--font-sans);
  font-size: var(--fs-lg);
  font-weight: 400;
  line-height: 34px;
  margin: 0;
}

@media (max-width: 1199px) {
  .mammology-safety__head,
  .mammology-preparation__head    { grid-column: 3 / 8; }
  .mammology-safety__content,
  .mammology-preparation__content { grid-column: 3 / 13; margin-top: 8px; }
  .mammology-modic__content       { grid-column: 3 / 12; }
}

@media (max-width: 900px) {
  .mammology-safety__number,
  .mammology-safety__head,
  .mammology-safety__content,
  .mammology-preparation__number,
  .mammology-preparation__head,
  .mammology-preparation__content,
  .mammology-modic__number,
  .mammology-modic__content { grid-column: 1 / -1; }
  .mammology-safety__content,
  .mammology-preparation__content,
  .mammology-modic__text  { max-width: none; }
}

@media (max-width: 560px) {
  .mammology-safety__content,
  .mammology-preparation__content,
  .mammology-modic__text   { font-size: var(--fs-sm); line-height: 26px; }
  .mammology-preparation__list   { gap: 18px; margin: 22px 0 24px; }
  .mammology-preparation__list li { padding-left: 42px; }
  .mammology-modic__note   { margin-top: 34px; padding: 22px 0; }
  .mammology-modic__note p { font-size: 22px; line-height: 30px; }
}

/* ===== Pricing + FAQ + Reasons ===== */
.mammology-pricing,
.mammology-faq,
.mammology-reasons {
  color: var(--color-text);
  font-family: var(--font-sans);
  overflow: hidden;
}
.mammology-pricing,
.mammology-reasons { background: var(--color-bg-white); }
.mammology-faq     { background: #FBF4EE; }

.mammology-pricing__head { grid-column: 3 / 11; }

.mammology-pricing__lead,
.mammology-reasons__lead {
  color: var(--color-text);
  font-size: var(--fs-base);
  line-height: 30px;
  margin: var(--space-6) 0 0;
  max-width: 704px;
}
.mammology-pricing__table-placeholder {
  align-items: center;
  background: var(--color-bg-placeholder);
  color: var(--color-text);
  display: flex;
  font-size: var(--fs-base);
  grid-column: 1 / -1;
  justify-content: center;
  line-height: 30px;
  min-height: 500px;
  text-align: center;
}

.mammology-faq__head,
.mammology-reasons__head { grid-column: 2 / 6; }
.mammology-faq__eyebrow,
.mammology-reasons__eyebrow { margin-bottom: 10px; }
.mammology-faq__title,
.mammology-reasons__title { max-width: 520px; }

.mammology-faq__list {
  grid-column: 2 / 12;
  margin-top: 47px;
}
.mammology-faq__item              { border-top: 1px solid var(--color-border); }
.mammology-faq__item:last-child   { border-bottom: 1px solid var(--color-border); }
.mammology-faq__question {
  align-items: center;
  color: var(--color-text);
  cursor: pointer;
  display: flex;
  font-family: var(--font-serif);
  font-size: var(--fs-xl);
  font-weight: 700;
  gap: var(--space-6);
  justify-content: space-between;
  line-height: 37px;
  list-style: none;
  margin: 0;
  min-height: 77px;
  padding: 19px 16px 20px 11px;
  transition: color var(--dur-base) var(--ease-out-soft);
}
.mammology-faq__question::-webkit-details-marker { display: none; }
.mammology-faq__question::after {
  background:
    linear-gradient(var(--color-accent-mint), var(--color-accent-mint)) center / 22px 1px no-repeat,
    linear-gradient(var(--color-accent-mint), var(--color-accent-mint)) center / 1px 22px no-repeat;
  content: "";
  flex: 0 0 auto;
  height: 28px;
  transform: rotate(0deg);
  transform-origin: center;
  transition: transform 280ms var(--ease-out-soft);
  width: 28px;
}
.mammology-faq__item[open] .mammology-faq__question        { color: var(--color-text-meta); }
.mammology-faq__item[open] .mammology-faq__question::after { transform: rotate(45deg); }
.mammology-faq__item.is-closing .mammology-faq__question::after { transform: rotate(0deg); }
.mammology-faq__answer {
  color: var(--color-text);
  font-size: var(--fs-base);
  line-height: 30px;
  margin: 0;
  max-width: 835px;
  padding: 0 92px 28px 11px;
}
.mammology-faq__item.is-animating .mammology-faq__answer-wrap { overflow: hidden; }

.mammology-reasons__lead { max-width: 520px; }
.mammology-reasons__grid {
  display: grid;
  gap: 53px 86px;
  grid-column: 2 / 12;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 54px;
}
.mammology-reasons__item {
  display: grid;
  gap: 18px;
  grid-template-columns: 30px minmax(0, 1fr);
}
.mammology-reasons__icon {
  background: url("assets/check.svg") center / contain no-repeat;
  display: block;
  height: 28px;
  margin-top: 4px;
  width: 28px;
}
.mammology-reasons__item-title {
  color: var(--color-text);
  font-family: var(--font-serif);
  font-size: var(--fs-xl);
  font-weight: 700;
  letter-spacing: 0;
  line-height: 34px;
  margin: 0 0 13px;
}
.mammology-reasons__item-text {
  color: var(--color-text);
  font-size: var(--fs-base);
  line-height: 30px;
  margin: 0;
  max-width: 442px;
}

@media (min-width: 1200px) {
  .mammology-faq__number,
  .mammology-reasons__number { grid-column: 1 / 2; }
}

@media (max-width: 1199px) {
  .mammology-pricing__head,
  .mammology-faq__head,
  .mammology-reasons__head { grid-column: 3 / 11; }
  .mammology-pricing__table-placeholder,
  .mammology-faq__list,
  .mammology-reasons__grid { grid-column: 1 / -1; }
  .mammology-reasons__grid { gap: 44px 56px; }
}

@media (max-width: 900px) {
  .mammology-pricing__number,
  .mammology-pricing__head,
  .mammology-pricing__table-placeholder,
  .mammology-faq__number,
  .mammology-faq__head,
  .mammology-faq__list,
  .mammology-reasons__number,
  .mammology-reasons__head,
  .mammology-reasons__grid { grid-column: 1 / -1; }
  .mammology-pricing__title,
  .mammology-faq__title,
  .mammology-reasons__title { font-size: clamp(34px, 6vw, 42px); line-height: 1.12; }
  .mammology-faq__list,
  .mammology-reasons__grid  { margin-top: 10px; }
  .mammology-faq__question  { font-size: var(--fs-lg); line-height: 32px; }
  .mammology-reasons__grid  { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .mammology-pricing__lead,
  .mammology-faq__answer,
  .mammology-reasons__lead,
  .mammology-reasons__item-text { font-size: var(--fs-sm); line-height: 26px; }
  .mammology-pricing__table-placeholder { min-height: 310px; }
  .mammology-faq__question {
    font-size: 22px;
    line-height: 30px;
    min-height: 68px;
    padding: 16px 0;
  }
  .mammology-faq__question::after { background-size: 18px 1px, 1px 18px; height: 24px; width: 24px; }
  .mammology-faq__answer   { padding: 0 42px 24px 0; }
  .mammology-reasons__grid { gap: 36px; }
  .mammology-reasons__item { gap: 14px; grid-template-columns: 28px minmax(0, 1fr); }
  .mammology-reasons__item-title { font-size: var(--fs-lg); line-height: 31px; }
}

/* Цветная плашка-акцент со статистикой / выводом */
.mammology-callout {
  background: var(--color-bg-mint);
  border-radius: var(--radius-md);
  margin-top: 29px;
  padding: 28px 32px;
}
.mammology-callout p {
  color: var(--color-text);
  font-family: var(--font-serif);
  font-size: var(--fs-lg);
  font-weight: 400;
  line-height: 32px;
  margin: 0;
}
.mammology-callout strong { color: var(--color-accent-mint-deep); font-weight: 700; }

@media (max-width: 560px) {
  .mammology-callout   { margin-top: 24px; padding: 22px 24px; }
  .mammology-callout p { font-size: var(--fs-base); line-height: 28px; }
}

/* ============================================================
   Интеграция в Битрикс: шапка сайта (position: absolute, z-index:30)
   остаётся нативно наложенной поверх hero-видео — демо-правило
   (relative + белый фон) в прод НЕ переносим.
   ============================================================ */

/* ====== 7. prefers-reduced-motion ====== */
@media (prefers-reduced-motion: reduce) {
  .mammology-faq__question,
  .mammology-faq__question::after,
  .mammology-faq__inner,
  .mammology .btn,
  .mammology .btn--card { transition: none; }
}

/* ====== 8. Розовый акцент в шапке (перекрывает зелёный бренд сайта) ====== */
/* Перекрашенные локальные SVG: зелёный #8FC4A6 → розовый #d97a99 */
.mammology-page .header .logo {
  background-image: url("assets/header/logoh.svg") !important;
}
.mammology-page .header .socials-list__icon_vk { background-image: url("assets/header/icon_vk.svg") !important; }
.mammology-page .header .socials-list__icon_yt { background-image: url("assets/header/icon_yt.svg") !important; }
.mammology-page .header .socials-list__icon_tg { background-image: url("assets/header/icon_tg.svg") !important; }

/* Круг иконки поиска */
.mammology-page .header .search-popup-link { background: #d97a99 !important; }

/* Стрелки в меню (раскрытие пунктов и режим работы) */
.mammology-page .header .wrapper-top .mode .txt::after,
.mammology-page .header nav.menu-top .--lvl1:not(.--template-nosub) > a::after {
  background-image: url("assets/header/arrow.svg") !important;
}
.mammology-page .header nav.menu-top .--lvl1.--template-extended .--lvl1-subs a:not(.--nosub)::before {
  background-image: url("assets/header/arrow8.svg") !important;
}

/* Активные / выбранные ссылки в выпадающем меню */
.mammology-page .header nav.menu-top .--lvl1.--template-simple .--lvl1-subs a.selected { color: #d97a99 !important; }

/* ====== 9. Розовый акцент в футере (только на этой странице) ====== */
/* Зелёные соц-иконки бренда → розовые (подмена локальных SVG). Тёмный фон футера не трогаем. */
.mammology-page .footer .socials-list__icon_vk { background-image: url("assets/header/icon_vk.svg") !important; }
.mammology-page .footer .socials-list__icon_yt { background-image: url("assets/header/icon_yt.svg") !important; }
.mammology-page .footer .socials-list__icon_tg { background-image: url("assets/header/icon_tg.svg") !important; }

/* ====== 10. Резерв места под шапку сайта (position:absolute) над hero ====== */
/* На бою шапка накладывается поверх hero — даём верхний отступ, как на главной (~200px). */
.mammology-hero__inner { padding-top: 200px; }
@media (max-width: 1199px) { .mammology-hero__inner { padding-top: 150px; } }
@media (max-width: 900px)  { .mammology-hero__inner { padding-top: 148px; } }
@media (max-width: 560px)  { .mammology-hero__inner { padding-top: 124px; } }

/* ====== Хлебные крошки: выравнивание и мобильный бэнд ====== */
/* На десктопе .inner-page .container — грид 250px/1fr, крошки прижаты во 2-ю колонку
   (место под aside, которого здесь нет) и уезжают вправо. Тянем на обе колонки. */
.mammology-page .inner-page-breadcrumbs .breadcrumbs {
  grid-column: 1 / 3;
  max-width: none;
}

/* На мобиле сайт скрывает пункты крошек (.breadcrumbs li), но пустая полоса-бэнд
   с верхним отступом остаётся между шапкой и hero — убираем её. */
@media (max-width: 768px) {
  .mammology-page .inner-page-breadcrumbs {
    display: none;
  }
}

/* Десктоп: шапка сайта — position:absolute и прозрачная, но бэнд крошек стоит
   первым в потоке и опускает hero, поэтому шапка висит над фоном body (#F6F8F4),
   а не над видео. Выводим бэнд из потока и кладём поверх hero (под шапкой) —
   тогда .inner-page-content с видео-hero поднимается под прозрачную шапку. */
@media (min-width: 1081px) {
  .mammology-page .inner-page-breadcrumbs {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 20;            /* выше hero-контента (z2), ниже шапки (z30) */
    background: transparent;
    pointer-events: none;   /* клики проходят к hero, кроме самих ссылок */
  }
  .mammology-page .inner-page-breadcrumbs a {
    pointer-events: auto;
  }
  .mammology-page .inner-page-breadcrumbs .breadcrumbs {
    padding-top: 196px;     /* крошки ниже двухрядной шапки */
    padding-bottom: 0;
  }
  /* hero-контент опускаем ниже крошек, чтобы не было наложения (+воздух сверху) */
  .mammology-page .mammology-hero__inner {
    padding-top: 268px;
  }
}

/* Планшет (769–1080px): шапка компактная (бургер, ~85px), но проблема та же —
   бэнд крошек в потоке держит «плашку» фона body над hero. Тот же overlay,
   только отступы под более низкую шапку. */
@media (min-width: 769px) and (max-width: 1080px) {
  .mammology-page .inner-page-breadcrumbs {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 20;
    background: transparent;
    pointer-events: none;
  }
  .mammology-page .inner-page-breadcrumbs a {
    pointer-events: auto;
  }
  .mammology-page .inner-page-breadcrumbs .breadcrumbs {
    padding-top: 104px;
    padding-bottom: 0;
  }
  .mammology-page .mammology-hero__inner {
    padding-top: 172px;
  }
}

/* ====== Единая типографика: отступы под заголовками ======
   Сброс `.mammology h2..h6 { margin:0 }` (специфичность 0,1,1) перебивает
   классы секций (0,1,0) и обнуляет их margin. Поэтому отступы под самими
   заголовками задаём с повышенной специфичностью (.mammology-page …, 0,2,0),
   единым ритмом: воздух под заголовком ≥ межстрочного интервала текста (30px). */
.mammology-page .mammology-concept__title { margin: -5px 0 var(--space-6); }      /* h2 → текст: 24px */
.mammology-page .mammology-guidance__column-title { margin: 8px 0 var(--space-6); } /* label→h3 8px, h3→текст 24px */
.mammology-page .mammology-reasons__item-title { margin: 0 0 var(--space-4); }     /* компактные карточки: 16px */

/* То же и для стилизованных списков: reset `.mammology ul { margin:0 }` (0,1,1)
   обнулял внешние отступы списка (.mammology-methods__list, 0,1,0), из-за чего
   следующий абзац прилипал. Возвращаем отступы с повышенной специфичностью. */
.mammology-page .mammology-methods__list { margin: 23px 0 var(--space-stack-lg); }
@media (max-width: 560px) {
  .mammology-page .mammology-methods__list { margin: 20px 0 26px; }
}

/* ====== Розовый стиль: кнопки, город, футер, форма; скрытие секции цен ====== */

/* Секция 07 «Стоимость» — временно скрыта (цен пока нет) */
.mammology-pricing { display: none; }

/* Кнопки записи в шапке («Записаться онлайн») и футере («Запись на приём»):
   были коричневый аутлайн → делаем розовый аутлайн, на ховере — заливка. */
.mammology-page .header .wrapper-top .btn,
.mammology-page .footer .footer-top .info .btn {
  color: #d97a99 !important;
  border-color: #d97a99 !important;
}
.mammology-page .header .wrapper-top .btn:hover,
.mammology-page .footer .footer-top .info .btn:hover {
  background-color: #d97a99 !important;
  border-color: #d97a99 !important;
  color: #fff !important;
}

/* Кнопка-город «Санкт-Петербург»: зелёная стрелка-уголок → розовая */
.mammology-page .adress-btn-show__txt:after {
  border-bottom-color: #d97a99 !important;
  border-right-color: #d97a99 !important;
}

/* Логотип в футере: зелёная мандала + текст → розовая версия SVG */
.mammology-page .footer .footer-top .info .logo {
  background-image: url("assets/header/logof.svg") !important;
}

/* Форма «Напишите нам» (.contact-from-page): зелёные акценты → розовые */
.mammology-page .contact-from-page input,
.mammology-page .contact-from-page textarea,
.mammology-page .contact-from-page .form-input,
.mammology-page .contact-from-page .form-input.-textarea {
  border-color: #d97a99 !important;
}
.mammology-page .contact-from-page .--checkbox > b {
  border-color: #d97a99 !important;
}
.mammology-page .contact-from-page .--checkbox > input[type='checkbox']:checked + b {
  background-image: url("data:image/svg+xml,%3Csvg width='19' height='15' viewBox='0 0 19 15' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.2998 6.89088L6.85887 12.45L17.6185 1.69043' stroke='%23d97a99' stroke-width='3'/%3E%3C/svg%3E") !important;
}
/* Кнопка «Отправить» — сплошная розовая (как основной CTA страницы) */
.mammology-page .contact-from-page form .btn {
  background-color: #d97a99 !important;
  border-color: #d97a99 !important;
  color: #fff !important;
}
.mammology-page .contact-from-page form .btn:hover {
  background-color: #c4658a !important;
  border-color: #c4658a !important;
  color: #fff !important;
}
