/* Objektgewinner, Landingpage für Gebäudereiniger. Arbeitstitel, Stand 16.09.2026 */
:root{
  --navy:#0b2b5c;
  --navy-tief:#071d3f;
  --navy-hell:#1d4a8f;
  --tinte:#12213a;
  --grau:#5b6b80;
  --grau-hell:#93a1b3;
  --linie:rgba(11,43,92,.14);
  --linie-stark:rgba(11,43,92,.32);
  --bg:#f7f9fc;
  --bg-tief:#eaf0f8;
  --tint:#e3ecf8;
  --karte:#ffffff;
  --gruen:#178a5b;
  --gruen-tint:#e4f4ec;
  --rot:#c2493d;
  --rot-tint:#fbeae7;
  --schatten:0 14px 36px rgba(11,43,92,.08);
  --radius:16px;
  --wrap:1180px;
  --schrift:"Montserrat",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
*{box-sizing:border-box}
html{overflow-x:clip;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:clip;max-width:100%;background:var(--bg);color:var(--tinte);font-family:var(--schrift);font-size:1.02rem;line-height:1.65;font-weight:500}
img{max-width:100%;height:auto;display:block}
a{color:var(--navy)}
h1,h2,h3{line-height:1.12;margin:0 0 .6em;font-weight:800;letter-spacing:-.01em;color:var(--tinte)}
h1{font-size:clamp(2.15rem,4.6vw,3.55rem)}
h2{font-size:clamp(1.65rem,3.2vw,2.5rem)}
h3{font-size:1.18rem;line-height:1.3}
p{margin:0 0 1em}
strong{font-weight:700}
.wrap{width:min(var(--wrap),100% - 2.5rem);margin-inline:auto}
.schmal{max-width:760px}
.mitte{text-align:center;margin-left:auto;margin-right:auto}
.kicker{display:inline-block;font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);margin-bottom:1rem}
.lead{font-size:1.15rem;color:var(--grau);max-width:58ch}
section{padding-block:clamp(4rem,8vw,7rem)}
.abgesetzt{background:var(--bg-tief)}
.hinweis{font-size:.86rem;color:var(--grau)}
.mark{background:linear-gradient(transparent 62%,rgba(29,74,143,.18) 62%)}

/* Knöpfe */
.knopf{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;padding:1rem 1.9rem;border-radius:50px;font-weight:700;font-size:.95rem;text-decoration:none;border:2px solid var(--navy);background:var(--navy);color:#fff;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,background .25s ease;white-space:nowrap;font-family:inherit}
.knopf:hover{background:var(--navy-hell);border-color:var(--navy-hell);transform:translateY(-2px);box-shadow:0 12px 26px rgba(11,43,92,.22)}
.knopf.leise{background:transparent;color:var(--navy)}
.knopf.leise:hover{background:var(--tint);box-shadow:none}
.knopf.gross{padding:1.15rem 2.3rem;font-size:1.02rem}
.knopf:focus-visible{outline:3px solid var(--navy-hell);outline-offset:3px}

/* Seitenkopf */
.kopf{position:sticky;top:0;z-index:50;background:rgba(247,249,252,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--linie)}
.kopf .wrap{display:flex;align-items:center;justify-content:space-between;height:74px;gap:1rem}
.logo{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--tinte);font-weight:800;font-size:1.12rem;letter-spacing:-.01em}
.logo-zeichen{width:34px;height:34px;border-radius:9px;background:var(--navy);display:grid;place-items:center;flex:none}
.logo-zeichen svg{width:20px;height:20px}
.logo small{display:block;font-size:.66rem;font-weight:600;color:var(--grau);letter-spacing:.06em;text-transform:uppercase;line-height:1.1}
.nav{display:flex;align-items:center;gap:1.6rem}
.nav a{text-decoration:none;color:var(--tinte);font-weight:600;font-size:.93rem;transition:color .2s}
.nav a:hover,.nav a[aria-current="page"],.nav a[aria-current="true"]{color:var(--navy-hell)}
.nav .knopf{padding:.7rem 1.3rem;font-size:.86rem}
.nav a.knopf{color:#fff}
.nav a.knopf:hover{color:#fff}
.nav-schalter{display:none;background:none;border:0;padding:.4rem;cursor:pointer}
.nav-schalter span{display:block;width:24px;height:2px;background:var(--tinte);margin:5px 0;transition:transform .25s,opacity .25s}

/* Hero */
.hero{padding-block:clamp(2.5rem,5vw,4.5rem) clamp(3rem,6vw,5rem);position:relative}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.hero h1{margin-bottom:1.1rem}
.hero .lead{font-size:1.18rem;margin-bottom:1.7rem}
.hero .lead strong{color:var(--tinte)}
.hero-knoepfe{display:flex;gap:.9rem;flex-wrap:wrap;align-items:center}
.hero-bild{position:relative}
.hero-bild img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:22px;box-shadow:var(--schatten)}
.hero-bild::after{content:"";position:absolute;inset:auto -10% -8% 40%;height:60%;background:radial-gradient(closest-side,rgba(29,74,143,.16),transparent);z-index:-1;pointer-events:none}
.hero-karte{position:absolute;left:-1.5rem;bottom:2rem;background:var(--karte);border-radius:14px;padding:.9rem 1.1rem;box-shadow:var(--schatten);border:1px solid var(--linie);max-width:270px;font-size:.88rem;line-height:1.4}
.hero-karte b{display:block;font-size:1.35rem;color:var(--navy);font-weight:800;line-height:1.1;margin-bottom:.2rem}

/* Laufband */
.band{border-top:1px solid var(--linie);border-bottom:1px solid var(--linie);background:var(--karte);padding:.85rem 0;overflow:hidden}
.band-schiene{display:flex;gap:2.6rem;width:max-content;animation:laufen 38s linear infinite}
.band span{white-space:nowrap;font-size:.86rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--grau);display:inline-flex;align-items:center;gap:2.6rem}
.band span::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--navy);opacity:.5}
@keyframes laufen{to{transform:translateX(-50%)}}

