/* One owner per animated surface: layout and artwork fitting stay in home-r10. */
.r10-motion-ready [data-r10-motion-feature] .r10-feature-media {
  translate: var(--r10-media-x, 0px) calc(var(--r10-media-y, 0px) + var(--r10-media-pointer-y, 0px));
  opacity: var(--r10-media-opacity, 1);
  clip-path: var(--r10-media-mask, none);
}
.r10-motion-ready [data-r10-motion-feature][data-r10-crop="allow"] .r10-feature-visual {
  scale: 1.035;
}
.r10-motion-ready [data-r10-motion-reveal] {
  translate: 0 var(--r10-reveal-y, 0px);
  opacity: var(--r10-reveal-opacity, 1);
  clip-path: var(--r10-reveal-mask, none);
}
.r10-motion-ready [data-r10-motion-parallax] {
  translate: 0 var(--r10-parallax-y, 0px);
}
.r10-motion-ready [data-r10-motion-magnetic] {
  translate: var(--r10-magnetic-x, 0px) var(--r10-magnetic-pointer-y, 0px);
}
.r10-motion-ready .r10-home [data-r10-hero-motion] .hero-media-backdrop {
  translate: var(--r10-hero-backdrop-x, 0px) var(--r10-hero-backdrop-pointer-y, 0px);
}
.r10-home .r10-sound-lines i { animation-play-state: paused; }
.r10-motion-ready .r10-home [data-r10-parallax][data-r10-in-view="true"] .r10-sound-lines i {
  animation-play-state: running;
}
.r10-roll-window {
  display: inline-grid;
  vertical-align: bottom;
  overflow: clip;
  line-height: inherit;
  margin-block-end: -.16em;
}
.r10-roll-original,
.r10-roll-duplicate {
  grid-area: 1 / 1;
  display: inline-block;
  /* Keep descenders inside both clipped layers without changing the line slot. */
  padding-block-end: .16em;
  transition: translate 650ms cubic-bezier(.16, 1, .3, 1);
}
.r10-roll-original { translate: 0 0; }
.r10-roll-duplicate { translate: 0 calc(100% + .16em); }
a:where(:hover, :focus-visible) > .r10-roll-window > .r10-roll-original { translate: 0 calc(-100% - .16em); }
a:where(:hover, :focus-visible) > .r10-roll-window > .r10-roll-duplicate { translate: 0 0; }
@media (hover: none), (pointer: coarse) {
  .r10-motion-ready [data-r10-motion-magnetic] { translate: none; }
  .r10-motion-ready .r10-home [data-r10-hero-motion] .hero-media-backdrop { translate: none; }
}
