/* Image-only inertia: stable layout and hit areas, with enough crop for movement. */
.gravity-image {
  translate: 0 var(--gravity-offset, 0px);
  scale: 1.05;
  will-change: translate;
}

/* A gentle lift as new sections enter, without the old long hidden delay. */
.scroll-reveal {
  transform: translate3d(0, 14px, 0);
  transition-duration: 0.5s, 0.65s;
  transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}
.scroll-reveal.is-in-view,
.scroll-reveal:focus-within {
  transform: none;
}

@media (prefers-reduced-motion: reduce) {
  .gravity-image {
    translate: none;
    scale: none;
    will-change: auto;
  }
  .scroll-reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
