/* =====================================================================
   SEITE /abfluss-verstopft/ (Ratgeber-Artikel)
   Wird nur auf dieser Seite geladen (functions.php).
   Strangschema-Bausteine nur dieses Artikels · ergänzt css/strangschema.css
   ===================================================================== */

.kz-site .kz-check{position:relative;background:var(--kz-paper);border:1px solid var(--kz-ink);outline:1px solid var(--kz-rule-strong);outline-offset:-9px;padding:clamp(24px,3vw,40px)}
.kz-site .kz-check-title{margin:0 0 16px;font-size:.8rem;line-height:1.2;font-weight:680;font-stretch:78%;letter-spacing:.11em;text-transform:uppercase;color:var(--kz-ink)}
.kz-site .kz-check-qs{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;border-top:2px solid var(--kz-ink)}
.kz-site .kz-q{min-width:0;margin:0;padding:20px 22px 20px;border:0;border-left:1px solid var(--kz-rule)}
.kz-site .kz-q:first-child{border-left:0;padding-left:0}
.kz-site .kz-q:last-child{padding-right:0}
.kz-site .kz-q legend{float:left;width:100%;margin:0 0 14px;padding:0;font-size:1.05rem;line-height:1.3;font-weight:700;font-stretch:94%;color:var(--kz-ink)}
.kz-site .kz-q label{
  clear:both;display:flex;align-items:flex-start;gap:12px;margin:0 0 8px;padding:11px 12px;min-height:46px;
  border:1.5px solid var(--kz-rule);background:var(--kz-paper);cursor:pointer;
  font-size:.96rem;line-height:1.35;color:var(--kz-ink);transition:border-color .2s,background-color .2s;
}
.kz-site .kz-q label:hover{border-color:var(--kz-rule-strong)}
.kz-site .kz-q label:has(input:checked){border-color:var(--kz-ink);background:var(--kz-sheet)}
.kz-site .kz-q input{
  -webkit-appearance:none;appearance:none;flex:none;width:20px;height:20px;margin:0;border:1.5px solid var(--kz-ink);border-radius:50%;
  background:var(--kz-paper);cursor:pointer;transition:background-color .15s,box-shadow .15s;
}
.kz-site .kz-q input:checked{background:var(--kz-ink);box-shadow:inset 0 0 0 4px var(--kz-paper)}
.kz-site .kz-q input:focus-visible{outline:3px solid var(--kz-pipe);outline-offset:3px}
.kz-site .kz-check-out{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,auto);gap:16px 48px;align-items:start;margin-top:8px;padding-top:28px;border-top:2px solid var(--kz-ink)}
.kz-site .kz-res{display:none;grid-column:1;gap:20px;align-items:flex-start}
.kz-site .kz-res-empty{display:flex}
.kz-site .kz-check:has(input[name="kz-q1"]:checked) .kz-res-empty{display:none}
.kz-site .kz-check:has(input[value="wc"]:checked) .kz-res-wc,
.kz-site .kz-check:has(input[value="one"]:checked) .kz-res-one,
.kz-site .kz-check:has(input[value="many"]:checked) .kz-res-many,
.kz-site .kz-check:has(input[value="cellar"]:checked) .kz-res-cellar{display:flex}
.kz-site .kz-res-no{
  flex:none;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--kz-red);color:#fff;
  font-size:1.1rem;font-weight:780;font-stretch:90%;font-variant-numeric:tabular-nums;
}
.kz-site .kz-res-empty .kz-res-no{background:none;border:1.5px dashed var(--kz-rule-strong)}
.kz-site .kz-res h4{margin:6px 0 8px;font-size:clamp(1.2rem,1.05rem + .5vw,1.45rem);line-height:1.15;font-weight:780;font-stretch:88%;letter-spacing:-.015em;color:var(--kz-ink)}
.kz-site .kz-res p{margin-bottom:10px}
.kz-site .kz-res a,.kz-site .kz-mod a{display:inline-flex;align-items:center;gap:8px;min-height:40px;font-weight:700;font-stretch:94%;color:var(--kz-pipe);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.24em}
.kz-site .kz-res a:hover,.kz-site .kz-mod a:hover{color:var(--kz-ink)}
.kz-site .kz-mod a{display:inline;min-height:0}
.kz-site .kz-mods{grid-column:1;list-style:none;margin:0;padding:0 0 0 76px}
.kz-site .kz-mod{display:none;margin:0 0 10px;font-size:.98rem;line-height:1.55;color:var(--kz-ink);max-width:62ch}
.kz-site .kz-mod b{font-weight:760}
.kz-site .kz-mod-rising b{color:var(--kz-red-dark)}
.kz-site .kz-check:has(input[value="rising"]:checked) .kz-mod-rising,
.kz-site .kz-check:has(input[value="slow"]:checked) .kz-mod-slow,
.kz-site .kz-check:has(input[value="repeat"]:checked) .kz-mod-repeat,
.kz-site .kz-check:has(input[value="rent"]:checked) .kz-mod-rent,
.kz-site .kz-check:has(input[value="own"]:checked) .kz-mod-own{display:block}
.kz-site .kz-check-actions{grid-column:2;grid-row:1 / span 2;display:flex;flex-direction:column;gap:10px;min-width:280px}
.kz-site .kz-check:has(input[value="rising"]:checked) .kz-check-actions .kz-btn-phone{order:-1;background:var(--kz-red);border-color:var(--kz-red);color:#fff}
.kz-site .kz-check:has(input[value="rising"]:checked) .kz-check-actions .kz-btn-phone:hover{background:var(--kz-red-dark);border-color:var(--kz-red-dark)}
.kz-site .kz-check:has(input[value="rising"]:checked) .kz-check-actions .kz-check-go{background:transparent;color:var(--kz-ink);border-color:var(--kz-ink)}
.kz-site .kz-check-note{grid-column:1 / -1;margin:6px 0 0}

/* ---------- Responsive ---------- */
@media (max-width:1100px){
  .kz-site .kz-check-qs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kz-site .kz-q:nth-child(odd){border-left:0;padding-left:0}
  .kz-site .kz-q:nth-child(n+3){border-top:1px solid var(--kz-rule)}
  .kz-site .kz-q:nth-child(2n){padding-right:0}
  .kz-site .kz-check-out{grid-template-columns:minmax(0,1fr)}
  .kz-site .kz-check-actions{grid-column:1;grid-row:auto;flex-direction:row;flex-wrap:wrap;min-width:0}
  .kz-site .kz-mods{padding-left:0}
}
@media (max-width:680px){
  .kz-site .kz-check{padding:22px 18px 24px;outline-offset:-6px}
  .kz-site .kz-check-qs{grid-template-columns:minmax(0,1fr)}
  .kz-site .kz-q,.kz-site .kz-q:nth-child(n){border-left:0;padding:18px 0 12px}
  .kz-site .kz-q + .kz-q{border-top:1px solid var(--kz-rule)}
  .kz-site .kz-res-no{width:46px;height:46px;font-size:1rem}
  .kz-site .kz-check-actions{flex-direction:column}
  .kz-site .kz-check-actions .kz-btn{width:100%}
}

/* =====================================================================
   KZ-SITE · Ratgeber Abfluss verstopft (Okt. 2026)
   Bausteine für /ratgeber/abfluss-verstopft/: Soforthilfe-Box, Inhalt,
   Ursachenfinder (per :has(), ohne JavaScript), Methoden mit Reichweite,
   sechs Stationen, Regionen bei Zahlen, Mythen, Ratgeberkarten und die
   Verstopfungs-Anatomie (Abb. 1, eingesetzt per verstopfung-anatomy/wp-export.mjs).
   Gilt nur innerhalb von .kz-site; Farben und Schrift nur aus den Tokens.
   ===================================================================== */
.kz-site .kz-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* ---------- Soforthilfe-Box im Hero ---------- */
.kz-site .kz-quick{margin:32px 0 0;border:1px solid var(--kz-ink);background:var(--kz-paper);max-width:36rem}
.kz-site .kz-quick-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px;padding:12px 16px;background:var(--kz-ink)}
.kz-site .kz-quick-head .kz-quick-title{margin:0;font-size:.8rem;line-height:1.2;font-weight:720;font-stretch:78%;letter-spacing:.12em;text-transform:uppercase;color:#fff}
.kz-site .kz-quick-head span{font-size:.88rem;line-height:1.2;color:var(--kz-on-ink)}
.kz-site .kz-quick dl{margin:0}
.kz-site .kz-quick dl > div{display:grid;grid-template-columns:minmax(0,9.5rem) minmax(0,1fr);gap:4px 18px;margin:0;padding:13px 16px;border-top:1px solid var(--kz-rule)}
.kz-site .kz-quick dl > div:first-child{border-top:0}
.kz-site .kz-quick dt{font-size:.97rem;line-height:1.38;font-weight:720;font-stretch:94%;color:var(--kz-ink)}
.kz-site .kz-quick dd{margin:0;font-size:.95rem;line-height:1.45;color:var(--kz-muted)}
.kz-site .kz-quick dd a{color:var(--kz-pipe);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.22em;white-space:nowrap}
.kz-site .kz-quick dd a:hover{color:var(--kz-ink);text-decoration-thickness:2px}
.kz-site .kz-quick .kz-quick-alert{background:rgba(207,58,36,.06);box-shadow:inset 4px 0 0 var(--kz-red)}
.kz-site .kz-quick .kz-quick-alert dt{color:var(--kz-red-dark)}
.kz-site .kz-quick .kz-quick-alert dd{color:var(--kz-ink)}
.kz-site .kz-quick .kz-quick-alert dd a{color:var(--kz-red-dark)}

/* ---------- Inhaltsverzeichnis ---------- */
.kz-site .kz-toc{padding:clamp(24px,3vw,40px) 0;background:var(--kz-sheet);border-bottom:1px solid var(--kz-rule)}
.kz-site .kz-toc-grid{display:grid;grid-template-columns:minmax(0,9rem) minmax(0,1fr);gap:12px 40px;align-items:start}
.kz-site .kz-toc .kz-label{margin:0;padding-top:16px}
.kz-site .kz-toc ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));column-gap:24px;border-top:2px solid var(--kz-ink)}
.kz-site .kz-toc li{margin:0;border-bottom:1px solid var(--kz-rule-strong)}
.kz-site .kz-toc a{
  display:flex;align-items:baseline;gap:10px;min-height:48px;padding:12px 0;
  font-size:.98rem;line-height:1.3;font-weight:650;font-stretch:92%;color:var(--kz-ink);transition:color .2s;
}
.kz-site .kz-toc a b{flex:none;font-size:.74rem;font-weight:780;font-stretch:84%;letter-spacing:.04em;color:var(--kz-graphite);font-variant-numeric:tabular-nums;transition:color .2s}
.kz-site .kz-toc a:hover{color:var(--kz-pipe)}
.kz-site .kz-toc a:hover b{color:var(--kz-red)}
.kz-site section[id],.kz-site .kz-legend-item,.kz-site .kz-anat{scroll-margin-top:24px}

