/* ============================================================
   CONFERENCE (also used lightly by DELEGATES, see delegates.css)
   ============================================================ */
.conference-copy { margin-top: var(--space-sm); }
.conference-copy p { font-size: 1.05rem; line-height: 1.78; margin-bottom: var(--space-sm); }

.marquee-wrap { border-top: 1px solid rgba(241,231,210,.15); padding-top: var(--space-md); margin-top: var(--space-xl); }
.marquee-label { font-family: var(--font-mono); font-size: .75rem; letter-spacing: .12em; text-transform: uppercase; color: var(--color-brass); margin-bottom: var(--space-sm); }
.marquee {
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.marquee-track { display: flex; gap: 2.2rem; width: max-content; animation: marquee 32s linear infinite; }
@media (hover: hover) {
  .marquee:hover .marquee-track { animation-play-state: paused; }
}
.marquee-track span { font-family: var(--font-display); font-weight: 400; font-size: 1.2rem; text-transform: uppercase; white-space: nowrap; color: var(--color-paper); }
.marquee-track span em { font-family: var(--font-mono); font-style: normal; font-size: .68rem; color: var(--color-muted-on-indigo); letter-spacing: .05em; margin-left: .5em; }

@keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
  .marquee-track { animation: none; }
}
