/* ============================================================
   Blitzsauber Gebäudereinigung — Design System
   Basis: DESIGN.md (Committed-Blue-Strategie, Archivo, ruhige Motion)
   ============================================================ */

/* ---------- Font (lokal gehostet, DSGVO-konform) ---------- */
@font-face {
  font-family: "Archivo";
  src: url("data:font/woff2;base64,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") format("woff2-variations");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

/* ---------- Tokens ---------- */
:root {
  --brand: #215aa7;
  --brand-deep: #163d72;
  --brand-ink: #0e2a52;
  --ink: #101b2e;
  --ink-soft: #3e4c63;
  --bg: #f9fafc;
  --surface: #ffffff;
  --line: #dfe4ec;
  --blitz: #f0b429;

  /* Signalfarben für den Abschnitt "Das Problem / Unsere Antwort".
     Sie erscheinen NUR dort — überall sonst bleibt es bei Blau und Bernstein.
     Getrennt nach Verwendung, weil auf dem dunklen Markenblau unterschiedliche
     Grenzen gelten: Kanten und Flächen dürfen voll gesättigt sein, Schrift
     braucht mindestens 4,5:1 Kontrast und muss deshalb heller bleiben. */
  /* Die Signalfarben --stop-band/--go-band/--go-text sind am 14.08.2026
     entfallen. Sie trugen den Problem/Antwort-Abschnitt, kamen sonst
     nirgends auf der Seite vor und liefen gegen die Farbstrategie oben. */
  --success: #1f7a4d;
  --error: #c02f28;

  --radius-card: 16px;
  --radius-input: 10px;
  --radius-frame: 28px;

  --shadow-soft: 0 24px 60px -28px rgba(16, 27, 46, 0.22);
  --shadow-lift: 0 10px 30px -14px rgba(33, 90, 167, 0.35);

  --ease-out: cubic-bezier(0.23, 1, 0.32, 1);
  --ease-drawer: cubic-bezier(0.32, 0.72, 0, 1);

  --container: 1160px;
  --gutter: clamp(1rem, 4vw, 2.5rem);
  --section: clamp(4rem, 9vw, 7rem);

  --z-sticky: 200;
  --z-overlay: 300;
  --z-dialog: 400;
}

/* ---------- Reset ---------- */
*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body {
  font-family: "Archivo", system-ui, -apple-system, "Segoe UI", sans-serif;
  font-size: 1.0625rem;
  line-height: 1.6;
  color: var(--ink);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
}
/* Herkules-Bauwerk aus dem Logo als dezentes, seitenweites Hintergrundzeichen.
   Fixiert hinter dem gesamten Inhalt, sehr niedrige Deckkraft: schimmert nur in den
   hellen Content-Bereichen durch und stört farbige Flächen (Hero, Footer) nicht. */
body::before {
  content: "";
  position: fixed;
  z-index: -1;
  right: clamp(1rem, 3vw, 3rem);
  bottom: clamp(1rem, 3vw, 2.5rem);
  width: min(360px, 34vw);
  aspect-ratio: 469 / 503;
  background: url("../img/herkules-mark.png") no-repeat center / contain;
  opacity: 0.05;
  pointer-events: none;
}
@media (max-width: 640px) {
  body::before { width: 52vw; opacity: 0.045; right: 1rem; bottom: 1rem; }
}
img, svg { display: block; max-width: 100%; }
a { color: var(--brand); text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover { color: var(--brand-deep); }
:focus-visible { outline: 3px solid var(--blitz); outline-offset: 2px; border-radius: 4px; }

/* Sprunglink: erstes fokussierbares Element der Seite. Unsichtbar, bis er per
   Tab fokussiert wird — dann faehrt er oben links ein. Tastaturnutzer sparen
   sich damit die 16 Navigationslinks vor dem eigentlichen Inhalt.
   Bewegt wird per transform (kein Layout-Property) und liegt ueber dem
   klebenden Kopfbereich (z-Skala: sticky 200, overlay 300, dialog 400). */
.skip-link {
  position: fixed;
  left: 1rem;
  top: 1rem;
  z-index: 500;
  transform: translateY(calc(-100% - 1.5rem));
  background: var(--surface);
  color: var(--ink);
  border: 2px solid var(--brand);
  border-radius: var(--radius-input);
  padding: 0.8rem 1.3rem;
  font-weight: 600;
  text-decoration: none;
  box-shadow: var(--shadow-soft);
  transition: transform 160ms var(--ease-out);
}
.skip-link:focus { transform: translateY(0); }

/* Sprungziel. scroll-margin-top haelt den Inhalt unter dem klebenden
   Kopfbereich hervor; der Fokusrahmen um den gesamten Hauptbereich waere
   sinnlos, da <main> kein Bedienelement ist. */
#inhalt { scroll-margin-top: 90px; }
#inhalt:focus { outline: none; }

@media (prefers-reduced-motion: reduce) {
  .skip-link { transition: none; }
}

/* Nur fuer Screenreader und Suchmaschinen sichtbar, optisch nicht vorhanden.
   Bewusst NICHT display:none oder visibility:hidden — das wuerde den Inhalt
   auch fuer Screenreader entfernen. Stattdessen auf 1px zusammengeschnitten. */
.sr-only {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
::selection { background: var(--brand); color: #fff; }

/* ---------- Typografie ---------- */
/* Silbentrennung: greift nur, weil <html lang="de"> gesetzt ist. Ohne sie liefen
   lange Komposita bei 320px aus dem Container — gemessen "Datenschutzerklaerung"
   mit 358px in einer 288px breiten Spalte. break-word ist nur das Netz darunter,
   fuer Woerter, die auch getrennt nicht passen. */
h1, h2, h3 { text-wrap: balance; hyphens: auto; overflow-wrap: break-word; }
/* Zeilenhoehe 1.12 ist Display-Durchschuss und passt zu grossen Ueberschriften.
   h3 wird in Karten und Baendern bis auf 13,8px heruntergesetzt; dort klebten die
   Zeilen aneinander. Deshalb eine eigene Stufe statt eines Wertes fuer alles. */
h1, h2 { line-height: 1.12; font-weight: 780; letter-spacing: -0.02em; }
h1 { font-size: clamp(2.1rem, 4.6vw, 3.4rem); }
h2 { font-size: clamp(1.6rem, 3.2vw, 2.3rem); }
h3 { font-size: 1.19rem; font-weight: 680; letter-spacing: -0.01em; line-height: 1.3; }
p { max-width: 68ch; text-wrap: pretty; }
.lead { font-size: 1.15rem; color: var(--ink-soft); }
.muted { color: var(--ink-soft); }

/* ---------- Layout ---------- */
.container { max-width: var(--container); margin-inline: auto; padding-inline: var(--gutter); }
.section { padding-block: var(--section); }
.section-tight { padding-block: calc(var(--section) * 0.55); }
.section-head { max-width: 640px; margin-bottom: clamp(2rem, 4vw, 3rem); }
.section-head p { margin-top: 0.75rem; color: var(--ink-soft); }

.icon { width: 1.35em; height: 1.35em; flex: none; }

/* ---------- Buttons (Shape-System: Pills) ---------- */
.btn {
  display: inline-flex; align-items: center; gap: 0.65rem;
  padding: 0.85rem 1.5rem; border-radius: 999px;
  font: inherit; font-weight: 640; letter-spacing: 0.005em;
  text-decoration: none; cursor: pointer; border: 1px solid transparent;
  transition: transform 160ms var(--ease-out), background-color 180ms var(--ease-out),
              border-color 180ms var(--ease-out), box-shadow 180ms var(--ease-out);
  min-height: 48px;
}
.btn:active { transform: scale(0.97); }
.btn .btn-orb {
  width: 2rem; height: 2rem; border-radius: 999px;
  display: inline-flex; align-items: center; justify-content: center;
  margin-right: -0.5rem;
  transition: transform 220ms var(--ease-out);
}
.btn:hover .btn-orb { transform: translateX(3px); }
.btn .btn-orb .icon { width: 1rem; height: 1rem; }

.btn-primary { background: var(--brand); color: #fff; box-shadow: var(--shadow-lift); }
.btn-primary:hover { background: var(--brand-deep); color: #fff; }
.btn-primary .btn-orb { background: rgba(255, 255, 255, 0.16); }

.btn-invert { background: #fff; color: var(--brand-deep); }
.btn-invert:hover { background: #eef3fa; color: var(--brand-ink); }
.btn-invert .btn-orb { background: rgba(33, 90, 167, 0.12); }

.btn-ghost { border-color: var(--line); color: var(--ink); background: var(--surface); }
.btn-ghost:hover { border-color: var(--brand); color: var(--brand-deep); }
/* Rahmen und Flaeche muessen zusammen 3:1 gegen den Hero-Verlauf erreichen —
   WCAG 2.1, Kriterium 1.4.11 gilt fuer die Umrandung eines Bedienelements, nicht
   nur fuer die Beschriftung. Mit 0.35 Weiss waren es gemessene 2,64:1: die
   Schrift war einwandfrei, die Schaltflaeche als solche aber kaum zu sehen.
   Fuer eine Zielgruppe, deren Beschwerde "niemand ist erreichbar" lautet, ist
   das ausgerechnet der Anruf-Knopf. */
.btn-ghost-dark { border-color: rgba(255, 255, 255, 0.62); color: #fff; background: rgba(255, 255, 255, 0.1); }
.btn-ghost-dark:hover { border-color: #fff; color: #fff; background: rgba(255, 255, 255, 0.18); }

/* Zeit-Badge: das wiederkehrende Markenelement */
.blitz-badge {
  display: inline-flex; align-items: center; gap: 0.45rem;
  background: var(--blitz); color: var(--brand-ink);
  border-radius: 999px; padding: 0.38rem 0.95rem;
  font-weight: 680; font-size: 0.92rem;
}
.blitz-badge .icon { width: 1em; height: 1em; }

/* ---------- Header ---------- */
.site-header {
  position: sticky; top: 0; z-index: var(--z-sticky);
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--line);
}
.header-bar {
  display: flex; align-items: center; gap: 1.5rem;
  min-height: 74px;
}
.logo-link { flex: none; }
.logo-link img { height: 46px; width: auto; }
.main-nav { margin-left: auto; display: flex; align-items: center; gap: 1.6rem; }
.main-nav > a {
  color: var(--ink); text-decoration: none; font-weight: 560; font-size: 0.99rem;
  padding: 0.35rem 0.1rem; border-bottom: 2px solid transparent;
}
.main-nav > a:hover, .main-nav > a[aria-current="page"] { color: var(--brand); border-bottom-color: var(--brand); }
.nav-cta { display: flex; align-items: center; gap: 0.9rem; }
.nav-phone {
  display: inline-flex; align-items: center; gap: 0.45rem;
  color: var(--ink); text-decoration: none; font-weight: 640; font-size: 0.99rem;
}
.nav-phone:hover { color: var(--brand); }
.nav-cta .btn { padding: 0.62rem 1.25rem; min-height: 42px; }

/* Dropdown Leistungen */
.nav-drop { position: relative; }
.nav-drop > button {
  font: inherit; font-weight: 560; font-size: 0.99rem; color: var(--ink);
  background: none; border: none; cursor: pointer;
  display: inline-flex; align-items: center; gap: 0.3rem;
  padding: 0.35rem 0.1rem; border-bottom: 2px solid transparent;
}
.nav-drop > button:hover, .nav-drop[data-open] > button { color: var(--brand); }
.nav-drop > button .icon { width: 0.9em; height: 0.9em; transition: transform 200ms var(--ease-out); }
.nav-drop[data-open] > button .icon { transform: rotate(180deg); }
.drop-panel {
  /* --drop-x steuert die waagerechte Ausrichtung und wird von beiden
     Transform-Zustaenden benutzt, damit die Oeffnen-Animation gleich bleibt. */
  --drop-x: -50%;
  position: absolute; top: calc(100% + 14px); left: 50%; transform: translateX(var(--drop-x)) translateY(6px) scale(0.98);
  transform-origin: top center;
  background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-card);
  box-shadow: var(--shadow-soft);
  padding: 1.1rem; width: min(720px, calc(100vw - 2rem));
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.1rem;
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity 180ms var(--ease-out), transform 180ms var(--ease-out), visibility 0s linear 180ms;
}

/* Auf Tablets im Querformat (gemessen: ab 1150 px abwaerts) steht die
   Schaltflaeche "Leistungen" so weit links, dass das mittig ausgerichtete
   Fenster aus dem Bild ragt - bei 1024 px um 118 px. Ab hier oeffnet es
   deshalb nach rechts, buendig mit der linken Kante der Schaltflaeche.
   Die Laptop-Ansicht darueber bleibt unveraendert mittig. */
/* Beschriftungen der Kopfzeile duerfen nie umbrechen - "Ueber uns" oder
   "Kostenloses Angebot" auf zwei Zeilen laesst die Leiste kaputt aussehen. */
.main-nav > a, .nav-drop > button, .nav-phone, .nav-cta .btn .btn-label { white-space: nowrap; }

@media (max-width: 1180px) {
  .drop-panel { --drop-x: 0%; left: 0; transform-origin: top left; }
}

/* Tablet-Querformat (1024-1180 px): Der Platz in der Kopfzeile wird knapp,
   ohne diese Regeln brechen "Ueber uns", die Telefonnummer und der
   Angebots-Knopf zweizeilig um. Bewusst mit Untergrenze, damit die Werte auf
   dem Handy unveraendert bleiben - dort greift ab 1023 px das Mobilmenue. */
@media (min-width: 1024px) and (max-width: 1180px) {
  .header-bar { gap: 1rem; }
  .main-nav { gap: 1.05rem; }
  .main-nav > a, .nav-drop > button, .nav-phone { font-size: 0.94rem; }
  .nav-cta { gap: 0.65rem; }
  .nav-cta .btn { padding: 0.6rem 1rem; }
  .logo-link img { height: 42px; }
}

.nav-drop[data-open] .drop-panel {
  opacity: 1; visibility: visible; pointer-events: auto;
  transform: translateX(var(--drop-x)) translateY(0) scale(1);
  transition-delay: 0s;
}
.drop-col a { display: block; color: var(--ink); text-decoration: none; padding: 0.3rem 0; font-size: 0.96rem; }
.drop-col a:hover { color: var(--brand); }

/* Mobile Menü */
.menu-toggle {
  display: none; background: none; border: 1px solid var(--line); border-radius: 999px;
  width: 46px; height: 46px; align-items: center; justify-content: center; cursor: pointer; color: var(--ink);
}
.mobile-menu {
  position: fixed; inset: 0; z-index: var(--z-overlay);
  background: rgba(14, 42, 82, 0.98);
  display: flex; flex-direction: column; padding: 1.25rem var(--gutter) 2.5rem;
  opacity: 0; visibility: hidden; transition: opacity 260ms var(--ease-drawer), visibility 0s linear 260ms;
  overflow-y: auto;
}
.mobile-menu[data-open] { opacity: 1; visibility: visible; transition-delay: 0s; }
.mobile-menu-head { display: flex; justify-content: space-between; align-items: center; min-height: 74px; }
/* width:auto ist noetig, seit das Bild width/height-Attribute hat: die wirken
   sonst als Style-Vorgabe und wuerden das Logo auf 1290px Breite ziehen.
   Die Attribute selbst bleiben wichtig — aus ihnen leitet der Browser das
   Seitenverhaeltnis ab und reserviert den Platz, bevor das Bild geladen ist. */
.mobile-menu-head img { height: 42px; width: auto; }
.mobile-menu-close { background: rgba(255,255,255,0.1); border: none; color: #fff; width: 46px; height: 46px; border-radius: 999px; display: flex; align-items: center; justify-content: center; cursor: pointer; }
.mobile-menu nav { display: flex; flex-direction: column; gap: 0.2rem; margin-top: 1.5rem; }
.mobile-menu nav a {
  color: #fff; text-decoration: none; font-size: 1.35rem; font-weight: 680;
  padding: 0.55rem 0; border-bottom: 1px solid rgba(255,255,255,0.12);
  opacity: 0; transform: translateY(14px);
  transition: opacity 340ms var(--ease-out), transform 340ms var(--ease-out);
}
.mobile-menu nav a.sub { font-size: 1.02rem; font-weight: 480; color: rgba(255,255,255,0.85); padding-left: 1rem; }
.mobile-menu[data-open] nav a { opacity: 1; transform: translateY(0); }
.mobile-menu .menu-contact { margin-top: 1.75rem; display: flex; flex-direction: column; gap: 0.9rem; }

/* ---------- Hero ---------- */
.hero {
  background: linear-gradient(168deg, var(--brand) 0%, var(--brand-deep) 78%, var(--brand-ink) 100%);
  color: #fff; position: relative; overflow: hidden;
}
.hero-grid {
  display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: clamp(2rem, 5vw, 4.5rem); align-items: center;
  padding-block: clamp(3.5rem, 7vw, 6rem);
}
.hero h1 { color: #fff; max-width: 24ch; font-size: clamp(2rem, 4vw, 2.9rem); }
.hero .lead { color: rgba(255, 255, 255, 0.88); margin-top: 1.1rem; max-width: 46ch; }
.hero-ctas { display: flex; flex-wrap: wrap; gap: 0.9rem; margin-top: 1.9rem; }
.hero-note { margin-top: 1.1rem; font-size: 1.0625rem; color: rgba(255,255,255,0.85); }
.hero-note a { color: #fff; }

/* Foto im Doppelrahmen */
.hero-media { position: relative; }
.photo-frame {
  /* Der Doppelrahmen ist in DESIGN.md eine benannte Komponente. Vorher lag die
     Kante bei 1,79:1 gegen das Hero-Blau: auf einem Screenshot sichtbar, auf
     einem Telefon im hellen Buero praktisch nicht — also genau in der Szene,
     die DESIGN.md unter "Theme" beschreibt.
     Gesehen wird nicht die 1px-Linie, sondern das 10px breite helle Band
     dazwischen. Deshalb traegt das Band die Sichtbarkeit und die Kante bleibt
     eine feine Zeichnung. WCAG 1.4.11 fordert hier nichts — der Rahmen ist
     Dekoration, kein Bedienelement; Maßstab ist die Sichtbarkeit im Tageslicht. */
  background: rgba(255, 255, 255, 0.16);
  border: 1px solid rgba(255, 255, 255, 0.38);
  border-radius: var(--radius-frame);
  padding: 10px;
}
.photo-frame img {
  border-radius: calc(var(--radius-frame) - 10px);
  width: 100%; height: 100%; object-fit: cover;
  aspect-ratio: 4 / 5;
}
.hero-media .blitz-badge {
  position: absolute; top: 22px; left: -14px;
  box-shadow: 0 8px 24px -8px rgba(14, 42, 82, 0.55);
}

/* ---------- Versprechen-Leiste ---------- */
.promises { border-bottom: 1px solid var(--line); background: var(--surface); }
.promises-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: clamp(1.25rem, 3vw, 2.5rem); padding-block: clamp(2rem, 4vw, 3rem); }
.promise { display: flex; gap: 0.9rem; align-items: flex-start; }
.promise .icon { color: var(--brand); width: 1.6rem; height: 1.6rem; margin-top: 0.2rem; }
.promise h3 { font-size: 1.15rem; }
.promise p { font-size: 1rem; color: var(--ink-soft); margin-top: 0.25rem; }

/* Die Rubriken-Bausteine (.cat-block, .cat-media, .cat-body, .cat-links) sind
   mit dem Wegfall der Rubriken aus dem Markup verschwunden; die Regeln standen
   danach noch da. Am 13.08.2026 entfernt, gegengeprueft: null Vorkommen in allen
   20 erzeugten Seiten. Ersetzt durch .svc-grid weiter unten. */

/* ---------- Leistungs-Raster (seit Wegfall der Rubriken) ----------
   Eine Karte je Leistung, gleiche Höhe, ohne Foto. Wird auf der Startseite
   und auf leistungen.html verwendet. */
.svc-grid {
  list-style: none; padding: 0; margin: 0;
  display: grid; grid-template-columns: repeat(auto-fit, minmax(265px, 1fr));
  gap: 0.9rem;
}
.svc-grid a {
  display: flex; align-items: flex-start; gap: 0.7rem; height: 100%;
  background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius-card);
  padding: 1.05rem 1.15rem; text-decoration: none; color: var(--ink);
  transition: border-color 200ms var(--ease-out), box-shadow 200ms var(--ease-out), transform 200ms var(--ease-out);
}
.svc-grid a:hover, .svc-grid a:focus-visible {
  border-color: var(--brand); box-shadow: var(--shadow-soft); transform: translateY(-2px);
}
.svc-grid a .icon { width: 1.05rem; height: 1.05rem; flex: none; margin-top: 0.2rem; color: var(--brand); transition: transform 200ms var(--ease-out); }
.svc-grid a:hover .icon { transform: translateX(3px); }
.svc-grid strong { display: block; font-weight: 660; font-size: 1.02rem; letter-spacing: -0.01em; }
.svc-sub { display: block; margin-top: 0.2rem; color: var(--ink-soft); font-size: 1rem; font-weight: 400; line-height: 1.45; }

/* Fußzeile des Klappfensters: Link auf die Übersichtsseite über alle Spalten */
.drop-all {
  grid-column: 1 / -1; display: inline-flex; align-items: center; gap: 0.4rem;
  margin-top: 0.2rem; padding-top: 0.8rem; border-top: 1px solid var(--line);
  color: var(--brand); font-weight: 620; font-size: 0.93rem; text-decoration: none;
}
.drop-all .icon { width: 0.95rem; height: 0.95rem; transition: transform 200ms var(--ease-out); }
.drop-all:hover .icon { transform: translateX(3px); }

/* ---------- Problem / Lösung ---------- */
.contrast { background: var(--brand-ink); color: #fff; position: relative; overflow: hidden; }
.contrast h2 { color: #fff; }
.contrast .section-head p { color: rgba(255, 255, 255, 0.8); }
/* Zwei Seiten, aber nur EINE Flaeche (Stand 14.08.2026).
   Vorher trugen zwei Signalfarben den Abschnitt: eine gefuellte Kopfleiste in
   Rot (#ce3320) bzw. Gruen (#0f8449) plus getoente Spalten. Beide Farben kamen
   sonst nirgends auf der Seite vor und liefen gegen die Farbstrategie in
   DESIGN.md, die auf Blau plus --blitz festgelegt ist und einen Gruen-Reflex
   der Reinigungsbranche ausdruecklich ausschliesst. Die Rot-Toenung ueber dem
   Marineblau kippte ausserdem ins Pflaumenfarbene.
   Jetzt: Die Problemseite steht als reiner Text auf dem Marineblau, die
   Antwortseite als einziges Panel im Markenblau, die Haken in --blitz. Die
   Zuordnung laeuft damit ueber Gewicht, Flaeche und die Spaltentitel im Text,
   ist also unabhaengig vom Farbsehen lesbar. Bewusst KEIN farbiger
   Seitenstreifen: der ist das verbreitetste Erkennungsmerkmal generierter
   Oberflaechen. */
.pl-grid {
  display: grid;
  grid-template-columns: 0.82fr 1.18fr;
  gap: clamp(1.4rem, 4vw, 3rem);
  align-items: start;
}
.pl-side h3, .pl-panel h3 {
  margin: 0 0 0.9rem;
  font-size: 0.86rem;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  font-weight: 700;
  line-height: 1.4;
}
/* Problemseite: der Aufhaenger, nicht die Aussage — bewusst zurueckgenommen. */
.pl-side h3 { color: rgba(255, 255, 255, 0.62); }
.pl-side .pl-item { padding: 0.95rem 0; border-top: 1px solid rgba(255, 255, 255, 0.14); }
.pl-side .pl-item:first-of-type { border-top: 0; padding-top: 0; }
.pl-side strong { display: block; font-size: 1.02rem; font-weight: 620; color: rgba(255, 255, 255, 0.92); }
.pl-side p { margin-top: 0.3rem; font-size: 1rem; line-height: 1.55; color: rgba(255, 255, 255, 0.72); }
/* Antwortseite: die einzige Flaeche im ganzen Abschnitt. */
.pl-panel {
  background: rgba(33, 90, 167, 0.38);
  border-radius: var(--radius-card);
  padding: clamp(1.3rem, 2.6vw, 1.9rem) clamp(1.2rem, 2.4vw, 1.7rem);
}
.pl-panel h3 { color: #fff; }
.pl-panel .pl-item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.85rem;
  padding: 1rem 0;
  border-top: 1px solid rgba(255, 255, 255, 0.16);
}
.pl-panel .pl-item:first-of-type { border-top: 0; padding-top: 0; }
.pl-panel strong { display: block; font-size: 1.06rem; font-weight: 680; letter-spacing: -0.01em; color: #fff; }
.pl-panel p { margin-top: 0.35rem; font-size: 1rem; line-height: 1.55; color: rgba(255, 255, 255, 0.85); max-width: 48ch; }
.pl-panel .icon { color: var(--blitz); width: 1.4rem; height: 1.4rem; margin-top: 0.15rem; }

/* Der Prozess-Baustein hat zwei Umbauten hinter sich: .steps/.step wurde durch
   .process-card ersetzt (Reste am 13.08.2026 entfernt), die Karten wiederum am
   14.08.2026 durch .process-rail. Beide Male gegengeprueft: null Vorkommen der
   alten Klassen in allen 20 erzeugten Seiten. */

/* ---------- Über uns ---------- */
.about-grid { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 5fr); gap: clamp(2rem, 5vw, 4rem); align-items: center; }
.about-grid .photo-frame { background: rgba(33, 90, 167, 0.07); border-color: var(--line); }
.about-grid .photo-frame img { aspect-ratio: 4 / 3; }
.owner-line { margin-top: 1.5rem; padding-left: 1.1rem; border-left: 3px solid var(--blitz); font-size: 1.05rem; color: var(--ink); font-style: normal; }
.owner-line footer { margin-top: 0.5rem; font-size: 0.92rem; color: var(--ink-soft); font-weight: 600; }

/* Die Einzugsgebiet-Chips (.area-chips/.area-chip) sind nicht mehr im Markup.
   Am 13.08.2026 entfernt, gegengeprueft: null Vorkommen in 20 Seiten. */

/* ---------- Formular / Kontakt ---------- */
.cta-panel { background: linear-gradient(168deg, var(--brand) 0%, var(--brand-deep) 85%); color: #fff; position: relative; overflow: hidden; }
.cta-grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(2rem, 5vw, 4rem); align-items: start; }
.cta-copy h2 { color: #fff; }
.cta-copy .lead { color: rgba(255, 255, 255, 0.85); margin-top: 0.9rem; }
.contact-ways { list-style: none; margin: 1.75rem 0 0; padding: 0; display: flex; flex-direction: column; gap: 0.9rem; }
.contact-ways a {
  display: inline-flex; align-items: center; gap: 0.7rem;
  color: #fff; text-decoration: none; font-weight: 620; font-size: 1.05rem;
}
.contact-ways a:hover { color: var(--blitz); }
.contact-ways .icon { width: 1.3rem; height: 1.3rem; color: var(--blitz); }
.contact-ways small { display: block; font-weight: 420; font-size: 0.9375rem; color: rgba(255,255,255,0.8); }

.form-card {
  background: var(--surface); color: var(--ink);
  border-radius: var(--radius-frame); padding: clamp(1.5rem, 3.5vw, 2.5rem);
  box-shadow: var(--shadow-soft);
}
.form-card h3 { font-size: 1.3rem; }
.form-card .form-sub { font-size: 1rem; color: var(--ink-soft); margin-top: 0.35rem; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem 1.1rem; margin-top: 1.4rem; align-items: start; }
.field label { min-height: 1.35rem; display: flex; align-items: end; }
.field { display: flex; flex-direction: column; gap: 0.35rem; }
.field.wide { grid-column: 1 / -1; }
/* Das Label wird VOR dem Feld gelesen, das es beschreibt. Es darf deshalb nicht
   kleiner sein als die Antwort darin (die Felder stehen auf 1rem). */
.field label { font-size: 1rem; font-weight: 640; }
.field label .req { color: var(--error); }
.field input, .field select, .field textarea {
  width: 100%;
  font: inherit; font-size: 1rem; color: var(--ink);
  border: 1px solid var(--line); border-radius: var(--radius-input);
  padding: 0.7rem 0.9rem; background: #fff; min-height: 48px;
  transition: border-color 160ms var(--ease-out), box-shadow 160ms var(--ease-out);
}
.field textarea { min-height: 110px; resize: vertical; }
.field input:focus, .field select:focus, .field textarea:focus {
  outline: none; border-color: var(--brand); box-shadow: 0 0 0 3px rgba(33, 90, 167, 0.18);
}
.field .error-msg { display: none; font-size: 1rem; color: var(--error); }
.field[data-invalid] input, .field[data-invalid] select { border-color: var(--error); }
.field[data-invalid] .error-msg { display: block; }
.form-footer { margin-top: 1.4rem; display: flex; flex-direction: column; gap: 0.9rem; }
.form-footer .btn { justify-content: center; width: 100%; }
.form-privacy { font-size: 1rem; color: var(--ink-soft); }
.form-privacy a { color: var(--ink-soft); }
.hp-field { position: absolute; left: -9999px; opacity: 0; height: 0; overflow: hidden; }
.form-status { display: none; border-radius: var(--radius-input); padding: 0.8rem 1rem; font-size: 0.95rem; font-weight: 560; }
.form-status.ok { display: block; background: #e8f5ee; color: var(--success); }
.form-status.fail { display: block; background: #fdecea; color: var(--error); }

/* ---------- FAQ ---------- */
.faq-list { max-width: 760px; }
.faq-list details { border-top: 1px solid var(--line); }
.faq-list details:last-child { border-bottom: 1px solid var(--line); }
.faq-list summary {
  list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 1rem;
  padding: 1.1rem 0.2rem; font-weight: 640; font-size: 1.125rem;
}
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary .icon { width: 1.1rem; height: 1.1rem; color: var(--brand); transition: transform 220ms var(--ease-out); flex: none; }
.faq-list details[open] summary .icon { transform: rotate(180deg); }
.faq-list details p { padding: 0 0.2rem 1.2rem; color: var(--ink-soft); max-width: 62ch; }

/* ---------- Landingpage-Bausteine ---------- */
.page-hero { background: var(--surface); border-bottom: 1px solid var(--line); }
.page-hero-grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(2rem, 5vw, 4rem); align-items: center; padding-block: clamp(2.75rem, 5vw, 4.25rem); }
.page-hero .crumbs { font-size: 0.88rem; color: var(--ink-soft); margin-bottom: 0.9rem; }
.page-hero .crumbs a { color: var(--ink-soft); text-decoration: none; }
.page-hero .crumbs a:hover { color: var(--brand); }
.page-hero .lead { margin-top: 0.9rem; }
.page-hero-grid .photo-frame { background: rgba(33, 90, 167, 0.07); border-color: var(--line); }
.page-hero-grid .photo-frame img { aspect-ratio: 4 / 3; }
.page-hero .hero-ctas { margin-top: 1.6rem; }

.check-list { list-style: none; padding: 0; margin: 1.4rem 0 0; display: grid; grid-template-columns: 1fr 1fr; gap: 0.7rem 2rem; }
.check-list li { display: grid; grid-template-columns: auto 1fr; gap: 0.6rem; align-items: start; font-size: 1.0625rem; }
.check-list .icon { color: var(--brand); width: 1.25rem; height: 1.25rem; margin-top: 0.15rem; }

.related-row { display: flex; flex-wrap: wrap; gap: 0.6rem; margin-top: 1.2rem; }
.related-row a {
  border: 1px solid var(--line); border-radius: 999px; background: var(--surface);
  padding: 0.45rem 1.05rem; text-decoration: none; color: var(--ink); font-weight: 560; font-size: 0.95rem;
  transition: border-color 160ms var(--ease-out), color 160ms var(--ease-out);
}
.related-row a:hover { border-color: var(--brand); color: var(--brand); }

/* ---------- Footer ---------- */
.site-footer { background: var(--brand-ink); color: rgba(255, 255, 255, 0.82); position: relative; overflow: hidden; }
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1.2fr; gap: clamp(1.75rem, 4vw, 3rem); padding-block: clamp(2.75rem, 5vw, 4rem); }
.footer-grid img { height: 52px; width: auto; margin-bottom: 1rem; }
.footer-grid p { font-size: 1rem; }
/* Spaltenueberschriften im Fussbereich. Frueher <h4>, jetzt <h2>, damit die
   Gliederung keine Ebene ueberspringt — und zwar unabhaengig davon, welche
   Ueberschriften die jeweilige Seite im Hauptteil hat. Mit <h3> waere
   danke.html (nur eine h1 im Inhalt) weiterhin uebersprungen gewesen.
   font-weight und line-height stehen ausdruecklich hier, weil die Regeln
   "h1, h2, h3" und "h2" sonst groessere Werte vererben wuerden — die
   Darstellung bleibt so Pixel fuer Pixel wie zuvor (14.4px / 700 / 23.04px). */
.footer-grid h2 { color: #fff; font-size: 0.9rem; font-weight: 700; line-height: 1.6; text-transform: uppercase; letter-spacing: 0.07em; margin-bottom: 0.9rem; }
.footer-grid ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0.45rem; }
.footer-grid a { color: rgba(255, 255, 255, 0.82); text-decoration: none; font-size: 0.95rem; }
.footer-grid a:hover { color: #fff; }
.footer-bottom { border-top: 1px solid rgba(255, 255, 255, 0.14); padding-block: 1.2rem; display: flex; flex-wrap: wrap; gap: 0.75rem 2rem; justify-content: space-between; font-size: 0.88rem; color: rgba(255, 255, 255, 0.6); }
.footer-bottom a { color: rgba(255, 255, 255, 0.75); text-decoration: none; }
.footer-bottom a:hover { color: #fff; }

/* ---------- Mobile CTA-Leiste ---------- */
.mobile-cta {
  display: none; position: fixed; bottom: 0; left: 0; right: 0; z-index: var(--z-sticky);
  background: var(--surface); border-top: 1px solid var(--line);
  padding: 0.6rem var(--gutter) calc(0.6rem + env(safe-area-inset-bottom));
  gap: 0.6rem;
}
.mobile-cta .btn { flex: 1; justify-content: center; padding: 0.7rem 1rem; min-height: 46px; font-size: 0.97rem; }

/* ---------- Scroll-Reveal ----------
   Inhalte sind standardmäßig sichtbar. JS setzt .pre nur auf Elemente
   unterhalb des Viewports; der IntersectionObserver nimmt es wieder weg.
   Ohne JS, bei reduced motion oder im Druck ist nie etwas versteckt. */
@media (prefers-reduced-motion: no-preference) {
  .reveal.pre, .reveal-group.pre > * { opacity: 0; transform: translateY(14px); }
  .reveal, .reveal-group > * { transition: opacity 420ms var(--ease-out), transform 420ms var(--ease-out); }
  .reveal-group > *:nth-child(2) { transition-delay: 60ms; }
  .reveal-group > *:nth-child(3) { transition-delay: 120ms; }
  .reveal-group > *:nth-child(4) { transition-delay: 180ms; }
  .reveal-group > *:nth-child(5) { transition-delay: 240ms; }
  .reveal-group > *:nth-child(6) { transition-delay: 300ms; }
}

/* ---------- Prose (Impressum/Datenschutz) ---------- */
.prose { max-width: 760px; }
.prose h1 { margin-bottom: 1.2rem; }
.prose h2 { font-size: 1.35rem; margin-top: 2.2rem; margin-bottom: 0.6rem; line-height: 1.28; }
/* Rechtstexte und Karriereseite: hier wird am Stueck gelesen, nicht ueberflogen.
   68ch ist die Obergrenze des gut lesbaren Bandes; 62ch sitzt bequemer, und die
   Zielgruppe ist laut PRODUCT.md teils 50+. Die Marketingseiten bleiben bei 68ch. */
.prose p, .prose li { max-width: 62ch; }
.prose p, .prose ul { margin-bottom: 0.9rem; color: var(--ink-soft); }
.prose strong { color: var(--ink); }
/* .placeholder-hint ist am 14.08.2026 entfallen. Die Regel stylte den gelben
   Warnkasten im Impressum, den jeder Besucher zu sehen bekam. Die Warnung
   laeuft jetzt beim Bauen ueber das Terminal. Gegengeprueft: null Vorkommen
   in allen 20 erzeugten Seiten. */

/* ---------- Responsive ---------- */
@media (max-width: 1023px) {
  .main-nav { display: none; }
  .menu-toggle { display: inline-flex; margin-left: auto; }
  .nav-cta { display: none; }
}
@media (max-width: 900px) {
  /* minmax(0, 1fr) statt 1fr: "1fr" heisst "minmax(auto, 1fr)", und die
     auto-Untergrenze ist die Mindestbreite des Inhalts. Im Anfrageformular kommt
     die von der laengsten <option> ("Reinigung fuer Schulen und Kindergaerten",
     260px) — plus Kartenpolster lief die Karte bei 320px um 14px aus dem Bild.
     Sichtbar war das nie, weil .cta-panel den Ueberlauf abschneidet. */
  .hero-grid, .page-hero-grid, .about-grid, .cta-grid { grid-template-columns: minmax(0, 1fr); }
  .hero-media { max-width: 480px; }
  .pl-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .form-grid { grid-template-columns: 1fr; }
  .check-list { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .mobile-cta { display: flex; }
  /* Der Freiraum unten muss die Leiste UND den Home-Indikator auf randlosen
     iPhones abdecken, sonst liegt der Seitenfuss darunter. env() liefert nur
     dann einen Wert, wenn das viewport-Meta viewport-fit=cover traegt. */
  body { padding-bottom: calc(70px + env(safe-area-inset-bottom)); }
  .hero-media .blitz-badge { left: 10px; }
}

/* Sehr schmale Geraete. Bei 320px brach "Angebot in 24 h" in der Sticky-Leiste
   auf zwei Zeilen um; die Leiste wuchs damit auf 94px gegen 70px reservierten
   Freiraum und verdeckte dauerhaft 24px Seiteninhalt. Weniger Innenabstand
   loest den Umbruch auf, ohne die Schriftgroesse oder die 46px Tasthoehe
   anzutasten. */
@media (max-width: 360px) {
  .mobile-cta { gap: 0.45rem; }
  .mobile-cta .btn { padding: 0.7rem 0.5rem; }

  /* Symbol, Adresse und Zusatz stehen sonst in einer Reihe. Bei 320px passt das
     nicht mehr: die E-Mail-Adresse lief aus dem Bild, verdeckt durch das
     overflow:hidden des CTA-Blocks. Statt die Zeile umbrechen zu lassen — dann
     landet das Symbol allein ueber der Adresse — wird daraus ein Raster:
     Symbol links, Adresse und Zusatz rechts untereinander. So sehen Telefon-
     und E-Mail-Zeile gleich aus, auch wenn die Adresse zwei Zeilen braucht. */
  .contact-ways a {
    display: grid; grid-template-columns: auto minmax(0, 1fr);
    column-gap: 0.7rem; row-gap: 0.1rem; align-items: start;
    overflow-wrap: anywhere;
  }
  .contact-ways a .icon { margin-top: 0.2rem; }
  .contact-ways a small { grid-column: 2; }
}

/* ---------- Print ---------- */
@media print {
  .site-header, .mobile-cta, .site-footer, .cta-panel { display: none; }
}

/* ---------- Prozess-Karten (nummeriert, erste gefüllt) ---------- */
/* Das Eyebrow-Label ueber der Prozess-Ueberschrift ist am 13.08.2026 entfernt
   worden. PRODUCT.md fuehrt "Eyebrow-Labels ueber jeder Sektion" unter den
   Anti-Referenzen, DESIGN.md setzt das Blitz-Badge ausdruecklich AN DEREN STELLE.
   Die Ueberschrift traegt die Aussage allein. */

/* Umgebaut am 14.08.2026. Vorher waren es vier Karten mit der Schrittzahl als
   Wasserzeichen dahinter: --ink bei 6% Deckkraft, gemessen 1,12:1. In einem
   Abschnitt, dessen ganze Aussage "vier Schritte in dieser Reihenfolge" ist,
   war die Nummer damit Textur statt Information. Dazu war die erste Karte als
   einzige marineblau gefuellt und die einzige dunkle Flaeche im hellen
   Abschnitt.
   Jetzt haengen die Schritte an einer Linie, mit der Ziffer als gefuellter
   Marke darauf. DESIGN.md nennt genau das ("horizontale nummerierte Schritte,
   verbunden durch Linie"); der Code hatte es nie eingeloest.
   Kontrast: Weiss auf --brand 7,1:1. tabular-nums loest die entsprechende
   Zusage aus DESIGN.md ein. */
.process-rail {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: repeat(4, 1fr);
  gap: clamp(1.2rem, 2.6vw, 2.4rem);
}
.process-step { position: relative; padding-top: 3.5rem; }
/* Verbindungslinie zum naechsten Schritt. Sie startet rechts neben der Marke
   und laeuft ueber die Gitterluecke hinweg, deshalb der negative right-Wert
   mit demselben clamp wie der gap. */
.process-step::after {
  content: ""; position: absolute; top: 1.05rem; height: 2px;
  /* Nicht --line: der Hairline-Ton der Kartenraender liegt gegen den
     Seitengrund bei 1,22:1 und war als Verbindungslinie kaum zu sehen — genau
     der Fehler, wegen dem dieser Abschnitt umgebaut wurde. Stattdessen die
     Farbe der Ziffernmarken mit reduzierter Deckkraft: die Linie liest sich
     dadurch als Faden zwischen den Marken, bleibt aber ruhig. */
  background: rgba(33, 90, 167, 0.3);
  left: 2.9rem; right: calc(-1 * clamp(1.2rem, 2.6vw, 2.4rem));
}
.process-step:last-child::after { display: none; }
.pc-badge {
  position: absolute; top: 0; left: 0; width: 2.2rem; height: 2.2rem;
  border-radius: 999px; display: grid; place-items: center;
  font-size: 1rem; font-weight: 800; line-height: 1;
  font-variant-numeric: tabular-nums;
  background: var(--brand); color: #fff;
}
.process-step h3 { font-size: clamp(1.25rem, 1.7vw, 1.5rem); font-weight: 800; letter-spacing: -0.02em; line-height: 1.15; }
.process-step p { margin-top: 0.6rem; font-size: 1rem; line-height: 1.55; color: var(--ink-soft); max-width: 34ch; }

/* Die frühere Hover-Hervorhebung der Prozess-Karten ist am 14.08.2026 mit den
   Karten selbst entfallen. Sie hob per Zeiger genau eine Karte hervor und
   musste dafür auf Touch-Geräten ganz abgeschaltet werden, weil ein Tipp dort
   :hover kleben lässt. Die Schritte sind jetzt keine Bedienelemente mehr,
   sondern eine Aufzählung — es gibt nichts zu hovern.

   Umbruch: unter 1024px zwei Schritte nebeneinander, unter 560px einer.
   Die Verbindungslinie wird dabei ausgeblendet — sie liest sich nur als
   Sequenz, solange alle vier in einer Reihe stehen; über Zeilenumbrüche
   hinweg würde sie ins Leere zeigen. */
@media (max-width: 1023px) {
  .process-rail { grid-template-columns: repeat(2, 1fr); row-gap: clamp(1.6rem, 4vw, 2.4rem); }
  .process-step::after { display: none; }
}
@media (max-width: 560px) {
  .process-rail { grid-template-columns: 1fr; }
}

/* ===========================================================================
   Touch-Ziele — gilt nur auf Geraeten ohne feinen Zeiger (Finger/Stift).
   PRODUCT.md fordert >= 44px, weil die Zielgruppe teils 50+ ist.
   Gemessen waren vorher: Fussbereich-Links 16px, Leistungslinks 36px,
   Telefonlink 27px, Rechtslinks 15px.

   Bewusst NICHT angefasst: .form-privacy a — ein Link mitten im Fliesstext.
   Auf 44px gebracht wuerde er die Nachbarzeilen ueberlappen; WCAG 2.5.8 nimmt
   Links innerhalb eines Textblocks ausdruecklich von der Mindestgroesse aus.
   =========================================================================== */
@media (pointer: coarse) {
  /* Navigationslisten im Fussbereich: 16px -> 44px */
  .footer-grid ul { gap: 0.25rem; }
  .footer-grid ul li a {
    display: flex;
    align-items: center;
    min-height: 44px;
  }

  /* Telefon-/Kontaktzeilen im CTA-Block: 27px -> 44px */
  .contact-ways li a { min-height: 44px; }

  /* Impressum / Datenschutz in der Fusszeile: 15px -> 44px */
  .footer-bottom a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }
  .footer-bottom { padding-block: 0.4rem; }

  /* Kreuznavigation am Fuss der Leistungsseiten: 41px -> 44px */
  .related-row a { min-height: 44px; }

  /* Brotkrumen: 15px -> 44px. Das ist Navigation, kein Fliesstext —
     die Fliesstext-Ausnahme von WCAG 2.5.8 gilt hier NICHT. */
  .crumbs a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }
}