/* ---------- Ursachenfinder (Prüfblatt mit drei Fragen) ---------- */
.kz-site .kz-finder .kz-check-qs{grid-template-columns:repeat(3,minmax(0,1fr))}
.kz-site .kz-finder .kz-q label small{display:block;margin-top:3px;font-size:.84rem;line-height:1.3;color:var(--kz-muted)}
.kz-site .kz-finder .kz-check-out{grid-template-columns:minmax(0,1fr)}
.kz-site .kz-finder .kz-fr-step{color:var(--kz-ink)}
.kz-site .kz-finder .kz-fr-step b{font-weight:740}
.kz-site .kz-finder:has(input[name="kz-f1"]:checked) .kz-res-empty,
.kz-site .kz-finder:has(input[value="f-zurueck"]:checked) .kz-res-empty{display:none}
.kz-site .kz-finder:has(input[value="f-kueche"]:checked) .kz-fr-kueche,
.kz-site .kz-finder:has(input[value="f-dusche"]:checked) .kz-fr-dusche,
.kz-site .kz-finder:has(input[value="f-lavabo"]:checked) .kz-fr-lavabo,
.kz-site .kz-finder:has(input[value="f-wc"]:checked) .kz-fr-wc,
.kz-site .kz-finder:has(input[value="f-mehrere"]:checked) .kz-fr-mehrere{display:flex}
/* Rückstau übersteuert den Ort: Die Engstelle liegt dann hinter dem Ablauf */
.kz-site .kz-finder:has(input[value="f-zurueck"]:checked) .kz-fr{display:none}
.kz-site .kz-finder:has(input[value="f-zurueck"]:checked) .kz-fr-rueck{display:flex}
.kz-site .kz-finder:has(input[value="f-langsam"]:checked) .kz-mod-langsam,
.kz-site .kz-finder:has(input[value="f-steht"]:checked) .kz-mod-steht,
.kz-site .kz-finder:has(input[value="f-gluckert"]:checked) .kz-mod-gluckert,
.kz-site .kz-finder:has(input[value="f-stinkt"]:checked) .kz-mod-stinkt,
.kz-site .kz-finder:has(input[value="f-ploetzlich"]:checked) .kz-mod-ploetzlich,
.kz-site .kz-finder:has(input[value="f-zunehmend"]:checked) .kz-mod-zunehmend{display:block}
/* Warnung: mehrere Abläufe, Rückstau oder wiederkehrend */
.kz-site .kz-fr-warn{display:none;margin:6px 0 0;padding:24px 26px 26px;border:2px solid var(--kz-red);background:var(--kz-paper)}
.kz-site .kz-finder:has(input[value="f-mehrere"]:checked) .kz-fr-warn,
.kz-site .kz-finder:has(input[value="f-zurueck"]:checked) .kz-fr-warn,
.kz-site .kz-finder:has(input[value="f-wieder"]:checked) .kz-fr-warn{display:block}
.kz-site .kz-fr-warn .kz-alert-icon{width:32px;height:32px;margin-bottom:12px}
.kz-site .kz-fr-warn h4{margin:0 0 12px;font-size:clamp(1.25rem,1.1rem + .5vw,1.5rem);line-height:1.12;font-weight:800;font-stretch:86%;letter-spacing:-.015em;color:var(--kz-ink)}
.kz-site .kz-fr-why{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px;padding:0}
.kz-site .kz-fr-why li{display:none;margin:0;padding:5px 10px;border:1.5px solid var(--kz-red);font-size:.74rem;line-height:1.2;font-weight:720;font-stretch:82%;letter-spacing:.08em;text-transform:uppercase;color:var(--kz-red-dark)}
.kz-site .kz-finder:has(input[value="f-mehrere"]:checked) .kz-why-mehrere,
.kz-site .kz-finder:has(input[value="f-zurueck"]:checked) .kz-why-zurueck,
.kz-site .kz-finder:has(input[value="f-wieder"]:checked) .kz-why-wieder{display:block}
.kz-site .kz-fr-warn p{color:var(--kz-ink);max-width:64ch}
.kz-site .kz-fr-warn .kz-check-actions{flex-direction:row;flex-wrap:wrap;min-width:0;margin-top:20px}

