/* ============================================================================
   flurcheck · Design-System für Inhaltsseiten (site.css)
   Ersetzt auf Inhaltsseiten style.css (Karten-App) + redesign.js-Header.
   Aufbau: 1 Tokens · 2 Basis · 3 Kopfzeile/Navigation · 4 Seitenraster ·
           5 Seitenkopf · 6 Prüfbox · 7 Text-Bausteine · 8 Bänder/FAQ/Kacheln ·
           9 Anzeigen · 10 Fußzeile · 11 Hilfsklassen/Druck
   Farbrichtung „Katasterpetrol" (10/2026). Kontraste geprüft: alle Textpaare ≥ 4,5:1.
   ========================================================================== */

/* ---------- 1 · Tokens ---------- */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;
  src:url('/fonts/inter-latin.woff2') format('woff2')}
:root{
  /* Farben – hell */
  --c-primary:#0E5E6F; --c-primary-strong:#0A4A58; --c-primary-soft:#E7F0F1; --c-primary-line:#B9D3D7;
  --c-on-primary:#FFFFFF;
  --c-ink:#10242B; --c-body:#33474D; --c-muted:#5A6B70;
  --c-bg:#F6F8F8; --c-surface:#FFFFFF; --c-line:#DCE4E5; --c-line-strong:#C3D0D2;
  --c-accent:#D97706;                       /* Flurstück-Amber – nur Dekor, nie Text */
  --c-warn-soft:#FEF3DC; --c-warn-line:#F5D99A; --c-warn-ink:#7A3E06;
  --c-info-soft:#E7F0F1; --c-info-line:#B9D3D7; --c-info-ink:#0A4A58;
  --c-ok:#17663F; --c-ok-soft:#E5F3EB; --c-danger:#B42318; --c-danger-soft:#FDECEA; --c-warn-text:#9A4A07;
  --c-footer:#0C1D22; --c-footer-ink:#C9D6D9; --c-footer-muted:#93A7AC;
  /* Hochwasser-Szenarien (identisch mit Kartenlegende) */
  --hq-haeufig:#c72626; --hq-100:#f7942a; --hq-extrem:#ffd666;
  /* Typografie */
  --f-sans:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --fs-xs:.8125rem; --fs-sm:.875rem; --fs-base:1rem; --fs-prose:1.0625rem; --fs-lead:1.1875rem;
  --fs-h3:1.1875rem; --fs-h2:clamp(1.375rem,1.1rem + .8vw,1.75rem); --fs-h1:clamp(2rem,1.35rem + 2.3vw,3.25rem);
  /* Abstände (4er-Raster) */
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px; --s8:64px; --s9:96px;
  /* Formen */
  --r-sm:6px; --r:10px; --r-lg:16px; --r-pill:999px;
  --shadow:0 1px 2px rgba(16,36,43,.06),0 8px 24px rgba(16,36,43,.07);
  --shadow-lg:0 2px 4px rgba(16,36,43,.06),0 18px 44px rgba(16,36,43,.12);
  /* Raster */
  --w-page:1440px; --w-prose:46rem; --gutter:clamp(16px,3.2vw,48px); --head-h:64px;
  color-scheme:light;
}
:root[data-theme="dark"]{
  --c-primary:#5FBFCF; --c-primary-strong:#86D1DD; --c-primary-soft:#123139; --c-primary-line:#1F4A54;
  --c-on-primary:#06222A;
  --c-ink:#E6EFF0; --c-body:#BCCBCE; --c-muted:#8EA2A7;
  --c-bg:#0B1518; --c-surface:#111F23; --c-line:#22363B; --c-line-strong:#2E464C;
  --c-warn-soft:#2B1E08; --c-warn-line:#5C4210; --c-warn-ink:#F8D58B;
  --c-info-soft:#123139; --c-info-line:#1F4A54; --c-info-ink:#9ED8E1;
  --c-ok:#6FD39C; --c-ok-soft:#0E2A1C; --c-danger:#FF8A80; --c-danger-soft:#2E1210; --c-warn-text:#F5B062;
  --c-footer:#071013; --c-footer-ink:#BCCBCE; --c-footer-muted:#8EA2A7;
  --shadow:0 1px 2px rgba(0,0,0,.3),0 8px 24px rgba(0,0,0,.25);
  --shadow-lg:0 2px 4px rgba(0,0,0,.3),0 18px 44px rgba(0,0,0,.4);
  color-scheme:dark;
}

/* ---------- 2 · Basis ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--head-h) + 16px)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--c-surface);color:var(--c-body);font:400 var(--fs-base)/1.6 var(--f-sans);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{max-width:100%}
a{color:var(--c-primary);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{color:var(--c-primary-strong);text-decoration-thickness:2px}
h1,h2,h3,h4{color:var(--c-ink);font-weight:700;letter-spacing:-.015em;line-height:1.2;margin:0}
p{margin:0}
strong,b{font-weight:650;color:var(--c-ink)}
:focus-visible{outline:3px solid var(--c-primary);outline-offset:2px;border-radius:4px}
.sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:var(--s4);top:-60px;z-index:100;background:var(--c-primary);color:var(--c-on-primary);padding:10px 16px;border-radius:var(--r);font-weight:600;text-decoration:none}
.skip:focus{top:var(--s3)}
.i{width:1.25em;height:1.25em;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.25em}
.wrap{max-width:var(--w-page);margin-inline:auto;padding-inline:var(--gutter)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);min-height:44px;padding:10px 20px;border-radius:var(--r);
  border:1px solid transparent;font:600 var(--fs-base)/1.2 var(--f-sans);text-decoration:none;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}
.btn-primary{background:var(--c-primary);color:var(--c-on-primary)}
.btn-primary:hover{background:var(--c-primary-strong);color:var(--c-on-primary)}
.btn-secondary{background:var(--c-surface);color:var(--c-ink);border-color:var(--c-line-strong)}
.btn-secondary:hover{border-color:var(--c-primary);color:var(--c-primary)}
.btn-lg{min-height:52px;padding:14px 24px;font-size:var(--fs-prose)}
.btn .i{width:1.1em;height:1.1em}

/* ---------- 3 · Kopfzeile & Navigation ---------- */
.sh{position:sticky;top:0;z-index:60;border-bottom:1px solid var(--c-line)}
/* Milchglas als eigene Ebene: backdrop-filter direkt auf .sh würde das fixierte Handy-Menü (.sn) an die Kopfzeile binden */
.sh::before{content:'';position:absolute;inset:0;z-index:-1;background:color-mix(in srgb,var(--c-surface) 92%,transparent);
  backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px)}
