/*! ------------------------------------------------
 * Minimal Smooth Animations - Custom Cursor + 60fps
 * ------------------------------------------------ */

/* Hide default cursor globally */
* {
  cursor: none !important;
}

/* Custom Cursor Styles */
.custom-cursor {
  position: fixed;
  width: 20px;
  height: 20px;
  background: var(--accent);
  border-radius: 50%;
  pointer-events: none;
  z-index: 9999;
  mix-blend-mode: difference;
  transition: transform 0.1s ease-out;
  opacity: 0;
  will-change: transform;
}

.custom-cursor.hover {
  transform: scale(2);
  background: var(--additional);
}

/* 60fps Performance Optimizations */
.gpu-accelerated {
  transform: translateZ(0);
  backface-visibility: hidden;
  perspective: 1000px;
}

.will-change-transform {
  will-change: transform;
}

.will-change-opacity {
  will-change: opacity;
}

/* Apply GPU acceleration to animated elements */
.anim-uni-in-up,
.anim-uni-scale-in-right,
.anim-uni-scale-in-left,
.loading__item,
.loading__fade,
.btn-anim,
.mxd-stats-cards__inner,
.stack-item {
  transform: translateZ(0);
  backface-visibility: hidden;
  will-change: transform;
}

/* Smooth transitions for existing elements */
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Optimize scroll performance */
html {
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
  
  .custom-cursor {
    display: none;
  }
  
  * {
    cursor: auto !important;
  }
}

/* Remove will-change after animations complete */
.animation-complete {
  will-change: auto;
}