/* Keep photographs registered to their frames as the page scrolls. */
html #services .story-media > :is(img,.story-swatch),
html #services .story-media.is-visible > :is(img,.story-swatch),
#services .story-copy.reveal,
html .collection-page .photo-open:hover img {
  opacity:1; transform:none; transition:none;
}
@media (min-width:851px) and (prefers-reduced-motion:no-preference) {
  html[data-scroll-depth] #services .story-media > :is(img,.story-swatch) {
    transform:scale(1.009);
    transition:transform .62s cubic-bezier(.22,.65,.32,1);
  }
  html[data-scroll-depth] #services .story-media.is-visible > :is(img,.story-swatch) { transform:none; }
  html[data-scroll-depth] #services .story-copy.reveal h3,
  html[data-scroll-depth] .reel-copy h2 {
    opacity:.96; transform:translateY(4px);
    transition:opacity .42s ease-out,transform .42s ease-out;
  }
  html[data-scroll-depth] #services .story-copy.is-visible h3,
  html[data-scroll-depth] .reel-copy h2.depth-settled { opacity:1; transform:none; }
}
@media (min-width:851px) and (hover:hover) and (prefers-reduced-motion:no-preference) {
  html[data-scroll-depth] .collection-page .photo-open img { transition:transform .28s ease-out; }
  html[data-scroll-depth] .collection-page .photo-open:hover img { transform:scale(1.009); }
}
/* The section only has to settle once. Its copy stays close to reading position. */
@media (prefers-reduced-motion:no-preference) {
  html[data-scroll-depth] .reveal:where(:not(.is-visible)) { opacity:.9; transform:translateY(6px); }
  html[data-scroll-depth] .reveal.from-left:not(.is-visible) { transform:translateX(-6px); }
  html[data-scroll-depth] .reveal.from-right:not(.is-visible) { transform:translateX(6px); }
  html[data-scroll-depth] .reveal { transition-duration:.45s; transition-delay:0s; }
  @media (max-width:850px) {
    html[data-scroll-depth] .reveal,
    html[data-scroll-depth] .reveal:is(.from-left,.from-right) { transform:none; }
    html[data-scroll-depth] .reveal { transition-property:opacity; }
  }
}
html[data-depth-paused] .reveal { opacity:1; transform:none; transition:none; }