.sh-in{max-width:var(--w-page);margin-inline:auto;padding-inline:var(--gutter);height:var(--head-h);display:flex;align-items:center;gap:var(--s5)}
.sh-logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--c-ink);flex:none}
.sh-logo:hover{color:var(--c-ink)}
.sh-logo svg{width:32px;height:32px}
.sh-logo span{font:800 1.1875rem/1 var(--f-sans);letter-spacing:-.025em}
.sh-logo span b{font-weight:800;color:var(--c-primary)}
.sh-tools{margin-left:auto;display:flex;align-items:center;gap:var(--s2)}
.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--r);border:1px solid transparent;
  background:none;color:var(--c-body);cursor:pointer;text-decoration:none}
.icon-btn:hover{background:var(--c-bg);color:var(--c-ink)}
.icon-btn .i{width:20px;height:20px}
.theme-btn .i-moon{display:inline}.theme-btn .i-sun{display:none}
[data-theme="dark"] .theme-btn .i-moon{display:none}[data-theme="dark"] .theme-btn .i-sun{display:inline}
.sh-burger{display:none}

.sn-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:var(--s1)}
.sn-item{position:relative;display:flex;align-items:center}
.sn-top{display:inline-flex;align-items:center;min-height:44px;padding:0 10px;border-radius:var(--r);color:var(--c-ink);font-weight:550;font-size:.9375rem;text-decoration:none}
.sn-top:hover,.sn-item.open>.sn-top{color:var(--c-primary);background:var(--c-bg)}
.sn-top[aria-current="page"]{color:var(--c-primary)}
.sn-exp{display:inline-flex;align-items:center;justify-content:center;width:28px;height:44px;margin-left:-8px;border:0;background:none;color:var(--c-muted);cursor:pointer;border-radius:var(--r)}
.sn-exp .i{width:16px;height:16px;transition:transform .15s}
.sn-item.open .sn-exp .i{transform:rotate(180deg)}
.sn-sub{position:absolute;top:100%;left:0;min-width:260px;padding:var(--s3);background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-lg);
  box-shadow:var(--shadow-lg);visibility:hidden;opacity:0;transform:translateY(4px);transition:opacity .15s,transform .15s,visibility .15s}
.sn-item.open>.sn-sub{visibility:visible;opacity:1;transform:none}
@media (hover:hover) and (min-width:1140px){.sn-item:hover>.sn-sub{visibility:visible;opacity:1;transform:none}}
.sn-mega{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:var(--s2) var(--s5);min-width:clamp(860px,calc(100vw - 300px),1060px);padding:var(--s5)}
.sn-bl{display:grid;grid-template-columns:repeat(2,minmax(170px,1fr));gap:0 var(--s3);min-width:400px}
.sn-h{font-size:var(--fs-xs);font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--c-muted);margin:0 0 var(--s2) 10px}
.sn-sub ul{list-style:none;margin:0;padding:0}
.sn-sub a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-sm);color:var(--c-ink);text-decoration:none;font-size:.9375rem;line-height:1.3}
.sn-sub a:hover{background:var(--c-primary-soft);color:var(--c-primary-strong)}
.sn-sub a .i{color:var(--c-primary);width:18px;height:18px}
.sn-foot{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:var(--s4);border-top:1px solid var(--c-line);margin-top:var(--s2);padding-top:var(--s3);font-size:var(--fs-sm);color:var(--c-muted)}
.sn-foot a{display:inline-flex;padding:4px 0;color:var(--c-primary);font-weight:600}
.sn-foot a:hover{background:none;text-decoration:underline}

@media (max-width:1139px){
  .sh-burger{display:inline-flex}
  .sn{position:fixed;inset:var(--head-h) 0 0 0;z-index:59;background:var(--c-surface);overflow-y:auto;padding:var(--s3) var(--gutter) var(--s8);
    visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s}
  .sn.open{visibility:visible;opacity:1}
  .sn-list{flex-direction:column;align-items:stretch;gap:0}
  .sn-item{flex-wrap:wrap;border-bottom:1px solid var(--c-line)}
  .sn-top{flex:1;min-height:56px;font-size:var(--fs-prose);padding:0 var(--s2)}
  .sn-exp{width:56px;height:56px;margin:0}
  .sn-exp .i{width:20px;height:20px}
  .sn-sub,.sn-mega,.sn-bl{position:static;display:none;visibility:visible;opacity:1;transform:none;min-width:0;width:100%;border:0;box-shadow:none;border-radius:0;padding:0 0 var(--s4)}
  .sn-item.open>.sn-sub{display:block}
  .sn-mega .sn-col+.sn-col{margin-top:var(--s4)}
  .sn-sub a{padding:11px 10px}
  .sn-foot{display:block}
  body.nav-open{overflow:hidden}
}

/* ---------- 4 · Seitenraster ---------- */
.crumb{font-size:var(--fs-sm);color:var(--c-muted);margin-bottom:var(--s5)}
.crumb ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.crumb li+li::before{content:'/';margin-right:6px;color:var(--c-line-strong)}
.crumb a{color:var(--c-muted);text-decoration:none}.crumb a:hover{color:var(--c-primary);text-decoration:underline}
.crumb [aria-current]{color:var(--c-ink);font-weight:550}

.layout{display:grid;gap:var(--s7);padding-block:var(--s7) var(--s6);
  grid-template-columns:minmax(0,1fr);}
