/* baselAIne — Produktseite.
   Weniger Raster, mehr Luft. Das Leitmotiv „Baseline" (Messlinie) traegt die
   Seite als roter Faden: waagerecht im Hero, senkrecht als Rueckgrat der
   Sicherheitszusagen. Grosse editoriale Systemschrift, warme Neutralen, ein
   Blau. Kein externer Dienst — die Seite wirbt mit genau dieser Stille. */

:root{
  --papier:#f5f3ef;
  --papier-2:#efece6;
  --tinte:#15171d;
  --tinte-weich:#43464f;
  --gedaempft:#6b6e78;
  --linie:#dcd8cf;
  --linie-weich:#e7e3db;
  --ink:#0c0e13;
  --ink-linie:#242836;
  --ink-weich:#9aa0b0;
  --akzent:#2f6bff;
  --akzent-hell:#e7eeff;
  --akzent-tief:#1b4fd8;
  --gut:#1f8a4c;
  --serifenlos:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",
    "Segoe UI",Roboto,"Helvetica Neue",Helvetica,Arial,sans-serif;
}
@media (prefers-color-scheme: dark){
  :root{
    --papier:#0f1117; --papier-2:#141620; --tinte:#f3f2ef; --tinte-weich:#c9cbd2;
    --gedaempft:#8b8f9b; --linie:#2a2e39; --linie-weich:#22262f;
    --ink:#000000; --ink-linie:#232734; --ink-weich:#9aa0b0;
    --akzent:#5b8bff; --akzent-hell:#132038; --akzent-tief:#3f74ff; --gut:#37c46a;
  }
}
*,*::before,*::after{box-sizing:border-box}
*{margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{background:var(--papier);color:var(--tinte);font-family:var(--serifenlos);
  font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;overflow-x:hidden}
::selection{background:color-mix(in srgb,var(--akzent) 26%,transparent)}
.wm{text-transform:none;letter-spacing:-.01em;font-weight:750}
.wm .ai{color:var(--akzent)}
.zeile{max-width:64rem;margin:0 auto;padding:0 1.7rem}
.eng{max-width:46rem}

/* ---------- Kopf ---------- */
.kopf{position:sticky;top:0;z-index:30;
  background:color-mix(in srgb,var(--papier) 80%,transparent);
  -webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);
  border-bottom:1px solid color-mix(in srgb,var(--linie) 55%,transparent)}
.kopf-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:.9rem 1.7rem;max-width:64rem;margin:0 auto}
.wortmarke{font-size:1.2rem;font-weight:750;letter-spacing:-.03em;color:var(--tinte);text-decoration:none}
.wortmarke .ai{color:var(--akzent)}
.kopf nav{display:flex;gap:1.4rem;font-size:.86rem;align-items:center}
.kopf nav a{color:var(--gedaempft);text-decoration:none;transition:color .18s ease}
.kopf nav a:hover{color:var(--tinte)}
.kopf .cta{background:var(--tinte);color:var(--papier);padding:.46rem 1rem;border-radius:980px;
  font-weight:550;transition:transform .12s ease,opacity .18s ease}
.kopf .cta:hover{opacity:.85}.kopf .cta:active{transform:scale(.97)}
@media (max-width:46rem){.kopf nav a:not(.cta){display:none}}

/* ---------- Hero ---------- */
.held{position:relative;background:var(--ink);color:#f3f2ef;overflow:hidden;padding:8rem 0 9rem}
.held::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(65% 55% at 15% -5%,color-mix(in srgb,var(--akzent) 24%,transparent),transparent 70%),
    radial-gradient(45% 45% at 105% 105%,color-mix(in srgb,var(--akzent) 12%,transparent),transparent 70%)}
.held .zeile{position:relative}
.held .eyebrow{display:inline-flex;align-items:center;gap:.55rem;font-size:.76rem;
  letter-spacing:.16em;text-transform:uppercase;color:var(--ink-weich);margin-bottom:2.2rem}
.held h1{font-size:clamp(2.7rem,7vw,5.4rem);font-weight:770;letter-spacing:-.04em;
  line-height:1.0;text-wrap:balance;max-width:15ch}
.held h1 em{font-style:normal;color:var(--akzent)}
.held .these{font-size:clamp(1.15rem,2.3vw,1.5rem);color:#cfd2da;max-width:33rem;
  margin-top:1.9rem;line-height:1.45;text-wrap:pretty}
.held .aktionen{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2.6rem}
.held .knopf{font-size:.95rem;font-weight:600;border-radius:980px;padding:.74rem 1.6rem;
  text-decoration:none;transition:transform .12s ease,box-shadow .2s ease,opacity .2s ease}
.held .knopf.haupt{background:var(--akzent);color:#fff;
  box-shadow:0 6px 30px color-mix(in srgb,var(--akzent) 45%,transparent)}
