/* Prototyp Kundenwelten (Vorschlag 14.10.2026): Hafen + fünf Kapitel, beschriftete Auswahl mit Zeitsegmenten.
   Nur unter /_dev/kundenwelten/ eingebunden; baut auf site.css auf. */

/* Bilder: gestapelt, weiche Überblendung, durchgehende langsame Bewegung */
.kw-media .kw-bild{position:absolute;inset:0;opacity:0;transition:opacity 1.4s var(--ease)}
.kw-media .kw-bild.on{opacity:1}
/* .war = gerade ausblendendes Bild: behält dieselbe Animation, damit es nicht auf 100 % zurückspringt */
.kw-an .kw-media .kw-bild.on,.kw-an .kw-media .kw-bild.war{animation:kw-zoom var(--kw-dauer,11s) linear both}
.kw-pausiert .kw-media .kw-bild.on,.kw-pausiert .kw-media .kw-bild.war{animation-play-state:paused}
@keyframes kw-zoom{from{transform:scale(1.0)}to{transform:scale(1.07)}}
.kw-media::after{background:linear-gradient(180deg,rgba(5,28,44,.6) 0%,rgba(5,28,44,.32) 40%,rgba(5,28,44,.42) 62%,rgba(5,28,44,.82) 100%)}
.kw-media .ai-tag{z-index:3;bottom:auto;top:140px}
/* Feedback-Leiste des Prototyps nach oben rechts, damit sie die Kapitelleiste nicht verdeckt */
.proto{top:86px !important;right:16px !important;left:auto !important;bottom:auto !important}

