/* sanitaerservice-stuttgart.de – Leitmotiv „Kehrwoche“ (design/seitenkonzept.md) */
@font-face{font-family:"Epilogue";font-weight:500;font-display:swap;src:url(/fonts/epilogue-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Epilogue";font-weight:700;font-display:swap;src:url(/fonts/epilogue-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Epilogue";font-weight:800;font-display:swap;src:url(/fonts/epilogue-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Literata";font-weight:400;font-display:swap;src:url(/fonts/literata-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Literata";font-weight:400;font-style:italic;font-display:swap;src:url(/fonts/literata-latin-400-italic.woff2) format("woff2")}
@font-face{font-family:"Literata";font-weight:600;font-display:swap;src:url(/fonts/literata-latin-600-normal.woff2) format("woff2")}
:root{--schiefer:#22313F;--schiefer2:#33475A;--terra:#B4532A;--anruf:#9E4522;--terratext:#9E4522;--putz:#F5F2EC;--salbei:#DDE5DF;--salbei2:#EAF0EC;--holz:#C9A77C;--gruen:#1F6B40;--weiss:#fff;
--h:"Epilogue",system-ui,sans-serif;--t:"Literata",Georgia,serif;--r:10px;--s1:8px;--s2:16px;--s3:24px;--s4:40px;--s5:64px}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:80px}
body{margin:0;background:var(--putz);color:var(--schiefer);font:400 17.5px/1.7 var(--t)}
img,svg{max-width:100%;height:auto}
a{color:var(--terratext);text-underline-offset:3px}
a:hover{color:var(--schiefer)}
h1,h2,h3{font-family:var(--h);line-height:1.2;margin:0 0 var(--s2);color:var(--schiefer);overflow-wrap:break-word;hyphens:auto}
h1{font-weight:800;font-size:40px;letter-spacing:-.01em}
h2{font-weight:700;font-size:30px}
h3{font-weight:700;font-size:20px}
p{margin:0 0 var(--s2)}
ul,ol{margin:0;padding:0}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:99;background:#fff;padding:8px 12px}
.ic{flex:none;vertical-align:middle}
.lese{max-width:68ch}
.lede{font-size:20px;line-height:1.6;max-width:62ch}
.mehr{font-family:var(--h);font-weight:500;font-size:15px;margin-top:var(--s2)}
.mehr a::after{content:" →"}
.kicker{display:flex;align-items:center;gap:8px;font:500 15px/1.3 var(--h);color:var(--terratext);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--s2)}
.kicker a{color:inherit;text-decoration:none}
/* Anruf */
.ruf{display:inline-flex;align-items:center;gap:10px;background:var(--anruf);color:#fff;border-radius:999px;padding:10px 18px;font:700 16px/1.2 var(--h);text-decoration:none;white-space:nowrap}
.ruf:hover{background:#7F3618;color:#fff}
.ruf.gross{padding:14px 24px;font-size:18px}
.ruf b{font-weight:800;letter-spacing:.02em}
.ruf.hell{background:#fff;color:var(--anruf)}
.leise{font:500 16px var(--h);color:var(--schiefer)}
.anrufzeile{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 20px;margin:var(--s3) 0 0;padding:14px 18px;border-left:5px solid var(--terra);background:var(--salbei2);font:500 16px/1.4 var(--h)}
.anrufzeile a{display:inline-flex;align-items:center;gap:8px;color:var(--anruf);text-decoration:none;font-weight:800}
/* Kopf: Hausflurtafel */
.kopf{position:sticky;top:0;z-index:50;background:var(--schiefer);color:#fff;box-shadow:0 2px 0 var(--terra)}
.kopf-g{display:flex;align-items:center;gap:20px;min-height:64px}
.marke{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font:500 17px/1.1 var(--h)}
.marke b{font-weight:800;display:block}
.marke span{display:flex;flex-direction:column}
.menue{display:flex;align-items:center;gap:4px;margin-left:auto;font:500 15.5px var(--h)}
.menue>a,.gebiet>summary{position:relative;color:#fff;text-decoration:none;padding:20px 10px;cursor:pointer;list-style:none}
.gebiet>summary::-webkit-details-marker{display:none}
.gebiet>summary::after{content:" ▾"}
.menue>a::after,.gebiet>summary::before{content:"";position:absolute;left:50%;bottom:6px;width:0;height:0;border:7px solid transparent;border-bottom-color:var(--terra);transform:translateX(-50%) scale(0);transition:transform .15s}
.menue>a:hover::after,.menue>a[aria-current]::after,.gebiet[open]>summary::before,.gebiet>summary:hover::before{transform:translateX(-50%) scale(1)}
.gebiet{position:static}
.gebiet:not([open])>.gb-panel{display:none}
.gb-panel{position:absolute;left:0;right:0;top:100%;background:var(--putz);color:var(--schiefer);border-bottom:4px solid var(--terra);box-shadow:0 12px 28px rgba(0,0,0,.18);
display:grid;grid-template-columns:1fr 2fr 2fr;gap:var(--s3);padding:var(--s3) max(20px,calc((100vw - 1120px)/2));max-height:calc(100vh - 64px);overflow:auto}
.gb-panel ul{list-style:none}.gb-panel li{margin:2px 0}
.gb-panel a{color:var(--schiefer);text-decoration:none;font:500 15px/1.5 var(--h)}
.gb-panel a:hover{color:var(--terratext);text-decoration:underline}
.gb-kr,.gb-le ul{columns:2}
.gb-h{font:800 13px var(--h);text-transform:uppercase;letter-spacing:.08em;color:var(--terratext);margin-bottom:6px}
.gb-ruf{grid-column:1/-1;justify-self:start;color:#fff!important}
.kopf-ruf{margin-left:8px}
.kopf-ruf .kr-l{display:none}
/* Held */
.held{background:linear-gradient(180deg,var(--salbei) 0,var(--putz) 100%);padding:var(--s4) 0 var(--s5)}
.held-g{display:grid;grid-template-columns:1.25fr 1fr;gap:var(--s4);align-items:center}
.held h1{font-size:46px}
.held-k{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s3);margin-top:var(--s3)}
.tafel{display:block;width:100%;max-width:400px;margin:0 auto;filter:drop-shadow(0 10px 18px rgba(34,49,63,.22))}
.tf-k{font:500 13px var(--h);fill:#E9C9B8;letter-spacing:.14em;text-transform:uppercase}
.tf-o{font:800 30px var(--h);fill:#fff}
.tf-d{font:700 13px var(--h);fill:#fff}
.tf-a{font:500 16px var(--h);fill:var(--schiefer)}
.tf-a.an{font-weight:800;fill:#7A3518}
.tf-l .tf-f{transition:fill .15s}
.tf-l:hover .tf-f,.tf-l:focus .tf-f{fill:#F3D9CC}
.minitafel{flex:none}
/* Bloecke */
main{display:block}
.blk{margin:var(--s5) 0}
.blk>h2{max-width:30ch}
.zt-lead,.blk>p{max-width:68ch}
.kkarten{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--s2)}
.kkarten li{position:relative;background:#fff;border:1px solid #CBD6CE;border-top:6px solid var(--schiefer);border-radius:6px;padding:var(--s3) var(--s3) var(--s2);min-width:0}
.kk-n{position:absolute;top:-16px;right:16px;width:30px;height:30px;border-radius:50%;background:var(--terra);color:#fff;font:800 15px/30px var(--h);text-align:center}
.schritte{list-style:none;counter-reset:s;display:grid;gap:var(--s2);max-width:820px}
.schritte li{counter-increment:s;display:grid;grid-template-columns:44px minmax(0,1fr);gap:var(--s2);align-items:start}
.schritte li::before{content:counter(s);width:40px;height:40px;border-radius:8px;background:var(--schiefer);color:#fff;font:800 18px/40px var(--h);text-align:center}
.schritte li p{margin:0;padding-top:6px}
.hakenliste{list-style:none;display:grid;gap:var(--s2);max-width:820px}
.hakenliste li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;background:var(--salbei2);border-radius:8px;padding:14px 16px}
.hakenliste .ic{color:var(--gruen);margin-top:4px}
.hakenliste p{margin:0}
.tafelzitat{margin:0 0 var(--s3);padding:var(--s3) var(--s4);background:var(--schiefer);color:#fff;border-radius:var(--r);border-left:10px solid var(--terra);max-width:860px}
.tafelzitat p{font:700 24px/1.4 var(--h);margin:0}
.zspalten{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--s3)}
.zspalten li{border-top:3px solid var(--terra);padding-top:var(--s2);min-width:0}
.zt-g{display:grid;grid-template-columns:1fr 1fr;gap:var(--s3);align-items:start}
.zt-lead{font-size:19px}
.zettel,.zettel-voll{background:#FFFDF8;border:1px solid #E3D6C2;border-radius:4px;padding:var(--s3);box-shadow:3px 4px 0 var(--salbei);position:relative}
.zettel::before{content:"";position:absolute;top:-8px;left:24px;width:58px;height:16px;background:rgba(201,167,124,.55);transform:rotate(-3deg)}
.zettel p:last-child,.zettel-voll p:last-child{margin-bottom:0}
.ortzitat{margin:var(--s3) 0 0;padding:var(--s3);border:2px solid var(--schiefer);border-radius:var(--r);max-width:760px;position:relative}
.ortzitat p{font:italic 400 21px/1.5 var(--t);margin:0 0 8px}
.ortzitat footer{font:700 14px var(--h);color:var(--terratext);text-transform:uppercase;letter-spacing:.08em}
.vergleich{margin:var(--s3) 0 0}
.vergleich figcaption{font:800 19px var(--h);margin-bottom:12px}
.vg-g{display:grid;grid-template-columns:1fr 1fr;gap:0;border:2px solid var(--schiefer);border-radius:var(--r);overflow:hidden}
.vg-s{padding:var(--s2) var(--s3);min-width:0}
.vg-s+.vg-s{background:var(--salbei);border-left:2px solid var(--schiefer)}
.vg-h{font:800 16px var(--h);text-transform:uppercase;letter-spacing:.05em;color:var(--terratext)}
.vg-s ul{padding-left:18px}
.merk{display:flex;gap:var(--s2);margin:var(--s3) 0 0;padding:var(--s3);background:var(--holz);background:linear-gradient(135deg,#D7BC97,#C9A77C);border-radius:var(--r);max-width:820px}
.merk .ic{width:34px;height:34px;color:var(--schiefer)}
.merk h3{margin-bottom:6px}
.merk p{margin:0 0 6px}
.merk a{color:var(--schiefer);font-weight:600}
/* Notfall-Tafel */
.nk-g{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:var(--s2)}
.nk{background:#fff;border-radius:var(--r);border:1px solid #CBD6CE;padding:var(--s2) var(--s2) var(--s3);display:flex;flex-direction:column;gap:6px;min-width:0}
.nk-t{display:flex;align-items:center;gap:8px;margin:0;font:800 18px/1.25 var(--h)}
.nk-t .ic{color:var(--terra)}
.nk p{font-size:15.5px;line-height:1.5;margin:0}
.nk p span{display:block;font:700 12px var(--h);text-transform:uppercase;letter-spacing:.07em;color:var(--terratext)}
.nk>a{margin-top:auto;font:700 15px var(--h)}
/* Kalender */
.kalender{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s2);margin-top:var(--s3)}
.kal-z{background:#fff;border-radius:var(--r);border:1px solid #CBD6CE;overflow:hidden;min-width:0}
.kal-z h3{margin:0;padding:12px 16px;background:var(--schiefer);color:#fff;font-size:18px}
.kal-r{display:flex;gap:4px;padding:10px 12px 0;border-bottom:2px solid var(--terra)}
.kal-r button{flex:1;font:700 14px var(--h);color:var(--schiefer);background:var(--salbei);border:0;border-radius:6px 6px 0 0;padding:8px 4px;cursor:pointer;min-width:0}
.kal-r button[aria-selected=true]{background:var(--terra);color:#fff}
.kal-p{padding:12px 16px 16px}
.kal-m{font:800 14px var(--h);text-transform:uppercase;letter-spacing:.06em;color:var(--terratext);margin:0 0 8px}
.js .kal-r{display:flex}
.kal-r{display:none}
.js .kal-p[hidden]{display:none}
.abhaken{list-style:none;display:grid;gap:10px}
.abhaken label{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;cursor:pointer;align-items:start}
.abhaken input{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;margin:0}
.abhaken .hk{width:26px;height:26px;border:2px solid var(--schiefer);border-radius:6px;display:grid;place-items:center;background:#fff;margin-top:2px}
.abhaken .hk .ic{width:18px;height:18px;color:transparent}
.abhaken input:checked+.hk{background:var(--gruen);border-color:var(--gruen)}
.abhaken input:checked+.hk .ic{color:#fff}
.abhaken input:checked~span:last-child{text-decoration:line-through;text-decoration-color:var(--gruen)}
.abhaken input:focus-visible+.hk{outline:3px solid var(--terra);outline-offset:2px}
.abhaken b{font-family:var(--h);font-weight:700}
.kal-p .abhaken{font-size:15.5px;line-height:1.5}
/* Hanghaus, Kalk */
.hang-g{display:grid;grid-template-columns:1fr 1.1fr;gap:var(--s4);align-items:center}
.hanghaus{width:100%;border-radius:var(--r);border:1px solid #CBD6CE}
.hh-t{font:500 13px var(--h);fill:var(--schiefer)}
.hh-r{font:700 13px var(--h);fill:#7A3518}
.hh-w{font:800 16px var(--h);fill:#fff}
.hh-fig{margin:var(--s4) 0}
.hh-fig figcaption{font:500 15px var(--h);margin-top:8px}
.kalktafel{display:grid;grid-template-columns:1fr;gap:10px;margin-top:var(--s3)}
.kt-f{display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px;align-items:start}
.kt-f{border-radius:var(--r);padding:var(--s2);min-width:0}
.kt-weich{background:#E4EEF0}.kt-mittel{background:var(--salbei)}.kt-hart{background:#EBD9CB}
.kt-h{display:flex;flex-direction:column;gap:2px;border-right:2px solid var(--schiefer);padding-right:10px}
.kt-h b{font:800 20px var(--h);text-transform:uppercase}
.kt-h span{font:500 13px var(--h)}
.kt-f ul{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.kt-f li{background:#fff;border-radius:6px;padding:4px 10px;font:500 14px/1.4 var(--h)}
.kt-f li small{display:block;font-size:12px;color:#4A5A68}
.kt-f li.leer{background:none;font-style:italic}
/* Gebiet */
.gb-g{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4);margin:var(--s3) 0}
.bz-l,.kr-l,.gr-l{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr));gap:6px 12px}
.kr-l{grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr))}
.bz-l a,.gr-l a{font:500 15.5px var(--h)}
.kr-l a{display:block;text-decoration:none;background:#fff;border-left:4px solid var(--terra);padding:8px 12px;border-radius:4px}
.kr-l b{font:700 16px var(--h);color:var(--schiefer);display:block}
.kr-l small{font:400 13px/1.4 var(--h);color:#4A5A68;display:block}
/* Ablauf */
.ablauf ol{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s2)}
.ablauf li{background:#fff;border:1px solid #CBD6CE;border-radius:var(--r);padding:var(--s2);display:flex;flex-direction:column;gap:6px;min-width:0}
.ab-n{width:34px;height:34px;border-radius:50%;background:var(--terra);color:#fff;font:800 16px/34px var(--h);text-align:center}
.ablauf b{font:800 18px var(--h)}
.ablauf li span:last-child{font-size:15.5px;line-height:1.5}
/* Faecher */
.fach-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s2)}
.fach{background:#fff;border-top:6px solid var(--schiefer);border-radius:6px;padding:var(--s2) var(--s3);min-width:0}
.fach h3 a,.fach h2{color:var(--schiefer);text-decoration:none}
.fach ul,.fach ol{padding-left:18px;font-size:16px}
.fach li{margin:4px 0}
.fach-g.gross .fach h2{font-size:22px}
/* FAQ */
.faq-l{display:grid;gap:8px;max-width:860px}
.faq details{background:#fff;border:1px solid #CBD6CE;border-radius:8px}
.faq summary{min-width:0;overflow-wrap:anywhere;cursor:pointer;padding:14px 18px;font:700 17px/1.4 var(--h);list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::after{content:"+";font-size:22px;color:var(--terra);line-height:1}
.faq details[open] summary::after{content:"–"}
.faq details p{padding:0 18px 16px;margin:0}
/* Band */
.band{background:var(--terra);color:#fff;margin-top:var(--s5)}
.band-g{display:flex;align-items:center;gap:var(--s3);padding-top:var(--s3);padding-bottom:var(--s3)}
.band .ic{width:40px;height:40px}
.band-t{font:800 24px/1.3 var(--h);margin:0;flex:1}
/* Pfad */
.pfad{margin:var(--s3) 0 var(--s2);font:500 14px var(--h)}
.pfad ol{list-style:none;display:flex;flex-wrap:wrap;gap:4px 8px}
.pfad li+li::before{content:"›";margin-right:8px;color:var(--terra)}
.pfad a{color:var(--schiefer)}
/* Kreis */
.kkopf,.okopf{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--s4);align-items:center;margin-bottom:var(--s3)}
.kk-f .tafel,.ok-f .tafel{max-width:330px}
.tab{overflow-x:auto;-webkit-overflow-scrolling:touch}
table{border-collapse:collapse;width:100%;font:400 15.5px/1.45 var(--h);background:#fff}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid #D5DDD7;vertical-align:top}
thead th{background:var(--schiefer);color:#fff;font-weight:700}
tbody th{font-weight:700}
.lk-g{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,210px),1fr));gap:10px}
.lk-g a{display:block;text-decoration:none;background:#fff;border:1px solid #CBD6CE;border-radius:8px;padding:12px 14px;height:100%}
.lk-g small{display:block;font:700 12px var(--h);text-transform:uppercase;letter-spacing:.07em;color:var(--terratext)}
.lk-g b{font:700 16px var(--h);color:var(--schiefer)}
.nachbarkreise ul,.rgl ul{list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.nachbarkreise a{display:inline-block;padding:8px 14px;border:2px solid var(--schiefer);border-radius:999px;font:700 15px var(--h);color:var(--schiefer);text-decoration:none}
/* Ortsseite */
.kennleiste{background:#fff;border:1px solid #CBD6CE;border-radius:var(--r);padding:var(--s2) var(--s3);margin-bottom:var(--s3)}
.kennleiste .dm-leiste,.kennleiste .dm-kasten{margin:0;padding:0;background:none}
.kennleiste table.dm-eckdaten{margin:0}
.dm-eckdaten caption,.dm-titel{font:800 16px var(--h);text-align:left;padding-bottom:6px;color:var(--terratext);text-transform:uppercase;letter-spacing:.05em}
.dm-leiste ul,.kl-z{list-style:none;display:flex;flex-wrap:wrap;gap:10px 28px;font:500 15.5px var(--h)}
.kl-z{margin-top:10px;padding-top:10px;border-top:1px dashed #C3CEC6}
.dm-leiste span,.kl-z span{display:block;font-size:12.5px;text-transform:uppercase;letter-spacing:.06em;color:#4A5A68}
.dm-eckdaten dl{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:4px 16px;margin:0;font:500 15.5px var(--h)}
.dm-eckdaten dt{font-weight:700}.dm-eckdaten dd{margin:0}
table.dm-eckdaten{background:none;max-width:760px}
table.dm-eckdaten th{width:34%}
.dm-kasten{background:var(--salbei2);border-radius:var(--r);padding:var(--s2) var(--s3);margin:var(--s2) 0}
.dm-ortsteile ul{columns:3 10rem;padding-left:18px}
.dm-nachbarn ul{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));gap:8px}
.dm-kacheln li,.dm-nachbarn li{background:#fff;border:1px solid #CBD6CE;border-radius:6px;padding:8px 12px;font:500 15px var(--h);overflow-wrap:anywhere}
.dm-kacheln small,.dm-nachbarn li span{display:block;color:#4A5A68;font-size:13px}
.imkreis ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 var(--s2)}
.imkreis a{display:inline-block;background:var(--salbei);border-radius:999px;padding:6px 12px;font:500 15px var(--h);color:var(--schiefer)}
.ort-g{display:grid;grid-template-columns:220px minmax(0,1fr);gap:var(--s4);align-items:start}
.sprung{position:sticky;top:84px;font:500 14.5px/1.4 var(--h);border-left:3px solid var(--schiefer);padding-left:14px}
.sprung p{font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:12.5px;color:var(--terratext);margin-bottom:8px}
.sprung ol{list-style:none;display:grid;gap:6px;margin-bottom:var(--s2)}
.sprung a{color:var(--schiefer);text-decoration:none}
.sprung a:hover{color:var(--terratext);text-decoration:underline}
.sprung a.ruf{color:#fff;font-size:13.5px;padding:8px 12px;white-space:nowrap}
.sprung a.ruf:hover{color:#fff}
.ort-i{min-width:0;overflow-wrap:break-word}
.ort-i>.blk:first-child{margin-top:var(--s3)}
.lo-g{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--s2)}
.lo-g li{background:#fff;border:1px solid #CBD6CE;border-radius:var(--r);padding:var(--s2) var(--s3);min-width:0}
.lo-k{display:flex;justify-content:space-between;gap:8px;font:700 13px var(--h);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.lo-k span{color:#4A5A68}
.lo-g p:last-child{margin:0;font-size:16.5px}
.lo-w{font:500 15px var(--h);margin-top:var(--s2)}
.nd-g{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:var(--s3);align-items:start}
.pruef{background:var(--schiefer);color:#fff;border-radius:var(--r);padding:var(--s3);position:sticky;top:84px;align-self:start}
.pr-h{font:800 14px var(--h);text-transform:uppercase;letter-spacing:.08em;color:#F0C3AC}
.pruef ol{list-style:none;display:grid;gap:12px;font:500 16px/1.4 var(--h)}
.pruef li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px}
.pruef .ic{color:#F0C3AC}
.foto{margin:var(--s3) 0}
.foto img{display:block;width:100%;border-radius:var(--r)}
.vorsorge{background:var(--salbei2);border-radius:var(--r);padding:var(--s3) var(--s4)}
.bz-g{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:var(--s2)}
.bz-g li{background:#fff;border-left:5px solid var(--schiefer);border-radius:4px;padding:var(--s2);min-width:0}
.bz-g h3{font-size:18px;margin-bottom:6px}
.bz-g p{font-size:15.5px;line-height:1.55;margin:0}
.bz-g li:target{border-left-color:var(--terra);background:#FFF6F0}
.rgl ul{flex-direction:column}
.rgl a{display:flex;flex-direction:column;text-decoration:none;color:var(--schiefer);padding:10px 14px;background:#fff;border:1px solid #CBD6CE;border-radius:8px}
.rgl small{font:700 12px var(--h);text-transform:uppercase;letter-spacing:.07em;color:var(--terratext)}
.rgl span{font:700 17px var(--h)}
/* Artikel */
.art-g{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--s4);align-items:start}
.art-kopf{margin:var(--s2) 0 var(--s3)}
.art-kopf.hub{max-width:820px}
.art-et{display:flex;align-items:center;gap:var(--s3);margin-bottom:var(--s2)}
.art-et .tafel{max-width:170px;margin:0;flex:none;filter:none}
.art-et .kicker{margin:0;flex-wrap:wrap}
.dr{font-size:12px;padding:3px 10px;border-radius:999px;background:var(--salbei);color:var(--schiefer)}
.dr-sofort{background:var(--anruf);color:#fff}
.seite{position:sticky;top:84px;display:grid;gap:var(--s2)}
.rb{background:var(--schiefer);color:#fff;border-radius:var(--r);padding:var(--s3);display:grid;gap:10px;justify-items:start}
.rb p{margin:0;font:700 18px/1.35 var(--h)}
.rb .ruf{white-space:normal}
.ortsliste{background:#fff;border:1px solid #CBD6CE;border-radius:var(--r);padding:var(--s2) var(--s3)}
.ol-h{font:800 14px var(--h);text-transform:uppercase;letter-spacing:.06em;color:var(--terratext);margin-bottom:8px}
.ortsliste ul{list-style:none;columns:2;font:500 15px/1.7 var(--h)}
.erkennen .abhaken{max-width:760px}
.eilt{border:3px solid var(--anruf);border-radius:var(--r);padding:var(--s3)}
.lg-g{display:grid;gap:var(--s3);margin:var(--s3) 0}
.lgruppe{display:grid;grid-template-columns:60px 1fr;gap:var(--s3);background:#fff;border-radius:var(--r);border:1px solid #CBD6CE;padding:var(--s3)}
.lgruppe ul{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:10px}
.lgruppe a{display:block;text-decoration:none;background:var(--salbei2);border-radius:8px;padding:10px 14px;height:100%}
.lgruppe b{display:block;font:700 16px var(--h);color:var(--schiefer)}
.lgruppe span{font:400 14px/1.45 var(--h);color:#3E4F5E}
.merkzettel{background:#FFFDF8;border:1px solid #E3D6C2;border-radius:6px;padding:var(--s3);box-shadow:4px 5px 0 var(--salbei)}
.recht{padding-bottom:var(--s5)}
.recht h2{font-size:22px;margin-top:var(--s3)}
.f404{display:grid;grid-template-columns:300px 1fr;gap:var(--s4);align-items:center;padding:var(--s4) 0}
/* Fuss: Hausordnung */
.fuss{background:var(--schiefer);color:#E8EDF0;padding:var(--s4) 0 var(--s4);font:400 15px/1.6 var(--h)}
.ho-kopf{display:flex;align-items:center;gap:10px;font:800 26px var(--h);color:#fff;border-bottom:2px solid var(--terra);padding-bottom:12px}
.ho{list-style:none;counter-reset:ho;display:grid;grid-template-columns:1.2fr 1.4fr 1.2fr 1fr;gap:var(--s3);margin:var(--s3) 0}
.ho>li{counter-increment:ho;min-width:0}
.ho h2{font-size:16px;color:#fff;margin-bottom:8px}
.ho h2::before{content:counter(ho) ". ";color:#F0C3AC}
.ho ul{list-style:none}
.ho-bz{columns:2}
.fuss a{color:#E8EDF0;text-decoration:none}
.fuss a:hover{color:#fff;text-decoration:underline}
.f-ruf{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #3F5466;border-bottom:1px solid #3F5466;padding:var(--s2) 0}
.f-ruf a{font:800 30px var(--h);color:#fff}
.vermittlung{font-size:13.5px;color:#C5D0D8;margin-top:var(--s2);max-width:90ch}
/* Breakpoints */
@media (max-width:1060px){
 .menue>a{display:none}
 .menue{margin-left:auto}
 .gb-panel{grid-template-columns:1fr 1fr}
 .gb-le{grid-column:1/-1}
 .ort-g{grid-template-columns:minmax(0,1fr)}
 .sprung{display:none}
 .art-g{grid-template-columns:minmax(0,1fr)}
 .seite{position:static}
 .ho{grid-template-columns:1fr 1fr}
}
@media (max-width:860px){
 h1,.held h1{font-size:32px}
 h2{font-size:25px}
 .held{padding:var(--s3) 0 var(--s4)}
 .held-g,.kkopf,.okopf,.hang-g,.nd-g,.zt-g,.gb-g,.f404{grid-template-columns:1fr}
 .held-f .tafel{max-width:320px}
 .kk-f .tafel,.ok-f .tafel{max-width:260px}
 .kalender{grid-template-columns:1fr 1fr}
 .ablauf ol{grid-template-columns:1fr 1fr}
 .fach-g{grid-template-columns:1fr}
 .kalktafel{grid-template-columns:1fr}
 .blk{margin:var(--s4) 0}
}
@media (max-width:560px){
 body{font-size:17px}
 .wrap{padding:0 16px}
 .kopf-g{min-height:56px;gap:10px}
 .marke{font-size:14px}
 .marke .minitafel{width:24px;height:29px}
 .gebiet>summary{padding:16px 8px}
 .kopf-ruf{padding:9px 12px}
 .kopf-ruf b{display:none}
 .kopf-ruf .kr-l{display:inline}
 .gb-panel{grid-template-columns:1fr;max-height:calc(100vh - 56px)}
 .gb-kr,.gb-le ul{columns:1}
 .lede{font-size:18px}
 .kalender,.ablauf ol{grid-template-columns:1fr}
 .vg-g{grid-template-columns:1fr}
 .vg-s+.vg-s{border-left:0;border-top:2px solid var(--schiefer)}
 .tafelzitat{padding:var(--s2) var(--s3)}
 .tafelzitat p{font-size:20px}
 .vorsorge{padding:var(--s3) var(--s2)}
 .band-g{flex-wrap:wrap}
 .band-t{font-size:20px}
 .ho{grid-template-columns:1fr}
 .ruf.gross{font-size:16px;padding:12px 18px;white-space:normal}
 .lgruppe{grid-template-columns:1fr}
 .lgruppe .minitafel{display:none}
 th,td{padding:8px}
 .kreisorte thead{display:none}
 .kreisorte table,.kreisorte tbody,.kreisorte tr,.kreisorte th,.kreisorte td{display:block;width:100%}
 .kreisorte tr{border-bottom:2px solid var(--schiefer);padding:6px 0}
 .kreisorte td,.kreisorte th{border:0;padding:3px 8px}
 .kreisorte td::before{content:attr(data-l) ": ";font-weight:700}
 .f-ruf a{font-size:24px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
p,li,dd,td,th,h3{overflow-wrap:break-word}
h1,h2,h3{hyphens:manual}
.ab-foto,.vs-foto{max-width:760px}
.vs-foto{margin:0 0 var(--s3)}
@media (max-width:560px){.kt-f{grid-template-columns:1fr}.kt-h{border-right:0;border-bottom:2px solid var(--schiefer);padding:0 0 6px}.art-et .tafel{max-width:84px}}
@media (max-width:380px){.marke>span{display:none}.gebiet>summary{white-space:nowrap;padding:16px 6px}.kopf-g{gap:8px}.kopf-ruf{padding:9px 10px}}
.faq details,.faq-l{min-width:0}
@media (max-width:380px){h1,.held h1{font-size:27px}.wrap{padding:0 14px}}
/* CLS: Kopf hat eine feste Hoehe, damit der Schriftwechsel nichts verschiebt */
.kopf-g{height:64px;min-height:0}
.marke,.gebiet>summary,.kopf-ruf{white-space:nowrap}
@media (max-width:560px){.kopf-g{height:56px}}
@media (max-width:560px){.pfad{min-height:3.2em;line-height:1.5}}
article,.art-g>*{min-width:0}
.zt-lead{position:sticky;top:84px;align-self:start}
@media (max-width:860px){.zt-lead{position:static}}
