  /* Nur was diese eine Seite braucht — ausschließlich Tokens aus site.css. */
  [hidden]{display:none !important}
  .halt{min-height:100svh;display:flex;flex-direction:column}
  .halt__kopf{padding:var(--abstand-12) var(--rand) 0}
  .halt__kopf svg{height:28px;width:auto;display:block}
  .halt__mitte{flex:1;display:flex;align-items:center;padding:var(--abstand-16) var(--rand)}
  /* Die Halteseite traegt genau eine Ueberschrift und hat keine Konkurrenz um
     Aufmerksamkeit. Deshalb eine eigene Ableitung ueber --t-hero (3.6rem) hinaus
     — benannt an einer Stelle, nicht als Streuwert im Blatt. */
  :root{--t-halt-hero:clamp(2.25rem,5.2vw,4.75rem)}
  /* Breit genug, dass "Unternehmenssoftware" am Schreibtisch in eine Zeile passt. */
  .halt__in{max-width:56rem}
  .halt__in h1{font-size:var(--t-halt-hero)}
  .halt__lead{font-size:var(--t-zwischentitel);line-height:1.5;max-width:58ch;margin:var(--abstand-6) 0 0}

  .halt__vorform{margin:var(--abstand-12) 0 0;font-size:var(--t-fliesstext);
                 line-height:1.5;color:var(--ink-200)}
  .halt__form{margin-top:var(--abstand-4);display:flex;flex-wrap:wrap;gap:var(--abstand-2);max-width:34rem}
  .halt__form label{position:absolute;left:-9999px}
  .halt__form input[type=email]{
    flex:1 1 18rem;min-width:0;font:inherit;font-size:var(--t-fliesstext);color:var(--text-invers);
    background:transparent;border:1px solid var(--ink-600);border-radius:var(--radius-1);
    padding:var(--abstand-3) var(--abstand-4);min-height:48px;
  }
  .halt__form input[type=email]::placeholder{color:var(--ink-500)}
  .halt__form input[type=email]:focus-visible{outline:2px solid var(--marke-akzent);outline-offset:2px;border-color:var(--marke-akzent)}
  .halt__form input[aria-invalid=true]{border-color:var(--status-storniert)}
  .halt__form .knopf{min-height:48px;flex:0 0 auto}
  .halt__falle{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

  .halt__fehler{margin:var(--abstand-3) 0 0;font-size:var(--t-klein);line-height:1.5;color:#F2A9A9;max-width:58ch}
  .halt__stand{margin:var(--abstand-3) 0 0;font-size:var(--t-klein);line-height:1.5;color:var(--ink-200);max-width:58ch}
  /* Kalk ist Flaeche mit dunkler Schrift — nie Linie. Der Knopf ist dann verborgen. */
  .halt__danke{margin-top:var(--abstand-12);background:var(--marke-akzent);color:var(--marke-aufAkzent);
               border-radius:var(--radius-2);padding:var(--abstand-6);max-width:30rem}
  .halt__danke p{margin:0;color:var(--marke-aufAkzent);font-size:var(--t-klein);line-height:1.5}
  .halt__danke p:first-child{font-weight:700;font-size:var(--t-fliesstext);margin-bottom:var(--abstand-2)}
  .halt__klein{margin:var(--abstand-4) 0 0;font-size:var(--t-klein);line-height:1.5;color:var(--ink-400);max-width:58ch}
  .halt__klein a{color:var(--ink-200)}

  .halt__fuss{padding:var(--abstand-8) var(--rand);border-top:1px solid var(--ink-800);
              display:flex;flex-wrap:wrap;gap:var(--abstand-2) var(--abstand-6);
              align-items:baseline;font-size:var(--t-klein);color:var(--ink-400)}
  .halt__fuss a{color:var(--ink-200)}
  .halt__fuss address{font-style:normal;display:inline}
  @media(max-width:560px){
    /* Hier passt das Kompositum nicht mehr; lang="de" liefert die Trennstellen. */
    .halt__in h1{hyphens:auto;overflow-wrap:break-word}
    .halt__mitte{padding-block:var(--abstand-12)}
    .halt__form .knopf{width:100%;justify-content:center}
  }

/* Rechtstexte — schmale Spalte, sonst nichts Neues. */
.halt__text{max-width:36rem}
.halt__text h1{margin:0 0 var(--abstand-8);font-size:var(--t-ueberschrift);font-weight:700}
.halt__text h2{margin:var(--abstand-8) 0 var(--abstand-2);font-size:var(--t-zwischentitel);font-weight:700}
.halt__text p,.halt__text li{font-size:var(--t-klein);line-height:1.6;color:var(--ink-200);margin:0 0 var(--abstand-3)}
.halt__text ul{margin:0 0 var(--abstand-3);padding-left:var(--abstand-4)}
.halt__text a{color:var(--text-invers)}
.halt__text .offen{background:var(--status-warnung);color:var(--marke-aufAkzent);
                   padding:0 var(--abstand-1);border-radius:var(--radius-1);font-weight:600}
.halt__mitte--text{align-items:flex-start;padding-top:var(--abstand-12)}

/* Kontaktformular — gestapelte Felder, sonst dieselben Regeln wie die Merkliste.
   Fehlertext: storniert aus dem dunklen Satz (tokens.json dunkel.status.storniert),
   weil #D93A3A auf Basalt unter 4,5:1 bleibt. */
:root{--halt-fehler:#E57676}
.halt__kontakt-form{display:grid;gap:var(--abstand-4);margin-top:var(--abstand-6)}
.halt__feld{display:grid;gap:var(--abstand-1)}
.halt__feld label{font-size:var(--t-klein);font-weight:600;color:var(--ink-200)}
.halt__feld label span{font-weight:400;color:var(--ink-400)}
.halt__feld input,.halt__feld textarea{
  width:100%;min-height:48px;font:inherit;font-size:1rem;color:var(--text-invers);
  background:transparent;border:1px solid var(--ink-500);border-radius:var(--radius-1);
  padding:var(--abstand-3) var(--abstand-4);
}
.halt__feld textarea{min-height:160px;resize:vertical}
.halt__feld input:focus-visible,.halt__feld textarea:focus-visible{outline:2px solid var(--marke-akzent);outline-offset:2px;border-color:var(--marke-akzent)}
.halt__feld [aria-invalid=true]{border-color:var(--halt-fehler)}
.halt__text .halt__fehler{margin:0;color:var(--halt-fehler)}
.halt__kontakt-form .knopf{justify-self:start;min-height:48px}
.halt__text .halt__danke p{color:var(--marke-aufAkzent)}
@media(max-width:560px){.halt__kontakt-form .knopf{justify-self:stretch;justify-content:center}}

/* Merkliste: Turnstile erscheint nur bei Rückfrage; leer nimmt es keinen Platz. */
.halt__pruefung:not(:empty){margin-top:var(--abstand-3)}
/* Hauptweg Gespräch (Kalk), darunter die Merkliste als Nebenweg (Linie, kein Kalk). */
.halt__gespraech{margin-top:var(--abstand-4);min-height:48px}
.halt__oder{margin:var(--abstand-12) 0 0;padding-top:var(--abstand-6);border-top:1px solid var(--ink-700);
            max-width:34rem;font-size:var(--t-klein);line-height:1.5;color:var(--ink-300)}
@media(max-width:560px){.halt__gespraech{width:100%;justify-content:center}}
