/* ========================================================
   HOT NOW — Top-of-page horizontal marquee ticker
   A sticky banner at the very top of every page previews the
   top featured events, sliding right-to-left in an easy-to-
   read loop.  Each item is a clickable link to that event's
   detail page.
   ======================================================== */

/* ─── Ticker container (sticky, sits above the navbar) ──── */
.hot-now-ticker {
  position: sticky;
  top: 0;
  z-index: 1001;            /* above .site-header (1000) */
  height: 28px;
  background: var(--primary);
  color: var(--primary-foreground);
  overflow: hidden;
  border-bottom: 1px solid var(--border);
}

/* Theme-aware: navy in light mode, gold in dark mode */
[data-theme="dark"] .hot-now-ticker {
  background: var(--accent);
  color: var(--accent-foreground);
}

/* ─── Marquee track ────────────────────────────────────── */
.hot-now-track {
  display: inline-flex;
  align-items: center;
  height: 100%;
  gap: 0.70rem;
  padding: 0 1.5rem;
  animation: hotnow-scroll 28s linear infinite;
  -webkit-animation: hotnow-scroll 28s linear infinite;
}

/* Pause on hover for readability */
.hot-now-track:hover {
  animation-play-state: paused;
}

/* ─── Individual items ─────────────────────────────────── */
.hot-now-link {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  color: inherit;
  text-decoration: none;
  font-size: var(--text-2xs);
  font-weight: 500;
  white-space: nowrap;
}

.hot-now-link:hover {
  text-decoration: underline;
}

.hot-now-dot {
  font-size: var(--text-small);
  line-height: 1;
}

.hot-now-title {
  font-weight: 600;
}

.hot-now-date {
  opacity: 0.8;
  font-weight: 400;
}

.hot-now-sep {
  display: inline-flex;
  align-items: center;
  font-size: var(--text-2xs);
  opacity: 0.55;
}

/* ─── Continuous right-to-left scroll ──────────────────── */
@keyframes hotnow-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* ─── Offset the sticky navbar so it sits below the ticker ─ */
.hot-now-ticker ~ .site-header {
  top: 28px;
}

/* Compact on very small screens — also offsets mobile nav drawer */
@media (max-width: 640px) {
  .hot-now-ticker { height: 24px; }
  .hot-now-link { font-size: var(--text-2xs); }
  .hot-now-track { padding: 0 1rem; gap: 0.5rem; }
  .hot-now-ticker ~ .site-header { top: 24px; }
  .hot-now-ticker ~ .site-header .nav-links {
    top: calc(24px + var(--header-h-mobile));
  }
}

/* Desktop and tablet (960px–641px): ticker pushes navbar down */
@media (min-width: 641px) and (max-width: 960px) {
  .hot-now-ticker ~ .site-header .nav-links {
    top: calc(28px + var(--header-h));
  }
}
