html { scroll-behavior: smooth; }
body { background-color: #F7F2E7; }

.reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
.reveal.in-view { opacity: 1; transform: translateY(0); }

.marquee-track {
  display: flex;
  width: max-content;
  animation: marquee 28s linear infinite;
}
@keyframes marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.court-lines {
  background-image:
    linear-gradient(rgba(65,79,53,0.10) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65,79,53,0.10) 1px, transparent 1px);
  background-size: 42px 42px;
}

.polaroid { padding: 10px 10px 34px 10px; background: #fdfbf5; }

::selection { background: #E7C158; color: #20261B; }

details > summary { list-style: none; cursor: pointer; }
details > summary::-webkit-details-marker { display: none; }
details[open] .faq-icon { transform: rotate(45deg); }

.court-society-logo-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  color: #414F35;
  background: #F7F2E7;
}
