/* ─────────────────────────────────────────
   HERO SECTION
───────────────────────────────────────── */
.hero {
  position: relative;
  min-height: 85vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
}

.hero-video-layer {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 70% 20%;
  transition: opacity 1.5s ease-in-out;
}

.hero-video--inactive { opacity: 0; }

.hero-overlay {
  position: absolute;
  inset: 0;
}

.hero-overlay--vertical {
  background: linear-gradient(to top, var(--color-background) 0%, rgba(13,17,10,0.6) 50%, rgba(13,17,10,0.1) 100%);
}

.hero-overlay--horizontal {
  background: linear-gradient(to right, var(--color-background) 0%, rgba(13,17,10,0.9) 40%, rgba(13,17,10,0.2) 100%);
}

.hero-content {
  position: relative;
  z-index: 1;
  padding-top: var(--space-20);
  padding-bottom: var(--space-20);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-8);
}

.hero-heading { max-width: 640px; }

.hero-badges {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}


/* ─────────────────────────────────────────
   PAGE TITLE (subpages)
───────────────────────────────────────── */
.page-title-section {
  padding-top: var(--space-16);
  padding-bottom: var(--space-8);
  text-align: center;
  border-bottom: 1px solid var(--color-border);
}

.page-title-section .text-lead {
  max-width: 520px;
  margin: var(--space-4) auto 0;
}
