/* === Дополнительные стили под teaser-лендинг 2026 ===
   Используем существующие переменные и шрифты сайта:
   --brand-600 / --brand-700 (#5e2ced) — фирменный фиолетовый
   --second-family — Coolvetica (для крупных заголовков)
   --font-family — Inter (для тела)
   #fa5f26 — оранжевый акцент кнопок
*/

/* ---------- HERO 2026 ----------
   Премиальная, спокойная, технологичная атмосфера.
   Слои (снизу вверх):
     1. .hero-2026__bg     — фото Москвы (фон, лёгкий ken-burns)
     2. .hero-2026__shade  — gradient darken для читаемости
     3. .hero-2026__grid   — тонкая фиолетовая сетка с masked-затуханием
     4. .hero-2026__nodes  — точки-узлы (JS, ~28 шт., обходят центр и низ)
     5. .hero-2026__pulses — оранжевые data-pulses (JS schedule)
     6. .hero-2026__scan   — мягкий горизонтальный glow раз в ~10 сек
     ──── контент (z:10): заголовок + слоган + CTA ────────────────────
*/

.home__intro_video.hero-2026 {
  background: #0c0a2e;
  isolation: isolate;
  height: 640px;
  align-items: stretch;
  justify-content: stretch;
  padding: 0;
  border-radius: 24px;
  overflow: hidden;
  position: relative;
}

/* Слой 1 — фотография */
.hero-2026__bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  background-image: url('/public/assets/hero-moscow-2026.png');
  background-size: cover;
  background-position: center 55%;
  animation: hero2026KenBurns 28s ease-in-out infinite alternate;
  transform-origin: center 60%;
  will-change: transform;
}

@keyframes hero2026KenBurns {
  from { transform: scale(1.00); }
  to   { transform: scale(1.05); }
}

/* Слой 2 — полупрозрачный зацикленный видеоролик поверх фото */
.hero-2026__video {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
  opacity: 1;
  mix-blend-mode: screen;
}

/* Слой 3 — затемнение + лёгкий фиолетовый «warm light» сверху */
.hero-2026__shade {
  position: absolute;
  inset: 0;
  z-index: 3;
  background:
    linear-gradient(
      180deg,
      rgba(12, 10, 46, 0.55) 0%,
      rgba(12, 10, 46, 0.25) 30%,
      rgba(12, 10, 46, 0.30) 55%,
      rgba(12, 10, 46, 0.70) 100%
    ),
    radial-gradient(140% 90% at 50% 0%, rgba(94, 44, 237, 0.28) 0%, rgba(0, 0, 0, 0) 65%);
  pointer-events: none;
}

/* Контент Hero */
.hero-2026__content {
  position: relative;
  z-index: 10;
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  padding: 72px 48px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  text-align: left;
}

.hero-2026__copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.hero-2026 .home__intro_video_title {
  text-align: left;
  text-shadow: 0 4px 24px rgba(0, 0, 0, 0.45);
}

.hero-2026__slogan {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 28px;
  line-height: 130%;
  color: #fff;
  margin-top: 16px;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.4);
  opacity: 0.95;
}

/* CTA-строка: meta слева, кнопка по правому краю */
.hero-2026__cta {
  margin-top: 48px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 32px;
}

.hero-2026__meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.hero-2026__cta_btn {
  margin-left: auto;
  flex: 0 0 auto;
}

/* Адаптив Hero */
@media screen and (max-width: 1080px) {
  .home__intro_video.hero-2026 { height: 620px; }
  .hero-2026__content { padding: 64px 36px; }
}

@media screen and (max-width: 860px) {
  .home__intro_video.hero-2026 { height: 600px; border-radius: 20px; }
  .hero-2026__content { padding: 56px 28px; }
  .hero-2026__slogan { font-size: 22px; }
  .hero-2026__cta {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
    margin-top: 36px;
  }
  .hero-2026__cta_btn { margin-left: 0; }
}

@media screen and (max-width: 560px) {
  .home__intro_video.hero-2026 { height: 560px; border-radius: 16px; }
  .hero-2026__content { padding: 44px 20px; }
  .hero-2026__slogan { font-size: 18px; margin-top: 12px; }
  .hero-2026__cta { margin-top: 28px; }
  .hero-2026__node { width: 2px; height: 2px; }
  .hero-2026__grid { background-size: 44px 44px; }
}

/* Уважаем prefers-reduced-motion: гасим ken-burns и скрываем видеоролик */
@media (prefers-reduced-motion: reduce) {
  .hero-2026__bg { animation: none !important; }
  .hero-2026__video { display: none; }
}


/* ---------- О форуме (объединённые Block 3 + Block 4) ---------- */

.home__about-merged {
  margin-top: 80px;
}

.home__about-merged__card {
  position: relative;
  background: linear-gradient(180deg, #f5f6fb 0%, #ffffff 100%);
  border-radius: 32px;
  padding: 64px 64px 72px;
  overflow: hidden;
  box-shadow: 0 1px 0 rgba(94, 44, 237, 0.04);
}

/* мягкий фиолетовый «glow» в правом верхнем углу */
.home__about-merged__card::after {
  content: '';
  position: absolute;
  top: -120px; right: -120px;
  width: 360px; height: 360px;
  background: radial-gradient(closest-side, rgba(94, 44, 237, 0.12), rgba(94, 44, 237, 0));
  pointer-events: none;
}

.home__about-merged__head {
  position: relative;
  z-index: 1;
  max-width: 920px;
  margin-bottom: 56px;
  background: none;
}

.home__about-merged__eyebrow {
  font-family: var(--font-family);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #5e2ced;
  margin-bottom: 16px;
}

.home__about-merged__title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 48px;
  line-height: 110%;
  color: var(--colors-gray-light-mode-700);
  margin: 0;
}

