/* What's On – chronological upcoming events and a discreet, closed past-event archive.
   Existing Carnaby cards, typography and colours are reused. */
.campaign-strip[hidden],.past-events[hidden],.event-upcoming-empty[hidden],.group-chat-download[hidden],.whats-new-section[hidden],.whatson-new-card[hidden]{display:none!important}
.event-upcoming-empty{border:1px solid rgba(122,32,62,.18);border-radius:20px;background:#fff6d6;color:#7a203e;padding:22px;font-family:'Gochi Hand',cursive;font-size:clamp(22px,2.6vw,32px);margin-bottom:22px}
.past-events{border-top:1px solid rgba(44,38,34,.2);margin-top:clamp(30px,4vw,50px);padding-top:clamp(17px,2.5vw,26px)}
.past-events-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;list-style:none;padding:4px 0 12px}
.past-events-summary::-webkit-details-marker{display:none}
.past-events-summary .past-event-eyebrow{display:block;letter-spacing:.12em;text-transform:uppercase;font-size:9px;color:#7a203e;margin-bottom:7px}
.past-events-summary .past-events-title{display:block;font-family:'Instrument Serif',serif;font-size:clamp(31px,4vw,54px);letter-spacing:-.045em;font-weight:400;line-height:1}
.past-events-summary .past-events-subtitle{display:block;font-family:'Gochi Hand',cursive;font-size:clamp(16px,2vw,24px);color:#7a203e;margin-top:6px}
.past-event-summary-right{display:flex;align-items:center;gap:14px;white-space:nowrap}
.past-event-count{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#74655f}
.past-event-chevron{height:36px;width:36px;border:1px solid rgba(122,32,62,.3);border-radius:50%;display:grid;place-items:center;color:#7a203e;transition:transform .25s ease;background:#fffaf1}
.past-events[open] .past-event-chevron{transform:rotate(180deg)}
.past-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:10px 0 6px}
.archive-event{display:grid;grid-template-columns:clamp(90px,12vw,138px) minmax(0,1fr);gap:clamp(13px,2vw,20px);align-items:center;min-width:0;min-height:125px;border-radius:18px;border:1px solid rgba(44,38,34,.12);background:#fffaf1;padding:10px;overflow:hidden}
.archive-event:nth-child(2n){background:#f4e9e9}
.archive-event-photo{height:100%;min-height:110px;border-radius:12px;overflow:hidden;background:#efe4d4}
.archive-event-photo img{width:100%;height:100%;object-fit:cover;display:block}
.archive-event.is-poster img{object-fit:contain;background:#1e6874}
.archive-event-body{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}
.archive-event-status{font-size:9px;line-height:1;letter-spacing:.06em;text-transform:uppercase;border:1px solid rgba(122,32,62,.24);border-radius:999px;padding:6px 9px;color:#7a203e}
.archive-event h3{font-family:'Instrument Serif',serif;font-size:clamp(25px,2.65vw,39px);font-weight:400;line-height:.93;letter-spacing:-.035em;margin:2px 0;overflow-wrap:anywhere}
.archive-event-date{font-size:11px;color:#6d6059;line-height:1.25}
.past-events-summary:focus-visible{outline:2px solid #7a203e;outline-offset:5px;border-radius:6px}
@media(max-width:760px){
  .past-event-grid{grid-template-columns:1fr;gap:9px}
  .archive-event{grid-template-columns:92px minmax(0,1fr);min-height:107px;gap:12px;padding:8px;border-radius:14px}
  .archive-event-photo{min-height:92px}
  .archive-event h3{font-size:28px}
  .past-event-count{display:none}
  .past-events-summary{gap:10px}
  .past-event-chevron{width:34px;height:34px}
}

.whatson-new-grid.is-single{grid-template-columns:minmax(0,1fr);max-width:760px}
