/**
 * Radeon Motion & Animation Engine
 * Hardware-accelerated, high-performance motion styles.
 */

/* Baseline Transition Settings */
[data-radeon-motion] {
  opacity: 0;
  will-change: transform, opacity;
  transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
  transition-property: transform, opacity, clip-path;
}

[data-radeon-motion].is-animated {
  opacity: 1;
}

/* 1. Motion Types */

/* Fade Up */
[data-radeon-motion="fade_up"] {
  transform: translateY(40px);
}
[data-radeon-motion="fade_up"].is-animated {
  transform: translateY(0);
}

/* Fade Down */
[data-radeon-motion="fade_down"] {
  transform: translateY(-40px);
}
[data-radeon-motion="fade_down"].is-animated {
  transform: translateY(0);
}

/* Scale Spring */
[data-radeon-motion="scale_spring"] {
  transform: scale(0.92);
}
[data-radeon-motion="scale_spring"].is-animated {
  transform: scale(1);
}

/* Text Mask Reveal (Editorial Luxury Mask) */
.radeon-text-mask-wrapper {
  overflow: hidden;
  display: block;
}

[data-radeon-motion="text_mask_reveal"] {
  transform: translateY(110%);
  opacity: 1; /* keep opacity 1, let overflow mask it */
  display: inline-block;
  transition-property: transform;
}
[data-radeon-motion="text_mask_reveal"].is-animated {
  transform: translateY(0);
}

/* Image Curtain Reveal */
[data-radeon-motion="image_curtain"] {
  opacity: 1;
  clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
  transition-property: clip-path, transform;
  transform: scale(1.08);
}
[data-radeon-motion="image_curtain"].is-animated {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  transform: scale(1);
}

/* Horizontal Slide Right */
[data-radeon-motion="slide_right"] {
  transform: translateX(-50px);
}
[data-radeon-motion="slide_right"].is-animated {
  transform: translateX(0);
}

/* Horizontal Slide Left */
[data-radeon-motion="slide_left"] {
  transform: translateX(50px);
}
[data-radeon-motion="slide_left"].is-animated {
  transform: translateX(0);
}

/* 2. Motion Intensity & Durations */
[data-radeon-intensity="subtle"] {
  transition-duration: 0.6s;
  transition-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
}

[data-radeon-intensity="moderate"] {
  transition-duration: 0.9s;
  transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1);
}

[data-radeon-intensity="dramatic"] {
  transition-duration: 1.25s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

[data-radeon-intensity="cinematic"] {
  transition-duration: 1.65s;
  transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
}

/* 3. 3D Tilt Card Container */
.radeon-tilt-card {
  transform-style: preserve-3d;
  perspective: 1000px;
  transition: transform 0.15s ease-out;
}

.radeon-tilt-inner {
  transform: translateZ(25px);
}

/* 4. Accessibility: Disable animations if user prefers reduced motion */
@media (prefers-reduced-motion: reduce) {
  [data-radeon-motion] {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
    transition: none !important;
  }
}
