/* All rules are scoped to this shortcode. Inherit the site's font family. */
.lola-events {
    --lola-ink: #1f313c;
    --lola-green: #96be2d;
    --lola-surface: #eceeef;
    color: var(--lola-ink);
    margin-block: 4rem;
}
.lola-events .lola-events__heading { text-align: center; margin: 0 0 2rem; }
.lola-events .lola-events__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.lola-events .lola-events__card { min-width: 0; overflow: hidden; border-radius: 8px; background: var(--lola-surface); }
.lola-events .lola-events__photo { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; border: 0; }
.lola-events .lola-events__image { position: absolute; inset: 0; display: block; width: 100%; height: 100% !important; object-fit: cover; margin: 0; }
.lola-events .lola-events__fallback { display: grid; place-items: center; width: 100%; height: 100%; background: var(--lola-ink); color: white; font-size: 2rem; }
.lola-events .lola-events__body { padding: 24px; }
.lola-events .lola-events__badges { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.lola-events .lola-events__badge { display: inline-block; padding: 4px 9px; border-radius: 5px; background: var(--lola-ink); color: white; font-size: 12px; line-height: 1.5; }
.lola-events .lola-events__badge--featured { background: var(--lola-green); color: var(--lola-ink); }
.lola-events .lola-events__badge--audience { background: #dce8c6; color: var(--lola-ink); overflow-wrap: anywhere; max-width: 100%; box-sizing: border-box; }
.lola-events .lola-events__meta { margin: 0 0 8px; padding: 0; font-size: 14px; line-height: 1.6; }
.lola-events .lola-events__title { font-size: 19px; line-height: 1.4; font-weight: 400; margin: 16px 0 0; overflow-wrap: anywhere; }
.lola-events .lola-events__title a { color: inherit; border: 0; text-decoration: none; }
.lola-events .lola-events__title a:hover { text-decoration: underline; }
.lola-events .lola-events__excerpt { margin: 16px 0 0; padding: 0; font-size: 15px; line-height: 1.7; }
.lola-events .lola-events__footer { text-align: center; margin: 2rem 0 0; padding: 0; }
.lola-events .lola-events__all { display: inline-block; padding: 12px 20px; border: 1px solid var(--lola-ink); border-radius: 5px; color: inherit; text-decoration: none; }
.lola-events a:focus-visible { outline: 3px solid var(--lola-ink); outline-offset: 4px; }
@media (max-width: 767px) {
    .lola-events .lola-events__grid { grid-template-columns: minmax(0, 1fr); }
    .lola-events { margin-block: 2.5rem; }
}
