/* Event cards follow the legacy EventList layout. */
main #event_top > .section-title {
    height: 32px;
    margin: 10px 0 0;
    padding: 0 10px;
    border: 0;
    border-radius: 5px 5px 0 0;
    background: linear-gradient(#0090ff, #40acff);
    color: #fff;
    font-size: 14px;
    line-height: 32px;
    text-shadow: 1px 1px #333;
}
.store-event {
    position: relative;
    padding: 15px;
    border: 1px solid #666;
    border-top: 0;
    background: #fff;
    color: #000;
    font-size: 12px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
.event-heading {
    display: flex;
    align-items: flex-start;
    min-height: 40px;
    background: #e6ecf9;
}
.event-heading > span {
    position: relative;
    flex: 0 0 101px;
    height: 40px;
    padding-left: 6px;
    background: linear-gradient(135deg, #4d7cd6 50%, #0044c5 50%);
    color: #fff;
    font-size: 15.4px;
    font-weight: bold;
    line-height: 40px;
    text-align: center;
    text-shadow: 0 -1px #003394;
}
.event-heading > span::after {
    content: '';
    position: absolute;
    top: 0;
    left: 100%;
    width: 20px;
    height: 40px;
    background: #0044c5;
    clip-path: polygon(0 0, 100% 0, 0 50%, 100% 100%, 0 100%);
}
main .event-heading h3 {
    min-width: 0;
    margin: 0;
    padding: 10px 10px 8px 34px;
    border: 0;
    background: none;
    color: #000;
    font-size: 15.4px;
    line-height: 22px;
}
.event-period {
    margin: 10px 0 15px;
    padding: 3px 6px;
    border: 3px solid #d80000;
    border-radius: 5px;
    color: #d80000;
    font-size: 12px;
    font-weight: bold;
    line-height: 1;
    text-align: center;
}
.event-feature {
    position: absolute;
    top: 0;
    left: 5px;
    display: flex;
    align-items: center;
    gap: 5px;
    height: 30px;
    margin: 0;
    color: #0044c5;
    font-weight: bold;
}
.event-feature i { font-size: 26px; line-height: 26px; }
.event-pickup, .event-spotlight { padding-top: 30px; background: #ffffe6; }
.event-main:has(> .event-picture) {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 320px);
    align-items: start;
    gap: 17px;
}
.event-picture { grid-column: 2; grid-row: 1; text-align: center; }
.event-picture img { width: auto; height: auto; max-width: 100%; max-height: 320px; }
.event-main > .event-text { grid-column: 1; grid-row: 1; }
.event-text { white-space: pre-wrap; }
.event-options { display: flex; gap: 15px; margin-top: 10px; }
.event-options:empty { display: none; }
.event-option { display: flex; flex: 1; align-items: flex-start; min-width: 0; gap: 10px; }
.event-option img { width: auto; height: auto; max-width: 50%; max-height: 160px; object-fit: contain; }
.event-option .event-text { flex: 1; min-width: 0; }
.event-more { display: block; text-align: center; margin: 15px 0; padding: 12px; border: 1px solid #c4d7e8; border-radius: 4px; background: #edf6ff; color: #0863c3; }
.event-more small { display: block; }
.event-empty { padding: 15px; }
@media (max-width: 767px) {
    main #event_top > .section-title { border-radius: 0; }
    .store-event { padding: 8px; margin-bottom: 10px; border: 0; box-shadow: 0 2px 2px #b3b3b3; line-height: 1.4; }
    .event-pickup, .event-spotlight { padding-top: 22px; }
    .event-feature { left: 3px; height: 22px; font-size: 11px; }
    .event-feature i { font-size: 20px; line-height: 20px; }
    .event-heading { min-height: 24px; }
    .event-heading > span { flex-basis: 70px; height: 24px; padding-left: 5px; font-size: 12px; line-height: 24px; }
    .event-heading > span::after { width: 12px; height: 24px; }
    main .event-heading h3 { padding: 5px 5px 4px 18px; font-size: 12px; line-height: 1.4; }
    .event-main:has(> .event-picture) { display: flex; flex-direction: column; gap: 10px; }
    .event-picture { align-self: center; max-width: 100%; }
    .event-picture img { max-width: min(100%, 300px); max-height: 300px; }
    .event-main > .event-text { padding: 0 5px; }
    .event-option { flex-direction: column; gap: 5px; }
    .event-option img { align-self: center; max-width: min(100%, 150px); max-height: 150px; }
    .event-option .event-text { padding: 0 5px; }
}