/* Problem */
.problem-raster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;margin-top:2.4rem}
.problem-karte{background:var(--karte);border-radius:var(--radius);padding:1.6rem 1.5rem 1.5rem;border:1px solid var(--linie);box-shadow:var(--schatten);transition:transform .25s ease}
.problem-karte:hover{transform:translateY(-3px)}
.problem-karte .ikon{width:52px;height:52px;border-radius:14px;background:var(--tint);display:grid;place-items:center;margin-bottom:1rem}
.problem-karte .ikon svg{width:26px;height:26px;fill:none;stroke:var(--navy);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.problem-karte h3{margin-bottom:.35rem;font-size:1.1rem}
.problem-karte p{margin:0;color:var(--grau);font-size:.96rem}

/* Ranking-Grafik */
.rang{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.rang-text h2{margin-bottom:1rem}
.rang-text ul{list-style:none;padding:0;margin:1.4rem 0 0}
.rang-text li{position:relative;padding-left:2rem;margin-bottom:.8rem}
.rang-text li::before{content:"";position:absolute;left:0;top:.35rem;width:20px;height:20px;border-radius:50%;background:var(--gruen-tint);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.2 3L15 7' fill='none' stroke='%23178a5b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.google{background:var(--karte);border-radius:20px;border:1px solid var(--linie);box-shadow:var(--schatten);padding:1.2rem 1.3rem 1.4rem;font-family:var(--schrift)}
.google-suche{display:flex;align-items:center;gap:.7rem;border:1px solid var(--linie-stark);border-radius:50px;padding:.6rem 1rem;font-size:.95rem;font-weight:600;color:var(--tinte);margin-bottom:1.1rem}
.google-suche svg{width:18px;height:18px;flex:none;color:var(--grau)}
.google-suche em{font-style:normal;color:var(--grau);font-weight:500}
.google-liste{position:relative;height:calc(7 * 64px)}
.treffer{position:absolute;left:0;right:0;top:calc(var(--i) * 64px);height:56px;display:flex;align-items:center;gap:.9rem;padding:.55rem .8rem;border-radius:12px;border:1px solid transparent;transition:top .9s cubic-bezier(.16,1,.3,1),background .5s,border-color .5s}
.treffer .fav{width:30px;height:30px;border-radius:50%;background:var(--bg-tief);flex:none;display:grid;place-items:center;font-size:.72rem;font-weight:800;color:var(--grau)}
.treffer .txt{min-width:0;flex:1;display:block}
.treffer .titel,.treffer .url{display:block}
.treffer .titel{font-size:.9rem;font-weight:700;color:#1a0dab;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.treffer .url{font-size:.72rem;color:var(--grau);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.treffer .platz{font-size:.7rem;font-weight:700;color:var(--grau-hell);flex:none;letter-spacing:.06em}
.treffer.du{background:var(--tint);border-color:var(--linie-stark)}
.treffer.du .fav{background:var(--navy);color:#fff}
.treffer.du .titel{color:var(--navy)}
.treffer .anzeige{display:none;font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--tinte);background:#fff;border:1px solid var(--linie-stark);border-radius:4px;padding:.1rem .4rem;flex:none}
.google-liste.da .treffer.du .anzeige{display:inline-block}
.google-liste.da .treffer.du .platz{display:none}
.google-fuss{margin-top:.9rem;font-size:.82rem;color:var(--grau);display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.google-fuss b{color:var(--navy)}

/* Rechner */
.rechner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:start;margin-top:2.2rem}
.regler{background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);padding:1.6rem;box-shadow:var(--schatten)}
.regler label{display:flex;justify-content:space-between;align-items:baseline;font-weight:700;font-size:.95rem;margin-bottom:.35rem;gap:1rem}
.regler label output{color:var(--navy);font-weight:800;font-size:1.05rem;white-space:nowrap}
.regler input[type=range]{width:100%;accent-color:var(--navy);margin:0 0 1.5rem;height:28px}
.regler .hinweis{margin:0}
.ergebnis{display:grid;gap:1rem}
.erg{background:var(--navy);color:#fff;border-radius:var(--radius);padding:1.4rem 1.6rem}
.erg small{display:block;font-size:.82rem;opacity:.8;font-weight:600;margin-bottom:.3rem}
.erg b{display:block;font-size:clamp(1.7rem,3vw,2.3rem);font-weight:800;line-height:1.1}
.erg p{margin:.5rem 0 0;font-size:.92rem;opacity:.9}
.erg.hell{background:var(--karte);color:var(--tinte);border:1px solid var(--linie)}
.erg.hell b{color:var(--navy)}
.erg.hell small,.erg.hell p{opacity:1;color:var(--grau)}

/* Ablauf */
.ablauf{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center;margin-top:2rem}
.ablauf-bild img{border-radius:22px;aspect-ratio:3/2;object-fit:cover;box-shadow:var(--schatten)}
.schritte{list-style:none;padding:0;margin:0;position:relative}
.schritte::before{content:"";position:absolute;left:23px;top:28px;bottom:28px;width:2px;background:var(--linie-stark)}
.schritte li{position:relative;padding-left:4.2rem;padding-bottom:2rem}
.schritte li:last-child{padding-bottom:0}
.schritte .nr{position:absolute;left:0;top:0;width:48px;height:48px;border-radius:50%;background:var(--navy);color:#fff;font-weight:800;display:grid;place-items:center;font-size:1.05rem;border:4px solid var(--bg-tief)}
.schritte h3{margin-bottom:.35rem}
.schritte p{margin:0 0 .4rem;color:var(--grau)}
.schritte .fakt{display:inline-block;font-size:.8rem;font-weight:700;color:var(--navy);background:var(--tint);border-radius:50px;padding:.25rem .8rem}

/* Qualifiziert */
.quali{display:grid;grid-template-columns:repeat(2,1fr);gap:.9rem 1.4rem;margin:2rem 0 0;padding:0;list-style:none}
.quali li{background:var(--karte);border:1px solid var(--linie);border-radius:12px;padding:1rem 1.1rem 1rem 3rem;position:relative;font-size:.97rem}
.quali li::before{content:"";position:absolute;left:1rem;top:1.05rem;width:22px;height:22px;border-radius:50%;background:var(--gruen-tint);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.2 3L15 7' fill='none' stroke='%23178a5b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.quali li.nein::before{background:var(--rot-tint);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M6 6l8 8M14 6l-8 8' fill='none' stroke='%23c2493d' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E")}

/* Garantie */
.garantie{background:var(--navy);color:#fff;border-radius:26px;padding:clamp(2rem,5vw,3.6rem);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:2.5rem;align-items:center;position:relative;overflow:hidden}
.garantie::before{content:"";position:absolute;right:-120px;top:-120px;width:380px;height:380px;border-radius:50%;background:rgba(255,255,255,.06)}
.garantie h2,.garantie .kicker{color:#fff}
.garantie .kicker{opacity:.8}
.garantie p{color:rgba(255,255,255,.86)}
.garantie-punkte{list-style:none;padding:0;margin:0;display:grid;gap:.8rem;position:relative}
.garantie-punkte li{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:.9rem 1.1rem;font-size:.95rem}
.garantie-punkte b{display:block;font-size:1.02rem;margin-bottom:.15rem}
.garantie .knopf{background:#fff;color:var(--navy);border-color:#fff}
.garantie .knopf:hover{background:var(--tint);border-color:var(--tint)}

/* Beweise */
.beweise{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:1.4rem;margin-top:2.2rem}
.beweis-karte{background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);padding:1.7rem;box-shadow:var(--schatten)}
.zahlen{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}
.zahl b{display:block;font-size:clamp(1.9rem,3.4vw,2.6rem);font-weight:800;color:var(--navy);line-height:1}
.zahl span{display:block;font-size:.85rem;color:var(--grau);margin-top:.35rem;font-weight:600}
.platz-karte{border:2px dashed var(--linie-stark);border-radius:var(--radius);padding:1.7rem;display:flex;flex-direction:column;justify-content:center;background:transparent}
.platz-karte .kicker{margin-bottom:.5rem}
.platz-karte h3{font-size:1.35rem}
.ergaenzen{display:inline-block;background:#fff4cc;color:#6b4d00;border-radius:6px;padding:.1rem .45rem;font-size:.85rem;font-weight:600}

/* Vergleich */
.vergleich{width:100%;border-collapse:separate;border-spacing:0;margin-top:2rem;background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);overflow:hidden;font-size:.95rem}
.vergleich th,.vergleich td{padding:1rem 1.1rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--linie)}
.vergleich tr:last-child td{border-bottom:0}
.vergleich th{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--grau);background:var(--bg-tief)}
.vergleich th.wir,.vergleich td.wir{background:var(--tint);color:var(--tinte);font-weight:600}
.vergleich th.wir{color:var(--navy)}
.vergleich td:first-child{font-weight:700;color:var(--tinte);width:20%}
.tabelle-scroll{overflow-x:auto}

/* Passt */
.passt{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.4rem;margin-top:2rem}
.passt-karte{background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);padding:1.6rem;box-shadow:var(--schatten)}
.passt-karte h3{display:flex;align-items:center;gap:.6rem}
.passt-karte ul{margin:0;padding-left:1.2rem;color:var(--grau)}
.passt-karte li{margin-bottom:.5rem}
.passt-karte.ja{border-top:4px solid var(--gruen)}
.passt-karte.nein{border-top:4px solid var(--rot)}

/* Über mich */
.ueber{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.ueber img{border-radius:22px;aspect-ratio:4/5;object-fit:cover;box-shadow:var(--schatten)}
.ueber blockquote{margin:0 0 1.2rem;font-size:1.22rem;font-weight:600;line-height:1.5;color:var(--tinte);border-left:4px solid var(--navy);padding-left:1.1rem}
.ueber-name{font-weight:800;margin-bottom:.15rem}
.ueber-rolle{color:var(--grau);font-size:.92rem;margin-bottom:1.2rem}
.ueber-fakten{display:flex;gap:1.6rem;flex-wrap:wrap}
.ueber-fakten div b{display:block;font-size:1.4rem;color:var(--navy);font-weight:800;line-height:1.1}
.ueber-fakten div span{font-size:.82rem;color:var(--grau);font-weight:600}

/* FAQ */
.faq{max-width:820px;margin:2rem auto 0}
.faq details{background:var(--karte);border:1px solid var(--linie);border-radius:12px;margin-bottom:.7rem;padding:0 1.2rem}
.faq summary{cursor:pointer;font-weight:700;padding:1rem 2rem 1rem 0;list-style:none;position:relative;font-size:1rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:0;top:.85rem;font-size:1.4rem;color:var(--navy);font-weight:600;transition:transform .25s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{color:var(--grau);margin:0 0 1.1rem}

/* Formular */
.anfrage{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
.formular{background:var(--karte);border:1px solid var(--linie);border-radius:22px;padding:clamp(1.4rem,3vw,2.2rem);box-shadow:var(--schatten)}
.feld{margin-bottom:1rem}
.feld label{display:block;font-weight:700;font-size:.88rem;margin-bottom:.35rem}
.feld input,.feld select,.feld textarea{width:100%;border:1.5px solid var(--linie-stark);border-radius:10px;padding:.8rem .9rem;font:inherit;font-size:1rem;color:var(--tinte);background:#fff}
.feld input:focus,.feld select:focus,.feld textarea:focus{outline:3px solid rgba(29,74,143,.28);border-color:var(--navy)}
.feld input::placeholder{color:var(--grau-hell)}
.feld-reihe{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem}
.formular .knopf{width:100%;margin-top:.4rem}
.hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
.danke{background:var(--gruen-tint);border:1px solid rgba(23,138,91,.3);border-radius:14px;padding:1.4rem;color:var(--tinte)}
.danke h3{color:var(--gruen)}
.form-fehler{color:var(--rot);font-size:.9rem;margin-top:.6rem}
.anfrage-punkte{list-style:none;padding:0;margin:1.4rem 0 0}
.anfrage-punkte li{padding-left:2rem;position:relative;margin-bottom:.7rem;color:var(--grau)}
.anfrage-punkte li::before{content:"";position:absolute;left:0;top:.3rem;width:20px;height:20px;border-radius:50%;background:var(--gruen-tint);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.2 3L15 7' fill='none' stroke='%23178a5b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}

/* Fuß */
.fuss{border-top:1px solid var(--linie);padding:2.2rem 0;font-size:.88rem;color:var(--grau)}
.fuss .wrap{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:center}
.fuss a{color:var(--grau);text-decoration:none;margin-left:1.2rem}
.fuss a:hover{color:var(--navy)}

/* Einblendungen nur mit JavaScript */
.js .zeigt{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.16,1,.3,1)}
.js .zeigt.da{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .band-schiene{animation:none}
  .js .zeigt{opacity:1;transform:none;transition:none}
  .treffer{transition:none}
  .knopf{transition:none}
}

/* Umbrüche */
@media (max-width:1020px){
  .problem-raster{grid-template-columns:1fr 1fr}
  .zahlen{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:900px){
  .nav{position:fixed;inset:74px 0 auto 0;background:var(--karte);flex-direction:column;align-items:stretch;padding:1rem 1.25rem 1.4rem;gap:.2rem;border-bottom:1px solid var(--linie);box-shadow:var(--schatten);display:none}
  .nav.offen{display:flex}
  .nav a{padding:.7rem 0;font-size:1.05rem}
  .nav .knopf{margin-top:.6rem;justify-content:center}
  .nav-schalter{display:block}
  .nav-schalter[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav-schalter[aria-expanded="true"] span:nth-child(2){opacity:0}
  .nav-schalter[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .hero .wrap,.rang,.rechner,.ablauf,.garantie,.beweise,.ueber,.anfrage,.passt{grid-template-columns:minmax(0,1fr)}
  .hero-bild{max-width:min(440px,100%);margin-top:1rem}
  .hero-karte{left:.8rem;bottom:.8rem}
  .ueber img{max-width:min(420px,100%)}
  .quali{grid-template-columns:1fr}
}
@media (max-width:760px){
  body{font-size:.98rem}
  .problem-raster{grid-template-columns:1fr}
  .zahlen{grid-template-columns:1fr 1fr}
  .feld-reihe{grid-template-columns:1fr}
  .hero-knoepfe .knopf{width:100%}
  .knopf{white-space:normal;text-align:center}
  .google-liste{height:calc(7 * 58px)}
  .treffer{top:calc(var(--i) * 58px);height:52px}
  .fuss .wrap{flex-direction:column;align-items:flex-start}
  .fuss a{margin:0 1.2rem 0 0}
}

/* ===== Fassung 3: persönlicher, visueller ===== */
.vertrauen{display:flex;gap:2.2rem;flex-wrap:wrap;align-items:center;margin-top:1.8rem;padding-top:1.4rem;border-top:1px solid var(--linie)}
.vertrauen div{display:flex;align-items:center;gap:.6rem;font-size:.9rem;color:var(--grau);font-weight:600}
.vertrauen b{font-size:1.25rem;color:var(--tinte);font-weight:800}
.sterne{color:#f5b301;letter-spacing:-.05em;font-size:1rem}

/* Anfragen-Feed am Handy */
.feed{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.handy{position:relative;width:min(340px,100%);margin-inline:auto;background:#0b1220;border-radius:42px;padding:14px;box-shadow:0 30px 60px rgba(11,43,92,.22)}
.handy-schirm{background:var(--bg);border-radius:30px;padding:1.2rem 1rem 1.4rem;min-height:520px;overflow:hidden}
.handy-kopf{display:flex;justify-content:space-between;align-items:center;font-size:.72rem;color:var(--grau);font-weight:700;margin-bottom:1rem;padding:0 .2rem}
.handy-kopf b{color:var(--tinte);font-size:.82rem}
.anfrage-karte{background:var(--karte);border:1px solid var(--linie);border-radius:14px;padding:.8rem .9rem;margin-bottom:.7rem;display:grid;grid-template-columns:auto 1fr auto;gap:.7rem;align-items:center;font-size:.8rem;box-shadow:0 6px 16px rgba(11,43,92,.06)}
.js .anfrage-karte{opacity:0;transform:translateY(-14px);transition:opacity .5s ease,transform .5s cubic-bezier(.16,1,.3,1)}
.js .handy.da .anfrage-karte{opacity:1;transform:none}
.js .handy.da .anfrage-karte:nth-child(2){transition-delay:.5s}
.js .handy.da .anfrage-karte:nth-child(3){transition-delay:1.1s}
.js .handy.da .anfrage-karte:nth-child(4){transition-delay:1.8s}
.js .handy.da .anfrage-karte:nth-child(5){transition-delay:2.6s}
.anfrage-karte .typ{width:36px;height:36px;border-radius:10px;background:var(--tint);display:grid;place-items:center;color:var(--navy);font-weight:800;font-size:.8rem}
.anfrage-karte .was{font-weight:700;color:var(--tinte);display:block}
.anfrage-karte .wo{color:var(--grau);display:block;font-size:.74rem}
.anfrage-karte .wert{font-weight:800;color:var(--navy);white-space:nowrap;text-align:right}
.anfrage-karte .wert small{display:block;font-weight:600;color:var(--grau-hell);font-size:.66rem}
.handy-fuss{text-align:center;font-size:.72rem;color:var(--grau);margin-top:.6rem}
.feed-text ul{list-style:none;padding:0;margin:1.4rem 0 0}
.feed-text li{position:relative;padding-left:2rem;margin-bottom:.8rem}
.feed-text li::before{content:"";position:absolute;left:0;top:.35rem;width:20px;height:20px;border-radius:50%;background:var(--gruen-tint);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5 10.5l3.2 3L15 7' fill='none' stroke='%23178a5b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}

/* Persönliches Wort */
.wort{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,4.5rem);align-items:center}
.wort-bild{position:relative}
.wort-bild img{border-radius:22px;aspect-ratio:4/5;object-fit:cover;box-shadow:var(--schatten)}
.wort-bild .stempel{position:absolute;right:-1rem;bottom:1.6rem;background:var(--navy);color:#fff;border-radius:14px;padding:.8rem 1rem;font-size:.82rem;line-height:1.35;max-width:230px;box-shadow:var(--schatten)}
.wort-bild .stempel b{display:block;font-size:1rem}
.brief{background:var(--karte);border:1px solid var(--linie);border-radius:22px;padding:clamp(1.6rem,3.5vw,2.6rem);box-shadow:var(--schatten);position:relative}
.brief::before{content:"„";position:absolute;left:1.2rem;top:-.4rem;font-size:5rem;line-height:1;color:var(--tint);font-weight:800;font-family:Georgia,serif}
.brief p{font-size:1.06rem;line-height:1.7}
.brief .unterschrift{display:flex;align-items:center;gap:1rem;margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--linie)}
.brief .unterschrift img{width:54px;height:54px;border-radius:50%;object-fit:cover;object-position:top}
.brief .unterschrift b{display:block}
.brief .unterschrift span{font-size:.85rem;color:var(--grau)}
.brief .knopf{margin-top:1.2rem}

/* Bewertungen */
.bewertungen-kopf{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;margin-bottom:1.6rem}
.bewertungen-kopf .note{font-size:2.6rem;font-weight:800;color:var(--tinte);line-height:1}
.bewertungen-kopf .sterne{font-size:1.4rem}
.bewertungen-kopf small{display:block;color:var(--grau);font-size:.85rem}
.bewertungen{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}
.bewertung{background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--schatten);display:flex;flex-direction:column;gap:.8rem}
.bewertung p{margin:0;font-size:.97rem;color:var(--tinte);flex:1}
.bewertung .wer{display:flex;align-items:center;gap:.7rem;font-size:.85rem;color:var(--grau)}
.bewertung .wer i{font-style:normal;width:38px;height:38px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:800;font-size:.85rem}
.bewertung .wer b{display:block;color:var(--tinte)}
.google-logo{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:700;color:var(--grau)}

/* Regeln als Chips */
.regeln{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.2rem}
.regeln span{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:50px;padding:.4rem .9rem;font-size:.82rem;font-weight:600}
.regeln span.nein{background:rgba(194,73,61,.25)}

/* Quiz-Formular */
.quiz-schritt[hidden]{display:none}
.quiz-fortschritt{display:flex;gap:.4rem;margin-bottom:1.2rem}
.quiz-fortschritt i{flex:1;height:5px;border-radius:5px;background:var(--bg-tief)}
.quiz-fortschritt i.an{background:var(--navy)}
.quiz-frage{font-weight:800;font-size:1.15rem;margin-bottom:1rem}
.wahl{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-bottom:1rem}
.wahl label{border:1.5px solid var(--linie-stark);border-radius:12px;padding:.85rem .9rem;cursor:pointer;font-weight:600;font-size:.95rem;display:flex;align-items:center;gap:.6rem;transition:background .2s,border-color .2s}
.wahl label:hover{background:var(--tint)}
.wahl input{accent-color:var(--navy);width:18px;height:18px;margin:0}
.wahl label:has(input:checked){background:var(--tint);border-color:var(--navy)}
.quiz-knoepfe{display:flex;gap:.7rem;margin-top:.4rem}
.quiz-knoepfe .knopf{flex:1}
.quiz-knoepfe .leise{flex:0 0 auto}

@media (max-width:900px){
  .feed,.wort{grid-template-columns:1fr}
  .wort-bild{max-width:420px}
  .wort-bild .stempel{right:.6rem}
  .bewertungen{grid-template-columns:1fr}
  .handy-schirm{min-height:460px}
}
@media (max-width:760px){
  .wahl{grid-template-columns:1fr}
  .vertrauen{gap:1.2rem}
}

/* ===== Fassung 4: Animationen und Branchen-Karten ===== */
/* Wischer über dem Hero-Wort */
.mark{position:relative;display:inline-block}
.js .mark::after{content:"";position:absolute;inset:-.1em -.15em -.05em;border-radius:8px;background:linear-gradient(90deg,rgba(90,100,115,.45),rgba(90,100,115,.3));filter:blur(1.5px);pointer-events:none;animation:wischen 1.3s cubic-bezier(.65,0,.25,1) 1.1s forwards}
.js .mark::before{content:"";position:absolute;top:-.55em;bottom:-.2em;left:-.2em;width:.75em;z-index:2;pointer-events:none;opacity:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 60'%3E%3Crect x='13' y='2' width='4' height='38' rx='2' fill='%230b2b5c'/%3E%3Crect x='2' y='40' width='26' height='9' rx='3' fill='%230b2b5c'/%3E%3Crect x='2' y='49' width='26' height='5' rx='2' fill='%231d4a8f'/%3E%3C/svg%3E") center/contain no-repeat;animation:wischer 1.3s cubic-bezier(.65,0,.25,1) 1.1s forwards}
@keyframes wischen{from{clip-path:inset(0 0 0 0)}to{clip-path:inset(0 0 0 100%)}}
@keyframes wischer{0%{left:-.2em;opacity:0}8%{opacity:1}92%{opacity:1}100%{left:calc(100% - .5em);opacity:0}}

/* Wischmopp mit Blasen */
.mopp{width:150px;height:150px;flex:none}
.mopp .stiel{transform-origin:75px 8px;animation:mopp-schwung 2.4s ease-in-out infinite}
.mopp .blase{opacity:0;animation:blase 2.4s ease-out infinite}
.mopp .blase:nth-child(2){animation-delay:.6s}
.mopp .blase:nth-child(3){animation-delay:1.2s}
.mopp .spur{stroke-dasharray:60;stroke-dashoffset:60;animation:spur 2.4s ease-in-out infinite}
@keyframes mopp-schwung{0%,100%{transform:rotate(-16deg)}50%{transform:rotate(16deg)}}
@keyframes blase{0%{opacity:0;transform:translateY(0) scale(.6)}30%{opacity:.9}100%{opacity:0;transform:translateY(-46px) scale(1.15)}}
@keyframes spur{0%{stroke-dashoffset:60;opacity:0}40%{opacity:.7}100%{stroke-dashoffset:0;opacity:0}}
.kopfzeile{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem}
.kopfzeile .mopp{margin-bottom:-.5rem}

/* Branchen-Karten als Laufband */
.branchen{padding-block:clamp(2.5rem,5vw,4rem) clamp(3rem,6vw,5rem);overflow:hidden;border-top:1px solid var(--linie)}
.branchen .schmal{margin-bottom:1.6rem}
.branchen-schiene{display:flex;gap:1.1rem;width:max-content;animation:laufen 55s linear infinite}
.branchen:hover .branchen-schiene{animation-play-state:paused}
.branche{position:relative;width:250px;aspect-ratio:4/5;border-radius:18px;overflow:hidden;background:var(--bg-tief);flex:none;box-shadow:var(--schatten)}
.branche img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.branche:hover img{transform:scale(1.04)}
.branche span{position:absolute;left:0;right:0;bottom:0;padding:2.4rem 1rem .9rem;color:#fff;font-weight:700;font-size:.95rem;background:linear-gradient(transparent,rgba(7,29,63,.75))}
.branche.leer{display:grid;place-items:center;color:var(--grau);font-size:.8rem;text-align:center;padding:1rem}

/* Glocke am Handy */
.glocke{position:absolute;top:-14px;right:-10px;width:44px;height:44px;border-radius:50%;background:var(--rot);color:#fff;font-weight:800;display:grid;place-items:center;font-size:.95rem;box-shadow:0 8px 18px rgba(194,73,61,.4);border:3px solid var(--bg);transform:scale(0)}
.js .handy.da .glocke{animation:glocke-auf .5s cubic-bezier(.34,1.56,.64,1) 3.2s forwards}
@keyframes glocke-auf{to{transform:scale(1)}}

@media (prefers-reduced-motion:reduce){
  .js .mark::after,.js .mark::before{animation:none;display:none}
  .mopp .stiel,.mopp .blase,.mopp .spur{animation:none}
  .branchen-schiene{animation:none}
  .glocke{transform:scale(1)}
}
@media (max-width:760px){
  .kopfzeile{align-items:center}
  .mopp{width:96px;height:96px}
  .branche{width:200px}
}

/* Ablauf: Linie wächst, Schritte kommen nacheinander */
.js .schritte::before{transform:scaleY(0);transform-origin:top;transition:transform 1.4s cubic-bezier(.16,1,.3,1) .2s}
.js .schritte.da::before{transform:scaleY(1)}
.js .schritte li{opacity:0;transform:translateX(-14px);transition:opacity .6s ease,transform .6s cubic-bezier(.16,1,.3,1)}
.js .schritte.da li{opacity:1;transform:none}
.js .schritte.da li:nth-child(2){transition-delay:.45s}
.js .schritte.da li:nth-child(3){transition-delay:.9s}
.js .schritte .nr{transform:scale(.6);transition:transform .5s cubic-bezier(.34,1.56,.64,1)}
.js .schritte.da .nr{transform:scale(1)}
.js .schritte.da li:nth-child(2) .nr{transition-delay:.55s}
.js .schritte.da li:nth-child(3) .nr{transition-delay:1s}
@media (prefers-reduced-motion:reduce){
  .js .schritte::before,.js .schritte li,.js .schritte .nr{transition:none;transform:none;opacity:1}
}

/* ===== Fassung 5: Zeitleiste mit Bildern, Neuro-Badge, Test bestanden ===== */
.zeitleiste{position:relative;margin-top:2.5rem;padding-left:0}
.zeitleiste .tl-linie{position:absolute;left:27px;top:10px;bottom:10px;width:3px;background:var(--linie);border-radius:3px;overflow:hidden}
.zeitleiste .tl-linie span{display:block;width:100%;height:100%;background:var(--navy);transform:scaleY(0);transform-origin:top;transition:transform 2.2s cubic-bezier(.16,1,.3,1) .2s}
.zeitleiste.da .tl-linie span{transform:scaleY(0)}
.tl-schritt{position:relative;padding-left:5rem;margin-bottom:clamp(2.2rem,5vw,3.6rem)}
.tl-schritt:last-child{margin-bottom:0}
.tl-punkt{position:absolute;left:0;top:0;width:56px;height:56px;border-radius:50%;background:var(--karte);border:3px solid var(--navy);color:var(--navy);font-weight:800;font-size:1.15rem;display:grid;place-items:center;z-index:1}
.tl-schritt.hervor .tl-punkt{background:var(--navy);color:#fff}
.tl-inhalt{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.4rem,4vw,3rem);align-items:center;background:var(--karte);border:1px solid var(--linie);border-radius:22px;padding:clamp(1.2rem,3vw,2rem);box-shadow:var(--schatten)}
.tl-schritt:nth-child(even) .tl-inhalt .tl-bild{order:-1}
.tl-schritt.hervor .tl-inhalt{border:2px solid var(--navy)}
.tl-inhalt h3{font-size:1.35rem;margin-bottom:.5rem}
.tl-inhalt p{color:var(--grau);margin-bottom:.9rem}
.tl-bild img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px}
.tl-marke{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);background:var(--tint);border-radius:50px;padding:.3rem .8rem;margin-bottom:.6rem}

/* Neuro-Badge (Zertifikat, Farben des Zertifikats) */
.neuro-badge{display:inline-flex;flex-direction:column;border:2px solid #a39c78;border-radius:12px;overflow:hidden;background:#fff;margin-top:1.2rem;box-shadow:var(--schatten)}
.neuro-badge .nb-oben{display:flex;align-items:center;gap:.7rem;padding:.55rem 1.1rem;color:#a39c78;font-weight:800;font-size:.82rem;letter-spacing:.04em;line-height:1.2}
.neuro-badge .nb-oben svg{width:30px;height:22px;flex:none}
.neuro-badge .nb-unten{background:#a39c78;color:#fff;font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;text-align:center;padding:.3rem .8rem}
.brief .badge-zeile{display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap}

/* Test bestanden */
.test{position:relative;text-align:center;max-width:860px;margin:0 auto;background:var(--navy);color:#fff;border-radius:26px;padding:clamp(3rem,6vw,4rem) clamp(1.6rem,4vw,2.8rem) clamp(2.2rem,4vw,3rem);box-shadow:0 20px 50px rgba(11,43,92,.25);animation:test-puls 3.4s ease-in-out infinite}
.test .neuro-badge{position:absolute;top:0;left:50%;transform:translate(-50%,-50%) scale(.8);margin:0}
.test h2{color:#fff;margin-bottom:1rem}
.test p{font-size:clamp(1.05rem,2.2vw,1.35rem);font-weight:600;line-height:1.6;color:rgba(255,255,255,.9);margin:0}
.test .mark-hell{background:linear-gradient(transparent 60%,rgba(255,255,255,.22) 60%)}
@keyframes test-puls{0%,100%{box-shadow:0 20px 50px rgba(11,43,92,.25)}50%{box-shadow:0 20px 60px rgba(29,74,143,.5)}}
@media (prefers-reduced-motion:reduce){.test{animation:none}.zeitleiste .tl-linie span{transition:none;transform:scaleY(1)}}
@media (max-width:900px){
  .tl-inhalt{grid-template-columns:1fr}
  .tl-schritt:nth-child(even) .tl-inhalt .tl-bild{order:0}
  .tl-bild img{aspect-ratio:3/2}
}
@media (max-width:760px){
  .zeitleiste .tl-linie{left:19px}
  .tl-punkt{width:40px;height:40px;font-size:.95rem}
  .tl-schritt{padding-left:3.4rem}
}

/* ===== Fassung 6: Zeitleiste im Bolten-Stil, Kapazität, WhatsApp, Muster-Seite ===== */
.zeitleiste{max-width:980px;margin-inline:auto}
.zeitleiste .tl-linie{top:34px;height:calc(100% - 68px);bottom:auto;width:2px;left:27px}
.tl-inhalt{grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:1.8rem;padding:1.7rem 1.8rem;transition:transform .4s,box-shadow .4s,border-color .4s}
.tl-schritt:nth-child(even) .tl-inhalt .tl-bild{order:0}
.tl-schritt:hover .tl-inhalt{transform:translateY(-4px);border-color:var(--navy-hell)}
.tl-schritt.hervor .tl-inhalt{border-color:var(--navy);background:linear-gradient(180deg,#f2f6fc 0%,#fff 100%)}
.tl-punkt{top:6px;border:2px solid var(--linie-stark);color:var(--grau);background:#fff;transition:border-color .5s,color .5s,transform .5s}
.tl-schritt.sichtbar .tl-punkt{border-color:var(--navy);color:var(--navy)}
.tl-schritt.hervor .tl-punkt{background:var(--navy);border-color:var(--navy);color:#fff}
.tl-schritt:hover .tl-punkt{transform:scale(1.07)}
.tl-bild{border-radius:14px;overflow:hidden;aspect-ratio:4/3;background:var(--bg-tief)}
.tl-bild img{aspect-ratio:auto;height:100%;border-radius:0;transition:transform .9s cubic-bezier(.2,.7,.3,1)}
.tl-schritt:hover .tl-bild img{transform:scale(1.06)}
.tl-inhalt p{font-size:.97rem}
.zeitleiste .tl-linie span{transition:transform .35s ease-out}

/* Muster der Anfrageseite als Browserfenster */
.muster{width:100%;height:100%;background:#fff;display:flex;flex-direction:column;font-size:.62rem;color:var(--tinte)}
.muster-kopf{display:flex;gap:.3rem;padding:.4rem .6rem;background:var(--bg-tief);border-bottom:1px solid var(--linie)}
.muster-kopf i{width:8px;height:8px;border-radius:50%;background:#c9d3e0;display:block}
.muster-kopf i:first-child{background:#e88}
.muster-kopf i:nth-child(2){background:#eb5}
.muster-kopf i:nth-child(3){background:#7c9}
.muster-kopf em{margin-left:.5rem;font-style:normal;color:var(--grau);font-size:.58rem;background:#fff;border-radius:4px;padding:0 .5rem;flex:1}
.muster-hero{padding:.7rem .8rem .5rem;display:grid;grid-template-columns:1.2fr .8fr;gap:.6rem;align-items:center}
.muster-hero b{display:block;font-size:.95rem;line-height:1.15;margin-bottom:.3rem}
.muster-hero small{display:block;color:var(--grau);font-size:.58rem;line-height:1.35}
.muster-chips{display:flex;gap:.25rem;flex-wrap:wrap;margin-top:.4rem}
.muster-chips span{background:var(--tint);color:var(--navy);border-radius:50px;padding:.12rem .45rem;font-size:.52rem;font-weight:700}
.muster-form{background:var(--bg);border:1px solid var(--linie);border-radius:8px;padding:.5rem}
.muster-form b{font-size:.62rem;display:block;margin-bottom:.3rem}
.muster-form i{display:block;height:11px;border:1px solid var(--linie-stark);border-radius:4px;background:#fff;margin-bottom:.25rem}
.muster-form u{display:block;text-decoration:none;background:var(--navy);color:#fff;text-align:center;border-radius:50px;padding:.2rem;font-weight:700;font-size:.55rem;margin-top:.3rem}
.muster-fuss{margin-top:auto;display:flex;gap:.4rem;padding:.4rem .8rem .6rem;color:var(--grau);font-size:.52rem}
.muster-fuss span::before{content:"✓ ";color:var(--gruen)}

/* Kapazität */
.kapa{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:2rem}
.kapa-karte{background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);padding:1.6rem;box-shadow:var(--schatten)}
.kapa-karte .ikon{width:52px;height:52px;border-radius:14px;background:var(--tint);display:grid;place-items:center;margin-bottom:1rem}
.kapa-karte .ikon svg{width:26px;height:26px;fill:none;stroke:var(--navy);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.kapa-karte h3{margin-bottom:.4rem}
.kapa-karte p{color:var(--grau);margin:0}
.kapa-zahl{display:flex;gap:2rem;flex-wrap:wrap;margin-top:1.6rem}
.kapa-zahl div b{display:block;font-size:2rem;font-weight:800;color:var(--navy);line-height:1}
.kapa-zahl div span{font-size:.85rem;color:var(--grau);font-weight:600}

/* WhatsApp-Box */
.wa-box{margin-top:1.6rem;background:var(--karte);border:1px solid var(--linie);border-radius:14px;padding:1.1rem 1.2rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.wa-box p{margin:0;flex:1;min-width:180px;font-size:.92rem;color:var(--grau)}
.wa-box p b{display:block;color:var(--tinte)}
.wa-box .knopf{background:#25d366;border-color:#25d366;color:#fff}
.wa-box .knopf:hover{background:#1ebe5a;border-color:#1ebe5a}

@media (max-width:900px){.tl-inhalt{grid-template-columns:1fr}.kapa{grid-template-columns:1fr}.tl-bild{aspect-ratio:3/2}}

/* Garantie-Stempel im Hero (24.09.2026) */
.garantiert{display:inline-block;background:var(--gruen);color:#fff;font-weight:800;padding:.1em .55em;border-radius:8px;letter-spacing:.01em;white-space:nowrap}

/* Überschriften ohne einzelne Wörter am Zeilenende */
h1,h2{text-wrap:balance}
.h1-garantie{font-size:.82em;padding:.04em .4em;border-radius:12px;vertical-align:.06em}

/* Garantie-Stempel im Hero */
.stempel{position:absolute;left:-6.2rem;top:-1.2rem;width:clamp(140px,13.5vw,178px);aspect-ratio:1;z-index:3;transform:rotate(-14deg);filter:drop-shadow(0 10px 18px rgba(11,43,92,.22));pointer-events:none}
.stempel svg{width:100%;height:100%;display:block;overflow:visible}
.stempel-papier{fill:#fff}
.stempel-farbe{fill:var(--gruen);stroke:var(--gruen)}
.stempel-farbe text{stroke:none;font-family:inherit;font-weight:800}
.stempel-ring{font-size:14px}
.stempel-klein{font-size:17px;letter-spacing:.2em}
.stempel-gross{font-size:25px}
.js .stempel{opacity:0;animation:stempel-auf .55s cubic-bezier(.3,1.5,.5,1) 2.5s forwards}
.js .stempel::after{content:"";position:absolute;inset:0;border-radius:50%;border:3px solid var(--gruen);opacity:0;animation:stempel-welle .7s ease-out 2.78s}
@keyframes stempel-auf{0%{opacity:0;transform:rotate(-34deg) scale(2.6)}60%{opacity:1}100%{opacity:1;transform:rotate(-14deg) scale(1)}}
@keyframes stempel-welle{0%{opacity:.7;transform:scale(1)}100%{opacity:0;transform:scale(1.45)}}
.js .hero-bild.stempelt img{animation:stempel-ruck .25s ease-out 2.78s}
@keyframes stempel-ruck{0%,100%{transform:none}35%{transform:translateY(3px) scale(.995)}}
@media (max-width:900px){.stempel{left:auto;right:-.4rem;top:-1.8rem;width:112px}}
@media (prefers-reduced-motion:reduce){.js .stempel{opacity:1;animation:none}.js .stempel::after,.js .hero-bild.stempelt img{animation:none}}
.hero h1{font-size:clamp(2rem,3.9vw,3.1rem)}

/* Hero: Beispiel-Anfrage statt Namenskarte */
.hero-karte{display:flex;flex-direction:column;gap:.15rem;min-width:230px}
.hero-karte b{font-size:1.15rem;margin:0}
.hk-kopf{display:flex;align-items:center;gap:.45rem;font-weight:700;font-size:.8rem;color:var(--gruen);margin-bottom:.25rem}
.hk-kopf em{font-style:normal;color:var(--grau);font-weight:500;margin-left:auto;padding-left:.8rem}
.hk-glocke{width:22px;height:22px;border-radius:50%;background:var(--gruen-tint);display:grid;place-items:center}
.hk-glocke svg{width:13px;height:13px;fill:none;stroke:var(--gruen);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.hk-zeile{color:var(--tinte);font-size:.88rem}
.hk-beispiel{position:absolute;top:-.6rem;right:.8rem;background:var(--karte);border:1px solid var(--linie);border-radius:50px;padding:.05rem .55rem;font-size:.68rem;color:var(--grau);font-weight:600}
.js .hero-karte{opacity:0;transform:translateY(16px);animation:hk-rein .6s cubic-bezier(.16,1,.3,1) 3.4s forwards}
@keyframes hk-rein{to{opacity:1;transform:none}}

/* Personal: Steuerung Objekte/Bewerber */
.steuer{max-width:640px;margin:2rem auto 0;background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);box-shadow:var(--schatten);padding:1.4rem 1.6rem}
.steuer-kopf{display:flex;justify-content:space-between;align-items:center;gap:1rem;font-weight:800;color:var(--navy);margin-bottom:1rem}
.steuer-status{font-style:normal;font-size:.8rem;font-weight:700;display:flex;align-items:center;gap:.4rem;color:var(--gruen)}
.steuer-status i{width:9px;height:9px;border-radius:50%;background:currentColor}
.steuer-zeile{display:grid;grid-template-columns:minmax(0,11rem) minmax(0,1fr) 5.5rem;gap:1rem;align-items:center;padding:.55rem 0;border-top:1px solid var(--linie)}
.steuer-name{font-weight:600;font-size:.92rem}
.steuer-balken{height:10px;border-radius:10px;background:var(--tint);overflow:hidden}
.steuer-balken i{display:block;height:100%;border-radius:10px;background:var(--navy);transition:width 1.1s cubic-bezier(.65,0,.25,1),background .6s ease}
.steuer-wert{font-size:.85rem;text-align:right;color:var(--navy)}
.steuer-fuss{margin:.8rem 0 0;font-size:.8rem;color:var(--grau)}
.steuer .s-b{display:none}
.steuer.voll .s-a{display:none}.steuer.voll .s-b{display:inline}
.auslastung{width:65%}.objekte{width:100%}.bewerber{width:6%;background:var(--linie-stark)!important}
.steuer.voll .steuer-status{color:#b7791f}
.steuer.voll .auslastung{width:95%;background:#b7791f}
.steuer.voll .objekte{width:30%;background:var(--linie-stark)}
.steuer.voll .bewerber{width:100%;background:var(--gruen)!important}
@media (max-width:600px){.steuer{padding:1.1rem}.steuer-zeile{grid-template-columns:minmax(0,1fr) 5rem;gap:.35rem .8rem}.steuer-balken{grid-column:1/-1;grid-row:2}}
@media (prefers-reduced-motion:reduce){.js .hero-karte{opacity:1;transform:none;animation:none}.steuer-balken i{transition:none}}

/* Zwei Bausteine: Animationen */
.kapa-karte{display:flex;flex-direction:column}
.baustein{display:inline-block;align-self:flex-start;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);background:var(--tint);border-radius:50px;padding:.2rem .7rem;margin-bottom:.6rem}
.szene{position:relative;min-height:310px;border-radius:14px;background:var(--tint);margin:-.4rem -.4rem 1.3rem;padding:1rem;overflow:hidden;display:flex;flex-direction:column;gap:.55rem}
.sz-suche{display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid var(--linie);border-radius:50px;padding:.5rem .9rem;font-size:.85rem;font-weight:600;color:var(--tinte)}
.sz-suche svg{width:16px;height:16px;flex:none;fill:none;stroke:var(--grau);stroke-width:2;stroke-linecap:round}
.sz-tippen{white-space:nowrap;overflow:hidden;display:inline-block;max-width:0;border-right:2px solid var(--navy)}
.sz-treffer{background:#fff;border:1px solid var(--linie);border-radius:10px;padding:.55rem .8rem;font-size:.78rem;color:var(--grau);display:flex;flex-direction:column;line-height:1.35}
.sz-treffer b{color:var(--navy);font-size:.92rem}
.sz-anz{font-size:.66rem;font-weight:800;color:var(--tinte)}
.sz-treffer.grau{opacity:.55}
.sz-meldung{position:absolute;left:1rem;right:1rem;bottom:1rem;background:var(--gruen);color:#fff;border-radius:12px;padding:.6rem .8rem;font-weight:700;font-size:.85rem;display:flex;align-items:center;gap:.6rem;box-shadow:0 12px 24px rgba(23,138,91,.3)}
.sz-meldung i{font-style:normal;background:rgba(255,255,255,.22);border-radius:8px;padding:.1rem .45rem}
.sz-anzeige{background:#fff;border:1px solid var(--linie);border-radius:12px;padding:.7rem .85rem;font-size:.78rem;color:var(--grau);display:flex;flex-direction:column;gap:.15rem;line-height:1.35}
.sz-anzeige b{color:var(--navy);font-size:.95rem}
.sz-profil{display:flex;align-items:center;gap:.4rem;font-weight:700;color:var(--tinte);font-size:.75rem}
.sz-profil i{width:18px;height:18px;border-radius:50%;background:var(--navy)}
.sz-profil em{font-style:normal;font-weight:500;color:var(--grau);margin-left:auto}
.sz-bewerbung{display:flex;align-items:center;gap:.6rem;background:#fff;border:1px solid var(--linie);border-radius:10px;padding:.35rem .7rem;font-size:.78rem;color:var(--grau);box-shadow:0 6px 14px rgba(11,43,92,.07)}
.sz-bewerbung i{font-style:normal;width:26px;height:26px;border-radius:50%;background:var(--gruen-tint);color:var(--gruen);font-weight:800;display:grid;place-items:center;flex:none}
.sz-bewerbung b{display:block;color:var(--tinte);font-size:.82rem}
.js .szene .sz-treffer:not(.grau),.js .sz-meldung,.js .sz-bewerbung{opacity:0}
.js .da .sz-tippen{animation:sz-tippen 7s steps(29) infinite}
.js .da .szene-google .sz-treffer:not(.grau){animation:sz-rein 7s ease infinite}
.js .da .sz-meldung{animation:sz-melden 7s cubic-bezier(.3,1.4,.5,1) infinite}
.js .da .sz-bewerbung.b1{animation:sz-bew1 7s ease infinite}
.js .da .sz-bewerbung.b2{animation:sz-bew2 7s ease infinite}
.js .da .sz-bewerbung.b3{animation:sz-bew3 7s ease infinite}
@keyframes sz-tippen{0%{max-width:0}28%,92%{max-width:100%}100%{max-width:0}}
@keyframes sz-rein{0%,30%{opacity:0;transform:translateY(8px)}38%,92%{opacity:1;transform:none}100%{opacity:0}}
@keyframes sz-melden{0%,48%{opacity:0;transform:translateY(20px) scale(.95)}56%,92%{opacity:1;transform:none}100%{opacity:0}}
@keyframes sz-bew1{0%,18%{opacity:0;transform:translateX(24px)}26%,92%{opacity:1;transform:none}100%{opacity:0}}
@keyframes sz-bew2{0%,40%{opacity:0;transform:translateX(24px)}48%,92%{opacity:1;transform:none}100%{opacity:0}}
@keyframes sz-bew3{0%,62%{opacity:0;transform:translateX(24px)}70%,92%{opacity:1;transform:none}100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.js .szene *{animation:none!important;opacity:1!important;max-width:none!important;transform:none!important}}