@media (min-width:900px){.layout{grid-template-columns:minmax(0,1fr) 300px;gap:var(--s7)}}
@media (min-width:1240px){.layout{grid-template-columns:220px minmax(0,var(--w-prose)) 300px;justify-content:space-between;gap:var(--s7)}}
@media (min-width:1500px){.layout{grid-template-columns:240px minmax(0,var(--w-prose)) 320px}}

/* Inhaltsverzeichnis */
.toc{display:none}
@media (min-width:1240px){
  .toc{display:block;position:sticky;top:calc(var(--head-h) + var(--s5));align-self:start;max-height:calc(100vh - var(--head-h) - 48px);overflow:auto}
}
.toc-k{display:flex;align-items:center;gap:var(--s2);font-size:var(--fs-xs);font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--c-muted);margin:0 0 var(--s3)}
.toc ol{list-style:none;margin:0;padding:0;border-left:2px solid var(--c-line)}
.toc a{display:block;margin-left:-2px;padding:7px 12px;border-left:2px solid transparent;color:var(--c-muted);font-size:var(--fs-sm);line-height:1.4;text-decoration:none}
.toc a:hover{color:var(--c-ink)}
.toc a.on{border-left-color:var(--c-primary);color:var(--c-primary);font-weight:600}
/* Inhaltsverzeichnis mobil (eingeklappt) */
.tocbar{position:sticky;top:var(--head-h);z-index:40;background:var(--c-surface);border-bottom:1px solid var(--c-line)}
@media (min-width:1240px){.tocbar{display:none}}
.tocbar summary{display:flex;align-items:center;gap:var(--s2);padding:12px var(--gutter);cursor:pointer;list-style:none;font-weight:600;color:var(--c-ink)}
.tocbar summary::-webkit-details-marker{display:none}
.tocbar summary .lbl{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tocbar summary .i:last-child{transition:transform .15s}
.tocbar[open] summary .i:last-child{transform:rotate(180deg)}
.tocbar ol{list-style:none;margin:0;padding:0 var(--gutter) var(--s3);max-height:60vh;overflow:auto}
.tocbar a{display:block;padding:10px 12px;border-radius:var(--r-sm);color:var(--c-body);text-decoration:none}
.tocbar a.on{background:var(--c-primary-soft);color:var(--c-primary-strong);font-weight:600}

/* Seitenleiste */
.aside{display:flex;flex-direction:column;gap:var(--s4);min-width:0}
.aside-sticky{position:sticky;top:calc(var(--head-h) + var(--s5))}
@media (max-width:899px){.aside-sticky{position:static}}

/* ---------- 5 · Seitenkopf ---------- */
.hero{background:linear-gradient(180deg,var(--c-primary-soft) 0%,var(--c-bg) 100%);border-bottom:1px solid var(--c-line)}
.hero .wrap{padding-block:var(--s5) var(--s7)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s6);align-items:start}
@media (min-width:1024px){.hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);gap:var(--s8)}}
.eyebrow{display:inline-flex;align-items:center;gap:var(--s2);font-size:var(--fs-sm);font-weight:650;color:var(--c-primary);margin:0 0 var(--s3)}
.hero h1{font-size:var(--fs-h1);line-height:1.08;letter-spacing:-.03em;font-weight:780;margin:0 0 var(--s4);text-wrap:balance}
.lead{font-size:var(--fs-lead);line-height:1.6;color:var(--c-body);max-width:40em;margin:0 0 var(--s5)}
.byline{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);font-size:var(--fs-sm);color:var(--c-muted);margin:0 0 var(--s5)}
.byline span{display:inline-flex;align-items:center;gap:6px}
.byline .i{width:16px;height:16px}
.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3) var(--s5)}
.hero-cta small{font-size:var(--fs-sm);color:var(--c-muted)}
/* Lange deutsche Komposita („Hochwasserrisikomanagement-Richtlinie") dürfen das Raster nie sprengen */
h1,h2,.lead,.prose,.faq,.tile,.linkcard,.facts{overflow-wrap:break-word}
@media (max-width:719px){h1,h2,.lead,.prose,.faq-a{-webkit-hyphens:auto;hyphens:auto}}

/* ---------- 6 · Prüfbox (visuell abgesetzter „Prüfen"-Bereich) ---------- */
.check{background:var(--c-surface);border:1px solid var(--c-line);border-top:4px solid var(--c-primary);border-radius:var(--r-lg);padding:var(--s5);box-shadow:var(--shadow-lg);scroll-margin-top:calc(var(--head-h) + 24px)}
.check-k{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--c-primary);margin:0 0 var(--s2)}
.check h2{font-size:1.3125rem;margin:0 0 var(--s1)}
.check-sub{font-size:var(--fs-sm);color:var(--c-muted);margin:0 0 var(--s4)}
.check-form{display:flex;gap:var(--s2);position:relative}
.check-form input{flex:1;min-width:0;min-height:48px;padding:12px 14px;border:1px solid var(--c-line-strong);border-radius:var(--r);font:var(--fs-base) var(--f-sans);background:var(--c-surface);color:var(--c-ink)}
.check-form input::placeholder{color:var(--c-muted)}
.check-form input:focus{outline:none;border-color:var(--c-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--c-primary) 22%,transparent)}
.ac{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r);box-shadow:var(--shadow-lg);overflow:hidden}
.ac button{display:block;width:100%;text-align:left;border:0;background:none;padding:10px 14px;font:500 var(--fs-sm) var(--f-sans);color:var(--c-ink);cursor:pointer}
.ac button small{display:block;color:var(--c-muted);font-size:var(--fs-xs);font-weight:400}
.ac button:hover,.ac button.on{background:var(--c-primary-soft)}
.check-map{height:170px;border-radius:var(--r);margin-top:var(--s4);background:var(--c-bg);border:1px solid var(--c-line);overflow:hidden;position:relative}
.check-ph{position:absolute;inset:0;display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;color:var(--c-muted);font-size:var(--fs-sm);text-align:center;padding:var(--s4)}
.check-ph .i{width:28px;height:28px;color:var(--c-primary-line)}
.check-res{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s2);margin-top:var(--s3)}
.check-res[hidden]{display:none}
.kv{background:var(--c-bg);border:1px solid var(--c-line);border-radius:var(--r);padding:10px 12px;min-width:0}
.kv span{display:block;font-size:var(--fs-xs);color:var(--c-muted)}
.kv b{display:flex;align-items:center;gap:6px;font-size:var(--fs-sm);color:var(--c-ink);overflow-wrap:anywhere}
.kv.wide{grid-column:1/-1}
.kv .dot{width:10px;height:10px;border-radius:50%;flex:none;border:1px solid rgba(0,0,0,.15)}
.kv.yes{border-color:var(--c-warn-line);background:var(--c-warn-soft)}
.kv.yes b{color:var(--c-warn-ink)}
.kv.no b{color:var(--c-ok)}
.kv.sum{background:var(--c-info-soft);border-color:var(--c-info-line)}
.kv.sum b{font-weight:500;color:var(--c-ink);display:block}
.check-err{font-size:var(--fs-sm);color:var(--c-danger);margin:var(--s2) 0 0}
.check-err:empty{display:none}
.check-cta{width:100%;margin-top:var(--s3)}
.check-cta[hidden]{display:none}
.check-note{display:flex;gap:6px;font-size:var(--fs-xs);color:var(--c-muted);margin:var(--s3) 0 0}
.check-note .i{width:14px;height:14px;margin-top:2px}
@media (max-width:520px){.check{padding:var(--s4)}.check-res{grid-template-columns:minmax(0,1fr)}.check-form{flex-direction:column}}

