/* Smooth scroll */
html { scroll-behavior: smooth; }
/* Accordion animation */
.accordion-content {
  transition: grid-template-rows 250ms ease, padding 250ms ease, opacity 200ms ease;
  grid-template-rows: 0fr;
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
}
.accordion-content.open {
  grid-template-rows: 1fr;
  opacity: 1;
  padding-top: .5rem;
  padding-bottom: .75rem;
}
/* Reveal on scroll */
.reveal { opacity: 0; transform: translateY(12px); transition: opacity .5s ease, transform .5s ease; }
.reveal.in { opacity: 1; transform: translateY(0); }
/* Active nav underline */
.nav-link.active { color: #fff; position: relative; }
.nav-link.active::after {
  content: ''; position: absolute; left: 0; right: 0; bottom: -2px; height: 2px;
  background: linear-gradient(90deg,#5865F2, #ef4444); border-radius: 2px;
}
/* Floaty keyframes (used inline for Tailwind-compat) */
@keyframes floaty { 0%,100% { transform: translateY(0) } 50% { transform: translateY(-6px) } }
