/* Independent five-part row. No theme floats or whole-row anchor required. */
.elp-events-list { list-style: none; margin: 0; padding: 0; width: 100%; }
.elp-events-list .elp-event-row {
    display: grid;
    grid-template-columns: 64px 88px minmax(0,1fr) minmax(135px,165px) 180px;
    grid-template-areas: "date poster copy meta actions";
    gap: 24px;
    align-items: center;
    min-height: 154px;
    padding: 24px 0;
    border: 0;
    border-bottom: 1px solid #e8e2d8;
    color: #242320;
    background: transparent;
    box-sizing: border-box;
}
.elp-events-list .elp-event-row::after { display: none; }
.elp-events-list .elp-event-row.no_event_image { grid-template-columns: 64px minmax(0,1fr) minmax(135px,165px) 180px; grid-template-areas: "date copy meta actions"; }
.elp-events-list .no_event_image .elp-row-poster { display: none; }
.elp-events-list .elp-row-date { grid-area: date; display: flex; flex-direction: column; align-items: center; gap: 3px; text-decoration: none; color: inherit; }
.elp-events-list .elp-row-weekday, .elp-events-list .elp-row-month { font-size: 11px; font-weight: 600; letter-spacing: 1.2px; line-height: 1.5; }
.elp-events-list .elp-row-weekday { color: #886a36; }
.elp-events-list .elp-row-day { font-size: 43px; font-weight: 500; line-height: 1.05; letter-spacing: -1.5px; }
.elp-events-list .elp-row-year { color: #77736b; font-size: 11px; line-height: 1.4; }
.elp-events-list .elp-row-poster { grid-area: poster; min-width: 0; }
.elp-events-list .elp-row-poster a, .elp-events-list .elp-row-poster img { display: block; }
.elp-events-list .elp-row-poster img { position: static; transform: none; width: 100%; height: auto; max-width: 100%; border-radius: 3px; }
.elp-events-list .elp-row-copy { grid-area: copy; min-width: 0; overflow-wrap: anywhere; }
.elp-events-list .elp-row-eyebrow { margin: 0 0 6px; color: #716b5f; font-size: 11px; font-weight: 600; letter-spacing: 1.4px; line-height: 1.5; text-transform: uppercase; }
.elp-events-list .elp-row-title { margin: 0; padding: 0; font: inherit; font-size: 22px; font-weight: 600; line-height: 1.25; letter-spacing: -.4px; text-transform: none; }
.elp-events-list .elp-row-title a { color: #242320; text-decoration: none; }
.elp-events-list .elp-row-title a:hover { color: #97713a; }
.elp-events-list .elp-row-subtitle, .elp-events-list .elp-row-notice { margin-top: 7px; color: #c53c35; font-size: 13px; line-height: 1.6; font-weight: 400; letter-spacing: 0; }
.elp-events-list .elp-row-notice p, .elp-events-list .elp-row-subtitle p { margin: 0 0 5px; }
.elp-events-list .elp-row-meta { grid-area: meta; display: flex; flex-direction: column; gap: 9px; min-width: 0; }
.elp-events-list .elp-row-venue { font-size: 13px; line-height: 1.65; color: #69645a; overflow-wrap: anywhere; }
.elp-events-list .elp-row-venue span, .elp-events-list .elp-row-time span { color: #a3824a; padding-right: 4px; }
.elp-events-list .elp-row-time { font-size: 19px; font-weight: 500; line-height: 1.4; white-space: nowrap; }
.elp-events-list .elp-day-label { width: fit-content; padding: 2px 7px; border-radius: 3px; background: #f5efdf; color: #80632c; font-size: 10px; font-weight: 600; letter-spacing: .8px; }
.elp-events-list .elp-row-actions { grid-area: actions; align-self: center; min-width: 0; }
.elp-events-list .elp-row-actions .elp-purchase-actions { width: 180px; max-width: 100%; gap: 8px; }
.elp-events-list .elp-row-actions .elp-ticket-button { min-height: 44px; font-size: 11px; font-weight: 600; letter-spacing: .8px; line-height: 44px; border-radius: 4px; padding: 0 10px; box-sizing: border-box; }
.elp-events-list .elp-row-actions .elp-cast-trigger { background: transparent; color: #8b6a32; border-color: #e4d5ba; font-size: 10px; letter-spacing: 1.5px; line-height: 1.5; padding: 9px 8px; text-decoration: none; }
.elp-events-list .elp-row-actions .elp-cast-trigger:hover, .elp-events-list .elp-row-actions .elp-cast-trigger:focus-visible { background: #faf6ed; border-color: #b99558; }
.elp-events-list a:focus-visible, .elp-events-list button:focus-visible { outline: 2px solid #a3824a; outline-offset: 4px; }
.elp-events-list .elp-cast-panel { position: static; width: 100%; min-width: 0; max-width: 100%; margin-top: 8px; padding: 12px; line-height: 1.65; text-align: left; }
@media (min-width: 641px) and (max-width: 1000px) {
    .elp-events-list .elp-event-row { grid-template-columns: 54px 74px minmax(0,1fr) 164px; grid-template-areas: "date poster copy actions" "date poster meta actions"; gap: 10px 18px; align-items: start; padding: 24px 0; }
    .elp-events-list .elp-row-actions, .elp-events-list .elp-row-poster, .elp-events-list .elp-row-date { align-self: center; }
    .elp-events-list .elp-row-actions .elp-purchase-actions { width: 164px; }
    .elp-events-list .elp-row-meta { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 8px 16px; }
    .elp-events-list .elp-row-title { font-size: 20px; }
    .elp-events-list .elp-event-row.no_event_image { grid-template-columns: 54px minmax(0,1fr) 164px; grid-template-areas: "date copy actions" "date meta actions"; }
}
@media (max-width: 640px) {
    .elp-events-list .elp-event-row { grid-template-columns: 40px clamp(104px,30vw,128px) minmax(0,1fr); grid-template-areas: "date poster copy" "meta meta meta" "actions actions actions"; gap: 16px 10px; align-items: start; padding: 22px 0; min-height: 0; }
    .elp-events-list .elp-row-day { font-size: 37px; }
    .elp-events-list .elp-row-weekday, .elp-events-list .elp-row-month { font-size: 10px; }
    .elp-events-list .elp-row-title { font-size: 18px; line-height: 1.3; }
    .elp-events-list .elp-row-eyebrow { font-size: 9px; letter-spacing: 1px; }
    .elp-events-list .elp-row-notice, .elp-events-list .elp-row-subtitle { font-size: 12px; line-height: 1.55; }
    .elp-events-list .elp-row-meta { flex-direction: row; justify-content: space-between; flex-wrap: wrap; gap: 8px 14px; align-items: center; }
    .elp-events-list .elp-row-venue { max-width: calc(100% - 80px); font-size: 12px; }
    .elp-events-list .elp-row-time { font-size: 17px; }
    .elp-events-list .elp-row-actions .elp-purchase-actions { width: 100%; margin: 0; }
    .elp-events-list .elp-row-actions .elp-ticket-button { min-height: 46px; line-height: 46px; }
    .elp-events-list .elp-event-row.no_event_image { grid-template-columns: 40px minmax(0,1fr); grid-template-areas: "date copy" "meta meta" "actions actions"; }
}
