/* sanitaer-franken.de – Leitmotiv „Zunftzeichen“ (Ausleger-Schilder, Wachssiegel, Eisenornament) */
@font-face{font-family:"Zilla Slab";font-weight:700;font-style:normal;font-display:swap;src:url(/fonts/ZillaSlab-700.woff2) format("woff2")}
@font-face{font-family:Rubik;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/Rubik-400.woff2) format("woff2")}
@font-face{font-family:Rubik;font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/Rubik-500.woff2) format("woff2")}
:root{--bord:#4A0E1E;--bord-h:#6B1A2E;--gold:#D4A017;--gold-h:#E6B83A;--grund:#FAF5F0;--sand:#E8D5B5;--sand-h:#F1E4CC;--eisen:#2A2A2A;--text:#24130F;--grau:#5B4A42;--linie:#D9C4A0;
--slab:"Zilla Slab",Rockwell,"Roboto Slab",Georgia,serif;--sans:Rubik,"Segoe UI",system-ui,sans-serif;--kopf:88px}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--kopf) + 12px)}
body{margin:0;background:var(--grund);color:var(--text);font:400 17px/1.62 var(--sans);overflow-x:hidden}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--bord);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--bord-h)}
:focus-visible{outline:3px solid var(--bord);outline-offset:2px}
h1,h2,h3{font-family:var(--slab);font-weight:700;color:var(--bord);line-height:1.15;margin:0 0 .5em;hyphens:auto;overflow-wrap:break-word}
h1{font-size:clamp(34px,4.6vw,48px)}h2{font-size:clamp(26px,3vw,36px)}h3{font-size:22px}
p{margin:0 0 1em}
.wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.lese{max-width:68ch}
.skip{position:absolute;left:-999px;top:0;background:var(--gold);color:var(--eisen);padding:8px 12px;z-index:99}.skip:focus{left:8px}
.lede{font-size:19px;color:var(--grau)}
section{padding:56px 0}
.sand{background:var(--sand-h)}
.sand-voll{background:var(--sand)}

/* ---------- Eisenornament ---------- */
.orn{display:block;width:min(420px,80%);height:24px;margin:8px auto;color:var(--eisen)}
.orn.gold{color:var(--gold)}

/* ---------- Kopf (zweigeteilt) ---------- */
.kopf{position:sticky;top:0;z-index:50;background:var(--grund);border-bottom:3px solid var(--eisen);box-shadow:0 1px 0 var(--gold)}
.kopf .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;height:var(--kopf)}
.marke{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--bord)}
.marke .zeile1{display:flex;align-items:center;gap:10px}
.marke svg{width:34px;height:40px}
.marke b{font:700 24px/1 var(--slab);letter-spacing:.01em}
.marke b span{color:var(--eisen)}
.goldzeile{display:inline-flex;align-items:center;gap:8px;margin-top:6px;background:var(--gold);color:var(--eisen);font:700 16px/1 var(--slab);padding:5px 14px;border-radius:2px;text-decoration:none;letter-spacing:.03em}
.goldzeile:hover{background:var(--gold-h);color:var(--eisen)}
.goldzeile svg{width:16px;height:16px}
.dmenu{position:relative}
.dmenu.rechts{justify-self:end}
.dmenu summary{list-style:none;cursor:pointer;font:500 17px var(--sans);color:var(--eisen);padding:10px 4px;border-bottom:2px solid transparent}
.dmenu summary::-webkit-details-marker{display:none}
.dmenu summary::after{content:" ▾";color:var(--bord)}
.dmenu[open] summary{border-bottom-color:var(--gold)}
.dmenu .panel{position:absolute;top:calc(100% + 14px);left:0;width:min(560px,90vw);background:var(--grund);border:2px solid var(--eisen);box-shadow:0 0 0 4px var(--grund),0 0 0 5px var(--gold),0 18px 40px rgba(42,42,42,.18);padding:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px}
.dmenu.rechts .panel{left:auto;right:0}
.dmenu .panel a{padding:6px 0;text-decoration:none;color:var(--text);border-bottom:1px solid var(--linie)}
.dmenu .panel a:hover{color:var(--bord)}
.dmenu .panel strong{grid-column:1/-1;font:700 15px var(--slab);color:var(--bord);text-transform:uppercase;letter-spacing:.08em;margin-top:8px}
.mob,.lasche-mob,.lasche-halter,.overlay{display:none}
#nav-auf,.tabwahl{position:absolute;width:1px;height:1px;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap}
#nav-auf:focus-visible ~ .lasche-halter .lasche-mob span{outline:3px solid var(--bord)}
.dmenu:not([open]) .panel{display:none}

