/* ==========================================================================
   Core Animations — Tüm Sayfalar
   ========================================================================== */

[data-aos="blur-reveal"] {
  opacity: 0;
  filter: blur(12px);
  transform: translateY(30px);
  transition-property: opacity, filter, transform;
}

[data-aos="blur-reveal"].aos-animate {
  opacity: 1;
  filter: blur(0);
  transform: translateY(0);
}

[data-aos="slide-left"] {
  opacity: 0;
  transform: translateX(-60px);
  transition-property: opacity, transform;
}

[data-aos="slide-left"].aos-animate {
  opacity: 1;
  transform: translateX(0);
}

[data-aos="slide-right"] {
  opacity: 0;
  transform: translateX(60px);
  transition-property: opacity, transform;
}

[data-aos="slide-right"].aos-animate {
  opacity: 1;
  transform: translateX(0);
}

[data-aos="zoom-in"] {
  opacity: 0;
  transform: scale(0.85);
  transition-property: opacity, transform;
}

[data-aos="zoom-in"].aos-animate {
  opacity: 1;
  transform: scale(1);
}

.hover-glow {
  position: relative;
  overflow: hidden;
}

.hover-glow::after {
  content: '';
  position: absolute;
  inset: -2px;
  background: var(--gradient-primary);
  border-radius: inherit;
  opacity: 0;
  z-index: -1;
  transition: opacity 0.4s ease;
  filter: blur(20px);
}

.hover-glow:hover::after {
  opacity: 0.35;
}

.magnetic-btn {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.blur-reveal-element {
  filter: blur(8px);
  opacity: 0;
  transform: translateY(40px);
  transition: filter 0.8s ease, opacity 0.8s ease, transform 0.8s ease;
}

.blur-reveal-element.revealed {
  filter: blur(0);
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

  [data-aos] {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}
