/* The server catalog uses native disclosure until its enhanced controls are ready. */
.event-ssr-disclosure{display:none;margin-top:0;text-align:right}
.event-ssr-disclosure>summary{display:flex;min-height:24px;padding:0 6px;align-items:center;justify-content:flex-end;gap:8px;color:var(--charcoal);font-size:11px;font-weight:700;cursor:pointer;list-style:none}
.event-ssr-disclosure>summary::-webkit-details-marker{display:none}
.event-ssr-disclosure>summary:after{width:7px;height:7px;margin-top:-4px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;content:"";transform:rotate(45deg)}
.event-ssr-disclosure[open]>summary:after{margin-top:4px;transform:rotate(225deg)}
@media(max-width:620px){
  .event-ssr-disclosure.has-mobile-overflow{display:block}
  [data-event-catalog-ssr] .event-major-sticky:not(:has(.event-ssr-disclosure[open])) .event-major-tabs>button:nth-child(n+9){display:none}
}
@media(min-width:621px) and (max-width:900px){
  .event-ssr-disclosure.has-tablet-overflow{display:block}
  [data-event-catalog-ssr] .event-major-sticky:not(:has(.event-ssr-disclosure[open])) .event-major-tabs>button:nth-child(n+13){display:none}
}

/* Shared server/client poster geometry. */
.event-poster-gallery{padding-top:0;padding-bottom:28px}
.event-poster-gallery>header{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:16px}
.event-poster-gallery>header p{color:var(--gold);font-size:10px;letter-spacing:.18em}
.event-poster-gallery h2{font-size:22px;margin-top:4px}
.event-poster-gallery>header>span{font-size:12px;color:var(--muted)}
.event-poster-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;align-items:start}
/* Keep absolute accessibility text inside the horizontally scrolling poster cards. */
.event-poster-card{position:relative;min-width:0;border:1px solid var(--line);background:var(--white)}
.event-poster-open{display:block;padding:12px;background:var(--ivory)}
.event-poster-open img{display:block;width:100%;height:340px;object-fit:contain}
.event-poster-caption{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:16px}
.event-poster-caption h3{flex-basis:100%;font-size:15px;overflow-wrap:anywhere}
.event-poster-caption>a{font-size:12px;text-decoration:underline;text-underline-offset:3px}
.event-poster-related{color:var(--wine);font-weight:700}
.event-poster-card a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media(max-width:640px){.event-poster-gallery>header{display:block}.event-poster-gallery>header>span{display:block;margin-top:6px}.event-poster-grid{display:flex;overflow-x:auto;scroll-snap-type:x proximity;gap:12px;padding:4px 4px 12px}.event-poster-card{flex:0 0 85%;scroll-snap-align:start}.event-poster-card:only-child{flex-basis:100%}.event-poster-open img{height:290px}}

/* Keep the subsection visible while scanning prices on either screen size. */
.event-price-page .event-procedure-group > h3,
.event-price-page .regular-price-group-card > header {
  margin: 0;
  padding: 11px 16px;
  color: #48382c;
  background: #f3ede5;
  border-inline-start: 4px solid #86674c;
}
.event-price-page .event-procedure-group + .event-procedure-group { margin-top: 14px; }
@media (max-width: 700px) {
  .event-price-page .event-procedure-group > h3 { padding: 9px 12px; }
}
