/* ════════════════════════════════════════════════════════════════════
   thesen24 · Personality-Overlay V4 — Gestaltung (thesen.html)
   Nachfolger von thesen16-overlay.css (Struktur) + Overlay-Teil von
   thesen17.css (Bühne). Fünf Bühnen, aus den Entwürfen vom 17.09.2026
   (entwuerfe/overlay-stage12-entwuerfe.html → review/overlay-komplett.html):
     1 Magazin (Typ) · 2 Profil-Linie (Achsen) · 3 Coach-Dialog (Stärke +
     Schritte) · 4 Dossier-Cover (vollständige Auswertung, Mail-Gate) ·
     5 Situation als gelbe Schluss-Bühne (kompakt). Keine Challenge-These.
   Genus-Gate + Reset bleiben (Klassen cu-ov-gate*, thesen23.css).
   Engine: thesen24-overlay.js
   ════════════════════════════════════════════════════════════════════ */
.cu-ov{
  --font-display:var(--font-serif);
  --font-wide:var(--font-sans-breit);
  --ink:var(--color-near-black); --paper:var(--color-off-white); --blue:var(--color-blue);
  --yellow:var(--color-yellow); --graphite:#46484B; --silver:#9799A0;
  --ease-out:cubic-bezier(.22,.61,.36,1);
  --ov-fg:#FFFFFF; --ov-muted:rgba(255,255,255,.66); --ov-eyebrow:var(--yellow);
  --ov-line:rgba(255,255,255,.16); --ov-cardline:rgba(255,255,255,.2);
  --ov-chip-on:var(--yellow); --ov-field-fg:#111111;
  position:fixed; inset:0; z-index:10000;   /* über dem Cookie-Banner (9999) */
  font-family:var(--font-sans); color:var(--ink);
}
.cu-ov[hidden]{display:none;}
.cu-ov__scrim{position:absolute; inset:0; background:rgba(24,25,34,.96); opacity:0; transition:opacity .32s var(--ease-out);}
.cu-ov.is-open .cu-ov__scrim{opacity:1;}
.cu-ov__scroll{
  position:absolute; inset:0; overflow-y:auto; -webkit-overflow-scrolling:touch;
  scroll-snap-type:y proximity; scroll-behavior:smooth;
  opacity:0; transform:translateY(14px);
  transition:opacity .34s var(--ease-out) .04s, transform .34s var(--ease-out) .04s;
}
.cu-ov.is-open .cu-ov__scroll{opacity:1; transform:none;}
body.cu-ov-lock{overflow:hidden;}
.cu-ov__inner{max-width:none; padding:0; color:var(--ink);}
.cu-ov__inner[hidden]{display:none;}

