/* Alpner Baukasten – eigene Sektions-Varianten zum Auswählen (31.10.2026). Eigener Code, keine fremden Dateien.
   Aufbau: 1 Schriften · 2 Tokens (Schrift- und Farbwelt umschaltbar) · 3 Grundbausteine · 4 Varianten je Element
   Präfixe: kz Kopfzeile · he Hero · vt Vertrauen · le Leistungen · ab Ablauf · pr Preise · bw Bewertungen ·
            eg Einsatzgebiet · uu Über uns · fq FAQ · cta Abschluss · fz Fusszeile */

/* ===================== 1. Schriften (lokal, OFL, liegen im Child-Theme) ===================== */
@font-face{font-family:"Alpner Text";font-weight:400;font-display:swap;src:url(../../fonts/alpner-text-400-latin.woff2) format("woff2")}
@font-face{font-family:"Alpner Text";font-weight:600;font-display:swap;src:url(../../fonts/alpner-text-600-latin.woff2) format("woff2")}
@font-face{font-family:"Alpner Text";font-weight:700;font-display:swap;src:url(../../fonts/alpner-text-700-latin.woff2) format("woff2")}
@font-face{font-family:"Alpner Titel";font-weight:600;font-display:swap;src:url(../../fonts/alpner-titel-600-latin.woff2) format("woff2")}
@font-face{font-family:"Alpner Titel";font-weight:700;font-display:swap;src:url(../../fonts/alpner-titel-700-latin.woff2) format("woff2")}
@font-face{font-family:"Alpner Rund";font-weight:400;font-display:swap;src:url(../../fonts/alpner-rund-400-latin.woff2) format("woff2")}
@font-face{font-family:"Alpner Rund";font-weight:500;font-display:swap;src:url(../../fonts/alpner-rund-500-latin.woff2) format("woff2")}
@font-face{font-family:"Alpner Rund";font-weight:600;font-display:swap;src:url(../../fonts/alpner-rund-600-latin.woff2) format("woff2")}
@font-face{font-family:"Alpner Rund";font-weight:700;font-display:swap;src:url(../../fonts/alpner-rund-700-latin.woff2) format("woff2")}
@font-face{font-family:"Alpner Grotesk";font-weight:500 700;font-display:swap;src:url(../../fonts/alpner-grotesk-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Alpner Grotesk";font-weight:500 700;font-display:swap;src:url(../../fonts/alpner-grotesk-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Alpner Sans";font-style:normal;font-weight:200 800;font-display:swap;src:url(../../fonts/alpner-sans-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Alpner Sans";font-style:normal;font-weight:200 800;font-display:swap;src:url(../../fonts/alpner-sans-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
/* Ersatzschrift, falls Webfonts blockiert sind (z. B. Safari im Blockiermodus) oder noch laden: Systemschrift, auf die Breite
   von Alpner Sans angeglichen (gemessen 03.11.2026: Alpner Sans 400 ist 3,7 % breiter als Systemschrift), damit nichts springt. */
@font-face{font-family:"Alpner Ersatz";src:local("Arial"),local("ArialMT"),local("Helvetica Neue"),local("Helvetica");size-adjust:104%}

/* ===================== 2. Tokens ===================== */
:root{
  --bk-f-titel:"Alpner Rund",system-ui,sans-serif; --bk-f-text:"Alpner Text",system-ui,sans-serif;
  --bk-titel-w:600; --bk-titel-ls:-.025em;

  --bk-bg:#ffffff; --bk-bg2:#f1f3f8; --bk-bg3:#e7eaf2; --bk-card:#ffffff;
  --bk-ink:#0d0d3f; --bk-text:#33364f; --bk-muted:#5f637b; --bk-line:#e1e3ec;
  --bk-red:#d33d44; --bk-red-2:#bb3239; --bk-red-text:#d33d44; --bk-marke:var(--bk-dark); --bk-icon:var(--bk-red-text); --bk-icon-tint:var(--bk-tint); --bk-icon-dunkel:var(--bk-red); --bk-stern:#fbbc04; --bk-stern-leer:#dadce0; --bk-blue:#234c9d; --bk-tint:#fbeceb;
  --bk-dark:#0d0d3f; --bk-dark-2:#1a1a57; --bk-on-dark:#ffffff; --bk-on-dark-2:#c9cbe4;

  --bk-r-s:8px; --bk-r-btn:10px; --bk-r-m:16px; --bk-r-l:24px;
  --bk-wrap:1240px; --bk-gut:clamp(20px,4vw,48px);
  --bk-sec:clamp(4rem,2.6rem + 5vw,7.5rem);
  --bk-ease:cubic-bezier(.2,.7,.2,1);
}
html[data-schrift="titel"]{--bk-f-titel:"Alpner Titel",system-ui,sans-serif;--bk-titel-w:700;--bk-titel-ls:-.04em}
html[data-schrift="skala"]{--bk-f-titel:"Alpner Grotesk","Alpner Rund",system-ui,sans-serif;--bk-f-text:"Alpner Text",system-ui,sans-serif;--bk-titel-w:600;--bk-titel-ls:-.04em}
html[data-schrift="standard"]{--bk-f-titel:"Alpner Sans","Alpner Ersatz",sans-serif;--bk-f-text:"Alpner Sans","Alpner Ersatz",sans-serif;--bk-titel-w:700;--bk-titel-ls:-.035em}

html[data-farbe="frisch"]{--bk-bg2:#e8f0fb;--bk-ink:#0b2457;--bk-text:#2e3b57;--bk-muted:#56627c;--bk-line:#d8e2f1;--bk-tint:#e3edfb;--bk-dark:#0f2f6b;--bk-dark-2:#1a4189;--bk-on-dark-2:#c9d8f2}
html[data-farbe="nacht"]{--bk-bg:#0d0d3f;--bk-bg2:#15154d;--bk-bg3:#20206a;--bk-card:#1b1b58;--bk-ink:#ffffff;--bk-text:#d7d9ee;--bk-muted:#a9acd0;--bk-line:rgb(255 255 255/.14);
  --bk-tint:rgb(200 55 61/.2);--bk-dark:#06062a;--bk-dark-2:#121247;--bk-blue:#8fb0f0;--bk-red-text:#ff8f95;--bk-stern-leer:rgb(255 255 255/.25);--bk-marke:#3b6fd1;color-scheme:dark}
/* Anthrazit (Alpner, 31.10.2026): Schwarz aus dem Logo statt Dunkelviolett, Rot bleibt Akzent, Logo-Blau nur für den Fokusrahmen */
html[data-farbe="anthrazit"]{--bk-bg2:#f3f4f6;--bk-bg3:#e8eaed;--bk-ink:#17191d;--bk-text:#3c4048;--bk-muted:#61666f;--bk-line:#e1e3e7;
  --bk-tint:#fcecea;--bk-dark:#1c1e22;--bk-dark-2:#2b2e34;--bk-on-dark-2:#c8cbd1;--bk-blue:#1b4a9d}
/* Markenblau (Alpner, 31.10.2026): Blau aus dem Logo (#1b4a9d), etwas heller, statt Schwarz für Flächen und Symbole
   (Infozeile, Laufband, Fusszeile, aktiver Reiter, Nummernkreise). Schrift nie blau: Titel und Text neutral dunkel.
   Rot aus dem Logo, etwas heller, als Akzent. Weiss auf #2457b0: 6,9:1 */
html[data-farbe="blau"]{--bk-bg2:#f2f5fb;--bk-bg3:#e6ecf7;--bk-ink:#17191d;--bk-text:#3c4048;--bk-muted:#61666f;--bk-line:#e0e6f0;
    --bk-tint:#fdeeee;--bk-dark:#2457b0;--bk-dark-2:#1d4a99;--bk-on-dark-2:#eef0f3;--bk-blue:#2a5fbd;--bk-marke:#2457b0}
/* Graphit (Alpner, 31.10.2026, gewählt): Schwarz-Rot, aber ein mattes, warmes Graphit statt Tiefschwarz (eleganter, dezenter).
   Schrift dunkel (nie blau). Logo-Blau nur ganz dezent für Symbole (Vorteile, Laufband, Kontaktwege, Preis-Symbole).
   Weiss auf Graphit 13,9:1 · Blau-Symbol auf Weiss 6,9:1 · Hellblau-Symbol auf Graphit 7:1 */
html[data-farbe="graphit"]{--bk-bg2:#f4f4f2;--bk-bg3:#e9e8e5;--bk-ink:#262524;--bk-text:#474542;--bk-muted:#6b6864;--bk-line:#e4e3e0;
  --bk-tint:#fcecea;--bk-dark:#2d2c2b;--bk-dark-2:#3a3937;--bk-on-dark-2:#d9d7d3;--bk-blue:#2457b0;--bk-marke:#2d2c2b;
  --bk-icon:#2457b0;--bk-icon-tint:#eaf0fa;--bk-icon-dunkel:#9ab8ee}
/* Dunkel: neutraler dunkler Modus zum Schalter in der Kopfzeile (ohne Violett) */
html[data-farbe="dunkel"]{--bk-bg:#121316;--bk-bg2:#1b1d21;--bk-bg3:#26292e;--bk-card:#202227;--bk-ink:#f4f5f6;--bk-text:#d1d4d9;--bk-muted:#a0a5ad;
  --bk-line:rgb(255 255 255/.12);--bk-tint:rgb(200 55 61/.16);--bk-dark:#0b0c0e;--bk-dark-2:#1b1d21;--bk-on-dark-2:#c8cbd1;--bk-blue:#8fb0f0;
  --bk-red-text:#ff8f95;--bk-stern-leer:rgb(255 255 255/.25);--bk-marke:#3b6fd1;
  --bk-icon:#8fb0f0;--bk-icon-tint:rgb(143 176 240/.14);--bk-icon-dunkel:#8fb0f0;color-scheme:dark}

/* ===================== 3. Grundbausteine ===================== */
.bk{background:var(--bk-bg);color:var(--bk-text);font:400 1.0625rem/1.65 var(--bk-f-text);-webkit-font-smoothing:antialiased}
.bk *,.bk *::before,.bk *::after{box-sizing:border-box}
.bk img{display:block;max-width:100%;height:auto}
:where(.bk) a{color:inherit} /* schwach gewichtet, damit Knopf- und Linkfarben der Bausteine greifen */
.bk :focus-visible{outline:3px solid var(--bk-blue);outline-offset:3px;border-radius:4px}
.bk-wrap{max-width:calc(var(--bk-wrap) + 2*var(--bk-gut));margin-inline:auto;padding-inline:var(--bk-gut)}
.bk-sec{padding-block:var(--bk-sec);background:var(--bk-bg)}
.bk-sec.bk-tint{background:var(--bk-bg2)}
.bk-ico{inline-size:1.25em;block-size:1.25em;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.bk-h1,.bk-h2,.bk-h3{margin:0;font-family:var(--bk-f-titel);font-weight:var(--bk-titel-w);letter-spacing:var(--bk-titel-ls);color:var(--bk-ink);text-wrap:balance}
.bk-h1{font-size:clamp(2.75rem,1.5rem + 4.8vw,6rem);line-height:.98}
.bk-h2{font-size:clamp(2rem,1.35rem + 2.4vw,3.5rem);line-height:1.04}
.bk-h3{font-size:1.375rem;line-height:1.2;letter-spacing:calc(var(--bk-titel-ls)/2)}
.bk-lead{font-size:clamp(1.0625rem,1rem + .35vw,1.25rem);line-height:1.6;color:var(--bk-text);max-width:38em}
.bk-klein{font-size:.9375rem;color:var(--bk-muted)}
.bk p{margin:0 0 1em}
.bk-kopf{display:grid;gap:1rem;margin-bottom:clamp(2rem,1.5rem + 2vw,3.5rem);max-width:46rem}
.bk-kopf .bk-lead{margin:0}
.bk-kopf-mitte{margin-inline:auto;text-align:center;justify-items:center}

.bk-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:52px;padding:0 1.5rem;border:2px solid transparent;border-radius:var(--bk-r-btn);
  font:600 1rem/1.1 var(--bk-f-text);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .2s var(--bk-ease),color .2s var(--bk-ease),border-color .2s var(--bk-ease)}
.bk-btn-rot{background:var(--bk-red);color:#fff}
.bk-btn-rot:hover{background:var(--bk-red-2)}
.bk-btn-linie{border-color:currentColor;color:var(--bk-ink);background:transparent}
.bk-btn-linie:hover{background:var(--bk-marke);color:#fff;border-color:var(--bk-marke)}
.bk-btn-hell{background:#fff;color:#0d0d3f}
.bk-btn-hell:hover{background:#e9ebf5}
.bk-btn-navy{background:var(--bk-dark);color:#fff}
.bk-btn-navy:hover{background:var(--bk-red)}
.bk-btns{display:flex;flex-wrap:wrap;gap:.75rem}
@media (max-width:519.98px){.bk-btns>.bk-btn{flex:1 1 100%}}

.bk-checks{display:grid;gap:.6rem;list-style:none;margin:0;padding:0}
.bk-checks li{position:relative;padding-left:1.9rem;line-height:1.45}
.bk-checks li::before{content:"";position:absolute;left:0;top:.05em;inline-size:1.3rem;block-size:1.3rem;border-radius:50%;background:var(--bk-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4 8-9'/%3E%3C/svg%3E") center/.8rem no-repeat}

/* Sterne wie bei Google: Sternform als Maske, gelb gefüllt bis zur Note, Rest grau. Text «★★★★★» bleibt im Code (unsichtbar).
   Je Stern 1em plus .1em Abstand; Stern k beginnt bei k·1.1em + .05em. 4,7 → 4·1.1 + .05 + .7 = 5.15em. */
.bk-sterne.bk-sterne{--bis:5.5em;display:inline-block;inline-size:5.5em;block-size:1em;overflow:hidden;vertical-align:-.12em;font-size:1.05em;line-height:1;letter-spacing:0;white-space:nowrap;color:transparent;
  background:linear-gradient(90deg,var(--bk-stern) var(--bis),var(--bk-stern-leer) var(--bis));-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26.4 24'%3E%3Cpath transform='translate(1.2 0)' d='M12 1.8l3.1 6.3 6.9 1-5 4.9 1.2 6.9L12 17.6l-6.2 3.3L7 14l-5-4.9 6.9-1z'/%3E%3C/svg%3E") left center/1.1em 1em repeat-x;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26.4 24'%3E%3Cpath transform='translate(1.2 0)' d='M12 1.8l3.1 6.3 6.9 1-5 4.9 1.2 6.9L12 17.6l-6.2 3.3L7 14l-5-4.9 6.9-1z'/%3E%3C/svg%3E") left center/1.1em 1em repeat-x}
.bk-sterne.bk-sterne-47{--bis:5.15em}
.bk-chips{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}
.bk-chips a{display:inline-flex;align-items:center;min-height:40px;padding:.35rem 1rem;border:1px solid var(--bk-line);border-radius:999px;background:var(--bk-card);color:var(--bk-ink);
  font-size:.9375rem;font-weight:500;text-decoration:none;transition:border-color .2s,background-color .2s}
.bk-chips a:hover{border-color:var(--bk-ink)}
/* Kernorte hell hervorgehoben statt dunkel gefüllt (weniger dunkle Fläche, 31.10.2026) */
.bk-chips a.kern{background:var(--bk-tint);border-color:transparent;color:var(--bk-ink);font-weight:600}
.bk-chips a.kern:hover{border-color:var(--bk-red)}
.bk-logo{display:inline-flex;align-items:center;flex:none}
.bk-logo img{block-size:30px;inline-size:auto}
html:is([data-farbe="nacht"],[data-farbe="dunkel"]) .bk-logo,.bk-auf-dunkel .bk-logo{padding:8px 14px;background:#fff;border-radius:999px}
html:is([data-farbe="nacht"],[data-farbe="dunkel"]) .bk-logo img,.bk-auf-dunkel .bk-logo img{block-size:22px}

/* Klebeband (Alpner-Motiv): rotes Band mit gerissenen Enden */
.bk-band{display:inline-block;padding:.55em 1.3em;background:var(--bk-red);color:#fff;font:700 .95rem/1.2 var(--bk-f-titel);letter-spacing:.01em;rotate:-3deg;
  clip-path:polygon(3% 0,97% 0,100% 18%,97.5% 36%,100% 55%,97% 74%,100% 100%,3% 100%,0 82%,2.5% 63%,0 45%,3% 26%,0 8%);box-shadow:none}

/* Route (Von → Nach): gestrichelte Linie mit Start und Ziel */
.bk-route{stroke:var(--bk-red);stroke-width:3;stroke-dasharray:2 10;stroke-linecap:round;fill:none}

/* ===================== 4. Varianten ===================== */

/* ---------- KOPFZEILE ---------- */
.kz{position:relative;z-index:5;background:var(--bk-bg)}
.kz-zeile{display:flex;align-items:center;gap:1.25rem;min-height:84px}
.kz-nav{display:flex;gap:.25rem;margin:0 auto;padding:0;list-style:none}
.kz-nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 .65rem;white-space:nowrap;border-radius:var(--bk-r-s);color:var(--bk-ink);font-size:.98rem;font-weight:500;text-decoration:none}
.kz-nav a:hover{background:var(--bk-bg2)}
.kz-tel{display:inline-flex;align-items:center;gap:.5rem;color:var(--bk-ink);font-weight:600;text-decoration:none;white-space:nowrap}
.kz-menu{display:none;inline-size:46px;block-size:46px;border:1.5px solid var(--bk-line);border-radius:12px;background:var(--bk-card);color:var(--bk-ink);place-items:center}
@media (max-width:1239.98px){.kz-nav,.kz-tel span,.kz .bk-btn{display:none}.kz-menu{display:grid}.kz-zeile{justify-content:space-between;gap:1rem;min-height:68px}.kz-tel{inline-size:46px;block-size:46px;justify-content:center;border:1.5px solid var(--bk-line);border-radius:12px;margin-left:auto}}
/* Hell-Dunkel-Schalter: Pille mit Sonne (hell) und Mond (dunkel); aria-checked="true" = dunkel */
.kz-modus{display:inline-flex;flex:none;align-items:center;gap:2px;padding:3px;border-radius:999px;background:var(--bk-bg2);color:var(--bk-muted);text-decoration:none;cursor:pointer}
.kz-modus svg{box-sizing:content-box;inline-size:18px;block-size:18px;padding:8px;border-radius:50%;transition:background-color .25s,color .25s,box-shadow .25s}
.kz-modus:hover{color:var(--bk-ink)}
.kz-modus[aria-checked="false"] svg:first-of-type,.kz-modus[aria-checked="true"] svg:last-of-type{background:var(--bk-card);color:var(--bk-ink);box-shadow:0 1px 2px rgb(13 13 63/.12),0 6px 14px -6px rgb(13 13 63/.35)}
@media (max-width:1239.98px){.kz .kz-zeile>.kz-modus{margin-left:auto}.kz .kz-zeile>.kz-modus~.bk-btn,.kz .kz-zeile>.kz-modus~.kz-tel{margin-left:0}}
/* Tablet: Offerte-Knopf bleibt in der Kopfzeile sichtbar (unter 760px übernimmt die Handy-Leiste) */
@media (min-width:760px) and (max-width:1239.98px){.kz .kz-zeile>.bk-btn{display:inline-flex;margin-left:auto}.kz .kz-zeile>.kz-modus~.bk-btn{margin-left:0}.kz .kz-zeile>.bk-btn~.kz-tel{margin-left:0}}

.kz-a{border-bottom:1px solid var(--bk-line)}

.kz-b{padding:14px var(--bk-gut) 0;background:var(--bk-bg2)}
.kz-b .kz-zeile{max-width:var(--bk-wrap);margin-inline:auto;padding:0 10px 0 22px;background:var(--bk-card);border-radius:999px;box-shadow:0 1px 2px rgb(13 13 63/.06),0 18px 40px -24px rgb(13 13 63/.35);min-height:72px}
.kz-b .kz-nav a{border-radius:999px}
.kz-b .bk-btn{border-radius:999px;min-height:48px}
@media (max-width:1239.98px){.kz-b .kz-zeile{border-radius:20px;padding:0 10px 0 18px}}

.kz-c-info{background:var(--bk-dark);color:var(--bk-on-dark-2);font-size:.875rem}
.kz-c-info .bk-wrap{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;min-height:40px}
.kz-c-info a{color:#fff;text-decoration:none}
.kz-c-info p{margin:0;display:flex;gap:1.5rem;align-items:center}
.kz-c .kz-zeile{min-height:92px}
.kz-c .kz-nav a{position:relative;border-radius:0}
.kz-c .kz-nav a:hover{background:none;color:var(--bk-red)}
.kz-c .kz-nav a.aktiv::after{content:"";position:absolute;left:.8rem;right:.8rem;bottom:6px;block-size:3px;background:var(--bk-red);border-radius:2px}
.kz-c .kz-tel{display:none}
.kz-c-kontakt{display:grid;line-height:1.15;text-align:right;text-decoration:none}
.kz-c-kontakt small{font-size:.8125rem;color:var(--bk-muted)}
.kz-c-kontakt b{font-family:var(--bk-f-titel);font-size:1.25rem;color:var(--bk-ink)}
@media (max-width:1239.98px){.kz-c-info{display:none}.kz-c-kontakt{display:none}.kz-c .kz-tel{display:inline-flex}}

/* ---------- HERO ---------- */
/* Hero A: Text links in der Inhaltsbreite, Foto füllt die rechte Seite bis an den Bildschirmrand (volle Hero-Höhe).
   Klebeband und Google-Karte überlappen die Bildkante. Handy: Text oben, Foto randlos darunter. */
.he-a{padding-block:0;overflow:clip}
.he-a .bk-wrap{max-width:none;padding-inline:0;display:grid;align-items:stretch;
  grid-template-columns:[voll-start] minmax(var(--bk-gut),1fr) [text-start] minmax(0,calc(var(--bk-wrap)*.53)) [bild-start] minmax(0,calc(var(--bk-wrap)*.47)) minmax(var(--bk-gut),1fr) [voll-end]}
.he-a .bk-wrap>div:first-child{grid-column:text-start/bild-start;align-self:center;padding:clamp(3rem,6vw,6rem) clamp(2rem,4.5vw,4.5rem) clamp(3rem,6vw,6rem) 0}
.he-vor{margin:0 0 1rem;font-weight:600;color:var(--bk-red-text)}
.he-a .bk-h1{margin-bottom:.35em}
.he-unter{margin:0 0 1.25rem;font-family:var(--bk-f-titel);font-size:clamp(1.25rem,1.05rem + .9vw,1.85rem);font-weight:500;line-height:1.25;letter-spacing:calc(var(--bk-titel-ls)/2);color:var(--bk-muted);max-width:22ch}
.he-a .bk-lead{margin-bottom:2rem}
.he-a-bild{grid-column:bild-start/voll-end;position:relative;margin:0;min-block-size:clamp(34rem,82vh,56rem)}
.he-a-bild img{position:absolute;inset:0;inline-size:100%;block-size:100%;object-fit:cover;border-radius:var(--bk-r-l) 0 0 var(--bk-r-l)}
.he-a-bild .bk-band{position:absolute;top:2.5rem;left:-1.25rem;z-index:1}
.he-a-note{position:absolute;left:-2rem;bottom:2.5rem;z-index:1;display:grid;grid-template-columns:auto auto;align-items:center;column-gap:.9rem;row-gap:.2rem;
  padding:1rem 1.35rem;background:var(--bk-card);border-radius:var(--bk-r-m);box-shadow:0 24px 48px -22px rgb(13 13 63/.45);color:var(--bk-ink)}
.he-a-note b{grid-row:span 2;font:var(--bk-titel-w) 2.6rem/1 var(--bk-f-titel);letter-spacing:var(--bk-titel-ls)}
.he-a-note .bk-sterne{align-self:end;font-size:1.15rem}
.he-a-note span:last-child{align-self:start;font-size:.875rem;color:var(--bk-muted)}
/* Vorteile unter den Knöpfen: Symbolkacheln mit kurzem Titel und Zusatz */
.he-vorteile{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:2.25rem 0 0;padding:1.75rem 0 0;border-top:1px solid var(--bk-line);list-style:none}
.he-vorteile li{display:grid;align-content:start;gap:.15rem;font-size:.9375rem;line-height:1.4;color:var(--bk-muted)}
.he-vorteile svg{box-sizing:content-box;inline-size:24px;block-size:24px;margin-bottom:.7rem;padding:12px;border-radius:15px;background:var(--bk-icon-tint);color:var(--bk-icon);stroke-width:1.9}
.he-vorteile b{color:var(--bk-ink);font-size:1rem;font-weight:600;line-height:1.3}
@media (max-width:899.98px){
  .he-a .bk-wrap{grid-template-columns:[voll-start] var(--bk-gut) [text-start] minmax(0,1fr) [bild-start] var(--bk-gut) [voll-end]}
  .he-a .bk-wrap>div:first-child{padding:2.75rem 0}
  .he-a-bild{grid-column:voll-start/voll-end;min-block-size:0;aspect-ratio:4/3}
  .he-a-bild img{border-radius:0}
  .he-a-bild .bk-band{top:1.25rem;left:auto;right:var(--bk-gut)}
  .he-a-note{left:var(--bk-gut);bottom:1.25rem}
}
/* Schmale Textspalte (Tablet quer) und Handy: Vorteile als Liste mit Symbol links */
@media (min-width:900px) and (max-width:1239.98px){.he-vorteile{grid-template-columns:minmax(0,1fr);gap:1rem}.he-vorteile li{grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:1rem}.he-vorteile svg{grid-row:span 2;margin:0}}
@media (max-width:599.98px){.he-vorteile{grid-template-columns:minmax(0,1fr);gap:1rem}.he-vorteile li{grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:1rem}.he-vorteile svg{grid-row:span 2;margin:0}.he-a-note b{font-size:2.1rem}}

.bk-sec.he-b{position:relative;padding:0;min-height:min(88vh,780px);display:grid;align-items:end;overflow:hidden;color:#fff}
.he-b>img{position:absolute;z-index:0;inset:0;inline-size:100%;block-size:100%;object-fit:cover;object-position:70% 35%}
.he-b::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgb(9 9 46/.95) 0%,rgb(9 9 46/.86) 36%,rgb(9 9 46/.35) 64%,rgb(9 9 46/.05) 100%),linear-gradient(0deg,rgb(9 9 46/.75),transparent 45%)}
.he-b .bk-wrap{position:relative;z-index:2;inline-size:100%;padding-top:8rem;padding-bottom:2rem}
.he-b .bk-h1,.he-b .he-unter{color:#fff}
.he-b .he-unter{color:rgb(255 255 255/.82);max-width:24ch}
.he-b .bk-h1{max-width:9ch;margin-bottom:.3em}
.he-b .bk-btns{margin-top:2rem}
.he-b .bk-btn-linie{color:#fff}
.he-b .bk-btn-linie:hover{background:#fff;color:#0d0d3f;border-color:#fff}
.he-b-leiste{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-top:clamp(2.5rem,6vh,4.5rem);border-radius:var(--bk-r-m);overflow:hidden;background:rgb(255 255 255/.18)}
.he-b-leiste div{padding:1rem 1.25rem;background:rgb(9 9 46/.55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.he-b-leiste b{display:block;font:var(--bk-titel-w) 1.5rem/1.1 var(--bk-f-titel)}
.he-b-leiste span{font-size:.875rem;color:rgb(255 255 255/.78)}
@media (max-width:899.98px){.he-b-leiste{grid-template-columns:repeat(2,minmax(0,1fr))}}

.he-c{text-align:center;overflow:hidden}
.he-c .bk-h1{font-size:clamp(3.25rem,1.6rem + 6.4vw,8rem);line-height:.92;max-width:11ch;margin:0 auto .3em}
.he-c .he-unter{margin-inline:auto}
.he-c .bk-lead{margin:0 auto 2rem}
.he-c .bk-btns{justify-content:center}
.he-c-reihe{position:relative;display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:clamp(.75rem,2vw,1.5rem);align-items:end;margin-top:clamp(3rem,6vw,5rem)}
.he-c-reihe img{inline-size:100%;object-fit:cover;border-radius:var(--bk-r-l)}
.he-c-reihe img:nth-child(1){aspect-ratio:4/5}
.he-c-reihe img:nth-child(2){aspect-ratio:4/4.4}
.he-c-reihe img:nth-child(3){aspect-ratio:4/5.6}
.he-c-route{position:absolute;inset:-3.5rem 6% auto;block-size:4rem;pointer-events:none}
.he-c-route circle{fill:var(--bk-red)}
@media (max-width:699.98px){.he-c-reihe{grid-template-columns:1fr 1fr}.he-c-reihe img:nth-child(3){display:none}.he-c-route{display:none}}

.bk-sec.he-d{background:var(--bk-bg2)}
.he-d .bk-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,26rem);gap:clamp(2rem,5vw,5rem);align-items:center}
.he-d .bk-h1{font-size:clamp(2.75rem,1.6rem + 4vw,5.25rem);margin-bottom:.35em}
.he-d .bk-checks{margin:2rem 0}
.he-d-form{display:grid;gap:1rem;padding:clamp(1.5rem,3vw,2.25rem);background:var(--bk-card);border-radius:var(--bk-r-l);box-shadow:0 30px 60px -30px rgb(13 13 63/.35)}
.he-d-form h2{margin:0;font:var(--bk-titel-w) 1.5rem/1.2 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2);color:var(--bk-ink)}
.he-d-form fieldset{margin:0;padding:0;border:0;display:grid;gap:.5rem}
.he-d-form legend,.he-d-form label{font-size:.875rem;font-weight:600;color:var(--bk-ink);padding:0;margin-bottom:.35rem}
.he-d-wahl{display:flex;flex-wrap:wrap;gap:.5rem}
.he-d-wahl button{min-height:42px;padding:0 1rem;border:1.5px solid var(--bk-line);border-radius:999px;background:var(--bk-card);color:var(--bk-ink);font:500 .9375rem var(--bk-f-text);cursor:pointer}
.he-d-wahl button[aria-pressed="true"]{border-color:var(--bk-ink);background:var(--bk-ink);color:var(--bk-bg)}
.he-d-felder{display:grid;grid-template-columns:1fr auto 1fr;gap:.5rem;align-items:end}
.he-d-feld{display:grid;min-width:0}
.he-d-feld input{inline-size:100%;min-width:0;min-height:50px;padding:0 1rem;border:1.5px solid var(--bk-line);border-radius:var(--bk-r-btn);background:var(--bk-bg);color:var(--bk-ink);font:inherit;font-size:1rem}
.he-d-pfeil{padding-bottom:14px;color:var(--bk-red)}
.he-d-form .bk-btn{inline-size:100%}
.he-d-form .bk-klein{margin:0;text-align:center}
@media (max-width:899.98px){.he-d .bk-wrap{grid-template-columns:minmax(0,1fr)}}
@media (max-width:459.98px){.he-d-felder{grid-template-columns:1fr}.he-d-pfeil{display:none}}

/* ---------- VERTRAUEN ---------- */
.bk-sec.vt-a{padding-block:clamp(2.5rem,4vw,4rem);border-bottom:1px solid var(--bk-line)}
.vt-a ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0;padding:0}
.vt-a li{display:grid;gap:.35rem;padding:0 clamp(1rem,2vw,2rem)}
.vt-a li+li{border-left:1px solid var(--bk-line)}
.vt-a b{font:var(--bk-titel-w) clamp(2.5rem,1.6rem + 3vw,4.5rem)/1 var(--bk-f-titel);letter-spacing:var(--bk-titel-ls);color:var(--bk-ink);font-variant-numeric:tabular-nums}
.vt-a b small{font-size:.4em;letter-spacing:0;color:var(--bk-red)}
.vt-a span{color:var(--bk-muted);font-size:.9375rem;line-height:1.4;max-width:16em}
@media (max-width:799.98px){.vt-a ul{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:2rem}.vt-a li:nth-child(3){border-left:0}}

.bk-sec.vt-b{padding-block:1.4rem;background:var(--bk-dark);color:var(--bk-on-dark);overflow:hidden}
.vt-b-band{display:flex;gap:3rem;inline-size:max-content;animation:vt-lauf 38s linear infinite}
.vt-b:hover .vt-b-band{animation-play-state:paused}
.vt-b-band span{display:inline-flex;align-items:center;gap:.8rem;font:var(--bk-titel-w) 1.125rem/1.2 var(--bk-f-titel);white-space:nowrap}
.vt-b-band svg{color:var(--bk-icon-dunkel);inline-size:1.4rem;block-size:1.4rem}
@keyframes vt-lauf{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.vt-b-band{animation:none;flex-wrap:wrap;inline-size:auto;justify-content:center;gap:1rem 2rem;padding-inline:var(--bk-gut)}.vt-b-band [aria-hidden="true"]{display:none}}

.bk-sec.vt-c{padding-block:clamp(2.5rem,4vw,4rem)}
.vt-c ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;list-style:none;margin:0;padding:0}
.vt-c li{display:grid;gap:.6rem;align-content:start;padding:1.5rem;background:var(--bk-bg2);border-radius:var(--bk-r-m)}
.vt-c-ico{display:grid;place-items:center;inline-size:3rem;block-size:3rem;border-radius:14px;background:var(--bk-card);color:var(--bk-red)}
.vt-c b{font:var(--bk-titel-w) 1.125rem/1.25 var(--bk-f-titel);color:var(--bk-ink)}
.vt-c span{font-size:.9375rem;line-height:1.45;color:var(--bk-muted)}
@media (max-width:899.98px){.vt-c ul{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- LEISTUNGEN ---------- */
.le-a-raster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(13rem,auto);gap:1rem;list-style:none;margin:0;padding:0}
.le-a-raster li{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:.4rem;padding:1.5rem;border-radius:var(--bk-r-l);background:var(--bk-bg2);color:var(--bk-ink);overflow:hidden;isolation:isolate}
.le-a-raster li.gross{grid-column:span 2;grid-row:span 2;color:#fff}
.le-a-raster li.breit{grid-column:span 2;color:#fff}
.le-a-raster li.rot{background:var(--bk-red);color:#fff}
.le-a-raster li.navy{background:var(--bk-dark);color:#fff}
.le-a-raster li>img{position:absolute;inset:0;z-index:-2;inline-size:100%;block-size:100%;object-fit:cover;transition:scale .6s var(--bk-ease)}
.le-a-raster li:has(>img)::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgb(9 9 46/.82),rgb(9 9 46/.05) 65%)}
.le-a-raster h3{margin:0;font:var(--bk-titel-w) 1.375rem/1.15 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2)}
.le-a-raster li.gross h3{font-size:clamp(1.75rem,1.2rem + 1.6vw,2.5rem)}
.le-a-raster p{margin:0;font-size:.9375rem;line-height:1.45;opacity:.85;max-width:30em}
.le-a-raster a{text-decoration:none}
.le-a-raster a::after{content:"";position:absolute;inset:0}
@media (hover:hover){.le-a-raster li:hover>img{scale:1.05}}
@media (max-width:899.98px){.le-a-raster{grid-template-columns:repeat(2,minmax(0,1fr))}.le-a-raster li.gross{grid-row:span 1;min-height:22rem}}
@media (max-width:519.98px){.le-a-raster{grid-template-columns:minmax(0,1fr)}.le-a-raster li.gross,.le-a-raster li.breit{grid-column:auto}.le-a-raster li{min-height:11rem}}

.le-b-raster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.25rem,2.5vw,2rem);list-style:none;margin:0;padding:0}
.le-b-raster li{position:relative;display:grid;gap:.6rem;align-content:start}
.le-b-raster img{inline-size:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--bk-r-m);margin-bottom:.6rem}
.le-b-raster h3 a{text-decoration:none}
.le-b-raster h3 a::after{content:"";position:absolute;inset:0}
.le-b-raster p{margin:0;color:var(--bk-muted);font-size:.98rem}
.le-b-mehr{font-weight:600;color:var(--bk-red);text-decoration:underline;text-underline-offset:.25em;text-decoration-thickness:1.5px}
@media (hover:hover){.le-b-raster li:hover h3{color:var(--bk-red)}}
.le-b-weitere{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--bk-line)}
.le-b-weitere b{color:var(--bk-ink)}
@media (max-width:899.98px){.le-b-raster{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:559.98px){.le-b-raster{grid-template-columns:minmax(0,1fr)}}

.le-c-liste{list-style:none;margin:0;padding:0;border-top:1px solid var(--bk-ink)}
.le-c-liste li{position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) 9rem;gap:2rem;align-items:center;padding:1.6rem 0;border-bottom:1px solid var(--bk-line)}
.le-c-liste h3{margin:0;font:var(--bk-titel-w) clamp(1.75rem,1.2rem + 2vw,3rem)/1.05 var(--bk-f-titel);letter-spacing:var(--bk-titel-ls);color:var(--bk-ink);transition:color .25s,translate .35s var(--bk-ease)}
.le-c-liste h3 a{text-decoration:none}
.le-c-liste h3 a::after{content:"";position:absolute;inset:0}
.le-c-liste p{margin:0;color:var(--bk-muted);font-size:.98rem}
.le-c-liste img{inline-size:9rem;aspect-ratio:4/3;object-fit:cover;border-radius:var(--bk-r-s);opacity:0;scale:.92;transition:opacity .3s var(--bk-ease),scale .35s var(--bk-ease)}
@media (hover:hover){.le-c-liste li:hover h3{color:var(--bk-red);translate:.5rem 0}.le-c-liste li:hover img{opacity:1;scale:1}}
@media (hover:none),(max-width:799.98px){.le-c-liste img{opacity:1;scale:1}}
@media (max-width:799.98px){.le-c-liste li{grid-template-columns:minmax(0,1fr) 6rem;gap:.5rem 1rem}.le-c-liste p{grid-column:1;grid-row:2}.le-c-liste img{grid-column:2;grid-row:1/span 2;inline-size:6rem}}

.le-d-box{display:grid;grid-template-columns:minmax(0,18rem) minmax(0,1fr);gap:clamp(1.5rem,4vw,4rem);align-items:start}
.le-d-reiter{display:grid;gap:.25rem}
.le-d-reiter button{display:flex;justify-content:space-between;align-items:center;min-height:54px;padding:0 1.1rem;border:0;border-radius:var(--bk-r-btn);background:transparent;color:var(--bk-text);
  font:500 1.0625rem var(--bk-f-text);text-align:left;cursor:pointer;transition:background-color .2s,color .2s}
.le-d-reiter button:hover{background:var(--bk-bg2)}
.le-d-reiter button[aria-selected="true"]{background:var(--bk-dark);color:#fff}
.le-d-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.5rem,3vw,2.5rem);align-items:center}
.le-d-panel[hidden]{display:none}
.le-d-panel img{inline-size:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--bk-r-l)}
.le-d-panel .bk-h3{font-size:clamp(1.75rem,1.3rem + 1.5vw,2.5rem);margin-bottom:.6em}
.le-d-panel .bk-checks{margin:1.5rem 0 2rem}
@media (max-width:999.98px){.le-d-box{grid-template-columns:minmax(0,1fr)}.le-d-reiter{display:flex;overflow-x:auto;gap:.5rem;padding-bottom:.25rem;scrollbar-width:none}
  .le-d-reiter button{flex:none;min-height:44px;border:1.5px solid var(--bk-line);border-radius:999px;white-space:nowrap}.le-d-reiter svg{display:none}}
@media (max-width:699.98px){.le-d-panel{grid-template-columns:minmax(0,1fr)}.le-d-panel img{aspect-ratio:4/3}}

/* ---------- ABLAUF ---------- */
.ab-a-pfad{position:relative}
.ab-a-schritte{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem;list-style:none;margin:0;padding:0;counter-reset:ab}
.ab-a-schritte::before{content:"";position:absolute;left:1.5rem;right:2.5rem;top:1.5rem;border-top:3px dotted var(--bk-red)}
.ab-a-schritte li{position:relative;counter-increment:ab;padding-top:4.5rem}
.ab-a-schritte li::before{content:counter(ab);position:absolute;left:0;top:0;display:grid;place-items:center;inline-size:3rem;block-size:3rem;border-radius:50%;background:var(--bk-bg);border:3px solid var(--bk-red);
  color:var(--bk-ink);font:700 1.125rem/1 var(--bk-f-titel)}
.ab-a-schritte li:last-child::before{background:var(--bk-red);color:#fff}
.ab-a-schritte h3{margin:0 0 .4rem;font:var(--bk-titel-w) 1.25rem/1.2 var(--bk-f-titel);color:var(--bk-ink)}
.ab-a-schritte p{margin:0;color:var(--bk-muted);font-size:.98rem}
.ab-a-wagen{position:absolute;right:0;top:.45rem;color:var(--bk-red)}
.ab-a-wagen svg{inline-size:2.2rem;block-size:2.2rem}
@media (max-width:899.98px){.ab-a-schritte{grid-template-columns:minmax(0,1fr);gap:0}.ab-a-schritte::before{left:1.4rem;right:auto;top:1.5rem;bottom:1.5rem;border-top:0;border-left:3px dotted var(--bk-red)}
  .ab-a-schritte li{padding:0 0 2rem 4.5rem}.ab-a-wagen{display:none}}

.ab-b-raster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;list-style:none;margin:0;padding:0;counter-reset:ab}
.ab-b-raster li{counter-increment:ab;position:relative;padding:clamp(1.5rem,3vw,2.5rem);padding-top:clamp(5rem,8vw,7rem);background:var(--bk-bg2);border-radius:var(--bk-r-l);overflow:hidden}
.ab-b-raster li::before{content:counter(ab);position:absolute;top:.5rem;right:1.5rem;font:800 clamp(6rem,4rem + 6vw,10rem)/1 var(--bk-f-titel);color:transparent;-webkit-text-stroke:2px var(--bk-red);opacity:.55}
.ab-b-raster h3{margin:0 0 .5rem;font:var(--bk-titel-w) clamp(1.375rem,1.1rem + .9vw,1.85rem)/1.15 var(--bk-f-titel);color:var(--bk-ink);letter-spacing:calc(var(--bk-titel-ls)/2)}
.ab-b-raster p{margin:0;color:var(--bk-muted);max-width:30em}
@media (max-width:699.98px){.ab-b-raster{grid-template-columns:minmax(0,1fr)}}

.bk-sec.ab-c{background:var(--bk-dark);color:var(--bk-on-dark-2)}
.ab-c .bk-h2{color:#fff}
.ab-c .bk-lead{color:var(--bk-on-dark-2)}
.ab-c .bk-wrap{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.ab-c .bk-kopf{position:sticky;top:2rem;margin:0}
.ab-c ol{list-style:none;margin:0;padding:0;counter-reset:ab}
.ab-c li{counter-increment:ab;display:grid;grid-template-columns:5rem minmax(0,1fr);gap:1rem;padding:1.75rem 0;border-top:1px solid rgb(255 255 255/.16)}
.ab-c li:last-child{border-bottom:1px solid rgb(255 255 255/.16)}
.ab-c li::before{content:"0" counter(ab);font:var(--bk-titel-w) 2.5rem/1 var(--bk-f-titel);color:var(--bk-red)}
.ab-c h3{margin:0 0 .35rem;font:var(--bk-titel-w) 1.375rem/1.2 var(--bk-f-titel);color:#fff}
.ab-c p{margin:0}
.ab-c .bk-btn-rot{margin-top:2rem}
@media (max-width:899.98px){.ab-c .bk-wrap{grid-template-columns:minmax(0,1fr)}.ab-c .bk-kopf{position:static}.ab-c li{grid-template-columns:3.5rem minmax(0,1fr)}.ab-c li::before{font-size:1.75rem}}

/* ---------- PREISE ---------- */
.pr-a-raster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;list-style:none;margin:0;padding:0}
.pr-a-raster li{display:flex;flex-direction:column;gap:.75rem;padding:1.75rem 1.5rem;background:var(--bk-card);border:1px solid var(--bk-line);border-radius:var(--bk-r-l)}
.pr-a-sym{display:flex;flex-wrap:wrap;gap:.15rem .1rem;align-items:flex-end;min-block-size:3.5rem;color:var(--bk-blue)}
.pr-a-sym .w{color:var(--bk-red);margin-left:.4rem}
.pr-a-sym svg{inline-size:1.6rem;block-size:1.6rem}
.pr-a-raster h3{margin:0;font:600 1.0625rem/1.3 var(--bk-f-text);color:var(--bk-ink)}
.pr-preis{display:flex;align-items:baseline;gap:.35rem;margin:0;font:var(--bk-titel-w) clamp(2.25rem,1.8rem + 1.4vw,3rem)/1 var(--bk-f-titel);letter-spacing:var(--bk-titel-ls);color:var(--bk-ink);font-variant-numeric:tabular-nums}
.pr-preis small{font:500 .9375rem var(--bk-f-text);letter-spacing:0;color:var(--bk-muted)}
.pr-a-raster .bk-btn{margin-top:auto;min-height:46px}
.pr-fuss{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem 2rem;margin-top:2rem;color:var(--bk-muted);font-size:.9375rem}
.pr-fuss b{color:var(--bk-ink)}
@media (max-width:999.98px){.pr-a-raster{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:519.98px){.pr-a-raster{grid-template-columns:minmax(0,1fr)}}

.pr-b-box{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);border-radius:var(--bk-r-l);overflow:hidden;background:var(--bk-card);border:1px solid var(--bk-line)}
.pr-b-wahl{padding:clamp(1.5rem,4vw,3rem)}
.pr-b-wahl h3{margin:0 0 1rem;font:600 1rem var(--bk-f-text);color:var(--bk-ink)}
.pr-b-segment{display:inline-flex;padding:.3rem;gap:.25rem;border-radius:999px;background:var(--bk-bg2)}
.pr-b-segment button{min-inline-size:3.25rem;min-height:46px;padding:0 1.1rem;border:0;border-radius:999px;background:transparent;color:var(--bk-ink);font:600 1rem var(--bk-f-text);cursor:pointer}
.pr-b-segment button[aria-pressed="true"]{background:var(--bk-dark);color:#fff}
.pr-b-team{display:flex;align-items:flex-end;gap:.2rem;min-block-size:4rem;margin:2rem 0 1rem;color:var(--bk-blue)}
.pr-b-team svg{inline-size:2.4rem;block-size:2.4rem}
.pr-b-team .w{color:var(--bk-red);margin-left:.6rem}
.pr-b-titel{margin:0 0 .5rem;font-weight:600;color:var(--bk-ink)}
.pr-b-wahl .pr-preis{font-size:clamp(3rem,2rem + 3vw,4.5rem)}
.pr-b-info{display:grid;align-content:center;gap:1.25rem;padding:clamp(1.5rem,4vw,3rem);background:var(--bk-dark);color:var(--bk-on-dark-2)}
.pr-b-info h3{margin:0;font:var(--bk-titel-w) 1.5rem/1.2 var(--bk-f-titel);color:#fff}
.pr-b-info .bk-checks li{color:#fff}
.pr-b-info .bk-checks li::before{background-color:rgb(255 255 255/.16)}
@media (max-width:899.98px){.pr-b-box{grid-template-columns:minmax(0,1fr)}}

.pr-c .bk-wrap>.pr-c-spalten{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,6vw,6rem)}
.pr-c h3{margin:0 0 1rem;font:var(--bk-titel-w) 1.5rem/1.2 var(--bk-f-titel);color:var(--bk-ink)}
.pr-c dl{margin:0}
.pr-c dl div{display:flex;align-items:baseline;gap:.75rem;padding:.9rem 0;border-bottom:1px solid var(--bk-line)}
.pr-c dt{color:var(--bk-ink);font-weight:500}
.pr-c dd{margin:0 0 0 auto;font:var(--bk-titel-w) 1.375rem/1 var(--bk-f-titel);color:var(--bk-ink);white-space:nowrap;font-variant-numeric:tabular-nums}
.pr-c-punkte{flex:1;border-bottom:2px dotted var(--bk-line);transform:translateY(-.3em)}
.pr-c .bk-checks{margin-top:3rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:1rem 2rem}
@media (max-width:799.98px){.pr-c .bk-wrap>.pr-c-spalten{grid-template-columns:minmax(0,1fr)}}

/* ---------- BEWERTUNGEN ---------- */
.bw-a .bk-wrap{display:grid;grid-template-columns:minmax(0,15rem) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.bw-note{display:grid;gap:.4rem}
.bw-note b{font:var(--bk-titel-w) clamp(4rem,3rem + 3vw,6rem)/.9 var(--bk-f-titel);letter-spacing:var(--bk-titel-ls);color:var(--bk-ink)}
.bw-note .bk-sterne{font-size:1.4rem}
.bw-a-zitat{margin:0}
.bw-a-zitat blockquote{margin:0;font:500 clamp(1.5rem,1.1rem + 1.6vw,2.4rem)/1.3 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2);color:var(--bk-ink);text-wrap:pretty}
.bw-a-zitat blockquote::before{content:"«";display:block;font-size:2.5em;line-height:.6;color:var(--bk-red);margin-bottom:.15em}
.bw-a-zitat figcaption{margin-top:1.5rem;color:var(--bk-muted)}
.bw-a-zitat figcaption b{color:var(--bk-ink)}
.bw-a-zitat[hidden]{display:none}
.bw-a-nav{display:flex;gap:.5rem;margin-top:2rem}
.bw-a-nav button{display:grid;place-items:center;inline-size:3rem;block-size:3rem;border:1.5px solid var(--bk-line);border-radius:50%;background:var(--bk-card);color:var(--bk-ink);cursor:pointer}
.bw-a-nav button:hover{border-color:var(--bk-ink)}
.bw-a-nav span{align-self:center;margin-left:.75rem;color:var(--bk-muted);font-size:.9375rem}
@media (max-width:799.98px){.bw-a .bk-wrap{grid-template-columns:minmax(0,1fr)}}

.bw-b-kopf{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:2.5rem}
.bw-b-kopf .bk-kopf{margin:0}
.bw-b-google{display:flex;align-items:center;gap:1rem;padding:.9rem 1.25rem;border:1px solid var(--bk-line);border-radius:var(--bk-r-m);background:var(--bk-card)}
.bw-b-google b{font:var(--bk-titel-w) 2rem/1 var(--bk-f-titel);color:var(--bk-ink)}
.bw-b-google span{display:grid;font-size:.875rem;color:var(--bk-muted);line-height:1.35}
.bw-b-raster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;list-style:none;margin:0;padding:0}
.bw-b-raster li{display:flex;flex-direction:column;gap:1rem;padding:1.75rem;background:var(--bk-bg2);border-radius:var(--bk-r-l)}
.bw-b-raster blockquote{margin:0;color:var(--bk-ink);font-size:1.0625rem;line-height:1.6}
.bw-b-raster footer{margin-top:auto;font-size:.9375rem;color:var(--bk-muted)}
.bw-b-raster footer b{display:block;color:var(--bk-ink)}
@media (max-width:899.98px){.bw-b-raster{grid-template-columns:minmax(0,1fr)}}

.bk-sec.bw-c{background:var(--bk-dark);color:var(--bk-on-dark-2)}
.bw-c .bk-wrap{display:grid;grid-template-columns:minmax(0,17rem) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.bw-c .bw-note b,.bw-c .bk-h2{color:#fff}
.bw-c .bw-note span{color:var(--bk-on-dark-2)}
.bw-c-leiste{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.5rem;scrollbar-width:thin;scrollbar-color:rgb(255 255 255/.3) transparent}
.bw-c-leiste figure{flex:0 0 min(22rem,85%);scroll-snap-align:start;margin:0;padding:1.75rem;border-radius:var(--bk-r-l);background:var(--bk-dark-2);color:#fff}
.bw-c-leiste blockquote{margin:0 0 1.25rem;line-height:1.6}
.bw-c-leiste figcaption{font-size:.9375rem;color:var(--bk-on-dark-2)}
@media (max-width:799.98px){.bw-c .bk-wrap{grid-template-columns:minmax(0,1fr)}}

/* ---------- EINSATZGEBIET ---------- */
.eg-a .bk-wrap>.eg-a-box{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(2rem,4vw,4rem);align-items:start}
.eg-a-karte{padding:1rem;border-radius:var(--bk-r-l);background:var(--bk-bg2)}
.eg-a-karte img{inline-size:100%}
.eg-gruppen{display:grid;gap:1.75rem}
.eg-gruppen h3{margin:0 0 .75rem;font:var(--bk-titel-w) 1.125rem/1.25 var(--bk-f-titel);color:var(--bk-ink)}
@media (max-width:899.98px){.eg-a .bk-wrap>.eg-a-box{grid-template-columns:minmax(0,1fr)}}

.eg-b-suche{display:flex;align-items:center;gap:.75rem;max-width:34rem;min-height:58px;margin:0 0 2.5rem;padding:0 1.25rem;border:1.5px solid var(--bk-line);border-radius:999px;background:var(--bk-card);color:var(--bk-muted)}
.eg-b-spalten{columns:4 12rem;column-gap:2rem;list-style:none;margin:0;padding:0}
.eg-b-spalten li{break-inside:avoid;padding:.4rem 0;border-bottom:1px solid var(--bk-line)}
.eg-b-spalten a{color:var(--bk-ink);text-decoration:none;font-weight:500}
.eg-b-spalten a:hover{color:var(--bk-red)}
.eg-b-spalten .buchst{display:block;margin-top:1rem;padding:0;border:0;font:var(--bk-titel-w) 1.75rem/1 var(--bk-f-titel);color:var(--bk-red)}
.eg-b-spalten li:first-child .buchst{margin-top:0}

.eg-c-raster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.eg-c-raster article{display:grid;align-content:start;gap:1rem;padding:1.75rem;border-radius:var(--bk-r-l);background:var(--bk-bg2)}
.eg-c-raster article.dunkel{background:var(--bk-dark);color:#fff}
.eg-c-raster h3{margin:0;font:var(--bk-titel-w) clamp(1.5rem,1.2rem + 1vw,2rem)/1.1 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/1.5);color:inherit}
.eg-c-raster article:not(.dunkel) h3{color:var(--bk-ink)}
.eg-c-raster .dunkel .bk-chips a{background:transparent;border-color:rgb(255 255 255/.35);color:#fff}
.eg-c-raster .dunkel .bk-chips a.kern{background:#fff;color:#0d0d3f;border-color:#fff}
@media (max-width:899.98px){.eg-c-raster{grid-template-columns:minmax(0,1fr)}}

/* ---------- ÜBER UNS ---------- */
.uu-a .bk-wrap{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,6vw,6rem);align-items:center}
.uu-a-bild img{inline-size:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--bk-r-l)}
.uu-fakten{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem;margin:2rem 0}
.uu-fakten div{padding:.9rem 0;border-top:1px solid var(--bk-line)}
.uu-fakten dt{font-size:.875rem;color:var(--bk-muted)}
.uu-fakten dd{margin:0;font-weight:600;color:var(--bk-ink)}
@media (max-width:899.98px){.uu-a .bk-wrap{grid-template-columns:minmax(0,1fr)}.uu-a-bild img{aspect-ratio:4/3}}
@media (max-width:519.98px){.uu-fakten{grid-template-columns:minmax(0,1fr)}}

/* Teamfoto ganz zeigen (Leute stehen über die ganze Breite); die Karte überlappt nur den unteren Bildrand rechts */
.uu-b-figur{position:relative;display:grid;margin:0}
.uu-b-figur img{inline-size:100%;block-size:auto;aspect-ratio:3/2;object-fit:cover;object-position:50% 100%;border-radius:var(--bk-r-l)}
.uu-b-karte{position:relative;justify-self:end;max-width:34rem;margin:-3.5rem clamp(1rem,4vw,3rem) 0 0;padding:clamp(1.5rem,3vw,2.5rem);background:var(--bk-card);border-radius:var(--bk-r-l);box-shadow:0 30px 60px -30px rgb(13 13 63/.45)}
.uu-b-karte .bk-h2{font-size:clamp(1.75rem,1.3rem + 1.5vw,2.5rem);margin-bottom:.5em}
@media (max-width:799.98px){.uu-b-figur img{border-radius:var(--bk-r-l) var(--bk-r-l) 0 0;aspect-ratio:4/3}.uu-b-karte{justify-self:stretch;max-width:none;margin:0;border-radius:0 0 var(--bk-r-l) var(--bk-r-l);box-shadow:none;background:var(--bk-bg2)}}

.uu-c .bk-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);align-items:center}
.uu-c-collage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto;gap:1rem}
.uu-c-collage img{inline-size:100%;block-size:100%;object-fit:cover;border-radius:var(--bk-r-m)}
.uu-c-collage img:nth-child(1){grid-row:span 2;aspect-ratio:3/5}
.uu-c-collage img:nth-child(2),.uu-c-collage img:nth-child(3){aspect-ratio:1/1}
.uu-c-zahlen{display:flex;flex-wrap:wrap;gap:2rem 3rem;margin:2rem 0}
.uu-c-zahlen div{display:grid}
.uu-c-zahlen b{font:var(--bk-titel-w) 3rem/1 var(--bk-f-titel);letter-spacing:var(--bk-titel-ls);color:var(--bk-red)}
.uu-c-zahlen span{font-size:.9375rem;color:var(--bk-muted)}
@media (max-width:899.98px){.uu-c .bk-wrap{grid-template-columns:minmax(0,1fr)}}

/* ---------- FAQ ---------- */
.fq details{border-bottom:1px solid var(--bk-line)}
.fq summary{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;min-height:4.5rem;padding:1rem 0;cursor:pointer;list-style:none;color:var(--bk-ink);font:var(--bk-titel-w) 1.1875rem/1.35 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/3)}
.fq summary::-webkit-details-marker{display:none}
.fq-plus{position:relative;flex:none;inline-size:2.5rem;block-size:2.5rem;border-radius:50%;background:var(--bk-bg2);transition:background-color .25s,rotate .3s var(--bk-ease)}
.fq-plus::before,.fq-plus::after{content:"";position:absolute;left:50%;top:50%;inline-size:.9rem;block-size:2px;margin:-1px 0 0 -.45rem;background:var(--bk-ink);border-radius:2px}
.fq-plus::after{rotate:90deg}
.fq details[open] .fq-plus{background:var(--bk-red);rotate:45deg}
.fq details[open] .fq-plus::before,.fq details[open] .fq-plus::after{background:#fff}
.fq .fq-a{padding:0 3.5rem 1.5rem 0;color:var(--bk-text);max-width:42em}
.fq .fq-a p{margin:0}

.fq-a-box{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.fq-a-box .bk-kopf{position:sticky;top:2rem}
.fq-a-liste{border-top:1px solid var(--bk-line)}
@media (max-width:899.98px){.fq-a-box{grid-template-columns:minmax(0,1fr)}.fq-a-box .bk-kopf{position:static}}

.fq-b-liste{max-width:52rem;margin:0 auto;display:grid;gap:.75rem}
.fq-b details{border:0;border-radius:var(--bk-r-m);background:var(--bk-bg2);padding:0 1.5rem}
.fq-b details[open]{background:var(--bk-card);box-shadow:0 0 0 1.5px var(--bk-ink)}
.fq-b .fq-plus{background:var(--bk-card)}

.fq-c-raster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem clamp(2rem,6vw,5rem)}
.fq-c-raster article{padding-top:1.25rem;border-top:3px solid var(--bk-ink)}
.fq-c-raster h3{margin:0 0 .6rem;font:var(--bk-titel-w) 1.25rem/1.3 var(--bk-f-titel);color:var(--bk-ink)}
.fq-c-raster p{margin:0;color:var(--bk-text)}
@media (max-width:799.98px){.fq-c-raster{grid-template-columns:minmax(0,1fr)}}

/* FAQ D · Eingefasst: jede Frage als eigene Fläche mit Plus im Kreis (Hover: dunklere Fläche, roter Kreis);
   die offene Frage hebt sich als Karte mit Rand und Schatten ab, Minus im Kreis.
   Immer nur eine offen (details mit gleichem name, dazu Rückfall in baukasten.js). Aufklappen weich, wo der Browser es kann. */
.fq-d-liste{max-width:56rem;margin:0 auto;display:grid;gap:.6rem}
.fq-d details{border:0;border-radius:var(--bk-r-l);background:var(--bk-bg2);transition:background-color .25s var(--bk-ease),box-shadow .25s var(--bk-ease)}
.fq-d details:not([open]):hover{background:var(--bk-bg3)}
.fq-d details[open]{background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line),0 22px 46px -26px rgb(23 25 29/.42)}
.fq-d summary{min-height:4.75rem;padding:1.15rem clamp(1.25rem,3vw,2.25rem)}
.fq-d .fq-a{max-width:none;padding:0 clamp(1.25rem,3vw,2.25rem) clamp(1.5rem,3vw,2rem)}
.fq-d .fq-a p{max-width:46em;font-size:1.0625rem;line-height:1.7}
.fq-d .fq-a strong{color:var(--bk-red-text);font-weight:500}
.fq-d .fq-a a{color:var(--bk-red-text);text-decoration-thickness:1px;text-underline-offset:.2em}
.fq-d .fq-plus{inline-size:2.75rem;block-size:2.75rem;background:var(--bk-card);rotate:none;transition:background-color .25s var(--bk-ease)}
.fq-d details:not([open]):hover .fq-plus{background:var(--bk-red)}
.fq-d details:not([open]):hover .fq-plus::before,.fq-d details:not([open]):hover .fq-plus::after{background:#fff}
.fq-d details[open] .fq-plus{background:var(--bk-bg2);rotate:none}
.fq-d details[open] .fq-plus::before,.fq-d details[open] .fq-plus::after{background:var(--bk-ink)}
.fq-d .fq-plus::after{transition:scale .3s var(--bk-ease)}
.fq-d details[open] .fq-plus::after{scale:0 1}
@supports (interpolate-size:allow-keywords){
  .fq-d{interpolate-size:allow-keywords}
  .fq-d details::details-content{block-size:0;overflow:clip;transition:block-size .35s var(--bk-ease),content-visibility .35s allow-discrete}
  .fq-d details[open]::details-content{block-size:auto}
}
@media (prefers-reduced-motion:reduce){.fq-d details,.fq-d details::details-content,.fq-d .fq-plus::after{transition:none}}

/* ---------- ABSCHLUSS ---------- */
.bk-sec.cta-a{background:var(--bk-red);color:#fff}
.cta-a .bk-wrap{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:2.5rem;align-items:end}
.cta-a .bk-h2{color:#fff;font-size:clamp(2.5rem,1.5rem + 4vw,5.5rem);line-height:.98;max-width:12ch}
.cta-a p{color:rgb(255 255 255/.88);font-size:1.125rem;max-width:30em}
.cta-a-tel{display:grid;gap:.25rem;justify-items:start}
.cta-a-tel a{font:var(--bk-titel-w) clamp(1.75rem,1.3rem + 1.6vw,2.6rem)/1 var(--bk-f-titel);color:#fff;text-decoration:none;white-space:nowrap}
.cta-a-tel span{color:rgb(255 255 255/.8);font-size:.9375rem}
.cta-a .bk-btn-navy:hover{background:#fff;color:var(--bk-red)}
@media (max-width:899.98px){.cta-a .bk-wrap{grid-template-columns:minmax(0,1fr);align-items:start}}

.bk-sec.cta-b{position:relative;overflow:hidden;color:#fff;text-align:center}
.cta-b>img{position:absolute;z-index:0;inset:0;inline-size:100%;block-size:100%;object-fit:cover}
.cta-b::before{content:"";position:absolute;z-index:1;inset:0;background:rgb(9 9 46/.74)}
.cta-b .bk-wrap{position:relative;z-index:2;display:grid;justify-items:center;gap:1.25rem}
.cta-b .bk-h2{color:#fff;max-width:16ch}
.cta-b p{color:rgb(255 255 255/.85);max-width:34em;margin:0}
.cta-b .bk-btns{justify-content:center;margin-top:.5rem}
.cta-b .bk-btn-linie{color:#fff}
.cta-b .bk-btn-linie:hover{background:#fff;color:#0d0d3f;border-color:#fff}

.cta-c-raster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.cta-c-raster a{display:grid;gap:.5rem;align-content:start;min-block-size:12rem;padding:1.75rem;border-radius:var(--bk-r-l);background:var(--bk-bg2);color:var(--bk-ink);text-decoration:none;transition:background-color .25s,color .25s}
.cta-c-raster a:hover{background:var(--bk-dark);color:#fff}
.cta-c-raster a.rot{background:var(--bk-red);color:#fff}
.cta-c-raster a.rot:hover{background:var(--bk-red-2)}
.cta-c-raster svg{inline-size:2rem;block-size:2rem;margin-bottom:auto}
.cta-c-raster b{margin-top:2.5rem;font:var(--bk-titel-w) 1.375rem/1.15 var(--bk-f-titel)}
.cta-c-raster span{font-size:.9375rem;opacity:.8}
@media (max-width:899.98px){.cta-c-raster{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Schmales Handy: Kontaktwege als kompakte Zeilen (Icon links), statt hoher leerer Karten */
@media (max-width:459.98px){.cta-c-raster{grid-template-columns:minmax(0,1fr);gap:.75rem}.cta-c-raster a{grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:1rem;row-gap:.15rem;min-block-size:0;padding:1.15rem 1.25rem}.cta-c-raster svg{grid-row:span 2;margin:0}.cta-c-raster b{margin-top:0;font-size:1.2rem}}

/* ---------- FUSSZEILE ---------- */
.fz{font-size:.9375rem}
.fz ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.fz a{text-decoration:none}
.fz a:hover{text-decoration:underline;text-underline-offset:.2em}
.fz h3{margin:0 0 1rem;font:600 .9375rem/1.3 var(--bk-f-text)}
.fz-recht{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 2rem;margin-top:3rem;padding-top:1.5rem;font-size:.875rem}
.fz-recht ul{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}

.bk-sec.fz-a{background:var(--bk-dark);color:var(--bk-on-dark-2);padding-block:clamp(3.5rem,6vw,5rem) 2rem}
.fz-a h3,.fz-a a{color:#fff}
.fz-a-spalten{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));gap:2.5rem}
.fz-a-spalten p{margin:1.25rem 0 0;max-width:22rem}
.fz-a .fz-recht{border-top:1px solid rgb(255 255 255/.15)}
@media (max-width:899.98px){.fz-a-spalten{grid-template-columns:repeat(2,minmax(0,1fr))}.fz-a-spalten>div:first-child{grid-column:1/-1}}

.bk-sec.fz-b{background:var(--bk-bg2);padding-block:clamp(3.5rem,6vw,5rem) 2rem}
.fz-b-gross{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1.5rem;padding-bottom:2.5rem;margin-bottom:2.5rem;border-bottom:1px solid var(--bk-line)}
.fz-b-gross a{font:var(--bk-titel-w) clamp(2.5rem,1.5rem + 4vw,5rem)/1 var(--bk-f-titel);letter-spacing:var(--bk-titel-ls);color:var(--bk-ink);text-decoration:none}
.fz-b-gross a:hover{color:var(--bk-red);text-decoration:none}
.fz-b-gross p{margin:0;color:var(--bk-muted)}
.fz-b-spalten{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem}
.fz-b h3{color:var(--bk-ink)}
.fz-b a{color:var(--bk-text)}
.fz-b .fz-recht{border-top:1px solid var(--bk-line);color:var(--bk-muted)}
@media (max-width:799.98px){.fz-b-spalten{grid-template-columns:repeat(2,minmax(0,1fr))}}

.bk-sec.fz-c{padding-block:clamp(3rem,5vw,4.5rem) 0;overflow:hidden;border-top:1px solid var(--bk-line)}
.fz-c-zeile{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1.5rem 3rem}
.fz-c-zeile ul{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}
.fz-c a{color:var(--bk-ink)}
.fz-c-kontakt{display:grid;gap:.25rem}
.fz-c-kontakt a{font-weight:600}
.fz-c-wort{margin:clamp(2rem,5vw,4rem) 0 0;font:800 clamp(3.5rem,1rem + 13.5vw,13rem)/.8 var(--bk-f-titel);letter-spacing:-.05em;color:var(--bk-ink);white-space:nowrap;translate:-.04em .12em}
.fz-c-wort span{color:var(--bk-red)}
.fz-c .fz-recht{margin-top:2rem;border-top:1px solid var(--bk-line);color:var(--bk-muted);padding-bottom:1.5rem}

@media (prefers-reduced-motion:reduce){.bk *{transition:none!important}}
.pr-a-raster .pr-preis{display:block;white-space:nowrap;font-size:clamp(1.9rem,1.5rem + 1vw,2.4rem)}
.pr-a-raster .pr-preis small{display:block;margin-top:.4rem}
.pr-preis{flex-wrap:wrap;white-space:nowrap}
.pr-b-wahl .pr-preis{font-size:clamp(2.5rem,1.8rem + 3vw,4.5rem)}
html:is([data-farbe="nacht"],[data-farbe="dunkel"]) .bk-btn-navy{background:var(--bk-red)}
html:is([data-farbe="nacht"],[data-farbe="dunkel"]) .bk-btn-navy:hover{background:var(--bk-red-2)}

/* ===================== 5. Ergänzungen für die komplette Startseite (31.10.2026) ===================== */

/* Offerte-Leiste: kurzer Aufruf unter dem Hero */
.of-a{padding-block:clamp(2.5rem,4vw,3.5rem)}
.of-a-box{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem 2.5rem;padding:clamp(1.5rem,3vw,2.25rem) clamp(1.5rem,4vw,3rem);border-radius:var(--bk-r-l);background:var(--bk-bg2)}
.of-a h2{margin:0 0 .3rem;font:var(--bk-titel-w) clamp(1.4rem,1.1rem + 1vw,1.85rem)/1.15 var(--bk-f-titel);letter-spacing:var(--bk-titel-ls);color:var(--bk-ink)}
.of-a-box p{margin:0;color:var(--bk-muted)}
.of-a-aktion{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem}
.of-a-aktion a:not(.bk-btn){color:var(--bk-ink);font-weight:600}
@media (max-width:599.98px){.of-a-aktion,.of-a-aktion .bk-btn{inline-size:100%}}

/* Kombi-Angebot: Foto mit Klebeband, daneben Text, Punkte und Knopf */
.ko-a .bk-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);align-items:center}
.ko-a-bild{position:relative;margin:0}
.ko-a-bild img{inline-size:100%;aspect-ratio:5/4;object-fit:cover;border-radius:var(--bk-r-l)}
.ko-a-bild .bk-band{position:absolute;right:-1rem;bottom:2.25rem}
.ko-a .bk-h2{margin-bottom:.5em}
.ko-a .bk-checks{margin:1.75rem 0 2rem}
@media (max-width:899.98px){.ko-a .bk-wrap{grid-template-columns:minmax(0,1fr)}.ko-a-bild .bk-band{right:.75rem;bottom:1.25rem}}

/* Ablauf: kleine Zusatzmarke unter einem Schritt */
.ab-chip{display:inline-block;margin-top:.7rem;padding:.3em .8em;border-radius:999px;background:var(--bk-tint);color:var(--bk-red-text);font-size:.8125rem;font-weight:600}

/* Preise: «Das bestimmt die Dauer» und Google-Zitat */
.pr-dauer{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(1.5rem,4vw,3rem);margin-top:clamp(2.5rem,5vw,4rem);padding-top:clamp(2rem,4vw,3rem);border-top:1px solid var(--bk-line)}
.pr-dauer-liste{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0;padding:0;list-style:none}
.pr-dauer-liste li{display:grid;gap:.2rem;padding:1.1rem 1.25rem;border-radius:var(--bk-r-m);background:var(--bk-bg2)}
.pr-dauer-liste b{color:var(--bk-ink);font-weight:600}
.pr-dauer-liste span{color:var(--bk-muted);font-size:.9375rem;line-height:1.45}
.pr-dauer-zitat{align-self:start;margin:0;padding:1.75rem;border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line),0 22px 46px -30px rgb(23 25 29/.35)}
.pr-dauer-zitat blockquote{margin:.8rem 0 1rem;color:var(--bk-ink);font:500 1.175rem/1.45 var(--bk-f-titel)}
.pr-dauer-zitat figcaption{color:var(--bk-muted);font-size:.875rem}
.pr-dauer-zitat figcaption b{color:var(--bk-ink)}
@media (max-width:899.98px){.pr-dauer{grid-template-columns:minmax(0,1fr)}}
@media (max-width:519.98px){.pr-dauer-liste{grid-template-columns:minmax(0,1fr)}}

/* Einsatzgebiet: Legende zur Karte und Zusatzzeile */
.eg-legende{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin:1rem .5rem .25rem;padding:0;list-style:none;font-size:.875rem;color:var(--bk-text)}
.eg-legende li{display:inline-flex;align-items:center;gap:.5rem}
.eg-punkt{flex:none;inline-size:.75rem;block-size:.75rem;border-radius:50%;background:#8d99c4}
.eg-punkt.sitz{background:#fff;box-shadow:0 0 0 3px #17191d}
.eg-punkt.kern{background:#c8373d}
.eg-punkt.weitere{background:#234c9d}
.eg-kreise{margin:.25rem .5rem 0;font-size:.8125rem;color:var(--bk-muted)}
.eg-zusatz{margin:0;color:var(--bk-muted)}
.eg-zusatz a{color:var(--bk-ink);font-weight:600}

/* Über uns: Fakten unter dem Teamfoto */
.uu-b-fakten{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:clamp(2rem,4vw,3rem) 0 0;overflow:hidden;border:1px solid var(--bk-line);border-radius:var(--bk-r-l);background:var(--bk-line)}
.uu-b-fakten div{display:grid;gap:.25rem;padding:1.25rem 1.5rem;background:var(--bk-bg)}
.uu-b-fakten dt{color:var(--bk-muted);font-size:.875rem}
.uu-b-fakten dd{margin:0;color:var(--bk-ink);font-weight:600;line-height:1.4}
@media (max-width:899.98px){.uu-b-fakten{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:519.98px){.uu-b-fakten{grid-template-columns:minmax(0,1fr)}}

/* Ratgeber: drei Beiträge als Karten, ganze Karte klickbar */
.rg-a-kopf{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:1rem 2rem;margin-bottom:clamp(2rem,1.5rem + 2vw,3rem)}
.rg-a-kopf .bk-h2{margin:0}
.rg-a-kopf a{color:var(--bk-ink);font-weight:600;text-underline-offset:.25em}
.rg-a-kopf a:hover{color:var(--bk-red-text)}
.rg-a-raster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem)}
.rg-a-karte{position:relative;display:grid;grid-template-rows:auto 1fr;overflow:hidden;border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 1px 2px rgb(23 25 29/.06),0 18px 40px -28px rgb(23 25 29/.4)}
.rg-a-karte img{inline-size:100%;aspect-ratio:16/10;object-fit:cover}
.rg-a-karte>div{padding:1.4rem 1.6rem 1.75rem}
.rg-a-tag{display:inline-block;margin-bottom:.8rem;padding:.3em .8em;border-radius:999px;background:var(--bk-tint);color:var(--bk-red-text);font-size:.8125rem;font-weight:600}
.rg-a-karte h3{margin:0 0 .5rem;font:var(--bk-titel-w) 1.25rem/1.3 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2);color:var(--bk-ink)}
.rg-a-karte h3 a{color:inherit;text-decoration:none}
.rg-a-karte h3 a::after{content:"";position:absolute;inset:0}
.rg-a-karte:hover h3 a{color:var(--bk-red-text)}
.rg-a-karte:focus-within{outline:3px solid var(--bk-blue);outline-offset:3px}
.rg-a-karte p{margin:0;color:var(--bk-muted);font-size:.9375rem}
@media (max-width:899.98px){.rg-a-raster{grid-template-columns:minmax(0,1fr)}.rg-a-raster .rg-a-karte{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-rows:none}.rg-a-raster .rg-a-karte img{block-size:100%;aspect-ratio:auto}}
@media (max-width:519.98px){.rg-a-raster .rg-a-karte{grid-template-columns:minmax(0,1fr)}.rg-a-raster .rg-a-karte img{aspect-ratio:16/10;block-size:auto}}

/* FAQ: Hinweis unter der Liste */
.fq-d-hinweis{max-width:56rem;margin:2rem auto 0;text-align:center;color:var(--bk-muted)}
.fq-d-hinweis a{color:var(--bk-ink);font-weight:600;text-underline-offset:.2em}

/* Abschluss: Adresse unter den Kontaktwegen */
.cta-c-adresse{margin:1.5rem 0 0;color:var(--bk-muted)}

/* Ablauf D · Kacheln (wie die bisherige Startseite): Nummer im Kreis, rote Linie zur nächsten Kachel, Hover hebt an */
.ab-d-schritte{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;counter-reset:ab}
.ab-d-schritte li{--nr:2.75rem;position:relative;counter-increment:ab;display:grid;align-content:start;gap:.5rem;padding:1.5rem 1.5rem 1.75rem;border:1px solid var(--bk-line);border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 1px 2px rgb(23 25 29/.04);transition:translate .25s var(--bk-ease),box-shadow .25s var(--bk-ease),border-color .25s}
.ab-d-schritte li::before{content:counter(ab);display:grid;place-items:center;inline-size:var(--nr);block-size:var(--nr);margin-bottom:.5rem;border-radius:50%;background:var(--bk-marke);color:#fff;font:var(--bk-titel-w) 1rem/1 var(--bk-f-titel);transition:background-color .25s,color .25s}
.ab-d-schritte li:not(:last-child)::after{content:"";position:absolute;top:calc(1.5rem + var(--nr)/2 - 1px);left:calc(1.5rem + var(--nr) + .75rem);right:calc(-1.25rem - 1px);block-size:2px;background:var(--bk-red);opacity:.75}
.ab-d-schritte li:hover{translate:0 -4px;border-color:transparent;box-shadow:0 2px 4px rgb(23 25 29/.05),0 26px 50px -28px rgb(23 25 29/.45)}
.ab-d-schritte li:hover::before{background:var(--bk-red);color:#fff}
.ab-d-schritte h3{margin:0;font:var(--bk-titel-w) 1.2rem/1.25 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2);color:var(--bk-ink)}
.ab-d-schritte p{margin:0;color:var(--bk-muted);font-size:.98rem}
.ab-d-schritte .ab-chip{justify-self:start}
@media (max-width:1199.98px){.ab-d-schritte{grid-template-columns:repeat(2,minmax(0,1fr))}.ab-d-schritte li::after{display:none}}
@media (max-width:599.98px){.ab-d-schritte{grid-template-columns:minmax(0,1fr)}}

/* Preis-Kacheln (wie die bisherige Startseite): Symbole für Team und Lieferwagen, Preis, Link zur Offerte mit gewähltem Team */
.pr-k-raster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.pr-k-karte{display:grid;align-content:start;gap:.9rem;padding:1.5rem 1.5rem 1.4rem;border:1px solid var(--bk-line);border-radius:var(--bk-r-l);background:var(--bk-card);color:var(--bk-ink);text-decoration:none;box-shadow:0 1px 2px rgb(23 25 29/.04);transition:translate .25s var(--bk-ease),box-shadow .25s var(--bk-ease),border-color .25s}
.pr-k-karte:hover,.pr-k-karte:focus-visible{translate:0 -4px;border-color:transparent;box-shadow:0 2px 4px rgb(23 25 29/.05),0 26px 50px -28px rgb(23 25 29/.45)}
.pr-k-karte:active{translate:0 -1px}
.pr-k-symbole{display:grid;justify-items:start;gap:.35rem}
.pr-k-leute,.pr-k-wagen{display:flex;gap:.15rem}
.pr-k-leute svg{inline-size:22px;block-size:22px;color:var(--bk-icon)}
.pr-k-wagen svg{inline-size:26px;block-size:26px;color:var(--bk-icon)}
.pr-k-titel{display:grid;font:var(--bk-titel-w) 1.125rem/1.3 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2)}
.pr-k-preis{font:var(--bk-titel-w) clamp(1.6rem,1.2rem + 1vw,2rem)/1 var(--bk-f-titel);letter-spacing:var(--bk-titel-ls);white-space:nowrap}
.pr-k-preis small{margin-left:.35rem;color:var(--bk-muted);font:500 .875rem var(--bk-f-text);letter-spacing:0}
.pr-k-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:.2rem;color:var(--bk-red-text);font-weight:600}
.pr-k-link svg{inline-size:1.1em;block-size:1.1em;transition:translate .25s var(--bk-ease)}
.pr-k-karte:hover .pr-k-link,.pr-k-karte:focus-visible .pr-k-link{text-decoration:underline;text-underline-offset:.25em}
.pr-k-karte:hover .pr-k-link svg{translate:4px 0}
.pr-k-hinweis{max-width:46em;margin:1rem 0 0;color:var(--bk-muted);font-size:.9375rem}
.pr-c .bk-wrap>.pr-c-spalten{margin-top:clamp(2.5rem,5vw,4rem);align-items:start}
@media (max-width:1199.98px){.pr-k-raster{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:519.98px){.pr-k-raster{grid-template-columns:minmax(0,1fr)}}

/* Karte «Das bestimmt die Dauer» mit Google-Zitat und Knöpfen (wie die bisherige Startseite) */
.pr-dauer-karte{padding:clamp(1.5rem,3vw,2.25rem);border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line),0 22px 46px -30px rgb(23 25 29/.3)}
.pr-dauer-karte .pr-dauer-liste{grid-template-columns:minmax(0,1fr);gap:0}
.pr-dauer-karte .pr-dauer-liste li{display:block;padding:.7rem 0;border-bottom:1px solid var(--bk-line);border-radius:0;background:none}
.pr-dauer-karte .pr-dauer-liste b{margin-right:.35rem}
.pr-dauer-karte .pr-dauer-zitat{margin:1.5rem 0;padding:0 0 0 1rem;border-left:3px solid var(--bk-red);border-radius:0;background:none;box-shadow:none}
.pr-dauer-karte .pr-dauer-zitat blockquote{font-size:1.05rem}
.pr-dauer-karte .pr-c-links{margin-top:0}

/* Schleife: Karten laufen endlos (Bewertungen, Ratgeber). Halten bei Maus, Fokus, Klick oder mit dem Knopf «Anhalten».
   Ohne JavaScript oder bei «weniger Bewegung»: waagrecht scrollbar. Die Kopien für die Endlosschleife setzt baukasten.js. */
.bk-schleife{position:relative;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.bk-schleife::-webkit-scrollbar{display:none}
.bk-schleife-spur{display:flex;gap:1rem;inline-size:max-content;margin:0;padding:.75rem 0 1.75rem;list-style:none}
.bk-schleife:not(.laeuft) .bk-schleife-spur{padding-inline:var(--bk-gut)}
.bk-schleife-spur>*{flex:none;scroll-snap-align:center}
.bk-schleife.laeuft{overflow:hidden;scroll-snap-type:none}
.bk-schleife.laeuft .bk-schleife-spur{animation:bk-lauf var(--dauer,60s) linear infinite}
.bk-schleife.laeuft:hover .bk-schleife-spur,.bk-schleife.laeuft:focus-within .bk-schleife-spur,.bk-schleife.angehalten .bk-schleife-spur{animation-play-state:paused}
@keyframes bk-lauf{to{transform:translateX(calc(-50% - .5rem))}}
.bk-schleife-knopf{display:none;align-items:center;gap:.5rem;min-height:44px;padding:0 1rem;border:1px solid var(--bk-line);border-radius:999px;background:var(--bk-card);color:var(--bk-ink);font-size:.875rem;font-weight:600;text-decoration:none;cursor:pointer}
.bk-schleife-knopf.aktiv{display:inline-flex}
.bk-schleife-knopf:hover{border-color:var(--bk-ink)}
.bk-schleife-knopf svg{inline-size:1rem;block-size:1rem}
.bk-schleife-knopf[aria-pressed="false"] svg:last-of-type,.bk-schleife-knopf[aria-pressed="true"] svg:first-of-type{display:none}
@media (prefers-reduced-motion:reduce){.bk-schleife.laeuft .bk-schleife-spur{animation:none}}

/* Bewertungen als Schleife */
.bw-b-rechts{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem}
.bw-karten>li{display:flex;flex-direction:column;gap:1rem;inline-size:clamp(17rem,78vw,22.5rem);padding:1.75rem;border-radius:var(--bk-r-l);background:var(--bk-bg2);transition:background-color .25s var(--bk-ease)}
.bw-karten>li:hover{background:var(--bk-bg3)}
.bw-karten blockquote{margin:0;color:var(--bk-ink);font-size:1.0625rem;line-height:1.6}
.bw-karten .bw-b-wer{margin-top:auto;color:var(--bk-muted);font-size:.9375rem}
.bw-karten .bw-b-wer b{display:block;color:var(--bk-ink)}

/* Ratgeber als Schleife */
.rg-a-rechts{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem}
.rg-a-spur .rg-a-karte{inline-size:clamp(17rem,78vw,22rem)}
.pr-c-spalten .bk-checks{grid-template-columns:minmax(0,1fr);margin-top:2rem}

/* Ratgeber-Kacheln: Hover hebt die Karte an (31.10.2026); Schleife per Tastatur fokussierbar, Fokus hält sie an */
.rg-a-karte{transition:translate .25s var(--bk-ease),box-shadow .25s var(--bk-ease)}
.rg-a-karte img{transition:scale .5s var(--bk-ease)}
.rg-a-karte:hover{translate:0 -4px;box-shadow:0 2px 4px rgb(23 25 29/.06),0 28px 54px -28px rgb(23 25 29/.5)}
.rg-a-karte:hover img{scale:1.04}
.bk-schleife:focus-visible{outline:3px solid var(--bk-blue);outline-offset:-3px}
@media (prefers-reduced-motion:reduce){.rg-a-karte,.rg-a-karte img{transition:none}.rg-a-karte:hover{translate:none}.rg-a-karte:hover img{scale:none}}
/* Markenblau: Symbole im Laufband hell korallenrot statt rot (auf Blau besser erkennbar, 4:1) */
html[data-farbe="blau"] .vt-b-band svg{color:#ffb3b6}

/* Kontaktwege: Symbole in der Symbolfarbe (Graphit: Logo-Blau), auf dunkler Hover-Fläche hell */
.cta-c-raster a:not(.rot) svg{color:var(--bk-icon)}
.cta-c-raster a:not(.rot):hover svg{color:var(--bk-icon-dunkel)}

/* Knöpfe: Hover hebt leicht an, farbiger Schatten (alle Baukasten-Knöpfe, 31.10.2026) */
.bk-btn{transition:background-color .2s var(--bk-ease),color .2s var(--bk-ease),border-color .2s var(--bk-ease),translate .2s var(--bk-ease),box-shadow .2s var(--bk-ease)}
.bk-btn:hover{translate:0 -2px}
.bk-btn-rot:hover{box-shadow:0 12px 24px -12px rgb(211 61 68/.7)}
.bk-btn-linie:hover{box-shadow:0 12px 24px -14px rgb(23 25 29/.5)}
.bk-btn:active{translate:0 0;box-shadow:none}
@media (prefers-reduced-motion:reduce){.bk-btn:hover{translate:none}}

/* FAQ: Kontaktkasten unter den Fragen (statt einer losen Textzeile) */
.fq-d-kontakt{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.25rem 2rem;max-width:56rem;margin:clamp(2.5rem,5vw,3.5rem) auto 0;padding:clamp(1.5rem,3vw,2rem) clamp(1.5rem,3vw,2.25rem);border-radius:var(--bk-r-l);background:var(--bk-dark);box-shadow:0 0 0 1px var(--bk-line);color:#fff}
.fq-d-kontakt p{display:grid;gap:.2rem;margin:0}
.fq-d-kontakt b{color:#fff;font:var(--bk-titel-w) 1.3rem/1.25 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2)}
.fq-d-kontakt p span{color:var(--bk-on-dark-2);font-size:.98rem}
.fq-d-kontakt .bk-btns{gap:.6rem}
.fq-d-kontakt .bk-btn-linie{border-color:rgb(255 255 255/.45);color:#fff}
.fq-d-kontakt .bk-btn-linie svg{color:var(--bk-icon-dunkel)}
.fq-d-kontakt .bk-btn-linie:hover{background:#fff;border-color:#fff;color:var(--bk-ink);box-shadow:0 12px 24px -14px rgb(0 0 0/.6)}
.fq-d-kontakt .bk-btn-linie:hover svg{color:var(--bk-icon)}
@media (max-width:759.98px){.fq-d-kontakt{flex-direction:column;align-items:stretch}.fq-d-kontakt .bk-btns{inline-size:100%}}

/* ===================== 6. Schriftskala «Skala» (31.10.2026, Wunsch des Nutzers) =====================
   Gemessen auf der Referenzseite bei 390 / 1024 / 1440 / 1920 px: Titel Alpner Grotesk 600 mit enger Laufweite, Text Alpner Text 400
   16,4 px / 1,6. Fliessende Grössen: h1 43→72 px, h2 31→49 px, h3 24→33 px, h4 20→22,6 px, h5 17,6→19 px, h6 16,4 px.
   Alpner Grotesk liegt seit 31.10.2026 lokal im Theme (assets/fonts/dm-sans-*.woff2, OFL); Alpner Rund bleibt nur Ersatz. */
html[data-schrift="skala"] .bk{font-size:1.025rem;line-height:1.6;letter-spacing:-.01em}
html[data-schrift="skala"] .bk-h1{font-size:clamp(2.7rem,.25rem + 4.5vw,4.5rem);line-height:1.02;letter-spacing:-.045em}
html[data-schrift="skala"] .bk-h2{font-size:clamp(1.96rem,.3125rem + 3.05vw,3.06rem);line-height:1.08;letter-spacing:-.04em}
html[data-schrift="skala"] .bk-h3{font-size:clamp(1.245rem,.826rem + .654vw,1.415rem);line-height:1.22;letter-spacing:-.03em}
/* Stufe h3 (24→33 px): Titel in grossen Karten */
html[data-schrift="skala"] .le-d-panel .bk-h3,html[data-schrift="skala"] .uu-b-karte .bk-h2,html[data-schrift="skala"] .of-a h2,html[data-schrift="skala"] .ko-a .bk-h2{font-size:clamp(1.5rem,.73rem + 1.5vw,2.08rem);line-height:1.18;letter-spacing:-.035em}
html[data-schrift="skala"] .ko-a .bk-h2{font-size:clamp(1.96rem,.3125rem + 3.05vw,3.06rem);line-height:1.08;letter-spacing:-.04em}
/* Stufe h4 (20→22,6 px) */
html[data-schrift="skala"] .pr-c h3,html[data-schrift="skala"] .pr-dauer-karte h3,html[data-schrift="skala"] .cta-c-raster b,html[data-schrift="skala"] .fq-d-kontakt b,html[data-schrift="skala"] .he-unter{font-size:clamp(1.245rem,.826rem + .654vw,1.415rem);line-height:1.25;letter-spacing:-.03em}
/* Stufe h5 (17,6→19 px) */
html[data-schrift="skala"] .ab-d-schritte h3,html[data-schrift="skala"] .rg-a-karte h3,html[data-schrift="skala"] .pr-k-titel,html[data-schrift="skala"] .eg-gruppen h3{font-size:clamp(1.0975rem,.91rem + .37vw,1.193rem);line-height:1.3;letter-spacing:-.025em}
/* Stufe h6 (16,4 px): Akkordeon-Fragen wie bei Referenz */
html[data-schrift="skala"] .fq summary{font-size:1.025rem;line-height:1.4;letter-spacing:-.02em}
html[data-schrift="skala"] .fq-d .fq-a p{font-size:1.025rem;line-height:1.6}
/* Einleitungen, Knöpfe, Menü */
html[data-schrift="skala"] .bk-lead{font-size:clamp(1.025rem,.95rem + .2vw,1.125rem);line-height:1.6}
html[data-schrift="skala"] .bk-btn{font-family:var(--bk-f-titel);font-size:.95rem;letter-spacing:-.01em}
html[data-schrift="skala"] .kz-nav a{font-size:.984rem}
html[data-schrift="skala"] .he-vor{font-size:.95rem}
html[data-schrift="skala"] .pr-k-preis{font-size:clamp(1.5rem,1.1rem + .8vw,1.85rem);letter-spacing:-.035em}
html[data-schrift="skala"] .he-a-note b{font-size:2.3rem;letter-spacing:-.045em}

/* Kopfzeile: Untermenüs (wie der bisherige Header: Umzug, Services, Einsatzgebiete, Preise).
   Öffnen bei Hover und Tastaturfokus (CSS) sowie per Klick/Touch (baukasten.js, Klasse .offen); Escape schliesst (.zu). */
.kz-punkt{position:relative;display:flex}
.kz .kz-nav .kz-auf{gap:.3rem;cursor:pointer}
.kz-auf svg{transition:rotate .2s var(--bk-ease)}
.kz-punkt:hover>.kz-auf svg,.kz-punkt.offen>.kz-auf svg{rotate:180deg}
.kz-panel{position:absolute;top:calc(100% + 10px);left:50%;z-index:70;display:grid;grid-auto-flow:column;grid-auto-columns:max-content;gap:2.25rem;padding:1.25rem 1.5rem 1.35rem;border-radius:var(--bk-r-m);background:var(--bk-card);
  box-shadow:0 0 0 1px var(--bk-line),0 26px 50px -24px rgb(23 25 29/.42);opacity:0;visibility:hidden;translate:-50% 6px;transition:opacity .18s var(--bk-ease),translate .18s var(--bk-ease),visibility .18s}
.kz-panel::before{content:"";position:absolute;left:0;right:0;top:-14px;block-size:14px}
.kz-punkt:hover>.kz-panel,.kz-punkt:focus-within>.kz-panel,.kz-punkt.offen>.kz-panel{opacity:1;visibility:visible;translate:-50% 0}
.kz-punkt.zu>.kz-panel{opacity:0;visibility:hidden}
.kz-panel-titel{display:block;margin-bottom:.45rem;color:var(--bk-muted);font-size:.8125rem;font-weight:600}
.kz-panel ul{display:grid;gap:.05rem;margin:0;padding:0;list-style:none}
.kz-panel ul.kz-zwei{display:block;columns:2;column-gap:1.75rem}
.kz-panel ul.kz-zwei li{break-inside:avoid}
.kz .kz-nav .kz-panel a{display:block;min-height:0;margin-inline:-.6rem;padding:.42rem .6rem;border-radius:var(--bk-r-s);color:var(--bk-ink);font-size:.95rem;font-weight:400;white-space:nowrap}
.kz .kz-nav .kz-panel a:hover{background:var(--bk-bg2);color:var(--bk-red-text)}
@media (prefers-reduced-motion:reduce){.kz-panel,.kz-auf svg{transition:none}}
/* Kopfzeile 1240–1379 px: Block «Besichtigung kostenlos» ausblenden (Telefon steht in der Infozeile), damit alles in eine Zeile passt */
@media (min-width:1240px) and (max-width:1379.98px){.kz-c .kz-c-kontakt{display:none}}

/* ===================== 7. Seitentyp Leistung (Musterseite Privatumzug, 31.10.2026) ===================== */

/* Brotkrumen im Hero (Rank Math) über der Vorzeile */
.he-krumen{margin:0 0 1.5rem;font-size:.875rem;line-height:1.4;color:var(--bk-muted)}
.he-krumen p{margin:0}
.he-krumen a{color:var(--bk-text);text-decoration:none}
.he-krumen a:hover{color:var(--bk-red-text);text-decoration:underline;text-underline-offset:.2em}
.he-krumen .separator{padding-inline:.15rem;color:var(--bk-muted)}
.he-krumen .last{color:var(--bk-ink);font-weight:500}

/* H1 mit Unterzeile: die Unterzeile gehört zur H1 (wie bisher auf der Seite), steht aber kleiner darunter */
.bk-h1 .he-unter{display:block;margin:.55em 0 0;max-width:26ch;text-wrap:balance}
.he-a .bk-h1:has(.he-unter){margin-bottom:1.5rem}

/* Links im Fliesstext: dunkel, halbfett, rot unterstrichen; Hover rot */
:is(.lu-a-karte li,.fw-a-liste li,.fw-a-hinweis,.ab-d-schritte p,.pr-k-hinweis,.pr-c-hinweis,.ks-a-tipps p,.tb-a .bk-lead,.bw-b .bk-lead) a{color:var(--bk-ink);font-weight:600;text-decoration:underline;text-decoration-color:rgb(211 61 68/.5);text-decoration-thickness:1.5px;text-underline-offset:.22em;transition:color .2s,text-decoration-color .2s}
:is(.lu-a-karte li,.fw-a-liste li,.fw-a-hinweis,.ab-d-schritte p,.pr-k-hinweis,.pr-c-hinweis,.ks-a-tipps p,.tb-a .bk-lead,.bw-b .bk-lead) a:hover{color:var(--bk-red-text);text-decoration-color:currentColor}

/* Leistungsumfang: drei Kacheln (vor, am, nach dem Zügeltag) mit Symbol und Liste; Hover hebt an */
.lu-a-raster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem)}
.lu-a-karte{display:grid;align-content:start;gap:1rem;padding:clamp(1.5rem,2.5vw,2rem);border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line),0 1px 2px rgb(23 25 29/.04);transition:translate .25s var(--bk-ease),box-shadow .25s var(--bk-ease)}
.lu-a-karte:hover{translate:0 -4px;box-shadow:0 0 0 1px transparent,0 26px 50px -28px rgb(23 25 29/.45)}
.lu-a-ico{display:grid;place-items:center;inline-size:3rem;block-size:3rem;border-radius:15px;background:var(--bk-icon-tint);color:var(--bk-icon)}
.lu-a-ico svg{inline-size:24px;block-size:24px;stroke-width:1.9}
.lu-a-karte h3{margin:0;font:var(--bk-titel-w) 1.375rem/1.25 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2);color:var(--bk-ink)}
.lu-a-karte ul{display:grid;margin:0;padding:0;list-style:none}
.lu-a-karte li{position:relative;padding:.75rem 0 .75rem 1.35rem;border-top:1px solid var(--bk-line);line-height:1.5;color:var(--bk-text)}
.lu-a-karte li::before{content:"";position:absolute;left:.1rem;top:1.3rem;inline-size:.45rem;block-size:.45rem;border-radius:50%;background:var(--bk-red)}
@media (max-width:899.98px){.lu-a-raster{grid-template-columns:minmax(0,1fr)}}

/* Für wen: Foto im Hochformat mit Klebeband, daneben die Anlässe als Liste mit Symbolen und ein Hinweis */
.fw-a .bk-wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,6vw,6rem);align-items:center}
.fw-a-bild{position:relative;margin:0}
.fw-a-bild img{inline-size:100%;aspect-ratio:4/5;object-fit:cover;border-radius:var(--bk-r-l)}
.fw-a-bild .bk-band{position:absolute;right:-1rem;bottom:2.25rem}
.fw-a .bk-h2{margin-bottom:.5em}
.fw-a-liste{display:grid;margin:1.75rem 0;padding:0;list-style:none}
.fw-a-liste li{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--bk-line);line-height:1.5;color:var(--bk-text)}
.fw-a-liste li:first-child{border-top:1px solid var(--bk-line)}
.fw-a-liste svg{box-sizing:content-box;inline-size:22px;block-size:22px;padding:10px;border-radius:13px;background:var(--bk-icon-tint);color:var(--bk-icon);stroke-width:1.9}
.fw-a .fw-a-hinweis{margin:0;padding:1.1rem 1.35rem;border-radius:var(--bk-r-m);background:var(--bk-bg2);color:var(--bk-text)}
@media (max-width:899.98px){.fw-a .bk-wrap{grid-template-columns:minmax(0,1fr)}.fw-a-bild img{aspect-ratio:4/3;object-position:50% 35%}.fw-a-bild .bk-band{right:.75rem;bottom:1.25rem}}

/* Ablauf mit 5 Schritten: ab 1280 px fünf Kacheln in einer Reihe, sonst 3 + 2 bzw. 2 + 2 + 1 mittig */
.ab-d-schritte.ab-d-5{grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}
.ab-d-5 li{padding:1.4rem 1.3rem 1.6rem}
.ab-d-5 li:not(:last-child)::after{top:calc(1.4rem + var(--nr)/2 - 1px);left:calc(1.3rem + var(--nr) + .75rem);right:calc(-1rem - 1px)}
@media (max-width:1279.98px){.ab-d-schritte.ab-d-5{grid-template-columns:repeat(6,minmax(0,1fr))}.ab-d-5 li{grid-column:span 2}.ab-d-5 li:nth-child(4){grid-column:2/span 2}.ab-d-5 li:nth-child(5){grid-column:4/span 2}.ab-d-5 li::after{display:none}}
@media (max-width:899.98px){.ab-d-schritte.ab-d-5{grid-template-columns:repeat(4,minmax(0,1fr))}.ab-d-5 li,.ab-d-5 li:nth-child(4){grid-column:span 2}.ab-d-5 li:nth-child(5){grid-column:2/span 2}}
@media (max-width:599.98px){.ab-d-schritte.ab-d-5{grid-template-columns:minmax(0,1fr)}.ab-d-5 li:nth-child(n){grid-column:auto}}

/* Preise: Einleitung und Hinweis zur Reinigungstabelle */
.pr-c-text{color:var(--bk-text)}
.pr-c .pr-c-hinweis{margin:.9rem 0 0;color:var(--bk-muted);font-size:.9375rem}
.pr-c-spalten .pr-c-hinweis+.bk-checks{margin-top:1.75rem}

/* Kosten senken: vier Tipps als Kacheln, daneben die Packteam-Preise als dunkle Karte */
.ks-a-box{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
.ks-a-tipps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none}
.ks-a-tipps li{display:grid;align-content:start;gap:.5rem;padding:1.5rem;border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line);transition:translate .25s var(--bk-ease),box-shadow .25s var(--bk-ease)}
.ks-a-tipps li:hover{translate:0 -4px;box-shadow:0 0 0 1px transparent,0 26px 50px -28px rgb(23 25 29/.45)}
.ks-a-tipps svg{box-sizing:content-box;inline-size:22px;block-size:22px;margin-bottom:.45rem;padding:11px;border-radius:14px;background:var(--bk-icon-tint);color:var(--bk-icon);stroke-width:1.9}
.ks-a-tipps h3{margin:0;font:var(--bk-titel-w) 1.125rem/1.3 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2);color:var(--bk-ink)}
.ks-a-tipps p{margin:0;color:var(--bk-muted);font-size:.98rem}
.ks-a-pack{padding:clamp(1.5rem,3vw,2.25rem);border-radius:var(--bk-r-l);background:var(--bk-dark);color:var(--bk-on-dark-2);box-shadow:0 30px 60px -34px rgb(23 25 29/.6)}
.ks-a-pack-kopf{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem}
.ks-a-pack-kopf svg{box-sizing:content-box;inline-size:24px;block-size:24px;padding:12px;border-radius:15px;background:rgb(255 255 255/.08);color:var(--bk-icon-dunkel);stroke-width:1.9}
.ks-a-pack .ks-a-pack-kopf p{display:grid;gap:.15rem;margin:0}
.ks-a-pack-kopf b{color:#fff;font:var(--bk-titel-w) 1.5rem/1.2 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2)}
.ks-a-pack-kopf span{font-size:.875rem;color:var(--bk-on-dark-2)}
.ks-a-pack>p{margin:0 0 1rem}
.ks-a-pack dl{margin:0 0 1.75rem}
.ks-a-pack dl div{display:flex;align-items:baseline;gap:.75rem;padding:.7rem 0;border-bottom:1px solid rgb(255 255 255/.12)}
.ks-a-pack dt{color:#fff}
.ks-a-pack dd{margin:0 0 0 auto;color:#fff;font:var(--bk-titel-w) 1.2rem/1 var(--bk-f-titel);white-space:nowrap;font-variant-numeric:tabular-nums}
.ks-a-pack .bk-btn{inline-size:100%}
@media (max-width:999.98px){.ks-a-box{grid-template-columns:minmax(0,1fr)}}
@media (max-width:599.98px){.ks-a-tipps{grid-template-columns:minmax(0,1fr)}}
/* Tablet: Packteam-Karte zweispaltig (Text und Knopf links, Preise rechts) statt sehr breiter Zeilen */
@media (min-width:600px) and (max-width:999.98px){.ks-a-pack{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);grid-template-rows:auto auto 1fr;column-gap:clamp(2rem,5vw,3rem)}.ks-a-pack>*{grid-column:1}.ks-a-pack dl{grid-column:2;grid-row:1/span 3;margin:0}.ks-a-pack .bk-btn{align-self:end}}

/* Tabelle (Termine und Behörden): in einer Karte, Zeilen mit Hover; Handy: jede Zeile als eigene Karte mit Beschriftung */
.bk-tabelle-box{overflow:hidden;border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line),0 22px 46px -34px rgb(23 25 29/.3)}
.bk-tabelle{inline-size:100%;border-collapse:collapse;font-size:.98rem;line-height:1.5}
.bk-tabelle th{padding:1rem 1.5rem;background:var(--bk-bg2);color:var(--bk-ink);font:600 .9375rem/1.3 var(--bk-f-text);text-align:left}
.bk-tabelle th:first-child{inline-size:28%}
.bk-tabelle th:nth-child(2){inline-size:38%}
.bk-tabelle td{padding:1rem 1.5rem;border-top:1px solid var(--bk-line);color:var(--bk-text);vertical-align:top}
.bk-tabelle td:first-child{color:var(--bk-ink);font-weight:600}
.bk-tabelle tbody tr{transition:background-color .2s}
.bk-tabelle tbody tr:hover{background:var(--bk-bg2)}
@media (max-width:699.98px){
  .bk-tabelle-box{overflow:visible;border-radius:0;background:none;box-shadow:none}
  .bk-tabelle thead{position:absolute;display:block;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .bk-tabelle thead tr{display:block}
  .bk-tabelle,.bk-tabelle tbody,.bk-tabelle tr,.bk-tabelle td{display:block}
  .bk-tabelle tbody{display:grid;gap:.75rem}
  .bk-tabelle tr{padding:1.1rem 1.25rem;border-radius:var(--bk-r-m);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line)}
  .bk-tabelle tbody tr:hover{background:var(--bk-card)}
  .bk-tabelle td{padding:.15rem 0;border:0}
  .bk-tabelle td:first-child{margin-bottom:.35rem;font:var(--bk-titel-w) 1.1rem/1.3 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2)}
  .bk-tabelle td:not(:first-child)::before{content:attr(data-label) ": ";color:var(--bk-muted);font-weight:500}
}

/* Einsatzgebiet kompakt: Text links, Ortsseiten als Chips mit Ortsmarke rechts */
.eg-k-box{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.eg-k .bk-h2{margin-bottom:.5em}
.eg-k .bk-lead{margin:0}
.eg-k-orte{gap:.6rem}
.eg-k-orte a{gap:.45rem;min-height:46px;padding:.4rem 1.1rem .4rem .85rem}
.eg-k-orte svg{inline-size:1.1rem;block-size:1.1rem;color:var(--bk-icon);transition:color .2s}
.eg-k-orte a:hover{border-color:var(--bk-red)}
.eg-k-orte a:hover svg{color:var(--bk-red-text)}
@media (max-width:899.98px){.eg-k-box{grid-template-columns:minmax(0,1fr)}}
@media (max-width:599.98px){.eg-k-orte{display:grid;grid-template-columns:minmax(0,1fr)}.eg-k-orte a{display:flex;inline-size:100%}}

/* Zahlen unter der Bewertungs-Schleife */
.bw-b .bw-b-kopf .bk-lead{margin:0}
.bk-zahlen{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:clamp(1rem,2vw,1.5rem) 0 0;padding:0;list-style:none;border-top:1px solid var(--bk-line)}
.bk-zahlen li{display:grid;gap:.35rem;align-content:start;padding:1.5rem clamp(1rem,2vw,2rem) 0}
.bk-zahlen li:first-child{padding-left:0}
.bk-zahlen li+li{border-left:1px solid var(--bk-line)}
.bk-zahlen b{font:var(--bk-titel-w) clamp(2rem,1.4rem + 1.8vw,3rem)/1 var(--bk-f-titel);letter-spacing:var(--bk-titel-ls);color:var(--bk-ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.bk-zahlen small{font:600 .875rem var(--bk-f-text);letter-spacing:0;color:var(--bk-red-text)}
.bk-zahlen span{color:var(--bk-muted);font-size:.9375rem;line-height:1.4;max-width:16em}
@media (max-width:799.98px){.bk-zahlen{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:1.5rem}.bk-zahlen li:nth-child(3){border-left:0;padding-left:0}}

/* Schriftskala «Skala» für die neuen Bausteine */
html[data-schrift="skala"] :is(.lu-a-karte h3,.ks-a-pack-kopf b){font-size:clamp(1.245rem,.826rem + .654vw,1.415rem);line-height:1.25;letter-spacing:-.03em}
html[data-schrift="skala"] .ks-a-tipps h3{font-size:clamp(1.0975rem,.91rem + .37vw,1.193rem);line-height:1.3;letter-spacing:-.025em}
@media (prefers-reduced-motion:reduce){.lu-a-karte:hover,.ks-a-tipps li:hover{translate:none}}

/* ===================== 8. Kopf- und Fusszeile nach dem Live-Stand (31.10.2026 spät) ===================== */
/* Kopfzeile mit 8 Menüpunkten (wie Live): Block «Besichtigung kostenlos» ausgeblendet (Telefon steht in der Infozeile), 1240–1439 px engere Menüpunkte */
.kz-c .kz-c-kontakt{display:none}
@media (min-width:1240px) and (max-width:1439.98px){.kz .kz-nav{gap:0}.kz .kz-nav>a,.kz .kz-nav .kz-auf{padding:0 .5rem;font-size:.95rem}.kz .kz-zeile{gap:.85rem}}
/* Desktop: Hell-Dunkel-Schalter klein in der dunklen Infozeile (spart Platz für die 8 Menüpunkte); Handy und Tablet: in der Kopfzeile */
@media (min-width:1240px){.kz .kz-zeile>.kz-modus{display:none}}
.bk .kz-c-info .kz-modus{padding:2px;background:rgb(255 255 255/.1);color:var(--bk-on-dark-2)}
.bk .kz-c-info .kz-modus:hover{color:#fff}
.bk .kz-c-info .kz-modus svg{inline-size:14px;block-size:14px;padding:5px}
/* Untermenü-Links mit kurzem Hinweis darunter (Preise: Umzugskartons kaufen, Möbellift mieten) */
.kz .kz-nav .kz-panel a.kz-hinweis{display:grid;gap:.1rem;white-space:normal}
.kz-panel a.kz-hinweis small{color:var(--bk-muted);font-size:.8125rem;font-weight:400}
/* Fusszeile mit fünf Spalten (Kontakt, Leistungen, Einsatzgebiet, Auslandumzug, Ratgeber & Firma) */
.fz-a-spalten.fz-5{grid-template-columns:minmax(0,1.35fr) repeat(4,minmax(0,1fr));gap:2rem}
.fz-a .fz-kontakt a{color:#fff;font-weight:600}
.fz-a .fz-google{display:flex;align-items:center;gap:.5rem;font-size:.875rem}
@media (max-width:1099.98px){.fz-a-spalten.fz-5{grid-template-columns:repeat(2,minmax(0,1fr))}.fz-a-spalten.fz-5>div:first-child{grid-column:1/-1}}
/* Handy: Linklisten bleiben zweispaltig (kürzer als eine lange Spalte) */

/* ===================== 9. Plugin-Ausgaben im Baukasten-Design (31.10.2026 spät) ===================== */
/* Gemeindesuche ([alp_kanton_orte … karte="0"], Startseite unter der Karte): Suchfeld und aufklappbare Gemeindegruppen */
.eg-suche{margin-top:clamp(2.5rem,5vw,3.5rem)}
.bk .alp-kanton-solo{max-inline-size:46rem;margin:0 auto}
.bk .alp-kanton-suche{display:grid;gap:.75rem;padding:clamp(1.25rem,3vw,2rem);border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line),0 22px 46px -34px rgb(23 25 29/.3)}
.bk .alp-kanton-label{color:var(--bk-ink);font:var(--bk-titel-w) 1.2rem/1.3 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2)}
.bk .alp-kanton-feld{inline-size:100%;min-block-size:52px;padding:0 1.1rem;border:1.5px solid var(--bk-line);border-radius:var(--bk-r-btn);background:var(--bk-bg);color:var(--bk-ink);font:inherit;font-size:1.0625rem}
.bk .alp-kanton-feld:focus{outline:3px solid var(--bk-blue);outline-offset:2px;border-color:var(--bk-ink)}
.bk .alp-kanton-feld::placeholder{color:var(--bk-muted)}
.bk .alp-kanton-leer{margin:0;padding:.8rem 1rem;border-radius:var(--bk-r-m);background:var(--bk-tint);color:var(--bk-ink);font-size:.9375rem}
.bk .alp-kanton-leer a{color:var(--bk-red-text);font-weight:600}
.bk .alp-orte-gruppen{display:grid;gap:.5rem;margin-top:.25rem}
.bk .orte-gruppe{border-radius:var(--bk-r-m);background:var(--bk-bg2);transition:background-color .2s}
.bk .orte-gruppe:not([open]):hover{background:var(--bk-bg3)}
.bk .orte-gruppe>summary{display:flex;align-items:center;gap:.5rem;min-block-size:52px;padding:0 1.1rem;cursor:pointer;list-style:none;color:var(--bk-ink);font-weight:600}
.bk .orte-gruppe>summary::-webkit-details-marker{display:none}
.bk .orte-gruppe .anzahl{color:var(--bk-muted);font-weight:500}
.bk .orte-icon{position:relative;margin-left:auto;inline-size:1.9rem;block-size:1.9rem;border-radius:50%;background:var(--bk-card)}
.bk .orte-icon::before,.bk .orte-icon::after{content:"";position:absolute;left:50%;top:50%;inline-size:.7rem;block-size:2px;margin:-1px 0 0 -.35rem;background:var(--bk-ink);border-radius:2px;transition:scale .25s var(--bk-ease)}
.bk .orte-icon::after{rotate:90deg}
.bk .orte-gruppe[open] .orte-icon::after{scale:0 1}
.bk .orte-gruppe-inhalt{padding:0 1.1rem 1.1rem}
.bk .orte-gruppe-inhalt .alp-chips{display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none}
.bk .orte-gruppe-inhalt .alp-chips a{display:inline-flex;align-items:center;min-height:40px;padding:.3rem .95rem;border:1px solid var(--bk-line);border-radius:999px;background:var(--bk-card);color:var(--bk-ink);font-size:.9375rem;font-weight:500;text-decoration:none;transition:border-color .2s}
.bk .orte-gruppe-inhalt .alp-chips a:hover{border-color:var(--bk-red)}
.bk :is(.orte-gruppe,.alp-chips>li)[hidden]{display:none}

/* Leiste «Weitere Regionen» über der Fusszeile (Plugin, auf allen Seiten): Karten mit Bild, Hover hebt an */
.bk .alp-regionen{padding-block:clamp(3rem,2rem + 3vw,5rem);background:var(--bk-bg2)}
.bk .alp-regionen .wrap{max-width:calc(var(--bk-wrap) + 2*var(--bk-gut));margin-inline:auto;padding-inline:var(--bk-gut)}
.bk .alp-regionen .sec-kopf{margin-bottom:clamp(1.5rem,3vw,2.25rem);text-align:center}
.bk .alp-regionen h2{margin:0;color:var(--bk-ink);font:var(--bk-titel-w) clamp(1.6rem,1rem + 1.8vw,2.3rem)/1.1 var(--bk-f-titel);letter-spacing:var(--bk-titel-ls)}
.bk .alp-regionen-raster{--rg:1rem;display:flex;flex-wrap:wrap;justify-content:center;gap:var(--rg);margin:0;padding:0;list-style:none}
.bk .alp-regionen-raster>li{flex:0 1 calc((100% - 3*var(--rg))/4);min-inline-size:0}
.bk .alp-region{display:flex;align-items:center;gap:1rem;block-size:100%;padding:.6rem;border-radius:var(--bk-r-m);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line);color:var(--bk-ink);text-decoration:none;transition:translate .25s var(--bk-ease),box-shadow .25s var(--bk-ease)}
.bk .alp-region:hover{translate:0 -3px;box-shadow:0 0 0 1px transparent,0 22px 44px -26px rgb(23 25 29/.45)}
.bk .alp-region-bild{flex:none;inline-size:6.5rem;block-size:4.5rem;object-fit:cover;border-radius:10px}
.bk .alp-region-text{display:grid;gap:.15rem;min-inline-size:0}
.bk .alp-region-text b{font:var(--bk-titel-w) 1.02rem/1.25 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2)}
.bk .alp-region-text>span{color:var(--bk-muted);font-size:.875rem}
@media (max-width:1099.98px){.bk .alp-regionen-raster>li{flex-basis:calc((100% - 2*var(--rg))/3)}}
@media (max-width:799.98px){.bk .alp-regionen-raster>li{flex-basis:calc((100% - var(--rg))/2)}}
@media (max-width:519.98px){.bk .alp-region{flex-direction:column;align-items:stretch;gap:.6rem}.bk .alp-region-bild{inline-size:100%;block-size:auto;aspect-ratio:16/10}}
@media (prefers-reduced-motion:reduce){.bk .alp-region:hover{translate:none}}

/* Leistungen: ohne Punkteliste (wie Live) etwas Luft zwischen Text und Knöpfen */
.le-d-panel p+.le-d-links{margin-top:1.75rem}

/* ===================== 10. Bausteine für alle Seiten (Umwandler, 31.10.2026 Nacht) =====================
   Grundsatz: Text nie als schmale Spalte mit leerem Rand. Textabschnitte zweispaltig (Titel links, Text rechts), Bilder
   immer neben dem Text in festem Format, Tabellen in voller Breite, Listen mit klaren Markierungen. */

/* Fliesstext (Inhalt aller Textbausteine) */
.tx-inhalt>*:first-child{margin-top:0}
.tx-inhalt>*:last-child{margin-bottom:0}
.tx-inhalt p{max-width:44em;margin:0 0 1.05em;color:var(--bk-text)}
.tx-inhalt h3,.tx-inhalt h4{margin:1.7em 0 .55em;color:var(--bk-ink);font:var(--bk-titel-w) clamp(1.15rem,.95rem + .5vw,1.35rem)/1.3 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2)}
.tx-inhalt h4{font-size:1.1rem}
.tx-inhalt>ul,.tx-inhalt>ol{margin:0 0 1.3em}
.tx-inhalt .bk-sc{margin:1.5rem 0}
.tx-inhalt strong,.tx-inhalt b{color:var(--bk-ink);font-weight:600}
:is(.tx-inhalt,.ab-d-nach,.bw-b-text,.lu-a-karte p) a:not([class]){color:var(--bk-ink);font-weight:600;text-decoration:underline;text-decoration-color:rgb(211 61 68/.5);text-decoration-thickness:1.5px;text-underline-offset:.22em;transition:color .2s,text-decoration-color .2s}
:is(.tx-inhalt,.ab-d-nach,.bw-b-text,.lu-a-karte p) a:not([class]):hover{color:var(--bk-red-text);text-decoration-color:currentColor}
/* Punkte-Liste und nummerierte Liste */
.bk-punkte{display:grid;gap:.55rem;margin:0;padding:0;list-style:none}
.bk-punkte>li{position:relative;padding-left:1.4rem;line-height:1.55;color:var(--bk-text)}
.bk-punkte>li::before{content:"";position:absolute;left:.15rem;top:.62em;inline-size:.45rem;block-size:.45rem;border-radius:50%;background:var(--bk-red)}
.bk-nummern{display:grid;gap:.75rem;margin:0;padding:0;list-style:none;counter-reset:nr}
.bk-nummern>li{position:relative;counter-increment:nr;padding-left:2.6rem;line-height:1.55;color:var(--bk-text)}
.bk-nummern>li::before{content:counter(nr);position:absolute;left:0;top:-.05em;display:grid;place-items:center;inline-size:1.8rem;block-size:1.8rem;border-radius:50%;background:var(--bk-marke);color:#fff;font:600 .85rem/1 var(--bk-f-titel)}
.tx-checks{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));gap:.7rem 2rem}
.tx-bild{margin:1.75rem 0}
.tx-bild img{inline-size:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--bk-r-l)}

/* Textabschnitt: Titel links (bleibt beim Lesen sichtbar), Text rechts */
.tx-a-box{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.tx-a-kopf{position:sticky;top:2rem;display:grid;gap:1rem}
.tx-a-kopf .bk-h2,.tx-k .bk-h2,.tb-b .bk-h2,.eg-k .bk-h2{font-size:clamp(1.75rem,1.05rem + 1.7vw,2.6rem);line-height:1.1}
.tx-a-kopf .bk-lead{margin:0;color:var(--bk-muted)}
.tx-a-kurz{align-items:center}
.tx-a-kurz .tx-a-kopf{position:static}
.tx-breit,.tx-sc,.tx-unten{margin-top:clamp(2rem,4vw,3rem)}
@media (max-width:899.98px){.tx-a-box{grid-template-columns:minmax(0,1fr);gap:1.5rem}.tx-a-kopf{position:static}}

/* Textkarte: wichtiger Abschnitt als Karte in der Mitte */
.tx-k-karte{display:grid;gap:1rem;max-width:58rem;margin-inline:auto;padding:clamp(1.75rem,4vw,3.25rem);border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line),0 26px 50px -34px rgb(23 25 29/.35)}
.tx-k:not(.bk-tint) .tx-k-karte{background:var(--bk-bg2);box-shadow:none}
.tx-k-karte .bk-lead{margin:0}

/* Bild und Text nebeneinander (festes Format, Bild links oder rechts) */
.tb-b-box{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,6vw,6rem);align-items:center}
.tb-b-box.tb-b-hoch{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.tb-b-box.tb-b-rechts.tb-b-hoch{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.tb-b-rechts .tb-b-bild{order:2}
.tb-b-bild{position:relative;margin:0}
.tb-b-bild img{inline-size:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--bk-r-l);box-shadow:0 30px 60px -40px rgb(23 25 29/.45)}
.tb-b-hoch .tb-b-bild img{aspect-ratio:4/5}
.tb-b-text{display:grid;gap:1rem}
.tb-b-text .bk-lead{margin:0}
@media (max-width:899.98px){.tb-b-box,.tb-b-box.tb-b-hoch,.tb-b-box.tb-b-rechts.tb-b-hoch{grid-template-columns:minmax(0,1fr)}.tb-b-rechts .tb-b-bild{order:0}.tb-b-bild img,.tb-b-hoch .tb-b-bild img{aspect-ratio:4/3}}

/* Linkraster (z. B. «Was wir in Aarau für Sie erledigen»): ganze Karte klickbar, Symbol, Pfeil */
.bk-linkraster{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,15.5rem),1fr));gap:.75rem;margin:1rem 0 1.5rem;padding:0;list-style:none}
.bk-linkraster a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.85rem;min-height:64px;padding:.75rem 1rem;border-radius:var(--bk-r-m);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line);color:var(--bk-ink);font-weight:600;line-height:1.3;text-decoration:none;transition:translate .2s var(--bk-ease),box-shadow .2s var(--bk-ease),color .2s}
.bk-linkraster a>svg:first-child{box-sizing:content-box;inline-size:20px;block-size:20px;padding:9px;border-radius:12px;background:var(--bk-icon-tint);color:var(--bk-icon)}
.bk-linkraster a>svg:last-child{inline-size:18px;block-size:18px;color:var(--bk-red-text);transition:translate .2s var(--bk-ease)}
.bk-linkraster a:hover{translate:0 -2px;box-shadow:0 0 0 1px transparent,0 18px 36px -24px rgb(23 25 29/.45);color:var(--bk-red-text)}
.bk-linkraster a:hover>svg:last-child{translate:3px 0}
.bk-tint .bk-linkraster a{background:var(--bk-card)}

/* Leistungs-Kacheln je nach Anzahl */
.lu-a-raster.lu-a-2,.lu-a-raster.lu-a-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.lu-a-raster.lu-a-1{grid-template-columns:minmax(0,46rem)}
@media (max-width:899.98px){.lu-a-raster.lu-a-2,.lu-a-raster.lu-a-4{grid-template-columns:minmax(0,1fr)}}
.lu-a-karte p{margin:0;color:var(--bk-text)}

/* Ablauf mit 3, 4 oder 6 Schritten */
.ab-d-schritte.ab-d-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ab-d-schritte.ab-d-6{grid-template-columns:repeat(3,minmax(0,1fr))}
.ab-d-6 li:nth-child(3n)::after{display:none}
@media (max-width:899.98px){.ab-d-schritte.ab-d-3,.ab-d-schritte.ab-d-6{grid-template-columns:repeat(2,minmax(0,1fr))}.ab-d-3 li::after,.ab-d-6 li::after{display:none}.ab-d-3 li:last-child:nth-child(odd){grid-column:1/-1}}
@media (max-width:599.98px){.ab-d-schritte.ab-d-3,.ab-d-schritte.ab-d-6{grid-template-columns:minmax(0,1fr)}}
.ab-d-schritte li p{margin:0}
.ab-d-nach{max-width:46rem;margin:clamp(1.75rem,3vw,2.5rem) auto 0;text-align:center;color:var(--bk-muted)}
.ab-d-nach p{margin:0 0 .6em}

/* Preise: Kacheln je nach Anzahl; darunter Text links, Preistabellen als Karten rechts */
.pr-k-raster.pr-k-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pr-k-raster.pr-k-5,.pr-k-raster.pr-k-6{grid-template-columns:repeat(3,minmax(0,1fr))}
.pr-k-raster.pr-k-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:46rem}
@media (max-width:899.98px){.pr-k-raster.pr-k-3,.pr-k-raster.pr-k-5,.pr-k-raster.pr-k-6{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:519.98px){.pr-k-raster.pr-k-2,.pr-k-raster.pr-k-3,.pr-k-raster.pr-k-5,.pr-k-raster.pr-k-6{grid-template-columns:minmax(0,1fr)}}
.pr-g{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(2rem,5vw,4.5rem);align-items:start;margin-top:clamp(2.5rem,5vw,3.5rem)}
.pr-g.pr-g-ohne{grid-template-columns:minmax(0,1fr);max-width:50rem}
.pr-g-tabellen{display:grid;gap:1rem}
.pr-g-tabellen .bk-btns{margin-top:.5rem}
@media (max-width:899.98px){.pr-g{grid-template-columns:minmax(0,1fr)}}
/* Preistabellen aus dem Plugin ([alp_preise …]) als Karte */
.pr-tab .preisliste,.tx-inhalt .preisliste{padding:clamp(1.1rem,2.5vw,1.5rem) clamp(1.1rem,2.5vw,1.6rem);border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line),0 18px 40px -32px rgb(23 25 29/.35)}
.bk .pl-tabelle{inline-size:100%;border-collapse:collapse;font-size:.98rem}
.bk .pl-tabelle caption{margin-bottom:.6rem;color:var(--bk-ink);font:var(--bk-titel-w) 1.15rem/1.3 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2);text-align:left}
.bk .pl-tabelle thead th{padding:0 0 .55rem;border-bottom:1.5px solid var(--bk-ink);color:var(--bk-muted);font:600 .8125rem/1.3 var(--bk-f-text);text-align:left}
.bk .pl-tabelle thead th:last-child,.bk .pl-tabelle td{text-align:right}
.bk .pl-tabelle tbody th{padding:.7rem 1rem .7rem 0;border-bottom:1px solid var(--bk-line);color:var(--bk-ink);font-weight:500;text-align:left}
.bk .pl-tabelle td{padding:.7rem 0;border-bottom:1px solid var(--bk-line);color:var(--bk-ink);font:var(--bk-titel-w) 1.08rem/1.2 var(--bk-f-titel);white-space:nowrap;font-variant-numeric:tabular-nums}
.bk .pl-tabelle tbody tr:last-child>*{border-bottom:0}
.bk .preisliste-mehr{margin:.8rem 0 0}
.bk .preisliste-mehr a{display:inline-flex;align-items:center;gap:.35rem;color:var(--bk-red-text);font-weight:600;text-decoration:none}
.bk .preisliste-mehr svg{inline-size:1rem;block-size:1rem}
.bk .preisbedingungen{display:grid;gap:.6rem;margin:0;padding:clamp(1.1rem,2.5vw,1.5rem);border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line);list-style:none}
.bk .preisbedingungen li{position:relative;padding-left:1.9rem;line-height:1.45;color:var(--bk-text)}
.bk .preisbedingungen li::before{content:"";position:absolute;left:0;top:.05em;inline-size:1.3rem;block-size:1.3rem;border-radius:50%;background:var(--bk-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4 8-9'/%3E%3C/svg%3E") center/.8rem no-repeat}

/* Hero: Vorteile als ganze Sätze (automatisch übernommen) und Hero ohne Bild */
.he-vorteile-text li{grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:.85rem;color:var(--bk-text);font-size:.9375rem;line-height:1.4}
.he-vorteile-text svg{margin:0}
@media (min-width:1240px){.he-vorteile-text{grid-template-columns:minmax(0,1fr);gap:.9rem}}
.he-a.he-a-ohne{padding-block:clamp(3rem,6vw,5rem);background:var(--bk-bg2)}
.he-a.he-a-ohne .bk-wrap{display:block;max-width:calc(var(--bk-wrap) + 2*var(--bk-gut));margin-inline:auto;padding-inline:var(--bk-gut)}
.he-a.he-a-ohne .bk-wrap>div:first-child{padding:0;max-width:52rem}
.he-meta{margin:-.75rem 0 1.5rem;color:var(--bk-muted);font-size:.9375rem}

/* Umgebung ([alp_umgebung]): Karte und Gemeinden in der Nähe */
.bk .alp-umgebung{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(1.25rem,3vw,2rem);align-items:stretch}
.bk .alp-umgebung-karte{display:flex;flex-direction:column;gap:.6rem;margin:0}
.bk .alp-umgebung-karte iframe{display:block;inline-size:100%;block-size:100%;min-block-size:clamp(300px,34vw,460px);border:0;border-radius:var(--bk-r-l);background:var(--bk-bg2)}
.bk .alp-umgebung-karte figcaption{color:var(--bk-muted);font-size:.875rem}
.bk .alp-umgebung-karte figcaption a{color:var(--bk-ink);font-weight:600}
.bk .alp-umgebung-liste{display:flex;flex-direction:column;gap:1rem;padding:clamp(1.25rem,3vw,2rem);border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line),0 22px 46px -34px rgb(23 25 29/.3)}
.bk .alp-umgebung-liste h3{margin:0;color:var(--bk-ink);font:var(--bk-titel-w) 1.2rem/1.3 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2)}
.bk .alp-nachbarn{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin:0;padding:0;list-style:none}
.bk .alp-nachbarn :is(a,span){display:flex;align-items:center;gap:.4rem;min-height:44px;padding:.35rem .85rem;border-radius:var(--bk-r-btn);background:var(--bk-bg2);color:var(--bk-ink);font-size:.9375rem;font-weight:500;text-decoration:none;transition:background-color .2s,color .2s}
.bk .alp-nachbarn a::after{content:"";margin-left:auto;inline-size:.45rem;block-size:.45rem;border-top:2px solid currentColor;border-right:2px solid currentColor;rotate:45deg;opacity:.5}
.bk .alp-nachbarn a:hover{background:var(--bk-tint);color:var(--bk-red-text)}
.bk .alp-umgebung-hinweis{margin:auto 0 0;color:var(--bk-muted);font-size:.875rem}
.bk .alp-umgebung-leistungen{margin:1.5rem 0 0;line-height:1.9;color:var(--bk-text)}
.bk .alp-umgebung-leistungen b{color:var(--bk-ink)}
.bk .alp-umgebung-leistungen a{color:var(--bk-ink);font-weight:600;text-decoration-color:rgb(211 61 68/.5);text-underline-offset:.2em;white-space:nowrap}
@media (max-width:899.98px){.bk .alp-umgebung{grid-template-columns:minmax(0,1fr)}}
@media (max-width:419.98px){.bk .alp-nachbarn{grid-template-columns:minmax(0,1fr)}}

/* Bewertungen mit Seitentext unter dem Titel */
.bw-b-text p{margin:0 0 .6em;color:var(--bk-text);max-width:44em}

/* Schriftskala «Skala» für die Bausteine */
html[data-schrift="skala"] :is(.tx-a-kopf .bk-h2,.tx-k .bk-h2,.tb-b .bk-h2,.eg-k .bk-h2){font-size:clamp(1.7rem,.6rem + 2vw,2.5rem);line-height:1.1;letter-spacing:-.04em}
html[data-schrift="skala"] .tx-inhalt :is(h3,h4){font-size:clamp(1.0975rem,.91rem + .37vw,1.193rem);line-height:1.3;letter-spacing:-.025em}
@media (prefers-reduced-motion:reduce){.bk-linkraster a:hover{translate:none}}

/* ===================== 11. Laufband und Infozeile hell (Wunsch des Nutzers, 01.11.2026) =====================
   Laufband über die volle Breite, aber in leichtem Grau statt Schwarz; Infozeile oben ebenfalls hellgrau, mit den
   wichtigsten Einsatzgebieten als Links. Text dunkel, Symbole im Logo-Blau. */
.bk-sec.vt-b{padding-block:1.15rem;background:var(--bk-bg2);color:var(--bk-ink);border-block:1px solid var(--bk-line)}
.vt-b-band span{font-size:1.05rem}
.bk-sec.vt-b .vt-b-band svg,html[data-farbe="blau"] .bk-sec.vt-b .vt-b-band svg{color:var(--bk-icon)}
@media (max-width:599.98px){.bk-sec.vt-b{padding-block:.9rem}.vt-b-band span{font-size:.95rem}}
.kz-c-info{background:var(--bk-bg2);color:var(--bk-text);border-bottom:1px solid var(--bk-line)}
.kz-c-info a{color:var(--bk-ink)}
.kz-orte{flex-wrap:wrap;gap:.35rem .25rem}
.kz-c-info p.kz-orte{gap:.25rem}
.kz-orte svg{inline-size:1rem;block-size:1rem;margin-right:.35rem;color:var(--bk-icon)}
.kz-orte>span:first-of-type{margin-right:.5rem;color:var(--bk-muted);font-weight:600}
.kz-orte a{padding:.1rem .55rem;border-radius:999px;font-weight:500;text-decoration:none;transition:background-color .2s,color .2s}
.kz-orte a:hover{background:var(--bk-card);color:var(--bk-red-text)}
.kz-orte-rest{margin-left:.35rem;color:var(--bk-muted)}
.bk .kz-c-info .kz-modus{background:var(--bk-card);color:var(--bk-muted);box-shadow:0 0 0 1px var(--bk-line)}
.bk .kz-c-info .kz-modus:hover{color:var(--bk-ink)}

/* ===================== 12. Artikel (Ratgeber, lange Texte) ===================== */
.ar-a-raster{display:grid;grid-template-columns:minmax(0,16.5rem) minmax(0,46rem);justify-content:center;gap:clamp(2.5rem,5vw,5rem);align-items:start}
.ar-a-raster.ar-a-ohne{grid-template-columns:minmax(0,48rem)}
.ar-a-toc{position:sticky;top:2rem;max-block-size:calc(100vh - 4rem);overflow:auto}
.bk .toc{padding:1.25rem 1.1rem;border-radius:var(--bk-r-l);background:var(--bk-bg2)}
.bk .toc-titel{margin:0 0 .6rem;color:var(--bk-muted);font-size:.8125rem;font-weight:600}
.bk .toc-liste{display:grid;gap:.1rem;margin:0;padding:0;list-style:none}
.bk .toc-liste a{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:.25rem;padding:.42rem .5rem;border-radius:var(--bk-r-s);color:var(--bk-text);font-size:.9rem;line-height:1.35;text-decoration:none;transition:background-color .2s,color .2s}
.bk .toc-liste a:hover{background:var(--bk-card);color:var(--bk-ink)}
.bk .toc-liste a.aktiv{background:var(--bk-card);color:var(--bk-ink);font-weight:600;box-shadow:inset 3px 0 0 var(--bk-red)}
.bk .toc-nr{color:var(--bk-muted);font-variant-numeric:tabular-nums}
.bk .toc-liste a.aktiv .toc-nr{color:var(--bk-red-text)}
.bk .toc-mobil{display:none}
@media (max-width:1099.98px){
  .ar-a-raster{grid-template-columns:minmax(0,46rem)}
  .ar-a-toc{position:static;max-block-size:none;overflow:visible}
  .bk .toc{display:none}
  .bk .toc-mobil{display:block;border-radius:var(--bk-r-l);background:var(--bk-bg2)}
  .bk .toc-mobil summary{display:flex;align-items:center;gap:.5rem;min-block-size:56px;padding:0 1.1rem;cursor:pointer;list-style:none;color:var(--bk-ink);font-weight:600}
  .bk .toc-mobil summary::-webkit-details-marker{display:none}
  .bk .toc-anzahl{color:var(--bk-muted);font-weight:500}
  .bk .toc-icon{position:relative;margin-left:auto;inline-size:1.9rem;block-size:1.9rem;border-radius:50%;background:var(--bk-card)}
  .bk .toc-icon::before,.bk .toc-icon::after{content:"";position:absolute;left:50%;top:50%;inline-size:.7rem;block-size:2px;margin:-1px 0 0 -.35rem;background:var(--bk-ink);border-radius:2px}
  .bk .toc-icon::after{rotate:90deg;transition:scale .25s var(--bk-ease)}
  .bk .toc-mobil[open] .toc-icon::after{scale:0 1}
  .bk .toc-mobil nav{padding:0 .6rem .8rem}
}
.ar-a-text{min-inline-size:0}
.ar-teil{scroll-margin-top:1.5rem;padding-block:clamp(1.5rem,3vw,2.25rem);border-top:1px solid var(--bk-line)}
.ar-teil:first-child{padding-top:0;border-top:0}
.ar-teil>.bk-h2{margin:0 0 .8rem;font-size:clamp(1.5rem,1rem + 1.3vw,2.1rem);line-height:1.15}
.ar-teil>.bk-lead{margin:0 0 1rem}
.ar-teil .tx-inhalt p{max-width:none;font-size:1.0625rem;line-height:1.75}
.ar-teil .bk-punkte>li,.ar-teil .bk-nummern>li{font-size:1.0625rem;line-height:1.65}
.ar-teil .bk-tabelle-box{margin:1.25rem 0 1.5rem}
.ar-teil.ar-kurz{margin-bottom:.5rem;padding:clamp(1.25rem,3vw,2rem);border:0;border-radius:var(--bk-r-l);background:var(--bk-tint)}
.ar-teil.ar-kurz>.bk-h2{font-size:clamp(1.25rem,1rem + .6vw,1.5rem)}
.ar-teil.ar-kurz .bk-punkte>li::before{background:var(--bk-red)}
.ar-teil.ar-kurz+.ar-teil{border-top:0}
.ar-teil.ar-quellen .tx-inhalt :is(p,li){font-size:.9rem;color:var(--bk-muted)}
.ar-teil.ar-faq .fq-d-liste{max-width:none}
html[data-schrift="skala"] .ar-teil>.bk-h2{font-size:clamp(1.5rem,.9rem + 1.3vw,2rem);letter-spacing:-.035em}
/* Lesefortschritt (baukasten.js setzt die Breite) */
.bk-fortschritt{position:fixed;inset:0 0 auto 0;z-index:90;block-size:3px;background:transparent;pointer-events:none}
.bk-fortschritt span{display:block;block-size:100%;inline-size:0;background:var(--bk-red);transition:inline-size .1s linear}
/* Artikel-Meta im Hero (Autor, Datum) */
.he-meta .artikel-meta{margin:0}
.he-meta .artikel-meta b{color:var(--bk-ink)}
/* Hinweis-Kasten und Tipps auf grauem Hintergrund als weisse Karte */
.bk-tint .fw-a .fw-a-hinweis{background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line)}

/* ===================== 13. Formular-Abschnitte und Pakete ===================== */
.fo-a-flaeche{padding:clamp(1.25rem,3vw,2.5rem);border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line),0 30px 60px -40px rgb(23 25 29/.4)}
.fo-a-flaeche>.bk-sc{margin:0}
.fo-a-kontakt{margin:1.25rem 0 0;text-align:center;color:var(--bk-muted)}
.fo-a-kontakt a{color:var(--bk-ink);font-weight:600}
.fo-a-nach{max-width:46rem;margin:clamp(1.75rem,3vw,2.5rem) auto 0;text-align:center}
.he-a.he-a-ohne+.fo-a{padding-top:clamp(1.5rem,3vw,2.5rem)}
.pr-pakete{margin-bottom:clamp(1.5rem,3vw,2.25rem)}
.bk-sr{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* Google-Note 4,8 und verlinkte Bewertungsfelder (Google-Profil) */
.bk-sterne.bk-sterne-48{--bis:5.25em}
a.he-a-note,a.bw-b-google{text-decoration:none;transition:translate .2s var(--bk-ease),box-shadow .2s var(--bk-ease)}
a.he-a-note:hover,a.bw-b-google:hover{translate:0 -2px;box-shadow:0 0 0 1px var(--bk-line),0 24px 48px -22px rgb(13 13 63/.45)}
a.bw-b-google>span>span:last-child{text-decoration:underline;text-decoration-color:rgb(211 61 68/.45);text-underline-offset:.2em}
.fz-a .fz-google a{display:inline-flex;align-items:center;gap:.5rem;color:var(--bk-on-dark-2);font-weight:400}

/* ===================== 14. Offertformular und Rechner (Kernstück, 01.11.2026) =====================
   Kompakter grauer Kopf mit Vertrauenspunkten; die Formular-Karte ragt in den Kopf hinein und steht so sofort im Blick.
   Das Formular bringt seine eigene Karte mit (formular.css), deshalb keine zweite Hülle. */
.he-a.he-form{padding-block:clamp(2rem,3.5vw,3rem) clamp(5.5rem,9vw,7.5rem)}
.he-a.he-form .bk-h1{font-size:clamp(2.2rem,1.4rem + 2.6vw,3.4rem);margin-bottom:.35em}
.he-a.he-form .bk-wrap>div:first-child{max-width:none;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:3rem;align-items:end}
.he-a.he-form .he-krumen,.he-a.he-form .bk-h1,.he-a.he-form .bk-lead{grid-column:1}
.he-a.he-form .bk-lead{margin:0;max-width:40em}
.he-vertrauen{grid-column:2;grid-row:2/span 3;align-self:end;display:grid;gap:.55rem;margin:0;padding:0;list-style:none}
.he-vertrauen li{display:flex;align-items:center;gap:.65rem;color:var(--bk-ink);font-size:.95rem;font-weight:500}
.he-vertrauen svg{box-sizing:content-box;inline-size:18px;block-size:18px;padding:7px;border-radius:10px;background:var(--bk-card);color:var(--bk-icon)}
@media (max-width:999.98px){.he-a.he-form .bk-wrap>div:first-child{grid-template-columns:minmax(0,1fr)}.he-vertrauen{grid-column:1;grid-row:auto;margin-top:1.25rem;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:559.98px){.he-vertrauen{grid-template-columns:minmax(0,1fr)}}
.he-a.he-form+.fo-a{position:relative;z-index:2;padding-top:0}
.he-a.he-form+.fo-a .fo-a-flaeche{margin-top:clamp(-6.5rem,-8vw,-4.5rem)}
.fo-a-flaeche:has(.offerte,.rechner,.material,.ml-form){padding:0;background:none;box-shadow:none}
.bk .offerte,.bk .rechner{box-shadow:0 0 0 1px var(--bk-line),0 40px 80px -48px rgb(23 25 29/.45)}

/* ===================== 15. Kopfzeile bleibt oben, grössere Fusszeile, Google-Feld (01.11.2026) ===================== */
/* Kopfzeile: bleibt oben stehen (Infozeile, 41 px, schiebt sich weg). Sticky sitzt auf .kz, weil #brx-header in Bricks
   «display: contents» hat. Immer ein leichter Schatten, ab dem Scrollen etwas kräftiger und die Menüzeile niedriger. */
.bk .kz.kz-c{position:sticky;top:-41px;z-index:80;background:var(--bk-bg);box-shadow:0 1px 0 var(--bk-line),0 10px 28px -20px rgb(23 25 29/.28);transition:box-shadow .25s var(--bk-ease)}
.bk .kz.kz-c.kz-fest{box-shadow:0 1px 0 var(--bk-line),0 16px 36px -22px rgb(23 25 29/.42)}
.bk .kz.kz-c .kz-zeile{transition:min-height .25s var(--bk-ease)}
.bk .kz.kz-c.kz-fest .kz-zeile{min-height:76px}
@media (max-width:1239.98px){.bk .kz.kz-c{top:0}.bk .kz.kz-c.kz-fest .kz-zeile{min-height:64px}}
@media (prefers-reduced-motion:reduce){.bk .kz.kz-c,.bk .kz.kz-c .kz-zeile{transition:none}}
/* Menüschrift dunkler und kräftiger (besser lesbar): Alpner Grotesk halbfett */
.bk .kz .kz-nav>a,.bk .kz .kz-nav .kz-auf{font-family:var(--bk-f-titel);font-weight:600;color:var(--bk-ink);letter-spacing:-.01em}
.bk .kz .kz-nav .kz-panel a{color:var(--bk-ink);font-weight:500}
.bk .kz-panel-titel{color:var(--bk-text)}
/* Abstände für klebende Elemente und Sprungziele unter der Kopfzeile */
.bk [id]{scroll-margin-top:6.5rem}
.tx-a-kopf{top:7rem}
.ar-a-toc{top:6.5rem;max-block-size:calc(100vh - 8rem)}
.ar-teil{scroll-margin-top:6.5rem}
.bk :is(.offerte,.rechner,.material){--kopf-h:84px}
@media (max-width:1239.98px){.bk :is(.offerte,.rechner,.material){--kopf-h:72px}}
/* Fusszeile grosszügiger */
.bk-sec.fz-a{padding-block:clamp(4.5rem,7vw,6.5rem) 2.25rem}
.fz-a{font-size:1rem}
.fz-a .fz-a-spalten{gap:clamp(2rem,4vw,3.5rem)}
.fz-a h3{margin-bottom:1.25rem;font:var(--bk-titel-w) 1.1rem/1.3 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2)}
.fz-a ul{gap:.8rem}
.fz-a .fz-a-spalten p{max-width:24rem;line-height:1.65}
.bk-auf-dunkel .bk-logo{padding:10px 18px}
.bk-auf-dunkel .bk-logo img{block-size:28px}
.fz-a .fz-recht{margin-top:clamp(3rem,5vw,4.5rem);padding-top:1.75rem;font-size:.9rem}
/* Google-Feld in der Fusszeile: Google-Logo, Note mit Sternen, Anzahl; ganzes Feld verlinkt auf das Google-Profil */
.fz-google-karte{display:inline-flex;align-items:center;gap:.85rem;margin-top:1.5rem;padding:.8rem 1.15rem .8rem .9rem;border-radius:var(--bk-r-m);background:rgb(255 255 255/.06);box-shadow:inset 0 0 0 1px rgb(255 255 255/.14);color:#fff;text-decoration:none;transition:background-color .2s,translate .2s var(--bk-ease)}
.fz-google-karte:hover{background:rgb(255 255 255/.12);translate:0 -2px;text-decoration:none!important}
.fz-g-logo{flex:none;inline-size:30px;block-size:30px;padding:5px;border-radius:50%;background:#fff}
.fz-g-text{display:grid;gap:.15rem;line-height:1.2}
.fz-g-zeile{display:flex;align-items:center;gap:.5rem}
.fz-g-zeile b{font:var(--bk-titel-w) 1.25rem/1 var(--bk-f-titel)}
.fz-g-text small{color:var(--bk-on-dark-2);font-size:.85rem}

/* ===================== 16. Preisabschnitt ausgewogen (Wunsch des Nutzers, 01.11.2026) =====================
   Kurzer Text oben über die volle Breite, Preistabellen nebeneinander als Karten, Bedingungen als Kachelreihe mit Symbolen. */
.pr-text-oben{max-width:52rem;margin:clamp(2.5rem,5vw,3.5rem) 0 0}
.pr-tabellen{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,21rem),1fr));gap:1rem;margin-top:clamp(1.75rem,3vw,2.5rem);align-items:start}
.pr-tabellen>.pr-tab{min-inline-size:0}
.pr-bed{margin-top:clamp(1.75rem,3vw,2.5rem)}
.bk .pr-bed .preisbedingungen{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13.5rem),1fr));gap:1rem;padding:0;background:none;box-shadow:none}
.bk .pr-bed .preisbedingungen li{display:grid;align-content:start;gap:.85rem;padding:1.35rem 1.25rem;border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line);color:var(--bk-text);font-size:.95rem;line-height:1.5}
.bk .pr-bed .preisbedingungen li::before{position:static;inline-size:44px;block-size:44px;border-radius:14px;background:var(--bk-icon-tint);-webkit-mask:none;mask:none}
.bk .pr-bed .preisbedingungen li::after{content:"";position:absolute;margin:11px;inline-size:22px;block-size:22px;background:var(--bk-icon);-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.bk .pr-bed .preisbedingungen li{position:relative}
.bk .pr-bed .preisbedingungen li:nth-child(1){--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.2'/%3E%3Cpath d='M3 20.5v-1a5.5 5.5 0 0 1 5.5-5.5h1a5.5 5.5 0 0 1 5.5 5.5v1'/%3E%3Ccircle cx='16.8' cy='8.6' r='2.6'/%3E%3Cpath d='M16.5 14h.4a4.6 4.6 0 0 1 4.6 4.6v1.9'/%3E%3C/svg%3E")}
.bk .pr-bed .preisbedingungen li:nth-child(2){--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H6v18h12V7z'/%3E%3Cpath d='M14 3v4h4M9 13h6M9 17h4'/%3E%3C/svg%3E")}
.bk .pr-bed .preisbedingungen li:nth-child(3){--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 3.5c.7 4.4 2.6 6.3 7 7-4.4.7-6.3 2.6-7 7-.7-4.4-2.6-6.3-7-7 4.4-.7 6.3-2.6 7-7z'/%3E%3Cpath d='M18.5 14.5c.3 1.9 1.1 2.7 3 3-1.9.3-2.7 1.1-3 3-.3-1.9-1.1-2.7-3-3 1.9-.3 2.7-1.1 3-3z'/%3E%3C/svg%3E")}
.bk .pr-bed .preisbedingungen li:nth-child(4){--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E")}
.bk .pr-bed .preisbedingungen li:nth-child(5){--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='6' width='19' height='12' rx='2'/%3E%3Ccircle cx='12' cy='12' r='2.5'/%3E%3C/svg%3E")}
.bk .pr-bed .preisbedingungen li::after{top:1.35rem;left:1.25rem}
.pr-knoepfe{justify-content:center;margin-top:clamp(1.75rem,3vw,2.5rem)}
/* Nur eine Preistabelle: Zeilen in zwei Spalten (kein langer, schmaler Streifen über die ganze Breite) */
@media (min-width:760px){
  .pr-tabellen:has(>.pr-tab:only-child) .pl-tabelle thead{display:none}
  .pr-tabellen:has(>.pr-tab:only-child) .pl-tabelle tbody{display:block;columns:2;column-gap:3.5rem}
  .pr-tabellen:has(>.pr-tab:only-child) .pl-tabelle tr{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;break-inside:avoid;border-bottom:1px solid var(--bk-line)}
  .pr-tabellen:has(>.pr-tab:only-child) .pl-tabelle tr>*{border-bottom:0}
  .pr-tabellen:has(>.pr-tab:only-child) .pl-tabelle caption{display:block;margin-bottom:.4rem}
}
/* Motto wie auf den Fahrzeugen (Startseite): Umzug | Reinigung | Lagerung | Entsorgung, rote Trennstriche */
.bk-h1 .he-motto{max-width:none;color:var(--bk-ink);font-weight:500;letter-spacing:-.01em}
.he-motto .he-trenner{margin-inline:.3em;color:var(--bk-red);font-weight:400}
@media (max-width:519.98px){.bk-h1 .he-motto{font-size:clamp(1.05rem,4.6vw,1.3rem)}}

/* ===================== 17. Ratgeber-Übersicht (Bricks-Schleife bleibt, neues Kartendesign) ===================== */
.bk .rg-u .rg-filter{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0 0 clamp(1.75rem,3vw,2.5rem)}
.bk .rg-pille{min-height:42px;padding:0 1.05rem;border:1px solid var(--bk-line);border-radius:999px;background:var(--bk-card);color:var(--bk-ink);font:500 .9375rem var(--bk-f-text);cursor:pointer;transition:border-color .2s,background-color .2s,color .2s}
.bk .rg-pille:hover{border-color:var(--bk-ink)}
.bk .rg-pille[aria-pressed="true"]{border-color:var(--bk-marke);background:var(--bk-marke);color:#fff}
.bk .rg-u .rg-raster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem)}
.bk .rg-karte{position:relative;display:grid;grid-template-rows:auto 1fr;overflow:hidden;border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 1px 2px rgb(23 25 29/.06),0 18px 40px -28px rgb(23 25 29/.4);transition:translate .25s var(--bk-ease),box-shadow .25s var(--bk-ease)}
.bk .rg-karte:hover{translate:0 -4px;box-shadow:0 2px 4px rgb(23 25 29/.06),0 28px 54px -28px rgb(23 25 29/.5)}
.bk .rg-karte[hidden]{display:none}
.bk .rg-bild{inline-size:100%;aspect-ratio:16/10;object-fit:cover;transition:scale .5s var(--bk-ease)}
.bk .rg-karte:hover .rg-bild{scale:1.04}
.bk .rg-text{display:grid;align-content:start;gap:.5rem;padding:1.35rem 1.5rem 1.5rem}
.bk .rg-themen{margin:0;color:var(--bk-red-text);font-size:.8125rem;font-weight:600}
.bk .rg-titel{margin:0;color:var(--bk-ink);font:var(--bk-titel-w) 1.2rem/1.3 var(--bk-f-titel);letter-spacing:calc(var(--bk-titel-ls)/2)}
.bk .rg-titel a{color:inherit;text-decoration:none}
.bk .rg-titel a::after{content:"";position:absolute;inset:0}
.bk .rg-karte:hover .rg-titel{color:var(--bk-red-text)}
.bk .rg-auszug{margin:0;color:var(--bk-muted);font-size:.9375rem}
.bk .rg-fuss{display:flex;justify-content:space-between;gap:1rem;margin-top:.5rem;padding-top:.8rem;border-top:1px solid var(--bk-line);color:var(--bk-muted);font-size:.875rem}
.bk .rg-mehr{color:var(--bk-red-text);font-weight:600}
@media (max-width:999.98px){.bk .rg-u .rg-raster{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599.98px){.bk .rg-u .rg-raster{grid-template-columns:minmax(0,1fr)}}
/* Hero-Unterzeile unter dem Keyword dunkler (besser lesbar, Wunsch des Nutzers 01.11.2026) */
.he-unter,.bk-h1 .he-unter{color:var(--bk-text);font-weight:500}
html[data-farbe="dunkel"] .he-unter{color:var(--bk-on-dark-2)}
/* Formular-Kopf: Vorzeile, Unterzeile und eigene Vorteile der Seite in der linken Spalte */
.he-a.he-form .he-vor,.he-a.he-form .he-vorteile,.he-a.he-form .he-meta{grid-column:1}
.he-a.he-form .he-vorteile{margin-top:1.25rem;padding-top:1.25rem}
@media (min-width:1000px){.he-a.he-form .he-vorteile{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* ===================== 18. Linkgruppen, Inhalt nach Kacheln, Zeitmarken (01.11.2026) ===================== */
.bk-linkgruppen{display:grid;margin:1.25rem 0;border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line)}
.bk-lg{display:grid;grid-template-columns:minmax(0,11rem) minmax(0,1fr);gap:.5rem 1.5rem;align-items:start;padding:1rem 1.25rem}
.bk-lg+.bk-lg{border-top:1px solid var(--bk-line)}
.bk-lg-titel{margin:.45rem 0 0;color:var(--bk-ink);font:var(--bk-titel-w) 1rem/1.3 var(--bk-f-titel)}
.tx-inhalt .bk-lg-titel{max-width:none}
.lg-chips a{min-height:38px;padding:.25rem .85rem}
@media (max-width:599.98px){.bk-lg{grid-template-columns:minmax(0,1fr)}.bk-lg-titel{margin:0}}
.lu-a-nach{max-width:56rem;margin:clamp(1.75rem,3vw,2.5rem) auto 0}
/* Preiskacheln unter den Karten (Über uns): volle Inhaltsbreite wie die Karten darüber, Text darunter in Lesebreite
   (04.11.2026, Rückmeldung Nutzer: vier schmale Kacheln mittig wirkten gequetscht) */
.lu-a-nach:has(>.ae-preise){max-width:none}
.lu-a-nach:has(>.ae-preise)>:not(.ae-preise){max-width:56rem;margin-inline:auto}
.lu-a-nach>p{text-align:center;color:var(--bk-text)}
.lu-a-nach .pr-tab{max-width:34rem;margin:1rem auto 0}
.bk-zeitmarke{display:inline-flex;align-self:start;justify-self:start;margin:0 0 .6rem;padding:.3em .85em;border-radius:999px;background:var(--bk-tint);color:var(--bk-red-text);font-size:.8125rem;font-weight:600}
.tx-a-kopf .bk-zeitmarke{margin:0}
.fo-a-nach{max-width:46rem;margin:1rem auto 0;text-align:center;color:var(--bk-muted);font-size:.95rem}

/* ===== 19 Karten Gemeinde/Kanton (01.11.2026): Leistungen in der Seitenspalte, Kanton ohne Gemeindeseiten ===== */
.bk .alp-umgebung-liste .alp-umgebung-h3-2{margin-top:.5rem;padding-top:1.1rem;border-top:1px solid var(--bk-line);font-size:1.05rem}
.bk .alp-leistungen{display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none}
.bk .alp-leistungen a{display:inline-flex;align-items:center;min-height:38px;padding:.25rem .85rem;border:1px solid var(--bk-line);border-radius:999px;background:var(--bk-card);color:var(--bk-ink);font-size:.875rem;font-weight:500;text-decoration:none;transition:border-color .2s,color .2s}
.bk .alp-leistungen a:hover{border-color:var(--bk-red);color:var(--bk-red-text)}
.bk .alp-umgebung-liste .alp-umgebung-hinweis{padding-top:.25rem}
.bk .alp-kanton-text{margin:0;color:var(--bk-text);line-height:1.65}
.bk .alp-kanton-knoepfe{display:flex;flex-wrap:wrap;gap:.6rem;margin:0}
.bk .alp-kanton:not(:has(.alp-kanton-suche)) .alp-umgebung-liste{justify-content:center}
.bk .alp-kanton:not(:has(.alp-kanton-suche)) .alp-umgebung-hinweis{margin-top:0}

/* ===== 20 Sektionsfarben (Wunsch des Nutzers 01.11.2026): weniger Grau, verwandte Töne im Wechsel =====
   Getönte Abschnitte wechseln ab zwischen warmem Sand (passt zu Graphit und Rot) und hellem Logo-Blau (passt zu den
   Symbolen). Im getönten Abschnitt nehmen Flächen (bg2/bg3) und Linien denselben Ton an. Nur helle Farbwelten. */
html:not([data-farbe="nacht"]):not([data-farbe="dunkel"]){--bk-sand:#f7f2ec;--bk-sand-2:#efe7dd;--bk-sand-3:#e6dccf;--bk-sand-linie:#e7ded2;--bk-eis:#edf2f9;--bk-eis-2:#e2eaf5;--bk-eis-3:#d5e0ef;--bk-eis-linie:#d9e3f0}
html[data-farbe="graphit"]{--bk-bg2:#f5f3f0;--bk-bg3:#ebe7e2}
html:not([data-farbe="nacht"]):not([data-farbe="dunkel"]) .bk-sec.bk-tint{background:var(--bk-flaeche,var(--bk-bg2))}
html:not([data-farbe="nacht"]):not([data-farbe="dunkel"]) #brx-content>.bk-sec.bk-tint:is(:nth-of-type(4n+3),:nth-of-type(4n)){--bk-flaeche:var(--bk-sand);--bk-bg2:var(--bk-sand-2);--bk-bg3:var(--bk-sand-3);--bk-line:var(--bk-sand-linie)}
html:not([data-farbe="nacht"]):not([data-farbe="dunkel"]) #brx-content>.bk-sec.bk-tint:is(:nth-of-type(4n+1),:nth-of-type(4n+2)){--bk-flaeche:var(--bk-eis);--bk-bg2:var(--bk-eis-2);--bk-bg3:var(--bk-eis-3);--bk-line:var(--bk-eis-linie);--bk-icon-tint:#fff}
html:not([data-farbe="nacht"]):not([data-farbe="dunkel"]) .bk-sec.vt-b{background:var(--bk-eis);border-color:var(--bk-eis-linie)}
html:not([data-farbe="nacht"]):not([data-farbe="dunkel"]) .kz-c-info{background:var(--bk-sand);border-bottom-color:var(--bk-sand-linie)}
.bk .alp-umgebung-liste:has(.alp-nachbarn) .alp-umgebung-hinweis{margin:0;padding:0}
/* Panoramabild aus dem Original (Kachel-Abschnitt ohne folgenden Text) */
.bk-panorama{margin:clamp(2rem,4vw,3.25rem) 0 0;border-radius:var(--bk-r-l);overflow:hidden;background:var(--bk-bg2)}
.bk-panorama img{display:block;inline-size:100%;block-size:auto;aspect-ratio:21/8;object-fit:cover}
@media (max-width:699.98px){.bk-panorama img{aspect-ratio:16/9}}
.bk-kopf-mitte .bk-zeitmarke{margin-inline:auto}
:is(.tb-b-text,.eg-k-box,.tx-k-karte)>.bk-zeitmarke,:is(.tb-b-text,.eg-k-box>div,.tx-k-karte)>.bk-zeitmarke{margin-bottom:.75rem}

/* ===== 21 Bildergalerie (01.11.2026): mehrere Bilder eines Abschnitts als Raster über die volle Breite ===== */
.bk-galerie{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.6rem,1.2vw,1rem);margin-top:clamp(2rem,4vw,3rem)}
.bk-galerie figure{margin:0;border-radius:var(--bk-r-m);overflow:hidden;background:var(--bk-bg2)}
.bk-galerie img{display:block;inline-size:100%;block-size:100%;aspect-ratio:4/3;object-fit:cover}
.bk-galerie-2,.bk-galerie-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.bk-galerie-6 figure:first-child{grid-column:span 2;grid-row:span 2}
.bk-galerie-5 figure:first-child{grid-row:span 2}
:is(.bk-galerie-5,.bk-galerie-6) figure:first-child img{aspect-ratio:auto}
@media (max-width:699.98px){
  .bk-galerie,.bk-galerie-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bk-galerie:not(.bk-galerie-2) figure:first-child{grid-column:span 2;grid-row:auto}
  .bk-galerie:not(.bk-galerie-2) figure:first-child img{aspect-ratio:16/9}
  :is(.bk-galerie-4,.bk-galerie-6) figure:last-child{grid-column:span 2}
  :is(.bk-galerie-4,.bk-galerie-6) figure:last-child img{aspect-ratio:16/9}
}

/* ===== 22 Team-Preiskarten im Karten-Stil (Wunsch des Nutzers 01.11.2026) =====
   Jede Karte mit eigenem zarten Ton (Sand, Blau, Rosé, Stein); in getönten Abschnitten weiss. Grosser Preis, kleines
   «CHF», Pille «pro Stunde», Häkchenliste, dunkler runder Knopf mit Pfeil. */
.bk .pr-k-raster{gap:clamp(.75rem,1.4vw,1.25rem);align-items:stretch}
.bk .pr-k-raster .pr-k-karte{--pk-flaeche:var(--bk-sand);display:flex;flex-direction:column;gap:0;padding:clamp(1.4rem,2vw,1.85rem);border:0;border-radius:var(--bk-r-l);background:var(--pk-flaeche);color:var(--bk-ink);box-shadow:none;transition:translate .3s var(--bk-ease),box-shadow .3s var(--bk-ease)}
.bk .pr-k-raster .pr-k-karte:nth-child(4n+2){--pk-flaeche:var(--bk-eis)}
.bk .pr-k-raster .pr-k-karte:nth-child(4n+3){--pk-flaeche:#fbefed}
.bk .pr-k-raster .pr-k-karte:nth-child(4n+4){--pk-flaeche:#f0eff9}
.bk .bk-sec.bk-tint .pr-k-raster .pr-k-karte{--pk-flaeche:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line)}
.bk .pr-k-raster .pr-k-karte:hover{translate:0 -4px;box-shadow:0 28px 50px -32px rgb(23 25 29/.42)}
.bk .pr-k-raster .pr-k-kopf{display:grid;gap:.15rem}
.bk .pr-k-raster .pr-k-symbole{display:flex;align-items:center;gap:.7rem;margin-bottom:1rem}
.bk .pr-k-raster .pr-k-titel{display:block;margin:0;color:var(--bk-ink);font:var(--bk-titel-w) 1.25rem/1.25 var(--bk-f-titel);letter-spacing:-.02em}
.bk .pr-k-raster .pr-k-unter{margin:0;color:var(--bk-muted);font-size:.9375rem}
.bk .pr-k-raster .pr-k-preis{display:flex;align-items:flex-start;gap:.3rem;margin:1.4rem 0 0;color:var(--bk-ink);font:var(--bk-titel-w) clamp(2.5rem,1.8rem + 1.5vw,3.25rem)/1 var(--bk-f-titel);letter-spacing:-.045em;font-variant-numeric:tabular-nums;white-space:nowrap}
.bk .pr-k-raster .pr-k-chf{margin-top:.3em;font-size:.34em;font-weight:600;letter-spacing:0}
.bk .pr-k-raster .pr-k-takt{margin:.8rem 0 0}
.bk .pr-k-raster .pr-k-takt span{display:inline-flex;padding:.32em .85em;border-radius:999px;background:rgb(23 25 29/.07);color:var(--bk-ink);font-size:.8125rem;font-weight:600}
.bk .bk-sec.bk-tint .pr-k-raster .pr-k-takt span{background:var(--bk-bg2)}
.bk .pr-k-raster .pr-k-liste{display:grid;gap:.55rem;margin:1.3rem 0 1.6rem;padding:1.2rem 0 0;border-top:1px solid rgb(23 25 29/.1);list-style:none}
.bk .pr-k-raster .pr-k-liste li{display:flex;align-items:flex-start;gap:.55rem;color:var(--bk-text);font-size:.9375rem;line-height:1.45}
.bk .pr-k-raster .pr-k-liste svg{flex:none;inline-size:1.15rem;block-size:1.15rem;margin-top:.08rem;color:var(--bk-red-text);stroke-width:2.4}
.bk .pr-k-raster .pr-k-knopf{display:inline-flex;align-self:flex-start;align-items:center;gap:.65rem;margin-top:auto;padding:.4rem 1.15rem .4rem .4rem;border-radius:999px;background:var(--bk-dark);color:#fff;font-size:.9375rem;font-weight:600;text-decoration:none;transition:background-color .2s}
.bk .pr-k-raster .pr-k-knopf-ico{display:grid;place-items:center;inline-size:2.1rem;block-size:2.1rem;border-radius:50%;background:rgb(255 255 255/.15)}
.bk .pr-k-raster .pr-k-knopf-ico svg{inline-size:1rem;block-size:1rem;color:#fff;transition:rotate .25s var(--bk-ease)}
.bk .pr-k-raster .pr-k-knopf:hover{background:var(--bk-red)}
.bk .pr-k-raster .pr-k-knopf:hover .pr-k-knopf-ico svg{rotate:45deg}
.bk .pr-k-raster .pr-k-knopf:focus-visible{outline:3px solid var(--bk-blue);outline-offset:3px}
@media (prefers-reduced-motion:reduce){.bk .pr-k-raster .pr-k-karte:hover{translate:none}.bk .pr-k-raster .pr-k-knopf:hover .pr-k-knopf-ico svg{rotate:none}}

/* ===== 23 Preislisten als Karten im Karten-Stil (01.11.2026) =====
   Titel, kurzer Text und Liste stehen zusammen in einer Karte. In weissen Abschnitten zarte Töne im Wechsel (Sand, Blau),
   in getönten Abschnitten weiss. Breite Tabellen (3 Spalten) über beide Spalten. */
.bk .pr-listen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.75rem,1.4vw,1.25rem);margin-top:clamp(2rem,4vw,3rem);align-items:start}
.bk .pr-listen-1{grid-template-columns:minmax(0,1fr);max-inline-size:48rem}
.bk .pr-listen .pr-liste{--pl-flaeche:var(--bk-sand);display:flex;flex-direction:column;gap:.85rem;padding:clamp(1.4rem,2vw,1.9rem);border-radius:var(--bk-r-l);background:var(--pl-flaeche)}
.bk .pr-listen .pr-liste:nth-child(even){--pl-flaeche:var(--bk-eis)}
.bk .bk-sec.bk-tint .pr-listen .pr-liste{--pl-flaeche:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line)}
.bk .pr-listen .pr-liste-breit{grid-column:1/-1}
.bk .pr-listen .pr-liste-titel{margin:0;color:var(--bk-ink);font:var(--bk-titel-w) clamp(1.2rem,1rem + .5vw,1.4rem)/1.25 var(--bk-f-titel);letter-spacing:-.02em}
.bk .pr-listen .pr-liste-text p{margin:0;color:var(--bk-text)}
.bk .pr-listen .pr-liste-text p+p{margin-top:.6em}
.bk .pr-listen .pr-liste-tab{display:grid;gap:1.4rem;margin-top:.35rem}
.bk .pr-listen :is(.pr-tab .preisliste,.bk-tabelle-box){padding:0;border-radius:0;background:none;box-shadow:none;overflow:visible}
.bk .pr-listen .pl-tabelle caption{margin-bottom:.5rem;color:var(--bk-muted);font:600 .875rem/1.3 var(--bk-f-text);letter-spacing:0}
.bk .pr-listen .pl-tabelle thead th{border-bottom:1.5px solid rgb(23 25 29/.75)}
.bk .pr-listen .pl-tabelle tbody th,.bk .pr-listen .pl-tabelle td{border-bottom-color:rgb(23 25 29/.09)}
.bk .pr-listen .pl-tabelle td{font-size:1.12rem}
.bk .pr-listen .bk-tabelle th{background:rgb(23 25 29/.05)}
.bk .pr-listen .bk-tabelle td{border-top-color:rgb(23 25 29/.09)}
.bk .pr-listen .bk-tabelle tbody tr:hover{background:rgb(255 255 255/.5)}
.bk .pr-listen .bk-tabelle{border-radius:var(--bk-r-m);overflow:hidden}
@media (max-width:899.98px){.bk .pr-listen{grid-template-columns:minmax(0,1fr)}}
@media (max-width:699.98px){.bk .pr-listen .bk-tabelle tr{background:rgb(255 255 255/.65);box-shadow:none}.bk .pr-listen .bk-tabelle{border-radius:0;overflow:visible}}
.bk .pr-listen{align-items:stretch}
.bk .pr-listen.pr-listen-n1:not(.pr-listen-1) .pr-liste:not(.pr-liste-breit){grid-column:1/-1}
/* Ungerade Anzahl: die letzte Karte über die volle Breite, zwei Listen darin nebeneinander, eine einzelne Liste begrenzt */
.bk .pr-listen.pr-listen-n3 .pr-liste:not(.pr-liste-breit):last-child{grid-column:1/-1}
@media (min-width:900px){.bk .pr-listen .pr-liste:is(.pr-liste-breit,:last-child) .pr-liste-tab:has(>.pr-tab+.pr-tab){grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(1.5rem,3vw,3rem);align-items:start}}
.bk .pr-listen.pr-listen-n3 .pr-liste:last-child .pr-liste-tab>.pr-tab:only-child,.bk .pr-listen.pr-listen-n3 .pr-liste:last-child .pr-liste-text{max-inline-size:44rem}

/* ===== 24 Möbellift-Pakete im Karten-Stil (wie die Team-Preiskarten, Wunsch des Nutzers 01.11.2026) ===== */
.bk .ml-pakete-box .ml-pakete{gap:clamp(.75rem,1.4vw,1.25rem);align-items:stretch}
.bk .ml-pakete-box .ml-karte{--pk-flaeche:var(--bk-sand);display:flex;flex-direction:column;gap:0;padding:clamp(1.4rem,2vw,1.9rem);border:0;border-radius:var(--bk-r-l);background:var(--pk-flaeche);box-shadow:none;transition:translate .3s var(--bk-ease),box-shadow .3s var(--bk-ease)}
.bk .ml-pakete-box .ml-karte:nth-child(2){--pk-flaeche:var(--bk-eis)}
.bk .ml-pakete-box .ml-karte:nth-child(3){--pk-flaeche:#fbefed}
.bk .bk-sec.bk-tint .ml-pakete-box .ml-karte{--pk-flaeche:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line)}
.bk .ml-pakete-box .ml-karte:hover{translate:0 -4px;box-shadow:0 28px 50px -32px rgb(23 25 29/.42)}
.bk .ml-pakete-box .ml-kopf{display:grid;gap:.15rem}
.bk .ml-pakete-box .ml-titel{margin:0;font:var(--bk-titel-w) 1.3rem/1.25 var(--bk-f-titel);letter-spacing:-.02em}
.bk .ml-pakete-box .ml-unter{margin:0;color:var(--bk-muted);font-size:.9375rem}
.bk .ml-pakete-box .ml-preis{display:flex;align-items:flex-start;gap:.3rem;min-block-size:3.25rem;margin:1.3rem 0 0;color:var(--bk-ink)}
.bk .ml-pakete-box .ml-preis small{margin-top:.35rem;font:600 1.05rem/1 var(--bk-f-titel)}
.bk .ml-pakete-box .ml-preis-zahl{font:var(--bk-titel-w) clamp(2.5rem,1.8rem + 1.5vw,3.25rem)/1 var(--bk-f-titel);letter-spacing:-.045em;font-variant-numeric:tabular-nums}
.bk .ml-pakete-box .ml-preis-text{align-self:center;color:var(--bk-ink);font:var(--bk-titel-w) clamp(1.6rem,1.2rem + 1vw,2.1rem)/1.1 var(--bk-f-titel);letter-spacing:-.03em}
.bk .ml-pakete-box .ml-merkmale{display:grid;gap:.55rem;margin:1.3rem 0 1.6rem;padding:1.2rem 0 0;border-top:1px solid rgb(23 25 29/.1);list-style:none}
.bk .ml-pakete-box .ml-merkmale li{display:flex;align-items:flex-start;gap:.55rem;padding:0;color:var(--bk-text);font-size:.9375rem;line-height:1.45}
.bk .ml-pakete-box .ml-merkmale li::before{content:none}
.bk .ml-pakete-box .ml-merkmale svg{flex:none;inline-size:1.15rem;block-size:1.15rem;margin-top:.08rem;color:var(--bk-red-text);stroke-width:2.4}
.bk .ml-pakete-box .ml-knopf{display:inline-flex;align-self:flex-start;align-items:center;gap:.65rem;margin-top:auto;padding:.4rem 1.15rem .4rem .4rem;border-radius:999px;background:var(--bk-dark);color:#fff;font-size:.9375rem;font-weight:600;text-decoration:none;transition:background-color .2s}
.bk .ml-pakete-box .ml-knopf-ico{display:grid;place-items:center;inline-size:2.1rem;block-size:2.1rem;border-radius:50%;background:rgb(255 255 255/.15)}
.bk .ml-pakete-box .ml-knopf-ico svg{inline-size:1rem;block-size:1rem;transition:rotate .25s var(--bk-ease)}
.bk .ml-pakete-box .ml-knopf:hover{background:var(--bk-red)}
.bk .ml-pakete-box .ml-knopf:hover .ml-knopf-ico svg{rotate:45deg}
.bk .ml-pakete-box .ml-knopf:focus-visible{outline:3px solid var(--bk-blue);outline-offset:3px}
.bk .ml-pakete-box .ml-stunde{margin:1rem 0 0;color:var(--bk-muted);font-size:.9375rem}
@media (prefers-reduced-motion:reduce){.bk .ml-pakete-box .ml-karte:hover{translate:none}}

/* ===== 25 Kleine Originalbilder (01.11.2026): nie stark hochziehen, sonst unscharf =====
   Der Umwandler setzt bk-klein-1 (≤260 px), -2 (≤460 px), -3 (≤660 px) nach der Breite der Originaldatei. */
img.bk-klein-1{max-inline-size:min(100%,260px)}
img.bk-klein-2{max-inline-size:min(100%,560px)}
img.bk-klein-3{max-inline-size:min(100%,820px)}
.tb-b-box:has(.tb-b-bild img:is(.bk-klein-1,.bk-klein-2)){grid-template-columns:auto minmax(0,1fr)}
.tb-b-box.tb-b-rechts:has(.tb-b-bild img:is(.bk-klein-1,.bk-klein-2)){grid-template-columns:minmax(0,1fr) auto}
.tb-b-bild img.bk-klein-1{inline-size:260px;aspect-ratio:auto}
.tb-b-bild img.bk-klein-2{inline-size:min(100%,520px);aspect-ratio:auto}
.he-a-bild:not(.he-a-doppel):has(img:is(.bk-klein-1,.bk-klein-2,.bk-klein-3)){display:grid;place-items:center;padding:clamp(1.5rem,3vw,3rem);border-radius:var(--bk-r-l) 0 0 var(--bk-r-l);background:var(--bk-sand)}
.he-a-bild:not(.he-a-doppel) img:is(.bk-klein-1,.bk-klein-2,.bk-klein-3){position:relative;inset:auto;inline-size:100%;block-size:auto;border-radius:var(--bk-r-l);box-shadow:0 30px 60px -40px rgb(23 25 29/.45)}
@media (max-width:899.98px){.tb-b-box:has(.tb-b-bild img:is(.bk-klein-1,.bk-klein-2)),.tb-b-box.tb-b-rechts:has(.tb-b-bild img:is(.bk-klein-1,.bk-klein-2)){grid-template-columns:minmax(0,1fr)}.tb-b-bild:has(img:is(.bk-klein-1,.bk-klein-2)){justify-self:center}.he-a-bild:has(img:is(.bk-klein-1,.bk-klein-2,.bk-klein-3)){border-radius:0}}
/* Galerie als dichtes Raster mit festen Reihen: Querformat eine Reihe, Hochformat zwei, grosses Bild 2×2 */
.bk-galerie{grid-auto-rows:clamp(9rem,15vw,14rem);grid-auto-flow:dense}
.bk-galerie img,:is(.bk-galerie-5,.bk-galerie-6) figure:first-child img{aspect-ratio:auto;block-size:100%}
.bk-galerie figure.bk-hoch{grid-row:span 2}
@media (max-width:699.98px){.bk-galerie{grid-auto-rows:clamp(8rem,38vw,12rem)}.bk-galerie:not(.bk-galerie-2) figure:first-child img,:is(.bk-galerie-4,.bk-galerie-6) figure:last-child img{aspect-ratio:auto}}
/* Hero mit sehr kleinem Originalfoto: grosses Fahrzeugbild, Original als leicht gedrehte Fotokarte unten rechts */
.he-a-doppel .he-a-einsatz{position:absolute;right:clamp(1rem,3vw,2.5rem);bottom:clamp(1rem,3vw,2.5rem);z-index:2;inline-size:min(42%,280px);padding:.55rem;border-radius:var(--bk-r-m);background:#fff;box-shadow:0 30px 60px -28px rgb(23 25 29/.6);rotate:2deg}
.he-a-doppel .he-a-einsatz img{position:static;display:block;inline-size:100%;max-inline-size:none;block-size:auto;border-radius:calc(var(--bk-r-m) - .45rem)}
@media (max-width:899.98px){.he-a-doppel .he-a-einsatz{inline-size:min(38%,190px);padding:.4rem}}
@media (prefers-reduced-motion:reduce){.he-a-doppel .he-a-einsatz{rotate:none}}
/* Hochformat-Foto im Text: schmaler und im Hochformat statt quer beschnitten */
.tx-bild.bk-hoch:not(.bk-galerie>*){max-inline-size:min(100%,26rem)}
.tx-bild.bk-hoch:not(.bk-galerie>*) img{aspect-ratio:4/5}
@media (max-width:599.98px){.bk .pr-listen .pr-liste{padding:1.3rem 1.1rem}.bk .pr-listen .pl-tabelle{table-layout:auto}.bk .pr-listen .pl-tabelle tbody th{font-size:.9375rem;padding-right:.6rem}.bk .pr-listen .pl-tabelle td{font-size:1rem}}
.bk .pr-listen .pl-tabelle :is(td,thead th:last-child){inline-size:1%}
@media (max-width:599.98px){.bk .pr-listen .pl-tabelle td{white-space:normal;min-inline-size:6.5rem}}
/* Text und eine einzelne Preiskarte nebeneinander */
.bk .pr-zwei{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(1.5rem,4vw,4rem);align-items:start;margin-top:clamp(2rem,4vw,3rem)}
.bk .pr-zwei .pr-text-oben{margin:0}
.bk .pr-zwei .pr-listen{margin:0;max-inline-size:none}
.bk .pr-text-unten{max-inline-size:46em;margin-top:clamp(1.5rem,3vw,2.25rem)}
@media (max-width:899.98px){.bk .pr-zwei{grid-template-columns:minmax(0,1fr)}}
/* Galerie als Mauerwerk (ersetzt das Raster oben): jedes Foto ganz, ohne Zuschnitt und ohne Lücken */
.bk-galerie{display:block;columns:3 16rem;column-gap:clamp(.6rem,1.2vw,1rem)}
.bk-galerie figure,.bk-galerie figure.bk-hoch,.bk-galerie figure:first-child,.bk-galerie figure:last-child{display:block;break-inside:avoid;margin:0 0 clamp(.6rem,1.2vw,1rem);grid-column:auto;grid-row:auto}
.bk-galerie img,.bk-galerie figure:first-child img,.bk-galerie figure:last-child img{block-size:auto;aspect-ratio:auto;object-fit:initial}
@media (max-width:699.98px){.bk-galerie{columns:2}}
/* Startseite/Privatumzug: Reinigungs-Preisliste als Karte wie die übrigen Preislisten */
.bk .pr-c-spalten>div:first-child{padding:clamp(1.4rem,2vw,1.9rem);border-radius:var(--bk-r-l);background:var(--bk-sand)}
.bk .bk-sec.bk-tint .pr-c-spalten>div:first-child{background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line)}
.bk .pr-c-spalten>div:first-child>h3{margin-top:0}
/* Handy: Hochformat-Bild im Hero quadratisch statt als schmaler Querstreifen */
@media (max-width:899.98px){.he-a-bild.he-a-hoch{aspect-ratio:1/1}}
@media (max-width:899.98px){.he-a-bild.he-a-panorama{aspect-ratio:16/9}}
/* Formular im Hero: Titel und Einleitung oben in der Karte */
.fo-a-kopf{display:grid;gap:.5rem;max-inline-size:46rem;margin:0 0 clamp(1.25rem,2.5vw,1.75rem)}
.fo-a-titel{margin:0;color:var(--bk-ink);font:var(--bk-titel-w) clamp(1.4rem,1.1rem + .9vw,1.85rem)/1.2 var(--bk-f-titel);letter-spacing:-.03em}
.fo-a-text{margin:0;color:var(--bk-text);line-height:1.6}
/* Ratgeber-Karten: viele Beitragsbilder sind Hochformat – Bild etwas höher und Ausschnitt eher oben, damit Personen nicht abgeschnitten werden */
.bk .rg-bild{aspect-ratio:4/3;object-position:50% 38%}

/* ===== 26 Cookie-Banner im neuen Design (01.11.2026) =====
   Gleicher Aufbau wie bisher (Titel, Text, «OK», «Einstellungen», «Datenschutz»), aber Farben und Schriften des Baukastens:
   dunkler Graphit-Knopf, Symbol im Logo-Blau auf hellem Blau, Schrift nie blau, Links mit rotem Unterstrich. */
.bk .alp-cc{inline-size:min(760px,calc(100% - 2 * var(--bk-gut)));inset-block-end:20px;gap:.75rem;padding:clamp(1.25rem,2.5vw,1.6rem) clamp(1.25rem,3vw,1.9rem);border:0;border-radius:var(--bk-r-l);background:var(--bk-card);color:var(--bk-text);font-family:var(--bk-f-text);box-shadow:0 0 0 1px var(--bk-line),0 30px 70px -30px rgb(23 25 29/.45)}
.bk .alp-cc-icon{inline-size:44px;block-size:44px;border-radius:12px;background:var(--bk-eis);color:var(--bk-icon)}
.bk .alp-cc-titel{color:var(--bk-ink);font:var(--bk-titel-w) 1.15rem/1.25 var(--bk-f-titel);letter-spacing:-.02em}
.bk .alp-cc-text{color:var(--bk-text);font-size:.9375rem;line-height:1.6}
.bk :is(.alp-cc-btn){min-block-size:48px;padding:0 1.5rem;border:0;border-radius:999px;background:var(--bk-dark);color:#fff;font:600 .9375rem/1.2 var(--bk-f-text);transition:background-color .2s var(--bk-ease),translate .2s var(--bk-ease)}
.bk .alp-cc-btn:hover{background:var(--bk-red);translate:0 -1px}
.bk .alp-cc-link{color:var(--bk-ink);font:600 .875rem/1.2 var(--bk-f-text);text-decoration:underline;text-decoration-color:rgb(211 61 68/.5);text-decoration-thickness:1.5px;text-underline-offset:.22em}
.bk .alp-cc-link:hover{color:var(--bk-red-text);text-decoration-color:currentColor}
.bk .alp-cc :is(button,a):focus-visible,.bk .alp-cc-modal :is(button,a,input):focus-visible,.bk .alp-cc-titel:focus-visible{outline:3px solid var(--bk-blue);outline-offset:3px}
/* Einstellungen */
.bk .alp-cc-modal{inline-size:min(540px,calc(100% - 2 * var(--bk-gut)));border-radius:var(--bk-r-l);background:var(--bk-card);color:var(--bk-text);font-family:var(--bk-f-text);box-shadow:0 40px 90px -30px rgb(23 25 29/.55)}
.bk .alp-cc-modal::backdrop{background:rgb(29 28 27/.5);backdrop-filter:blur(3px)}
.bk .alp-cc-m-kopf{padding:1.1rem 1.5rem;border-block-end:1px solid var(--bk-line)}
.bk .alp-cc-m-titel{color:var(--bk-ink);font:var(--bk-titel-w) 1.3rem/1.25 var(--bk-f-titel);letter-spacing:-.02em}
.bk .alp-cc-zu{border:0;border-radius:999px;background:var(--bk-bg2);color:var(--bk-ink)}
.bk .alp-cc-zu:hover{background:var(--bk-bg3)}
.bk .alp-cc-m-inhalt{padding:1.5rem;gap:.75rem}
.bk .alp-cc-m-intro{color:var(--bk-text);font-size:.9375rem}
.bk .alp-cc-kat{padding:1rem 1.1rem;border:0;border-radius:var(--bk-r-m);background:var(--bk-sand)}
.bk .alp-cc-kat-wahl{background:var(--bk-eis)}
.bk .alp-cc-kat-wahl:hover{background:var(--bk-eis-2);border-color:transparent}
.bk .alp-cc-kat-text{color:var(--bk-text);font-size:.875rem}
.bk .alp-cc-kat-text strong{color:var(--bk-ink);font:var(--bk-titel-w) 1rem/1.3 var(--bk-f-titel)}
.bk .alp-cc-fest{background:var(--bk-card);color:var(--bk-ink)}
.bk .alp-cc-schiene{background:#a9a6a1}
.bk .alp-cc-schalter input:checked+.alp-cc-schiene{background:var(--bk-dark)}
.bk .alp-cc-recht a{color:var(--bk-ink);text-decoration-color:rgb(211 61 68/.5)}
.bk .alp-cc-m-fuss{padding:1rem 1.5rem 1.4rem;border-block-start:1px solid var(--bk-line);background:var(--bk-card)}
@media (max-width:759.98px){
  .bk .alp-cc{inline-size:100%;inset-block-end:0;border-radius:var(--bk-r-l) var(--bk-r-l) 0 0;padding:1.1rem var(--bk-gut) calc(1.1rem + env(safe-area-inset-bottom));box-shadow:0 -20px 50px -25px rgb(23 25 29/.45)}
  body.bk:has(.alp-cc:not([hidden])) .bk-mbar{display:none}
}

/* ===== 27 Social-Media-Symbole in der Fusszeile (Links wie auf der Live-Seite, 01.11.2026) ===== */
.bk .fuss-social{display:flex;flex-wrap:wrap;gap:.55rem;margin:1.25rem 0 0;padding:0;list-style:none}
.bk .fuss-social a{display:grid;place-items:center;inline-size:44px;block-size:44px;border-radius:999px;border:1px solid rgb(255 255 255/.22);color:#fff;text-decoration:none;transition:background-color .2s var(--bk-ease),border-color .2s var(--bk-ease),translate .2s var(--bk-ease)}
.bk .fuss-social a:hover{background:var(--bk-red);border-color:var(--bk-red);translate:0 -2px}
.bk .fuss-social a:focus-visible{outline:3px solid #fff;outline-offset:3px}
.bk .fuss-social svg{inline-size:20px;block-size:20px}
@media (prefers-reduced-motion:reduce){.bk .fuss-social a:hover{translate:none}}

/* ===== 28 Handy-Menü als Off-Canvas über die volle Breite (Wunsch des Nutzers 01.11.2026) =====
   Unter dem Kopf bis zum unteren Rand, eigenes Scrollen, Seite dahinter steht still; unten Kontakt und Social Media. */
@media (max-width:1239.98px){
  body.bk .kz-mobil{position:fixed;inset:var(--bk-menu-oben,72px) 0 0 0;transition:inset .2s var(--bk-ease);z-index:60;max-block-size:none;align-content:start;overflow-y:auto;overscroll-behavior:contain;padding:1.25rem var(--bk-gut) calc(2rem + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--bk-line);background:var(--bk-card)}
  html.bk-menu-offen{overflow:hidden}
  html.bk-menu-offen .bk-mbar{display:none}
  body.bk .kz-mobil nav{max-inline-size:44rem}
  .bk .kz-mobil .bk-btns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;max-inline-size:44rem}
  .bk .kz-mobil .bk-btns .bk-btn{justify-content:center}
  .bk .kz-m-fuss{display:grid;gap:.6rem;max-inline-size:44rem;margin-top:.75rem;padding:1.1rem 1.2rem;border-radius:var(--bk-r-m);background:var(--bk-sand)}
  .bk .kz-m-kontakt{display:flex;flex-wrap:wrap;gap:.35rem 1.25rem;margin:0}
  .bk .kz-m-kontakt a{color:var(--bk-ink);font-weight:600;text-decoration:underline;text-decoration-color:rgb(211 61 68/.5);text-underline-offset:.22em}
  .bk .kz-m-zeiten{margin:0;color:var(--bk-muted);font-size:.9375rem}
  .bk .kz-m-social{margin-top:.25rem}
  .bk .kz-m-social a{border-color:rgb(23 25 29/.18);color:var(--bk-ink);background:var(--bk-card)}
  .bk .kz-m-social a:hover{color:#fff}
}
@media (max-width:519.98px){.bk .kz-mobil .bk-btns{grid-template-columns:minmax(0,1fr)}}
@media (max-width:1239.98px) and (prefers-reduced-motion:no-preference){body.bk .kz-mobil:not([hidden]){animation:bk-menu-ein .28s var(--bk-ease) both}@keyframes bk-menu-ein{from{opacity:0;translate:28px 0}}}
/* Menüknopf zeigt beim offenen Menü ein «X» zum Schliessen */
.bk .kz-menu[aria-expanded="true"] svg{display:none}
.bk .kz-menu[aria-expanded="true"]::after{content:"";inline-size:20px;block-size:20px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center/contain no-repeat}

/* ===== 29 Kontaktzeilen mit Symbolen, WhatsApp auch bei den Social-Media-Symbolen (01.11.2026) ===== */
.bk .fz-kontakt{display:grid;justify-items:start;gap:.5rem}
.bk .fz-kontakt a{display:inline-flex;align-items:center;gap:.6rem}
.bk .fz-kontakt svg{flex:none;inline-size:18px;block-size:18px;color:var(--bk-icon-dunkel)}
.bk .kz-m-kontakt{display:grid;justify-items:start;gap:.55rem}
.bk .kz-m-kontakt a{display:inline-flex;align-items:center;gap:.6rem}
.bk .kz-m-kontakt svg{flex:none;inline-size:18px;block-size:18px;color:var(--bk-icon)}
.bk .fuss-social .bk-ico,.bk .fuss-social svg{inline-size:20px;block-size:20px}

/* ===== 30 Infozeile oben (Wunsch des Nutzers 01.11.2026): links nur Standort-Symbol und Kantone, rechts Telefon und E-Mail ===== */
.kz-orte>.bk-sr{margin:0}
.kz-orte svg{margin-right:.15rem}
.kz-c-info p.kz-info-rechts{gap:1.25rem}
.kz-info-kontakt{display:inline-flex;align-items:center;gap:.45rem;color:var(--bk-ink);font-weight:500;text-decoration:none;transition:color .2s}
.kz-info-kontakt svg{inline-size:1rem;block-size:1rem;color:var(--bk-icon)}
.kz-info-kontakt:hover{color:var(--bk-red-text)}

/* ===== 31 Sicherheitsnetz für Symbole im Text (01.11.2026) =====
   Inline-SVGs aus übernommenen Texten (z. B. «Lieber direkt sprechen?» mit Telefon/WhatsApp) haben keine eigene Grösse und
   würden sonst die ganze Breite füllen. Jedes SVG direkt in Text, Link oder Knopf ohne width-Attribut wird textgross. */
.bk #brx-content :is(p,li,a,span,button,dd,dt,td,th,label,summary,b,strong)>svg:not([width]){inline-size:1.15em;block-size:1.15em;flex:none;vertical-align:-.18em}
/* Kontaktzeile unter dem Formular: Frage, Telefon und WhatsApp als ruhige Reihe, Zeiten darunter */
.bk .fo-a-kontakt{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem 1rem;margin:1.25rem auto 0;color:var(--bk-muted);font-size:.9375rem;text-align:center}
.bk .fo-a-kontakt .ok-frage{color:var(--bk-ink);font-weight:600}
.bk .fo-a-kontakt :is(.ok-tel,.ok-wa){display:inline-flex;align-items:center;gap:.5rem;min-height:44px;padding:.35rem 1rem;border-radius:999px;background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line);color:var(--bk-ink);font-weight:600;text-decoration:none;transition:box-shadow .2s,color .2s}
.bk .fo-a-kontakt :is(.ok-tel,.ok-wa):hover{box-shadow:0 0 0 1.5px var(--bk-red);color:var(--bk-red-text)}
.bk .fo-a-kontakt :is(.ok-tel,.ok-wa) svg{inline-size:18px;block-size:18px;color:var(--bk-icon)}
.bk .fo-a-kontakt .ok-zeiten{flex-basis:100%;font-size:.875rem}

/* ===== 32 Fusszeile in drei Stufen (Wunsch des Nutzers 01.11.2026) =====
   Oben über die ganze Breite: Logo und Text · Kontakt und Adresse · Google-Bewertung und Social Media. Darunter die vier
   Link-Spalten, ganz unten Copyright und Rechtliches. */
.fz-a .fz-oben{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) auto;gap:clamp(1.75rem,4vw,4rem);align-items:start;padding-bottom:clamp(2rem,4vw,3rem);margin-bottom:clamp(2rem,4vw,3rem);border-bottom:1px solid rgb(255 255 255/.15)}
.fz-a .fz-oben p{margin:0;line-height:1.65}
.fz-a .fz-marke{display:grid;gap:1rem;justify-items:start}
.fz-a .fz-marke p{max-inline-size:26rem}
.fz-a .fz-erreichbar{display:grid;gap:1rem}
.fz-a .fz-vertrauen{display:grid;gap:1rem;justify-items:start}
.fz-a .fz-vertrauen .fuss-social{margin:0}
.fz-a .fz-a-spalten.fz-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1.5rem,3vw,3rem)}
@media (max-width:999.98px){.fz-a .fz-oben{grid-template-columns:repeat(2,minmax(0,1fr))}.fz-a .fz-vertrauen{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem}}
@media (max-width:899.98px){.fz-a .fz-a-spalten.fz-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599.98px){.fz-a .fz-oben{grid-template-columns:minmax(0,1fr)}.fz-a .fz-vertrauen{display:grid}}
/* Formular mit eigenem Titel (z. B. Rechner): nicht in den Kopf ragen lassen, sondern mit klarem Abstand darunter */
.he-a.he-form:has(+.fo-a .fo-a-kopf){padding-bottom:clamp(2.5rem,4vw,3.5rem)}
.he-a.he-form+.fo-a:has(.fo-a-kopf){padding-top:clamp(3rem,5vw,4.5rem)}
.he-a.he-form+.fo-a .fo-a-flaeche:has(.fo-a-kopf){margin-top:0}
.fz-a .fz-vertrauen .fz-google-karte{margin-top:0}
@media (max-width:899.98px){.fz-a .fz-a-spalten.fz-4>div:first-child{grid-column:auto}}

/* ===== 33 Team-Preiskarten in schmalen Spalten (Artikel, Textspalte, nach Kacheln): zwei nebeneinander ===== */
.bk :is(.ar-a,.tx-inhalt,.lu-a-nach,.pr-block) .pr-k-raster{grid-template-columns:repeat(2,minmax(0,1fr));margin-block:1.5rem 0}
.bk :is(.ar-a,.tx-inhalt,.lu-a-nach,.pr-block) .pr-k-hinweis{margin-top:.9rem}
@media (max-width:519.98px){.bk :is(.ar-a,.tx-inhalt,.lu-a-nach,.pr-block) .pr-k-raster{grid-template-columns:minmax(0,1fr)}}

/* ===== 34 Sitemap-Seite im neuen Design (Plugin [alp_sitemap], vorher nur alter Stil) ===== */
.bk .alp-sitemap{display:grid;gap:clamp(1rem,2vw,1.5rem)}
.bk .alp-sitemap-nav .alp-chips{display:flex;flex-wrap:wrap;gap:.45rem;margin:0;padding:0;list-style:none}
.bk .alp-sitemap-nav .alp-chips a{display:inline-flex;align-items:center;min-height:40px;padding:.3rem .95rem;border-radius:999px;background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line);color:var(--bk-ink);font-size:.9375rem;font-weight:600;text-decoration:none}
.bk .alp-sitemap-nav .alp-chips a:hover{box-shadow:0 0 0 1.5px var(--bk-red);color:var(--bk-red-text)}
.bk .alp-sitemap-block{padding:clamp(1.25rem,2.5vw,2rem);border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line);scroll-margin-top:120px}
.bk .alp-sitemap-block h2{margin:0 0 1rem;color:var(--bk-ink);font:var(--bk-titel-w) clamp(1.3rem,1rem + .8vw,1.6rem)/1.2 var(--bk-f-titel);letter-spacing:-.02em}
.bk .alp-sitemap .anzahl{color:var(--bk-muted);font-weight:500;font-size:.8em}
.bk .alp-sitemap-liste{margin:0;padding:0;list-style:none;display:grid;gap:.15rem .9rem}
.bk .alp-sitemap-liste.spalten{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr))}
.bk .alp-sitemap-liste a{display:inline-flex;align-items:center;min-height:36px;color:var(--bk-ink);font-weight:500;text-decoration:none;border-bottom:1px solid transparent}
.bk .alp-sitemap-liste a:hover{color:var(--bk-red-text);border-bottom-color:currentColor}
.bk .alp-sitemap-kantone{display:grid;gap:1rem}
.bk .alp-sitemap-kanton{padding:1.1rem 1.25rem;border-radius:var(--bk-r-m);background:var(--bk-bg2)}
.bk .alp-sitemap-kanton h3{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;margin:0 0 .5rem;font:var(--bk-titel-w) 1.15rem/1.3 var(--bk-f-titel)}
.bk .alp-sitemap-kanton h3 a{color:var(--bk-ink);text-decoration:none}
.bk .alp-sitemap-kanton .kt{color:var(--bk-muted);font:500 .875rem var(--bk-f-text)}
.bk .alp-sitemap-kanton h4{margin:.9rem 0 .35rem;color:var(--bk-muted);font:600 .8125rem/1.3 var(--bk-f-text)}
.bk .alp-sitemap-hinweis{margin:.75rem 0 0;color:var(--bk-muted);font-size:.875rem}
.bk .alp-sitemap-liste{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr))}
.bk .alp-sitemap h4 .anzahl{font-size:inherit}

/* ===== 35 Leistungen auf dem Handy: Karten zum Wischen statt Reiter (Wunsch des Nutzers 01.11.2026) =====
   Unter 1000 px verschwinden die Reiter; alle Leistungen stehen als Karten nebeneinander, die nächste Karte schaut am Rand
   hervor. Punkte darunter zeigen die Position (baukasten.js). Desktop bleibt bei den Reitern. */
@media (max-width:999.98px){
  .bk .le-d-box{display:block}
  .bk .le-d-reiter{display:none}
  body.bk.js .le-d-panels,body.bk .le-d-panels{display:flex;gap:.9rem;margin-inline:calc(var(--bk-gut) * -1);padding:.25rem var(--bk-gut) 1rem;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--bk-gut);scrollbar-width:none}
  .bk .le-d-panels::-webkit-scrollbar{display:none}
  .bk .le-d-panels .le-d-panel,.bk .le-d-panels .le-d-panel[hidden]{display:flex;flex-direction:column;flex:0 0 min(84%,22rem);gap:0;scroll-snap-align:start;overflow:hidden;border-radius:var(--bk-r-l);background:var(--bk-card);box-shadow:0 0 0 1px var(--bk-line),0 18px 40px -30px rgb(23 25 29/.35)}
  .bk .le-d-panels .le-d-panel img{aspect-ratio:4/3;border-radius:0}
  .bk .le-d-panels .le-d-panel>div{display:flex;flex-direction:column;flex:1;padding:1.1rem 1.15rem 1.25rem}
  .bk .le-d-panels .le-d-panel .bk-h3{margin:0 0 .5rem;font-size:1.3rem}
  .bk .le-d-panels .le-d-panel p{margin:0;font-size:.9375rem}
  .bk .le-d-panels .le-d-links{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-top:auto;padding-top:1.1rem}
  .bk .le-d-panels .le-d-links .bk-btn{min-height:44px;padding-inline:1.1rem;font-size:.9375rem}
  .bk .le-d-punkte{display:flex;justify-content:center;gap:.4rem;margin-top:.25rem}
  .bk .le-d-punkte button{inline-size:8px;block-size:8px;padding:0;border:0;border-radius:999px;background:rgb(23 25 29/.2);cursor:pointer;transition:inline-size .25s var(--bk-ease),background-color .25s}
  .bk .le-d-punkte button[aria-current="true"]{inline-size:22px;background:var(--bk-red)}
}
@media (min-width:1000px){.bk .le-d-punkte{display:none}}

/* ===== 36 Titel der Startseite wie Referenz (Wunsch des Nutzers 03.11.2026, zuerst nur Startseite) =====
   Gemessen auf der Referenzseite bei 390 / 768 / 1024 / 1440 px: h1 und h2 Alpner Grotesk 500 (statt 600).
   Unter 1024 px feste Grössen (h1 40 px / 1,05, h2 36 px / 1,15), ab 1024 px fliessend bis h1 68,8 px und h2 49,4 px
   bei 1440 px (Zeilenhöhe 1,0 / 1,05). Kartentitel (.uu-b-karte) behalten ihre Stufe. h3, Text (Alpner Text 400, 16,4 px / 1,6) und Knöpfe bleiben wie in Abschnitt 6. */
html[data-schrift="skala"] body.typ-startseite h1,html[data-schrift="skala"] body.typ-startseite h2{font-weight:500}
html[data-schrift="skala"] body.typ-startseite .bk-h1{font-size:2.5rem;line-height:1.05;letter-spacing:-.045em}
html[data-schrift="skala"] body.typ-startseite .bk-h2:not(.uu-b-karte .bk-h2){font-size:2.25rem;line-height:1.15;letter-spacing:-.04em}
@media (min-width:1024px){
  html[data-schrift="skala"] body.typ-startseite .bk-h1{font-size:min(calc(.254rem + 4.495vw),4.5rem);line-height:1}
  html[data-schrift="skala"] body.typ-startseite .bk-h2:not(.uu-b-karte .bk-h2){font-size:min(calc(1.054rem + 2.26vw),3.09rem);line-height:1.05}
}

/* ===== 37 Vergleich «Alpner Sans» wie umzugsservice-zh.ch (03.11.2026, seit Abend auf allen Seiten: Wunsch des Nutzers) =====
   Gemessen bei 390 / 768 / 1024 / 1440 px: eine Schrift (Alpner Sans), h1 und h2 gleich gross, 700, Zeilenhöhe 1,3,
   ohne enge Laufweite: Handy 26,4 px, ab 768 px 36,6 px, bei 1440 px 38 px. h3 700: 17 px (kleine Karten),
   23,6 → 27 px (grosse Karten). Text 400 15 px / 1,7. Menü und Knöpfe 600 15 px. */
html[data-schrift="standard"] .bk{font-size:.9375rem;line-height:1.7;letter-spacing:0}
html[data-schrift="standard"] p,html[data-schrift="standard"] li,html[data-schrift="standard"] .bk-lead{font-size:.9375rem;line-height:1.7;letter-spacing:0}
html[data-schrift="standard"] h1,html[data-schrift="standard"] h2,html[data-schrift="standard"] h3{font-weight:700;letter-spacing:0;line-height:1.3}
html[data-schrift="standard"] .bk-h1,html[data-schrift="standard"] .bk-h2:not(.uu-b-karte .bk-h2){font-size:1.65rem}
html[data-schrift="standard"] h3{font-size:1.0625rem}
html[data-schrift="standard"] .uu-b-karte .bk-h2,html[data-schrift="standard"] .le-d-panel .bk-h3{font-size:1.475rem}
html[data-schrift="standard"] .bk-btn,html[data-schrift="standard"] .kz-nav a{font-size:.9375rem;font-weight:600;letter-spacing:0}
@media (min-width:768px){
  html[data-schrift="standard"] .bk-h1,html[data-schrift="standard"] .bk-h2:not(.uu-b-karte .bk-h2){font-size:min(calc(2.2875rem + (100vw - 768px) * .002083),2.375rem)}
  html[data-schrift="standard"] .uu-b-karte .bk-h2,html[data-schrift="standard"] .le-d-panel .bk-h3{font-size:1.6625rem}
}

/* ===== 38 Leistungen als Karten mit Symbolen (Wunsch des Nutzers 03.11.2026, Vorbild umzugsservice-zh.ch, zuerst Startseite) =====
   Ersetzt auf der Startseite Reiter und Bild-Panels (le-d-box). Graphit-Karten, Symbol hellblau, Schrift weiss.
   3 Spalten ab 1000 px, sonst 2 Spalten (auch Handy: alle 9 Leistungen auf einen Blick). */
.bk .le-k{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:clamp(2rem,1.5rem + 1.5vw,3rem)}
.bk .le-k-karte{display:flex;flex-direction:column;gap:.35rem;padding:1.6rem 1.6rem 1.7rem;background:var(--bk-dark);color:var(--bk-on-dark);border-radius:var(--bk-r-m);text-decoration:none;transition:transform .25s var(--bk-ease),background-color .25s var(--bk-ease)}
.bk .le-k-karte:hover{transform:translateY(-3px);background:var(--bk-dark-2)}
.bk .le-k-karte:focus-visible{outline:2px solid var(--bk-red);outline-offset:3px}
.bk #brx-content .le-k .le-k-ico{inline-size:2.25rem;block-size:2.25rem;color:var(--bk-icon-dunkel);margin-bottom:.85rem;flex:none}
.bk .le-k .le-k-titel{font-size:1.2rem;line-height:1.25;letter-spacing:-.02em;color:var(--bk-on-dark);margin:0}
.bk .le-k .le-k-zusatz{font-size:.95rem;line-height:1.45;color:var(--bk-on-dark-2);margin:0}
@media (max-width:999.98px){.bk .le-k{grid-template-columns:repeat(2,minmax(0,1fr))}.bk .le-k-karte:last-child:nth-child(odd){grid-column:1/-1}}
@media (max-width:559.98px){
  .bk .le-k{gap:.65rem}
  .bk .le-k-karte{padding:1.05rem 1rem 1.15rem;border-radius:var(--bk-r-s)}
  .bk #brx-content .le-k .le-k-ico{inline-size:1.85rem;block-size:1.85rem;margin-bottom:.5rem}
  .bk .le-k .le-k-titel{font-size:1rem}
  .bk .le-k .le-k-zusatz{font-size:.85rem}
}
/* 38a Karten in Alpner-Rot statt Graphit (Rückmeldung des Nutzers 03.11.2026: Blau auf Schwarz nicht schön).
   Weiss auf #d33d44 = 4,5:1 (gleiche Grenze wie die roten Knöpfe); Symbole weiss, Zusatz leicht gedämpft. */
.bk .le-k-karte{background:var(--bk-red);color:#fff}
.bk .le-k-karte:hover{background:var(--bk-red-2)}
.bk .le-k-karte:focus-visible{outline-color:var(--bk-ink)}
.bk #brx-content .le-k .le-k-ico{color:#fff}
.bk .le-k .le-k-titel{color:#fff}
.bk .le-k .le-k-zusatz{color:rgba(255,255,255,.92)}
/* 38b Dezenter (Rückmeldung des Nutzers 03.11.2026): helle Sand-Karten mit Rand, Symbol rot im hellen Kreis.
   Hover: Karte hebt sich mit Schatten, Rand rot, Symbolkreis rot mit weissem Symbol, Pfeil-Gefühl über Titel in Rot. */
.bk .le-k-karte{background:var(--bk-bg2);color:var(--bk-ink);border:1px solid var(--bk-line);transition:transform .25s var(--bk-ease),box-shadow .25s var(--bk-ease),border-color .25s var(--bk-ease),background-color .25s var(--bk-ease)}
.bk .le-k-karte:hover{background:#fff;border-color:var(--bk-red);transform:translateY(-4px);box-shadow:0 14px 30px -14px rgba(38,37,36,.28)}
.bk .le-k-karte:focus-visible{outline:2px solid var(--bk-red);outline-offset:3px}
.bk #brx-content .le-k .le-k-ico{color:var(--bk-red);background:var(--bk-tint);border-radius:50%;padding:.55rem;inline-size:2.9rem;block-size:2.9rem;box-sizing:border-box;transition:background-color .25s var(--bk-ease),color .25s var(--bk-ease)}
.bk #brx-content .le-k .le-k-karte:hover .le-k-ico{background:var(--bk-red);color:#fff}
.bk .le-k .le-k-titel{color:var(--bk-ink);transition:color .25s var(--bk-ease)}
.bk .le-k .le-k-karte:hover .le-k-titel{color:var(--bk-red-text)}
.bk .le-k .le-k-zusatz{color:var(--bk-muted)}
@media (max-width:559.98px){.bk #brx-content .le-k .le-k-ico{inline-size:2.4rem;block-size:2.4rem;padding:.45rem}}
@media (prefers-reduced-motion:reduce){.bk .le-k-karte,.bk .le-k-karte:hover{transition:none;transform:none}}

/* ===== 39 Startseite: Regionen als grosse Bildkarten (Wunsch des Nutzers 03.11.2026, Vorbild umzugsservice-zh.ch) =====
   Plugin alp_regionen_leiste() setzt auf der Startseite .alp-regionen-gross (Foto oben, nur Kantonsname, Titel
   «Ihre Umzugsfirma in Ihrer Nähe»). 4 Spalten ab 1100 px, 3 ab 800 px, sonst 2. Bild 3:2, weisser Fuss, Schatten. */
.alp-sec.alp-regionen-gross .wrap>ul.alp-regionen-raster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,20px)}
.alp-regionen-gross .alp-regionen-raster>li{min-inline-size:0}
.alp-sec.alp-regionen-gross a.alp-region{display:flex;flex-direction:column;align-items:stretch;gap:0;block-size:100%;padding:0;background:#fff;border:0;border-radius:var(--bk-r-s,8px);overflow:hidden;box-shadow:0 6px 22px -8px rgba(38,37,36,.22);transition:transform .25s var(--bk-ease,ease),box-shadow .25s var(--bk-ease,ease)}
.alp-regionen-gross .alp-region-bild{inline-size:100%;block-size:auto;aspect-ratio:3/2;object-fit:cover;border-radius:0;transition:transform .5s var(--bk-ease,ease)}
.alp-regionen-gross .alp-region-text{padding:1.05rem 1.4rem 1.15rem}
.alp-sec.alp-regionen-gross .alp-region-text b{font-size:1.15rem;font-weight:700;line-height:1.3;color:var(--bk-ink)}
@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .alp-sec.alp-regionen-gross a.alp-region:hover{transform:translateY(-4px);box-shadow:0 16px 34px -12px rgba(38,37,36,.32)}
  .alp-regionen-gross a.alp-region:hover .alp-region-bild{transform:scale(1.04)}
  .alp-sec.alp-regionen-gross a.alp-region:hover .alp-region-text b{color:var(--bk-red-text)}
}
@media (max-width:1099.98px){.alp-sec.alp-regionen-gross .wrap>ul.alp-regionen-raster{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:799.98px){.alp-sec.alp-regionen-gross .wrap>ul.alp-regionen-raster{grid-template-columns:repeat(2,minmax(0,1fr))}
  .alp-regionen-gross .alp-region-text{padding:.7rem .85rem .8rem}
  .alp-sec.alp-regionen-gross .alp-region-text b{font-size:1rem}}

/* ===== 40 Fusszeile: Links auf zwei Ebenen, 10 Kategorien (Wunsch des Nutzers 03.11.2026, Vorbild umzugsservice-zh.ch) =====
   5 Spalten × 2 Reihen ab 1100 px, 3 Spalten ab 700 px, sonst 2. Titel klein in Grossbuchstaben, Links mit feinem Pfeil. */
.fz-a .fz-a-spalten.fz-10{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(2.25rem,3.5vw,3rem) clamp(1.25rem,2.5vw,2.5rem)}
.fz-a .fz-10 h3{margin-bottom:1rem;font-size:.9rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.fz-a .fz-10 ul{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}
.fz-a .fz-10 li{margin:0;padding:0}
.fz-a .fz-10 a{display:inline-flex;gap:.45rem;align-items:baseline;color:var(--bk-on-dark-2);font-weight:400;font-size:.95rem;line-height:1.4;text-decoration:none;transition:color .2s var(--bk-ease),transform .2s var(--bk-ease)}
.fz-a .fz-10 a::before{content:"›";flex:none;color:var(--bk-red);font-weight:700}
.fz-a .fz-10 a:hover{color:#fff;transform:translateX(2px)}
@media (max-width:1099.98px){.fz-a .fz-a-spalten.fz-10{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:699.98px){.fz-a .fz-a-spalten.fz-10{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1rem}.fz-a .fz-10 a{font-size:.9rem}}

/* ===== 41 Startseite: neues Hero-Foto (Lieferwagen mit Anhänger, 03.11.2026) =====
   Unter 1024 px steht das Bild quer (4:3) und zeigt nur ~61 % der Höhe: Ausschnitt nach unten schieben, damit der ganze
   Lieferwagen samt Rädern sichtbar bleibt (oben fällt nur Fassade weg). */
@media (max-width:1023.98px){body.typ-startseite .he-a-bild img{object-position:50% 88%}}
/* 41a Startseite «Ihr Umzugsteam»: Möbellift-Foto (03.11.2026). Ausschnitt oben ausrichten, damit die Lift-Plattform
   sichtbar bleibt (vorher 50% 100% schnitt sie ab); unten fallen nur Paletten weg. */
body.typ-startseite .uu-b img{object-position:50% 0%}

/* ===== 42 Schrift «Alpner Sans» auf der ganzen Website (03.11.2026): Hero mit Formular (Offerte, Rechner) bekam sonst
   54 px statt der einheitlichen 26 → 38 px aus Abschnitt 37. */
html[data-schrift="standard"] .he-a.he-form .bk-h1{font-size:1.65rem}
@media (min-width:768px){html[data-schrift="standard"] .he-a.he-form .bk-h1{font-size:min(calc(2.2875rem + (100vw - 768px) * .002083),2.375rem)}}
/* 42a Abschnitt «Bild und Text» ohne Bild (z. B. Olten, Foto 03.11.2026 entfernt): Text über die volle Lesebreite */
.tb-b-box:not(:has(.tb-b-bild)){grid-template-columns:minmax(0,52rem)}

/* ===== 43 Fotos sauber einbinden statt klein unter Abschnitte hängen (Rückmeldung Kunde 03.11.2026) =====
   Der Umwandler hängte Fotos ohne eigenen Platz an Schritte (ab-d-nach), Preise (pr-text-unten) oder Kacheln (bk-panorama).
   Jetzt: Foto neben Titel bzw. Text, festes Format, ganzes Motiv weitgehend sichtbar; unter 900 px untereinander. */
.bk .tx-bild img,.bk .bk-panorama img{display:block;inline-size:100%;block-size:100%;object-fit:cover;border-radius:var(--bk-r-m)}
/* a) Schritte: Foto rechts neben Titel und Einleitung */
.bk-sec.ab-d>.bk-wrap:has(>.ab-d-nach>.tx-bild){display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);column-gap:clamp(2rem,5vw,5rem);align-items:center}
.bk-sec.ab-d>.bk-wrap:has(>.ab-d-nach>.tx-bild)>*{grid-column:1/-1}
.bk-sec.ab-d>.bk-wrap:has(>.ab-d-nach>.tx-bild)>.bk-kopf{grid-column:1;grid-row:1;margin-bottom:0}
.bk-sec.ab-d>.bk-wrap>.ab-d-nach:has(>.tx-bild){grid-column:2;grid-row:1;margin:0 0 clamp(2rem,4vw,3rem)}
.bk-sec.ab-d .ab-d-nach>.tx-bild{margin:0;aspect-ratio:3/2}
.bk-sec.ab-d .ab-d-nach>.tx-bild.bk-hoch{aspect-ratio:4/5;max-block-size:32rem;inline-size:auto;margin-inline-start:auto}
/* b) Preise: Text unter den Preisen mit Foto → Foto links, Text rechts */
.bk .pr-text-unten:has(>.tx-bild){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,4rem);align-items:center;max-inline-size:none}
.bk .pr-text-unten:has(>.tx-bild)>*{grid-column:2}
.bk .pr-text-unten:has(>.tx-bild){grid-template-rows:1fr repeat(4,auto) 1fr;row-gap:.75rem}
.bk .pr-text-unten>.tx-bild{grid-column:1;grid-row:1 / -1;margin:0;aspect-ratio:3/2}
.bk .pr-text-unten>.tx-bild+*{grid-row:2}
.bk .pr-text-unten>.tx-bild~*{margin:0}
/* c) Kacheln: angehängtes Panorama neben den Text unter den Kacheln */
.bk-sec.lu-a>.bk-wrap:has(>.bk-panorama){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:clamp(1.5rem,4vw,4rem);align-items:center}
.bk-sec.lu-a>.bk-wrap:has(>.bk-panorama)>*{grid-column:1/-1}
.bk-sec.lu-a>.bk-wrap:has(>.bk-panorama)>.lu-a-nach{grid-column:2;grid-row:3;margin:0}
.bk-sec.lu-a>.bk-wrap>.bk-panorama{grid-column:1;grid-row:3;margin:clamp(2rem,4vw,3rem) 0 0;aspect-ratio:3/2}
.bk-sec.lu-a>.bk-wrap:has(>.bk-panorama)>.lu-a-nach{margin-top:clamp(2rem,4vw,3rem)}
.bk-sec.lu-a>.bk-wrap:has(>.bk-panorama):not(:has(>.lu-a-nach))>.bk-panorama{grid-column:1/-1;aspect-ratio:21/9}
@media (max-width:899.98px){
  .bk-sec.ab-d>.bk-wrap:has(>.ab-d-nach>.tx-bild),.bk .pr-text-unten:has(>.tx-bild),.bk-sec.lu-a>.bk-wrap:has(>.bk-panorama){display:block}
  .bk-sec.ab-d>.bk-wrap>.ab-d-nach:has(>.tx-bild){margin:1.5rem 0}
  .bk .pr-text-unten>.tx-bild,.bk-sec.lu-a>.bk-wrap>.bk-panorama{margin:0 0 1.25rem}
  .bk-sec.ab-d .ab-d-nach>.tx-bild.bk-hoch{aspect-ratio:4/3;max-block-size:none}
}
@media (max-width:899.98px){
  .bk-sec.ab-d>.bk-wrap:has(>.ab-d-nach>.tx-bild){display:flex;flex-direction:column;align-items:stretch}
  .bk-sec.ab-d>.bk-wrap:has(>.ab-d-nach>.tx-bild)>*{order:2}
  .bk-sec.ab-d>.bk-wrap:has(>.ab-d-nach>.tx-bild)>.bk-kopf{order:0}
  .bk-sec.ab-d>.bk-wrap>.ab-d-nach:has(>.tx-bild){order:1;margin:0 0 1.5rem}
}
@media (max-width:899.98px){.bk-sec.ab-d>.bk-wrap:has(>.ab-d-nach>.tx-bild)>.bk-kopf{margin-bottom:1.25rem}}

/* ===== 44 Ganzes Motiv statt Beschnitt (03.11.2026): Prüfung aller 208 Seiten ergab 27 Fotos in «Bild + Text» mit nur
   56–69 % sichtbarem Motiv (Hochformat in festem 4:3). Jetzt natürliches Seitenverhältnis (Breite 100 %, Höhe automatisch);
   Hochformat-Abschnitte (tb-b-hoch) begrenzen die Breite, damit das Foto nicht zu hoch wird. Breite nie «auto»: sonst hat ein
   noch nicht geladenes Lazy-Bild 0 px und lädt nie. Gilt auch für die eingebundenen Fotos aus Abschnitt 43. */
.tb-b-bild img,.tb-b-hoch .tb-b-bild img{inline-size:100%;block-size:auto;aspect-ratio:auto 4 / 3;object-fit:cover;margin-inline:auto;display:block}
.tb-b-hoch .tb-b-bild img{inline-size:min(100%,30rem)}
.bk-sec.ab-d .ab-d-nach>.tx-bild,.bk-sec.ab-d .ab-d-nach>.tx-bild.bk-hoch,.bk .pr-text-unten>.tx-bild,.bk-sec.lu-a>.bk-wrap>.bk-panorama{aspect-ratio:auto 4 / 3;max-block-size:none}
.bk-sec.ab-d .ab-d-nach>.tx-bild img,.bk .pr-text-unten>.tx-bild img,.bk-sec.lu-a>.bk-wrap>.bk-panorama img{inline-size:100%;block-size:auto;aspect-ratio:auto}
.bk-sec.ab-d .ab-d-nach>.tx-bild.bk-hoch{inline-size:min(100%,24rem);margin-inline-start:auto}
@media (max-width:899.98px){.bk-sec.ab-d .ab-d-nach>.tx-bild.bk-hoch{inline-size:min(100%,22rem);margin-inline:auto}}
/* kleine Originale (bk-klein-1/2) behalten ihre feste Breite, sonst 0 px in der automatischen Spalte */
.tb-b-bild img.bk-klein-1,.tb-b-hoch .tb-b-bild img.bk-klein-1{inline-size:260px}
.tb-b-bild img.bk-klein-2,.tb-b-hoch .tb-b-bild img.bk-klein-2{inline-size:min(100%,520px)}
/* 44b Restliche Beschnitte (03.11.2026): Textbilder (tx-bild: Ratgeber, Umzugsfirma Basel, Referenzen) und das Foto im
   Abschnitt fw-a (Privatumzug) im natürlichen Format statt 16:9 bzw. 4:5. Hochformat-Textbilder max. 30rem breit. */
.bk .tx-bild img,.fw-a-bild img{inline-size:100%;block-size:auto;aspect-ratio:auto 16 / 9;object-fit:cover}
.bk .tx-bild.bk-hoch img{inline-size:min(100%,30rem);aspect-ratio:auto 3 / 4;margin-inline:auto}
@media (max-width:899.98px){.fw-a-bild img{aspect-ratio:auto 4 / 3}}
/* 44c Galerien (z. B. Referenzen) mit gemischten Formaten: Mauer-Galerie in Spalten, jedes Foto ganz sichtbar, ohne Lücken */
.bk .bk-galerie{display:block;columns:3 16rem;column-gap:1rem}
.bk .bk-galerie>.tx-bild{break-inside:avoid;margin:0 0 1rem;display:block}
.bk .bk-galerie>.tx-bild img{inline-size:100%}
@media (max-width:599.98px){.bk .bk-galerie{columns:2;column-gap:.6rem}.bk .bk-galerie>.tx-bild{margin-bottom:.6rem}}

/* ===== 45 Fakten-Kacheln nach dem Hero ([alp_kacheln], 03.11.2026): 4 × 2 dezente Kacheln ohne Links, Symbol rot im Kreis */
.bk-sec.kc-a{padding-block:clamp(2.5rem,2rem + 2vw,4rem)}
.bk .kc-raster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none}
.bk .kc-kachel{display:flex;flex-direction:column;gap:.3rem;margin:0;padding:1.4rem 1.4rem 1.5rem;background:var(--bk-bg2);border:1px solid var(--bk-line);border-radius:var(--bk-r-m)}
.bk #brx-content .kc-kachel .kc-ico{inline-size:2.75rem;block-size:2.75rem;padding:.55rem;box-sizing:border-box;margin-bottom:.75rem;color:var(--bk-red);background:var(--bk-tint);border-radius:50%;flex:none}
.bk .kc-titel{font-family:var(--bk-f-titel);font-weight:700;font-size:1.05rem;line-height:1.3;color:var(--bk-ink)}
.bk .kc-zusatz{font-size:.92rem;line-height:1.5;color:var(--bk-muted)}
.bk-sec.bk-tint .kc-kachel{background:#fff}
@media (max-width:999.98px){.bk .kc-raster{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:559.98px){.bk .kc-raster{gap:.6rem}.bk .kc-kachel{padding:1rem .95rem 1.1rem}.bk #brx-content .kc-kachel .kc-ico{inline-size:2.3rem;block-size:2.3rem;padding:.45rem;margin-bottom:.5rem}.bk .kc-titel{font-size:.95rem}.bk .kc-zusatz{font-size:.84rem}}

/* ===== 46 Hover für alle Kacheln und Karten (Wunsch des Nutzers 03.11.2026: «überall auf solche Sachen achten»)
   Einheitlich wie die Leistungskarten: anheben, weiss, roter Rand, weicher Schatten; Symbolkreis wird rot.
   Nur mit Maus und ohne «weniger Bewegung». Ergänzt Karten, die bisher keinen Hover hatten. */
.bk .kc-kachel,.bk .bw-karten>*,.bk .uu-b-fakten div,.bk .pr-dauer-karte{transition:transform .25s var(--bk-ease),box-shadow .25s var(--bk-ease),border-color .25s var(--bk-ease),background-color .25s var(--bk-ease)}
.bk #brx-content .kc-kachel .kc-ico{transition:background-color .25s var(--bk-ease),color .25s var(--bk-ease)}
@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .bk .kc-kachel:hover{background:#fff;border-color:var(--bk-red);transform:translateY(-4px);box-shadow:0 14px 30px -14px rgba(38,37,36,.28)}
  .bk #brx-content .kc-kachel:hover .kc-ico{background:var(--bk-red);color:#fff}
  .bk .kc-kachel:hover .kc-titel{color:var(--bk-red-text)}
  .bk .bw-karten>*:hover{transform:translateY(-4px);box-shadow:0 14px 30px -14px rgba(38,37,36,.28)}
  .bk .uu-b-fakten div:hover{background:#fff;box-shadow:inset 0 0 0 1.5px var(--bk-red)}
  .bk .pr-dauer-karte:hover{transform:translateY(-4px);box-shadow:inset 0 0 0 1.5px var(--bk-red),0 18px 40px -16px rgba(38,37,36,.3)}
}

/* ===== 47 «Vor Ort in …» ([alp_lokal], 03.11.2026): recherchierte Gemeinde-Fakten als Kacheln mit Quellenzeile */
.bk .lo-raster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none}
.bk .lo-kachel{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:1rem;align-items:start;margin:0;padding:1.4rem 1.5rem;background:#fff;border:1px solid var(--bk-line);border-radius:var(--bk-r-m);transition:transform .25s var(--bk-ease),box-shadow .25s var(--bk-ease),border-color .25s var(--bk-ease)}
.bk #brx-content .lo-kachel .kc-ico{grid-row:1 / span 2;inline-size:2.75rem;block-size:2.75rem;padding:.55rem;box-sizing:border-box;color:var(--bk-red);background:var(--bk-tint);border-radius:50%;transition:background-color .25s var(--bk-ease),color .25s var(--bk-ease)}
.bk .lo-titel{font-family:var(--bk-f-titel);font-weight:700;font-size:1.05rem;line-height:1.3;color:var(--bk-ink);margin-bottom:.35rem}
.bk .lo-text{margin:0;font-size:.95rem;line-height:1.6;color:var(--bk-text);overflow-wrap:anywhere}
.bk .lo-quellen{margin:1.25rem 0 0;font-size:.82rem;color:var(--bk-muted)}
.bk .lo-quellen a{color:var(--bk-muted);text-decoration:underline;text-underline-offset:2px;margin-right:.35rem}
@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .bk .lo-kachel:hover{border-color:var(--bk-red);transform:translateY(-4px);box-shadow:0 14px 30px -14px rgba(38,37,36,.28)}
  .bk #brx-content .lo-kachel:hover .kc-ico{background:var(--bk-red);color:#fff}
}
@media (max-width:799.98px){.bk .lo-raster{grid-template-columns:minmax(0,1fr)}.bk .lo-kachel{padding:1.15rem 1.1rem}}
.bk .lo-ratgeber{margin:1.25rem 0 0;font-weight:600;color:var(--bk-ink)}.bk .lo-ratgeber a{color:var(--bk-ink);text-decoration:underline;text-decoration-color:var(--bk-red);text-underline-offset:3px}

/* ===== Lange Adressen (Quellenlisten, E-Mail, Links) brechen auf dem Handy um (03.11.2026) ===== */
.bk :is(.ar-quellen,.lo-text) :is(li,a,p){overflow-wrap:anywhere}
.bk .ar-quellen{overflow-wrap:anywhere}
.bk .kc-titel{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}

/* 48 Shop (Umzugskartons kaufen): kurzer Kopf, Produktfoto ganz sichtbar, Produkte direkt darunter (03.11.2026) */
.he-shop .he-a-bild{min-block-size:clamp(22rem,48vh,30rem);background:var(--bk-sand);border-radius:var(--bk-r-l) 0 0 var(--bk-r-l)}
.he-shop .he-a-bild.he-produkt img{inset:clamp(1.5rem,3vw,3rem);inline-size:calc(100% - 2*clamp(1.5rem,3vw,3rem));block-size:calc(100% - 2*clamp(1.5rem,3vw,3rem));object-fit:contain;border-radius:0;mix-blend-mode:multiply}
.he-shop .bk-wrap>div:first-child{padding-block:clamp(2rem,4vw,3.5rem)}
@media (max-width:899.98px){.he-shop .he-a-bild{display:none}.he-shop .bk-wrap>div:first-child{padding-block:1.75rem}}

/* 49 Preisabschnitt: Text links mittig zur Preiskarte, Foto in der linken Spalte ganz sichtbar (03.11.2026) */
.bk .pr-zwei{align-items:center}
.bk .pr-text-oben .tx-bild{margin-top:1.5rem}
.bk .pr-text-oben .tx-bild img{inline-size:100%;block-size:auto;border-radius:var(--bk-r-l)}

/* 50 Ratgeber: «Passend zum Thema» – interne Links zu Preisen, Leistung, Ort und verwandten Ratgebern (03.11.2026) */
.ar-weiter{margin-top:clamp(2.5rem,5vw,3.5rem);padding:clamp(1.25rem,3vw,2rem);background:var(--bk-sand);border-radius:var(--bk-r-l)}
.ar-weiter-titel{font-weight:700;font-size:1.15rem;margin:0 0 1rem}
.ar-weiter ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.6rem}
.ar-weiter li a{display:flex;flex-direction:column;gap:.15rem;padding:.8rem 1rem;background:#fff;border-radius:var(--bk-r-m,12px);text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s}
.ar-weiter li a:hover,.ar-weiter li a:focus-visible{transform:translateY(-2px);box-shadow:0 12px 24px -16px rgb(23 25 29/.35)}
.ar-weiter .aw-art{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--bk-rot,#c8102e)}
.ar-weiter .aw-titel{font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.ar-weiter-offerte{margin:1.1rem 0 0;font-weight:600}
.ar-weiter-offerte a{color:inherit}

/* 51 Offertformular auf dem Handy wie eine App (03.11.2026, Wunsch Inhaber, Vorbild Aufbau umzugpro.ch):
   Vollbild mit Kopf (Logo, ×, «Schritt x von y», Balken), eine Seite pro Thema, unten «‹» und «Weiter».
   Seiten und Prüfung im Skript von inc/offerte.php. Felder mindestens 16 px, damit iOS beim Tippen nicht zoomt. */
@media (max-width:767.98px){
  /* Auf der Seite: nur Leistungen und «Offerte starten», keine doppelten Knöpfe oder Telefonhinweise */
  body.of-handy .he-form .he-vertrauen,body.of-handy .bk-mbar{display:none!important}
  /* Handy: Offerte-Seite zeigt nur das Formular – Kopfbild, Preise, Texte, FAQ und Abschluss aus */
  body.of-handy #brx-content>section:not(:has(#offerte)){display:none!important}
  body.of-handy .offerte :is(.fortschritt-kopf,.weiter,.zurueck,.anrufen,.auswahl-hinweis,aside.auswahl),
  body.of-handy .offerte .absenden button[type=submit]{display:none!important}
  body.of-handy:not(.of-voll) .offerte [data-of-seite]:not([data-of-seite="1"]){display:none!important}
  .of-kopf,.of-fuss{display:none}
  .of-start{display:flex;inline-size:100%;justify-content:center;margin-top:20px}
  body.of-voll .of-start{display:none!important}
  body.of-handy .offerte .s1-leistungen .chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  body.of-handy .offerte .s1-leistungen .chip{display:flex;margin:0}
  body.of-handy .offerte .s1-leistungen .chip span{inline-size:100%;min-block-size:56px;padding:10px 12px;justify-content:center;text-align:center;font-size:15px;line-height:1.25;border-radius:14px;text-wrap:balance}
  body.of-handy .offerte .s1-leistungen .chip span::before{display:none}
  body.of-handy .offerte .s1-leistungen .chip input:checked+span{box-shadow:inset 0 0 0 1px var(--bk-rot,#c8102e);border-color:var(--bk-rot,#c8102e)}
  body.of-handy .fo-a .fo-a-kontakt{display:none}

  /* Vollbild */
  html.of-voll,body.of-voll{overflow:hidden;block-size:100%}
  body.of-voll :is(#brx-header,header.bk-kopf,.bk-fortschritt,.bk-nach-oben,.kz-mobil){display:none!important}
  body.of-voll .offerte select{appearance:none;-webkit-appearance:none;padding-inline-end:40px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2317191d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center/18px}
  body.of-voll .offerte{position:fixed;inset:0;z-index:2000;display:flex;flex-direction:column;block-size:100vh;block-size:100dvh;max-inline-size:none;margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:#f6f4f0}
  body.of-voll .of-kopf{display:block;flex:none;padding:calc(6px + env(safe-area-inset-top)) 16px 12px;background:#fff;border-bottom:1px solid #e7e3dc}
  .of-kopf-zeile{display:flex;align-items:center;justify-content:space-between;block-size:48px}
  body.of-voll .of-kopf .of-logo{display:block;block-size:24px!important;inline-size:auto!important;max-inline-size:160px;object-fit:contain}
  .of-zu{display:grid;place-items:center;inline-size:44px;block-size:44px;margin-inline-end:-10px;border:0;background:none;color:inherit;cursor:pointer}
  .of-stand{display:flex;justify-content:space-between;gap:12px;margin-top:4px;font-size:13px;line-height:1.3;color:#6b6760}
  .of-stand [data-of-nr]{color:#17191d;font-weight:600}
  .of-balken{block-size:4px;margin-top:8px;border-radius:4px;background:#e7e3dc;overflow:hidden}
  .of-balken i{display:block;block-size:100%;inline-size:20%;border-radius:4px;background:var(--bk-rot,#c8102e);transition:inline-size .3s ease}
  body.of-voll .offerte .offerte-raster{flex:1 1 auto;min-block-size:0;display:block;margin:0;padding:20px 16px 28px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  body.of-voll .offerte .offerte-haupt{margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:none}
  body.of-voll .offerte [data-of-seite]:not(.of-an){display:none!important}
  body.of-voll .offerte .schritt{margin:0;padding:0;border:0}
  body.of-voll .offerte .s1-raster>.block{margin:0;padding:0;border:0}
  body.of-voll .offerte .s1-raster>.block.of-an:not([hidden])~.block.of-an:not([hidden]):not(.s1-adressen){margin-top:28px;padding-top:24px;border-top:1px solid #e7e3dc}
  /* Seitentitel */
  body.of-voll .offerte :is(.s1-leistungen .block-titel,.s1-team>h3,.block[data-fuer]>h3,.s1-adressen>h3,.of-seiten-titel,.schritt[data-schritt="2"]>legend){display:block;float:none;inline-size:100%;margin:0 0 16px;padding:0;font-size:22px;line-height:1.25;font-weight:700;letter-spacing:-.01em;color:#17191d}
  body.of-voll .offerte .block[data-fuer]>h3{font-size:18px;margin-bottom:12px}
  body.of-voll .offerte .s1-leistungen .hilfe,body.of-voll .offerte .s1-adressen>.hilfe{margin:-8px 0 16px;font-size:14px;color:#6b6760}
  /* Felder: 16 px gegen das Zoomen, gleiche Höhe, klare Abstände */
  body.of-voll .offerte :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px;min-block-size:50px;border-radius:12px;background-color:#fff}
  body.of-voll .offerte textarea{min-block-size:110px}
  body.of-voll .offerte .feld{margin:0}
  body.of-voll .offerte .feld label{font-size:14px;font-weight:600;margin-bottom:6px}
  /* Team */
  body.of-voll .offerte .team-wahl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;align-items:end}
  body.of-voll .offerte .team-wahl .gruppe{min-inline-size:0;margin:0;padding:0;border:0}
  body.of-voll .offerte .team-wahl .gruppe .zahlen{display:none}
  body.of-voll .offerte .team-wahl>.chip{grid-column:1/-1;justify-self:stretch;margin:0}
  body.of-voll .offerte .s1-team .team-bild{display:none!important}
  body.of-voll .offerte .s1-team>.chip{display:flex;margin-top:12px}
  body.of-voll .offerte .s1-team .chip span{inline-size:100%;min-block-size:50px;font-size:16px}
  body.of-voll .offerte .team-preis{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 0;padding:14px 16px;border-radius:14px;background:#fff;border:1px solid #e7e3dc;font-size:15px}
  body.of-voll .offerte .team-preis b{white-space:nowrap;font-size:18px}
  .of-zaehler{display:none}
  body.of-voll .offerte .of-zaehler{display:flex;align-items:center;justify-content:space-between;block-size:52px;margin-top:6px;padding:0 4px;border:1.5px solid #d9d5ce;border-radius:14px;background:#fff}
  .of-zaehler button{inline-size:44px;block-size:44px;border:0;border-radius:10px;background:none;font-size:24px;line-height:1;color:inherit;cursor:pointer}
  .of-zaehler output{font-size:18px;font-weight:700}
  /* Adressen */
  body.of-voll .offerte .adressen{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
  body.of-voll .offerte .adresse{margin:0;padding:16px;border:1px solid #e7e3dc;border-radius:16px;background:#fff}
  body.of-voll .offerte .adresse legend{float:left;inline-size:100%;margin:0 0 12px;padding:0;font-size:17px;font-weight:700}
  body.of-voll .offerte .adresse legend+*{clear:both}
  body.of-voll .offerte .adr-felder{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:12px}
  body.of-voll .offerte .feld :is(.fehler,[id$="-fehler"]){font-size:13px;line-height:1.35}
  body.of-voll .offerte .adr-felder>.voll{grid-column:1/-1}
  /* Termin und Kontakt */
  body.of-voll .offerte .s1-adressen>.felder,body.of-voll .offerte .schritt[data-schritt="2"]>.felder{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
  body.of-voll .offerte .auswahl-zeile{margin:20px 0 0;padding:14px 16px;border:1px solid #e7e3dc;border-radius:14px;background:#fff}
  body.of-voll .offerte .absenden{margin-top:16px}
  body.of-voll .offerte .datenschutz{font-size:13px;color:#6b6760;text-align:start}
  body.of-handy .offerte :is(.feld,.hilfe,.of-hinweis)[hidden]{display:none!important}
  body.of-voll .offerte .of-hinweis.of-an{display:block;margin:20px 0 0;padding:14px 16px;border:1px solid #e7e3dc;border-radius:14px;background:#fff;font-size:15px;line-height:1.45;color:#17191d}
  /* Auswahlkarten statt Liste (Reinigung, Packteam, Möbellift) */
  .of-wahl{display:none}
  body.of-voll .offerte .of-wahl-feld{display:none!important}
  body.of-voll .offerte .of-wahl{display:grid;gap:10px}
  .of-wahl button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-block-size:56px;padding:12px 16px;border:1.5px solid #d9d5ce;border-radius:14px;background:#fff;font:inherit;font-size:16px;line-height:1.3;color:#17191d;text-align:start;cursor:pointer}
  .of-wahl button b{white-space:nowrap;font-weight:700}
  .of-wahl button.an{border-color:var(--bk-rot,#c8102e);box-shadow:inset 0 0 0 1px var(--bk-rot,#c8102e);background:#fdf3f4}
  /* Fuss: kleiner Zurück-Knopf, breiter Weiter-Knopf, mit Abstand */
  body.of-voll .of-fuss{display:flex;gap:12px;flex:none;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e7e3dc}
  .of-fuss .of-zurueck{flex:none;display:grid;place-items:center;inline-size:52px;block-size:52px;border:1.5px solid #d9d5ce;border-radius:14px;background:#fff;color:#17191d;cursor:pointer}
  .of-fuss .of-weiter{flex:1 1 auto;block-size:52px;border:0;border-radius:14px;background:var(--bk-rot,#c8102e);color:#fff;font:inherit;font-size:17px;font-weight:700;cursor:pointer}
  .of-fuss button:focus-visible,.of-zu:focus-visible{outline:2px solid #17191d;outline-offset:2px}
}

/* 52 Möbellift-Anfrage, Material-Bestellung und Kostenrechner auf dem Handy wie eine App (03.11.2026, gleiches Schema wie 51).
   Skript: plugins/alpner-funktionen/inc/handy-app.php. Felder mindestens 16 px (kein Zoom auf iOS). */
@media (max-width:767.98px){
  .ap-kopf,.ap-fuss{display:none}
  body.ap-handy .ap-form .ap-weg{display:none!important}
  /* Geschlossen (auf der Seite): nur die Einstiegsseite und der Start-Knopf */
  body.ap-handy:not(.ap-voll) .ap-form [data-ap-seite]:not(.ap-inline){display:none!important}
  .ap-start{display:flex;inline-size:100%;justify-content:center;margin-top:20px}
  body.ap-voll .ap-start,body.ap-voll .ap-meldung{display:none!important}
  .ap-meldung{margin:16px 0 0;padding:12px 14px;border-radius:12px;background:#fdf3f4;color:#9b1c2c;font-size:15px;font-weight:600}
  .ap-meldung[hidden]{display:none}
  body.ap-voll .material-leiste{display:none!important}
  .material-leiste.ap-leiste-klick{cursor:pointer}
  body.ap-voll .ap-form .ap-voll-weg{display:none!important}
  .material-leiste.ap-leiste-klick{display:flex;align-items:center;gap:10px}
  .material-leiste.ap-leiste-klick>span{flex:1 1 auto}
  .material-leiste.ap-leiste-klick>b{white-space:nowrap}
  .material-leiste.ap-leiste-klick::after{content:'Weiter';flex:none;white-space:nowrap;padding:8px 14px;border-radius:999px;background:var(--bk-rot,#c8102e);color:#fff;font-weight:700;font-size:14px;line-height:1}
  /* Möbellift-Pakete als Karten (auf der Seite und im Vollbild) */
  body.ap-handy .ml-form .ml-paket-chips{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
  body.ap-handy .ml-form .ml-paket-chips .chip{display:flex;margin:0}
  body.ap-handy .ml-form .ml-paket-chips .chip span{display:flex;align-items:center;justify-content:space-between;gap:12px;inline-size:100%;min-block-size:56px;padding:12px 16px;border-radius:14px;font-size:16px}
  body.ap-handy .ml-form .ml-paket-chips .chip span::before{display:none}
  body.ap-handy .ml-form .ml-paket-chips .chip b{white-space:nowrap}
  body.ap-handy .ml-form .ml-paket-chips .chip input:checked+span{border-color:var(--bk-rot,#c8102e);box-shadow:inset 0 0 0 1px var(--bk-rot,#c8102e);background:#fdf3f4}
  body.ap-handy .ap-form .ap-titel{display:block;grid-column:1/-1;margin:0 0 16px;font-size:22px;line-height:1.25;font-weight:700;letter-spacing:-.01em;color:#17191d}

  /* Vollbild */
  html.ap-voll,body.ap-voll{overflow:hidden;block-size:100%}
  body.ap-voll :is(#brx-header,header.bk-kopf,.bk-mbar,.bk-fortschritt,.bk-nach-oben,.kz-mobil){display:none!important}
  /* übriger Seiteninhalt aus (breite Laufbänder würden die Handy-Ansicht verkleinern) */
  body.ap-voll #brx-content>*:not(:has(.ap-offen)),body.ap-voll #brx-footer{display:none!important}
  body.ap-voll .ap-form.ap-offen{position:fixed;inset:0;z-index:2000;display:block;inline-size:auto;max-inline-size:none;margin:0;padding:0 16px calc(96px + env(safe-area-inset-bottom));border:0;border-radius:0;box-shadow:none;background:#f6f4f0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  body.ap-voll .ap-form [data-ap-seite]:not(.ap-an){display:none!important}
  body.ap-voll .ap-form :is(.offerte-haupt,.schritt,fieldset.material-artikel,fieldset.material-kontakt,.rechner-raster,.rechner-eingabe,.rechner-ergebnis,.rechner-teil){margin:0;padding:0;border:0;border-radius:0;box-shadow:none;background:none;display:block;position:static;min-inline-size:0}
  body.ap-voll .ap-form .rechner-teil.ap-an,body.ap-voll .ap-form .rechner-ergebnis.ap-an{display:block}
  body.ap-voll .ap-kopf{display:block;position:sticky;top:0;z-index:5;margin:0 -16px 20px;padding:calc(6px + env(safe-area-inset-top)) 16px 12px;background:#fff;border-bottom:1px solid #e7e3dc}
  .ap-kopf-zeile{display:flex;align-items:center;justify-content:space-between;block-size:48px}
  body.ap-voll .ap-kopf .ap-logo{display:block;block-size:24px!important;inline-size:auto!important;max-inline-size:160px;object-fit:contain}
  .ap-zu{display:grid;place-items:center;inline-size:44px;block-size:44px;margin-inline-end:-10px;border:0;background:none;color:inherit;cursor:pointer}
  .ap-stand{display:flex;justify-content:space-between;gap:12px;margin-top:4px;font-size:13px;line-height:1.3;color:#6b6760}
  .ap-stand [data-ap-nr]{color:#17191d;font-weight:600}
  .ap-balken{block-size:4px;margin-top:8px;border-radius:4px;background:#e7e3dc;overflow:hidden}
  .ap-balken i{display:block;block-size:100%;inline-size:25%;border-radius:4px;background:var(--bk-rot,#c8102e);transition:inline-size .3s ease}
  /* Seitentitel: eigene Überschrift oder die Legende des Kontaktschritts, Rechner-Titel */
  body.ap-voll .ap-form :is(.schritt[data-schritt="2"]>legend,.rechner-teil>legend,.rechner-teil>.titel,.rechner-ergebnis>h3){display:block;float:none;inline-size:100%;margin:0 0 16px;padding:0;font-size:22px;line-height:1.25;font-weight:700;color:#17191d}
  /* Felder: 16 px, gleiche Höhe, klare Abstände */
  body.ap-voll .ap-form :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px;min-block-size:50px;border-radius:12px;background-color:#fff}
  body.ap-voll .ap-form textarea{min-block-size:100px}
  body.ap-voll .ap-form .feld{margin:0}
  body.ap-voll .ap-form .feld>label,body.ap-voll .ap-form .feld .l{font-size:14px;font-weight:600}
  body.ap-voll .ap-form :is(.ml-felder,.material-felder,.schritt[data-schritt="2"]>.felder){display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:16px 12px}
  body.ap-voll .ap-form :is(.ml-felder,.material-felder,.schritt[data-schritt="2"]>.felder)>*{grid-column:1/-1}
  body.ap-voll .ap-form :is(.ml-felder,.material-felder)>.feld:has(input[name$="plz"]),body.ap-voll .ap-form :is(.ml-felder,.material-felder)>.feld:has(input[name$="_ort"]){grid-column:auto}
  body.ap-voll .ap-form :is(.material-summe,.auswahl-zeile,.rechner-summe){margin:20px 0 16px;padding:14px 16px;border:1px solid #e7e3dc;border-radius:14px;background:#fff}
  body.ap-voll .ap-form :is(.material-hinweis,.material-datenschutz,.hinweis,.datenschutz){font-size:14px;color:#6b6760}
  body.ap-voll .ap-form .material-lieferung{display:grid;gap:10px;margin:0 0 16px}
  body.ap-voll .ap-form .material-summe .material-summe-kopf{display:flex!important;justify-content:space-between;align-items:baseline;gap:12px;margin:12px 0 0;padding-top:12px;border-top:1px solid #e7e3dc;order:2;font-size:17px}
  body.ap-voll .ap-form .material-summe{display:flex;flex-direction:column}
  body.ap-voll .ap-form .material-hinweis{text-align:start;margin:0 0 8px}
  body.ap-voll .ap-form .material-datenschutz{text-align:start}
  body.ap-voll .ap-form .material-wahl input:checked+span{border-color:var(--bk-rot,#c8102e)!important;box-shadow:inset 0 0 0 1px var(--bk-rot,#c8102e)!important;background:#fdf3f4}
  body.ap-voll .ap-form .material-felder{margin-top:4px}
  /* Rechner: Plus/Minus wie im Offertformular */
  body.ap-voll .ap-form .stepper{display:grid;grid-template-columns:52px minmax(0,1fr) 52px auto;align-items:center;gap:8px;margin:0 0 12px}
  body.ap-voll .ap-form .stepper button{block-size:52px;border:1.5px solid #d9d5ce;border-radius:14px;background:#fff;color:#17191d;font-size:24px;line-height:1}
  body.ap-voll .ap-form .stepper input{block-size:52px;text-align:center;font-size:18px!important;font-weight:700}
  body.ap-voll .ap-form .stepper .einheit{font-size:15px;color:#6b6760}
  body.ap-voll .ap-form .rechner-teil .hilfe{font-size:14px;color:#6b6760}
  body.ap-voll .ap-form .stepper input{inline-size:100%!important;min-inline-size:0}
  /* Zähler und Team (Rechner), auf der Seite und im Vollbild */
  body.ap-handy .ap-form .team-wahl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;align-items:end}
  body.ap-handy .ap-form .team-wahl .gruppe{min-inline-size:0;margin:0;padding:0;border:0}
  body.ap-handy .ap-form .team-wahl .ap-mit-zaehler .zahlen{display:none}
  body.ap-handy .ap-form .team-wahl>.chip{grid-column:1/-1;display:flex;margin:0}
  body.ap-handy .ap-form .team-wahl>.chip span{inline-size:100%;min-block-size:50px;font-size:16px}
  body.ap-handy .ap-form .team-bild{display:none!important}
  body.ap-handy .ap-form .team-preis{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 12px;margin:16px 0 0;padding:14px 16px;border-radius:14px;background:#fff;border:1px solid #e7e3dc;font-size:15px}
  body.ap-handy .ap-form .team-preis b{white-space:nowrap;font-size:18px}
  .ap-zaehler{display:flex;align-items:center;justify-content:space-between;block-size:52px;margin-top:6px;padding:0 4px;border:1.5px solid #d9d5ce;border-radius:14px;background:#fff}
  .ap-zaehler button{inline-size:44px;block-size:44px;border:0;border-radius:10px;background:none;font-size:24px;line-height:1;color:inherit;cursor:pointer}
  .ap-zaehler output{font-size:18px;font-weight:700}
  /* Zusatzleistungen als Karten wie im Offertformular */
  body.ap-voll .ap-form .rechner-teil>.chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}
  body.ap-voll .ap-form .rechner-teil>.chips .chip{display:flex;margin:0}
  body.ap-voll .ap-form .rechner-teil>.chips .chip span{inline-size:100%;min-block-size:56px;justify-content:center;text-align:center;font-size:15px;border-radius:14px}
  body.ap-voll .ap-form .rechner-teil>.chips .chip span::before{display:none}
  body.ap-voll .ap-form .rechner-teil>.chips .chip input:checked+span{border-color:var(--bk-rot,#c8102e);box-shadow:inset 0 0 0 1px var(--bk-rot,#c8102e);background:#fdf3f4;color:#17191d}
  body.ap-voll .ap-form .rechner-block:not([hidden]){display:block;margin:0 0 16px;padding:16px;border:1px solid #e7e3dc;border-radius:16px;background:#fff}
  /* Fuss */
  body.ap-voll .ap-fuss{display:flex;gap:12px;position:fixed;inset:auto 0 0 0;z-index:2001;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e7e3dc}
  .ap-fuss .ap-zurueck{flex:none;display:grid;place-items:center;inline-size:52px;block-size:52px;border:1.5px solid #d9d5ce;border-radius:14px;background:#fff;color:#17191d;cursor:pointer}
  .ap-fuss .ap-weiter{flex:1 1 auto;block-size:52px;border:0;border-radius:14px;background:var(--bk-rot,#c8102e);color:#fff;font:inherit;font-size:17px;font-weight:700;cursor:pointer}
  .ap-fuss button:focus-visible,.ap-zu:focus-visible{outline:2px solid #17191d;outline-offset:2px}
}

/* 53 Datumsfelder: ganzes Feld klickbar (Kalender öffnet per Skript), Zeiger als Hand (03.11.2026) */
input:is([type="date"],[type="time"],[type="datetime-local"],[type="month"]):not(:disabled){cursor:pointer}
input:is([type="date"],[type="time"],[type="datetime-local"],[type="month"])::-webkit-calendar-picker-indicator{cursor:pointer}

/* 54 Offerte: Auszug (A, rot) und Einzug (B, blau) farbig unterschieden; bei nur einer Adresse neutral «Adresse» (03.11.2026) */
.offerte .adresse>legend{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px}
.offerte .adresse .adr-marke{display:inline-grid;place-items:center;flex:none;inline-size:26px;block-size:26px;border-radius:50%;color:#fff;font-size:14px;font-weight:700;line-height:1}
.offerte .adresse .adr-titel{font-weight:700}
.offerte .adresse .adr-hinweis{font-size:13px;font-weight:500;color:#6b6760}
.offerte .adresse .adr-eine{display:none}
.offerte .adresse[data-adresse="von"]{background:#fdf4f5;border-color:#efc6cc;box-shadow:inset 4px 0 0 #c8102e}
.offerte .adresse[data-adresse="von"] .adr-marke{background:#c8102e}
.offerte .adresse[data-adresse="nach"]{background:#f1f5fc;border-color:#c9d6ee;box-shadow:inset 4px 0 0 #234c9d}
.offerte .adresse[data-adresse="nach"] .adr-marke{background:#234c9d}
/* nur eine Adresse (z. B. Reinigung, Räumung, Möbellift): neutral */
.offerte .adressen:has(>.adresse[data-adresse="nach"][hidden])>.adresse[data-adresse="von"]{background:#fff;border-color:#e7e3dc;box-shadow:none}
.offerte .adressen:has(>.adresse[data-adresse="nach"][hidden]) :is(.adr-marke,.adr-zwei){display:none}
.offerte .adressen:has(>.adresse[data-adresse="nach"][hidden]) .adr-eine{display:inline}
@media (max-width:767.98px){
  body.of-voll .offerte .adresse[data-adresse="von"]{background:#fdf4f5;border-color:#efc6cc;box-shadow:inset 4px 0 0 #c8102e}
  body.of-voll .offerte .adresse[data-adresse="nach"]{background:#f1f5fc;border-color:#c9d6ee;box-shadow:inset 4px 0 0 #234c9d}
  body.of-voll .offerte .adressen:has(>.adresse[data-adresse="nach"][hidden])>.adresse[data-adresse="von"]{background:#fff;border-color:#e7e3dc;box-shadow:none}
  body.of-voll .offerte .adresse>legend{display:flex}
}

/* 55 Preiskarten: Bezugsrahmen für unsichtbare Screenreader-Texte, sonst ragen sie aus dem Wischbereich und machen die Seite breiter (03.11.2026) */
.ae-preise .pricing-table{position:relative}
/* 55b Ratgeber-Tabellen auf dem Handy: lange Beträge dürfen umbrechen (Klavier transportieren ragte 2 px hinaus) */
@media (max-width:699.98px){.ar-a .bk-tabelle :is(td,th),.ar-a .pl-tabelle :is(td,th){min-inline-size:0;overflow-wrap:anywhere;white-space:normal}.ar-a :is(.bk-tabelle-box,.bk-tabelle,.preisliste){max-inline-size:100%}.ar-a .pl-tabelle{inline-size:100%;table-layout:fixed}}

/* 56 Preisbedingungen mit 5 Karten: nie eine einzelne Karte in der letzten Reihe (04.11.2026: bei 1024 px 4 + 1, 18 Seiten).
   Breit 5 nebeneinander, mittel 3 + 2 (6er-Raster), schmal 2 + 2 + 1 breit, Handy untereinander.
   Alle Karten-Regeln mit gleicher Gewichtung (:nth-child), damit die schmalere Breite die breitere sicher überschreibt. */
.bk .pr-bed .preisbedingungen:has(>li:nth-child(5):last-child){grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1199.98px){
  .bk .pr-bed .preisbedingungen:has(>li:nth-child(5):last-child){grid-template-columns:repeat(6,minmax(0,1fr))}
  .bk .pr-bed .preisbedingungen:has(>li:nth-child(5):last-child)>li:nth-child(n){grid-column:span 2}
  .bk .pr-bed .preisbedingungen:has(>li:nth-child(5):last-child)>li:nth-child(n+4){grid-column:span 3}
}
@media (max-width:699.98px){
  .bk .pr-bed .preisbedingungen:has(>li:nth-child(5):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
  .bk .pr-bed .preisbedingungen:has(>li:nth-child(5):last-child)>li:nth-child(n){grid-column:auto}
  .bk .pr-bed .preisbedingungen:has(>li:nth-child(5):last-child)>li:nth-child(5){grid-column:1/-1}
}
@media (max-width:479.98px){
  .bk .pr-bed .preisbedingungen:has(>li:nth-child(5):last-child){grid-template-columns:minmax(0,1fr)}
}
/* 57 Ratgeber: vier Preiskacheln neben dem Inhaltsverzeichnis als 2 × 2 statt vier schmale Spalten
   (04.11.2026: «Dieses Team anfragen» und «pro Stunde, ganzes Team» brachen auf zwei Zeilen um) */
@media (min-width:640px){.ar-teil .ae-preise.ae-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* 58 Text-Bild-Block: die Textspalte wird nie breiter als ihr Platz im Raster; mit Tabelle unter 1180 px Bild und Text
   untereinander, damit die Tabelle Platz hat (04.11.2026: Räumung Aarau/Baden ragten bei 1024 px 34 px hinaus) */
.tb-b-text{grid-template-columns:minmax(0,1fr)}
@media (max-width:1179.98px){
  .tb-b-box:has(.tb-b-text table),.tb-b-box.tb-b-hoch:has(.tb-b-text table){grid-template-columns:minmax(0,1fr)}
  .tb-b-box:has(.tb-b-text table) .tb-b-bild{order:0}
  .tb-b-box:has(.tb-b-text table) .tb-b-bild img{aspect-ratio:16/9}
}
/* 59 Handy-Menü nur sichtbar, wenn es geöffnet ist (html.bk-menu-offen, gesetzt von baukasten.js beim Öffnen).
   Vorher war es sichtbar, bis das Skript «hidden» setzte: WP Rocket lädt Skripte erst bei der ersten Berührung,
   und im Bricks-Editor läuft es gar nicht – das Menü lag offen über der Seite (Rückmeldung Nutzer 04.11.2026). */
@media (max-width:1239.98px){html:not(.bk-menu-offen) .bk .kz-mobil{display:none!important}}
/* 60 Kacheln mit langen Wörtern (z. B. «Lagerhalterhaftpflicht» auf Einlagerung, 390 px): Silbentrennung statt Überlauf (04.11.2026) */
.bk .kc-kachel{hyphens:auto;overflow-wrap:break-word}
/* 61 Überlange Wörter, E-Mail- und Web-Adressen in Texten umbrechen statt über den Rand ragen (bricht nur, wenn es sonst
   nicht passt; 04.11.2026: E-Mail der Einwohnerkontrolle in FAQ-Antworten der Ortsseiten ragte bei 390 px 28 px hinaus) */
.bk :is(p,li,dd,dt,td,th,figcaption,blockquote,summary){overflow-wrap:break-word}
/* 62 Titelbereich (he-a) in jeder Lage mit festem Abstandsraster (Musterseite Privatumzug freigegeben 04.11.2026, alle Seiten).
   Handy: Breadcrumb · Überschrift · Bild · Knöpfe · Text · Vorteile (Bild und beide Knöpfe im ersten Bildschirm, auch 360 × 740).
   Tablet hochkant: Breadcrumb · Überschrift · Bild (mit Rand, runde Ecken) · Text · Knöpfe · Vorteile.
   Tablet quer / kleiner Laptop: zwei Spalten, Bild höchstens bildschirmhoch (sonst hoch und schmal beschnitten).
   Abstände: Überschrift→Text/Bild 20 px, Bild→Knöpfe 24 px, Text↔Knöpfe 32 px, Knöpfe→Vorteile 36 px.
   Ausnahmen: Panorama-Bilder 16:9, Hochformat 4:3 auf normalen Handys, kleine Bilder (bk-klein) eigene Höhe – nicht beim
   Doppelbild (dessen Einsatzfoto ist oft bk-klein, sonst Bildfläche 0 px hoch) –, Shop eigene Bildhöhe. */
.he-a .bk-h1{margin-bottom:max(.35em,1.25rem)}
@media (max-width:899.98px){
  .he-a .bk-wrap>div:first-child{display:contents}
  .he-a .bk-wrap>div:first-child>*{grid-column:text-start/bild-start}
  .he-a .he-krumen{order:1;margin:1.25rem 0 0}
  .he-a .bk-h1{order:2;margin:.75rem 0 1.25rem}
  /* Bildhöhe kommt vom Bild selbst (im Fluss), nicht von aspect-ratio der Bildfläche: manche Handy-Browser (v. a. ältere
     iPhones) setzen aspect-ratio im Raster nicht um – dann war die Fläche 0 px hoch, Bild weg, Bewertungsschild im Text (04.11.2026) */
  .he-a .he-a-bild{order:3;aspect-ratio:auto;min-block-size:0}
  .he-a .he-a-bild>img:not(.bk-klein-1,.bk-klein-2,.bk-klein-3){position:relative;inset:auto;display:block;inline-size:100%;block-size:auto;aspect-ratio:3/2;object-fit:cover}
  .he-a .bk-lead{order:4;margin:1.5rem 0 0}
  .he-a .bk-btns{order:5;margin-top:2rem}
  .he-a .he-vorteile{order:6;margin:2.25rem 0 3rem}
  .he-a .he-a-bild.he-a-panorama>img{aspect-ratio:16/9}
  .he-a .he-a-bild:not(.he-a-doppel):has(img:is(.bk-klein-1,.bk-klein-2,.bk-klein-3)){aspect-ratio:auto}
  /* Bewertungsschild kleiner, damit es das flachere Bild nicht zu einem Drittel verdeckt */
  .he-a-note{bottom:.75rem;column-gap:.6rem;padding:.55rem .8rem}
  .he-a-note b{font-size:1.65rem}
  .he-a-note .bk-sterne{font-size:.85rem}
  .he-a-note span:last-child{font-size:.75rem}
  .he-a-bild .bk-band{top:.75rem}
}
/* Handy: Knöpfe direkt unter das Bild, Text danach – sonst schiebt der lange Text die Knöpfe aus dem ersten Bildschirm
   (Rückmeldung Nutzer 04.11.2026 zu 360 × 740) */
@media (max-width:599.98px){
  .he-a .bk-btns{order:4;margin-top:1.5rem}
  .he-a .bk-lead{order:5;margin-top:2rem}
}
@media (max-width:599.98px) and (min-height:760px){.he-a .he-a-bild.he-a-hoch>img{aspect-ratio:4/3}}
/* Doppelbild am Handy: Einsatzfoto etwas kleiner, sonst liegt es über dem Bewertungsschild («20 Google-Bewertungen» abgeschnitten) */
@media (max-width:599.98px){.he-a-doppel .he-a-einsatz{inline-size:min(31%,160px)}}
/* Niedrige Handys (z. B. iPhone SE 375 × 667): Bild flacher, damit auch der Telefon-Knopf über der Leiste unten bleibt */
@media (max-width:599.98px) and (max-height:700px){.he-a .he-a-bild>img:not(.bk-klein-1,.bk-klein-2,.bk-klein-3){aspect-ratio:16/9}}
/* Browser ohne aspect-ratio: feste, zur Breite passende Bildhöhe statt Originalformat (Hochformat wäre sonst sehr hoch) */
@supports not (aspect-ratio:1/1){@media (max-width:899.98px){.he-a .he-a-bild>img:not(.bk-klein-1,.bk-klein-2,.bk-klein-3){block-size:66.6vw;max-block-size:30rem}}}
/* Tablet hochkant: Bild innerhalb der Ränder mit runden Ecken, Text etwas mehr Luft, Knöpfe nebeneinander */
@media (min-width:600px) and (max-width:899.98px){
  .he-a .he-a-bild{grid-column:text-start/bild-start}
  .he-a .he-a-bild img{border-radius:var(--bk-r-l)}
  .he-a .he-a-bild .bk-band{right:1rem}
  .he-a-note{left:1rem;bottom:1rem}
  .he-a .bk-lead{margin-top:1.75rem}
}
/* Tablet quer und kleiner Laptop: Bild nicht höher als der Bildschirm unter dem Kopf (Shop behält seine Bildhöhe) */
@media (min-width:900px) and (max-width:1239.98px){
  .he-a:not(.he-shop) .he-a-bild{align-self:start;min-block-size:0;block-size:min(56rem,calc(100svh - 5.75rem))}
}
/* 63 Startseite am Handy: Titelbild (Lieferwagen, Hochformat) höher zeigen und auf Wagen und Schriftzug ausrichten –
   im flachen 3:2-Ausschnitt war es kaum zu erkennen (Rückmeldung Nutzer 04.11.2026). Niedrige Handys 16:9, Knöpfe bleiben sichtbar. */
@media (max-width:599.98px){body.typ-startseite .he-a .he-a-bild>img{aspect-ratio:4/3;object-position:50% 86%}}
@media (max-width:599.98px) and (max-height:700px){body.typ-startseite .he-a .he-a-bild>img{aspect-ratio:16/9;object-position:50% 62%}}
/* 64 Sehr schmale Handys (320 px, z. B. iPhone mini mit «Gezoomt»-Anzeige): Rasterelemente dürfen schmaler als ihr längstes
   Wort werden; Kacheltitel mit Silbentrennung (04.11.2026, WebKit-Prüfung: Leistungskacheln und FAQ 2–4 px zu breit) */
.bk .le-k>*,.fq-d-liste>*{min-inline-size:0}
.bk .le-k .le-k-titel{hyphens:auto;overflow-wrap:break-word}
.fq-d summary{min-inline-size:0;overflow-wrap:break-word;hyphens:auto}
/* Fusszeile (fz-10): Linklisten nie breiter als ihre Spalte; lange Einträge («Reinigung mit Abnahmegarantie») umbrechen
   mit Silbentrennung (bei 320 px ragten sie 2 px hinaus) */
.fz-a .fz-10 ul{grid-template-columns:minmax(0,1fr)}
.fz-a .fz-10 li{min-inline-size:0}
.fz-a .fz-10 a{max-inline-size:100%;hyphens:auto;overflow-wrap:break-word}
