.hero__portrait { overflow: hidden; }
.hero__portrait-image,
.hero__portrait canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
  pointer-events: none;
}
.hero__portrait canvas { opacity: 0; transition: opacity .2s ease; }
.hero__portrait.is-warping canvas { opacity: 1; }
.hero__portrait.is-warping .hero__portrait-image { visibility: hidden; }
.hero__discover {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 30px;
  padding: 24px;
  color: #fff;
  text-align: center;
  font-family: 'Poppins', sans-serif;
  font-size: 34px;
  line-height: 1.15;
  letter-spacing: -1px;
}
.hero__discover-arrow { font-size: 48px; transition: transform .35s ease; }
.hero__visual--middle.is-hovered .hero__discover-arrow { transform: translateY(9px); }
.hero__visual-hit--middle:focus-visible { outline: 3px solid white; outline-offset: 8px; }
.hero__visual-stack:has(.hero__visual-hit--middle:focus-visible) .hero__visual--middle {
  z-index: 21 !important;
  opacity: 1;
  transform: translate(-50%, -50%) rotate(2deg) translate(0, -35px) scale(1.1);
}
@media (prefers-reduced-motion: reduce) {
  .hero__visual, .hero__discover-arrow { transition: none; }
  .hero__visual--middle.is-hovered .hero__discover-arrow { transform: none; }
}
