/* Карточка возможности платформы: иллюстрация и подпись, по углам два
   размытых пятна — голубое сверху справа и песочное снизу слева.
   Диаметр пятна равен высоте карточки, размытие — пятая часть диаметра. */

.feature-card {
  --glow-blur: 60px;

  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
  overflow: hidden;
  padding: var(--space-6);
  border-radius: var(--radius-xl);
  background: var(--bg-surface);
  box-shadow: 0 8px 24px -4px rgba(156, 141, 128, 0.1);
}

.feature-card::before,
.feature-card::after {
  content: "";
  position: absolute;
  height: 100%;
  aspect-ratio: 1;
  border-radius: var(--radius-full);
  opacity: 0.3;
  filter: blur(var(--glow-blur));
  pointer-events: none;
}

.feature-card::before {
  top: 0;
  inset-inline-end: 0;
  background: var(--action-sky-bg-hover);
  transform: translate(calc(50% * var(--dir-x)), -50%);
}

.feature-card::after {
  bottom: 0;
  inset-inline-start: 0;
  background: var(--sand-300);
  transform: translate(calc(-50% * var(--dir-x)), 50%);
}

.feature-card__media {
  position: relative;
  flex: 1 1 auto;
  min-height: 160px;
  border-radius: var(--radius-lg);
  background-image: var(--media-image);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.feature-card__media--contain { background-size: contain; }

.feature-card__media--shadow { box-shadow: 0 8px 24px -4px rgba(156, 141, 128, 0.1); }

.feature-card__copy {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}

.feature-card__title {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: var(--fs-h4);
  line-height: var(--lh-snug);
  letter-spacing: var(--ls-heading);
  color: var(--text-strong);
}

.feature-card__text {
  font-size: var(--fs-base);
  line-height: var(--lh-relaxed);
  color: var(--text-body);
}

/* На планшете иллюстрация ниже: так задано макетом. */
@media (min-width: 768px) {
  .feature-card__media { min-height: 134px; }
}

/* Широкая карточка: подпись слева, иллюстрация справа. Высоту здесь задаёт
   полоса плитки, картинка растягивается на остаток. */
@media (min-width: 1024px) {
  .feature-card__media { min-height: 0; }

  /* row-reverse, а не row: в разметке иллюстрация идёт первой, как во всех
     остальных карточках, а в макете широкая ставит её справа от подписи. */
  .feature-card--wide {
    flex-direction: row-reverse;
    align-items: center;
    gap: var(--space-5);
  }

  /* На 1440 это ровно 558 и 246 — сумма даёт внутреннюю ширину карточки.
     Ниже 1440 обе колонки ужимаются пропорционально: фиксированные 558
     в контейнер 1024 не влезают и выдавливают подпись. */
  .feature-card--wide .feature-card__media {
    flex: 0 1 558px;
    align-self: stretch;
    min-width: 0;
  }

  .feature-card--wide .feature-card__copy {
    flex: 0 1 246px;
    min-width: 0;
  }
}
