/* Bolten Sonderoeffnungszeiten 1.0.5: ruhiges Kartenlayout, Bolten-Rot #931831 */
.bsz-wrap{--bsz-red:#931831;--bsz-deep:#741126;--bsz-tint:#fbf2f4;--bsz-line:#e8dfe2;--bsz-muted:#746e71;--bsz-ink:#292529;max-width:1180px;margin:0 auto;color:var(--bsz-ink);font:inherit}
.bsz-wrap,.bsz-wrap *{box-sizing:border-box}
.bsz-wrap [hidden]{display:none!important}
.bsz-wrap .bsz-header{margin:0 0 20px;padding:0;border:0;background:none}
.bsz-wrap .bsz-eyebrow{display:block;color:var(--bsz-red);font-weight:800;font-size:.72rem;letter-spacing:.13em;margin-bottom:7px}
.bsz-wrap .bsz-header h2{margin:0 0 6px;padding:0;border:0;color:#282127;font-size:clamp(1.5rem,3vw,2.25rem);font-weight:750;line-height:1.18;letter-spacing:-.025em}
.bsz-wrap .bsz-header p{margin:0;color:var(--bsz-muted);font-size:.96rem;line-height:1.5}
.bsz-wrap .bsz-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 14px;align-items:end;padding:18px;margin:0 0 16px;background:#f8f6f6;border:1px solid #eee8ea;border-radius:16px;box-shadow:0 2px 9px #231c2006}
.bsz-wrap .bsz-filters label{display:flex;flex-direction:column;gap:6px;margin:0;font-size:.78rem;line-height:1.35;font-weight:700;color:#554d51;min-width:0}
.bsz-wrap .bsz-filters select,.bsz-wrap .bsz-filters input[type=search]{width:100%;min-width:0;min-height:42px;margin:0;padding:9px 30px 9px 11px;font:inherit;font-size:.88rem;font-weight:450;background:#fff;color:#30282c;border:1px solid #ddd3d7;border-radius:10px;box-shadow:none;outline:none}
.bsz-wrap .bsz-filters input[type=search]{padding-right:12px}
.bsz-wrap .bsz-filters select:focus,.bsz-wrap .bsz-filters input[type=search]:focus{border-color:var(--bsz-red);outline:2px solid #93183126;outline-offset:1px}
.bsz-wrap .bsz-filters .bsz-check{flex-direction:row;align-items:center;gap:8px;min-height:38px;font-size:.86rem;cursor:pointer;font-weight:650}
.bsz-wrap .bsz-filters input[type=checkbox]{width:17px;height:17px;margin:0;flex:none;accent-color:var(--bsz-red)}
.bsz-wrap .bsz-reset{min-height:38px;padding:8px 13px;border-radius:10px;border:1px solid var(--bsz-red);background:var(--bsz-red);color:#fff;font:inherit;font-size:.85rem;font-weight:700;cursor:pointer;transition:background-color .15s ease,transform .15s ease}
.bsz-wrap .bsz-reset:hover,.bsz-wrap .bsz-reset:focus{background:var(--bsz-deep);color:#fff}
.bsz-wrap .bsz-reset:active{transform:translateY(1px)}
.bsz-wrap .bsz-count{margin:0 0 15px;color:#5e5359;font-size:.88rem;font-weight:650}
.bsz-wrap .bsz-city{margin:0 0 14px;border:1px solid var(--bsz-line);background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 12px #2c192008}
.bsz-wrap .bsz-city summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;padding:15px 18px;background:#fff;color:#272127;line-height:1.25}
.bsz-wrap .bsz-city summary::-webkit-details-marker{display:none}
.bsz-wrap .bsz-city summary:focus-visible{outline:2px solid var(--bsz-red);outline-offset:-3px}
.bsz-wrap .bsz-city-heading{display:flex;align-items:center;gap:10px;min-width:0;color:#2a2528;font-size:1.15rem;font-weight:800}
.bsz-wrap .bsz-city-marker{display:grid;place-items:center;width:30px;height:30px;flex:none;color:var(--bsz-red);background:var(--bsz-tint);border-radius:9px;font-size:1.35rem;line-height:1}
.bsz-wrap .bsz-city-count{margin-left:auto;color:#8a777f;font-size:.77rem;font-weight:650;white-space:normal;text-align:right}
.bsz-wrap .bsz-city summary:after{content:'';width:8px;height:8px;flex:none;border-right:2px solid var(--bsz-red);border-bottom:2px solid var(--bsz-red);transform:rotate(45deg);transition:transform .18s ease;margin:0 3px 5px 4px}
.bsz-wrap .bsz-city[open] summary:after{transform:rotate(225deg);margin-top:7px;margin-bottom:0}
.bsz-wrap .bsz-city-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:11px 13px 14px;background:#fcfafb;border-top:1px solid #f0eaed}
.bsz-wrap .bsz-branch{min-width:0;display:flex;flex-direction:column;gap:10px;padding:13px 14px;border:1px solid #ece5e8;border-radius:12px;background:#fff;box-shadow:0 1px 5px #25151a06}
.bsz-wrap .bsz-address{display:flex;align-items:flex-start;gap:9px;min-width:0}
.bsz-wrap .bsz-pin{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;background:var(--bsz-tint);color:var(--bsz-red);border-radius:8px;line-height:1.1;font-size:1.3rem}
.bsz-wrap .bsz-address-copy{display:flex;flex-direction:column;gap:3px;min-width:0;padding-top:3px}
.bsz-wrap .bsz-address strong{color:#292328;font-size:.92rem;font-weight:750;line-height:1.4;overflow-wrap:anywhere}
.bsz-wrap .bsz-address span:not(.bsz-pin){color:var(--bsz-muted);font-size:.77rem;line-height:1.35}
.bsz-wrap .bsz-daylist{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr));gap:7px;min-width:0}
.bsz-wrap .bsz-day{display:flex;flex-direction:column;align-items:stretch;gap:5px;min-width:0;padding:10px 11px;border-radius:9px;background:#f7f5f6;border:1px solid #f3eff0}
.bsz-wrap .bsz-date{display:flex;flex-direction:column;gap:3px;font-size:.75rem;font-weight:750;line-height:1.3;color:#5a5056}
.bsz-wrap .bsz-date small{color:#897f84;font-size:.71rem;font-weight:450}
.bsz-wrap .bsz-hour{text-align:left;font-size:.86rem;line-height:1.4;font-weight:800;overflow-wrap:anywhere}
.bsz-wrap .bsz-open{color:#2b6344}
.bsz-wrap .bsz-closed{color:var(--bsz-red)}
.bsz-wrap .bsz-note{margin:2px 0 0!important;padding:7px 8px;background:#fff;border-left:2px solid var(--bsz-red);border-radius:3px 7px 7px 3px;color:#59464f;font-size:.74rem;line-height:1.5;overflow-wrap:anywhere}
.bsz-wrap .bsz-empty{padding:18px;background:#fff;border:1px dashed var(--bsz-line);border-radius:12px;color:var(--bsz-muted);font-size:.9rem}
@media(max-width:960px){.bsz-wrap .bsz-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.bsz-wrap .bsz-city-body{grid-template-columns:1fr}}
@media(max-width:600px){.bsz-wrap .bsz-header{margin-bottom:16px}.bsz-wrap .bsz-filters{padding:12px;gap:10px;border-radius:13px}.bsz-wrap .bsz-filters label:nth-child(3){grid-column:1/-1}.bsz-wrap .bsz-filters select,.bsz-wrap .bsz-filters input[type=search]{min-height:40px;font-size:.82rem}.bsz-wrap .bsz-city summary{padding:12px 13px}.bsz-wrap .bsz-city-heading{font-size:1.04rem}.bsz-wrap .bsz-city-body{padding:9px;gap:8px}.bsz-wrap .bsz-branch{padding:12px;gap:9px}.bsz-wrap .bsz-daylist{grid-template-columns:repeat(2,minmax(0,1fr))}.bsz-wrap .bsz-date{font-size:.73rem}.bsz-wrap .bsz-hour{font-size:.8rem}}
@media(max-width:410px){.bsz-wrap .bsz-filters{grid-template-columns:1fr}.bsz-wrap .bsz-filters label:nth-child(3){grid-column:auto}.bsz-wrap .bsz-daylist{grid-template-columns:1fr}.bsz-wrap .bsz-day{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center}.bsz-wrap .bsz-note{grid-column:1/-1}.bsz-wrap .bsz-city-count{font-size:.7rem}}
@media(prefers-reduced-motion:reduce){.bsz-wrap .bsz-reset,.bsz-wrap .bsz-city summary:after{transition:none}}
