/* AB Beauty — scroll-triggered motion system */

@media (prefers-reduced-motion: no-preference) {
  [data-motion="fade-up"],
  .reveal,
  .reveal-up,
  [data-reveal] {
    opacity: 0;
    transform: translate3d(0, 28px, 0);
    transition:
      opacity 0.75s cubic-bezier(0.16, 1, 0.3, 1),
      transform 0.75s cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: calc(var(--motion-i, 0) * 0.06s);
    will-change: opacity, transform;
  }

  [data-motion="fade-left"] {
    opacity: 0;
    transform: translate3d(-32px, 0, 0);
    transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1), transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: calc(var(--motion-i, 0) * 0.05s);
  }

  [data-motion="fade-right"] {
    opacity: 0;
    transform: translate3d(32px, 0, 0);
    transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1), transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: calc(var(--motion-i, 0) * 0.05s);
  }

  [data-motion="scale-in"] {
    opacity: 0;
    transform: scale(0.96) translate3d(0, 16px, 0);
    transition: opacity 0.65s cubic-bezier(0.16, 1, 0.3, 1), transform 0.65s cubic-bezier(0.16, 1, 0.3, 1);
  }

  [data-motion="blur-in"] {
    opacity: 0;
    filter: blur(8px);
    transform: translate3d(0, 12px, 0);
    transition:
      opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1),
      transform 0.8s cubic-bezier(0.16, 1, 0.3, 1),
      filter 0.8s cubic-bezier(0.16, 1, 0.3, 1);
  }

  [data-motion="fade-up"].is-visible,
  [data-motion="fade-left"].is-visible,
  [data-motion="fade-right"].is-visible,
  [data-motion="scale-in"].is-visible,
  [data-motion="blur-in"].is-visible,
  .reveal.is-visible,
  .reveal-up.is-visible,
  [data-reveal].is-visible {
    opacity: 1;
    transform: none;
    filter: none;
  }

  .reveal-delay-1 { transition-delay: 0.08s !important; }
  .reveal-delay-2 { transition-delay: 0.16s !important; }
  .reveal-delay-3 { transition-delay: 0.24s !important; }

  .reveal-scale {
    opacity: 0;
    transform: translate3d(0, 16px, 0);
    transition: opacity 0.6s ease, transform 0.6s ease;
  }

  .reveal-scale.is-visible {
    opacity: 1;
    transform: none;
  }

  .aw-line-reveal {
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform 1s cubic-bezier(0.16, 1, 0.3, 1);
    transition-delay: var(--motion-delay, 0.2s);
  }

  .aw-line-reveal.is-visible { transform: scaleX(1); }

  [data-parallax] {
    will-change: transform;
    transition: transform 0.1s linear;
  }

  .hero-slide__media img,
  .hero-slide__media video {
    transform: scale(1.06);
    transition: transform 6s cubic-bezier(0.16, 1, 0.3, 1);
  }

  .hero-slide.is-active .hero-slide__media img,
  .hero-slide.is-active .hero-slide__media video {
    transform: scale(1);
  }

  .aw-studio__cell img,
  .aw-rail__item img,
  .aw-editorial__figure img {
    transition: transform 0.9s cubic-bezier(0.16, 1, 0.3, 1);
  }

  .aw-studio__cell:hover img,
  .aw-rail__item:hover img {
    transform: scale(1.04);
  }

  .aw-marquee__track {
    animation: aw-marquee-scroll 38s linear infinite;
  }

  @keyframes aw-marquee-scroll {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
  }

  .site-nav__links a,
  .btn--ghost-gold,
  .btn--fill,
  .aw-link {
    transition: color 0.25s ease, border-color 0.25s ease, opacity 0.25s ease, transform 0.25s ease;
  }

  .aw-link:hover { transform: translateX(3px); }
}

@media (prefers-reduced-motion: reduce) {
  [data-motion],
  .reveal,
  .reveal-up,
  [data-reveal],
  .reveal-scale,
  .aw-line-reveal,
  [data-parallax] {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    transition: none !important;
  }

  .aw-marquee__track { animation: none !important; }
}
