/* Long translations and ticket totals must grow within the page, not outside it. */
.catalog-heading{gap:16px;align-items:flex-end}
.catalog-heading>div{min-width:0}
.catalog-heading h2{overflow-wrap:anywhere}
.catalog-heading>small{flex:none}
.showcase-heading{flex-wrap:wrap}
.showcase-heading .primary{max-width:100%;white-space:normal;text-align:center}
.event-topline{flex-wrap:wrap}
.event-topline>div{flex-wrap:wrap;max-width:100%}
.event-topline>div .outline:first-child{max-width:none}
.row-option{flex-wrap:wrap}
.row-option>span{flex:1 1 130px;overflow-wrap:anywhere}
.row-option>strong{margin-left:auto}
.selection-total{display:flex;flex-wrap:wrap;gap:16px}
.selection-total .summary-price{margin-left:auto}
.total{flex-wrap:wrap;align-items:baseline}
.cart-line>div,.reference-ticket>div{min-width:0}
.panel-head{gap:16px;align-items:flex-start}
.panel-head h2{min-width:0;overflow-wrap:anywhere}
.panel-head .close{flex:none}
.reference-ticket h3,.reference-ticket .terms{overflow-wrap:anywhere}
.reference-ticket-actions{grid-column:1/-1;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.reference-ticket-actions .stepper{flex:none;gap:2px}
.reference-ticket-actions .stepper button{width:44px;height:44px;min-height:44px;grid-column:auto}
.reference-ticket-actions>.outline{flex:1 1 190px;min-width:0;min-height:48px;white-space:normal;overflow-wrap:anywhere}
.reference-ticket-actions .stepper b{min-width:22px;text-align:center}
.reference-more>summary{cursor:pointer;padding:20px 24px;font-weight:650;border-top:1px solid var(--line)}
.reference-more>summary:focus-visible{outline:2px solid #8069ef;outline-offset:-4px}
@media(max-width:540px){
 .event-topline{align-items:flex-start;row-gap:12px}
 .event-topline>div{margin-left:auto}
 .event-topline .outline.small{min-height:40px;white-space:normal}
 .reference-ticket-actions>.outline{flex-basis:100%}
 .reference-ticket-price strong{font-size:21px}
 .reference-more>summary{padding:20px}
 .mobile-purchase{flex-wrap:wrap;row-gap:8px}
 .mobile-purchase>div{flex:1 1 130px}
 .mobile-purchase>.primary{max-width:100%;white-space:normal}
}
@media(max-width:360px){
 .showcase-heading .primary{padding-inline:12px;font-size:11px}
 .home-showcase .hero-slide{grid-template-columns:80px minmax(0,1fr);gap:12px}
 .home-showcase .hero-feature h2,.home-showcase .hero-feature h3{font-size:19px}
 .home-showcase .hero-art.hero-carousel .hero-slide>img{height:145px}
 .catalog-heading{align-items:center}
 .catalog-heading h2{font-size:27px}
 .event-topline>div{margin-left:0;width:100%}
 .event-topline>div>button{flex:1}
}