/* ---------- Methoden mit Reichweite ---------- */
.kz-site .kz-reach-key{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:18px;font-size:.88rem;line-height:1.3;color:var(--kz-muted)}
.kz-site .kz-reach-swatch{display:inline-block;flex:none;width:22px;height:7px;margin-left:8px;background:var(--kz-pipe)}
.kz-site .kz-reach-swatch:first-child{margin-left:0}
.kz-site .kz-reach-swatch-half,.kz-site .kz-reach li.half::before{background:repeating-linear-gradient(135deg,var(--kz-pipe) 0 2px,var(--kz-paper) 2px 5px);box-shadow:inset 0 0 0 1px var(--kz-pipe)}
.kz-site .kz-reach-swatch-off{background:var(--kz-rule)}
.kz-site .kz-meth-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:2px solid var(--kz-ink)}
.kz-site .kz-meth{display:flex;flex-direction:column;margin:0;padding:26px 28px 28px;border-left:1px solid var(--kz-rule);border-bottom:1px solid var(--kz-rule)}
.kz-site .kz-meth:nth-child(3n+1){border-left:0;padding-left:0}
.kz-site .kz-meth .kz-number{margin-bottom:18px}
.kz-site .kz-meth h3{margin-bottom:16px}
.kz-site .kz-reach{margin:0 0 20px}
.kz-site .kz-reach-label{display:block;margin-bottom:7px;font-size:.7rem;line-height:1.2;font-weight:680;font-stretch:78%;letter-spacing:.11em;text-transform:uppercase;color:var(--kz-ink)}
.kz-site .kz-reach ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}
.kz-site .kz-reach li{
  position:relative;margin:0;padding-top:14px;
  font-size:.66rem;line-height:1.2;font-weight:600;font-stretch:80%;letter-spacing:.05em;text-transform:uppercase;color:var(--kz-muted);
}
.kz-site .kz-reach li::before{content:"";position:absolute;left:0;right:0;top:0;height:8px;background:var(--kz-rule)}
.kz-site .kz-reach li.on,.kz-site .kz-reach li.half{color:var(--kz-ink);font-weight:760}
.kz-site .kz-reach li.on::before{background:var(--kz-pipe)}
.kz-site .kz-meth dl{display:flex;flex:1 1 auto;flex-direction:column;gap:14px;margin:0}
.kz-site .kz-meth dl > div{margin:0}
.kz-site .kz-meth dt{margin:0 0 3px;font-size:.72rem;line-height:1.3;font-weight:680;font-stretch:80%;letter-spacing:.11em;text-transform:uppercase;color:var(--kz-graphite)}
.kz-site .kz-meth dd{margin:0;font-size:.96rem;line-height:1.55;color:var(--kz-muted)}
.kz-site .kz-meth .kz-meth-risk dt{color:var(--kz-red-dark)}
.kz-site .kz-meth .kz-meth-next{margin-top:auto;padding-top:14px;border-top:1px solid var(--kz-rule)}
.kz-site .kz-meth .kz-meth-next dd{font-weight:620;color:var(--kz-ink)}
.kz-site .kz-meth dd a{color:var(--kz-pipe);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.22em}
.kz-site .kz-meth dd a:hover{color:var(--kz-ink)}

