/* The stage never pins, grows or creates empty scroll distance.
   Shot one and the permanent figcaption are the complete no-JS baseline. */
.studio-contact-scene {
  position: relative;
  width: var(--contact-scene-width);
  aspect-ratio: var(--contact-scene-aspect);
  margin: var(--contact-scene-margin) 0;
  overflow: hidden;
  pointer-events: none;
  mix-blend-mode: multiply;
}
.studio-contact-scene [data-scene-shot] {
  position: absolute;
  inset: 0;
  display: block;
  width: var(--contact-scene-width);
  height: var(--contact-scene-width);
  object-fit: contain;
  opacity: var(--contact-scene-hidden);
  transition: opacity var(--contact-scene-fade) var(--contact-scene-ease);
}
.studio-contact-scene [data-scene-shot="1"] {
  opacity: var(--contact-scene-visible);
}
.studio-contact-scene[data-scene-current="2"] [data-scene-shot="1"],
.studio-contact-scene[data-scene-current="3"] [data-scene-shot="1"] {
  opacity: var(--contact-scene-hidden);
}
.studio-contact-scene[data-scene-current="2"] [data-scene-shot="2"],
.studio-contact-scene[data-scene-current="3"] [data-scene-shot="3"] {
  opacity: var(--contact-scene-visible);
}
.studio-contact-scene.is-contact-scene-still [data-scene-shot] {
  transition: none;
}
.is-motion-paused .studio-contact-scene [data-scene-shot] {
  opacity: var(--contact-scene-hidden);
  transition: none;
}
.is-motion-paused .studio-contact-scene [data-scene-shot="1"] {
  opacity: var(--contact-scene-visible);
}
@media (prefers-reduced-motion: reduce) {
  .studio-contact-scene [data-scene-shot] {
    opacity: var(--contact-scene-hidden) !important;
    transition: none;
  }
  .studio-contact-scene [data-scene-shot="1"] {
    opacity: var(--contact-scene-visible) !important;
  }
}
