.bs{--bs-line:#e3e3e3;--bs-muted:#6a6a6a;width:min(40rem,100%);margin:0 auto 1rem}
.bs *{box-sizing:border-box}
.bs__karte{display:flex;gap:1.15rem;align-items:flex-start;padding:1.15rem 1.25rem;border:1px solid var(--bs-line);border-radius:14px;margin:0 0 .85rem;background:#fff}
.bs__karte--naechster{border-color:var(--col-red,#e60005);border-width:2px;box-shadow:0 2px 10px rgba(230,0,5,.08)}
.bs__datum{flex:0 0 auto;width:3.6em;text-align:center;line-height:1.1;padding:.45em 0;border-radius:10px;background:var(--col-black-05,#f2f2f2);color:var(--col-black-80,#333)}
.bs__karte--naechster .bs__datum{background:var(--col-red,#e60005);color:#fff}
.bs__tag{display:block;font-size:1.55em;font-weight:700;font-variant-numeric:tabular-nums}
.bs__monat{display:block;font-size:.72em;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.bs__body{min-width:0;flex:1 1 auto}
.bs__marke{display:inline-block;font-size:.7em;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--col-red,#e60005);background:#fce9e8;padding:.25em .65em;border-radius:999px;margin:0 0 .45em}
.bs__wann{margin:0;font-size:1.05em;font-weight:700;line-height:1.35}
.bs__zeit{margin:.1em 0 0;font-size:.95em;color:var(--col-black-80,#333);font-variant-numeric:tabular-nums}
.bs__wo{margin:.55em 0 0;line-height:1.45}
.bs__halle{display:block;font-weight:600}
.bs__adresse{display:block;font-size:.875em;color:var(--bs-muted)}
.bs__knopf{display:inline-flex;align-items:center;gap:.4em;margin-top:.9em;padding:.6em 1.15em;border-radius:999px;background:var(--col-red,#e60005);color:#fff;font-size:.875em;font-weight:700;text-decoration:none;transition:background-color .15s ease}
.bs__knopf:hover,.bs__knopf:focus-visible{background:var(--col-dark-red,#a51e0f);color:#fff;text-decoration:none}
.bs__pfeil{width:.6em;height:.6em;fill:currentColor;flex:0 0 auto;transition:transform .15s ease}
.bs__knopf:hover .bs__pfeil{transform:translateX(2px)}
.bs__hinweis{margin:1.1rem 0 0;font-size:.8125em;line-height:1.55;color:var(--bs-muted)}
.bs__leer{margin:0;padding:1.15rem 1.25rem;border:1px solid var(--bs-line);border-radius:14px;color:var(--bs-muted)}
@media (max-width:560px){
  .bs__karte{gap:.85rem;padding:1rem}
  .bs__datum{width:3.2em}
  .bs__knopf{width:100%;justify-content:center}
}
