/* Keep the existing 2026 date rows, typography and responsive grid. */
.event-date{flex-wrap:wrap;min-width:0}
.event-date small{flex-basis:100%;font-size:.75rem;font-weight:700}
.event-facts strong{overflow-wrap:anywhere}
.season-archive{margin-top:30px}
.season-archive summary{cursor:pointer;font-weight:700}
.season-archive .date-grid{margin-top:20px}
.event-poster figcaption{padding:12px 18px;background:var(--cream);color:var(--muted);font-size:.8rem}
/* Match the existing German tour ticker in both languages. */
.event-strip { padding: 14px 0; color: #f5f0e6; background: #0d0f0e; border-top: 1px solid rgba(200,169,91,.28); border-bottom: 1px solid rgba(200,169,91,.38); }
.event-strip-inner { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 18px; min-height: 72px; overflow: hidden; }
.event-strip-badge { padding: 6px 9px; color: #0d0f0e; background: #c8a95b; font-size: .65rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; }
.event-marquee { min-width: 0; overflow: hidden; }
.event-marquee-track { display: flex; width: max-content; animation: byb-marquee 30s linear infinite; will-change: transform; }
.event-marquee-group { display: flex; flex-shrink: 0; align-items: center; white-space: nowrap; }
.event-marquee-item { color: #f5f0e6; font-weight: 700; text-decoration: none; }
.event-marquee-item:hover,.event-marquee-item:focus-visible { color: #dfbe63; }
.event-marquee-date { color: #dfbe63; font-weight: 800; }
.event-marquee-separator { margin: 0 24px; color: #c8a95b; }
.event-marquee:hover .event-marquee-track,.event-marquee:focus-within .event-marquee-track { animation-play-state: paused; }
@keyframes byb-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (max-width: 720px) {
  .event-strip { padding: 12px 0; }
  .event-strip-inner { gap: 10px; min-height: 64px; }
  .event-strip-badge { padding: 5px 7px; font-size: .58rem; }
  .event-marquee-track { animation-duration: 30s; }
  .event-marquee-separator,.event-marquee-group::after { margin: 0 18px; }
    }
.event-marquee-group::after{content:none}
@media(prefers-reduced-motion:reduce){
  .event-marquee-track{animation:none;width:auto}
  .event-marquee-group{white-space:normal}
  .event-marquee-group[aria-hidden]{display:none}
}

/* Original tour grid, sticky poster and mobile rules come from cityride-layout-2027.css.
   Keep the 2027 poster's intrinsic aspect ratio. */
.cityride-page .event-poster a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}

/* Desktop only: remove UA figure margins and use the full poster track.
   Preserve the original mobile layout and intrinsic image ratio. */
@media (min-width: 801px) {
  .cityride-page .tour-detail-grid{gap:clamp(32px,4vw,64px)}
  .cityride-page .event-poster{margin:0}
}
