/* Hero Video Overlay — Manus-style плавность */
.hero {
  position: relative;
  overflow: hidden;
}
.hero video.hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  pointer-events: none;
  filter: saturate(1.05) contrast(1.02);
  /* Manus-style: чуть медленнее + лёгкое масштабирование для живости */
  animation: heroZoom 28s ease-in-out infinite alternate;
}
@keyframes heroZoom {
  from { transform: scale(1.0); }
  to { transform: scale(1.08); }
}
/* Затемнение для читаемости текста — 3 слоя: цветной градиент бренда + тёмный + soft */
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(180deg,
      rgba(15, 23, 42, 0.55) 0%,
      rgba(15, 23, 42, 0.40) 40%,
      rgba(15, 23, 42, 0.65) 100%);
}
/* Брендовый цветной акцент сверху */
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    radial-gradient(ellipse at top right,
      rgba(255, 127, 102, 0.22) 0%,
      transparent 55%),
    radial-gradient(ellipse at bottom left,
      rgba(72, 198, 199, 0.18) 0%,
      transparent 60%);
  mix-blend-mode: screen;
}
/* Контент выше видео */
.hero > * {
  position: relative;
  z-index: 3;
}
/* Уважение к prefers-reduced-motion */
@media (prefers-reduced-motion: reduce) {
  .hero video.hero-video { animation: none; }
}
/* Мобилка: если не поддерживается autoplay или слабый CPU — отключаем видео, остаётся hero-bg */
@media (max-width: 640px) {
  .hero video.hero-video { display: none; }
  .hero::before { background: rgba(15, 23, 42, 0.45); }
}