.home__about-merged__title span {
  display: block;
  margin-top: 4px;
  color: var(--colors-gray-light-mode-500);
}

/* статистика */
.home__about-merged__stats {
  position: relative;
  z-index: 1;
  /* 12-колоночная сетка:
     Ряд 1: 3 крупных цифры по 4 колонки (3 × 4 = 12)
     Ряд 2: 4 компактные цифры по 3 колонки (4 × 3 = 12) */
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  row-gap: 48px;
  column-gap: 0;
  padding-top: 48px;
  border-top: 1px solid rgba(94, 44, 237, 0.14);
}

.home__about-merged__stat {
  position: relative;
  padding: 0 28px;
  border-left: 1px solid rgba(94, 44, 237, 0.12);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

/* Первая карточка каждого ряда — без левого бордера */
.home__about-merged__stat:nth-child(1),
.home__about-merged__stat:nth-child(4) {
  border-left: none;
  padding-left: 0;
}

/* Крупные карточки в ряду 1 — каждая занимает 4 из 12 колонок */
.home__about-merged__stat--hero {
  grid-column: span 4;
}

.home__about-merged__stat--hero .home__about-merged__stat_value {
  font-size: 88px;
  line-height: 0.95;
  letter-spacing: -0.02em;
}

.home__about-merged__stat--hero .home__about-merged__stat_label {
  font-size: 14px;
  max-width: 240px;
  margin-top: 18px;
}

/* Компактные карточки в ряду 2 — каждая по 3 из 12 колонок */
.home__about-merged__stat:not(.home__about-merged__stat--hero) {
  grid-column: span 3;
}

.home__about-merged__stat_value {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 40px;
  line-height: 1;
  color: #5e2ced;
  white-space: nowrap;
}

.home__about-merged__stat_label {
  margin-top: 10px;
  font-family: var(--font-family);
  font-size: 13px;
  line-height: 140%;
  color: var(--colors-gray-light-mode-500);
}

/* Появление карточек со stagger.
   Атрибут data-anim="ready" выставляет JS только для секций, которые ещё
   ниже фолда — для уже видимых анимация скрытия не применяется (без флика). */
.home__about-merged__stats[data-anim="ready"] .home__about-merged__stat {
  opacity: 0;
  transform: translateY(14px);
}

.home__about-merged__stats[data-anim="ready"].is-revealed .home__about-merged__stat {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.55s ease-out,
              transform 0.55s cubic-bezier(0.2, 0.7, 0.2, 1);
}

.home__about-merged__stats[data-anim="ready"].is-revealed .home__about-merged__stat:nth-child(1) { transition-delay: 0.00s; }
.home__about-merged__stats[data-anim="ready"].is-revealed .home__about-merged__stat:nth-child(2) { transition-delay: 0.08s; }
.home__about-merged__stats[data-anim="ready"].is-revealed .home__about-merged__stat:nth-child(3) { transition-delay: 0.16s; }
.home__about-merged__stats[data-anim="ready"].is-revealed .home__about-merged__stat:nth-child(4) { transition-delay: 0.24s; }
.home__about-merged__stats[data-anim="ready"].is-revealed .home__about-merged__stat:nth-child(5) { transition-delay: 0.32s; }
.home__about-merged__stats[data-anim="ready"].is-revealed .home__about-merged__stat:nth-child(6) { transition-delay: 0.40s; }
.home__about-merged__stats[data-anim="ready"].is-revealed .home__about-merged__stat:nth-child(7) { transition-delay: 0.48s; }

@media (prefers-reduced-motion: reduce) {
  .home__about-merged__stats[data-anim="ready"] .home__about-merged__stat,
  .home__about-merged__stats[data-anim="ready"].is-revealed .home__about-merged__stat {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* нижний разворот: текст + изображение */
.home__about-merged__story {
  position: relative;
  z-index: 1;
  margin-top: 64px;
  padding-top: 48px;
  border-top: 1px solid rgba(94, 44, 237, 0.14);
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 56px;
  align-items: center;
}

.home__about-merged__story_text p {
  font-family: var(--font-family);
  font-size: 16px;
  line-height: 160%;
  color: var(--colors-gray-light-mode-700);
  margin: 0 0 18px;
}

.home__about-merged__story_text p:last-of-type {
  margin-bottom: 0;
}

.home__about-merged__story_image {
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  background: #1a1230;
}

.home__about-merged__story_image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* адаптив блока О форуме */
@media screen and (max-width: 1180px) {
  .home__about-merged__stat--hero .home__about-merged__stat_value { font-size: 72px; }
  .home__about-merged__stat_value { font-size: 36px; }
}

@media screen and (max-width: 980px) {
  .home__about-merged__title { font-size: 38px; }
  .home__about-merged__story { grid-template-columns: 1fr; gap: 36px; }
  .home__about-merged__story_image { aspect-ratio: 16 / 10; max-width: 560px; }
  /* Планшет: 3 крупные в ряд, 2 ряда по 2 для остальных */
  .home__about-merged__stats { row-gap: 36px; }
  .home__about-merged__stat--hero { grid-column: span 4; }
  /* Компактные карточки: 4 в ряд по 3 колонки = 12, нормально */
  .home__about-merged__stat:not(.home__about-merged__stat--hero) { grid-column: span 3; }
  .home__about-merged__stat--hero .home__about-merged__stat_value { font-size: 64px; }
  .home__about-merged__stat_value { font-size: 32px; }
}

@media screen and (max-width: 820px) {
  /* Уменьшаем переключаем компактные в 2 ряда */
  .home__about-merged__stat--hero { grid-column: span 4; }
  .home__about-merged__stat:not(.home__about-merged__stat--hero) { grid-column: span 6; }
  /* первое и третье в ряду должны быть без border-left */
  .home__about-merged__stat:nth-child(6) { border-left: none; padding-left: 0; }
}

@media screen and (max-width: 720px) {
  .home__about-merged { margin-top: 56px; }
  .home__about-merged__head { margin-bottom: 36px; }
  .home__about-merged__title { font-size: 30px; }
  .home__about-merged__stats { row-gap: 32px; padding-top: 36px; }
  /* Крупные: 1 в ряд (каждая на всю ширину) */
  .home__about-merged__stat--hero {
    grid-column: 1 / -1;
    border-left: none;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 32px;
    border-bottom: 1px solid rgba(94, 44, 237, 0.12);
  }
  .home__about-merged__stat--hero:nth-child(3) { border-bottom: 1px solid rgba(94, 44, 237, 0.12); }
  .home__about-merged__stat--hero .home__about-merged__stat_value { font-size: 64px; }
  .home__about-merged__stat--hero .home__about-merged__stat_label { max-width: none; }
  /* Компактные: по 2 в ряд (span 6) */
  .home__about-merged__stat:not(.home__about-merged__stat--hero) { grid-column: span 6; padding: 0 16px; }
  .home__about-merged__stat:nth-child(4),
  .home__about-merged__stat:nth-child(6) { border-left: none; padding-left: 0; }
  .home__about-merged__stat_value { font-size: 30px; }
  .home__about-merged__story { margin-top: 44px; padding-top: 36px; }
}

@media screen and (max-width: 480px) {
  .home__about-merged__title { font-size: 26px; }
  .home__about-merged__stat--hero .home__about-merged__stat_value { font-size: 52px; }
  .home__about-merged__stat_value { font-size: 28px; }
  .home__about-merged__stat_label { font-size: 12px; }
}


/* ---------- Фиолетовая полоса-разделитель с девизом ---------- */

.home__divider {
  position: relative;
  isolation: isolate;
  padding: 88px 0;
  text-align: center;
  color: #fff;
  overflow: hidden;
}

/* Фон-градиент + декоративные подсветки (под контентом) */
.home__divider_bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    radial-gradient(circle at 18% 50%, rgba(250, 95, 38, 0.18) 0%, transparent 42%),
    radial-gradient(circle at 82% 50%, rgba(255, 255, 255, 0.10) 0%, transparent 42%),
    linear-gradient(135deg, #5e2ced 0%, #4a1fd7 100%);
}

/* Тонкая светлая линия сверху и снизу — как ребро баннера */
.home__divider::before,
.home__divider::after {
  content: "";
  position: absolute;
  left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.18) 50%,
    transparent 100%);
  z-index: 1;
}
.home__divider::before { top: 0; }
.home__divider::after  { bottom: 0; }

.home__divider_inner {
  position: relative;
  z-index: 2;
}

.home__divider_eyebrow {
  font-family: var(--font-family);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.70);
  margin-bottom: 22px;
}

