:root {
  --wlb-teal: #087f8c;
  --wlb-teal-dark: #075e68;
  --wlb-ink: #17252a;
  --wlb-soft: #eef8f8;
  --wlb-border: #d6e6e7;
}

.wlb-events-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.wlb-event-card {
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--wlb-border);
  border-radius: 16px;
  box-shadow: 0 7px 24px rgba(7, 94, 104, .08);
}

.wlb-event-image img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}

.wlb-event-card-body { padding: 20px; }
.wlb-event-card h3 { margin: 8px 0; font-size: 1.25rem; line-height: 1.3; }
.wlb-event-card h3 a { color: var(--wlb-ink); text-decoration: none; }
.wlb-event-card h3 a:hover { color: var(--wlb-teal-dark); text-decoration: underline; }
.wlb-event-date { margin: 10px 0 0; color: var(--wlb-teal-dark); font-weight: 700; }
.wlb-event-venue, .wlb-event-price { margin: 8px 0 0; }

.wlb-event-badge {
  display: inline-block;
  padding: 5px 9px;
  border-radius: 999px;
  background: var(--wlb-soft);
  color: var(--wlb-teal-dark);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .03em;
  text-transform: uppercase;
}

.wlb-status-sponsored { background: #fff2cc; color: #6b5100; }
.wlb-status-community-submitted { background: #edf0f5; color: #3d4757; }
.wlb-status-cancelled { background: #fde8e8; color: #9b1c1c; }

.wlb-verification-box,
.wlb-events-empty {
  padding: 18px 20px;
  border-left: 5px solid var(--wlb-teal);
  border-radius: 8px;
  background: var(--wlb-soft);
}

.wlb-verification-box { margin-top: 32px; }
.wlb-verification-box p { margin: 0 0 8px; }
.wlb-verification-box p:last-child { margin-bottom: 0; }
.wlb-event-ended { color: #9b1c1c; }

@media (max-width: 900px) {
  .wlb-events-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
  .wlb-events-grid { grid-template-columns: 1fr; }
}

