/* ============================ UNTERSEITE KUNDENSTIMMEN (07.10.) ============================ */

.kst-register{margin:0 0 var(--r-24);font-family:var(--schrift-label);font-size:var(--t-15);letter-spacing:.14em;
  text-transform:uppercase;color:var(--text-2);display:flex;align-items:center;gap:12px}
.kst-register .punkt{width:7px;height:7px;background:var(--rot);display:inline-block}
.kst-register--dunkel{color:rgba(255,255,255,.72)}
.kst-register--dunkel .punkt{background:var(--rot-hell)}
.kst-h2{margin:0;font-family:var(--schrift-hl);font-weight:700;font-size:clamp(40px,5vw,88px);line-height:.95;letter-spacing:-.035em}

.kst-b-zitat{margin:0;max-width:30ch;font-family:var(--schrift-hl);font-weight:600;font-size:clamp(18px,1.4vw,24px);line-height:1.3;letter-spacing:-.015em;color:var(--weiss);transition:opacity .4s var(--kurve)}
@media (min-width:1000px){.kst-b-zitat{text-align:right}}
/* ---------- 1 · Hero: Kino, vollflaechig unter dem durchsichtigen Kopf (07.10.) ---------- */
.kst-titel{margin:0;font-family:var(--schrift-hl);color:var(--tinte)}
.kst-zeile{display:block;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em}
.kst-zeile > span{display:inline-block}
.kst-kicker{font-weight:600;font-size:clamp(20px,2.3vw,40px);letter-spacing:-.01em;line-height:1.1;margin-bottom:.45em}
.kst-gross{font-weight:700;font-size:clamp(56px,8.4vw,148px);letter-spacing:-.045em;line-height:.88}
.kst-lead{margin:0;font-size:var(--t-lead);line-height:1.35;letter-spacing:-.02em;color:var(--tinte-weich);max-width:30ch}

/* B · Kino */
.kst-hv--b{position:relative;min-height:100vh;min-height:100svh;color:var(--weiss);background:var(--tinte);overflow:hidden}
.kst-b-bilder{position:absolute;inset:0}
.kst-b-bild{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .9s var(--kurve),transform 6s linear;transform:scale(1.06)}
.kst-b-bild.aktiv{opacity:1;transform:scale(1)}
.kst-b-schleier{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,16,14,.78) 0%,rgba(17,16,14,.35) 55%,rgba(17,16,14,.15) 100%),
  linear-gradient(180deg,rgba(17,16,14,.6) 0%,transparent 22%,transparent 55%,rgba(17,16,14,.8) 100%)}
.kst-b-inhalt{position:relative;min-height:inherit;display:flex;flex-direction:column;justify-content:flex-end;gap:clamp(32px,4vw,56px);
  padding-top:calc(var(--kopf-hoehe) + 40px);padding-bottom:clamp(56px,9vh,100px)}
@media (min-width:1000px){.kst-b-inhalt{flex-direction:row;align-items:flex-end;justify-content:space-between}}
.kst-hv--b .kst-titel{color:var(--weiss)}
.kst-hv--b .kst-titel .rot{color:var(--rot-hell)}
.kst-b-seite{display:flex;flex-direction:column;gap:20px;align-items:flex-start}
@media (min-width:1000px){.kst-b-seite{align-items:flex-end}}
.kst-b-play{display:flex;align-items:center;gap:16px;background:none;border:0;padding:0;color:inherit;font:inherit;cursor:pointer;text-align:left}
.kst-b-play-kreis{width:72px;height:72px;border-radius:50%;background:var(--rot);display:grid;place-items:center;transition:transform var(--dauer-ui) var(--kurve)}
.kst-b-play:hover .kst-b-play-kreis{transform:scale(1.08)}
.kst-b-play-text{display:flex;flex-direction:column;gap:4px}
.kst-b-name{font-family:var(--schrift-hl);font-weight:700;font-size:26px;letter-spacing:-.02em}
.kst-b-rolle{font-family:var(--schrift-label);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.85)}
.kst-b-play:focus-visible{outline:2px solid var(--weiss);outline-offset:6px}
.kst-b-auswahl{display:flex;gap:10px}
.kst-b-daumen{position:relative;width:clamp(64px,7vw,108px);aspect-ratio:16/10;padding:0;border:0;border-radius:6px;overflow:hidden;cursor:pointer;background:#000;
  opacity:.55;transition:opacity var(--dauer-ui) var(--kurve),transform var(--dauer-ui) var(--kurve);outline:2px solid transparent;outline-offset:2px}
