/* Плавное появление снизу */
.fade-up {
  opacity: 0;
  transform: translateY(10px);
  animation: fadeUp .5s ease forwards;
}
@keyframes fadeUp {
  to { opacity: 1; transform: translateY(0); }
}

/* Мягкое увеличение картинки на ховере */
.card img {
  transition: transform .35s ease, filter .35s ease;
}
.card:hover img,
.card:focus-visible img {
  transform: scale(1.03);
  filter: saturate(1.05);
}

/* Подсветка карточки */
.card::after {
  content: "";
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.45), rgba(0,0,0,0));
  opacity: .9;
  transition: opacity .3s ease;
}
.card:hover::after,
.card:focus-visible::after { opacity: 1; }

/* Лёгкая тень при наведении */
.card {
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
  transition: transform .2s ease, box-shadow .2s ease;
}
.card:hover,
.card:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(0,0,0,.12);
}

/* Пульсация для хиро-иконок (не навязчивая) */
.hero__socials a img { animation: socialIn .5s ease both; }
.hero__socials a:nth-child(1) img { animation-delay: .05s; }
.hero__socials a:nth-child(2) img { animation-delay: .1s; }
.hero__socials a:nth-child(3) img { animation-delay: .15s; }
.hero__socials a:nth-child(4) img { animation-delay: .2s; }

@keyframes socialIn {
  from { opacity: 0; transform: translateY(6px) scale(.98); }
  to   { opacity: 1; transform: translateY(0)    scale(1); }
}
