/* L.M. Campbell | Option A — understated scroll reveals and depth.
   Standalone layer: no edits to grid geometry, media sizing, or checkout forms.
   Progressive enhancement: content is never hidden unless JS has armed the observer. */
@media (prefers-reduced-motion: no-preference) {
  html.lm-motion-ready .lm-reveal {
    transition: opacity 650ms cubic-bezier(.22,1,.36,1),
                translate 650ms cubic-bezier(.22,1,.36,1);
    transition-delay: 0ms;
  }
  html.lm-motion-ready .lm-reveal:not(.lm-visible) {
    opacity: 0;
    translate: 0 16px;
  }
  html.lm-motion-ready .lm-reveal.lm-visible {
    opacity: 1;
    translate: 0 0;
  }
  /* Small stagger, never long enough to slow page reading. */
  html.lm-motion-ready .proof-grid .proof-card:nth-child(4n+2),
  html.lm-motion-ready .standard-grid article:nth-child(4n+2),
  html.lm-motion-ready .decision-grid article:nth-child(3n+2),
  html.lm-motion-ready .service-lines a:nth-child(4n+2),
  html.lm-motion-ready .archive-choices a:nth-child(2n+2),
  html.lm-motion-ready .brand-cloud span:nth-child(3n+2),
  html.lm-motion-ready .masonry figure:nth-child(3n+2) { transition-delay: 85ms; }
  html.lm-motion-ready .proof-grid .proof-card:nth-child(4n+3),
  html.lm-motion-ready .standard-grid article:nth-child(4n+3),
  html.lm-motion-ready .decision-grid article:nth-child(3n+3),
  html.lm-motion-ready .service-lines a:nth-child(4n+3),
  html.lm-motion-ready .brand-cloud span:nth-child(3n+3),
  html.lm-motion-ready .masonry figure:nth-child(3n+3) { transition-delay: 170ms; }
  html.lm-motion-ready .proof-grid .proof-card:nth-child(4n+4),
  html.lm-motion-ready .standard-grid article:nth-child(4n+4),
  html.lm-motion-ready .service-lines a:nth-child(4n+4) { transition-delay: 255ms; }

  /* Desktop-only parallax: media moves, the section and its content never do. */
  @media (min-width: 1024px) {
    .lm-parallax { overflow: hidden; }
    .lm-parallax > .lm-parallax-media {
      transform: translate3d(0, var(--lm-parallax-y, 0px), 0) scale(1.07);
      transform-origin: center center;
    }
    .lm-parallax.lm-parallax-object { overflow: visible; }
    .lm-parallax.lm-parallax-object > .lm-parallax-media {
      transform: translate3d(0, var(--lm-parallax-y, 0px), 0);
    }
  }
  @media (hover: hover) and (pointer: fine) {
    .lm-hover-image { overflow: hidden; }
    .lm-hover-image > .lm-hover-media {
      transition: scale 480ms cubic-bezier(.22,1,.36,1);
    }
    .lm-hover-image:hover > .lm-hover-media { scale: 1.025; }
    /* Figure captions stay readable; only the photograph inside the figure zooms. */
    .masonry .lm-hover-image { overflow: hidden; }
  }
}
@media (prefers-reduced-motion: reduce) {
  .lm-reveal, .lm-parallax-media, .lm-hover-media {
    opacity: 1 !important;
    translate: none !important;
    transform: none !important;
    scale: none !important;
    animation: none !important;
    transition: none !important;
  }
}
