/* Site-wide motion: hero entrance, scroll reveal, press feedback. All of it is off under prefers-reduced-motion. */

@media (prefers-reduced-motion: no-preference) {
  /* Scroll reveal: js/animations.js adds .anim-pre, then swaps it for .anim-go when the element enters view. */
  .anim-pre { opacity: 0; }
  .anim-go { animation: anim-rise 0.7s cubic-bezier(0.16, 1, 0.3, 1) var(--anim-delay, 0s) backwards; }

  @keyframes anim-rise {
    from { opacity: 0; transform: translateY(26px); }
    to { opacity: 1; transform: none; }
  }

  /* Hero entrance */
  .hero-trippoo-title,
  .hero-trippoo-subtitle,
  .hero-trippoo-btn-wrap,
  .search-trippoo-card {
    animation: anim-rise 0.9s cubic-bezier(0.16, 1, 0.3, 1) backwards;
  }
  .hero-trippoo-subtitle { animation-delay: 0.12s; }
  .hero-trippoo-btn-wrap { animation-delay: 0.24s; }
  .search-trippoo-card { animation-delay: 0.38s; }

  /* Tactile press on buttons and pills */
  .btn, .btn-trippoo-accent, .btn-trippoo-search, .btn-theme-pill-white, .btn-see-all,
  .dm-cta, .dm-chip, .operators-band-btn {
    transition-property: transform, box-shadow, background-color, border-color, color;
    transition-duration: 0.2s;
  }
  .btn:active, .btn-trippoo-accent:active, .btn-trippoo-search:active, .btn-theme-pill-white:active,
  .btn-see-all:active, .dm-cta:active, .dm-chip:active, .operators-band-btn:active {
    transform: scale(0.97);
  }

  /* Soft pop for the "Compare" heart/wishlist style icon buttons when toggled */
  .is-pop { animation: anim-pop 0.35s ease; }
  @keyframes anim-pop { 50% { transform: scale(1.25); } }
}