/* ---------- Sechs Stationen an der Leitung ---------- */
.kz-site .kz-flow-6{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:52px}
.kz-site .kz-flow-6::before{display:none}
.kz-site .kz-flow-6 .kz-step::before{content:"";position:absolute;left:0;right:calc(-1*clamp(24px,4vw,56px));top:17px;height:6px;background:var(--kz-pipe)}
.kz-site .kz-flow-6 .kz-step:nth-child(3n)::before{right:0}
.kz-site .kz-step-end .kz-step-no{background:var(--kz-red);border-color:var(--kz-red);color:#fff}
.kz-site .kz-step .kz-step-if{margin-top:12px;padding-top:12px;border-top:1px dashed var(--kz-rule-strong);font-size:.95rem;color:var(--kz-ink)}
.kz-site .kz-step-if b{font-weight:740}

/* ---------- Zahlen mit Region ---------- */
.kz-site .kz-group-title{margin:0 0 16px;font-size:.8rem;line-height:1.2;font-weight:680;font-stretch:78%;letter-spacing:.11em;text-transform:uppercase;color:var(--kz-ink)}
.kz-site .kz-findings + .kz-group-title{margin-top:clamp(48px,6vw,72px)}
.kz-site .kz-group-note{margin:0 0 20px;font-size:.97rem}
.kz-site .kz-region{
  display:inline-block;align-self:flex-start;margin:0 0 16px;padding:5px 9px;background:var(--kz-ink);color:#fff;
  font-size:.7rem;line-height:1.2;font-weight:720;font-stretch:80%;letter-spacing:.1em;text-transform:uppercase;
}
.kz-site .kz-region-uk{background:var(--kz-paper);color:var(--kz-ink);box-shadow:inset 0 0 0 1.5px var(--kz-ink)}
.kz-site .kz-finding h4{margin:0 0 10px;font-size:1.12rem;line-height:1.25;font-weight:700;font-stretch:94%;letter-spacing:-.01em;color:var(--kz-ink)}
.kz-site .kz-chips{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 16px;padding:0}
.kz-site .kz-chips li{margin:0;padding:6px 10px;border:1px solid var(--kz-rule-strong);background:var(--kz-paper);font-size:.88rem;line-height:1.2;font-weight:640;font-stretch:92%;color:var(--kz-ink)}
.kz-site .kz-meters{list-style:none;display:grid;gap:8px;margin:0 0 18px;padding:0}
.kz-site .kz-meters li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:end;margin:0;font-size:.8rem;line-height:1.25;color:var(--kz-graphite)}
.kz-site .kz-meters em{font-style:normal;font-weight:740;font-stretch:90%;color:var(--kz-ink);font-variant-numeric:tabular-nums}
.kz-site .kz-bar{position:relative;grid-column:1 / -1;display:block;height:10px;background:var(--kz-rule)}
.kz-site .kz-bar i{position:absolute;left:0;top:0;bottom:0;background:var(--kz-pipe)}
.kz-site .kz-bar .kz-w-94{width:94%}
.kz-site .kz-bar .kz-w-28{width:28%}
.kz-site .kz-bar .kz-w-60{width:60%}