@media (max-width:899px){
  :root{--kopf:60px}
  .kopf .wrap{grid-template-columns:minmax(0,1fr) auto;height:60px;padding:0 12px}
  .dmenu,.kopf .goldzeile.desk{display:none}
  .marke{flex-direction:row;align-items:center}
  .marke svg{width:26px;height:32px}
  .marke b{font-size:20px}
  .mob{display:inline-flex;align-items:center;gap:6px;background:var(--gold);color:var(--eisen);text-decoration:none;font:700 15px/1 var(--slab);padding:0 14px;min-height:44px;border-radius:22px;white-space:nowrap}
  .mob svg{width:16px;height:16px}
  .lasche-halter{display:flex;justify-content:flex-end;position:sticky;top:60px;z-index:49;height:0;padding-right:16px}
  .lasche-mob{display:flex;cursor:pointer;align-items:flex-start}
  .lasche-mob .arm{width:2px;height:10px;background:var(--eisen);margin-right:-2px}
  .lasche-mob span{display:block;margin-top:0;background:var(--eisen);color:#F6EBD7;font:500 14px/1 var(--sans);padding:9px 14px 10px;border-radius:0 0 6px 6px;border:1px solid var(--gold);border-top:0;min-height:34px}
  .overlay{position:fixed;inset:0;z-index:80;background:var(--grund);overflow:auto;overscroll-behavior:contain;padding:0 0 40px}
  #nav-auf:checked ~ .overlay{display:block}
  .ov-kopf{display:flex;justify-content:space-between;align-items:center;height:60px;padding:0 12px;border-bottom:3px solid var(--eisen);position:sticky;top:0;background:var(--grund)}
  .ov-kopf label{cursor:pointer;font:500 16px var(--sans);color:var(--bord);padding:12px 8px;min-height:44px}
  .tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:18px 12px 0}
  .tabs label{cursor:pointer;text-align:center;background:var(--sand-h);border:2px solid var(--eisen);border-radius:0 0 10px 10px;padding:12px 6px;font:700 17px var(--slab);color:var(--bord);position:relative}
  .tabs label::before{content:"";position:absolute;left:50%;top:-12px;width:2px;height:10px;background:var(--eisen)}
  #t-le:checked ~ .tabs label[for=t-le],#t-ge:checked ~ .tabs label[for=t-ge]{background:var(--bord);color:#fff;border-color:var(--bord);box-shadow:inset 0 0 0 2px var(--gold)}
  .tabinhalt{display:none;padding:18px 12px}
  #t-le:checked ~ .tab-le,#t-ge:checked ~ .tab-ge{display:block}
  .ov-schilder{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;list-style:none;margin:0;padding:0}
  .ov-schilder a{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--linie);background:#fff;text-decoration:none;color:var(--text);font-size:15px;min-height:52px}
  .ov-schilder svg{width:26px;height:26px;flex:none;color:var(--bord)}
  .ov-bezirk{margin-bottom:18px}
  .ov-bezirk .ovh{margin:0 0 8px;font:700 20px var(--slab)}
  .ov-bezirk ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .ov-bezirk a{display:block;padding:9px 10px;background:#fff;border:1px solid var(--linie);text-decoration:none;color:var(--text);font-size:15px;overflow-wrap:anywhere}
  .ov-bezirk a.stadt{border-left:4px solid var(--gold)}
  .ov-links{padding:0 12px;display:flex;flex-wrap:wrap;gap:8px 18px}
}

/* ---------- Knöpfe ---------- */
.knopf{display:inline-flex;align-items:center;gap:10px;background:var(--gold);color:var(--eisen);font:700 19px/1.2 var(--slab);padding:14px 22px;min-height:52px;text-decoration:none;border-radius:3px;border:2px solid var(--eisen);box-shadow:3px 3px 0 var(--eisen)}
.knopf:hover{background:var(--gold-h);color:var(--eisen)}
.knopf svg{width:22px;height:22px;flex:none}
.knopf.leise{background:transparent;box-shadow:none;border-color:var(--bord);color:var(--bord);font-size:17px}

/* ---------- Ausleger-Schild ---------- */
.schild{color:var(--eisen)}
.schild .platte{fill:var(--bord)}
.schild .rand{fill:none;stroke:var(--gold);stroke-width:1.6}
.schild .ikon{color:var(--gold)}

/* ---------- Start-Hero ---------- */
.hero{position:relative;background:var(--eisen)}
.hero figure{margin:0}
.hero figure img{width:100%;height:clamp(420px,46vw,600px);object-fit:cover;object-position:60% 50%}
.hero .haenge{position:absolute;left:max(20px,calc((100vw - 1160px)/2 + 20px));top:0;width:min(560px,46vw)}
.haenge .arm{display:block;width:100%;height:46px;color:var(--eisen)}
.haenge .tafel{margin:0 10% 0 6%;background:var(--bord);color:#fff;padding:26px 28px 24px;box-shadow:inset 0 0 0 5px var(--bord),inset 0 0 0 7px var(--gold),0 14px 30px rgba(0,0,0,.35);border-radius:4px;position:relative}
.haenge .tafel::before,.haenge .tafel::after{content:"";position:absolute;top:-30px;width:2px;height:30px;background:repeating-linear-gradient(var(--eisen) 0 5px,transparent 5px 7px)}
.haenge .tafel::before{left:22%}.haenge .tafel::after{right:22%}
.haenge h1{color:#fff;margin-bottom:.35em}
.haenge .lede{color:#F3E6D2;font-size:18px}
.haenge .knopf{margin-top:6px;width:100%;justify-content:center}
@media (max-width:899px){
  .hero figure img{height:64vw;min-height:250px}
  .hero .haenge{position:relative;left:auto;top:auto;width:auto;margin:-36px 12px 0;padding-bottom:20px}
  .haenge .arm{display:none}
  .haenge .tafel{margin:0;padding:22px 18px 20px}
  .haenge .tafel::before,.haenge .tafel::after{display:none}
  .hero{background:var(--grund)}
  .haenge h1{font-size:34px}
}

/* ---------- Schildreihen / Galerie ---------- */
.galerie{list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:28px 20px}
.galerie a{display:block;text-decoration:none;color:var(--text);text-align:center}
.galerie svg{width:100%;max-width:150px;margin:0 auto 8px}
.galerie a:hover .platte{fill:var(--bord-h)}
.galerie b{display:block;font:700 19px/1.2 var(--slab);color:var(--bord)}
.galerie small{display:block;color:var(--grau);font-size:15px;line-height:1.45;margin-top:4px}
.reihe{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px}
.reihe a{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:12px 8px;text-decoration:none;color:var(--text);font-size:15px;line-height:1.3;border-top:3px solid var(--eisen);background:#fff}
.reihe svg{width:72px;height:auto}
.reihe a:hover{background:var(--sand-h)}
.staedte{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:14px}
.staedte a{display:block;position:relative;text-decoration:none;background:var(--bord);color:#fff;font:700 20px/1.2 var(--slab);padding:22px 14px 16px;text-align:center;border-radius:3px;box-shadow:inset 0 0 0 3px var(--bord),inset 0 0 0 4px var(--gold)}
.staedte a::before{content:"";position:absolute;left:50%;top:-14px;width:2px;height:14px;background:var(--eisen)}
.staedte a small{display:block;font:400 13px var(--sans);color:#EAD8BE;margin-top:4px}
.staedte a:hover{background:var(--bord-h)}

/* ---------- Meisterbrief mit Wachssiegeln ---------- */
.brief{position:relative;background:#FFFDF8;border:1px solid var(--linie);box-shadow:0 0 0 6px #FFFDF8,0 0 0 7px var(--gold),0 10px 30px rgba(74,14,30,.1);padding:34px 28px 26px;margin:20px 6px 6px}
.brief .kopfzeile{font:700 15px var(--slab);text-transform:uppercase;letter-spacing:.14em;color:var(--grau);text-align:center;margin-bottom:22px}
.siegel{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;position:relative}
.siegel::before{content:"";position:absolute;left:8%;right:8%;top:44px;border-top:2px dashed var(--bord);opacity:.45}
.siegel li{position:relative;text-align:center}
.siegel .wachs{position:relative;width:88px;height:88px;margin:0 auto 12px}
.siegel .wachs svg{width:88px;height:88px}
.siegel .wachs span{position:absolute;inset:0;display:grid;place-items:center;font:700 32px var(--slab);color:#F6E3B4;text-shadow:0 1px 0 rgba(0,0,0,.35)}
.siegel b{display:block;font:700 20px var(--slab);color:var(--bord);margin-bottom:4px}
.siegel p{font-size:15.5px;color:var(--grau);margin:0}
@media (max-width:760px){
  .siegel{grid-template-columns:minmax(0,1fr);gap:18px}
  .siegel::before{left:43px;right:auto;top:20px;bottom:20px;border-top:0;border-left:2px dashed var(--bord)}
  .siegel li{display:grid;grid-template-columns:88px minmax(0,1fr);gap:0 16px;text-align:left;align-items:center}
  .siegel .wachs{margin:0;grid-row:span 2}
  .brief{padding:24px 16px 18px}
}

/* ---------- Franken-Karte ---------- */
.karte{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:36px;align-items:start;margin-top:20px}
.kacheln{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(7,70px);gap:4px;position:relative;padding:10px;background:var(--sand);border:2px solid var(--eisen)}
.kacheln a{display:flex;flex-direction:column;justify-content:center;padding:6px 8px;background:var(--sand-h);color:var(--bord);text-decoration:none;font:700 14px/1.15 var(--slab);border:1px solid var(--linie);overflow:hidden;overflow-wrap:anywhere;hyphens:auto}
.kacheln a.stadt{background:var(--bord);color:#fff;border-color:var(--gold);font-size:13.5px;align-items:center;text-align:center}
.kacheln a:hover{background:#fff}.kacheln a.stadt:hover{background:var(--bord-h)}
.kacheln .grenze{grid-column:1/-1;grid-row:4;align-self:start;height:0;border-top:3px solid var(--gold);margin-top:-4px;pointer-events:none;z-index:1}
.kacheln .bz{position:absolute;right:12px;font:700 12px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--grau)}
.kacheln .bz.o{top:-22px}.kacheln .bz.m{bottom:-22px}
.bezirke{display:grid;gap:14px}
.bezirke a{display:block;text-decoration:none;color:var(--text);background:#fff;border:2px solid var(--eisen);padding:16px 18px;border-radius:3px}
.bezirke a b{display:block;font:700 22px var(--slab);color:var(--bord)}
.bezirke a:hover{border-color:var(--bord)}
@media (max-width:899px){.karte{grid-template-columns:minmax(0,1fr)}.kacheln{display:none}}

/* ---------- Kalk-Balken ---------- */
.haerte{margin:20px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:2px solid var(--eisen)}
.haerte div{padding:14px 12px;text-align:center;font:700 18px var(--slab)}
.haerte div small{display:block;font:400 14px var(--sans);margin-top:4px}
.haerte .w{background:#F6EEDF;color:var(--text)}.haerte .m{background:var(--sand);color:var(--text)}.haerte .h{background:var(--bord);color:#fff}
.zwei{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start}
.zwei figure{margin:0;border:2px solid var(--eisen);box-shadow:6px 6px 0 var(--sand)}
@media (max-width:899px){.zwei{grid-template-columns:minmax(0,1fr);gap:20px}}

/* ---------- Karten Ratgeber ---------- */
.gilde{font:700 14px var(--sans);text-transform:uppercase;letter-spacing:.12em;color:var(--grau);margin:28px 0 10px;display:flex;align-items:center;gap:10px}
.gilde svg{width:28px;height:28px;color:var(--bord)}
.karten{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.karten a{display:flex;flex-direction:column;height:100%;text-decoration:none;color:var(--text);background:#fff;border:1px solid var(--linie);border-top:4px solid var(--bord)}
.karten img{aspect-ratio:3/2;object-fit:cover;width:100%}
.karten div{padding:14px 16px 16px}
.karten b{display:block;font:700 19px/1.25 var(--slab);color:var(--bord);margin-bottom:6px}
.karten small{color:var(--grau);font-size:15px;line-height:1.5}

/* ---------- FAQ ---------- */
.faq details{border-bottom:1px solid var(--linie);padding:4px 0}
.faq summary{cursor:pointer;list-style:none;font:700 19px/1.35 var(--slab);color:var(--bord);padding:12px 32px 12px 0;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:4px;top:8px;font:700 26px var(--slab);color:var(--bord)}
.faq details[open] summary::after{content:"–"}
.faq p{margin:0 0 14px}

/* ---------- Anruf-Siegel (Schluss) ---------- */
.anruf{background:var(--eisen);color:#F6EBD7;padding:48px 0;position:relative}
.anruf .wrap{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:28px;align-items:center}
.anruf .wachs{width:110px;height:110px;position:relative}
.anruf .wachs span{position:absolute;inset:0;display:grid;place-items:center;text-align:center;font:700 14px/1.1 var(--slab);color:#F6E3B4;padding:20px}
.anruf h2{color:#fff;margin-bottom:.25em}
.anruf p{margin:0;color:#E9DCC6}
@media (max-width:899px){.anruf .wrap{grid-template-columns:minmax(0,1fr);text-align:left}.anruf .wachs{display:none}.anruf .knopf{width:100%;justify-content:center}}

/* ---------- Unterseiten ---------- */
.krume ol{list-style:none;margin:0;padding:16px 0 4px;display:flex;flex-wrap:wrap;gap:4px 0;font-size:14.5px;color:var(--grau)}
.krume li{display:flex;align-items:center;overflow-wrap:anywhere}
.krume li+li::before{content:"";width:22px;height:10px;margin:0 6px;background:radial-gradient(ellipse 5px 3.4px at 6px 5px,transparent 2.2px,var(--eisen) 2.4px,var(--eisen) 3.4px,transparent 3.6px),radial-gradient(ellipse 5px 3.4px at 16px 5px,transparent 2.2px,var(--eisen) 2.4px,var(--eisen) 3.4px,transparent 3.6px);flex:none}
.krume a{color:var(--grau)}
.orthero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:start;padding:18px 0 40px}
.orthero .haenge .tafel{margin:0}
.orthero figure{margin:46px 0 0;border:2px solid var(--eisen);box-shadow:8px 8px 0 var(--sand)}
.orthero figure img{width:100%;aspect-ratio:3/2;object-fit:cover}
.region{display:inline-block;font:500 14px var(--sans);color:#EAD8BE;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
.region a{color:#EAD8BE}
.stempel{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.stempel li{aspect-ratio:1;border-radius:50%;background:var(--sand-h);border:2px solid var(--bord);box-shadow:inset 0 0 0 4px var(--sand-h),inset 0 0 0 5px var(--bord);display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:10px;transform:rotate(var(--r,0deg))}
.stempel b{font:700 11.5px var(--sans);text-transform:uppercase;letter-spacing:.1em;color:var(--bord);margin-bottom:3px}
.stempel span{font:500 13px/1.25 var(--sans);color:var(--text);overflow-wrap:anywhere;hyphens:auto}
@media (max-width:899px){
  .orthero{grid-template-columns:minmax(0,1fr);gap:20px;padding-top:8px}
  .orthero figure{margin:0;order:-1}
  .orthero figure img{aspect-ratio:16/9}
  .krume ol{padding-top:40px}
  .haenge .lede{font-size:16.5px}
  .stempel{grid-template-columns:repeat(2,minmax(0,1fr));max-width:340px;margin-left:auto;margin-right:auto}
}
.text h2{margin-top:1.3em}
.ortsliste{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.ortsliste a{display:block;padding:12px 14px;background:#fff;border:1px solid var(--linie);border-left:4px solid var(--bord);text-decoration:none;color:var(--text)}
.ortsliste a[aria-current]{background:var(--sand-h);font-weight:500}
.ortsliste a:hover{border-left-color:var(--gold)}
.artikel{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:start;padding:12px 0 56px}
.artikel article{max-width:72ch}
.artikel figure{margin:0 0 20px;border:2px solid var(--eisen)}
.artikel .kopfschild{display:flex;align-items:center;gap:14px;margin-bottom:8px}
.artikel .kopfschild svg{width:64px;height:auto;flex:none}
.artikel .kopfschild span{font:700 14px var(--sans);text-transform:uppercase;letter-spacing:.12em;color:var(--grau)}
.seite{position:sticky;top:calc(var(--kopf) + 16px);display:grid;gap:18px}
.box{background:#fff;border:1px solid var(--linie);border-top:4px solid var(--eisen);padding:16px 18px}
.box h2{font-size:20px}
.box ul{list-style:none;margin:0;padding:0}
.box li{border-bottom:1px solid var(--linie)}
.box li a{display:block;padding:8px 0;text-decoration:none;color:var(--text);font-size:15.5px}
.box.ruf2{background:var(--bord);color:#F3E6D2;border:0;box-shadow:inset 0 0 0 3px var(--bord),inset 0 0 0 4px var(--gold)}
.box.ruf2 h2{color:#fff}
.box.ruf2 a{display:block;margin-top:8px;background:var(--gold);color:var(--eisen);text-align:center;font:700 20px var(--slab);padding:12px;text-decoration:none}
.merk{background:var(--sand-h);border-left:5px solid var(--bord);padding:16px 20px;margin:20px 0}
.merk h2{font-size:21px}
.merk ul{margin:0;padding-left:20px}
@media (max-width:999px){.artikel{grid-template-columns:minmax(0,1fr)}.seite{position:static}}
.recht{padding:12px 0 56px}
.recht h2{font-size:22px;margin-top:1.4em}

/* ---------- Zunftbrief-Fuß ---------- */
.fuss{background:var(--eisen);color:#E9DCC6;padding:0 0 36px;margin-top:0}
.fuss .kette{height:14px;background:radial-gradient(ellipse 9px 5px at 10px 7px,transparent 3px,#7A6A55 3.4px,#7A6A55 5px,transparent 5.4px) 0 0/20px 14px repeat-x;opacity:.9}
.urkunde{margin:30px auto 0;max-width:1120px;border:2px solid var(--gold);box-shadow:inset 0 0 0 5px var(--eisen),inset 0 0 0 6px var(--gold);padding:30px 30px 22px}
.urkunde .oben{display:flex;align-items:center;gap:18px;flex-wrap:wrap;border-bottom:1px solid #5A4E40;padding-bottom:18px;margin-bottom:20px}
.urkunde .oben .wachs{width:72px;height:72px;position:relative;flex:none}
.urkunde .oben p{margin:0}
.urkunde .marke-f{font:700 26px var(--slab);color:#fff}
.urkunde .spruch{font:700 17px var(--slab);color:var(--gold)}
.urkunde .tel{margin-left:auto;background:var(--gold);color:var(--eisen);font:700 20px var(--slab);padding:10px 16px;text-decoration:none}
.urkunde .spalten{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.urkunde h2{font:700 15px var(--sans);text-transform:uppercase;letter-spacing:.12em;color:var(--gold);margin:0 0 10px}
.urkunde ul{list-style:none;margin:0;padding:0}
.urkunde li a{display:block;color:#F1E6D3;text-decoration:none;padding:4px 0;font-size:15.5px;overflow-wrap:anywhere}
.urkunde li a:hover{color:var(--gold)}
.urkunde .hinweis{border-top:1px solid #5A4E40;margin-top:22px;padding-top:16px;font-size:14px;color:#CDBEA6;text-align:center}
@media (max-width:899px){.urkunde{margin:24px 12px 0;padding:20px 16px}.urkunde .spalten{grid-template-columns:minmax(0,1fr)}.urkunde .tel{margin-left:0}}

@media (prefers-reduced-motion:no-preference){
  .haenge .tafel{animation:schwingen 1.6s ease-out backwards;transform-origin:50% -30px}
  @keyframes schwingen{from{transform:rotate(-1.6deg)}60%{transform:rotate(.6deg)}to{transform:rotate(0)}}
}
.hero .haenge .arm{color:var(--eisen);filter:drop-shadow(0 0 1.5px rgba(246,235,215,.9)) drop-shadow(0 0 3px rgba(246,235,215,.5))}
.hero .haenge .tafel::before,.hero .haenge .tafel::after{width:3px;background:repeating-linear-gradient(var(--eisen) 0 5px,transparent 5px 7px);box-shadow:0 0 0 1px rgba(246,235,215,.6)}
.karten a:not(:has(img)) div{padding-top:18px}
@media (max-width:899px){
  .orthero .haenge .arm{display:block;height:30px;color:var(--eisen)}
  .orthero .haenge .tafel::before,.orthero .haenge .tafel::after{display:block;top:-22px;height:22px}
  .lasche-mob .arm{width:4px;height:16px;border-radius:2px}
}
@media (max-width:600px){
  .galerie{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 12px}
  .galerie svg{max-width:112px}
  .galerie b{font-size:17px}.galerie small{font-size:13.5px}
}
@media (min-width:900px){
  .zwei figure,.orthero figure{position:sticky;top:calc(var(--kopf) + 16px);align-self:start}
}
.krume a{display:inline-block;padding:8px 2px;min-height:24px}
.recht{overflow-wrap:anywhere}
section > .wrap > p > a,.wrap > p > a{display:inline-block;padding:6px 0}
.anruf{margin-top:24px}