.home__divider_slogan {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 64px;
  line-height: 1.05;
  letter-spacing: -0.01em;
  color: #fff;
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0 28px;
}

.home__divider_dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #fa5f26;
  display: inline-block;
  flex: 0 0 auto;
  box-shadow: 0 0 0 6px rgba(250, 95, 38, 0.18);
}

@media screen and (max-width: 980px) {
  .home__divider { padding: 72px 0; }
  .home__divider_slogan { font-size: 48px; gap: 0 22px; }
  .home__divider_dot { width: 7px; height: 7px; box-shadow: 0 0 0 5px rgba(250, 95, 38, 0.18); }
}

@media screen and (max-width: 680px) {
  .home__divider { padding: 60px 0; }
  .home__divider_slogan { font-size: 34px; gap: 0 16px; }
  .home__divider_dot { width: 6px; height: 6px; box-shadow: 0 0 0 4px rgba(250, 95, 38, 0.18); }
  .home__divider_eyebrow { font-size: 11px; margin-bottom: 16px; }
}

@media screen and (max-width: 480px) {
  .home__divider_slogan { font-size: 28px; gap: 0 12px; }
}


/* ---------- Программа (Block 5) ---------- */

.home__program_title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 64px;
  color: var(--colors-gray-light-mode-700);
}

.home__program_lead {
  margin-top: 16px;
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 18px;
  line-height: 150%;
  color: var(--colors-gray-light-mode-500);
  max-width: 760px;
}

.home__program_grid {
  margin-top: 40px;
  display: grid;
  gap: 20px;
  /* 6 колонок: треки 1–3 занимают по 2, треки 4–5 — по 3 (на всю ширину) */
  grid-template-columns: repeat(6, 1fr);
}

.home__track {
  grid-column: span 2;
}

/* Широкие карточки 04 и 05 — на всю ширину строки, с внутренней 2-колоночной раскладкой */
.home__track:nth-child(4),
.home__track:nth-child(5) {
  grid-column: span 3;
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
  grid-template-rows: auto auto 1fr auto;
  column-gap: 48px;
  row-gap: 0;
}
.home__track:nth-child(4) .home__track_head,
.home__track:nth-child(5) .home__track_head {
  grid-column: 1; grid-row: 1;
  margin-bottom: 24px;
}
.home__track:nth-child(4) .home__track_title,
.home__track:nth-child(5) .home__track_title {
  grid-column: 1; grid-row: 2;
  align-self: start;
  font-size: 28px;
  margin-bottom: 0;
}
.home__track:nth-child(4) .home__track_list,
.home__track:nth-child(5) .home__track_list {
  grid-column: 2;
  grid-row: 1 / span 4;
  margin: 0;
  align-self: center;
}
.home__track:nth-child(4) .home__track_more,
.home__track:nth-child(5) .home__track_more {
  grid-column: 1 / -1;
  grid-row: 4;
  margin-top: 28px;
}

