/* Full-bleed opening slide based on the Belarus campaign image. */
.hero {
  min-height: max(clamp(620px, 48vw, 760px), calc(100svh - 82px));
  padding: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background-color: #d3a889;
  background-image:
    linear-gradient(90deg, rgba(37, 22, 17, .76) 0%, rgba(37, 22, 17, .47) 30%, rgba(37, 22, 17, .04) 62%, rgba(37, 22, 17, 0) 100%),
    url("../assets/images/hero/wellumina-hero.png");
  background-repeat: no-repeat;
  background-position: center 55%;
  background-size: cover;
}

.hero-glow,
.hero-visual { display: none; }

.hero-layout {
  min-height: clamp(548px, 43vw, 688px);
  display: grid;
  grid-template-columns: minmax(0, 560px);
  align-items: center;
}

.hero-copy {
  max-width: 560px;
  padding: 58px 0 32px;
  text-shadow: 0 1px 20px rgba(0, 0, 0, .15);
}

.hero-copy .eyebrow { color: #fff0d2; }
.hero-copy .eyebrow span { background: #fff0d2; }
.hero-copy h1 { font-size: clamp(42px, 4.7vw, 64px); }
.hero-copy h1 em { color: #f6d096; }
.hero-text { color: #fff9f0; font-size: 16px; max-width: 450px; }
.hero-actions .button-gold { background: #d6101f; color: #fff; }
.hero-actions .button-gold:hover { background: #f23c4a; }
.hero-actions .button-text { color: #fff; }
.hero-foot { width: min(1180px, calc(100% - 48px)); }

.hero-copy.reveal {
  opacity: 1;
  transform: none;
  transition: none;
}

.hero-copy .eyebrow,
.hero-copy h1,
.hero-copy .hero-text,
.hero-copy .hero-actions {
  opacity: 0;
  will-change: transform, opacity, filter;
}

.hero-copy.visible .eyebrow { animation: hero-rise .6s cubic-bezier(.2,.75,.25,1) .05s both; }
.hero-copy.visible h1 { animation: hero-rise .8s cubic-bezier(.2,.75,.25,1) .19s both; }
.hero-copy.visible .hero-text { animation: hero-rise .65s cubic-bezier(.2,.75,.25,1) .48s both; }
.hero-copy.visible .hero-actions { animation: hero-cta .65s cubic-bezier(.2,.75,.25,1) .66s both; }

@keyframes hero-rise {
  from { opacity: 0; transform: translateY(24px); filter: blur(7px); }
  to { opacity: 1; transform: translateY(0); filter: blur(0); }
}

@keyframes hero-cta {
  from { opacity: 0; transform: translateY(18px) scale(.96); filter: blur(4px); }
  to { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
}

@media (max-width: 1100px) {
  .hero {
    min-height: max(630px, calc(100svh - 82px));
    background-position: 59% center;
  }

  .hero-layout {
    min-height: 560px;
    grid-template-columns: minmax(0, 500px);
  }

  .hero-copy h1 { font-size: clamp(40px, 5.5vw, 56px); }
  .hero-copy { padding-bottom: 24px; }
}

@media (max-width: 800px) {
  .hero {
    min-height: max(710px, calc(100svh - 68px));
    background-position: 59% center;
  }

  .hero-layout {
    min-height: 642px;
    grid-template-columns: 1fr;
    align-items: end;
  }

  .hero-copy { padding: 70px 0 35px; }
  .hero-text { max-width: 340px; font-size: 14px; }
  .hero-foot { display: flex; width: min(100% - 32px, 1180px); }
}

@media (max-width: 560px) {
  .hero {
    min-height: max(690px, calc(100svh - 68px));
    background-position: 68% center;
    background-image:
      linear-gradient(180deg, rgba(37, 22, 17, .18) 0%, rgba(37, 22, 17, .68) 67%, rgba(37, 22, 17, .86) 100%),
      url("../assets/images/hero/wellumina-hero.png");
  }

  .hero-layout { min-height: 622px; }
  .hero-copy { padding: 120px 0 27px; }
  .hero-copy h1 { font-size: clamp(38px, 10vw, 48px); }
  .hero-copy .eyebrow { font-size: 9px; letter-spacing: .13em; margin-bottom: 15px; }
  .hero-text { margin: 18px 0 24px; max-width: 305px; }
  .hero-actions { gap: 9px; }
  .hero-actions .button { padding: 14px 14px; font-size: 10px; gap: 15px; }
  .hero-foot { gap: 12px; padding-top: 12px; font-size: 8px; letter-spacing: .09em; }
  .hero-foot span + span::before { margin-right: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  .hero-copy .eyebrow,
  .hero-copy h1,
  .hero-copy .hero-text,
  .hero-copy .hero-actions {
    opacity: 1;
    animation: none !important;
  }
}