/* Inhalt: alle Szenen in einer Rasterzelle, damit Buttons nicht springen */
.kw-hero .hero-sticky{padding-bottom:clamp(96px,14vh,150px)}
.kw-content{max-width:1080px}
.kw-content .kw-h{font-size:clamp(2.2rem,5vw,4.6rem);color:#fff;text-shadow:0 4px 40px rgba(0,0,0,.3);margin:0 0 .4em;max-width:16em;margin-inline:auto}
.kw-content .lead{max-width:40em}
.kw-content .eyebrow{color:#cfe3f1;justify-content:center}
.kw-an .kw-slides{display:grid}
.kw-an .kw-slide{grid-area:1/1;align-self:end;opacity:0;visibility:hidden;transform:translateY(16px);
  transition:opacity .5s var(--ease),transform .7s var(--ease),visibility 0s linear .5s}
.kw-an .kw-slide.is-on{opacity:1;visibility:visible;transform:none;
  transition:opacity .7s var(--ease) .35s,transform .9s var(--ease) .35s,visibility 0s}
.kw-cta2{transition:opacity .35s var(--ease),background .3s,color .3s}
.kw-cta2.kw-tausch{opacity:0}

/* Kapitelleiste */
.kw-bar{position:absolute;z-index:4;left:50%;bottom:clamp(18px,3.6vh,36px);transform:translateX(-50%);
  width:min(1560px,calc(100% - 48px));display:grid;grid-template-columns:auto minmax(0,1fr);gap:22px;align-items:end;color:#fff}
.kw-ctrl{display:flex;align-items:center;gap:6px;padding-bottom:2px}
.kw-count{font-family:var(--mono);font-size:.8rem;letter-spacing:.06em;color:#9ccbea;margin-right:8px;white-space:nowrap}
.kw-count b{color:#fff;font-weight:600}
.kw-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:36px;min-width:36px;padding:0 10px;border-radius:999px;
  border:1px solid rgba(255,255,255,.35);background:rgba(5,28,44,.45);backdrop-filter:blur(8px);color:#fff;cursor:pointer;
  font:600 .78rem/1 var(--text);transition:background .25s,border-color .25s}
.kw-btn:hover{background:rgba(240,125,26,.9);border-color:transparent}
.kw-btn svg{width:14px;height:14px}
.kw-play{padding:0 14px}
.kw-play .i-play{display:none}
.kw-gestoppt .kw-play .i-play{display:block}
.kw-gestoppt .kw-play .i-pause{display:none}
.kw-btn:focus-visible,.kw-k:focus-visible,.kw-content .btn:focus-visible,.kw-hero .boje:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
/* Ohne JavaScript bleibt die Leiste verborgen (display:grid würde [hidden] sonst überstimmen).
   Die Iceberg-Plakette trägt hidden absichtlich; ihr eigenes Stylesheet macht sie sichtbar (Stufe A ohne JavaScript). */
.kw-bar[hidden]{display:none !important}

/* sechs gleich breite Kapitel, Beschriftung immer einzeilig (Nutzerwunsch 14.10.) */
.kw-kapitel{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;align-items:end}
.kw-k{all:unset;box-sizing:border-box;display:flex;flex-direction:column;gap:9px;width:100%;padding:8px 2px 4px;cursor:pointer;color:rgba(255,255,255,.72)}
.kw-l{font-family:var(--mono);font-size:.72rem;letter-spacing:.03em;line-height:1.3;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .25s}
@media (max-width:1500px) and (min-width:961px){.kw-l{font-size:.66rem;letter-spacing:0}.kw-kapitel{gap:10px}.kw-bar{gap:16px}}
.kw-k:hover .kw-l,.kw-k[aria-current="true"] .kw-l{color:#fff}
.kw-k[aria-current="true"] .kw-l{font-weight:600}
.kw-seg{display:block;height:3px;border-radius:3px;background:rgba(255,255,255,.28);overflow:hidden}
.kw-seg i{display:block;height:100%;background:var(--orange);transform:scaleX(0);transform-origin:left center}
.kw-k.fertig .kw-seg i{transform:scaleX(1);background:rgba(255,255,255,.7)}
.kw-k:hover .kw-seg{background:rgba(255,255,255,.5)}

/* Boje (Iceberg) über die Leiste heben und auf ein Viertel der Fläche verkleinern (halbe Breite und Höhe, Nutzerwunsch 14.10.) */
.kw-hero .boje{bottom:calc(clamp(28px,6vh,72px) + 92px);width:128px;border-radius:12px}
.kw-hero .boje-glas{padding:5px 5px 8px;border-radius:12px}
.kw-hero .boje-bild{width:118px;height:66px;border-radius:8px}
.kw-hero .boje-bild svg,.kw-hero .boje-bild canvas{width:118px;height:66px}
.kw-hero .boje-tiefe,.kw-hero .boje-kicker{display:none}
.kw-hero .boje-text{padding:6px 3px 0}
.kw-hero .boje-titel{margin-top:0;font-size:.74rem;line-height:1.15}
.kw-hero .boje-titel::after{content:" →";color:var(--orange)}
.kw-hero .boje-frage{display:none}

@media (max-width:960px){
  /* Mobil (Fix 14.10.2026 nach iPhone-Befund): 100vh zählt auf iOS den Bereich hinter den Browserleisten mit, die Leiste lag
     dahinter. Deshalb sichtbare Höhe (svh) und Kapitelleiste im Fluss unter dem Text statt absolut am unteren Rand. */
  .kw-hero .hero-sticky{height:100vh;height:100svh;padding:82px 16px 14px;flex-direction:column;align-items:stretch;justify-content:flex-start}
  .kw-hero .kw-content{margin:auto 0;padding:0;width:100%}
  .kw-bar{position:relative;left:auto;bottom:auto;transform:none;width:100%;margin-top:14px;grid-template-columns:minmax(0,1fr);gap:8px}
  .kw-ctrl{justify-content:center}
  .kw-btn{height:34px}
  .kw-kapitel{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}
  .kw-k{padding:4px 0 2px;gap:4px}
  .kw-l{font-size:.62rem;letter-spacing:.02em}
  .kw-content .hero-actions{gap:8px}
  .kw-content .hero-actions .btn{padding:11px 20px;font-size:.95rem}
  /* Iceberg-Zeile hat mobil im Wechsel-Hero keinen freien Platz; Prototyp blendet sie aus (offene Gestaltungsfrage) */
  .kw-hero .boje-zeile{display:none !important}
  /* Prototyp-Werkzeuge verdecken mobil den Hero: nur im Prüfmodus (?pruefen=1) zeigen */
  html:not(.kw-pruefen) .proto,html:not(.kw-pruefen) .kw-panel{display:none !important}
  .proto{top:auto !important;bottom:230px !important}
  .kw-content .kw-h{font-size:clamp(1.9rem,7.4vw,3rem)}
  .kw-content .lead{font-size:.98rem;line-height:1.5;margin-bottom:18px}
  .kw-content .eyebrow{margin-bottom:12px}
  .kw-media .ai-tag{top:76px}
}
/* Niedrige Telefone (iPhone SE, Android 360 × 640 mit Browserleisten): Kurztext auf vier Zeilen, ohne Fachzeile */
@media (max-width:960px) and (max-height:650px){
  .kw-content .lead{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  .kw-content .eyebrow{display:none}
}
@media (max-height:700px) and (min-width:961px){.kw-content .kw-h{font-size:clamp(2rem,4vw,3.4rem)}}
@media (max-width:960px) and (max-height:740px){
  .kw-content .kw-h{font-size:clamp(1.6rem,6.4vw,2.3rem)}
  .kw-content .eyebrow{margin-bottom:12px;font-size:.66rem}
  .kw-content .lead{font-size:.92rem;line-height:1.45;margin-bottom:16px}
}

/* Dauerhafte Wege unter dem Hero */
.kw-wege{padding:clamp(56px,8vw,96px) 0 clamp(40px,6vw,72px);background:var(--paper)}
.kw-wege-kopf{margin-bottom:28px}
.kw-wege-kopf h2{font-size:clamp(1.8rem,3.4vw,2.8rem);margin:0}
.kw-wege-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.kw-weg{display:flex;flex-direction:column;gap:10px;padding:26px;border-radius:var(--radius);background:var(--blue-50);border:1px solid var(--line);color:var(--ink);text-decoration:none;
  transition:transform .3s var(--ease),box-shadow .3s}
.kw-weg:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(5,28,44,.12)}
.kw-weg-k{font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.kw-weg b{font-family:var(--display);font-weight:600;font-size:1.35rem;line-height:1.15}
.kw-weg small{font-size:.95rem;line-height:1.55;color:var(--ink-2)}
.kw-weg .go{margin-top:auto;padding-top:8px;font-weight:600;color:var(--blue)}
.kw-weg.c2{background:var(--blue);border-color:var(--blue);color:#fff}
.kw-weg.c3{background:var(--navy);border-color:var(--navy);color:#fff}
.kw-weg.c2 small,.kw-weg.c3 small{color:rgba(255,255,255,.82)}
.kw-weg.c2 .kw-weg-k,.kw-weg.c2 .go{color:#cfe3f1}
.kw-weg.c3 .kw-weg-k,.kw-weg.c3 .go{color:#ffb680}
@media (max-width:860px){.kw-wege-grid{grid-template-columns:1fr}}

/* Für-wen-Menü mit vier Einstiegen (0058): seit dem Livegang in site.css */

/* Prototyp-Werkzeuge */
[data-ziel]{position:relative}
.kw-pruefen [data-ziel]::after{content:"Ziel: " attr(data-ziel);position:absolute;top:-10px;right:-6px;padding:3px 8px;border-radius:999px;
  background:#ffd23f;color:#051c2c;font:600 .66rem/1.2 var(--mono);letter-spacing:.02em;text-transform:none;pointer-events:none}
.kw-panel{position:fixed;z-index:9000;left:16px;top:86px;max-width:min(420px,calc(100vw - 32px));background:#fff;color:var(--ink);
  border-radius:14px;box-shadow:0 18px 50px rgba(5,28,44,.35);font:400 .84rem/1.5 var(--text)}
.kw-panel summary{cursor:pointer;padding:9px 14px;font:600 .74rem/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--blue);list-style:none}
.kw-panel summary::-webkit-details-marker{display:none}
.kw-panel[open] summary{border-bottom:1px solid var(--line)}
.kw-panel .kw-p-in{padding:12px 14px 14px;display:grid;gap:10px}
.kw-panel .kw-p-notiz{background:#fff8dc;border-radius:10px;padding:10px 12px}
.kw-panel .kw-p-notiz b{display:block;font-size:.74rem;font-family:var(--mono);color:#7a5b00;margin-bottom:4px}
.kw-panel .kw-p-zeile{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.kw-panel .kw-p-zeile span{min-width:84px;color:var(--muted);font-size:.78rem}
.kw-panel a.kw-p-opt{padding:4px 10px;border-radius:999px;border:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:.78rem}
.kw-panel a.kw-p-opt[aria-current="true"]{background:var(--navy);border-color:var(--navy);color:#fff}
@media (max-width:960px){.kw-panel{top:auto;bottom:268px}}

/* Reduzierte Bewegung: keine Bewegung, sofortige Wechsel */
.kw-still .kw-media .kw-bild{transition:none}
.kw-still .kw-media .kw-bild.on{animation:none}
.kw-still .kw-slide,.kw-still .kw-slide.is-on{transition:none !important;transform:none !important}