/* Карточка трека — белая, минималистичная, монохромный фиолетовый акцент */
.home__track {
  position: relative;
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid rgba(94, 44, 237, 0.10);
  border-radius: 16px;
  padding: 32px 28px 24px;
  overflow: hidden;
  text-decoration: none;
  transition:
    border-color 240ms ease,
    box-shadow 280ms ease,
    transform 240ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

/* Тонкая левая акцент-полоска, растёт сверху-вниз на ховере */
.home__track::before {
  content: "";
  position: absolute;
  left: 0; top: 28px; bottom: 28px;
  width: 2px;
  background: #5e2ced;
  border-radius: 0 2px 2px 0;
  transform: scaleY(0.25);
  transform-origin: top center;
  transition: transform 380ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

/* Очень мягкий фоновой radial-glow в правом верхнем — появляется только на ховере */
.home__track::after {
  content: "";
  position: absolute;
  top: -80px; right: -80px;
  width: 220px; height: 220px;
  background: radial-gradient(closest-side, rgba(94, 44, 237, 0.10), rgba(94, 44, 237, 0));
  opacity: 0;
  transition: opacity 280ms ease;
  pointer-events: none;
}

.home__track:hover {
  border-color: rgba(94, 44, 237, 0.35);
  box-shadow: 0 16px 32px -10px rgba(94, 44, 237, 0.20);
  transform: translateY(-3px);
}
.home__track:hover::before { transform: scaleY(1); }
.home__track:hover::after  { opacity: 1; }

/* Шапка карточки: иконка + лейбл «Трек 0X» */
.home__track_head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 24px;
}

.home__track_icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: rgba(94, 44, 237, 0.08);
  color: #5e2ced;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition:
    background 260ms ease,
    color 260ms ease,
    transform 260ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.home__track_icon svg {
  width: 24px;
  height: 24px;
  display: block;
}

.home__track:hover .home__track_icon {
  background: #5e2ced;
  color: #fff;
  transform: rotate(-4deg) scale(1.04);
}

.home__track_num {
  font-family: var(--font-family);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--colors-gray-light-mode-500);
}

/* Заголовок трека */
.home__track_title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 24px;
  line-height: 120%;
  color: var(--colors-gray-light-mode-700);
  margin: 0 0 18px;
}

/* Список пунктов */
.home__track_list {
  margin: 0 0 24px;
  padding: 0;
  list-style: none;
  flex: 1;
}
.home__track_list li {
  position: relative;
  padding-left: 22px;
  font-family: var(--font-family);
  font-size: 14.5px;
  line-height: 150%;
  color: var(--colors-gray-light-mode-700);
  margin-bottom: 10px;
}
.home__track_list li:last-child { margin-bottom: 0; }
.home__track_list li::before {
  content: "";
  position: absolute;
  left: 4px;
  top: 9px;
  width: 6px;
  height: 6px;
  border-right: 1.5px solid #5e2ced;
  border-top: 1.5px solid #5e2ced;
  transform: rotate(45deg);
  transition: transform 220ms ease;
}

.home__track:hover .home__track_list li::before {
  transform: translateX(2px) rotate(45deg);
}

