/* Small supplemental styles on top of Tailwind (loaded via CDN in index.html). */

/* Scroll-reveal animation — gated behind .reveal-on, which JS adds on load.
   Without JS (or if it fails), no element is ever hidden. */
.reveal-on [data-reveal] {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .6s ease, transform .6s ease;
}
.reveal-on [data-reveal].is-visible {
  opacity: 1;
  transform: none;
}

/* Respect reduced-motion */
@media (prefers-reduced-motion: reduce) {
  .reveal-on [data-reveal] { opacity: 1; transform: none; transition: none; }
  html { scroll-behavior: auto; }
}

/* Modal open state */
#checkoutModal.is-open { display: flex; }

body { -webkit-font-smoothing: antialiased; }
