/* ====== SUBTLE MICRO-ANIMATIONS ====== */

/* --- Base reveal --- */
.nb-reveal {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.5s ease, transform 0.5s ease;
  transition-delay: var(--nb-delay, 0ms);
}

.nb-reveal.nb-visible {
  opacity: 1;
  transform: translateY(0);
}

/* Stats/testimonials: preserve inline rotation */
.nb-reveal[style*="--nb-pre-transform"] {
  transform: translateY(16px);
}
.nb-reveal.nb-visible[style*="--nb-pre-transform"] {
  transform: var(--nb-pre-transform, none);
}

/* --- Card hover (desktop, subtle) --- */
@media (hover: hover) {
  .nb-card-hover {
    transition: transform 0.25s ease, box-shadow 0.25s ease;
  }
  .nb-card-hover:hover {
    transform: translateY(-2px);
    box-shadow: 10px 10px 0 var(--color-black, #000);
  }
}

/* --- Prefers reduced motion --- */
@media (prefers-reduced-motion: reduce) {
  .nb-reveal {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
  .nb-card-hover {
    transition: none !important;
  }
}