/* «Подробнее →» — appears подсвеченным на hover */
.home__track_more {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding-top: 16px;
  font-family: var(--font-family);
  font-size: 14px;
  font-weight: 600;
  color: #5e2ced;
  border-top: 1px solid rgba(94, 44, 237, 0.10);
  opacity: 0.7;
  transition: opacity 220ms ease, gap 220ms ease, border-color 240ms ease;
}
.home__track_more svg {
  width: 16px;
  height: 16px;
  transition: transform 240ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.home__track:hover .home__track_more {
  opacity: 1;
  border-top-color: rgba(94, 44, 237, 0.25);
  gap: 10px;
}
.home__track:hover .home__track_more svg {
  transform: translateX(4px);
}

.home__program_note {
  margin-top: 32px;
  font-family: var(--font-family);
  font-size: 14px;
  color: var(--colors-gray-light-mode-500);
}

/* адаптив треков */
@media screen and (max-width: 1080px) {
  .home__program_grid { grid-template-columns: repeat(2, 1fr); }
  .home__track,
  .home__track:nth-child(4),
  .home__track:nth-child(5) {
    grid-column: auto;
    display: flex;
    flex-direction: column;
    column-gap: 0;
  }
  /* возвращаем внутренние элементы широких карточек к стандартной раскладке */
  .home__track:nth-child(4) .home__track_head,
  .home__track:nth-child(5) .home__track_head,
  .home__track:nth-child(4) .home__track_title,
  .home__track:nth-child(5) .home__track_title,
  .home__track:nth-child(4) .home__track_list,
  .home__track:nth-child(5) .home__track_list,
  .home__track:nth-child(4) .home__track_more,
  .home__track:nth-child(5) .home__track_more {
    grid-column: auto;
    grid-row: auto;
    margin: 0;
  }
  .home__track:nth-child(4) .home__track_head,
  .home__track:nth-child(5) .home__track_head { margin-bottom: 24px; }
  .home__track:nth-child(4) .home__track_title,
  .home__track:nth-child(5) .home__track_title { font-size: 24px; margin-bottom: 18px; }
  .home__track:nth-child(4) .home__track_list,
  .home__track:nth-child(5) .home__track_list { margin-bottom: 24px; }
}

@media screen and (max-width: 640px) {
  .home__program_grid { grid-template-columns: 1fr; gap: 16px; }
  .home__track { padding: 24px 22px 20px; }
  .home__track_icon { width: 42px; height: 42px; border-radius: 10px; }
  .home__track_icon svg { width: 20px; height: 20px; }
  .home__track_title { font-size: 22px; }
}

@media (prefers-reduced-motion: reduce) {
  .home__track,
  .home__track::before,
  .home__track::after,
  .home__track_icon,
  .home__track_more,
  .home__track_more svg,
  .home__track_list li::before {
    transition: none !important;
  }
  .home__track:hover { transform: none; }
}

/* ---------- Аудитория (Block 6) ---------- */

/* Серый фон секции на всю ширину viewport */
.home__audience {
  background: #f5f6fb;
  padding: 96px 0;
  margin-top: 0;
}

/* Шапка блока */
.home__audience_head { 
  position: relative;
  z-index: 1;
  margin-bottom: 8px; 
  max-width: 820px;
  background: none;
}

.home__audience_eyebrow {
  font-family: var(--font-family);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: #5e2ced;
  margin-bottom: 16px;
}

/* Editorial-список категорий */
.home__audience_list {
  margin-top: 48px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.home__audience_item {
  position: relative;
  display: grid;
  grid-template-columns: 96px 1fr;
  gap: 32px;
  align-items: start;
  padding: 36px 24px;
  margin: 0 -24px;
  border-radius: 16px;
  transition: background 280ms ease, box-shadow 280ms ease, transform 280ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

/* Zebra: нечётные карточки — на белом фоне для разделения внутри серой секции */
.home__audience_item:nth-child(odd) {
  background: #fff;
}

.home__audience_item:nth-child(odd):hover {
  background: #fff;
  box-shadow: 0 14px 32px -16px rgba(94, 44, 237, 0.22);
  transform: translateY(-2px);
}

/* Чётные карточки — на фоне самой секции, мягкая фиолетовая подсветка на ховере */
.home__audience_item:nth-child(even):hover {
  background: rgba(94, 44, 237, 0.05);
}

.home__audience_item_num {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 44px;
  line-height: 1;
  color: #5e2ced;
  letter-spacing: -0.02em;
  transition: transform 320ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

.home__audience_item:hover .home__audience_item_num {
  transform: translateX(4px);
}

.home__audience_item_main {
  display: grid;
  gap: 24px;
}

.home__audience_item_head {
  display: flex;
  align-items: center;
  gap: 16px;
}

.home__audience_item_icon {
  width: 42px;
  height: 42px;
  border-radius: 11px;
  background: rgba(94, 44, 237, 0.10);
  color: #5e2ced;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition:
    background 260ms ease,
    color 260ms ease,
    transform 260ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.home__audience_item_icon svg {
  width: 22px;
  height: 22px;
  display: block;
}

.home__audience_item:hover .home__audience_item_icon {
  background: #5e2ced;
  color: #fff;
  transform: rotate(-4deg) scale(1.04);
}

.home__audience_item_title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 28px;
  line-height: 115%;
  color: var(--colors-gray-light-mode-700);
  margin: 0;
}

.home__audience_item_cols {
  display: grid;
  grid-template-columns: 1fr 1.6fr;
  gap: 24px 48px;
}

.home__audience_item_col_label {
  font-family: var(--font-family);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--colors-gray-light-mode-500);
  margin-bottom: 10px;
}

.home__audience_item_col_text {
  margin: 0;
  font-family: var(--font-family);
  font-size: 15.5px;
  line-height: 158%;
  color: var(--colors-gray-light-mode-700);
}

/* HOW — форматы взаимодействия */
.home__audience_formats {
  margin-top: 48px;
  padding-top: 32px;
  border-top: 1px solid rgba(94, 44, 237, 0.10);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px 24px;
}

.home__audience_formats_label {
  font-family: var(--font-family);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: var(--colors-gray-light-mode-500);
  flex: 0 0 auto;
}

.home__audience_formats_chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  flex: 1;
}

.home__audience_chip {
  display: inline-flex;
  align-items: center;
  padding: 8px 14px;
  border-radius: 999px;
  font-family: var(--font-family);
  font-size: 14px;
  font-weight: 500;
  color: var(--colors-gray-light-mode-700);
  background: #fff;
  border: 1px solid rgba(94, 44, 237, 0.18);
  transition:
    border-color 220ms ease,
    background 220ms ease,
    color 220ms ease,
    transform 220ms cubic-bezier(0.2, 0.7, 0.2, 1);
  cursor: default;
}
.home__audience_chip:hover {
  border-color: #5e2ced;
  background: rgba(94, 44, 237, 0.06);
  color: #5e2ced;
  transform: translateY(-1px);
}

/* SCALE + MANIFESTO */
.home__audience_summary {
  margin-top: 56px;
  padding-top: 48px;
  border-top: 1px solid rgba(94, 44, 237, 0.10);
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 48px;
  align-items: stretch;
}

.home__audience_scale_label {
  font-family: var(--font-family);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: var(--colors-gray-light-mode-500);
  margin-bottom: 24px;
}

.home__audience_scale_grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px 16px;
}

.home__audience_scale_item {
  position: relative;
  padding-left: 16px;
}
.home__audience_scale_item::before {
  content: "";
  position: absolute;
  left: 0; top: 4px; bottom: 4px;
  width: 2px;
  background: linear-gradient(180deg, #5e2ced 0%, rgba(94, 44, 237, 0.25) 100%);
  border-radius: 2px;
}

.home__audience_scale_item_value {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 44px;
  line-height: 1;
  color: #5e2ced;
  white-space: nowrap;
}

.home__audience_scale_item_label {
  margin-top: 8px;
  font-family: var(--font-family);
  font-size: 13px;
  line-height: 140%;
  color: var(--colors-gray-light-mode-500);
}

/* Манифест-цитата справа */
.home__audience_manifesto {
  position: relative;
  margin: 0;
  padding: 32px 32px 32px 56px;
  background: rgba(94, 44, 237, 0.04);
  border-radius: 16px;
  border-left: 3px solid #5e2ced;
  display: flex;
  align-items: center;
}
.home__audience_manifesto_mark {
  position: absolute;
  top: 8px;
  left: 22px;
  font-family: var(--second-family);
  font-size: 64px;
  line-height: 1;
  color: #5e2ced;
  opacity: 0.45;
  user-select: none;
}
.home__audience_manifesto p {
  margin: 0;
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 20px;
  line-height: 140%;
  color: var(--colors-gray-light-mode-700);
}

/* Адаптив блока */
@media screen and (max-width: 1080px) {
  .home__audience { padding: 80px 0; }
  .home__audience_summary { grid-template-columns: 1fr; gap: 36px; }
  .home__audience_scale_grid { grid-template-columns: repeat(3, 1fr); }
  .home__audience_item { grid-template-columns: 72px 1fr; gap: 24px; padding: 36px 20px; margin: 0 -20px; }
  .home__audience_item_num { font-size: 36px; }
  .home__audience_item_title { font-size: 24px; }
  .home__audience_item_cols { grid-template-columns: 1fr 1.4fr; gap: 20px 32px; }
}

@media screen and (max-width: 760px) {
  .home__audience { padding: 64px 0; }
  .home__audience_item {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 32px 16px;
    margin: 0 -16px;
  }
  .home__audience_item_num { font-size: 32px; }
  .home__audience_item_title { font-size: 22px; }
  .home__audience_item_cols { grid-template-columns: 1fr; gap: 18px; }
  .home__audience_formats {
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    margin-top: 40px;
    padding-top: 28px;
  }
  .home__audience_scale_grid { grid-template-columns: 1fr; gap: 18px; }
  .home__audience_scale_item_value { font-size: 36px; }
  .home__audience_manifesto { padding: 28px 24px 28px 48px; }
  .home__audience_manifesto p { font-size: 17px; }
  .home__audience_manifesto_mark { font-size: 52px; }
}

@media (prefers-reduced-motion: reduce) {
  .home__audience_item,
  .home__audience_item_num,
  .home__audience_item_icon,
  .home__audience_chip {
    transition: none !important;
  }
  .home__audience_item:hover .home__audience_item_num { transform: none; }
  .home__audience_item:hover .home__audience_item_icon { transform: none; }
}

/* ---------- Что ждёт участников (Block 7) — переиспользует home__card_content ---------- */

.home__await_list {
  list-style: none;
  margin: 16px 0 0;
  padding: 0;
}
.home__await_list li {
  position: relative;
  padding-left: 32px;
  font-family: var(--font-family);
  font-size: 16px;
  line-height: 150%;
  color: var(--colors-gray-light-mode-700);
  margin-bottom: 14px;
}
.home__await_list li::before {
  content: "›";
  position: absolute;
  left: 0;
  top: -3px;
  color: var(--brand-600);
  font-weight: 700;
  font-size: 22px;
}

/* ---------- Москва (Block 8) ---------- */

/* ---------- Moscow block — переработан ---------- */

/* Верх: слева текст, справа визуал */
.home__moscow_top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr);
  gap: 48px;
  align-items: center;
}

