/* Сетка промоблоков на главной: колонки скруглённых плашек фирменных цветов,
   каждая ведёт на /publications/ с фильтром по своей подборке или рынку.
   Данные — src/data/promo.js (порядок колонок и блоков, размеры, цвета,
   описания), число публикаций считается на сборке. Вид — со старой главной. */

.ids .ids__promo-grid {
  display: flex;
  gap: 0.2em;
  margin: 2em 0;

  @media (width < 768px) {
    flex-wrap: wrap;
  }
}

.ids .ids__promo-grid--cell {
  display: flex;
  flex-direction: column;
  gap: 0.2em;
  width: 33.3%;

  @media (width < 768px) {
    width: 100%;
  }
}

.ids a.ids__promo-card {
  display: block;
  /* Скругление — сквирклом через класс .ids__rounded в разметке,
     радиус переопределяем локально */
  --ids__radius: 2.9em;
  padding: 0.85em 1.2em 1em;
  background: var(--shift__promo-gray);
  color: var(--ids__text);
  text-decoration: none;
  transition: filter var(--ids__duration-base) var(--ids__easing-base);
}

/* Ховеры со старого сайта: сила и вид эффекта зависят от фона плашки —
   светлым поднимается контраст (тем сильнее, чем бледнее фон),
   тёмной — яркость и приглушение текста. Ховер мгновенно, расховер 0.3s */
.ids a.ids__promo-card:hover {
  transition-duration: var(--ids__duration-instant);
}

.ids a.ids__promo-card.orange:hover { filter: contrast(113%); }
.ids a.ids__promo-card.yellow:hover { filter: contrast(110%); }
.ids a.ids__promo-card.pink:hover { filter: contrast(109%); }
.ids a.ids__promo-card.gray:hover { filter: contrast(107%); }
.ids a.ids__promo-card.green:hover { filter: contrast(120%); }
.ids a.ids__promo-card.dark:hover { filter: brightness(1.2); }

/* На тёмной плашке текст приглушён и глушится ещё чуть сильнее по ховеру */
.ids a.ids__promo-card.dark .ids__promo-card--title,
.ids a.ids__promo-card.dark .ids__promo-card--description {
  opacity: 0.8;
  transition: opacity var(--ids__duration-base) var(--ids__easing-base);
}

.ids a.ids__promo-card.dark:hover .ids__promo-card--title,
.ids a.ids__promo-card.dark:hover .ids__promo-card--description {
  opacity: 0.7;
  transition-duration: var(--ids__duration-instant);
}

.ids .ids__promo-card--title {
  font-size: 1.42em;
  text-decoration: underline;
  text-decoration-thickness: 0.04em;
  text-underline-offset: 0.18em;
  text-decoration-color: color-mix(in srgb, currentColor 45%, transparent);
}

.ids .ids__promo-card--number {
  font-size: 1.42em;
  margin-left: 0.35em;
  opacity: 0.5;
}

.ids .ids__promo-card--description {
  font-size: 0.9em;
  margin-top: 1em;
  margin-bottom: 0;
}

/* Размеры плашек */
.ids a.ids__promo-card.XS { min-height: 5.3em; }
.ids a.ids__promo-card.S { min-height: 7.3em; }
.ids a.ids__promo-card.M { min-height: 8.3em; }
.ids a.ids__promo-card.L { min-height: 14em; }
.ids a.ids__promo-card.XL { min-height: 16.3em; }

@media (width < 768px) {
  .ids a.ids__promo-card.XS,
  .ids a.ids__promo-card.S,
  .ids a.ids__promo-card.M,
  .ids a.ids__promo-card.L,
  .ids a.ids__promo-card.XL {
    min-height: 5.3em;
  }
}

/* Цвета плашек; на тёмных — светлый текст */
.ids a.ids__promo-card.orange { background: var(--shift__promo-orange); }
.ids a.ids__promo-card.yellow { background: var(--shift__promo-yellow); }
.ids a.ids__promo-card.pink { background: var(--shift__promo-pink); }
.ids a.ids__promo-card.gray { background: var(--shift__promo-gray); }
.ids a.ids__promo-card.dark { background: var(--shift__promo-dark); color: var(--ids__background); }
.ids a.ids__promo-card.green { background: var(--shift__promo-green); color: var(--ids__background); }
