/* =========================================================
   ГЛАВНЫЙ ЭКРАН: фоновое видео, затемнение, заголовок
   ========================================================= */

.hero {
  position: relative;
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  isolation: isolate;
}

.hero__video {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  z-index: -2;
  background: #050505;
}

/* Темный полупрозрачный оверлей для читаемости текста и шапки.
   Чтобы видео было ярче — уменьшите последние значения rgba. */
.hero__overlay {
  position: absolute; inset: 0; z-index: -1;
  background:
    linear-gradient(180deg, rgba(0,0,0,.65) 0%, rgba(0,0,0,.25) 30%, rgba(0,0,0,.45) 65%, rgba(0,0,0,.92) 100%),
    rgba(0, 0, 0, .35);
}

.hero__content {
  padding-top: calc(var(--header-h) + 64px);
  padding-bottom: clamp(40px, 6vw, 88px);
  row-gap: clamp(32px, 4vw, 56px);
}

.hero__title {
  grid-column: 1 / -1;
  font-size: clamp(56px, 13.2vw, 240px);
  font-weight: 600;
  line-height: .84;
  letter-spacing: -.06em;
}
.hero__title span { display: block; font-weight: 300; }

.hero__meta { grid-column: 1 / span 3; align-self: end; }
.hero__desc {
  grid-column: 4 / span 6;
  font-size: clamp(17px, 1.5vw, 22px);
  font-weight: 300;
  line-height: 1.5;
  color: rgba(255, 255, 255, .86);
}
.hero__scroll { grid-column: 12 / span 1; justify-self: end; align-self: end; }
.hero__scroll svg { width: 22px; height: 22px; animation: nudge 2.2s var(--ease) infinite; }

@keyframes nudge { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(6px); } }

@media (max-width: 900px) {
  .hero__meta { display: none; }
  .hero__desc { grid-column: 1 / span 11; }
}

@media (max-width: 680px) {
  .hero__desc { grid-column: 1 / -1; }
  .hero__scroll { display: none; }
}