.home__moscow_eyebrow {
  font-family: var(--font-family);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: #5e2ced;
  margin-bottom: 16px;
}

.home__moscow_title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 48px;
  line-height: 110%;
  color: var(--colors-gray-light-mode-700);
  margin: 0 0 20px;
}

.home__moscow_lead {
  margin: 0;
  font-family: var(--font-family);
  font-size: 17px;
  line-height: 160%;
  color: var(--colors-gray-light-mode-500);
  max-width: 520px;
}

/* Визуальная карточка */
.home__moscow_visual {
  position: relative;
}

.home__moscow_visual_inner {
  position: relative;
  border-radius: 24px;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  background: #0c0a2e;
  box-shadow: 0 24px 48px -16px rgba(94, 44, 237, 0.25);
}

.home__moscow_visual_inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.home__moscow_visual_shade {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(120% 80% at 50% 50%, rgba(12, 10, 46, 0) 30%, rgba(12, 10, 46, 0.35) 100%),
    linear-gradient(180deg, rgba(12, 10, 46, 0.25) 0%, rgba(12, 10, 46, 0.40) 100%);
  pointer-events: none;
}

/* Бейджи на фото — frosted-glass */
.home__moscow_badges {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.home__moscow_badge {
  position: absolute;
  display: inline-flex;
  flex-direction: column;
  padding: 14px 16px;
  min-width: 124px;
  background: rgba(20, 14, 50, 0.50);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
          backdrop-filter: blur(14px) saturate(140%);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 14px;
  color: #fff;
  pointer-events: auto;
  transition: transform 260ms cubic-bezier(0.2, 0.7, 0.2, 1), border-color 220ms ease;
}

.home__moscow_badge:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 255, 255, 0.32);
}

.home__moscow_badge_value {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 26px;
  line-height: 1;
  color: #fff;
}

.home__moscow_badge_label {
  margin-top: 6px;
  font-family: var(--font-family);
  font-size: 12px;
  font-weight: 500;
  line-height: 130%;
  color: rgba(255, 255, 255, 0.88);
}

