/* Scroll reveal */
.reveal {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity var(--transition-slow), transform var(--transition-slow);
}

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

/* Stagger reveal for sub-features in a grid */
.sub-feature-grid .reveal:nth-child(2) { transition-delay: 80ms; }
.sub-feature-grid .reveal:nth-child(3) { transition-delay: 160ms; }
.sub-feature-grid .reveal:nth-child(4) { transition-delay: 240ms; }
.sub-feature-grid .reveal:nth-child(5) { transition-delay: 320ms; }
.sub-feature-grid .reveal:nth-child(6) { transition-delay: 400ms; }
.sub-feature-grid .reveal:nth-child(7) { transition-delay: 480ms; }

/* Feature detail highlight flash when navigated to */
.feature-detail--highlight {
  animation: highlight-flash 1s ease;
}

@keyframes highlight-flash {
  0%   { background-color: rgba(91, 141, 239, 0.08); }
  100% { background-color: transparent; }
}

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  .reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .feature-detail--highlight {
    animation: none;
  }

  .feature-card,
  .btn,
  .back-link,
  .nav-links a {
    transition: none;
  }
}
