/* ==========================================================================
   IT WAYS — REAL ESTATE CRM PRO ANIMATIONS
   Smooth micro-interactions, cubic-bezier(.22,1,.36,1) motion
   ========================================================================== */

@keyframes recPulse {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.4); opacity: 0.6; }
}

@keyframes recFloatSlow {
  0% { transform: translateY(0px) rotate(0deg); }
  100% { transform: translateY(-14px) rotate(-1deg); }
}

@keyframes recFloatFast {
  0% { transform: translateY(0px) rotate(0deg); }
  100% { transform: translateY(-18px) rotate(1.5deg); }
}

@keyframes recMarquee {
  0% { transform: translate3d(0, 0, 0); }
  100% { transform: translate3d(-50%, 0, 0); }
}

@keyframes recSlideArrow {
  0%, 100% { transform: translateX(0); opacity: 0.8; }
  50% { transform: translateX(6px); opacity: 1; }
}

@keyframes recFadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes recFadeScale {
  from { opacity: 0; transform: scale(0.97) translateY(8px); }
  to { opacity: 1; transform: scale(1) translateY(0); }
}

/* Scroll Reveal Classes */
.rec-reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1),
              transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: opacity, transform;
}

.rec-reveal.revealed {
  opacity: 1;
  transform: translateY(0);
}

.rec-delay-1 { transition-delay: 0.1s; }
.rec-delay-2 { transition-delay: 0.2s; }
.rec-delay-3 { transition-delay: 0.3s; }
.rec-delay-4 { transition-delay: 0.4s; }

/* Reduced Motion Support */
@media (prefers-reduced-motion: reduce) {
  *, ::before, ::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  .rec-reveal {
    opacity: 1 !important;
    transform: none !important;
  }
  .rec-marquee-track {
    animation: none !important;
  }
}