/* ---------- 7 · Text-Bausteine (Nachlesen) ---------- */
.prose{min-width:0;font-size:var(--fs-prose);line-height:1.75}
.prose>section{scroll-margin-top:calc(var(--head-h) + 70px);margin-bottom:var(--s7)}
@media (min-width:1240px){.prose>section{scroll-margin-top:calc(var(--head-h) + 24px)}}
.prose h2{font-size:var(--fs-h2);margin:0 0 var(--s4);text-wrap:balance}
.prose h3{font-size:var(--fs-h3);margin:var(--s5) 0 var(--s2)}
.prose p{margin:0 0 var(--s4)}
.prose ul,.prose ol{margin:0 0 var(--s4);padding-left:1.3em}
.prose li{margin:0 0 var(--s2)}
.prose li::marker{color:var(--c-primary)}
.sec-ic{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--r);background:var(--c-primary-soft);color:var(--c-primary);margin-bottom:var(--s3)}
.sec-ic .i{width:22px;height:22px}

/* Hinweisboxen */
.callout{display:flex;gap:var(--s3);padding:var(--s4) var(--s5);border-radius:var(--r);border:1px solid var(--c-info-line);background:var(--c-info-soft);color:var(--c-info-ink);margin:0 0 var(--s4);font-size:var(--fs-base);line-height:1.6}
.callout>.i{width:22px;height:22px;margin-top:1px}
.callout p{margin:0}
.callout strong{color:inherit}
.callout-warn{border-color:var(--c-warn-line);background:var(--c-warn-soft);color:var(--c-warn-ink)}

/* Tabellen */
.tbl-wrap{overflow-x:auto;margin:var(--s4) 0 var(--s5);border:1px solid var(--c-line);border-radius:var(--r);-webkit-overflow-scrolling:touch}
.tbl{width:100%;border-collapse:collapse;font-size:var(--fs-base);line-height:1.5;min-width:540px}
.tbl caption{text-align:left;padding:var(--s3) var(--s4);font-size:var(--fs-sm);color:var(--c-muted);caption-side:bottom;border-top:1px solid var(--c-line)}
.tbl th{background:var(--c-bg);color:var(--c-ink);text-align:left;font-weight:650;font-size:var(--fs-sm);padding:12px var(--s4);border-bottom:1px solid var(--c-line)}
.tbl td{padding:12px var(--s4);border-bottom:1px solid var(--c-line);vertical-align:top}
.tbl tr:last-child td{border-bottom:0}
.tbl td:first-child{white-space:nowrap}
.sw{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:8px;vertical-align:-1px;border:1px solid rgba(0,0,0,.12)}

/* Stufenliste (z. B. Gefährdungsklassen) */
.steps{list-style:none!important;padding:0!important;margin:0 0 var(--s5)!important;display:grid;gap:var(--s2)}
.steps li{display:flex;gap:var(--s3);align-items:baseline;margin:0;padding:12px var(--s4);background:var(--c-bg);border:1px solid var(--c-line);border-radius:var(--r)}
.steps li strong{flex:none;min-width:3em;color:var(--c-primary)}

/* Kennzahlen / Auf einen Blick */
.facts{background:var(--c-bg);border:1px solid var(--c-line);border-radius:var(--r-lg);padding:var(--s5)}
.facts h2{font-size:var(--fs-base);margin:0 0 var(--s3);display:flex;align-items:center;gap:var(--s2)}
.facts dl{margin:0;display:grid;gap:var(--s3)}
.facts dt{font-size:var(--fs-xs);color:var(--c-muted)}
.facts dd{margin:0;font-size:var(--fs-sm);font-weight:600;color:var(--c-ink)}

/* Karten-Link (Themenkarte etc.) */
.linkcard{display:flex;gap:var(--s3);align-items:flex-start;padding:var(--s4);border:1px solid var(--c-line);border-radius:var(--r-lg);background:var(--c-surface);color:var(--c-ink);text-decoration:none;transition:border-color .15s,box-shadow .15s}
.linkcard:hover{border-color:var(--c-primary);box-shadow:var(--shadow);color:var(--c-ink)}
.linkcard .ic{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--r);background:var(--c-primary-soft);color:var(--c-primary);flex:none}
.linkcard strong{display:block;font-size:var(--fs-base);line-height:1.3}
.linkcard span.t{display:block;font-size:var(--fs-sm);color:var(--c-muted);line-height:1.45;margin-top:2px}
.linkcard .go{display:inline-flex;align-items:center;gap:4px;margin-top:var(--s2);font-size:var(--fs-sm);font-weight:600;color:var(--c-primary)}

