.hero .photo-frame { --mood-photo-motion-ready: 1; }

/* Move the real photograph gently; never synthesize or reshape the product. */
.hero.has-photographic-motion .hero-visual { animation: none; }
.hero.has-photographic-motion .photo-frame > img {
  transform-origin: 50% 42%;
  animation: mood-photo-push 10s ease-in-out infinite alternate;
  animation-play-state: paused;
}
.hero.has-photographic-motion.is-photo-motion-playing .photo-frame > img {
  animation-play-state: running;
  will-change: transform;
}
@keyframes mood-photo-push {
  from { transform: scale(1.005); filter: brightness(1); }
  to { transform: scale(1.035); filter: brightness(1.025); }
}

.hero-photo-toggle {
  position: absolute;
  right: 14px;
  bottom: 12px;
  z-index: 4;
  min-height: 44px;
  padding: 8px 12px;
  border: 1px solid rgba(246,245,242,.3);
  border-radius: 99px;
  background: rgba(11,12,14,.85);
  color: var(--m-paper);
  font: inherit;
  font-size: 10px;
}
.hero-photo-toggle:focus-visible { outline: 2px solid var(--m-champagne); outline-offset: 4px; }
.hero-photo-toggle[hidden] { display: none; }
.hero.has-photographic-motion .photo-frame .photo-number { bottom: 68px; }
@media (prefers-reduced-motion: reduce) {
  .hero.has-photographic-motion .photo-frame > img {
    animation: none;
    transform: none !important;
    filter: none;
    will-change: auto;
  }
  .hero-photo-toggle { display: none; }
  .hero.has-photographic-motion .photo-frame .photo-number { bottom: 23px; }
}