.held .knopf.haupt:hover{box-shadow:0 10px 46px color-mix(in srgb,var(--akzent) 62%,transparent)}
.held .knopf.still{color:#f3f2ef;border:1px solid var(--ink-linie)}
.held .knopf.still:hover{border-color:#454b5c}
.held .knopf:active{transform:scale(.97)}
.baseline{position:absolute;left:0;right:0;bottom:3.4rem;height:2px;pointer-events:none;
  background:linear-gradient(90deg,transparent,var(--ink-linie) 8%,var(--ink-linie) 92%,transparent)}
.baseline .marke{position:absolute;bottom:0;width:1px;height:13px;background:var(--ink-linie)}
.baseline .marke.gross{height:24px;background:color-mix(in srgb,var(--akzent) 55%,var(--ink-linie))}
.baseline .laufpunkt{position:absolute;bottom:-4px;width:10px;height:10px;border-radius:50%;
  background:var(--akzent);box-shadow:0 0 16px var(--akzent);transform:translateX(-50%)}
@keyframes ziehen{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes laufen{0%{left:6%}100%{left:94%}}
.held .baseline{animation:ziehen 1.2s cubic-bezier(.4,0,.2,1) both}
.held .laufpunkt{animation:laufen 7s ease-in-out infinite alternate}
@media (prefers-reduced-motion:reduce){.held .baseline{animation:none}.held .laufpunkt{animation:none;left:50%}}

/* ---------- Rhythmus ---------- */
section{padding:5.5rem 0}
section.warm{background:var(--papier-2)}
.uebertitel{font-size:.8rem;font-weight:650;letter-spacing:.14em;text-transform:uppercase;
  color:var(--akzent);margin-bottom:1.1rem}
h2{font-size:clamp(2rem,4.4vw,3.1rem);font-weight:740;letter-spacing:-.03em;line-height:1.06;
  text-wrap:balance;max-width:20ch}
.vorspann{color:var(--tinte-weich);font-size:1.18rem;max-width:40rem;margin-top:1.2rem;
  line-height:1.6;text-wrap:pretty}
.gross-satz{font-size:clamp(1.5rem,3.2vw,2.1rem);font-weight:600;letter-spacing:-.02em;
  line-height:1.3;max-width:26ch;text-wrap:balance}
.gross-satz em{font-style:normal;color:var(--akzent)}

.auf{opacity:0;transform:translateY(22px);
  transition:opacity .8s cubic-bezier(.2,.7,.3,1),transform .8s cubic-bezier(.2,.7,.3,1)}
.auf.da{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.auf{opacity:1;transform:none;transition:none}}

/* ---------- Prinzip: luftig, keine Kaesten ---------- */
.prinzipien{margin-top:3.5rem;display:flex;flex-direction:column;gap:2.6rem}
.prinzip{display:grid;grid-template-columns:5.5rem 1fr;gap:1.4rem;align-items:start;
  padding-bottom:2.6rem;border-bottom:1px solid var(--linie-weich)}
.prinzip:last-child{border-bottom:none;padding-bottom:0}
.prinzip .zahl{font-size:3.2rem;font-weight:300;letter-spacing:-.04em;line-height:.9;
  color:var(--akzent);font-variant-numeric:tabular-nums}
.prinzip h3{font-size:1.35rem;font-weight:680;letter-spacing:-.015em;margin-bottom:.55rem}
.prinzip p{font-size:1.05rem;color:var(--tinte-weich);max-width:42rem;line-height:1.6;text-wrap:pretty}
.prinzip strong{color:var(--tinte)}
@media (max-width:40rem){.prinzip{grid-template-columns:1fr;gap:.4rem}.prinzip .zahl{font-size:2.4rem}}

/* ---------- Der Unterschied: ein Gedanke, kein Raster ---------- */
.unterschied-satz{margin-top:1rem}
.gegen{margin-top:3rem;display:grid;grid-template-columns:1fr 1fr;gap:0;
  border-top:1px solid var(--linie);border-bottom:1px solid var(--linie)}
@media (max-width:48rem){.gegen{grid-template-columns:1fr}}
.gegen .halb{padding:2rem 0}
.gegen .halb.li{padding-right:2.4rem;border-right:1px solid var(--linie)}
.gegen .halb.re{padding-left:2.4rem}
@media (max-width:48rem){.gegen .halb.li{padding-right:0;border-right:none;border-bottom:1px solid var(--linie)}.gegen .halb.re{padding-left:0}}
.gegen h3{font-size:.82rem;font-weight:650;letter-spacing:.09em;text-transform:uppercase;
  color:var(--gedaempft);margin-bottom:1.2rem}
.gegen .re h3{color:var(--tinte)}
.gegen ul{list-style:none;display:flex;flex-direction:column;gap:.85rem}
.gegen li{font-size:1rem;line-height:1.5;text-wrap:pretty}
.gegen .li li{color:var(--gedaempft)}
.gegen .re li{color:var(--tinte);padding-left:1.5rem;position:relative}
.gegen .re li::before{content:"";position:absolute;left:0;top:.55em;width:.6rem;height:.6rem;
  border-radius:50%;background:var(--akzent)}
.nachsatz{font-size:1.1rem;color:var(--tinte-weich);max-width:40rem;margin-top:2.4rem;text-wrap:pretty}
.nachsatz strong{color:var(--tinte)}

/* ---------- Sicherheit: die Baseline senkrecht als Rueckgrat ---------- */
.spine{margin-top:3.5rem;position:relative;padding-left:2.2rem}
.spine::before{content:"";position:absolute;left:5px;top:.4rem;bottom:.4rem;width:2px;
  background:linear-gradient(180deg,var(--akzent),color-mix(in srgb,var(--akzent) 25%,transparent))}
.spine .zusage{position:relative;padding:1.05rem 0 1.15rem;border-bottom:1px solid var(--linie-weich)}
.spine .zusage:last-child{border-bottom:none}
.spine .zusage::before{content:"";position:absolute;left:-2.2rem;top:1.5rem;width:12px;height:12px;
  border-radius:50%;background:var(--papier);border:2px solid var(--akzent);
  box-shadow:0 0 0 4px var(--papier)}
section.warm .spine .zusage::before{background:var(--papier-2);box-shadow:0 0 0 4px var(--papier-2)}
.spine .zusage strong{display:block;font-size:1.08rem;font-weight:670;letter-spacing:-.01em;margin-bottom:.2rem}
.spine .zusage span{font-size:1rem;color:var(--tinte-weich);line-height:1.55;text-wrap:pretty}

/* ---------- Für Eingeladene ---------- */
.beruhigung{margin-top:3rem;max-width:44rem}
.beruhigung p{font-size:1.1rem;color:var(--tinte-weich);margin-bottom:1.1rem;line-height:1.65;text-wrap:pretty}
.beruhigung p:last-child{margin-bottom:0}
.beruhigung strong{color:var(--tinte)}
.beruhigung a{color:var(--akzent);text-decoration:none;font-weight:550}
.beruhigung a:hover{text-decoration:underline}
.eingeladen-cta{margin-top:2rem}
.eingeladen-cta .knopf{display:inline-block;font-size:.95rem;font-weight:600;border-radius:980px;
  padding:.74rem 1.6rem;text-decoration:none;background:var(--akzent);color:#fff;
  transition:box-shadow .2s ease,transform .05s ease}
.eingeladen-cta .knopf:hover{text-decoration:none;box-shadow:0 10px 46px color-mix(in srgb,var(--akzent) 55%,transparent)}
.eingeladen-cta .knopf:active{transform:scale(.97)}

/* ---------- Abschluss ---------- */
.band{margin-top:1rem;background:var(--ink);color:#f3f2ef;overflow:hidden;position:relative;
  padding:6rem 0}
.band::before{content:"";position:absolute;inset:0;
  background:radial-gradient(55% 130% at 50% -10%,color-mix(in srgb,var(--akzent) 22%,transparent),transparent 70%)}
.band .zeile{position:relative;text-align:center}
.band h2{color:#f3f2ef;margin:0 auto;max-width:18ch}
.band p{color:#c5c8d1;max-width:34rem;margin:1.2rem auto 0;font-size:1.12rem;text-wrap:pretty}
.band .marke-klein{margin-top:2.2rem;font-size:.86rem;color:var(--ink-weich);display:inline-block;
  border:1px solid var(--ink-linie);border-radius:980px;padding:.55rem 1.2rem}

/* ---------- Fuss ---------- */
footer{border-top:1px solid var(--linie);padding:2rem 1.7rem 2.6rem;font-size:.86rem;color:var(--gedaempft)}
footer .zeile{display:flex;gap:1.5rem;flex-wrap:wrap;justify-content:space-between;align-items:center}
footer .wm{font-weight:700;letter-spacing:-.02em;color:var(--tinte)}
footer .wm .ai{color:var(--akzent)}
footer nav{display:flex;gap:1.4rem}
footer a{color:var(--gedaempft);text-decoration:none}
footer a:hover{color:var(--tinte)}

/* ---------- Unterseiten ---------- */
main.blatt{max-width:44rem;margin:0 auto;padding:4rem 1.7rem 5rem;min-height:60vh}
main.blatt h1{font-size:1.8rem;font-weight:730;letter-spacing:-.02em;margin-bottom:1.2rem}
main.blatt h2{font-size:1.15rem;font-weight:640;margin:2rem 0 .5rem;max-width:none}
main.blatt p,main.blatt li{margin-bottom:.8rem;max-width:40rem}
main.blatt ul{padding-left:1.2rem}
main.blatt a{color:var(--akzent);text-decoration:none}
main.blatt a:hover{text-decoration:underline}

/* Sicherheits-Fußnote: ehrlicher, dezenter Abschluss unter den Zusagen */
.sicher-fuss{margin-top:1.8rem;padding-top:1.4rem;border-top:1px solid var(--linie-weich);
  color:var(--tinte-weich);font-size:.98rem;line-height:1.62;max-width:62ch}
.sicher-fuss em{font-style:normal;font-weight:640;color:var(--tinte)}
.sicher-fuss a{color:inherit;text-decoration:underline;text-underline-offset:2px}