/* ---------- 8 · Bänder, Karte, FAQ, Kacheln ---------- */
.band{background:var(--c-bg);border-block:1px solid var(--c-line);padding-block:var(--s8)}
.band-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--s3) var(--s6);margin-bottom:var(--s5)}
.band-head h2{font-size:var(--fs-h2)}
.band-head p{max-width:46em;color:var(--c-body);margin-top:var(--s2);line-height:1.65}
.section-plain{padding-block:var(--s8)}
.band,.section-plain{scroll-margin-top:calc(var(--head-h) + 40px)}

.mapbox{height:clamp(380px,52vh,600px);border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--c-line);background:var(--c-surface)}
.map-controls{display:flex;flex-wrap:wrap;gap:var(--s3) var(--s5);align-items:center;justify-content:space-between;margin-top:var(--s3)}
.legend{display:flex;flex-wrap:wrap;gap:var(--s4);font-size:var(--fs-sm);color:var(--c-body);margin:0;padding:0;list-style:none}
.legend li{display:inline-flex;align-items:center;gap:6px}
.range{display:inline-flex;align-items:center;gap:var(--s2);font-size:var(--fs-sm);color:var(--c-body);white-space:nowrap}
.range input{accent-color:var(--c-primary);width:140px}

.faq-grid{display:grid;gap:var(--s3);align-items:start}
@media (min-width:900px){.faq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.faq{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r);transition:border-color .15s}
.faq[open]{border-color:var(--c-primary-line)}
.faq summary{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s3);padding:var(--s4) var(--s5);cursor:pointer;list-style:none;font-weight:650;color:var(--c-ink);line-height:1.45}
.faq summary::-webkit-details-marker{display:none}
.faq summary .i{color:var(--c-primary);transition:transform .2s;margin-top:2px}
.faq[open] summary .i{transform:rotate(180deg)}
.faq summary:hover{color:var(--c-primary)}
.faq-a{padding:0 var(--s5) var(--s5);line-height:1.7}

.tiles{display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.tile{display:flex;gap:var(--s3);align-items:center;padding:var(--s4);background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r);color:var(--c-ink);text-decoration:none;font-weight:600;transition:border-color .15s,background .15s}
.tile:hover{border-color:var(--c-primary);background:var(--c-primary-soft);color:var(--c-primary-strong)}
.tile .ic{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--r-sm);background:var(--c-primary-soft);color:var(--c-primary);flex:none}
.tile .ic .i{width:20px;height:20px}
.tile .arr{margin-left:auto;color:var(--c-muted)}

.sources{font-size:var(--fs-sm);color:var(--c-muted);line-height:1.6;border-top:1px solid var(--c-line);padding-top:var(--s5);margin-top:var(--s6)}
.sources strong{display:block;color:var(--c-ink);margin-bottom:var(--s1)}

/* Abschlussband (Prüfen) */
.endcta{background:var(--c-primary);color:var(--c-on-primary)}
.endcta .wrap{padding-block:var(--s7);display:flex;flex-wrap:wrap;gap:var(--s5);align-items:center;justify-content:space-between}
.endcta p{font-size:clamp(1.25rem,1rem + 1vw,1.75rem);font-weight:750;letter-spacing:-.015em;color:var(--c-on-primary);max-width:28em;line-height:1.25}
.endcta p span{display:block;font-size:var(--fs-base);font-weight:400;opacity:.9;margin-top:6px;letter-spacing:0}
.endcta .btn{background:var(--c-surface);color:var(--c-ink)}
.endcta .btn:hover{background:var(--c-bg);color:var(--c-ink)}

/* Handy: Prüf-Knopf unten */
.mcta{display:none}
@media (max-width:899px){
  .mcta{display:flex;position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:50;align-items:center;gap:var(--s2);
    background:var(--c-footer);border-radius:var(--r-lg);padding:8px 8px 8px 16px;box-shadow:var(--shadow-lg);transition:transform .2s}
  .mcta.hide{transform:translateY(160%)}
  .mcta span{flex:1;color:#fff;font-size:var(--fs-sm);font-weight:600;line-height:1.3}
  .mcta .btn{min-height:44px;padding:8px 16px;font-size:var(--fs-sm)}
  [data-theme="dark"] .mcta .btn{background:var(--c-primary);color:var(--c-on-primary)}
}

/* ---------- 9 · Anzeigen ---------- */
/* CLS-Regel (siehe style.css 2026-08-12): Slot reserviert IMMER 280 px – nicht einklappen. */
.ad-section{display:block;margin:var(--s6) auto;text-align:center;max-width:970px;min-height:280px}
.ad-section .adsbygoogle{display:block;min-height:280px}
.ad-label{display:block;font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted);margin:0 0 6px}
.prose .ad-section{margin:var(--s6) 0 var(--s7)}
.ad-side{display:none}
/* Seitenleiste: 250 px reserviert (Medium Rectangle) – größere Formate dürfen wachsen; leer bleibt weniger Lücke */
@media (min-width:900px){.ad-side{display:block;margin:0;min-height:250px}.ad-side .adsbygoogle{min-height:250px}}