/* ---------- Mythen und Fakten ---------- */
.kz-site .kz-myths{list-style:none;margin:0;padding:0;border-top:2px solid var(--kz-ink)}
.kz-site .kz-myth{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:14px clamp(28px,5vw,80px);margin:0;padding:26px 0 28px;border-bottom:1px solid var(--kz-rule)}
.kz-site .kz-myth-label{
  display:inline-block;margin:0 0 10px;padding:4px 8px;border:1.5px solid var(--kz-red);
  font-size:.7rem;line-height:1.2;font-weight:720;font-stretch:80%;letter-spacing:.11em;text-transform:uppercase;color:var(--kz-red-dark);
}
.kz-site .kz-myth-label.kz-myth-fact{border-color:var(--kz-pipe);color:var(--kz-pipe)}
.kz-site .kz-myth .kz-myth-claim{max-width:26ch;font-size:clamp(1.15rem,1.02rem + .4vw,1.32rem);line-height:1.3;font-weight:720;font-stretch:92%}

/* ---------- Weiterführende Ratgeber ---------- */
.kz-site .kz-guides{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(32px,3.5vw,48px) clamp(20px,2.4vw,32px)}
.kz-site .kz-guide{position:relative;display:flex;flex-direction:column;margin:0}
.kz-site .kz-guide-media{
  position:relative;display:block;aspect-ratio:3/2;margin:0 0 18px;overflow:hidden;
  border:1px solid var(--kz-ink);outline:1px solid var(--kz-rule-strong);outline-offset:-7px;
  background-color:var(--kz-sheet);
  background-image:
    linear-gradient(var(--kz-grid-strong) 1px,transparent 1px),
    linear-gradient(90deg,var(--kz-grid-strong) 1px,transparent 1px),
    linear-gradient(var(--kz-grid) 1px,transparent 1px),
    linear-gradient(90deg,var(--kz-grid) 1px,transparent 1px);
  background-size:40px 40px,40px 40px,8px 8px,8px 8px;background-position:-1px -1px;
}
.kz-site .kz-guide-media img{position:absolute;inset:8px;width:calc(100% - 16px);height:calc(100% - 16px);max-width:none;object-fit:cover;filter:grayscale(1) contrast(1.04);transition:filter .45s var(--kz-ease)}
.kz-site .kz-guide:hover .kz-guide-media img{filter:none}
.kz-site .kz-guide-media svg{position:absolute;inset:0;display:block;width:100%;height:100%}
.kz-site .kz-guide-cat{display:block;margin-bottom:8px;font-size:.72rem;line-height:1.2;font-weight:680;font-stretch:80%;letter-spacing:.11em;text-transform:uppercase;color:var(--kz-graphite)}
.kz-site .kz-guide h3{margin-bottom:8px;font-size:1.2rem}
.kz-site .kz-guide h3 a{color:var(--kz-ink);transition:color .2s}
.kz-site .kz-guide h3 a::after{content:"";position:absolute;inset:0;z-index:1}
.kz-site .kz-guide h3 a:focus-visible{outline:none}
.kz-site .kz-guide:has(a:focus-visible){outline:3px solid var(--kz-pipe);outline-offset:6px}
.kz-site .kz-guide:hover h3 a{color:var(--kz-pipe)}
.kz-site .kz-guide p{font-size:.97rem;line-height:1.55}
.kz-site .kz-guide-go{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-top:14px;font-weight:700;font-stretch:94%;color:var(--kz-pipe)}
.kz-site .kz-guide-go .kz-i{transition:transform .35s var(--kz-ease)}
.kz-site .kz-guide:hover .kz-guide-go .kz-i{transform:translateX(4px)}

