/* ========== HERO VIDEO (Based on staging) ========== */
.hero-video-section {
  position: relative;
  height: 63vh;
  min-height: 420px;
  max-height: 612px;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

/* Fallback bg = primeiro frame do vídeo (poster) p/ evitar flash antes do
   vídeo carregar e no restore por bfcache. Imagem servida do próprio tema. */
.hero-video-section {
  background: #2b2b2b url('../../images/hero-poster.webp') center/cover no-repeat;
}

.hero-video-section video {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center center;
  z-index: 0;
}

/* LCP img: cobre o vídeo até o primeiro frame — removido via JS no canplay */
#hero-lcp {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}

.hero-video-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.45) 100%);
  z-index: 1;
}

.hero-video-content {
  position: relative; z-index: 2;
  text-align: center;
  padding: 0 24px 60px;
  max-width: 900px;
}

.hero-video-content h1 {
  font-family: var(--font);
  font-size: 48px;
  font-weight: 700;
  color: var(--white);
  line-height: 1.15;
  text-shadow: 0 2px 16px rgba(0,0,0,0.4);
  letter-spacing: -0.5px;
  font-style: normal;
}

/* ========== BRANDT STRIP ========== */
.brandt-strip {
  background: var(--light-bg); border-bottom: 1px solid #e9ecef;
  height: 54px; display: flex; align-items: center; overflow: hidden;
}
.brandt-strip .container {
  display: flex; align-items: center; justify-content: center; gap: 10px;
}
.brandt-strip p { font-size: 15px; color: var(--gray11); font-weight: 400; letter-spacing: 0.3px; }
.brandt-strip strong { font-weight: 700; color: var(--gray11); font-size: 16px; }
