/* Decorative movement only: no changes to dimensions, spacing or positioning. */
@media (prefers-reduced-motion: no-preference) {
  @keyframes lvr-arrive {
    from { opacity: 0; transform: translate3d(0, var(--lvr-lift, 24px), 0); }
    to { opacity: 1; transform: translate3d(0, 0, 0); }
  }
  @keyframes lvr-art-arrive {
    from { transform: scale(.955); }
    to { transform: scale(1); }
  }
  @keyframes lvr-photo-arrive {
    from { transform: scale(1.055); }
    to { transform: scale(1); }
  }
  main .lvr-enter {
    animation: lvr-arrive 760ms cubic-bezier(.22, 1, .36, 1) var(--lvr-delay, 0ms) both;
    will-change: opacity, transform;
  }
  main .lvr-art-enter {
    animation: lvr-art-arrive 760ms cubic-bezier(.22, 1, .36, 1) var(--lvr-delay, 0ms) both;
    transform-origin: center;
  }
  main .lvr-photo-enter {
    animation: lvr-photo-arrive 760ms cubic-bezier(.22, 1, .36, 1) var(--lvr-delay, 0ms) both;
    transform-origin: center;
  }
  main .lvr-motion-photo { transition: transform 500ms cubic-bezier(.22, 1, .36, 1); }
}
@media (max-width: 700px) and (prefers-reduced-motion: no-preference) {
  main .lvr-enter { --lvr-lift: 14px; animation-duration: 620ms; }
  main .lvr-art-enter, main .lvr-photo-enter { animation-duration: 620ms; }
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  main .refresh-media-visual:hover > .lvr-motion-photo,
  main .spot-art:hover > .lvr-motion-photo { transform: scale(1.025); }
}
@media (prefers-reduced-motion: reduce), print {
  main .lvr-enter, main .lvr-art-enter, main .lvr-photo-enter {
    animation: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
  main .lvr-motion-photo { transition: none !important; transform: none !important; }
}