/* Schließen — auf allen Bühnen sichtbar (Blau + weißer Ring) */
.cu-ov__close{
  position:fixed; top:30px; right:40px; z-index:3;
  width:52px; height:52px; border-radius:50%; cursor:pointer;
  background:var(--blue); border:2px solid #fff; color:#fff;
  font-size:24px; line-height:1; display:flex; align-items:center; justify-content:center;
  box-shadow:0 6px 20px -6px rgba(0,0,0,.5);
  transition:background .15s var(--ease-out), transform .15s var(--ease-out);
}
.cu-ov__close:hover{background:#0000B5; transform:rotate(90deg) scale(1.05);}
@media (max-width:640px){.cu-ov__close{top:14px; right:14px; width:44px; height:44px; font-size:20px;}}

/* Genus-Gate liegt auf der dunklen Scrim-Fläche (Regeln in thesen23.css) */
.cu-ov-gate{color:#fff;}
.cu-ov-genus{display:inline-flex; border:1px solid rgba(255,255,255,.4); border-radius:999px; overflow:hidden;}
.cu-ov-genus-opt{
  appearance:none; cursor:pointer; border:0; background:transparent; color:rgba(255,255,255,.7);
  font-family:var(--font-mono); text-transform:uppercase; letter-spacing:.08em;
  border-right:1px solid rgba(255,255,255,.4); transition:background .15s, color .15s;
}
.cu-ov-genus-opt:last-child{border-right:0;}

/* ── Gemeinsames ────────────────────────────────────────────────── */
.ov-stg{
  min-height:100vh; min-height:100svh; box-sizing:border-box; position:relative; overflow:hidden;
  display:flex; flex-direction:column; justify-content:center;
  padding:clamp(56px,10vh,120px) clamp(22px,8vw,120px);
  scroll-snap-align:start;
}
.ov-stg > *{max-width:min(1040px,100%); width:100%; margin-inline:auto; box-sizing:border-box;}
.ov-stg p,.ov-stg h2,.ov-stg h3,.ov-stg h4{margin:0;}
.ov-stg--paper{background:var(--paper); color:var(--ink);}
.ov-stg--scrim{background:linear-gradient(170deg, rgba(36,37,46,.68) 0%, rgba(26,27,34,.68) 100%); color:#fff;}
.ov-stg--end{background:var(--yellow); color:var(--ink); min-height:auto; justify-content:flex-start; padding:clamp(48px,9vh,96px) clamp(22px,8vw,120px); text-align:center;}
@media (max-width:640px){.ov-stg{padding:72px 18px 88px;} .ov-stg--end{padding:56px 18px 64px;}}

.ov-eyebrow{display:block; font-family:var(--font-mono); font-size:12px; letter-spacing:.24em; text-transform:uppercase; margin-bottom:18px; color:var(--blue);}
.ov-stg--scrim .ov-eyebrow{color:var(--yellow);}
.ov-head{font-family:var(--font-wide); font-weight:700; text-transform:uppercase; font-size:clamp(24px,4vw,44px); line-height:1.02; letter-spacing:-.02em; margin:0 0 14px; text-wrap:balance;}
.ov-head--hl{color:var(--blue); font-size:clamp(28px,4.6vw,56px);}
.ov-cue{
  position:absolute; left:50%; bottom:clamp(18px,4vh,40px); transform:translateX(-50%);
  width:44px; height:44px; border-radius:50%; border:0; cursor:pointer;
  background:var(--yellow); color:var(--ink); font-size:20px; font-weight:700;
  display:flex; align-items:center; justify-content:center; animation:ovBounce 1.8s var(--ease-out) infinite;
}
@keyframes ovBounce{0%,100%{transform:translate(-50%,0); opacity:.85;}50%{transform:translate(-50%,8px); opacity:1;}}
@media (max-width:640px){.ov-cue{width:40px; height:40px; bottom:22px;}}

/* Marker-Headline: gelber Textmarker fährt von links durch (startet, wenn die Bühne im Bild ist) */
.hl{display:inline-block; position:relative;}
.hl-a b{position:relative; z-index:1; font-weight:inherit; padding:0 .18em;}
.hl-a i{position:absolute; left:-.1em; right:-.1em; top:.08em; bottom:-.02em; background:var(--yellow); transform:rotate(-1.2deg) scaleX(0); transform-origin:left center; border-radius:2px 6px 3px 5px;}
.ov-stg.is-in .hl-a i{animation:hlMarker .55s cubic-bezier(.2,.7,.2,1) .25s forwards;}
@keyframes hlMarker{to{transform:rotate(-1.2deg) scaleX(1);}}
@media (max-width:640px){
  .hl-a i{display:none;}
  .hl-a b{background-image:linear-gradient(to top, var(--yellow) 0 .92em, transparent .92em); background-repeat:no-repeat; background-size:100% 100%; -webkit-box-decoration-break:clone; box-decoration-break:clone;}
}

/* Montage-Container (Ebenen aus thesen21.css) */
.ov-mt{width:100%; border:1.5px solid var(--ink); background:#f6f5f1;}
.ov-mt.cu-mt{border:1.5px solid var(--ink);}
/* Fallback ohne Montage-Preset: flache Collage */
.ov-visual{margin:0; width:100%; aspect-ratio:1/1;}
.ov-visual img{display:block; width:100%; height:100%; object-fit:cover; background:#fff; border:1.5px solid var(--ink);}

/* Fokus sichtbar auf allen Untergründen */
.cu-ov :is(button,a,input,[tabindex]):focus-visible{outline:3px solid var(--blue); outline-offset:3px; box-shadow:0 0 0 6px #fff;}
.cu-ov .ov-stg--scrim :is(button,a,input):focus-visible{outline-color:var(--yellow); box-shadow:none;}

/* ════════════════════════════════════════════════════════════════
   Bühne 1 — Magazin (Typ)
   ════════════════════════════════════════════════════════════════ */
.ov-s1__grid{display:grid; grid-template-columns:minmax(240px,1fr) 1.1fr; gap:clamp(28px,6vw,80px); align-items:center;}
.ov-s1__fig .ov-mt,.ov-s1__fig .ov-visual{width:min(100%, 72vh * .8); margin-left:auto;}
.ov-s1__fig:empty{width:min(100%, 72vh * .8); margin-left:auto; aspect-ratio:4/5; background:#f6f5f1; border:1.5px solid rgba(26,26,26,.2);}
.ov-s1__type{font-family:var(--font-wide); font-weight:700; text-transform:uppercase; font-size:clamp(18px,2vw,26px); line-height:1.1; letter-spacing:-.015em; color:var(--blue); margin:-4px 0 22px;}
.ov-s1__lead{font-family:var(--font-display); font-size:clamp(28px,3.8vw,50px); line-height:1.12; letter-spacing:-.01em; text-wrap:balance;}
.ov-s1__bridge{margin-top:26px; font-weight:600; font-size:17px; line-height:1.5; color:var(--ink); max-width:44ch;}
.ov-s1__bridge::before{content:"→ "; color:var(--blue);}
@media (max-width:760px){
  .ov-s1__grid{grid-template-columns:1fr; gap:26px;}
  .ov-s1__fig{width:min(100%,320px);} .ov-s1__fig .ov-mt,.ov-s1__fig .ov-visual{width:100%; margin-left:0;}
  .ov-s1__lead{font-size:clamp(24px,6.4vw,32px);} .ov-s1__type{font-size:18px;}
}

/* ════════════════════════════════════════════════════════════════
   Bühne 2 — Profil-Linie (Achsen) + Aufklapper
   ════════════════════════════════════════════════════════════════ */
.ov-s2 > *{max-width:min(1200px,100%);}
.ov-s2__intro{font-size:16px; line-height:1.6; max-width:54ch; margin:0 0 30px; color:var(--graphite);}
.ov-s2__grid{display:grid; grid-template-columns:minmax(340px,1.25fr) 1fr; gap:clamp(24px,4vw,64px); align-items:start;}
.ov-s2__box{background:#fff; border:1px solid rgba(26,26,26,.16); padding:22px 16px;}
.ov-s2__svg{width:100%; height:auto; display:block;}
.ov-s2__svg .mid{stroke:rgba(26,26,26,.35); stroke-width:1; stroke-dasharray:3 4;}
.ov-s2__svg .rail{stroke:rgba(26,26,26,.22); stroke-width:2.5;}
.ov-s2__svg .tick{stroke:rgba(26,26,26,.25); stroke-width:1;}
.ov-s2__svg .line{fill:none; stroke:var(--blue); stroke-width:2.5; stroke-linejoin:round;}
.ov-s2__svg .node{fill:#fff; stroke:var(--blue); stroke-width:2.5;}
.ov-s2__svg .node.is-top{fill:var(--yellow);}
.ov-s2__svg .node.is-off{stroke:var(--silver);}
.ov-s2__svg text{font-family:var(--font-mono); font-size:13.5px; letter-spacing:.06em; text-transform:uppercase; fill:var(--graphite);}
.ov-s2__svg text.is-hot{fill:var(--blue); font-weight:600;}
.ov-s2__svg text.num{font-size:11px; letter-spacing:.16em; fill:var(--graphite); paint-order:stroke; stroke:#fff; stroke-width:5px; stroke-linejoin:round;}
.ov-s2__svg text.num.is-hi{fill:var(--ink); stroke:rgba(239,247,70,.45);}
.ov-s2__svg .hl{fill:transparent;}
.ov-s2__svg .row.is-hi .hl{fill:rgba(239,247,70,.45);}
.ov-s2__acc{list-style:none; margin:0; padding:0; border-top:1px solid rgba(26,26,26,.16);}
.ov-s2__it{border-bottom:1px solid rgba(26,26,26,.16);}
.ov-s2__btn{appearance:none; width:100%; background:none; border:0; cursor:pointer; text-align:left; padding:16px 0; display:grid; grid-template-columns:72px 1fr auto; gap:14px; align-items:center; font:inherit; color:inherit;}
.ov-s2__n{font-family:var(--font-mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--silver); white-space:nowrap;}
.ov-s2__it.is-open .ov-s2__n{color:var(--ink);}
.ov-s2__w{font-family:var(--font-wide); font-weight:700; text-transform:uppercase; font-size:clamp(16px,1.5vw,19px); letter-spacing:-.01em; color:var(--blue);}
.ov-s2__it:not(.is-on) .ov-s2__w{color:var(--graphite);}
.ov-s2__it.is-top .ov-s2__w{background-image:linear-gradient(to top, var(--yellow) 0 .42em, transparent .42em); width:fit-content; padding:0 .1em;}
.ov-s2__pm{position:relative; width:34px; height:34px; border-radius:50%; display:flex; align-items:center; justify-content:center; background:var(--yellow); color:var(--ink); font-family:var(--font-mono); font-size:20px; line-height:1; transition:transform .3s var(--ease-out), background .3s var(--ease-out), color .3s var(--ease-out);}
.ov-s2__pm::after{content:""; position:absolute; inset:-2px; border-radius:50%; box-shadow:0 0 0 0 rgba(239,247,70,.9); animation:ovPulse 2.4s ease-in-out infinite; transition:opacity .4s var(--ease-out);}
.ov-s2__it.is-open .ov-s2__pm{transform:rotate(45deg); background:var(--ink); color:#fff;}
.ov-s2__it.is-open .ov-s2__pm::after, .ov-s2__btn:hover .ov-s2__pm::after{opacity:0;}
@keyframes ovPulse{0%,100%{box-shadow:0 0 0 0 rgba(239,247,70,.9);}50%{box-shadow:0 0 0 8px rgba(239,247,70,0);}}
.ov-s2__body{display:grid; grid-template-rows:0fr; transition:grid-template-rows .4s var(--ease-out);}
.ov-s2__body > div{min-height:0; overflow:hidden;}
.ov-s2__it.is-open .ov-s2__body{grid-template-rows:1fr;}
.ov-s2__txt{font-size:15.5px; line-height:1.6; color:var(--ink); padding:0 0 18px 86px;}
@media (max-width:820px){
  .ov-s2__grid{grid-template-columns:1fr;}
  .ov-s2__btn{grid-template-columns:auto 1fr auto; gap:10px; padding:14px 0;}
  .ov-s2__txt{padding-left:0;} .ov-s2__w{font-size:15px;}
}
@media (max-width:640px){
  .ov-s2__svg text{font-size:12.5px;} .ov-s2__svg text.num{font-size:11px;}
  .ov-s2__svg text.pole{paint-order:stroke; stroke:#fff; stroke-width:5px; stroke-linejoin:round;}
  .ov-s2__box{padding:14px 8px;}
}

/* ════════════════════════════════════════════════════════════════
   Bühne 3 — Coach-Dialog (Stärke + Schritte)
   ════════════════════════════════════════════════════════════════ */
.ov-s3__head{margin-bottom:26px;}
.ov-s3__sub{font-family:var(--font-display); font-style:italic; font-size:clamp(18px,2vw,22px); color:var(--graphite);}
.ov-s3__sub b{font-style:normal; color:var(--ink); font-weight:400;}
.ov-s3__thread{display:flex; flex-direction:column; gap:14px; max-width:720px; margin-inline:0;}
.ov-s3__msg{display:grid; grid-template-columns:44px 1fr; gap:12px; align-items:end;}
.ov-s3__msg--me{grid-template-columns:1fr; justify-items:end;}
.ov-s3__msg--opts{grid-template-columns:1fr; justify-items:end;}
.ov-s3__msg.is-pop{animation:ovPop .45s cubic-bezier(.3,1.4,.4,1) forwards;}
@keyframes ovPop{0%{opacity:0; transform:translateY(10px) scale(.96);}100%{opacity:1; transform:none;}}
.ov-s3__av{width:44px; height:44px; overflow:hidden;}
.ov-s3__av img{display:block; width:100%; height:100%;}
.ov-s3__b{background:#fff; border:1px solid rgba(26,26,26,.18); padding:14px 18px; border-radius:14px 14px 14px 3px; font-size:15.5px; line-height:1.5; max-width:60ch;}
.ov-s3__b b{display:block; font-family:var(--font-mono); font-weight:400; font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--blue); margin-bottom:6px;}
.ov-s3__b--st{font-family:var(--font-display); font-size:clamp(18px,2vw,22px); line-height:1.4; background:var(--yellow); border-color:var(--yellow); box-shadow:0 0 0 0 rgba(239,247,70,.7); animation:ovGlow 2.2s ease-out .5s 2;}
.ov-s3__b--st b{color:var(--ink);}
@keyframes ovGlow{0%{box-shadow:0 0 0 0 rgba(239,247,70,.8);}100%{box-shadow:0 0 0 18px rgba(239,247,70,0);}}
.ov-s3__msg--me .ov-s3__b{background:var(--blue); color:#fff; border-color:var(--blue); border-radius:14px 14px 3px 14px; font-weight:600;}
.ov-s3__typing{display:inline-flex; gap:5px; padding:16px 18px;}
.ov-s3__typing i{width:8px; height:8px; border-radius:50%; background:var(--graphite); opacity:.4; animation:ovDot 1s ease-in-out infinite;}
.ov-s3__typing i:nth-child(2){animation-delay:.15s;} .ov-s3__typing i:nth-child(3){animation-delay:.3s;}
@keyframes ovDot{0%,100%{opacity:.35; transform:translateY(0);}50%{opacity:1; transform:translateY(-3px);}}
.ov-s3__opts{display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; margin-left:auto;}
.ov-s3__act{appearance:none; cursor:pointer; font:inherit; font-size:14px; font-weight:600; border:1.5px solid var(--blue); color:var(--blue); background:#fff; padding:9px 16px; border-radius:999px; text-decoration:none; transition:background .15s, color .15s, transform .15s;}
.ov-s3__act:hover{background:var(--blue); color:#fff; transform:translateY(-1px);}
.ov-s3__act--go{background:var(--yellow); border-color:var(--yellow); color:var(--ink);}
.ov-s3__act--go:hover{background:var(--ink); border-color:var(--ink); color:#fff;}
.ov-s3__act--blue{background:var(--blue); border-color:var(--blue); color:#fff;}
.ov-s3__act--blue:hover{background:#0000B5; border-color:#0000B5; color:#fff;}
@media (max-width:640px){
  .ov-s3__msg{grid-template-columns:34px 1fr; gap:8px;} .ov-s3__msg--me,.ov-s3__msg--opts{grid-template-columns:1fr;}
  .ov-s3__av{width:34px; height:34px;} .ov-s3__b{padding:12px 14px; font-size:15px;} .ov-s3__b--st{font-size:17px;} .ov-s3__act{font-size:13px; padding:9px 13px;}
}

/* ════════════════════════════════════════════════════════════════
   Bühne 4 — Dossier-Cover + Mail-Gate (vollständige Auswertung)
   ════════════════════════════════════════════════════════════════ */
.ov-s4__grid{display:grid; grid-template-columns:minmax(260px,1fr) 1.3fr; gap:clamp(28px,6vw,90px); align-items:center;}
.ov-s4__stack{position:relative; width:min(100%,340px); margin:0 auto; aspect-ratio:3/4;}
.ov-s4__page{position:absolute; inset:0; background:#F3F1EC; border:1px solid rgba(26,26,26,.35);}
.ov-s4__page--2{transform:translate(8px,8px);} .ov-s4__page--3{transform:translate(16px,16px);}
.ov-s4__cover{position:absolute; inset:0; background:var(--paper); color:var(--ink); border:1.5px solid var(--ink); padding:16px 18px 16px 30px; display:flex; flex-direction:column; gap:12px; box-shadow:0 30px 60px -30px rgba(0,0,0,.8);}
.ov-s4__cover::before{content:""; position:absolute; left:0; top:0; bottom:0; width:12px; background:var(--blue);}
.ov-s4__cvhead{display:flex; justify-content:space-between; font-family:var(--font-mono); font-size:9.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--ink); padding-bottom:10px; border-bottom:1.5px solid var(--ink);}
.ov-s4__cvimg{width:100%; border:1.5px solid var(--ink); background:#f6f5f1; aspect-ratio:1/1;}
.ov-s4__cvimg img{display:block; width:100%; height:100%; object-fit:cover;}
.ov-s4__cvtitle{display:flex; flex-direction:column; gap:6px; margin-top:auto;}
.ov-s4__cvk{font-family:var(--font-mono); font-size:9.5px; letter-spacing:.22em; text-transform:uppercase; color:var(--blue);}
.ov-s4__cvt{font-family:var(--font-wide); font-weight:700; text-transform:uppercase; font-size:19px; line-height:1.05; letter-spacing:-.015em;}
.ov-s4__cvfoot{display:flex; justify-content:space-between; gap:10px; border-top:1px solid rgba(26,26,26,.35); padding-top:8px; font-family:var(--font-mono); font-size:8.5px; letter-spacing:.12em; text-transform:uppercase; color:var(--graphite);}
.ov-s4__cvfoot span:last-child{font-family:var(--font-wide); font-weight:700; letter-spacing:0; text-transform:none; color:var(--ink); font-size:10px;}
@media (max-width:820px){.ov-s4__grid{grid-template-columns:1fr; gap:48px;} .ov-s4__stack{width:min(100%,280px); margin:0;}}

/* Mail-Gate (IDs/Klassen cu-ov-mail* bleiben — die Engine hängt daran) */
.cu-ov-mail{color:#fff;}
.cu-ov-mailhead{font-family:var(--font-wide); font-weight:700; text-transform:uppercase; font-size:clamp(22px,3vw,34px); line-height:1.05; letter-spacing:-.02em; margin:0 0 10px;}
.cu-ov-mailsublead{font-weight:600; font-size:16px; line-height:1.45; margin:0 0 14px; max-width:50ch;}
.cu-ov-mailfeatures{list-style:none; margin:0 0 24px; padding:0; display:flex; flex-direction:column; gap:8px;}
.cu-ov-mailfeatures li{position:relative; padding-left:22px; font-size:15px; line-height:1.45; opacity:.92;}
.cu-ov-mailfeatures li::before{content:"▸"; position:absolute; left:2px; top:0; font-weight:700; color:var(--yellow);}
.cu-ov-mailfeatures b{font-weight:700;}
.cu-ov-mailstep[hidden],.cu-ov-mailbtn[hidden]{display:none !important;}
.cu-ov-mailfields{display:grid; grid-template-columns:1fr 1fr; gap:18px;}
.cu-ov-mailrow{display:flex; flex-direction:column;}
.cu-ov-maillabel{font-family:var(--font-mono); font-size:11px; letter-spacing:.2em; text-transform:uppercase; opacity:.9; margin-bottom:4px;}
.cu-ov-maillabel-opt{text-transform:none; letter-spacing:.04em;}
.cu-ov-maillabel-star{color:var(--yellow);}
.cu-ov-mailinput{appearance:none; min-width:0; border:0; border-bottom:1.5px solid rgba(255,255,255,.5); background:transparent; color:#fff; font-family:var(--font-sans); font-size:19px; padding:10px 2px; border-radius:0; transition:border-color .2s var(--ease-out);}
.cu-ov-mailinput::placeholder{color:rgba(255,255,255,.75);}
.cu-ov-mailinput:focus{outline:none; border-bottom-color:var(--yellow);}
.cu-ov-mailbtn{margin-top:22px; appearance:none; cursor:pointer; border:0; background:var(--yellow); color:var(--ink); font-family:var(--font-wide); font-weight:700; text-transform:uppercase; font-size:15px; letter-spacing:.02em; padding:16px 26px; display:inline-flex; gap:16px; align-items:center; transition:transform .15s var(--ease-out), opacity .15s;}
.cu-ov-mailarrow{display:inline-block; transition:transform .2s var(--ease-out);}
.cu-ov-mailbtn:hover{transform:translateY(-2px);}
.cu-ov-mailbtn:hover .cu-ov-mailarrow{transform:translateX(6px);}
.cu-ov-mailbtn:disabled{opacity:.5; cursor:default; transform:none;}
.cu-ov-mailhint{font-size:13px; line-height:1.5; opacity:.85; margin:16px 0 0; max-width:56ch;}
.cu-ov-mailstep2lead{font-weight:600; font-size:15px; line-height:1.5; margin:0 0 14px;}
.cu-ov-check{display:flex; gap:13px; align-items:flex-start; margin-top:14px; font-size:13.5px; line-height:1.5; color:#fff; cursor:pointer;}
.cu-ov-check input{appearance:none; flex:0 0 auto; margin-top:1px; width:22px; height:22px; cursor:pointer; border:1.5px solid rgba(255,255,255,.6); border-radius:3px; background:transparent; position:relative; transition:background .15s var(--ease-out), border-color .15s var(--ease-out);}
.cu-ov-check input:checked{background:var(--yellow); border-color:var(--yellow);}
.cu-ov-check input:checked::after{content:"✓︎"; position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:700; color:var(--ink);}
.cu-ov-check.is-disabled{opacity:.4; cursor:not-allowed;}
.cu-ov-check.is-disabled input{cursor:not-allowed;}
.cu-ov-mailmsg{font-size:14px; margin:16px 0 0; font-weight:600;}
.cu-ov-mailmsg.is-ok{color:var(--yellow);}
.cu-ov-mailmsg.is-error{color:#FFB3B3;}
@media (max-width:640px){.cu-ov-mailfields{grid-template-columns:1fr;} .cu-ov-mailbtn{width:100%; justify-content:space-between;}}

/* ════════════════════════════════════════════════════════════════
   Bühne 5 — Situation (gelbe Schluss-Bühne, Chat)
   ════════════════════════════════════════════════════════════════ */
.ov-s5 .ov-head{margin-inline:auto;}
.ov-s5__thread{display:flex; flex-direction:column; gap:14px; max-width:760px; margin-inline:auto; align-items:center;}
.ov-s5__m{display:flex; justify-content:center; width:min(90%,720px); opacity:0; transform:translateY(8px); animation:ovIn .4s var(--ease-out) forwards;}
.ov-s5__m > .ov-s5__b{width:100%;}
.ov-s5__m--me > .ov-s5__b{width:auto; margin-inline:auto;}
.ov-s5__m--chips{width:100%;}
@keyframes ovIn{to{opacity:1; transform:none;}}
.ov-s5__b{background:#fff; border:1px solid rgba(26,26,26,.28); padding:14px 18px; border-radius:16px; font-size:15.5px; line-height:1.55; text-align:center;}
.ov-s5__b--q{font-family:var(--font-display); font-style:italic; font-size:clamp(19px,2.2vw,24px); text-wrap:balance;}
.ov-s5__b--for{font-family:var(--font-wide); font-weight:700; text-transform:uppercase; font-size:15px; letter-spacing:-.01em;}
.ov-s5__m--me .ov-s5__b{background:var(--ink); color:var(--yellow); border-color:var(--ink);}
.ov-s5__chips{display:flex; flex-wrap:wrap; gap:8px; justify-content:center;}
.ov-s5__chip{appearance:none; cursor:pointer; font:inherit; font-size:14px; font-weight:600; border:1.5px solid var(--ink); color:var(--ink); background:transparent; padding:10px 16px; border-radius:999px; transition:background .15s, color .15s;}
.ov-s5__chip:hover,.ov-s5__chip.is-on{background:var(--ink); color:var(--yellow);}
.ov-s5__cards{display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:10px; margin-top:12px;}
.ov-s5__pc{display:flex; align-items:center; justify-content:center; gap:10px; padding:14px 16px; background:var(--ink); color:var(--yellow); text-decoration:none; font-family:var(--font-wide); font-weight:700; text-transform:uppercase; font-size:14px; letter-spacing:-.01em; transition:transform .15s var(--ease-out);}
.ov-s5__pc:hover{transform:translateY(-2px);}
.ov-s5__pc span{text-wrap:balance;}
.ov-s5__pc i{font-style:normal; font-size:18px;}

/* ── Reduced Motion ─────────────────────────────────────────────── */
@media (prefers-reduced-motion:reduce){
  .cu-ov__scrim,.cu-ov__scroll{transition:none !important;}
  .cu-ov__scroll{scroll-snap-type:none; scroll-behavior:auto;}
  .cu-ov__close:hover,.ov-s3__act:hover,.ov-s5__pc:hover,.cu-ov-mailbtn:hover{transform:none !important;}
  .ov-cue,.ov-s2__pm::after,.ov-s3__msg.is-pop,.ov-s3__b--st,.ov-s3__typing i,.ov-s5__m,.ov-s3__msg{animation:none !important; opacity:1 !important; transform:none !important;}
  .hl-a i{animation:none !important; transform:rotate(-1.2deg) scaleX(1) !important;}
  .ov-s2__body,.ov-s2__pm,.ov-s2__pm::after,.ov-s3__act,.ov-s5__chip,.ov-s5__pc,.cu-ov-mailbtn{transition:none !important;}
}