.kst-b-daumen img{width:100%;height:100%;object-fit:cover}
.kst-b-daumen span{position:absolute;left:0;right:0;bottom:0;padding:3px 6px;font-family:var(--schrift-label);font-size:11px;color:var(--weiss);
  background:linear-gradient(transparent,rgba(0,0,0,.7));text-align:left}
.kst-b-daumen:hover{opacity:.9}
.kst-b-daumen.aktiv{opacity:1;outline-color:var(--weiss)}
.kst-b-daumen:focus-visible{outline-color:var(--rot-hell)}
@media (max-width:640px){.kst-b-daumen span{display:none}}

/* ---------- 2 · Beim Notar (07.10.) ---------- */
.kst-notar{background:var(--tinte);color:var(--weiss);overflow:clip;margin-top:-1px}
.kst-notar-innen{padding:clamp(96px,11vw,170px) 0 clamp(80px,9vw,140px);background:var(--tinte)}
/* Ueberdeckung wie auf der Startseite nach dem Teamfoto (07.10.): der dunkle Inhalt haftet mit seiner
   Unterkante am Fensterrand (top = Fensterhoehe minus Inhaltshoehe, per JS gesetzt),
   die helle Sektion faehrt darueber. Auf dem Handy normaler Fluss. */
.kst-notar-halt{display:none}
@media(min-width:901px){
  .kst-notar-innen{position:sticky;top:var(--kst-haft,0px)}
  .kst-notar-halt{display:block;height:100vh}
  .kst-worte{position:relative;z-index:6;margin-top:-100vh;box-shadow:0 -28px 60px -24px rgba(20,19,17,.45)}
}
.kst-notar .rot-hell{color:var(--rot-hell)}
.kst-notar-kopf{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:clamp(48px,6vw,88px)}
.kst-notar-text{margin:0;max-width:30ch;font-size:var(--t-text);line-height:1.4;color:rgba(255,255,255,.8)}
.kst-notar-wand{display:flex;flex-direction:column;gap:clamp(10px,1vw,16px)}
.kst-notar-reihe{list-style:none;margin:0;padding:0;display:flex;gap:clamp(10px,1vw,16px);width:max-content;animation:kst-lauf 160s linear infinite}
.kst-notar-reihe--rueck{animation-direction:reverse;animation-duration:180s}
.kst-notar-wand:hover .kst-notar-reihe{animation-play-state:paused}
.kst-notar-reihe li{flex:none;width:clamp(220px,20vw,340px);aspect-ratio:4/3;border-radius:var(--r-8);overflow:hidden;background:#222}
.kst-notar-reihe img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s var(--kurve)}
.kst-notar-reihe li:hover img{transform:scale(1.06)}
@keyframes kst-lauf{to{transform:translateX(-50%)}}
.kst-sterne{display:inline-flex;gap:3px;color:var(--rot-hell)}
.kst-sterne svg{width:20px;height:20px}
.kst-belege{list-style:none;margin:clamp(56px,7vw,104px) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0;
  border-top:1px solid rgba(255,255,255,.2)}
