/* Shared catalogue cards and event pages; only layout adaptations here. */
.bs-main{padding-top:28px;padding-bottom:72px}.bs-main [hidden]{display:none!important}.bs-main .crumbs{flex-wrap:wrap}.bs-hero{padding:30px 0 18px;max-width:1060px}.bs-hero h1{font-family:Oswald,sans-serif;font-size:clamp(34px,5vw,62px);font-weight:700;line-height:1.08;text-transform:uppercase;margin:12px 0 22px}.bs-hero>p{max-width:850px;font-size:17px;line-height:1.65;color:var(--c-secondary)}.bs-main .bs-small{font-size:13px;line-height:1.6;color:var(--c-secondary)}.bs-main a:focus-visible,.bs-main button:focus-visible,.bs-main input:focus-visible,.bs-main select:focus-visible,.bs-table-scroll:focus-visible{outline:3px solid var(--c-text);outline-offset:4px}.bs-nav{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 26px}.bs-nav a{border:1px solid var(--c-border-ctrl);border-radius:12px;min-height:44px;padding:10px 16px;font-size:14px;background:var(--c-surface)}.bs-nav a[aria-current=page]{background:var(--c-text);color:var(--c-bg)}
.bs-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:24px;border-radius:var(--radius-card);background:var(--c-surface);margin:24px 0 16px;align-items:end}.bs-field{display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--c-secondary);min-width:0}.bs-field input,.bs-field select{font:inherit;font-size:15px;color:var(--c-text);width:100%;min-width:0;min-height:48px;padding:10px 12px;border:1px solid var(--c-border-ctrl);border-radius:12px;background:var(--c-bg)}.bs-count{font-size:14px;color:var(--c-secondary);margin:16px 0 20px}.bs-empty{padding:24px;border-radius:var(--radius-card);background:var(--c-surface)}.bs-empty button{background:none;color:inherit;border:0;text-decoration:underline;font:inherit;min-height:44px}.bs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:28px 0 48px}.bs-card{min-width:0;display:flex;flex-direction:column;gap:12px}.bs-card>.card{width:100%;flex:1;min-width:0}.bs-card .card__title{font-size:20px;margin:0;line-height:1.35}.bs-card .card__row .meta{font-size:11px;line-height:1.5}.bs-card .card__row .badge{white-space:normal;height:auto;min-height:28px;line-height:1.2;padding:7px 12px}.bs-card .card__place{font-size:14px;line-height:1.55}.bs-card .card__foot{align-items:flex-start;flex-wrap:wrap;gap:10px}.bs-card .price{font-size:17px;line-height:1.4;overflow-wrap:anywhere}.bs-card .card__by{font-size:13px;line-height:1.5}.bs-compare-label{display:flex;gap:10px;align-items:center;min-height:44px;font-size:14px;padding:0 12px;cursor:pointer}.bs-compare-label input{width:20px;height:20px;accent-color:var(--c-text)}.bs-compare-bar{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:16px;background:var(--c-surface);border:1px solid var(--c-border-ctrl);border-radius:16px;position:sticky;top:88px;z-index:10}.bs-compare-bar>span{margin-right:auto}.bs-main #comparison{scroll-margin-top:170px}.bs-main .prose-block{margin:42px 0}.bs-main .prose{font-size:16px;line-height:1.8;max-width:none}.bs-main .prose p{max-width:920px;margin-bottom:18px}.bs-main .prose ul{padding-left:22px}.bs-main .prose li{margin-bottom:10px}.bs-main .prose a,.bs-small a{color:var(--c-text);text-decoration:underline;text-underline-offset:3px}.bs-table-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--c-border-ctrl);border-radius:16px;margin:20px 0}.bs-table-scroll table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.65}.bs-table-scroll th,.bs-table-scroll td{padding:16px;min-width:160px;vertical-align:top;text-align:left;border-bottom:1px solid var(--c-divider);overflow-wrap:anywhere}.bs-table-scroll th{background:var(--c-surface);font-weight:600}.bs-table-scroll tr:last-child>*{border-bottom:0}.bs-table-scroll th:first-child{min-width:150px}.bs-table-scroll a{text-decoration:underline;text-underline-offset:3px}.bs-details{margin:26px 0}.bs-details>summary{min-height:44px;cursor:pointer;font-weight:600;padding:12px 0}.bs-detail>.cover{margin:24px 0 36px}.bs-detail .event-grid{grid-template-columns:minmax(0,1fr) 360px}.bs-detail .event-main,.bs-detail .event-side{min-width:0}.bs-detail .event-title{margin:22px 0;overflow-wrap:anywhere}.bs-detail .event-lead{line-height:1.7}.bs-detail .ticket__details>div{align-items:flex-start;gap:14px}.bs-detail .ticket__details b{overflow-wrap:anywhere;text-align:right;line-height:1.5}.bs-detail .bs-ticket-price{font-size:30px;line-height:1.25;overflow-wrap:anywhere}.bs-detail .ticket>a[target]{display:block;min-height:48px;padding:12px 0;font-size:16px;text-decoration:underline;text-underline-offset:4px}.bs-detail .program{list-style:none}.bs-detail .program__time{width:30px;font-size:20px}.bs-detail .program__title{font-size:16px;line-height:1.7;font-weight:500}.bs-detail .event-side .ticket{gap:18px}.bs-form-note{font-size:13px;color:var(--c-secondary)}
@media(max-width:1050px){.bs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bs-detail .event-grid{grid-template-columns:minmax(0,1fr) 300px}.bs-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.bs-detail .event-grid{grid-template-columns:minmax(0,1fr)}.bs-detail .event-side .ticket{position:static}.bs-compare-bar{top:72px}.bs-main .bs-nav{gap:8px}.bs-nav a{font-size:13px;padding:10px 12px}.bs-hero{padding-top:20px}.bs-hero h1{font-size:36px}.bs-detail .event-title{font-size:34px}.bs-table-scroll th,.bs-table-scroll td{padding:12px;min-width:155px}.bs-detail>.cover{margin-bottom:24px}.bs-detail .bs-ticket-price{font-size:26px}}
@media(max-width:520px){.bs-grid{grid-template-columns:minmax(0,1fr);gap:24px}.bs-filters{grid-template-columns:minmax(0,1fr);padding:20px}.bs-hero h1{font-size:32px}.bs-hero>p{font-size:16px}.bs-detail .event-title{font-size:30px}.bs-main .prose-block{margin:32px 0}.bs-compare-bar{gap:10px}.bs-compare-bar .btn{font-size:12px;padding:0 12px}.bs-card .card__title{font-size:20px}.bs-detail .ticket{padding:24px}.bs-main{padding-bottom:60px}}

.bs-filter-panel{margin:20px 0}.bs-filter-panel>summary{min-height:48px;cursor:pointer;font-weight:600;padding:12px 0}.bs-filter-panel:not([open]){padding-bottom:12px;border-bottom:1px solid var(--c-divider)}
[data-credit-calculator] .bs-filters label{display:flex;flex-direction:column;gap:8px;font-size:14px;min-width:0}[data-credit-calculator] input,[data-credit-calculator] select{width:100%;min-width:0;padding:12px;font:inherit;color:var(--c-text);background:var(--c-bg);border:1px solid var(--c-border-ctrl);border-radius:12px;min-height:48px}.bs-main .event-main>header .eyebrow{line-height:1.6}.bs-main .prose-block[id]{scroll-margin-top:120px}.bs-main .prose-block>.prose{overflow-wrap:anywhere}
