/* Motion */

.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity var(--t-reveal) var(--ease),
    transform var(--t-reveal) var(--ease);
  transition-delay: var(--reveal-delay, 0ms);
  will-change: opacity, transform;
}
.reveal.is-in { opacity: 1; transform: translateY(0); }

/* Shop figure images — scale + warm-up */
.shop__cell img {
  opacity: 0;
  transform: scale(1.05);
  filter: saturate(.7) brightness(.95);
  transition:
    opacity var(--t-image) var(--ease),
    transform var(--t-image) var(--ease),
    filter var(--t-image) var(--ease);
  transition-delay: var(--reveal-delay, 0ms);
}
.shop__cell.is-in img {
  opacity: 1;
  transform: scale(1);
  filter: saturate(1) brightness(1);
}

/* Ken Burns hero — slower, gentler */
.hero__kenburns {
  animation: kenburns 26s ease-in-out infinite alternate;
  will-change: transform;
}
@keyframes kenburns {
  0%   { transform: scale(1.04) translate3d(-1%, -1%, 0); }
  100% { transform: scale(1.11) translate3d(1.5%, 1%, 0); }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
  .reveal { opacity: 1; transform: none; }
  .shop__cell img { opacity: 1; transform: none; filter: none; }
  .hero__kenburns { animation: none; transform: none; }
  .hero__scroll-arrow { animation: none; }
}