.kst-belege li{display:flex;flex-direction:column;gap:10px;padding:clamp(22px,2.4vw,36px) clamp(0px,2vw,32px) 0 0}
.kst-belege b{font-family:var(--schrift-hl);font-size:clamp(26px,2.4vw,40px);letter-spacing:-.03em;line-height:1;display:inline-flex;align-items:center;gap:14px;min-height:1.1em}
.kst-belege span:not(.kst-sterne){font-family:var(--schrift-label);font-size:var(--t-15);letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.kst-beleg-note .kst-sterne svg{width:18px;height:18px}
@media (prefers-reduced-motion:reduce){.kst-notar-reihe{animation:none}.kst-notar-wand{overflow-x:auto}}

/* ---------- 3 · Textstimmen ---------- */
.kst-worte{background:var(--papier);padding:clamp(96px,12vw,180px) 0 clamp(80px,10vw,150px)}
.kst-worte-kopf{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:clamp(48px,6vw,96px)}
.kst-filter{display:flex;gap:8px;flex-wrap:wrap}
.kst-filter-knopf{min-height:var(--ziel-min);padding:0 22px;border-radius:999px;border:1px solid var(--linie-stark);background:transparent;
  font-family:var(--schrift-label);font-size:var(--t-15);letter-spacing:.08em;text-transform:uppercase;color:var(--tinte);cursor:pointer;
  display:inline-flex;align-items:center;gap:10px;transition:background var(--dauer-ui) var(--kurve),color var(--dauer-ui) var(--kurve),border-color var(--dauer-ui) var(--kurve)}
.kst-filter-knopf span{font-variant-numeric:tabular-nums;color:var(--text-2);transition:color var(--dauer-ui) var(--kurve)}
.kst-filter-knopf:hover{border-color:var(--tinte)}
.kst-filter-knopf[aria-pressed="true"]{background:var(--tinte);border-color:var(--tinte);color:var(--weiss)}
.kst-filter-knopf[aria-pressed="true"] span{color:rgba(255,255,255,.7)}
.kst-filter-knopf:focus-visible{outline:2px solid var(--rot);outline-offset:3px}

.kst-raster{display:grid;gap:clamp(56px,6vw,96px) clamp(32px,6vw,120px)}
@media (min-width:900px){
  .kst-raster{grid-template-columns:1fr 1fr}
  /* rechte Spalte versetzt, wie gesetzt statt gerastert */
  .kst-raster .kst-stimme.rechts{transform:translateY(clamp(60px,8vw,140px))}
  .kst-raster{padding-bottom:clamp(60px,8vw,140px)}
}
.kst-stimme{margin:0;padding-top:clamp(20px,2vw,28px);border-top:1px solid var(--linie-stark)}
.kst-stimme[hidden]{display:none}
.kst-stimme blockquote{margin:0}
.kst-zitat{margin:0;font-family:var(--schrift-hl);font-weight:600;font-size:clamp(20px,1.65vw,30px);line-height:1.25;letter-spacing:-.025em;color:var(--tinte)}
.kst-zitat .line{overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.kst-zitat .line-in{display:inline-block}
.kst-stimme figcaption{display:flex;align-items:center;gap:14px;margin-top:clamp(20px,2vw,32px);flex-wrap:wrap}
.kst-bild{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none}
.kst-wer-block{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.kst-wer{font-weight:600;font-size:var(--t-18);color:var(--tinte)}
.kst-art{font-family:var(--schrift-label);font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);
  padding:5px 10px;border:1px solid var(--linie);border-radius:999px}

/* ---------- 4 · Abschluss ---------- */
.kst-abschluss{background:var(--papier-2)}

/* ---------- Player ---------- */
.kst-lb{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:var(--rand)}
.kst-lb[hidden]{display:none}
.kst-lb-grund{position:absolute;inset:0;background:rgba(17,16,14,.92)}
.kst-lb-innen{position:relative;width:min(100%,1400px)}
.kst-lb-kopf{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;color:var(--weiss)}
.kst-lb-titel{font-family:var(--schrift-label);font-size:var(--t-15);letter-spacing:.12em;text-transform:uppercase}
.kst-lb-zu{width:var(--ziel-min);height:var(--ziel-min);border-radius:50%;border:1px solid rgba(255,255,255,.4);background:transparent;color:var(--weiss);
  display:grid;place-items:center;cursor:pointer}
.kst-lb-zu:hover{background:var(--rot);border-color:var(--rot)}
.kst-lb-zu:focus-visible{outline:2px solid var(--weiss);outline-offset:3px}
.kst-lb-film{position:relative;aspect-ratio:1280/549;background:#000;border-radius:var(--r-8);overflow:hidden}
.kst-lb-film iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

@media (prefers-reduced-motion:reduce){
  .kst-b-bild{transition:none;transform:none}
}