.home__moscow_badge--tl { top: 20px;    left: 20px;  }
.home__moscow_badge--tr { top: 20px;    right: 20px; }
.home__moscow_badge--bl { bottom: 20px; left: 20px;  }
.home__moscow_badge--br { bottom: 20px; right: 20px; }

/* Низ: 6 компактных карточек */
.home__moscow_features {
  margin-top: 64px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.home__moscow_feature {
  position: relative;
  background: #fff;
  border: 1px solid rgba(94, 44, 237, 0.10);
  border-radius: 16px;
  padding: 28px 26px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition:
    border-color 240ms ease,
    box-shadow 280ms ease,
    transform 240ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

.home__moscow_feature::before {
  content: "";
  position: absolute;
  left: 0; top: 24px; bottom: 24px;
  width: 2px;
  background: #5e2ced;
  border-radius: 0 2px 2px 0;
  transform: scaleY(0.25);
  transform-origin: top center;
  transition: transform 380ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

.home__moscow_feature:hover {
  border-color: rgba(94, 44, 237, 0.32);
  box-shadow: 0 14px 28px -10px rgba(94, 44, 237, 0.18);
  transform: translateY(-3px);
}
.home__moscow_feature:hover::before { transform: scaleY(1); }

.home__moscow_feature_icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: rgba(94, 44, 237, 0.08);
  color: #5e2ced;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 4px;
  transition:
    background 260ms ease,
    color 260ms ease,
    transform 260ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.home__moscow_feature_icon svg {
  width: 22px;
  height: 22px;
  display: block;
}

.home__moscow_feature:hover .home__moscow_feature_icon {
  background: #5e2ced;
  color: #fff;
  transform: rotate(-4deg) scale(1.04);
}

.home__moscow_feature_title {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 20px;
  line-height: 120%;
  color: var(--colors-gray-light-mode-700);
}

.home__moscow_feature_text {
  margin: 0;
  font-family: var(--font-family);
  font-size: 14.5px;
  line-height: 150%;
  color: var(--colors-gray-light-mode-500);
}

/* Адаптив Moscow-блока */
@media screen and (max-width: 1080px) {
  .home__moscow_top { grid-template-columns: 1fr; gap: 36px; }
  .home__moscow_title { font-size: 40px; }
  .home__moscow_features { grid-template-columns: repeat(2, 1fr); }
  .home__moscow_lead { max-width: none; }
}


/* ---------- Архив 2025 (Block 9) — точечный паттерн поверх градиента ---------- */

#archive .home__market_link {
  position: relative;
  isolation: isolate;
}

#archive .home__market_link::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url('../assets/intro-bg-dots.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  mix-blend-mode: screen;
  opacity: 0.55;
  pointer-events: none;
  z-index: 1;
  border-radius: inherit;
}


/* ---------- Контакты: правая «event-карточка» (Паспорт форума) ---------- */

/* Сброс наследия от .home__contacts_map div { width:100%;height:100%;border-radius:12px; } */
.home__contacts_map.home__event-card,
.home__contacts_map.home__event-card div {
  width: auto;
  height: auto;
  border-radius: 0;
  overflow: visible;
}

.home__contacts_map.home__event-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: 20px;
  background: linear-gradient(160deg, #5e2ced 0%, #4a1fd7 100%);
  color: #fff;
  width: 40%;
  height: 100%;
  display: flex;
}

/* Точечный паттерн поверх фиолетового градиента */
.home__contacts_map.home__event-card .home__event-card_bg {
  position: absolute;
  inset: 0;
  background-image: url('../assets/intro-bg-dots.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  mix-blend-mode: screen;
  opacity: 0.5;
  pointer-events: none;
  z-index: 0;
}

/* Декоративные градиентные засветки */
.home__contacts_map.home__event-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 90% 12%, rgba(250, 95, 38, 0.22) 0%, transparent 45%),
    radial-gradient(circle at 5% 95%, rgba(255, 255, 255, 0.10) 0%, transparent 45%);
  pointer-events: none;
  z-index: 0;
}

.home__contacts_map.home__event-card .home__event-card_inner {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 44px 40px;
  display: flex;
  flex-direction: column;
  gap: 26px;
}

.home__contacts_map.home__event-card .home__event-card_eyebrow {
  font-family: var(--font-family);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.20em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.65);
}

.home__contacts_map.home__event-card .home__event-card_row {
  display: flex;
  gap: 18px;
  align-items: flex-start;
}

.home__contacts_map.home__event-card .home__event-card_icon {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.16);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.home__contacts_map.home__event-card .home__event-card_icon svg {
  width: 22px;
  height: 22px;
  display: block;
}

.home__contacts_map.home__event-card .home__event-card_row_content {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.home__contacts_map.home__event-card .home__event-card_label {
  font-family: var(--font-family);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.65);
  margin-bottom: 6px;
}

.home__contacts_map.home__event-card .home__event-card_value {
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 26px;
  line-height: 1.1;
  color: #fff;
  letter-spacing: -0.01em;
}

.home__contacts_map.home__event-card .home__event-card_value--lg {
  font-size: 32px;
}

.home__contacts_map.home__event-card .home__event-card_sub {
  margin-top: 8px;
  font-family: var(--font-family);
  font-size: 14px;
  line-height: 150%;
  color: rgba(255, 255, 255, 0.78);
}

.home__contacts_map.home__event-card .home__event-card_divider {
  height: 1px;
  background: linear-gradient(90deg,
    rgba(255, 255, 255, 0.04) 0%,
    rgba(255, 255, 255, 0.22) 50%,
    rgba(255, 255, 255, 0.04) 100%);
}

