.hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: var(--blue-dark);
}

.hero__video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(16,36,62,.88), rgba(16,36,62,.52), rgba(16,36,62,.16)),
    linear-gradient(180deg, rgba(16,36,62,.22), rgba(16,36,62,.4));
}

.hero__content {
  position: relative;
  z-index: 2;
  max-width: 760px;
  padding-top: 90px;
}

.hero h1 {
  color: var(--white);
  font-size: clamp(2rem, 5vw, 2.5rem);
  max-width: 660px;
  margin-bottom: 20px;
}

.hero p {
  color: rgba(255,255,255,.82);
  max-width: 620px;
  font-size: 1.08rem;
  margin-bottom: 30px;
}

.hero__actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}

@media (max-width: 720px) {
  .hero { min-height: 100svh; }
  .hero__overlay {
    background: linear-gradient(180deg, rgba(16,36,62,.86), rgba(16,36,62,.66));
  }
}
