/* Owned CSS decoration; no external image requests or editorial claims. */
.event-cover.card-art {
    --art-angle: 135deg;
    --art-x: 80%;
    --art-y: 20%;
    --art-shape: 50%;
    position: relative;
    isolation: isolate;
    background:
        radial-gradient(ellipse at var(--art-x) var(--art-y), var(--cover-b), transparent 62%),
        linear-gradient(var(--art-angle), var(--cover-a), #162a27);
}
.card-art[data-cover-variant="1"] { --art-angle: 35deg; --art-x: 15%; --art-y: 80%; }
.card-art[data-cover-variant="2"] { --art-angle: 210deg; --art-x: 30%; --art-y: 10%; --art-shape: 8%; }
.card-art[data-cover-variant="3"] { --art-angle: 75deg; --art-x: 90%; --art-y: 85%; --art-shape: 25%; }
.card-art[data-cover-variant="4"] { --art-angle: 300deg; --art-x: 5%; --art-y: 25%; }
.card-art[data-cover-variant="5"] { --art-angle: 165deg; --art-x: 60%; --art-y: 100%; --art-shape: 8%; }
.card-art[data-cover-variant="6"] { --art-angle: 250deg; --art-x: 100%; --art-y: 45%; --art-shape: 25%; }
.card-art[data-cover-variant="7"] { --art-angle: 15deg; --art-x: 50%; --art-y: 0%; }
.card-art[data-cover-variant="8"] { --art-angle: 110deg; --art-x: 0%; --art-y: 95%; --art-shape: 8%; }
.card-art[data-cover-variant="9"] { --art-angle: 330deg; --art-x: 75%; --art-y: 65%; --art-shape: 25%; }
.card-art[data-cover-variant="10"] { --art-angle: 190deg; --art-x: 20%; --art-y: 55%; }
.card-art[data-cover-variant="11"] { --art-angle: 55deg; --art-x: 90%; --art-y: 5%; --art-shape: 8%; }
.card-art::before {
    content: "";
    position: absolute;
    inset: -25% 18%;
    border: 2px solid rgba(255, 255, 255, .35);
    border-radius: var(--art-shape);
    transform: rotate(var(--art-angle));
    pointer-events: none;
    z-index: -1;
}
.card-art__label {
    position: absolute;
    left: 10px;
    bottom: 10px;
    max-width: calc(100% - 20px);
    padding: 4px 7px;
    border-radius: 6px;
    background: #18352e;
    color: #fff;
    font-size: .65rem;
    line-height: 1.3;
}
.card-art .discover-card__fallback-icon { color: #fff; opacity: .65; }
.event-card__synopsis {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 0 0 16px;
    color: var(--muted);
    font-size: .9rem;
    line-height: 1.45;
    overflow-wrap: anywhere;
}
.discover-card__price { color: var(--brand); font-size: .86rem; font-weight: 750; }
@media (max-width: 350px) {
    .card-art__label { left: 5px; bottom: 5px; max-width: calc(100% - 10px); font-size: .6rem; }
}

/* Compact listing: heading and controls precede the cards, not a hero banner. */
.listing-intro__inner {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 20px;
    padding: 22px 0 18px;
}
.listing-intro .eyebrow { margin-bottom: 7px; }
.listing-intro h1 { max-width: 840px; font-size: clamp(1.5rem, 2.5vw, 2rem); line-height: 1.15; letter-spacing: -.035em; }
.listing-intro__discover { min-height: 44px; padding: 0; border: 0; background: transparent; }
.listing-intro__discover > span { display: none; }
.page-backdrop--events .filters-wrap { margin-top: 0; }
.page-backdrop--events .filters--launch {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 10px;
    margin-top: 14px;
    padding: 12px 14px;
    box-shadow: none;
}
.page-backdrop--events .filters__advanced { margin-top: 0; }
.page-backdrop--events .filters__advanced[open] { grid-column: 1 / -1; }
.page-backdrop--events .section { padding-top: 28px; }
@media (max-width: 720px) {
    .listing-intro__inner { grid-template-columns: 1fr; gap: 6px; padding: 18px 0 14px; }
    .listing-intro__discover { align-items: flex-start; min-height: 36px; justify-self: start; }
    .page-backdrop--events .filters--launch { grid-template-columns: 1fr; padding: 12px; }
}
