/* events-cards-timeline
   Generated from the approved mockup CSS by wp-build/css.py, plus css-fixes/events-cards-timeline.css. */
.events-cards { background: var(--mist); padding: 88px 0 92px; }
.events-cards .events-head { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; flex-wrap: wrap; }
.events-cards .events-head h2 { font-size: 40px; }
.events-cards .acal { margin-top: 48px; }
.events-cards .acal h3 { font-size: 22px; }
.events-cards .acal-line { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 22px; position: relative; }
.events-cards .acal-line::before { content: ""; position: absolute; left: 0; right: 0; top: 7px; height: 2px; background: var(--accent-solid); opacity: .35; }
.events-cards .acal-line li { position: relative; padding: 30px 20px 0 0; }
.events-cards .acal-line li::before { content: ""; position: absolute; left: 0; top: 0; width: 16px; height: 16px; border-radius: 50%; background: var(--mist); border: 3px solid var(--accent-solid); }
.events-cards .acal-d { display: block; font-weight: 600; font-size: 18px; }
.events-cards .acal-t { display: block; color: var(--muted); font-size: 16px; margin-top: 2px; }
@media (max-width: 720px) {
  .events-cards .events-head h2 { font-size: 32px; }
  .events-cards { padding: 64px 0; }
  .events-cards .acal-line { grid-template-columns: 1fr; }
  .events-cards .acal-line::before { left: 7px; right: auto; top: 8px; bottom: 8px; width: 2px; height: auto; }
  .events-cards .acal-line li { padding: 0 0 18px 34px; }
}