/* ---------- 10 · Fußzeile ---------- */
.sf{background:var(--c-footer);color:var(--c-footer-ink);font-size:var(--fs-sm);margin-top:0}
.sf a{color:var(--c-footer-ink);text-decoration:none}
.sf a:hover{color:#fff;text-decoration:underline}
.sf-top{display:grid;gap:var(--s6);padding-block:var(--s8) var(--s6)}
@media (min-width:900px){.sf-top{grid-template-columns:minmax(220px,1.3fr) repeat(3,minmax(0,1fr))}}
.sf-brand .sh-logo{color:#fff}
.sf-brand .sh-logo span b{color:#7FD0DC}
.sf-brand p{margin:var(--s3) 0 0;color:var(--c-footer-muted);line-height:1.6;max-width:22em}
.sf-col h2{font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;margin:0 0 var(--s3)}
.sf-col ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.sf-col a{display:inline-flex;align-items:center;gap:4px;padding:5px 0}
.sf-col a .i{width:14px;height:14px}
.sf-bl{border-top:1px solid rgba(255,255,255,.1);padding-block:var(--s5)}
.sf-bl h2{font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;margin:0 0 var(--s3)}
.sf-bl ul{list-style:none;margin:0;padding:0;display:grid;gap:2px var(--s4);grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}
.sf-bl a{display:inline-block;padding:5px 0}
.sf-bottom{border-top:1px solid rgba(255,255,255,.1);padding-block:var(--s4) var(--s5);display:flex;flex-wrap:wrap;gap:var(--s3) var(--s5);justify-content:space-between;color:var(--c-footer-muted)}
.sf-bottom ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5)}
@media (max-width:899px){.sf{padding-bottom:84px}}

/* ---------- 12 · Seitentypen (Rollout 10/2026) ---------- */
.hero-grid.solo{grid-template-columns:minmax(0,1fr)}
.hero-grid.solo .hero-text{max-width:54rem}
.hero-slim .wrap{padding-block:var(--s5) var(--s6)}
.hero-slim h1{font-size:clamp(1.75rem,1.3rem + 1.6vw,2.5rem);line-height:1.15;letter-spacing:-.025em;font-weight:780;margin:0 0 var(--s3);text-wrap:balance}
.hero-slim .lead{margin-bottom:var(--s3)}
.hero-slim .byline{margin:0}
.single{padding-block:var(--s7) var(--s8);max-width:calc(var(--w-prose) + 2 * var(--gutter))}
.single.wide{max-width:var(--w-page)}
.single .prose>section{margin-bottom:var(--s6)}
.single.wide .prose{max-width:none}
.werkzeug{padding-block:var(--s5) var(--s8)}
.werkzeug-seite main{background:var(--c-surface)}
.intro{margin-bottom:var(--s6)}
.intro>*:last-child{margin-bottom:0}
/* Handlungskasten im Text (frühere blaue CTA-Kästen) */
.ctabox{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s3) var(--s5);padding:var(--s4) var(--s5);
  margin:var(--s5) 0;border:1px solid var(--c-primary-line);background:var(--c-primary-soft);border-radius:var(--r-lg);line-height:1.5}
.ctabox strong{display:block;color:var(--c-ink)}
.ctabox span{display:block;font-size:var(--fs-sm);color:var(--c-body)}
.ctabox .btn{flex:none}
/* „Auf einen Blick" als Liste (aus den früheren Badges) */
.facts ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--s2)}
.facts li{display:flex;gap:var(--s2);align-items:flex-start;font-size:var(--fs-sm);font-weight:600;color:var(--c-ink);line-height:1.4}
.facts li .i{color:var(--c-primary);width:16px;height:16px;margin-top:2px}
/* Ampel-Farbpunkte (ersetzen 🟢🟡🟠🔴) und Icons statt Emojis im Text */
.dot{display:inline-block;width:.72em;height:.72em;border-radius:50%;margin-right:.4em;vertical-align:.02em;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}
.dot-gruen{background:#2f9e5b}.dot-gelb{background:#e8b923}.dot-orange{background:#e8822a}.dot-rot{background:#c7392f}
.i-emo{color:var(--c-primary);width:1.1em;height:1.1em}
/* Bänder für Karte und Rechner */
.band-karte .wrap>section{margin:0}
.band-karte h2{font-size:var(--fs-h2);margin:0 0 var(--s2)}
.band-karte p{max-width:52em;line-height:1.65}
.band-rechner{background:var(--c-surface);border-top:0}
.band-rechner .wrap{max-width:1040px}
.band-rechner h2{font-size:var(--fs-h3);margin:var(--s5) 0 var(--s3)}
.band-rechner h2:first-of-type{margin-top:0}
/* Prüfbereich mit eigenem Werkzeug (z. B. Liegenschaftskarte als PDF) */
.check-werkzeug{padding:var(--s5)}
.check-werkzeug #lk-sheet{margin-top:var(--s4)}

/* Einleitung auf dem Handy eingeklappt: .kurz und den Knopf schreibt der Build ins HTML (lange Einleitungen), html.fc-js
   setzt das Kopf-Skript – beim ersten Bild steht alles fest, nichts springt; site.js schaltet nur auf/zu.
   Ohne JavaScript bleibt die Einleitung vollständig und der Knopf verborgen. */
.lead-mehr{display:none;align-items:center;gap:4px;margin:0 0 var(--s4);padding:6px 0;border:0;background:none;
  font:600 var(--fs-sm) var(--f-sans);color:var(--c-primary);cursor:pointer;text-decoration:underline;text-underline-offset:.2em}
@media (max-width:719px){
  .fc-js .lead.kurz:not(.offen){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;margin-bottom:var(--s2)}
  .fc-js .lead-mehr{display:inline-flex}
}
/* Kopf ohne Prüfbox: Faktenkasten rechts statt leerer Fläche (Rechner, Baulücken-Bundesländer) */
.hero-fakten{background:var(--c-surface);border:1px solid var(--c-line);border-top:4px solid var(--c-primary);border-radius:var(--r-lg);
  padding:var(--s5);box-shadow:var(--shadow)}
.hero-fakten h2{font-size:var(--fs-base);margin:0 0 var(--s4);display:flex;align-items:center;gap:var(--s2)}
.hero-fakten h2 .i{color:var(--c-primary)}
.kennzahlen{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--s3);margin:0 0 var(--s4)}
.kennzahl{background:var(--c-bg);border:1px solid var(--c-line);border-radius:var(--r);padding:var(--s3) var(--s4)}
.kennzahl b{display:block;font-size:1.5rem;line-height:1.15;font-weight:780;letter-spacing:-.02em;color:var(--c-ink)}
.kennzahl span{display:block;font-size:var(--fs-xs);color:var(--c-muted);margin-top:2px}
.hero-fakten .btn{width:100%}
/* Feedback-Knopf (basis.js) nicht auf den Handy-Prüfknopf legen */
@media (max-width:899px){body:has(.mcta:not(.hide)) #fc-fb-btn{bottom:84px}}

/* ---------- 13 · Altbestand: alte Variablen & Inhaltsbausteine ---------- */
/* Alte Inline-Stile der übernommenen Seiten nutzen diese Namen → auf die neue Palette umgelenkt
   (gilt automatisch auch im Dunkelmodus, weil die --c-* dort umschalten). */
:root{--primary:var(--c-primary);--primary-dark:var(--c-primary-strong);--primary-light:var(--c-primary-soft);
  --primary-glow:color-mix(in srgb,var(--c-primary) 12%,transparent);--text:var(--c-ink);--text-secondary:var(--c-body);
  --text-muted:var(--c-muted);--text-faint:var(--c-muted);--surface:var(--c-surface);--surface-2:var(--c-bg);--bg:var(--c-bg);
  --border:var(--c-line);--border-strong:var(--c-line-strong);--radius:var(--r);--radius-lg:var(--r-lg);--radius-pill:var(--r-pill);
  --accent:var(--c-ok);--accent-light:var(--c-ok-soft);--accent-dark:var(--c-ok);--warning:#b45309;--warning-light:var(--c-warn-soft);
  --danger:var(--c-danger);--muted:var(--c-muted);--shadow-sm:var(--shadow);--shadow-md:var(--shadow);--shadow-lg:var(--shadow-lg)}
.brw-note{font-size:var(--fs-sm);color:var(--c-muted);line-height:1.6;margin:var(--s4) 0;padding:10px 14px;background:var(--c-warn-soft);
  border-left:3px solid var(--c-warn-line);border-radius:0 var(--r-sm) var(--r-sm) 0}
.steps-list{list-style:none!important;padding:0!important;margin:var(--s4) 0 var(--s5)!important;display:grid;gap:var(--s3)}
.steps-list li{display:flex;gap:var(--s4);align-items:flex-start;background:var(--c-bg);border:1px solid var(--c-line);border-radius:var(--r);padding:var(--s4) var(--s5);margin:0}
.step-num{display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;border-radius:50%;background:var(--c-primary);color:var(--c-on-primary);font-size:var(--fs-sm);font-weight:700}
.state-grid{display:flex;flex-wrap:wrap;gap:var(--s2);margin:var(--s3) 0 var(--s4)}
.state-tag{display:inline-block;font-size:var(--fs-sm);font-weight:550;padding:5px 12px;border-radius:var(--r-pill);border:1px solid transparent;text-decoration:none}
.state-tag.available{background:var(--c-ok-soft);color:var(--c-ok);border-color:color-mix(in srgb,var(--c-ok) 30%,transparent)}
.state-tag.unavailable{background:var(--c-bg);color:var(--c-muted);border-color:var(--c-line);text-decoration:line-through}
.related-links{list-style:none!important;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--s3);margin:var(--s4) 0 var(--s6)!important;padding:0!important}
.related-links li{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r);padding:var(--s3) var(--s4);font-size:var(--fs-sm);line-height:1.5;margin:0;transition:border-color .15s,box-shadow .15s}
.related-links li:hover{border-color:var(--c-primary);box-shadow:var(--shadow)}
.related-links li .i-emo{display:block;width:22px;height:22px;margin-bottom:6px}
.related-links a{color:var(--c-ink);text-decoration:none}
.related-links a:hover{color:var(--c-primary)}
.related-links strong{display:block;margin-bottom:2px}
.page-meta{font-size:var(--fs-sm);color:var(--c-muted)}
address{font-style:normal;line-height:1.7;margin:0 0 var(--s4)}
/* Rechner (kaufnebenkosten.css nutzt diese früheren style.css-Bausteine) */
.search-wrap{position:relative;max-width:640px}
.autocomplete-list{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:30;list-style:none;margin:0;padding:0;background:var(--c-surface);
  border:1px solid var(--c-line);border-radius:var(--r);box-shadow:var(--shadow-lg);overflow:hidden}
