/* Home-only motion: photographs crossfade while the headline and CTAs stay still. */
.hero .hero-visual {
  background: #241519;
  animation: none;
  transform: none;
  overflow: hidden;
}
.hero-frame {
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 1.6s ease-in-out;
}
.hero-frame.is-active { opacity: 1; }
.hero-frame img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: 72% center;
}
.hero.is-slideshow-ready .hero-frame img {
  animation: hero-scene-drift 20s ease-in-out infinite alternate;
  animation-play-state: paused;
}
.hero.is-slideshow-playing .hero-frame img { animation-play-state: running; }
@keyframes hero-scene-drift {
  from { transform: scale(1); }
  to { transform: scale(1.045); }
}
.hero[data-hero-slideshow] .hero-shade { pointer-events: none; }
.slideshow-motion-toggle {
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.slideshow-motion-toggle:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
@media (min-width: 801px) {
  .hero[data-hero-slideshow] .hero-shade {
    background: linear-gradient(90deg, rgba(36, 21, 25, .82) 0%, rgba(36, 21, 25, .64) 50%, rgba(36, 21, 25, .08) 82%),
      linear-gradient(0deg, rgba(36, 21, 25, .5), transparent 46%);
  }
  .hero .hero-visual { overflow: visible; }
  .hero-frame { overflow: hidden; }
  .hero[data-hero-slideshow] .hero-note { bottom: 50px; }
}
@media (max-width: 800px) {
  .hero-frame img { object-position: 90% center; }
  /* Mobile places the headline on ivory, not over the dark photograph. */
  .hero[data-hero-slideshow] h1 em { color: var(--gold-text); }
}
@media (prefers-reduced-motion: reduce) {
  .hero-frame { transition: none; }
  .hero.is-slideshow-ready .hero-frame img { animation: none; transform: none; }
}