/* ---------- Verstopfungs-Anatomie (Abb. 1) ----------
   Rahmen, Zeichnungsregeln und Zustandswahl kommen aus „Siphon-Anatomie“ (.kz-anat, .sp-*);
   hier nur die Teile der Verstopfung. Wasser = Leitungsblau, Seife = Ocker, Haare/Fett/Schlamm = Braun. */
.kz-site .kz-vz{--vz-water:var(--kz-pipe);--vz-water-top:#8ec7ec;--vz-flow:#f4f9fd;--vz-dirt:#76502f;--vz-soap:#c39a3c;--vz-plug:#946b3e;--vz-hair:#3a2a1e;--vz-murk:#5e7a86}
.kz-site .kz-vz .vz-water{fill:var(--vz-water);fill-opacity:.55}
.kz-site .kz-vz .vz-surface{fill:var(--vz-water-top);fill-opacity:.9;stroke:var(--vz-water);stroke-width:.5}
.kz-site .kz-vz .vz-sludge{fill:var(--vz-dirt);fill-opacity:.9}
.kz-site .kz-vz .vz-soap{fill:var(--vz-soap);fill-opacity:.9}
.kz-site .kz-vz .vz-plug{fill:var(--vz-plug);stroke:var(--vz-dirt);stroke-width:.4;stroke-linejoin:round}
.kz-site .kz-vz .vz-hair path{fill:none;stroke:var(--vz-hair);stroke-width:.6;stroke-linecap:round;stroke-linejoin:round}
.kz-site .kz-vz .vz-flow circle{fill:var(--vz-flow)}
.kz-site .kz-vz .vz-pool{fill:var(--vz-water);fill-opacity:.45;stroke:var(--vz-water);stroke-width:.5}
.kz-site .kz-vz .vz-ripple{fill:none;stroke:var(--vz-water);stroke-width:.6}
.kz-site .kz-vz .vz-stream{fill:var(--vz-water);fill-opacity:.7}
.kz-site .kz-vz :is(.vz-water,.vz-pool,.vz-surface){transition:fill 1.2s var(--kz-ease)}
.kz-site .kz-vz[data-state="heavy"] :is(.vz-water,.vz-pool){fill:var(--vz-murk)}
.kz-site .kz-vz[data-state="heavy"] .vz-surface{fill:#9fb2ba}
.kz-site .kz-vz [data-state="free"] .sp-dot::after{background:var(--vz-water)}
.kz-site .kz-vz [data-state="light"] .sp-dot::after{background:var(--vz-soap)}
.kz-site .kz-vz [data-state="heavy"] .sp-dot::after{background:var(--vz-dirt)}
.kz-site .kz-vz .kz-anat-swatch[data-key="water"]{background:var(--vz-water);box-shadow:inset 0 0 0 2px var(--vz-water),inset 4px 0 0 2px var(--vz-flow)}
.kz-site .kz-vz .kz-anat-swatch[data-key="soap"]{background:var(--vz-soap)}
.kz-site .kz-vz .kz-anat-swatch[data-key="dirt"]{background:var(--vz-dirt)}

/* ---------- Responsive (Abfluss verstopft) ---------- */
@media (max-width:1100px){
  .kz-site .kz-toc ol{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kz-site .kz-meth-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kz-site .kz-meth:nth-child(n){border-left:1px solid var(--kz-rule);padding-left:28px}
  .kz-site .kz-meth:nth-child(2n+1){border-left:0;padding-left:0}
  .kz-site .kz-flow-6{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kz-site .kz-flow-6 .kz-step:nth-child(n)::before{right:calc(-1*clamp(24px,4vw,56px))}
  .kz-site .kz-flow-6 .kz-step:nth-child(2n)::before{right:0}
  .kz-site .kz-guides{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kz-site .kz-quick{max-width:none}
}
@media (max-width:860px){
  .kz-site .kz-toc-grid{grid-template-columns:minmax(0,1fr);gap:10px}
  .kz-site .kz-toc .kz-label{padding-top:0}
  .kz-site .kz-myth{grid-template-columns:minmax(0,1fr);gap:6px}
  .kz-site .kz-myth .kz-myth-claim{max-width:none}
}
@media (max-width:680px){
  .kz-site .kz-quick{margin-top:26px}
  .kz-site .kz-finder .kz-check-qs{grid-template-columns:minmax(0,1fr)}
  .kz-site .kz-quick dl > div{grid-template-columns:minmax(0,1fr);padding:12px 14px}
  .kz-site .kz-quick-head{padding:11px 14px}
  .kz-site .kz-toc ol{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}
  .kz-site .kz-toc a{font-size:.94rem;gap:8px}
  .kz-site .kz-meth-grid{grid-template-columns:minmax(0,1fr)}
  .kz-site .kz-meth:nth-child(n){border-left:0;padding:24px 0 26px}
  .kz-site .kz-flow-6{grid-template-columns:minmax(0,1fr);row-gap:36px}
  .kz-site .kz-flow-6::before{display:block}
  .kz-site .kz-flow-6 .kz-step::before{display:none}
  .kz-site .kz-finder .kz-res{flex-direction:column;gap:12px}
  .kz-site .kz-fr-warn{padding:20px 18px 22px}
  .kz-site .kz-fr-warn .kz-check-actions{flex-direction:column}
  /* Ratgeberkarten kompakt: Bild links, Text rechts, ganze Karte bleibt Link */
  .kz-site .kz-guides{grid-template-columns:minmax(0,1fr);gap:0}
  .kz-site .kz-guide{display:grid;grid-template-columns:minmax(0,7rem) minmax(0,1fr);column-gap:16px;align-content:start;padding:18px 0;border-bottom:1px solid var(--kz-rule)}
  .kz-site .kz-guide:first-child{padding-top:0}
  .kz-site .kz-guide > :not(.kz-guide-media){grid-column:2}
  .kz-site .kz-guide-media{grid-row:1 / span 3;align-self:start;aspect-ratio:1;margin:0;outline-offset:-5px}
  .kz-site .kz-guide-media img{inset:5px;width:calc(100% - 10px);height:calc(100% - 10px)}
  .kz-site .kz-guide-cat{margin-bottom:4px}
  .kz-site .kz-guide h3{font-size:1.06rem}
  .kz-site .kz-guide p{font-size:.93rem;line-height:1.5}
  .kz-site .kz-guide-go{display:none}
  .kz-site .kz-region{margin-bottom:12px}
}
@media (prefers-reduced-motion:reduce){
  .kz-site .kz-guide-media img{transition:none}
}