.autocomplete-list:empty{display:none}
.autocomplete-list li{display:flex;flex-direction:column;gap:1px;padding:9px 14px;cursor:pointer;border-bottom:1px solid var(--c-line);font-size:var(--fs-sm);color:var(--c-body)}
.autocomplete-list li:last-child{border-bottom:0}
.autocomplete-list li:hover,.autocomplete-list li.active{background:var(--c-primary-soft);color:var(--c-primary-strong)}
.ac-main{color:var(--c-ink);font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ac-sub{font-size:var(--fs-xs);color:var(--c-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.card{background:var(--c-surface);border:1px solid var(--c-line);border-radius:var(--r-lg);padding:var(--s4) var(--s5);margin:var(--s4) 0}
.card-boris{border-top:3px solid var(--c-primary)}
.card-header{display:flex;align-items:center;gap:var(--s2);margin-bottom:var(--s2)}
.card-icon{width:24px;height:24px;border-radius:var(--r-sm);display:inline-flex;align-items:center;justify-content:center;background:var(--c-primary-soft);color:var(--c-primary);flex:none}
.card-title{font-weight:650;color:var(--c-ink)}
.card-error{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:var(--c-warn-soft);border-left:3px solid var(--c-warn-line);border-radius:0 var(--r-sm) var(--r-sm) 0;font-size:var(--fs-sm)}
.card-error strong{display:block;color:var(--c-ink)}
.card-error small{display:block;color:var(--c-muted)}
.card-error.ce-info{background:var(--c-info-soft);border-left-color:var(--c-primary)}
.card-error.ce-ok{background:var(--c-ok-soft);border-left-color:var(--c-ok)}
/* Werkzeug-Seiten (Eigentümeranfrage, Unternehmen): frühere Badges zurückhaltend, doppelter Zurück-Link aus */
.seo-badges{display:flex;flex-wrap:wrap;gap:var(--s2);margin:0 0 var(--s4)}
.seo-badge{display:inline-flex;align-items:center;font-size:var(--fs-xs);font-weight:600;color:var(--c-body);background:var(--c-bg);
  border:1px solid var(--c-line);border-radius:var(--r-pill);padding:4px 11px;line-height:1.4}
.werkzeug .ea-hero-back,.werkzeug .back-link{display:none}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ---------- 14 · Feinschliff nach dem Prüfbericht (10/2026) ---------- */
/* D1 frühere Vergleichskästen (Inline-Zweispalter): Spalten dürfen schrumpfen, am Handy untereinander */
main [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
@media (max-width:599px){main [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:minmax(0,1fr)!important}}
/* D2 lange Komposita („Unbedenklichkeitsbescheinigung") auch in Flex-Zeilen umbrechen – „anywhere" senkt die Mindestbreite */
.prose p,.prose li,.faq summary,.faq-a,.steps li,.steps-list li,.callout,.ctabox,.tile{overflow-wrap:anywhere}
.faq summary>*,.steps li>*,.steps-list li>*,.callout>*{min-width:0}
@media (max-width:719px){.faq,.steps,.steps-list,.callout,.ctabox{-webkit-hyphens:auto;hyphens:auto}}
/* D6 Kaufnebenkosten-Ergebnis am Handy: feste Spaltenbreiten (Posten | Betrag | Anteil), lange Wörter trennen */
@media (max-width:480px){.kn-table{table-layout:fixed;font-size:13px}.kn-table td{padding:8px 4px;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}
  .kn-table td:nth-child(2){width:38%}.kn-table td:nth-child(3){width:19%}}
/* D3 Knöpfe mit langem Text dürfen am Handy umbrechen */
@media (max-width:479px){.btn{white-space:normal;text-align:center}}
/* D7 Baulücken-Karte: der alte 100vw-Ausbruch ist im Band unnötig (und rechnete die Bildlaufleiste mit) */
.band-karte .bl-map-section{width:auto;margin-left:0;margin-right:0}
/* D8/D9 Übersichten (Ratgeber, Funktionen): Fließtext in Lesebreite, Karten in höchstens drei Spalten */
.single.wide .prose p{max-width:var(--w-prose)}
@media (min-width:640px){.single.wide .related-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.single.wide .related-links{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* U5/I30 Knöpfe zur Prüfbox: Pfeil zeigt zur Box (Handy darunter, Desktop daneben, im Abschlussband oben) */
.i-zur-box{transform:rotate(90deg)}
@media (min-width:1024px){.hero .i-zur-box{transform:none}}
.endcta .i-zur-box{transform:rotate(-90deg)}
.hero-karte{font-size:var(--fs-sm);font-weight:600}
.endcta-aktion{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3) var(--s5)}
.endcta-karte{color:var(--c-on-primary);font-size:var(--fs-sm);font-weight:600;text-underline-offset:.2em}
.endcta-karte:hover{color:var(--c-on-primary);opacity:.85}
/* U6 leere Anzeigenplätze (site.js klappt sie nur unterhalb des Bildes ein) */
.ad-section.ad-leer{display:none!important}
/* U1 Handy-Menü: „Alle … im Überblick" als erster Eintrag, Feedback-Link unten */
.sn-sub .sn-alle,.sn-fb{display:none}
@media (max-width:1139px){
  .sn-sub .sn-alle{display:flex;align-items:center;min-height:44px;padding:10px;margin:0 0 var(--s2);font-weight:650;color:var(--c-primary-strong);background:var(--c-primary-soft)}
  .sn-foot,.sn-nur-breit{display:none!important}
  .sn-fb{display:block;margin:var(--s4) 0 0}
  .sn-fb a{display:inline-flex;align-items:center;gap:var(--s2);min-height:44px;color:var(--c-primary);font-weight:600;text-decoration:none}
}
/* U10 404-Seite: Prüfbox im einspaltigen Text (Abstände wie im Seitenkopf) */
.prose .check h2{font-size:1.3125rem;margin:0 0 var(--s1)}
.prose .check .check-k{margin:0 0 var(--s2)}.prose .check .check-sub{margin:0 0 var(--s4)}.prose .check .check-note{margin:var(--s3) 0 0}
.nf-karte{margin:var(--s5) 0 0}
/* R4 Kontaktformular (kontakt.html) */
.kf{display:grid;gap:var(--s3);max-width:36rem;margin:var(--s4) 0}
.kf-reihe{display:grid;gap:6px}
.kf label{font-weight:600;color:var(--c-ink);font-size:var(--fs-sm)}
.kf label span{font-weight:400;color:var(--c-muted)}
.kf input,.kf select,.kf textarea{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--c-line-strong);border-radius:var(--r);font:var(--fs-base)/1.5 var(--f-sans);background:var(--c-surface);color:var(--c-ink)}
.kf textarea{resize:vertical}
.kf input:focus,.kf select:focus,.kf textarea:focus{outline:none;border-color:var(--c-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--c-primary) 22%,transparent)}
.kf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.prose .kf-hinweis{font-size:var(--fs-sm);color:var(--c-muted);margin:0}
.kf .btn{justify-self:start}
.prose .kf-status{margin:0;font-weight:600;color:var(--c-ok)}
.prose .kf-status.kf-fehler{color:var(--c-danger)}
.kf-status:empty{display:none}
/* U2 Handy: kein schwebender Feedback-Knopf (Prüfleiste hat Vorrang) – Feedback steht im Menü und im Fuß */
@media (max-width:899px){#fc-fb-btn{display:none!important}}

/* ---------- 11 · Hilfsklassen / Druck ---------- */
.proto-badge{position:fixed;left:12px;bottom:12px;z-index:70;background:#6d28d9;color:#fff;font:700 11px/1 var(--f-sans);letter-spacing:.08em;padding:6px 10px;border-radius:var(--r-pill);opacity:.9;pointer-events:none}
@media (max-width:899px){.proto-badge{bottom:auto;left:auto;right:12px;top:calc(var(--head-h) + 8px)}}
@media print{
  .sh,.sn,.tocbar,.toc,.aside,.ad-section,.mcta,.sf,.check,.endcta,.proto-badge{display:none!important}
  body{background:#fff;color:#000}
  .hero{background:none;border:0}
  .layout{display:block;padding:0}
  .faq{border:0}.faq summary .i{display:none}
  details.faq>*{display:block}
}

/* offenes Menü: schwebenden Feedback-Knopf (nav.js/basis.js) ausblenden */
body.nav-open #fc-fb-btn,body.nav-open #fc-fb-panel{display:none!important}