.home__contacts_map.home__event-card .home__event-card_cta {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 14px 20px;
  border-radius: 12px;
  background: #fa5f26;
  color: #fff;
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 15px;
  text-decoration: none;
  box-shadow: 0 8px 20px -8px rgba(250, 95, 38, 0.55);
  transition:
    background 220ms ease,
    transform 220ms cubic-bezier(0.2, 0.7, 0.2, 1),
    box-shadow 220ms ease;
}

.home__contacts_map.home__event-card .home__event-card_cta:hover {
  background: #ff7142;
  transform: translateY(-2px);
  box-shadow: 0 14px 28px -10px rgba(250, 95, 38, 0.6);
}

.home__contacts_map.home__event-card .home__event-card_cta svg {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

/* Адаптив event-карточки */
@media screen and (max-width: 980px) {
  .home__contacts_map.home__event-card {
    width: 100%;
    height: auto;
  }
  .home__contacts_map.home__event-card .home__event-card_inner {
    padding: 36px 28px;
    gap: 22px;
  }
  .home__contacts_map.home__event-card .home__event-card_value--lg {
    font-size: 28px;
  }
}

@media screen and (max-width: 480px) {
  .home__contacts_map.home__event-card .home__event-card_inner {
    padding: 28px 22px;
  }
  .home__contacts_map.home__event-card .home__event-card_value {
    font-size: 22px;
  }
  .home__contacts_map.home__event-card .home__event-card_value--lg {
    font-size: 24px;
  }
  .home__contacts_map.home__event-card .home__event-card_cta {
    width: 100%;
  }
}

@media screen and (max-width: 720px) {
  .home__moscow_title { font-size: 32px; }
  .home__moscow_visual_inner { aspect-ratio: 4 / 3; border-radius: 20px; }
  .home__moscow_badge { padding: 10px 12px; min-width: auto; border-radius: 12px; }
  .home__moscow_badge_value { font-size: 20px; }
  .home__moscow_badge_label { font-size: 11px; margin-top: 4px; }
  .home__moscow_badge--tl,
  .home__moscow_badge--tr,
  .home__moscow_badge--bl,
  .home__moscow_badge--br { top: auto; right: auto; bottom: auto; left: auto; }
  /* На очень узких экранах перерасставляем бейджи компактнее */
  .home__moscow_badge--tl { top: 12px;    left: 12px;  }
  .home__moscow_badge--tr { top: 12px;    right: 12px; }
  .home__moscow_badge--bl { bottom: 12px; left: 12px;  }
  .home__moscow_badge--br { bottom: 12px; right: 12px; }
  .home__moscow_features {
    grid-template-columns: 1fr;
    margin-top: 48px;
  }
  .home__moscow_feature { padding: 22px 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .home__moscow_feature,
  .home__moscow_feature::before,
  .home__moscow_feature_icon,
  .home__moscow_badge {
    transition: none !important;
  }
  .home__moscow_feature:hover { transform: none; }
}

/* ---------- News tabs (Block 10) ---------- */

.home__news_tabs {
  margin-top: 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.home__news_tab {
  border: 1px solid var(--colors-border-border-primary);
  background: var(--colors-background-bg-primary);
  border-radius: 999px;
  padding: 8px 18px;
  font-family: var(--font-family);
  font-weight: 600;
  font-size: 14px;
  color: var(--colors-gray-light-mode-700);
  cursor: pointer;
  transition: all 200ms ease;
}
.home__news_tab:hover {
  background: var(--gray-true-100);
}
.home__news_tab.is-active {
  background: var(--brand-600);
  color: #fff;
  border-color: var(--brand-600);
}

/* ---------- Subscribe form (Block 11) ---------- */

.home__subscribe_form {
  margin-top: 24px;
  max-width: 500px;
}
.home__subscribe_form_row {
  display: flex;
  gap: 8px;
}
.home__subscribe_input {
  flex-grow: 1;
  border: 1px solid var(--colors-border-border-primary);
  border-radius: 8px;
  padding: 12px 14px;
  font-family: var(--font-family);
  font-size: 16px;
  background: #fff;
  color: var(--colors-gray-light-mode-700);
  outline: none;
  transition: border-color 200ms;
}
.home__subscribe_input:focus {
  border-color: var(--brand-600);
}
.home__subscribe_btn {
  border: 1px solid #fa5f26;
  border-radius: 8px;
  padding: 12px 24px;
  background: #fa5f26;
  font-family: var(--second-family);
  font-weight: 400;
  font-size: 16px;
  color: #fff;
  cursor: pointer;
  transition: opacity 200ms;
  white-space: nowrap;
}
.home__subscribe_btn:hover {
  opacity: 0.9;
}
.home__subscribe_check {
  margin-top: 12px;
  display: flex;
  gap: 8px;
  align-items: flex-start;
  font-family: var(--font-family);
  font-size: 13px;
  line-height: 140%;
  color: var(--colors-gray-light-mode-500);
}
.home__subscribe_check a {
  color: var(--brand-700);
  text-decoration: underline;
}

.home__contacts_note {
  margin-top: 24px;
  font-family: var(--font-family);
  font-size: 13px;
  line-height: 150%;
  color: var(--colors-gray-light-mode-500);
  max-width: 520px;
}

/* ---------- Адаптив ---------- */

@media screen and (max-width: 1100px) {
  .home__program_grid { grid-template-columns: repeat(2, 1fr); }
}

@media screen and (max-width: 980px) {
  .home__program_title { font-size: 48px; }
}

@media screen and (max-width: 768px) {
  .home__program_title { font-size: 40px; }
  .home__program_lead { font-size: 16px; }
  .home__program_grid { grid-template-columns: 1fr; }
  .home__track_title { font-size: 22px; }
  .home__subscribe_form_row { flex-direction: column; }
  .home__subscribe_btn { width: 100%; }
}
