html {
  scroll-behavior: smooth;
}

/* ===== СТИЛИ ДЛЯ КАРТОЧЕК НОВОСТЕЙ ===== */
/* Применяются только внутри блока #rec2487580221 */

/* Сетка карточек */
#rec2487580221 .t2823__items {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 30px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Карточка */
#rec2487580221 .t-cms__card {
  background: #ffffff !important;
  border: 1px solid #f0f0f0 !important;
  border-radius: 0 !important;
  padding: 30px !important;
  position: relative !important;
  overflow: hidden !important;
  z-index: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  transition: border-color 0.3s ease !important;
}

/* Анимация заливки фона слева направо */
#rec2487580221 .t-cms__card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 0% !important;
  height: 100% !important;
  background-color: #000c1f !important;
  transition: width 0.6s cubic-bezier(0.77, 0, 0.175, 1) !important;
  z-index: -1 !important;
}

#rec2487580221 .t-cms__card:hover::before {
  width: 100% !important;
}

/* Рамка при наведении */
#rec2487580221 .t-cms__card:hover {
  border-color: #00a8ff !important;
}

/* Медиа-ячейка (картинка) — 16:9 */
#rec2487580221 .t-cms__card__cell_media {
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  margin-bottom: 20px !important;
  background: #f0f0f0 !important;
  position: relative !important;
}

#rec2487580221 .t-cms__card__cell_media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

#rec2487580221 .t-cms__card__atom_placeholder {
  width: 100% !important;
  height: 100% !important;
  background: #e0e0e0 !important;
}

/* Текстовая ячейка */
#rec2487580221 .t-cms__card__cell_txt {
  padding: 0 !important;
  text-align: left !important;
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}

/* Заголовок */
#rec2487580221 .t-name {
  font-family: 'Ostrovsky', var(--t-headline-font, sans-serif) !important;
  font-size: 1.2rem !important;
  text-transform: uppercase !important;
  font-weight: 300 !important;
  color: #000c1f !important;
  transition: color 0.3s ease !important;
  margin: 0 0 10px 0 !important;
  line-height: 1.3 !important;
}

/* Описание */
#rec2487580221 .t-text_xs {
  font-size: 0.95rem !important;
  color: rgba(0, 12, 31, 0.7) !important;
  line-height: 1.5 !important;
  transition: color 0.3s ease !important;
  font-family: var(--t-text-font, sans-serif) !important;
  flex: 1 !important;
}

/* Дата */
#rec2487580221 .t-uptitle {
  font-size: 0.8rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: rgba(0, 12, 31, 0.5) !important;
  margin-bottom: 10px !important;
  display: block !important;
  transition: color 0.3s ease !important;
  font-family: var(--t-text-font, sans-serif) !important;
}

/* Скрываем разделители */
#rec2487580221 .t-cms__card__separator {
  display: none !important;
}

/* Цвет текста при наведении */
#rec2487580221 .t-cms__card:hover .t-uptitle,
#rec2487580221 .t-cms__card:hover .t-name,
#rec2487580221 .t-cms__card:hover .t-text_xs {
  color: #ffffff !important;
}

/* Ссылка на карточку — на весь блок */
#rec2487580221 .t-cms__card__link {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 2 !important;
}

/* "Читать далее" — псевдоэлемент на текстовой ячейке */
#rec2487580221 .t-cms__card__cell_txt::after {
  content: 'Читать далее →' !important;
  font-family: 'Ostrovsky', var(--t-headline-font, sans-serif) !important;
  font-size: 0.9rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: #00a8ff !important;
  display: inline-block !important;
  margin-top: 15px !important;
  transition: color 0.3s ease !important;
  position: relative !important;
  z-index: 3 !important;
}

#rec2487580221 .t-cms__card:hover .t-cms__card__cell_txt::after {
  color: #ffffff !important;
}
/* ===== КНОПКА "Все новости" ===== */
#rec2487580221 .t2823__buttons {
  text-align: center !important;
  margin-top: 90px !important;
}

/* Повышенная специфичность: добавляем родителя .t2823__buttons */
#rec2487580221 .t2823__buttons .t-btnflex.t-btnflex_type_bbutton {
  background: transparent !important;
  color: #000c1f !important;
  border: 1px solid #000c1f !important;
  border-radius: 0 !important;
  padding: 16px 40px !important;
  font-family: 'Ostrovsky', var(--t-headline-font, sans-serif) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-size: 0.9rem !important;
  transition: color 0.3s ease !important;
  position: relative !important;
  overflow: hidden !important;
  z-index: 1 !important;
  box-shadow: none !important;
}

/* Анимация заливки кнопки */
#rec2487580221 .t2823__buttons .t-btnflex.t-btnflex_type_bbutton::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 0% !important;
  height: 100% !important;
  background-color: #000c1f !important;
  transition: width 0.6s cubic-bezier(0.77, 0, 0.175, 1) !important;
  z-index: -1 !important;
}

#rec2487580221 .t2823__buttons .t-btnflex.t-btnflex_type_bbutton:hover::before {
  width: 100% !important;
}

/* Перебиваем inline-hover: добавляем .t2823__buttons и !important */
#rec2487580221 .t2823__buttons .t-btnflex.t-btnflex_type_bbutton:hover {
  background-color: transparent !important;
  color: #ffffff !important;
  border-color: #000c1f !important;
}

/* ===== АДАПТИВ ===== */
@media (max-width: 640px) {
  #rec2487580221 .t-cms__card {
    padding: 20px !important;
  }
  #rec2487580221 .t-name {
    font-size: 1rem !important;
  }
  #rec2487580221 .t-text_xs {
    font-size: 0.85rem !important;
  }
  #rec2487580221 .t-btnflex.t-btnflex_type_bbutton {
    padding: 14px 30px !important;
    font-size: 0.8rem !important;
  }
}