/* ============================================================
   RAS SPORTSWEAR — SUBTLE ANIMATIONS
   Clean, performance-focused transitions and entry reveals
   ============================================================ */

/* Re-enable transitions for hover states, color changes, and simple fades */
*,
*::before,
*::after {
  transition-property: background-color, border-color, color, fill, stroke, opacity, box-shadow;
  transition-duration: 200ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

/* Subtle entry reveals on scroll - DISABLED for Gymshark minimal style */
.animate-on-scroll {
  opacity: 1;
  transform: none;
  transition: none;
}

.animate-on-scroll.visible {
  opacity: 1;
  transform: none;
}

/* Disable parallax/floating circles */
.hero::before,
.hero::after,
.hero-bg,
.final-cta::before,
.final-cta::after,
.final-cta-bg,
.final-cta-decoration {
  display: none !important;
}

/* Map dots hover state */
.map-dot {
  transition: r 200ms ease, fill 200ms ease;
}

.map-dot:hover {
  r: 8px;
  fill: var(--color-accent-primary);
}

.map-dot-glow {
  display: none !important;
}

/* Autoplay carousels have clean instant jumps */
.autoplay-indicator-bar {
  display: none !important;
}

/* Stagger reveals for children grids */
.stagger-children > * {
  transition-delay: calc(var(--child-index, 0) * 50ms);
}

/* Respect user preferences for reduced motion */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
  }
  .animate-on-scroll {
    opacity: 1 !important;
    transform: none !important;
  }
}
