/* Motion utilities and reduced-motion overrides.
   Component-specific motion (card-lift, scroll-reveal) lives with the components. */

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }

  /* The universal rule above kills transition timing, but transforms in
     end states (card lift, image zoom) still snap to their final position.
     For a hover lift this reads as a confusing instant jump under
     reduced-motion preference. Opt out of the positional cue entirely
     and let the box-shadow change carry the affordance instead. */
  .recipe-card:hover,
  .recipe-card:focus-within {
    transform: none;
  }

  .recipe-card:hover .recipe-card__image,
  .recipe-card:focus-within .recipe-card__image {
    transform: none;
  }

  /* Stop the flower divider's spin under reduced-motion preference. */
  .shape-divider__shape--spin {
    animation: none;
  }
}
