
  /* Self-hosted Mona Sans (variable) — DSGVO-safe, no CDN */
  @font-face { font-family:"Mona Sans"; src:url("../fonts/MonaSansVF_wght_opsz_.woff2") format("woff2"); font-weight:100 900; font-style:normal; font-display:swap; }
  @font-face { font-family:"Mona Sans"; src:url("../fonts/MonaSansVF_wght_opsz_ital_.woff2") format("woff2"); font-weight:100 900; font-style:italic; font-display:swap; }



  /* ============================================================
     QS LECTURE PILOT — Direction A: Strict Website
     14 representative slides from Kapitel 1 of 261-slide lecture.
     Tokens follow the QS website design system (03_brand).
     ============================================================ */

  :root {
    --bg-app: #F6F5F1;
    --bg-surface: #FAF8F2;
    --bg-sunken: #EFEDE6;
    --ink-1: #1F2421;
    --ink-2: #4A4D48;
    --ink-3: #7A7D77;
    --ink-mute: #A7AAA3;
    --rule: #DDD9CF;
    --rule-strong: #C9C5B9;
    --brand-crimson: #DC3B55;
    --grad-magenta: #DC3B55;
    --grad-amber: #F6A827;
    --grad-violet: #6B4C8F;
    --font-sans: "Mona Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
  }

  * { box-sizing: border-box; }
  body { margin: 0; background: #1a1a1a; font-family: var(--font-sans); }

  deck-stage { color: var(--ink-1); }

  /* ===== Slide chassis ===== */
  .slide {
    position: relative;
    width: 1920px;
    height: 1080px;
    background: var(--bg-app);
    color: var(--ink-1);
    font-family: var(--font-sans);
    padding: 88px 112px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
  }

  /* Top + bottom rails (header chrome) */
  .rail-top, .rail-bottom {
    position: absolute;
    left: 112px;
    right: 112px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
    font-weight: 500;
    color: var(--ink-3);
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }
  .rail-top { top: 40px; }
  .rail-bottom {
    bottom: 40px;
    color: var(--ink-mute);
    letter-spacing: 0.06em;
  }
  .rail-top .chapter-mark { color: var(--brand-crimson); font-weight: 700; }
  .rail-top .section-mark { font-weight: 400; }
  .rail-bottom .brand-mark { font-weight: 500; }
  .rail-bottom .page-num { font-variant-numeric: tabular-nums; font-weight: 500; }

  /* Slide title */
  .slide-title {
    margin: 24px 0 0;
    font-size: 56px;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.015em;
    color: var(--ink-1);
    text-wrap: balance;
  }
  .slide-title + .title-rule {
    margin: 32px 0 36px;
    border: none;
    border-top: 1px solid var(--rule);
    height: 0;
  }

  /* Body region */
  .slide-body {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
  }

  /* ============================================================
     SLIDE 1 — Cover
     ============================================================ */
  .slide.cover {
    padding: 0;
    background: linear-gradient(135deg, var(--bg-app) 0%, var(--bg-surface) 100%);
  }
  .cover .cover-frame {
    position: absolute;
    inset: 88px 112px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .cover .cover-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .cover .logo-mark {
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: -0.01em;
  }
  .cover .logo-dot {
    width: 36px; height: 36px;
    border-radius: 50%;
    background: var(--brand-crimson);
  }
  .cover .tagline {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.18em;
    color: var(--ink-3);
    text-transform: uppercase;
    text-align: right;
  }
  .cover .cover-hero {
    display: flex;
    flex-direction: column;
    gap: 36px;
    max-width: 1400px;
  }
  .cover .eyebrow {
    font-size: 18px;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--brand-crimson);
    font-weight: 700;
  }
  .cover .cover-title {
    font-size: 124px;
    font-weight: 700;
    line-height: 1.02;
    letter-spacing: -0.025em;
    margin: 0;
    color: var(--ink-1);
  }
  .cover .cover-subtitle {
    font-size: 36px;
    font-weight: 400;
    color: var(--ink-2);
    margin: 0;
    max-width: 900px;
  }
  .cover .grad-bar {
    height: 6px; width: 240px;
    background: linear-gradient(90deg, var(--grad-magenta), var(--grad-amber) 55%, var(--grad-violet));
    border-radius: 3px;
  }
  .cover .cover-footer {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    font-size: 18px;
    color: var(--ink-3);
  }
  .cover .author { font-weight: 500; color: var(--ink-2); }
  .cover .author strong { color: var(--ink-1); font-weight: 700; }
  .cover .meta { text-align: right; letter-spacing: 0.06em; text-transform: uppercase; font-size: 14px; }

  /* ============================================================
     SLIDE 2 — Full TOC (Inhalt)
     ============================================================ */
  .toc {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px 80px;
    margin-top: 8px;
  }
  .toc-section {
    display: flex;
    flex-direction: column;
    gap: 4px;
    page-break-inside: avoid;
  }
  .toc-section-head {
    display: flex;
    align-items: baseline;
    gap: 18px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--rule);
    margin-bottom: 10px;
  }
  .toc-num {
    font-size: 18px;
    font-weight: 700;
    color: var(--brand-crimson);
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.04em;
  }
  .toc-name {
    font-size: 22px;
    font-weight: 700;
    color: var(--ink-1);
    line-height: 1.25;
  }
  .toc-sub {
    display: flex;
    align-items: baseline;
    gap: 14px;
    padding: 3px 0;
    font-size: 16px;
    line-height: 1.35;
    color: var(--ink-2);
  }
  .toc-sub-num {
    font-weight: 500;
    color: var(--ink-3);
    font-variant-numeric: tabular-nums;
    min-width: 32px;
  }
  .toc-subsub {
    margin-left: 46px;
    font-size: 14px;
    color: var(--ink-3);
    padding: 2px 0;
    display: flex;
    gap: 10px;
  }

  /* ============================================================
     SLIDE 3 — Chapter divider (TOC with position)
     ============================================================ */
  .chapter-divider {
    flex: 1;
    display: grid;
    grid-template-columns: 480px 1fr;
    gap: 80px;
    align-items: center;
    padding: 40px 0;
  }
  .chapter-divider .ch-num {
    font-size: 280px;
    font-weight: 700;
    line-height: 0.85;
    color: var(--brand-crimson);
    letter-spacing: -0.04em;
    font-variant-numeric: tabular-nums;
  }
  .chapter-divider .ch-num-label {
    font-size: 18px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--ink-3);
    font-weight: 500;
    margin-top: 12px;
  }
  .chapter-divider .ch-body { display: flex; flex-direction: column; gap: 28px; }
  .chapter-divider .ch-name {
    font-size: 92px;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: var(--ink-1);
    line-height: 1.02;
    margin: 0;
  }
  .chapter-divider .ch-subs { display: flex; flex-direction: column; gap: 14px; margin-top: 24px; }
  .chapter-divider .ch-sub {
    display: flex;
    align-items: baseline;
    gap: 20px;
    font-size: 30px;
    font-weight: 500;
    color: var(--ink-2);
    padding: 10px 0;
    border-bottom: 1px solid var(--rule);
  }
  .chapter-divider .ch-sub-num {
    color: var(--brand-crimson);
    font-weight: 700;
    min-width: 64px;
    font-variant-numeric: tabular-nums;
  }

  /* ============================================================
     SLIDE 5 — Two-card definition
     ============================================================ */
  .def-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 56px;
    flex: 1;
    align-items: stretch;
  }
  .def-card {
    background: var(--bg-surface);
    border: 1px solid var(--rule);
    border-radius: 6px;
    padding: 48px 52px;
    display: flex;
    flex-direction: column;
    gap: 28px;
  }
  .def-card .def-label {
    font-size: 19px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--brand-crimson);
    font-weight: 700;
  }
  .def-card .def-text {
    font-size: 40px;
    font-weight: 500;
    line-height: 1.32;
    color: var(--ink-1);
    margin: 0;
    text-wrap: pretty;
  }
  .def-card .def-source {
    font-size: 18px;
    font-style: italic;
    color: var(--ink-3);
    margin-top: auto;
    padding-top: 24px;
    border-top: 1px solid var(--rule);
  }
  .def-card.accent { background: var(--bg-app); border-color: var(--brand-crimson); }
  .def-card.accent .def-text { font-weight: 700; }

  /* ============================================================
     SLIDE 8 — Table (heavy)
     ============================================================ */
  .qs-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 22px;
    line-height: 1.4;
  }
  .qs-table thead th {
    text-align: left;
    font-size: 16px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--brand-crimson);
    font-weight: 700;
    padding: 16px 24px 14px;
    border-bottom: 2px solid var(--rule-strong);
  }
  .qs-table tbody td {
    padding: 22px 24px;
    border-bottom: 1px solid var(--rule);
    vertical-align: top;
    color: var(--ink-2);
  }
  .qs-table tbody td:first-child {
    font-weight: 700;
    color: var(--ink-1);
    width: 28%;
  }
  .qs-table tbody tr:last-child td { border-bottom: none; }

  /* ============================================================
     SLIDE 9 — 5 D's process
     ============================================================ */
  .process-5d {
    display: flex;
    flex-direction: column;
    gap: 26px;
    margin: auto 0;
  }
  .d-cols { display: grid; grid-template-columns: repeat(5, 1fr); gap: 24px; align-items: start; }
  .d-notes { display: grid; grid-template-columns: repeat(5, 1fr); gap: 24px; }
  .process-5d .d-cols .d-head { min-height: 92px; align-items: flex-start; }
  .d-arrow { display: flex; align-items: center; }
  .d-arrow-line { flex: 1; height: 7px; border-radius: 4px 0 0 4px; background: linear-gradient(90deg, var(--c-mag, #DC3B55), var(--c-amb, #F6A827) 55%, var(--c-vio, #6B4C8F)); }
  .d-arrow-head { width: 0; height: 0; border-top: 13px solid transparent; border-bottom: 13px solid transparent; border-left: 22px solid var(--c-vio, #6B4C8F); }
  .d-step {
    display: flex;
    flex-direction: column;
    position: relative;
  }
  .d-step .d-head {
    display: flex;
    align-items: baseline;
    gap: 14px;
    margin-bottom: 18px;
    padding-bottom: 16px;
    border-bottom: 2px solid var(--brand-crimson);
  }
  .d-step .d-letter {
    font-size: 56px;
    font-weight: 700;
    color: var(--brand-crimson);
    line-height: 1;
    letter-spacing: -0.02em;
  }
  .d-step .d-name {
    font-size: 22px;
    font-weight: 700;
    color: var(--ink-1);
    line-height: 1.15;
  }
  .d-step .d-bullets {
    font-size: 21px;
    line-height: 1.45;
    color: var(--ink-2);
    display: flex;
    flex-direction: column;
    gap: 12px;
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .d-step .d-bullets li {
    padding-left: 16px;
    position: relative;
  }
  .d-step .d-bullets li::before {
    content: "";
    position: absolute;
    left: 0; top: 12px;
    width: 5px; height: 5px;
    border-radius: 50%;
    background: var(--brand-crimson);
  }
  .d-note {
    margin-top: 0;
    padding: 18px 18px;
    font-size: 19px;
    font-style: normal;
    color: var(--ink-2);
    line-height: 1.42;
    min-height: 170px;
    background: rgba(31,36,33,0.045);
    border-left: 3px solid var(--brand-crimson);
    border-radius: 0 7px 7px 0;
  }

  /* ============================================================
     SLIDE 13 — Typology diagram (uncertainty → method)
     ============================================================ */
  .typology {
    flex: 1;
    display: grid;
    grid-template-columns: 280px 1fr 420px;
    gap: 48px;
    align-items: stretch;
    padding: 12px 0;
  }
  .typology .axis {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    padding: 16px 0;
  }
  .typology .axis-top, .typology .axis-bot {
    font-size: 22px;
    font-weight: 700;
    color: var(--ink-1);
  }
  .typology .axis-line {
    flex: 1;
    width: 2px;
    background: var(--rule-strong);
    margin: 16px 0;
    position: relative;
  }
  .typology .axis-line::before, .typology .axis-line::after {
    content: "";
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
  }
  .typology .axis-line::before {
    top: -2px;
    border-bottom: 12px solid var(--rule-strong);
  }
  .typology .axis-line::after {
    bottom: -2px;
    border-top: 12px solid var(--rule-strong);
  }
  .typology .axis-label {
    writing-mode: vertical-rl;
    font-size: 18px;
    letter-spacing: 0.02em;
    color: var(--ink-2);
    font-style: italic;
    position: absolute;
    left: 84px;
    top: 50%;
    transform: translateY(-50%) rotate(180deg);
    white-space: nowrap;
  }
  .typology .rows {
    display: flex;
    flex-direction: column;
    gap: 14px;
    justify-content: space-between;
  }
  .typology .row {
    background: var(--bg-surface);
    border-left: 6px solid var(--brand-crimson);
    border-radius: 4px;
    padding: 20px 32px;
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 0 40px;
    align-items: center;
    flex: 1;
  }
  .typology .row:nth-child(1) { border-left-color: var(--grad-magenta); }
  .typology .row:nth-child(2) { border-left-color: var(--grad-amber); }
  .typology .row:nth-child(3) { border-left-color: var(--grad-violet); }
  .typology .row-label {
    font-size: 14px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--ink-3);
    font-weight: 500;
  }
  .typology .row-name {
    font-size: 32px;
    font-weight: 700;
    color: var(--ink-1);
    letter-spacing: -0.01em;
  }
  .typology .row-desc {
    font-size: 17px;
    color: var(--ink-2);
    font-style: italic;
    margin-top: 2px;
  }
  .typology .row-id { display: flex; flex-direction: column; gap: 5px; }
  .typology .row-sub { font-size: 15px; font-style: italic; color: var(--ink-3); margin-top: -3px; }
  .typology .row-act { font-size: 18px; font-weight: 600; color: var(--ink-1); line-height: 1.34; margin-bottom: 9px; }
  .typology .row-ex { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 6px; }
  .typology .row-ex li { font-size: 16px; color: var(--ink-2); line-height: 1.34; padding-left: 18px; position: relative; }
  .typology .row-ex li::before { content: ""; position: absolute; left: 0; top: 9px; width: 6px; height: 6px; border-radius: 50%; background: var(--brand-crimson); }
  .typology .methods {
    display: flex;
    flex-direction: column;
    gap: 14px;
    justify-content: space-between;
  }
  .typology .method {
    padding: 22px 28px;
    border-radius: 4px;
    border: 1px solid var(--rule);
    background: var(--bg-app);
    flex: 1;
    display: flex;
    align-items: center;
    font-size: 19px;
    line-height: 1.4;
    color: var(--ink-2);
    font-weight: 500;
  }

  /* ============================================================
     SLIDE 22 — Scale types grid
     ============================================================ */
  .scales { flex:1; display:flex; flex-direction:column; gap:18px; margin:6px 0; }
  .srow { display:grid; grid-template-columns:230px 1fr 340px; gap:36px; align-items:center; border-radius:4px; padding:16px 32px; flex:1; }
  .srow.s-nominal   { background:#FCEEF0; border-left:6px solid var(--c-mag,#DC3B55); }
  .srow.s-ordinal   { background:#FFF6E5; border-left:6px solid var(--c-amb,#F6A827); }
  .srow.s-intervall { background:#F1ECF5; border-left:6px solid var(--c-vio,#6B4C8F); }
  .srow.s-metrisch  { background:rgba(42,138,78,0.07); border-left:6px solid #2A8A4E; }
  .srow .s-name { font-size:30px; font-weight:700; color:var(--ink-1); letter-spacing:-0.01em; }
  .srow .s-sub { font-size:15px; font-style:italic; color:var(--ink-3); margin-top:2px; }
  .srow .s-bullets { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; }
  .srow .s-bullets li { font-size:21px; color:var(--ink-2); line-height:1.34; padding-left:18px; position:relative; }
  .srow .s-bullets li::before { content:""; position:absolute; left:0; top:10px; width:6px; height:6px; border-radius:50%; background:var(--brand-crimson); }
  .srow .s-illu { display:flex; align-items:center; justify-content:center; height:92px; }
  .illu-nominal { gap:18px; }
  .illu-nominal .jersey { width:72px; height:64px; display:flex; align-items:center; justify-content:center; padding-top:18px; color:#fff; font-weight:800; font-size:20px; clip-path: polygon(0 20%, 30% 4%, 40% 13%, 50% 17%, 60% 13%, 70% 4%, 100% 20%, 84% 43%, 74% 34%, 74% 100%, 26% 100%, 26% 34%, 16% 43%, 0 20%); }
  .illu-nominal .c1 { background:var(--c-mag,#DC3B55); }
  .illu-nominal .c2 { background:var(--c-amb,#F6A827); color:var(--c-deep,#2A1F23); }
  .illu-nominal .c3 { background:var(--c-vio,#6B4C8F); }
  .srow .illu-ordinal { gap:0; align-items:flex-end; }
  .illu-ordinal .pod { width:62px; border-radius:4px 4px 0 0; background:var(--c-amb,#F6A827); color:var(--c-deep,#2A1F23); font-weight:800; font-size:19px; display:flex; align-items:center; justify-content:center; border-right:1px solid rgba(42,31,35,0.18); }
  .illu-ordinal .p2 { border-right:none; }
  .illu-ordinal .p1 { height:62px; }
  .illu-ordinal .p2 { height:44px; }
  .illu-ordinal .p3 { height:32px; }
  .illu-intervall .iscale { display:flex; align-items:center; gap:42px; position:relative; }
  .illu-intervall .iscale::before { content:""; position:absolute; left:-6px; right:-6px; top:50%; height:2px; background:var(--ink-mute); }
  .illu-intervall .t { width:3px; height:20px; background:var(--ink-mute); position:relative; z-index:1; }
  .illu-intervall .t.z { height:34px; background:var(--c-vio,#6B4C8F); }
  .illu-metrisch .mbars { display:flex; align-items:flex-end; gap:14px; border-bottom:3px solid var(--ink-1); position:relative; }
  .illu-metrisch .mbars span { width:34px; background:#2A8A4E; border-radius:4px 4px 0 0; }
  .illu-metrisch .mbars::after { content:"0 kg"; position:absolute; left:-42px; bottom:-4px; font-size:14px; font-weight:700; color:var(--ink-1); }

  .scales-flex {
    flex: 1;
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 56px;
  }
  .scales-tree { display: flex; flex-direction: column; gap: 22px; padding-top: 8px; }
  .scales-node {
    background: var(--bg-surface);
    border: 1px solid var(--rule);
    border-radius: 6px;
    padding: 22px 28px;
  }
  .scales-node h3 {
    font-size: 24px;
    font-weight: 700;
    margin: 0 0 6px;
    color: var(--ink-1);
  }
  .scales-node .desc { font-size: 16px; color: var(--ink-2); margin: 0; line-height: 1.4; }
  .scales-children { margin-top: 14px; display: flex; gap: 14px; flex-wrap: wrap; }
  .scales-chip {
    padding: 10px 18px;
    background: var(--bg-app);
    border: 1px solid var(--rule);
    border-radius: 100px;
    font-size: 15px;
    color: var(--ink-2);
    font-weight: 500;
  }
  .scales-examples {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    align-content: start;
    padding-top: 8px;
  }
  .scale-example {
    background: var(--bg-surface);
    border: 1px solid var(--rule);
    border-radius: 6px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  .scale-example .ex-label {
    font-size: 14px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--brand-crimson);
    font-weight: 700;
  }
  .scale-example .ex-title { font-size: 17px; font-weight: 700; color: var(--ink-1); }
  .scale-example .ex-row {
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
    background: var(--bg-app);
    padding: 14px;
    border-radius: 4px;
  }
  .scale-example .ex-row img { height: 56px; }
  .scale-example .ex-row .ex-num {
    font-size: 18px;
    font-weight: 700;
    color: var(--brand-crimson);
    min-width: 22px;
    text-align: center;
  }
  .scale-example .ex-caption { font-size: 13px; color: var(--ink-3); text-align: center; }

  /* ============================================================
     SLIDE 23 — Mega table (Wichtige Skalen)
     ============================================================ */
  .scales-table { font-size: 20px; line-height: 1.32; }
  .scales-table th,
  .scales-table td {
    padding: 15px 18px;
    text-align: left;
    vertical-align: top;
  }
  .scales-table thead th {
    font-size: 14px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--brand-crimson);
    font-weight: 700;
    border-bottom: 2px solid var(--rule-strong);
    background: var(--bg-app);
  }
  .scales-table thead .sub-head th {
    font-size: 12px;
    color: var(--ink-3);
    text-transform: none;
    letter-spacing: 0.02em;
    font-weight: 500;
    border-bottom: 1px solid var(--rule);
    padding: 8px 16px;
  }
  .scales-table tbody td {
    border-bottom: 1px solid var(--rule);
    color: var(--ink-2);
  }
  .scales-table tbody td:first-child {
    font-weight: 700;
    color: var(--ink-1);
    width: 12%;
  }

  /* ============================================================
     SLIDE 28 — Pros / Cons
     ============================================================ */
  .pros-cons {
    flex: 1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 56px;
  }
  .pc-card {
    background: var(--bg-surface);
    border: 1px solid var(--rule);
    border-radius: 6px;
    padding: 44px 48px;
    display: flex;
    flex-direction: column;
    gap: 28px;
  }
  .pc-header {
    display: flex;
    align-items: center;
    gap: 18px;
    padding-bottom: 20px;
    border-bottom: 2px solid var(--rule-strong);
  }
  .pc-icon {
    width: 64px; height: 64px;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 32px; font-weight: 700; color: white;
  }
  .pc-card.pros .pc-icon { background: #2A8A4E; }
  .pc-card.cons .pc-icon { background: var(--brand-crimson); }
  .pc-header h3 {
    font-size: 32px;
    font-weight: 700;
    margin: 0;
    color: var(--ink-1);
    letter-spacing: -0.01em;
  }
  .pc-list { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 18px; }
  .pc-list li {
    font-size: 26px;
    line-height: 1.4;
    color: var(--ink-2);
    padding-left: 28px;
    position: relative;
    text-wrap: pretty;
  }
  .pc-list li::before {
    content: "";
    position: absolute;
    left: 0; top: 10px;
    width: 14px; height: 14px;
    border-radius: 50%;
  }
  .pc-card.pros .pc-list li::before { background: #2A8A4E; }
  .pc-card.cons .pc-list li::before { background: var(--brand-crimson); }

  /* ============================================================
     SLIDES 29 / 34 / 39 — Method + form
     ============================================================ */
  .method-page { flex: 1; display: grid; grid-template-columns: 480px 1fr; gap: 64px; }
  .method-side {
    display: flex;
    flex-direction: column;
    gap: 32px;
    padding-top: 16px;
  }
  .method-badge {
    display: flex;
    align-items: center;
    gap: 18px;
    padding-bottom: 24px;
    border-bottom: 2px solid var(--brand-crimson);
  }
  .method-badge .m-icon {
    width: 72px; height: 72px;
    background: var(--brand-crimson);
    color: white;
    display: flex; align-items: center; justify-content: center;
    border-radius: 50%;
    font-size: 32px; font-weight: 700;
  }
  .method-badge h3 {
    font-size: 30px;
    font-weight: 700;
    margin: 0;
    line-height: 1.15;
    color: var(--ink-1);
    letter-spacing: -0.01em;
  }
  .method-desc {
    font-size: 22px;
    line-height: 1.45;
    color: var(--ink-2);
    margin: 0;
    text-wrap: pretty;
  }
  .method-form {
    background: var(--bg-surface);
    border: 1px solid var(--rule);
    border-radius: 6px;
    padding: 36px 40px;
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
  .method-form .form-intro {
    font-size: 17px;
    line-height: 1.45;
    color: var(--ink-2);
    margin: 0;
    text-wrap: pretty;
  }
  .form-table { width: 100%; border-collapse: collapse; font-size: 22px; }
  .form-table th, .form-table td {
    padding: 17px 18px;
    text-align: left;
    border-bottom: 1px solid var(--rule);
  }
  .form-table th {
    font-size: 14px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--brand-crimson);
    font-weight: 700;
  }
  .form-table td { color: var(--ink-2); }
  .form-table td:first-child { font-weight: 700; color: var(--ink-1); }
  .form-table td.totals {
    border-top: 2px solid var(--rule-strong);
    font-weight: 700;
    color: var(--ink-1);
  }

  /* Paarweise pairwise grid */
  .pairwise-grid {
    display: grid;
    grid-template-columns: 140px repeat(5, 1fr);
    gap: 1px;
    background: var(--rule);
    border: 1px solid var(--rule);
    border-radius: 6px;
    overflow: hidden;
  }
  .pairwise-grid > div {
    background: var(--bg-surface);
    padding: 14px 12px;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: var(--ink-2);
    min-height: 52px;
  }
  .pairwise-grid .head {
    background: var(--bg-app);
    font-size: 12px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--brand-crimson);
    font-weight: 700;
  }
  .pairwise-grid .row-label {
    background: var(--bg-app);
    font-weight: 700;
    color: var(--ink-1);
    justify-content: flex-start;
    padding-left: 18px;
  }
  .pairwise-grid .check { color: #2A8A4E; font-weight: 700; font-size: 22px; }
  .pairwise-grid .empty { background: #F0EDE4; }
  .pairwise-grid .totals {
    background: var(--bg-app);
    font-weight: 700;
    color: var(--brand-crimson);
    font-size: 17px;
  }

  /* ============================================================
     SLIDE 35 — Image-only screenshot example
     ============================================================ */
  .image-only {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 16px 0 0;
  }
  .image-only .frame {
    max-width: 100%;
    max-height: 100%;
    border-radius: 8px;
    box-shadow: 0 12px 48px rgba(31, 36, 33, 0.08), 0 2px 6px rgba(31, 36, 33, 0.06);
    background: white;
    overflow: hidden;
    border: 1px solid var(--rule);
  }
  .image-only .frame img { display: block; max-width: 100%; height: auto; }

  /* SLIDE 35 — native QS ranking drag&drop widget */
  .rank-widget { flex:1; display:flex; flex-direction:column; background: var(--bg-surface); border:1px solid var(--rule); border-radius:14px; box-shadow:0 10px 30px rgba(31,36,33,0.08); overflow:hidden; width:100%; max-width:1500px; margin:8px auto 0; }
  .rw-head { padding:26px 36px; border-bottom:1px solid var(--rule); }
  .rw-q { font-size:32px; font-weight:700; color:var(--ink-1); letter-spacing:-0.01em; }
  .rw-sub { font-size:19px; color:var(--ink-3); margin-top:8px; }
  .rw-body { flex:1; display:grid; grid-template-columns:1.55fr 1fr; }
  .rw-col { padding:26px 32px; display:flex; flex-direction:column; gap:18px; }
  .rw-top { border-right:1px solid var(--rule); }
  .rw-not { background:rgba(31,36,33,0.025); }
  .rw-col-title { font-size:15px; font-weight:700; letter-spacing:0.12em; text-transform:uppercase; color:var(--ink-3); }
  .rw-not .rw-col-title { color:var(--brand-crimson); }
  .rw-slot { display:flex; align-items:center; gap:20px; }
  .rw-rank { width:58px; height:58px; flex:none; border-radius:12px; color:#fff; font-size:28px; font-weight:800; display:flex; align-items:center; justify-content:center; }
  .rw-rank.r1 { background:var(--brand-crimson); }
  .rw-rank.r2 { background:var(--c-amb,#F6A827); color:var(--c-deep,#2A1F23); }
  .rw-rank.r3 { background:var(--c-vio,#6B4C8F); }
  .rw-item { flex:1; display:flex; align-items:center; gap:20px; background:#fff; border:1px solid var(--rule); border-radius:10px; padding:14px 20px; }
  .rw-photo { width:96px; height:70px; flex:none; border-radius:6px; background:repeating-linear-gradient(45deg, rgba(31,36,33,0.05) 0 8px, rgba(31,36,33,0.09) 8px 16px); display:flex; align-items:center; justify-content:center; }
  .rw-photo span { font-family:ui-monospace,monospace; font-size:10px; color:var(--ink-mute); text-transform:uppercase; letter-spacing:0.1em; }
  .rw-photo.has-img { background:#fff; border:1px solid var(--rule); }
  .rw-photo img { width:100%; height:100%; object-fit:contain; }
  .rw-name { font-size:26px; font-weight:600; color:var(--ink-1); }

  /* ============================================================
     Notes for diagram-approximation slides
     ============================================================ */
  .smartart-note {
    position: absolute;
    bottom: 76px;
    left: 112px;
    right: 112px;
    font-size: 13px;
    color: var(--ink-mute);
    font-style: italic;
    padding: 8px 12px;
    background: rgba(220, 59, 85, 0.05);
    border-left: 3px solid var(--brand-crimson);
    border-radius: 0 4px 4px 0;
  }

  /* === Direction switcher === */
  .dir-switcher {
    position: fixed; top: 16px; right: 16px; z-index: 9999;
    display: flex; align-items: center; gap: 0;
    background: rgba(31, 36, 33, 0.94);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-radius: 999px; padding: 6px;
    font-family: "Mona Sans", sans-serif;
    box-shadow: 0 10px 32px rgba(0,0,0,0.24);
  }
  .dir-switcher .label {
    color: rgba(255,255,255,0.5); font-size: 10px; letter-spacing: 0.18em;
    text-transform: uppercase; padding: 0 12px 0 14px; font-weight: 700;
  }
  .dir-switcher button {
    appearance: none; border: none; background: transparent;
    color: rgba(255,255,255,0.65); font-family: inherit;
    font-size: 13px; font-weight: 500; letter-spacing: 0.01em;
    padding: 9px 16px; border-radius: 999px; cursor: pointer;
    transition: all 0.15s ease; position: relative;
  }
  .dir-switcher button.active { background: white; color: #1F2421; font-weight: 700; }
  .dir-switcher button:hover:not(.active):not(.disabled) { color: white; }
  .dir-switcher button.disabled { opacity: 0.4; cursor: not-allowed; padding-right: 32px; }
  .dir-switcher button.disabled::after {
    content: "soon"; position: absolute; top: 2px; right: 6px;
    font-size: 8px; background: var(--brand-crimson); color: white;
    padding: 2px 5px; border-radius: 99px; letter-spacing: 0.06em;
    font-weight: 700; text-transform: uppercase;
  }
  @media print { .dir-switcher { display: none; } }

  /* ===== PDF/Print fix: Chromium rendert Shadow-Blur in der Druckausgabe
     nicht (blur wird verworfen → harte Rechtecke statt weicher Schatten).
     Darum in der Druck-/PDF-Ausgabe alle box-/text-shadows neutralisieren.
     Flächen, Ränder und Farben tragen die Tiefe — Lesbarkeit bleibt. ===== */
  @media print {
    * {
      box-shadow: none !important;
      text-shadow: none !important;
      -webkit-print-color-adjust: exact !important;
      print-color-adjust: exact !important;
    }
  }

  /* ============================================================
     DIRECTION B — Editorial Lecture
     ============================================================ */
  .dir-b {
    --rule: rgba(31, 36, 33, 0.12);
    --rule-strong: rgba(31, 36, 33, 0.32);
  }
  .dir-b .slide { padding: 96px 156px; }
  .dir-b .rail-top, .dir-b .rail-bottom { left: 156px; right: 156px; }
  .dir-b .rail-top { font-size: 13px; letter-spacing: 0.14em; font-weight: 400; }
  .dir-b .rail-top .chapter-mark { color: var(--ink-3); font-weight: 500; letter-spacing: 0.16em; }
  .dir-b .rail-top .section-mark { color: var(--ink-mute); font-style: italic; text-transform: none; letter-spacing: 0.02em; font-size: 14px; }
  .dir-b .slide-title { font-size: 72px; font-weight: 400; line-height: 1.05; letter-spacing: -0.025em; margin-top: 28px; max-width: 1500px; }
  .dir-b .title-rule { margin: 36px 0 64px; border-top: 1px solid var(--rule-strong); width: 100px; }
  .dir-b .rail-bottom { font-size: 12px; letter-spacing: 0.16em; color: var(--ink-mute); }

  .dir-b .slide.cover { background: var(--bg-app); }
  .dir-b .cover-frame { inset: 96px 156px; }
  .dir-b .cover-top .logo-dot { display: none; }
  .dir-b .cover-top .logo-mark { font-size: 13px; letter-spacing: 0.26em; text-transform: uppercase; font-weight: 700; color: var(--ink-2); gap: 0; }
  .dir-b .cover-top .tagline { font-size: 12px; letter-spacing: 0.22em; color: var(--ink-mute); }
  .dir-b .cover-hero { gap: 56px; max-width: 1500px; }
  .dir-b .cover-hero .eyebrow { font-size: 17px; letter-spacing: 0.06em; color: var(--ink-3); font-weight: 400; font-style: italic; text-transform: none; }
  .dir-b .cover-title { font-size: 168px; font-weight: 300; letter-spacing: -0.035em; line-height: 0.96; }
  .dir-b .grad-bar { display: none; }
  .dir-b .cover-subtitle { font-size: 28px; font-style: italic; color: var(--ink-2); font-weight: 300; max-width: 920px; line-height: 1.5; }
  .dir-b .cover-footer { font-size: 14px; letter-spacing: 0.04em; }

  .dir-b .toc { grid-template-columns: 1fr; gap: 32px; max-width: 1280px; margin: 0 auto; }
  .dir-b .toc-section-head { border-bottom: none; padding-bottom: 6px; margin-bottom: 6px; gap: 28px; align-items: baseline; }
  .dir-b .toc-num { color: var(--ink-mute); font-weight: 400; font-size: 14px; letter-spacing: 0.2em; }
  .dir-b .toc-name { font-size: 24px; font-weight: 500; font-style: italic; letter-spacing: -0.005em; }
  .dir-b .toc-sub { grid-template-columns: 56px 1fr; display: grid; font-size: 15px; padding: 4px 0 4px 28px; color: var(--ink-2); gap: 0; }
  .dir-b .toc-sub-num { color: var(--ink-mute); min-width: 0; font-size: 13px; letter-spacing: 0.04em; }

  .dir-b .chapter-divider { grid-template-columns: 380px 1fr; gap: 96px; align-items: start; padding: 8px 0; }
  .dir-b .chapter-divider .ch-num { font-size: 380px; font-weight: 200; color: var(--ink-1); letter-spacing: -0.06em; line-height: 0.78; }
  .dir-b .chapter-divider .ch-num-label { font-size: 14px; letter-spacing: 0.24em; color: var(--ink-mute); margin-top: 24px; font-style: italic; text-transform: none; }
  .dir-b .chapter-divider .ch-name { font-size: 96px; font-weight: 400; font-style: italic; letter-spacing: -0.02em; color: var(--ink-1); line-height: 1.02; }
  .dir-b .chapter-divider .ch-subs { margin-top: 56px; gap: 0; border-top: 1px solid var(--rule-strong); }
  .dir-b .chapter-divider .ch-sub { font-size: 26px; font-weight: 400; color: var(--ink-2); padding: 20px 0; border-bottom: 1px solid var(--rule); }
  .dir-b .chapter-divider .ch-sub-num { color: var(--ink-mute); font-weight: 400; font-size: 17px; letter-spacing: 0.06em; min-width: 64px; }

  .dir-b .def-grid { gap: 96px; }
  .dir-b .def-card { background: transparent; border: none; border-left: 1px solid var(--rule-strong); border-radius: 0; padding: 24px 0 24px 56px; position: relative; }
  .dir-b .def-card::before { content: "\201C"; position: absolute; left: 36px; top: -20px; font-size: 120px; color: var(--ink-mute); opacity: 0.5; line-height: 1; font-weight: 300; }
  .dir-b .def-card.accent { border-left-color: var(--brand-crimson); }
  .dir-b .def-card .def-label { color: var(--ink-3); font-weight: 400; font-size: 14px; letter-spacing: 0.04em; font-style: italic; text-transform: none; }
  .dir-b .def-card .def-text { font-size: 34px; font-weight: 300; line-height: 1.4; }
  .dir-b .def-card.accent .def-text { font-weight: 400; font-style: italic; }
  .dir-b .def-card .def-source { border-top: none; font-size: 14px; letter-spacing: 0.06em; font-style: italic; color: var(--ink-mute); padding-top: 16px; }

  .dir-b .qs-table { font-size: 19px; }
  .dir-b .qs-table thead th { color: var(--ink-3); font-weight: 500; font-size: 12px; letter-spacing: 0.2em; text-transform: uppercase; border-bottom: 1px solid var(--rule-strong); padding: 18px 28px 14px; font-style: italic; }
  .dir-b .qs-table tbody td { padding: 26px 28px; border-bottom: 1px solid var(--rule); }
  .dir-b .qs-table tbody td:first-child { font-weight: 500; font-style: italic; }
  .dir-b .scales-table thead th, .dir-b .scales-table thead .sub-head th { font-style: italic; text-transform: uppercase; letter-spacing: 0.16em; color: var(--ink-3); background: transparent; }
  .dir-b .scales-table thead .sub-head th { font-size: 11px; }

  .dir-b .process-5d { gap: 40px; margin-top: 28px; }
  .dir-b .d-step .d-head { flex-direction: column; align-items: flex-start; gap: 6px; border-bottom: 1px solid var(--rule-strong); padding-bottom: 14px; margin-bottom: 22px; }
  .dir-b .d-step .d-letter { font-size: 12px; color: var(--ink-mute); letter-spacing: 0.22em; font-weight: 500; text-transform: uppercase; }
  .dir-b .d-step .d-letter::before { content: "Phase "; opacity: 0.7; }
  .dir-b .d-step .d-name { font-size: 28px; font-weight: 400; font-style: italic; color: var(--ink-1); }
  .dir-b .d-step .d-bullets { gap: 12px; font-size: 17px; }
  .dir-b .d-step .d-bullets li::before { background: var(--ink-mute); width: 4px; height: 4px; top: 13px; }
  .dir-b .d-step .d-note { border-top: 1px solid var(--rule); font-style: italic; }

  .dir-b .typology { grid-template-columns: 240px 1fr 380px; gap: 56px; }
  .dir-b .typology .axis-top, .dir-b .typology .axis-bot { font-size: 14px; letter-spacing: 0.22em; text-transform: uppercase; font-weight: 500; color: var(--ink-3); }
  .dir-b .typology .row { background: transparent; border-left: 1px solid var(--ink-1); border-radius: 0; padding: 22px 36px; }
  .dir-b .typology .row:nth-child(1), .dir-b .typology .row:nth-child(2), .dir-b .typology .row:nth-child(3) { border-left-color: var(--ink-1); }
  .dir-b .typology .row-label { font-size: 12px; letter-spacing: 0.18em; color: var(--ink-mute); font-style: italic; text-transform: none; }
  .dir-b .typology .row-name { font-size: 38px; font-weight: 400; font-style: italic; letter-spacing: -0.01em; }
  .dir-b .typology .row-desc { font-size: 17px; }
  .dir-b .typology .method { background: transparent; border: none; border-bottom: 1px solid var(--rule); border-radius: 0; padding: 22px 0; font-style: italic; font-size: 17px; }

  .dir-b .pros-cons { gap: 96px; }
  .dir-b .pc-card { background: transparent; border: none; border-radius: 0; padding: 24px 0; }
  .dir-b .pc-header { border-bottom: 1px solid var(--rule-strong); padding-bottom: 22px; gap: 22px; }
  .dir-b .pc-icon { background: transparent !important; width: auto; height: auto; font-size: 72px; font-weight: 200; line-height: 0.7; border-radius: 0; }
  .dir-b .pc-card.pros .pc-icon { color: #2A8A4E; }
  .dir-b .pc-card.cons .pc-icon { color: var(--brand-crimson); }
  .dir-b .pc-header h3 { font-size: 38px; font-weight: 400; font-style: italic; }
  .dir-b .pc-list { gap: 22px; }
  .dir-b .pc-list li { font-size: 22px; font-weight: 400; line-height: 1.45; padding-left: 24px; }
  .dir-b .pc-list li::before { width: 7px; height: 7px; top: 14px; }

  .dir-b .method-page { gap: 96px; grid-template-columns: 440px 1fr; }
  .dir-b .method-side { gap: 28px; padding-top: 8px; }
  .dir-b .method-badge { border-bottom: 1px solid var(--rule-strong); flex-direction: column; align-items: flex-start; gap: 18px; padding-bottom: 24px; }
  .dir-b .method-badge .m-icon { background: transparent; color: var(--brand-crimson); width: auto; height: auto; font-size: 96px; font-weight: 200; border-radius: 0; line-height: 0.85; }
  .dir-b .method-badge h3 { font-size: 36px; font-weight: 400; font-style: italic; }
  .dir-b .method-desc { font-size: 22px; font-weight: 300; line-height: 1.5; }
  .dir-b .method-form { background: transparent; border: none; border-left: 1px solid var(--rule-strong); border-radius: 0; padding: 8px 0 8px 48px; }
  .dir-b .form-table th { font-size: 12px; color: var(--ink-3); font-weight: 500; letter-spacing: 0.18em; font-style: italic; text-transform: uppercase; }
  .dir-b .form-table td:first-child { font-weight: 500; font-style: italic; }

  .dir-b .pairwise-grid { background: transparent; border: none; border-radius: 0; border-top: 1px solid var(--rule-strong); border-bottom: 1px solid var(--rule-strong); gap: 0; }
  .dir-b .pairwise-grid > div { background: transparent; border-bottom: 1px solid var(--rule); }
  .dir-b .pairwise-grid .head { background: transparent; font-style: italic; color: var(--ink-3); border-bottom: 1px solid var(--rule-strong); text-transform: uppercase; }
  .dir-b .pairwise-grid .row-label { background: transparent; font-style: italic; }
  .dir-b .pairwise-grid .empty { background: transparent; color: var(--ink-mute); }
  .dir-b .pairwise-grid .check { color: var(--brand-crimson); font-weight: 400; font-size: 24px; }
  .dir-b .pairwise-grid .totals { background: transparent; border-top: 1px solid var(--rule-strong); font-style: italic; }

  .dir-b .scales-node { background: transparent; border: none; border-left: 1px solid var(--ink-1); padding: 8px 0 8px 32px; border-radius: 0; }
  .dir-b .scales-node h3 { font-size: 28px; font-weight: 400; font-style: italic; }
  .dir-b .scales-chip { background: transparent; border: 1px solid var(--rule-strong); font-style: italic; font-weight: 400; }
  .dir-b .scale-example { background: transparent; border: none; border-top: 1px solid var(--rule-strong); border-radius: 0; padding: 18px 0; }
  .dir-b .scale-example .ex-label { font-style: italic; color: var(--ink-3); font-weight: 400; text-transform: none; letter-spacing: 0.04em; }
  .dir-b .scale-example .ex-row { background: transparent; }

  .dir-b .image-only .frame { box-shadow: 0 24px 56px rgba(31, 36, 33, 0.08); border-radius: 2px; }
  .dir-b .smartart-note { background: transparent; border-left-width: 1px; font-style: italic; font-size: 12px; }

  /* ============================================================
     DIRECTION C — Bold Pedagogic
     Color-blocked, high-contrast textbook. D-gradient stops as
     palette. Bolder type, full-color headers, stronger rhythm.
     ============================================================ */
  .dir-c {
    --c-mag: #DC3B55;
    --c-amb: #F6A827;
    --c-vio: #6B4C8F;
    --c-grn: #2A8A4E;
    --c-deep: #2A1F23;
    --c-rose-50: #FCEEF0;
    --c-amber-50: #FFF6E5;
    --c-violet-50: #F1ECF5;
  }
  .dir-c .slide-title { font-weight: 700; letter-spacing: -0.025em; }
  .dir-c .title-rule { width: 80px; border-top: 4px solid var(--brand-crimson); margin: 18px 0 36px; }
  .dir-c .rail-top .chapter-mark { font-weight: 700; letter-spacing: 0.2em; color: var(--brand-crimson); }
  .dir-c .rail-top .section-mark { font-weight: 700; }

  /* C — Cover: deep wine bg */
  .dir-c .slide.cover { background: var(--c-deep); color: var(--bg-app); }
  .dir-c .cover-top .logo-mark { color: var(--bg-app); }
  .dir-c .cover-top .logo-mark .logo-dot { background: var(--brand-crimson); }
  .dir-c .cover-top .tagline { color: rgba(246, 245, 241, 0.7); }
  .dir-c .cover-hero .eyebrow { color: var(--c-amb); font-weight: 700; }
  .dir-c .cover-title { color: var(--bg-app); font-weight: 700; }
  .dir-c .grad-bar { width: 280px; height: 16px; background: linear-gradient(90deg, var(--c-mag), var(--c-amb), var(--c-vio)); border-radius: 0; }
  .dir-c .cover-subtitle { color: rgba(246, 245, 241, 0.88); }
  .dir-c .cover-footer { color: rgba(246, 245, 241, 0.7); }
  .dir-c .cover-footer .author strong { color: var(--bg-app); }

  /* C — TOC: color-coded chapter numbers */
  .dir-c .toc-section-head { border-bottom: 2px solid var(--ink-1); padding-bottom: 10px; }
  .dir-c .toc-num { background: var(--brand-crimson); color: white; padding: 4px 12px; border-radius: 4px; font-weight: 700; letter-spacing: 0.04em; font-size: 13px; }
  .dir-c .toc-section:nth-child(2) .toc-num { background: var(--c-amb); color: var(--c-deep); }
  .dir-c .toc-section:nth-child(3) .toc-num { background: var(--c-vio); }
  .dir-c .toc-section:nth-child(4) .toc-num { background: var(--c-mag); }
  .dir-c .toc-section:nth-child(5) .toc-num { background: var(--c-amb); color: var(--c-deep); }
  .dir-c .toc-section:nth-child(6) .toc-num { background: var(--c-vio); }
  .dir-c .toc-name { font-weight: 700; }
  .dir-c .toc-sub-num { font-weight: 700; color: var(--brand-crimson); }
  /* Slide 2 — full 3-level TOC; right column raised to title level */
  .toc { display:grid; grid-template-columns:1fr 1fr; gap:0 88px; align-items:start; }
  .toc-col { display:flex; flex-direction:column; min-width:0; }
  .toc-col .slide-title { margin-top:0; }
  .toc-col .title-rule { margin:24px 0 30px; }
  .toc-section { margin:0 0 10px; }
  .toc-sub { padding:2px 0; }
  .toc-section-head { padding-bottom:7px; margin-bottom:7px; }
  .toc-subsub { display:flex; gap:12px; align-items:baseline; padding:2px 0 2px 46px; }
  .toc-subsub-num { color:var(--ink-mute); font-weight:600; font-size:14px; min-width:56px; font-variant-numeric:tabular-nums; }
  .toc-subsub-text { color:var(--ink-3); font-weight:400; font-size:15px; }
  .toc-sub .toc-tail { color:var(--ink-3); font-weight:400; }

  /* C — Chapter divider: numeral on color block */
  .dir-c .chapter-divider { grid-template-columns: 440px 1fr; gap: 88px; padding: 0; align-items: center; margin: auto 0; }
  .dir-c .chapter-divider .ch-num { background: var(--brand-crimson); color: white; font-size: 280px; font-weight: 700; display: flex; align-items: center; justify-content: center; width: 440px; height: 440px; border-radius: 10px; line-height: 1; box-shadow: 0 30px 64px rgba(220,59,85,0.22); }
  .dir-c .chapter-divider .ch-num-label { display: none; }
  .dir-c .chapter-divider .ch-name { font-size: 96px; font-weight: 700; color: var(--ink-1); line-height: 1.04; letter-spacing: -0.02em; }
  .dir-c .chapter-divider .ch-subs { margin-top: 36px; gap: 0; max-width: 820px; }
  .qs-stamp { display:inline-block; width:22px; height:28px; background:url('../qs-mark.svg') center/contain no-repeat; vertical-align:-0.42em; margin-right:13px; }
  .dir-c .chapter-divider .ch-sub { font-size: 30px; padding: 18px 0; border-bottom: 1px solid rgba(31,36,33,0.12); display: flex; gap: 20px; align-items: baseline; }
  .dir-c .chapter-divider .ch-sub-num { color: var(--brand-crimson); font-weight: 700; font-size: 15px; letter-spacing: 0.06em; background: var(--c-rose-50); padding: 4px 11px; border-radius: 3px; min-width: 0; flex-shrink: 0; }

  /* C — Definitions: colored cards */
  .dir-c .def-card { background: var(--c-rose-50); border: none; border-top: 4px solid var(--brand-crimson); border-radius: 4px; }
  .dir-c .def-card.accent { background: var(--brand-crimson); border-top: 4px solid var(--c-deep); }
  .dir-c .def-card.accent .def-label, .dir-c .def-card.accent .def-text { color: var(--bg-app); }
  .dir-c .def-card.accent .def-source { color: rgba(246,245,241,0.7); border-top-color: rgba(246,245,241,0.2); }
  .dir-c .def-card .def-label { font-weight: 700; }
  .dir-c .def-card .def-text { font-weight: 700; }

  /* C — Tables: full-color header, striped rows */
  .dir-c .qs-table thead th { background: var(--c-deep); color: var(--bg-app); font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; font-size: 12px; }
  .dir-c .qs-table tbody tr:nth-child(even) td { background: rgba(220,59,85,0.04); }
  .dir-c .qs-table tbody td { border-bottom: 1px solid rgba(31,36,33,0.08); padding: 18px 24px; }
  .dir-c .qs-table tbody td:first-child { font-weight: 700; color: var(--brand-crimson); }

  /* C — 5 D's: rotated palette circles */
  .dir-c .d-step .d-letter { color: white; font-weight: 700; }
  .dir-c .d-step:nth-child(1) .d-letter { background: var(--c-mag); }
  .dir-c .d-step:nth-child(2) .d-letter { background: var(--c-amb); color: var(--c-deep); }
  .dir-c .d-step:nth-child(3) .d-letter { background: var(--c-vio); }
  .dir-c .d-step:nth-child(4) .d-letter { background: var(--c-mag); }
  .dir-c .d-step:nth-child(5) .d-letter { background: var(--c-amb); color: var(--c-deep); }
  .dir-c .d-step .d-name { font-weight: 700; }
  .dir-c .d-step .d-bullets li::before { background: var(--brand-crimson); }

  /* C — Typology: colored row stripes */
  .dir-c .typology .row:nth-child(1) { border-left: 8px solid var(--c-mag); background: rgba(220,59,85,0.06); }
  .dir-c .typology .row:nth-child(2) { border-left: 8px solid var(--c-amb); background: rgba(246,168,39,0.08); }
  .dir-c .typology .row:nth-child(3) { border-left: 8px solid var(--c-vio); background: rgba(107,76,143,0.07); }
  .dir-c .typology .row-label { font-weight: 700; }
  .dir-c .typology .row-name { font-weight: 700; }
  .dir-c .typology .method { background: white; border: 1px solid rgba(31,36,33,0.1); font-weight: 500; }

  /* C — Pros/Cons: full-color header bands */
  .dir-c .pc-card { overflow: hidden; padding: 0; border: 1px solid rgba(31,36,33,0.1); }
  .dir-c .pc-card.pros { background: rgba(42,138,78,0.04); }
  .dir-c .pc-card.cons { background: rgba(220,59,85,0.04); }
  .dir-c .pc-card .pc-header { padding: 22px 28px; gap: 18px; }
  .dir-c .pc-card.pros .pc-header { background: var(--c-grn); }
  .dir-c .pc-card.cons .pc-header { background: var(--brand-crimson); }
  .dir-c .pc-card .pc-header h3 { color: white; font-weight: 700; }
  .dir-c .pc-card .pc-icon { background: rgba(255,255,255,0.2); color: white; font-weight: 700; }
  .dir-c .pc-list { padding: 24px 28px; }
  .dir-c .pc-list li::before { background: var(--brand-crimson); }
  .dir-c .pc-card.pros .pc-list li::before { background: var(--c-grn); }

  /* C — Method pages */
  .dir-c .method-badge .m-icon { background: var(--brand-crimson); color: white; font-weight: 700; }
  .dir-c .method-badge h3 { font-weight: 700; }
  .dir-c .method-form { background: transparent; border: none; border-radius: 0; overflow: visible; }
  .dir-c .method-form .form-intro { background: var(--c-rose-50); border-bottom: 1px solid rgba(31,36,33,0.1); }
  .dir-c .form-table thead th { background: var(--c-deep); color: var(--bg-app); font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; font-size: 14px; }
  .dir-c .form-table td:first-child { font-weight: 700; color: var(--brand-crimson); }
  .dir-c .form-table tbody tr:nth-child(even) td { background: rgba(220,59,85,0.03); }

  /* C — Pairwise */
  .dir-c .pairwise-grid { border: none; gap: 1px; background: rgba(31,36,33,0.1); padding: 1px; }
  .dir-c .pairwise-grid > div { background: white; }
  .dir-c .pairwise-grid .head { background: var(--c-deep); color: var(--bg-app); font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; font-size: 12px; }
  .dir-c .pairwise-grid .row-label { background: var(--c-rose-50); font-weight: 700; color: var(--brand-crimson); }
  .dir-c .pairwise-grid .check { color: var(--brand-crimson); font-weight: 700; font-size: 26px; }
  .dir-c .pairwise-grid .empty { background: rgba(31,36,33,0.04); color: rgba(31,36,33,0.3); }
  .dir-c .pairwise-grid .totals { background: var(--c-amb); color: var(--c-deep); font-weight: 700; }
  .dir-c .pairwise-grid > div { padding: 16px 12px; min-height: 62px; }
  .dir-c .pairwise-grid .head { font-size: 16px; }
  .dir-c .pairwise-grid .row-label { font-size: 18px; }
  .dir-c .pairwise-grid .totals { font-size: 19px; }
  .dir-c .pairwise-grid .diag { background: rgba(31,36,33,0.10); }
  .pairwise-grid .ar { display:flex; align-items:center; justify-content:center; font-size:32px; font-weight:800; line-height:1; }
  .pairwise-grid .ar.below { color: var(--ink-1); }
  .pairwise-grid .ar.above { color: var(--ink-mute); opacity:0.5; }
  .dir-c .method-form .form-intro { font-size: 23px; line-height: 1.5; }
  .dir-c .method-side .method-desc { font-size: 24px; }

  /* C — Scales */
  .dir-c .scales-node { border-left: 8px solid var(--brand-crimson); background: var(--c-rose-50); border-radius: 0 4px 4px 0; }
  .dir-c .scales-node:nth-of-type(2) { border-left-color: var(--c-amb); background: var(--c-amber-50); }
  .dir-c .scales-node h3 { font-weight: 700; }
  .dir-c .scales-chip { background: var(--brand-crimson); color: white; border: none; font-weight: 700; }
  .dir-c .scale-example { background: white; border: 1px solid rgba(31,36,33,0.1); border-radius: 4px; }
  .dir-c .scales-table thead th { background: var(--c-deep); color: var(--bg-app); font-weight: 700; letter-spacing: 0.06em; }
  .dir-c .scales-table thead .sub-head th { background: rgba(42,31,35,0.85); color: rgba(246,245,241,0.85); }
  .dir-c .scales-table tbody td:first-child { font-weight: 700; color: var(--brand-crimson); }

  /* C — Image-only & SmartArt note */
  .dir-c .image-only .frame { box-shadow: 0 16px 40px rgba(220,59,85,0.18); border: 4px solid var(--brand-crimson); border-radius: 0; }
  .dir-c .smartart-note { background: var(--c-amb); color: var(--c-deep); border-left: 4px solid var(--c-deep); font-weight: 700; }

  /* ============================================================
     TITELVARIANTEN — cover options toggled via [data-cover]
     dunkel · block · hell · website  (designed for Direction C)
     ============================================================ */
  @keyframes live-pulse { 0%,100% { opacity:1; transform:scale(1); } 50% { opacity:0.5; transform:scale(1.15); } }

  .cover .cover-bloom { position:absolute; inset:0; pointer-events:none; display:none; z-index:0; }
  .cover[data-cover="dunkel"] .bloom-dunkel { display:block; }
  .cover[data-cover="website"] .bloom-web { display:block; }
  .bloom-dunkel {
    background:
      radial-gradient(58% 70% at 100% 105%, rgba(220,59,85,0.30), transparent 60%),
      radial-gradient(52% 60% at -5% -5%, rgba(107,76,143,0.24), transparent 58%);
  }
  .bloom-web {
    background:
      radial-gradient(42% 58% at 95% 6%, rgba(246,168,39,0.55), transparent 64%),
      radial-gradient(36% 50% at 104% -4%, rgba(220,59,85,0.50), transparent 66%),
      radial-gradient(46% 66% at 84% -10%, rgba(107,76,143,0.34), transparent 64%);
  }

  /* override dir-c flat-deep background per variant */
  .dir-c .slide.cover[data-cover="dunkel"]  { background:#34191F; color: var(--bg-app); }
  .dir-c .slide.cover[data-cover="block"]   { background: var(--bg-app); color: var(--ink-1); }
  .dir-c .slide.cover[data-cover="hell"]    { background: var(--bg-app); color: var(--ink-1); }
  .dir-c .slide.cover[data-cover="website"] { background: var(--bg-app); color: var(--ink-1); }

  /* variant visibility */
  .cover .cv { display:none; position:absolute; inset:88px 112px; flex-direction:column; z-index:1; }
  .cover[data-cover="dunkel"]  .cv-dunkel  { display:flex; }
  .cover[data-cover="block"]   .cv-block   { display:flex; }
  .cover[data-cover="hell"]    .cv-hell    { display:flex; }
  .cover[data-cover="website"] .cv-website { display:flex; }

  /* shared cover atoms */
  .cover .cv .c-top { display:flex; justify-content:space-between; align-items:flex-start; }
  .cover .cv .c-logo { display:flex; align-items:center; gap:14px; font-size:22px; font-weight:700; letter-spacing:-0.01em; }
  .cover .cv .c-logo .dot { width:32px; height:42px; border-radius:0; background: url('../qs-mark.svg') center/contain no-repeat; flex:none; }
  .cover .cv .c-tag { font-size:13px; font-weight:400; letter-spacing:0.2em; text-transform:uppercase; color: var(--ink-3); text-align:right; }
  .cover .cv .c-eyebrow { font-size:18px; letter-spacing:0.2em; text-transform:uppercase; font-weight:700; color: var(--brand-crimson); }
  .cover .cv .c-title { font-weight:700; letter-spacing:-0.03em; line-height:1.0; margin:0; }
  .cover .cv .c-bar { background: linear-gradient(90deg, var(--c-mag), var(--c-amb) 55%, var(--c-vio)); border-radius:0; }
  .cover .cv .c-foot { display:flex; justify-content:space-between; align-items:flex-end; font-size:18px; color: var(--ink-3); }
  .cover .cv .c-foot .c-author strong { color: var(--ink-1); font-weight:700; }
  .cover .cv .c-meta { text-transform:uppercase; letter-spacing:0.06em; font-size:14px; text-align:right; }

  /* --- Variant DUNKEL --- */
  .cv-dunkel { justify-content:space-between; }
  .cv-dunkel .c-logo { color: var(--bg-app); }
  .cv-dunkel .c-tag { color: rgba(246,245,241,0.6); }
  .cv-dunkel .c-hero { display:flex; flex-direction:column; gap:34px; max-width:1500px; position:relative; }
  .cv-dunkel .c-eyebrow { color: var(--c-amb); }
  .cv-dunkel .c-title { color: var(--bg-app); font-size:132px; }
  .cv-dunkel .c-bar { width:360px; height:14px; }
  .cv-dunkel .c-sub { color: rgba(246,245,241,0.82); font-size:34px; max-width:1000px; line-height:1.42; margin:0; }
  .cv-dunkel .c-foot { color: rgba(246,245,241,0.72); position:relative; }
  .cv-dunkel .c-foot .c-author strong { color: var(--bg-app); }
  .cv-dunkel .ghost-num { position:absolute; right:-12px; top:50%; transform:translateY(-50%); font-size:560px; font-weight:700; line-height:0.7; letter-spacing:-0.05em; color: rgba(246,245,241,0.045); z-index:-1; pointer-events:none; }

  /* --- Variant BLOCK --- */
  .cv-block { justify-content:space-between; }
  .cv-block .block-body { flex:1; display:grid; grid-template-columns:420px 1fr; gap:84px; align-items:center; }
  .cv-block .block-num { width:420px; height:420px; border-radius:12px; background: var(--brand-crimson); color:#fff; font-size:300px; font-weight:700; line-height:1; display:flex; align-items:center; justify-content:center; box-shadow:0 30px 64px rgba(220,59,85,0.26); }
  .cv-block .block-side { display:flex; flex-direction:column; gap:30px; }
  .cv-block .c-title { color: var(--ink-1); font-size:92px; line-height:1.02; }
  .cv-block .c-bar { width:220px; height:12px; }
  .cv-block .c-sub { color: var(--ink-2); font-size:30px; max-width:780px; line-height:1.42; margin:0; }

  /* --- Variant HELL --- */
  .cv-hell { justify-content:space-between; }
  .cv-hell .hell-hero { display:flex; flex-direction:column; gap:34px; max-width:1500px; align-items:flex-start; }
  .cv-hell .hell-tag { background: var(--c-rose-50); color: var(--brand-crimson); font-weight:700; font-size:15px; letter-spacing:0.16em; text-transform:uppercase; padding:8px 16px; border-radius:6px; white-space:nowrap; }
  .cv-hell .c-title { color: var(--ink-1); font-size:132px; }
  .cv-hell .c-bar { width:360px; height:14px; }
  .cv-hell .c-sub { color: var(--ink-2); font-size:34px; max-width:1000px; line-height:1.42; margin:0; }

  /* --- Variant WEBSITE (site-hero tie) --- */
  .cv-website { justify-content:space-between; }
  .cv-website .web-hero { max-width:1560px; }
  .cv-website .web-kicker { display:inline-flex; align-items:center; gap:12px; font-size:18px; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color: var(--ink-2); margin:0 0 38px; }
  .cv-website .web-kicker .live-dot { width:11px; height:11px; border-radius:50%; background:#F0997B; animation: live-pulse 1.5s ease-in-out infinite; }
  .cv-website .web-title { font-size:150px; font-weight:700; letter-spacing:-0.03em; line-height:0.97; margin:0; color: var(--ink-1); }
  .cv-website .web-sub { font-size:40px; font-weight:400; color: var(--ink-1); letter-spacing:-0.01em; margin:40px 0 18px; }
  .cv-website .web-sub strong { font-weight:700; }
  .cv-website .web-desc { font-size:26px; font-weight:400; color: var(--ink-2); max-width:880px; line-height:1.5; margin:0; text-wrap:pretty; }
  .cv-website .web-foot { font-size:18px; color: var(--ink-3); }
  .cv-website .web-link { color: var(--ink-1); font-weight:700; position:relative; padding-bottom:6px; }
  .cv-website .web-link::after { content:""; position:absolute; left:0; bottom:0; width:100%; height:2px; background: linear-gradient(90deg,#DC3B55,#F6A827); border-radius:1px; }

  /* === Titel-Variante switcher === */
  .cover-switcher { position:fixed; top:16px; left:16px; z-index:9999; display:flex; align-items:center; background: rgba(31,36,33,0.92); border-radius:10px; padding:4px; box-shadow:0 10px 32px rgba(0,0,0,0.24); }
  .cover-switcher .label { color: rgba(255,255,255,0.5); font-size:10px; letter-spacing:0.18em; text-transform:uppercase; padding:0 10px 0 12px; font-weight:700; }
  .cover-switcher button { appearance:none; border:none; background:transparent; color: rgba(255,255,255,0.65); font-family:inherit; font-size:12px; font-weight:500; padding:7px 13px; border-radius:7px; cursor:pointer; transition: all .15s ease; }
  .cover-switcher button.active { background:white; color:#1F2421; font-weight:700; }
  .cover-switcher button:hover:not(.active) { color:white; }
  @media print { .cover-switcher { display:none; } }

  /* ============================================================
     KAPITEL 1 — FULL ASSEMBLY · additional components
     Direction C only (A/B kept as dev reference, not extended).
     ============================================================ */

  /* Active highlight on chapter-divider sub (entering a sub-section) */
  .dir-c .chapter-divider .ch-sub.is-active { background: var(--c-rose-50); border-bottom-color: var(--brand-crimson); padding-left: 14px; margin-left: -14px; border-radius: 4px; }
  .dir-c .chapter-divider .ch-sub.is-active .ch-sub-num { background: var(--brand-crimson); color: #fff; }
  .dir-c .chapter-divider .ch-sub.is-active > span:last-child { color: var(--ink-1); font-weight: 700; }
  .dir-c .chapter-divider .ch-sub.is-dim { opacity: 0.5; }

  /* ---- Single centered definition + rules (slides 6, 20) ---- */
  .def-single { flex:1; display:flex; flex-direction:column; justify-content:center; gap:40px; max-width:1500px; margin:0 auto; width:100%; }
  .def-hero { background:var(--c-rose-50); border-top:6px solid var(--brand-crimson); border-radius:6px; padding:60px 68px; }
  .def-hero .def-label { font-size:20px; letter-spacing:0.18em; text-transform:uppercase; color:var(--brand-crimson); font-weight:700; margin-bottom:26px; }
  .def-hero .def-term { color:var(--brand-crimson); }
  .def-hero .def-text { font-size:46px; font-weight:700; line-height:1.3; color:var(--ink-1); margin:0; text-wrap:pretty; }
  .def-rules { display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
  .def-rule { background:var(--bg-surface); border:1px solid var(--rule); border-left:6px solid var(--brand-crimson); border-radius:4px; padding:30px 32px; display:flex; flex-direction:column; gap:14px; }
  .def-rule:nth-child(2){ border-left-color:var(--c-amb); }
  .def-rule:nth-child(3){ border-left-color:var(--c-vio); }
  .def-rule .rn { width:40px; height:40px; flex:none; border-radius:50%; background:var(--brand-crimson); color:#fff; font-size:20px; font-weight:700; display:flex; align-items:center; justify-content:center; }
  .def-rule:nth-child(2) .rn{ background:var(--c-amb); color:var(--c-deep); }
  .def-rule:nth-child(3) .rn{ background:var(--c-vio); }
  .def-rule .rt { font-size:25px; line-height:1.4; color:var(--ink-2); font-weight:500; }

  /* ---- Marktforschung funnel / iceberg (slide 7) ---- */
  .mf-funnel { flex:1; display:flex; flex-direction:column; gap:30px; }
  .mf-actors { display:grid; grid-template-columns:1fr 64px 1fr; gap:0; align-items:stretch; }
  .mf-actor { background:var(--c-deep); color:var(--bg-app); border-radius:8px; padding:26px 34px; display:flex; flex-direction:column; gap:6px; justify-content:center; }
  .mf-actor .role { font-size:15px; letter-spacing:0.16em; text-transform:uppercase; color:var(--c-amb); font-weight:700; }
  .mf-actor .who { font-size:30px; font-weight:700; }
  .mf-link { display:flex; align-items:center; justify-content:center; color:var(--brand-crimson); font-size:30px; font-weight:700; }
  .mf-problem-band { background:var(--brand-crimson); color:#fff; border-radius:8px; padding:20px 32px; text-align:center; font-size:24px; font-weight:700; letter-spacing:-0.01em; }
  .mf-iceberg { flex:1; display:grid; grid-template-columns:1fr 1fr; gap:28px; min-height:0; }
  .ice-col { border-radius:8px; padding:30px 34px; display:flex; flex-direction:column; gap:18px; }
  .ice-symptoms { background:rgba(246,168,39,0.10); border:1px solid var(--rule); }
  .ice-root { background:var(--c-deep); color:var(--bg-app); }
  .ice-head { font-size:16px; letter-spacing:0.14em; text-transform:uppercase; font-weight:700; }
  .ice-symptoms .ice-head { color:var(--ink-3); }
  .ice-root .ice-head { color:var(--c-amb); }
  .ice-chips { display:flex; flex-wrap:wrap; gap:12px; align-content:flex-start; }
  .ice-chip { background:#fff; border:1px solid var(--rule); border-radius:100px; padding:11px 20px; font-size:20px; color:var(--ink-2); font-weight:500; }
  .ice-root .ice-deep { font-size:34px; font-weight:700; line-height:1.34; margin:auto 0; text-wrap:pretty; }
  .ice-root .ice-note { font-size:18px; color:rgba(246,245,241,0.7); font-style:italic; }

  /* ---- Branch rows: label | activity | tail examples (slides 14, 15) ---- */
  .branch-rows { flex:1; display:flex; flex-direction:column; gap:32px; justify-content:center; }
  .branch-row { display:grid; grid-template-columns:300px 1fr 30px 420px; gap:0; align-items:stretch; }
  .branch-label { background:var(--c-deep); color:#fff; border-radius:8px 0 0 8px; padding:30px 34px; display:flex; flex-direction:column; justify-content:center; gap:8px; }
  .branch-row.b2 .branch-label { background:var(--c-vio); }
  .branch-label .bl-name { font-size:34px; font-weight:700; line-height:1.05; }
  .branch-label .bl-kicker { font-size:14px; letter-spacing:0.16em; text-transform:uppercase; color:var(--c-amb); font-weight:700; }
  .branch-act { background:var(--bg-surface); border:1px solid var(--rule); border-left:none; padding:28px 34px; display:flex; flex-direction:column; justify-content:center; }
  .branch-act ul { margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:11px; }
  .branch-act li { font-size:21px; line-height:1.36; color:var(--ink-2); padding-left:20px; position:relative; }
  .branch-act li::before { content:""; position:absolute; left:0; top:11px; width:7px; height:7px; border-radius:50%; background:var(--brand-crimson); }
  .branch-act li strong { color:var(--ink-1); font-weight:700; }
  .branch-arrow { display:flex; align-items:center; justify-content:center; }
  .branch-arrow::after { content:""; width:0; height:0; border-top:16px solid transparent; border-bottom:16px solid transparent; border-left:22px solid var(--brand-crimson); }
  .branch-tail { background:var(--c-rose-50); border-radius:0 8px 8px 0; padding:28px 32px; display:flex; flex-direction:column; justify-content:center; gap:10px; }
  .branch-row.b2 .branch-tail { background:rgba(107,76,143,0.10); }
  .branch-tail .bt-kicker { font-size:13px; letter-spacing:0.14em; text-transform:uppercase; color:var(--brand-crimson); font-weight:700; }
  .branch-row.b2 .branch-tail .bt-kicker { color:var(--c-vio); }
  .branch-tail .bt-text { font-size:23px; line-height:1.36; color:var(--ink-1); font-weight:500; }
  .branch-tail .bt-text strong { font-weight:700; }

  /* ---- Triangulation (slide 16) ---- */
  .triangulation { flex:1; display:grid; grid-template-columns:1fr 520px; gap:60px; align-items:center; }
  .tri-diagram { position:relative; height:560px; display:flex; align-items:center; justify-content:center; }
  .tri-target { width:230px; height:230px; border-radius:50%; background:var(--brand-crimson); color:#fff; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; box-shadow:0 24px 60px rgba(220,59,85,0.28); z-index:2; }
  .tri-target .tt-label { font-size:14px; letter-spacing:0.16em; text-transform:uppercase; color:var(--c-amb); font-weight:700; }
  .tri-target .tt-word { font-size:44px; font-weight:700; letter-spacing:-0.01em; }
  .tri-node { position:absolute; background:var(--bg-surface); border:1px solid var(--rule); border-top:5px solid var(--c-vio); border-radius:8px; padding:20px 28px; font-size:24px; font-weight:700; color:var(--ink-1); box-shadow:0 12px 30px rgba(31,36,33,0.08); z-index:2; }
  .tri-node.n1 { top:8px; left:50%; transform:translateX(-50%); border-top-color:var(--brand-crimson); }
  .tri-node.n2 { bottom:30px; left:8px; border-top-color:var(--c-amb); }
  .tri-node.n3 { bottom:30px; right:8px; border-top-color:var(--c-vio); }
  .tri-arrow { position:absolute; height:3px; background:var(--rule-strong); z-index:1; transform-origin:left center; }
  .tri-side { display:flex; flex-direction:column; gap:30px; }
  .tri-side .ts-lead { font-size:34px; font-weight:700; line-height:1.32; color:var(--ink-1); text-wrap:pretty; }
  .tri-side .ts-methods { display:flex; flex-direction:column; gap:14px; }
  .tri-side .ts-method { display:flex; align-items:center; gap:16px; font-size:24px; color:var(--ink-2); font-weight:500; }
  .tri-side .ts-method .tm-dot { width:14px; height:14px; border-radius:50%; flex:none; }
  .tri-side .ts-source { font-size:16px; font-style:italic; color:var(--ink-3); border-top:1px solid var(--rule); padding-top:20px; }

  /* ---- Statement slide (slide 17) ---- */
  .slide.statement { background:#000; color:var(--bg-app); justify-content:center; align-items:flex-start; }
  .statement .stmt-bg { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
  .statement .stmt-scrim { position:absolute; inset:0; z-index:1; background:linear-gradient(90deg, rgba(0,0,0,0.82) 0%, rgba(0,0,0,0.52) 36%, rgba(0,0,0,0.08) 64%, rgba(0,0,0,0) 100%); }
  .slide.statement .rail-top, .slide.statement .rail-bottom { color:rgba(246,245,241,0.6); z-index:3; }
  .slide.statement .rail-top .chapter-mark { color:var(--c-amb); }
  .stmt-wrap { position:relative; z-index:2; max-width:1300px; display:flex; flex-direction:column; gap:36px; }
  .stmt-kicker { font-size:22px; letter-spacing:0.2em; text-transform:uppercase; color:var(--c-amb); font-weight:700; }
  .stmt-big { font-size:130px; font-weight:700; line-height:0.98; letter-spacing:-0.03em; margin:0; color:var(--bg-app); text-shadow:0 4px 34px rgba(0,0,0,0.55); }
  .stmt-big em { font-style:normal; color:var(--brand-crimson); }
  .stmt-scribble { display:flex; margin-top:14px; align-items:center; height:64px; }
  .stmt-scribble svg { height:64px; width:auto; filter:drop-shadow(0 3px 14px rgba(0,0,0,0.5)); }

  /* ---- Continuum scale (slide 21) ---- */
  .continuum-page { flex:1; display:flex; flex-direction:column; justify-content:center; gap:64px; }
  .continuum-def { font-size:42px; font-weight:700; line-height:1.32; color:var(--ink-1); max-width:1500px; text-wrap:pretty; }
  .continuum-def .ct-term { color:var(--brand-crimson); }
  .continuum { display:flex; flex-direction:column; gap:22px; }
  .ct-track { height:24px; border-radius:12px; background:linear-gradient(90deg, var(--c-grn), var(--c-amb) 50%, var(--brand-crimson)); position:relative; }
  .ct-track .ct-tick { position:absolute; top:-12px; width:4px; height:48px; background:var(--ink-1); border-radius:2px; transform:translateX(-50%); }
  .ct-ends { display:flex; justify-content:space-between; }
  .ct-end { font-size:30px; font-weight:700; color:var(--ink-1); }
  .ct-end.r { color:var(--brand-crimson); }
  .ct-end.l { color:var(--c-grn); }
  .ct-objects { display:flex; justify-content:space-around; margin-top:6px; }
  .ct-obj { display:flex; flex-direction:column; align-items:center; gap:14px; }
  .ct-obj .ph { width:172px; height:172px; border-radius:50%; overflow:hidden; background:#fff; border:4px solid #fff; box-shadow:0 12px 30px rgba(31,36,33,0.16); }
  .ct-obj .ph img { width:100%; height:100%; object-fit:cover; display:block; }
  .ct-obj .lbl { font-size:19px; font-weight:600; color:var(--ink-2); }

  /* ---- Scale-type tree (slides 24, 27) ---- */
  .scale-tree { flex:1; display:grid; grid-template-columns:300px 1fr; gap:0 56px; align-items:center; }
  .st-root { background:var(--brand-crimson); color:#fff; border-radius:10px; padding:34px 30px; text-align:center; box-shadow:0 20px 48px rgba(220,59,85,0.22); }
  .st-root .str-k { font-size:14px; letter-spacing:0.16em; text-transform:uppercase; color:var(--c-amb); font-weight:700; }
  .st-root .str-n { font-size:40px; font-weight:700; margin-top:8px; }
  .st-branches { display:flex; flex-direction:column; gap:40px; }
  .st-branch { display:grid; grid-template-columns:340px 1fr; gap:0 40px; align-items:center; position:relative; }
  .st-bnode { border-radius:10px; padding:26px 30px; }
  .st-bnode.komp { background:var(--c-deep); color:var(--bg-app); }
  .st-bnode.nkomp { background:var(--c-vio); color:#fff; }
  .st-bnode .stb-n { font-size:30px; font-weight:700; line-height:1.1; }
  .st-bnode .stb-d { font-size:16px; color:rgba(246,245,241,0.72); margin-top:8px; line-height:1.34; }
  .st-leaves { display:flex; flex-wrap:wrap; gap:12px; }
  .st-leaf { background:var(--bg-surface); border:1px solid var(--rule); border-radius:100px; padding:13px 24px; font-size:20px; color:var(--ink-1); font-weight:600; }
  .st-leaf.sub { background:var(--c-rose-50); border-color:transparent; color:var(--brand-crimson); }
  .st-subgroup { display:flex; flex-direction:column; gap:10px; }
  .st-subgroup .stg-label { font-size:14px; letter-spacing:0.12em; text-transform:uppercase; color:var(--ink-3); font-weight:700; }
  .st-subgroup .stg-leaves { display:flex; flex-wrap:wrap; gap:10px; }
  /* dim inactive branch on slide 27 */
  .scale-tree.komp-only .st-branch.nkomp-branch { opacity:0.34; filter:grayscale(0.7); }
  .scale-tree.komp-only .st-branch.nkomp-branch .st-bnode.nkomp { background:var(--ink-mute); }

  /* ---- Two-box comparison + considerations (slide 25) ---- */
  .compare-page { flex:1; display:grid; grid-template-columns:1fr 1fr; gap:36px 36px; grid-template-rows:1fr auto; }
  .cmp-card { border-radius:8px; padding:0; overflow:hidden; border:1px solid var(--rule); display:flex; flex-direction:column; }
  .cmp-head { padding:24px 32px; color:#fff; }
  .cmp-card.komp .cmp-head { background:var(--c-deep); }
  .cmp-card.nkomp .cmp-head { background:var(--c-vio); }
  .cmp-head .ch-k { font-size:13px; letter-spacing:0.14em; text-transform:uppercase; color:var(--c-amb); font-weight:700; }
  .cmp-head .ch-n { font-size:30px; font-weight:700; margin-top:4px; }
  .cmp-body { padding:28px 32px; display:flex; flex-direction:column; gap:18px; background:var(--bg-surface); flex:1; }
  .cmp-body p { margin:0; font-size:23px; line-height:1.42; color:var(--ink-2); padding-left:22px; position:relative; text-wrap:pretty; }
  .cmp-body p::before { content:""; position:absolute; left:0; top:11px; width:8px; height:8px; border-radius:50%; background:var(--brand-crimson); }
  .cmp-body p strong { color:var(--ink-1); font-weight:700; }
  .cmp-consider { grid-column:1 / -1; background:rgba(246,168,39,0.10); border-left:6px solid var(--c-amb); border-radius:4px; padding:26px 34px; display:flex; align-items:center; gap:40px; }
  .cmp-consider .cc-lead { font-size:22px; font-weight:700; color:var(--ink-1); max-width:420px; flex:none; }
  .cmp-consider .cc-items { display:flex; gap:14px; flex-wrap:wrap; }
  .cmp-consider .cc-item { background:#fff; border:1px solid var(--rule); border-radius:100px; padding:12px 24px; font-size:19px; font-weight:600; color:var(--ink-2); }

  /* ---- Paarweise choice example widget (slide 30) ---- */
  .choice-widget { flex:1; display:flex; flex-direction:column; background:var(--bg-surface); border:1px solid var(--rule); border-radius:16px; box-shadow:0 12px 36px rgba(31,36,33,0.08); overflow:hidden; max-width:1500px; margin:0 auto; width:100%; }
  .cw-head { padding:28px 40px; border-bottom:1px solid var(--rule); display:flex; justify-content:space-between; align-items:center; }
  .cw-q { font-size:30px; font-weight:700; color:var(--ink-1); }
  .cw-step { font-size:18px; font-weight:700; color:var(--brand-crimson); letter-spacing:0.04em; background:var(--c-rose-50); padding:8px 18px; border-radius:100px; }
  .cw-body { flex:1; display:grid; grid-template-columns:1fr 96px 1fr; align-items:center; padding:36px 44px; gap:0; }
  .cw-option { border:2px solid var(--rule); border-radius:14px; padding:30px; display:flex; flex-direction:column; align-items:center; gap:22px; background:#fff; cursor:pointer; }
  .cw-option.chosen { border-color:var(--c-grn); box-shadow:0 0 0 4px rgba(42,138,78,0.14); }
  .cw-option .ph { width:100%; height:230px; border-radius:10px; background:repeating-linear-gradient(45deg, rgba(31,36,33,0.05) 0 10px, rgba(31,36,33,0.09) 10px 20px); display:flex; align-items:center; justify-content:center; }
  .cw-option .ph span { font-family:ui-monospace,monospace; font-size:12px; color:var(--ink-mute); text-transform:uppercase; letter-spacing:0.08em; }
  .cw-option .opt-name { font-size:30px; font-weight:700; color:var(--ink-1); }
  .cw-option .opt-pick { font-size:16px; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:var(--ink-mute); }
  .cw-option.chosen .opt-pick { color:var(--c-grn); }
  .cw-vs { display:flex; align-items:center; justify-content:center; font-size:30px; font-weight:700; color:var(--ink-mute); }
  .cw-vs span { width:72px; height:72px; border-radius:50%; background:var(--bg-app); border:1px solid var(--rule); display:flex; align-items:center; justify-content:center; }

  /* ---- Intransitivity cycle (slide 32) ---- */
  .cycle-page { flex:1; display:grid; grid-template-columns:560px 1fr; gap:64px; align-items:center; }
  .cycle-diagram { position:relative; height:540px; }
  .cyc-node { position:absolute; width:170px; height:170px; border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center; color:#fff; gap:4px; box-shadow:0 18px 40px rgba(31,36,33,0.14); }
  .cyc-node .cn-num { font-size:14px; letter-spacing:0.12em; text-transform:uppercase; opacity:0.8; font-weight:700; }
  .cyc-node .cn-name { font-size:30px; font-weight:700; }
  .cyc-node.a { top:0; left:50%; transform:translateX(-50%); background:var(--brand-crimson); }
  .cyc-node.b { bottom:20px; left:10px; background:var(--c-amb); color:var(--c-deep); }
  .cyc-node.c { bottom:20px; right:10px; background:var(--c-vio); }
  .cyc-rel { position:absolute; font-size:40px; font-weight:700; color:var(--ink-1); z-index:3; }
  .cycle-side { display:flex; flex-direction:column; gap:28px; }
  .cycle-side .cs-chain { display:flex; align-items:center; gap:16px; font-size:34px; font-weight:700; color:var(--ink-1); }
  .cycle-side .cs-chain .gt { color:var(--brand-crimson); }
  .cycle-side .cs-note { font-size:26px; line-height:1.4; color:var(--ink-2); background:rgba(220,59,85,0.06); border-left:6px solid var(--brand-crimson); border-radius:4px; padding:24px 30px; text-wrap:pretty; }
  .cycle-side .cs-note strong { color:var(--ink-1); }

  /* ---- Condorcet voting (slide 33) ---- */
  .vote-page { flex:1; display:grid; grid-template-columns:1fr 1fr 1fr 1.1fr; gap:24px; align-items:stretch; }
  .vote-col { background:var(--bg-surface); border:1px solid var(--rule); border-radius:8px; padding:24px 26px; display:flex; flex-direction:column; gap:16px; }
  .vote-col.result { background:var(--c-deep); color:var(--bg-app); }
  .vote-head { font-size:18px; letter-spacing:0.1em; text-transform:uppercase; font-weight:700; color:var(--ink-3); }
  .vote-col.result .vote-head { color:var(--c-amb); }
  .vote-rank { display:flex; flex-direction:column; gap:12px; }
  .vr-item { display:flex; align-items:center; gap:14px; background:#fff; border:1px solid var(--rule); border-radius:8px; padding:14px 18px; }
  .vr-item .vr-pos { width:34px; height:34px; flex:none; border-radius:8px; background:var(--c-rose-50); color:var(--brand-crimson); font-weight:700; font-size:18px; display:flex; align-items:center; justify-content:center; }
  .vr-item .vr-name { font-size:23px; font-weight:600; color:var(--ink-1); }
  .vote-tally { display:flex; flex-direction:column; gap:14px; margin:auto 0; }
  .vt-row { display:flex; align-items:center; justify-content:space-between; font-size:24px; }
  .vt-row .vt-pair { font-weight:600; color:rgba(246,245,241,0.85); }
  .vt-row .vt-pair .win { color:var(--c-amb); font-weight:700; }
  .fic { width:34px; height:34px; object-fit:contain; vertical-align:-10px; margin-right:9px; }
  .vote-col.result .fic { width:26px; height:26px; vertical-align:-7px; margin-right:5px; }
  .vt-row .vt-score { font-weight:700; color:#fff; font-variant-numeric:tabular-nums; }
  .vote-col.result .vr-concl { margin-top:14px; font-size:21px; line-height:1.4; color:rgba(246,245,241,0.92); }
  .vote-col.result .vr-concl strong { color:var(--c-amb); }

  /* ---- Constant-sum allocation widget (slides 41, 42) ---- */
  .alloc-widget { flex:1; display:flex; flex-direction:column; background:var(--bg-surface); border:1px solid var(--rule); border-radius:16px; box-shadow:0 12px 36px rgba(31,36,33,0.08); overflow:hidden; max-width:1400px; margin:0 auto; width:100%; }
  .aw-head { padding:26px 40px; border-bottom:1px solid var(--rule); display:flex; justify-content:space-between; align-items:center; }
  .aw-q { font-size:28px; font-weight:700; color:var(--ink-1); }
  .aw-total { font-size:18px; font-weight:700; color:var(--ink-3); }
  .aw-total b { color:var(--brand-crimson); font-size:24px; }
  .aw-body { flex:1; padding:30px 40px; display:flex; flex-direction:column; gap:20px; justify-content:center; }
  .aw-row { display:grid; grid-template-columns:300px 1fr 110px; gap:24px; align-items:center; }
  .aw-row .aw-name { font-size:25px; font-weight:600; color:var(--ink-1); }
  .aw-bar { height:30px; border-radius:15px; background:var(--bg-app); border:1px solid var(--rule); overflow:hidden; }
  .aw-bar i { display:block; height:100%; border-radius:15px; background:linear-gradient(90deg, var(--c-amb), var(--brand-crimson)); }
  .aw-val { font-size:28px; font-weight:700; color:var(--ink-1); text-align:right; font-variant-numeric:tabular-nums; }
  .aw-val .pts { font-size:16px; font-weight:600; color:var(--ink-mute); }

  /* segment table mini-bars (slide 40) */
  .seg-bar { display:inline-flex; align-items:center; gap:11px; }
  .seg-bar b { min-width:40px; text-align:right; font-variant-numeric:tabular-nums; font-weight:500; color:var(--ink-1); }
  .seg-bar i { display:block; height:14px; border-radius:7px; background:var(--brand-crimson); min-width:2px; }
  .dir-c .form-table td .seg-bar i { background:var(--c-amb); }
  /* S40: groß & aus Distanz lesbar */
  .dir-c .qs-table.big-head thead th { font-size:21px; letter-spacing:0.05em; padding:18px 24px; }
  .qs-table.big-head tbody td { font-size:27px; padding:20px 24px; }
  .qs-table.big-head .seg-bar { gap:14px; }
  .qs-table.big-head .seg-bar b { min-width:50px; font-size:27px; }
  .qs-table.big-head .seg-bar i { height:19px; border-radius:10px; }

  /* ---- Q-Sort board (slide 44) ---- */
  .qsort-page { flex:1; display:grid; grid-template-columns:440px 1fr; gap:56px; }
  .qsort-side { display:flex; flex-direction:column; gap:28px; padding-top:8px; }
  .qsort-board { display:flex; flex-direction:column; gap:18px; justify-content:center; }
  .qsort-ends { display:flex; justify-content:space-between; font-size:20px; font-weight:700; }
  .qsort-ends .qe-l { color:var(--c-grn); }
  .qsort-ends .qe-r { color:var(--brand-crimson); }
  .qsort-cols { display:flex; align-items:flex-end; gap:14px; justify-content:center; }
  .qsort-stack { display:flex; flex-direction:column-reverse; gap:10px; align-items:center; }
  .qsort-cell { width:96px; height:64px; border-radius:8px; border:2px dashed var(--rule-strong); background:var(--bg-surface); }
  /* Spalten-Tönung entlang der Wirksamkeits-Achse (grün → amber → rot) */
  .qsort-cols .qsort-stack:nth-child(1) .qsort-cell { border-color:#2A8A4E; background:color-mix(in oklab, #2A8A4E 9%, var(--bg-surface)); }
  .qsort-cols .qsort-stack:nth-child(2) .qsort-cell { border-color:color-mix(in oklab, #2A8A4E 70%, #F6A827); background:color-mix(in oklab, #2A8A4E 6%, var(--bg-surface)); }
  .qsort-cols .qsort-stack:nth-child(3) .qsort-cell { border-color:color-mix(in oklab, #2A8A4E 45%, #F6A827); background:color-mix(in oklab, #6FA63A 6%, var(--bg-surface)); }
  .qsort-cols .qsort-stack:nth-child(4) .qsort-cell { border-color:color-mix(in oklab, #2A8A4E 20%, #F6A827); background:color-mix(in oklab, #F6A827 6%, var(--bg-surface)); }
  .qsort-cols .qsort-stack:nth-child(5) .qsort-cell { border-color:#F6A827; background:color-mix(in oklab, #F6A827 9%, var(--bg-surface)); }
  .qsort-cols .qsort-stack:nth-child(6) .qsort-cell { border-color:color-mix(in oklab, #F6A827 60%, var(--brand-crimson)); background:color-mix(in oklab, #F6A827 6%, var(--bg-surface)); }
  .qsort-cols .qsort-stack:nth-child(7) .qsort-cell { border-color:color-mix(in oklab, #F6A827 35%, var(--brand-crimson)); background:color-mix(in oklab, var(--brand-crimson) 5%, var(--bg-surface)); }
  .qsort-cols .qsort-stack:nth-child(8) .qsort-cell { border-color:color-mix(in oklab, #F6A827 15%, var(--brand-crimson)); background:color-mix(in oklab, var(--brand-crimson) 6%, var(--bg-surface)); }
  .qsort-cols .qsort-stack:nth-child(9) .qsort-cell { border-color:var(--brand-crimson); background:color-mix(in oklab, var(--brand-crimson) 9%, var(--bg-surface)); }
  .qsort-stack .qcount { font-size:15px; font-weight:700; color:var(--ink-mute); margin-bottom:4px; }
  .qsort-axis { height:6px; border-radius:3px; background:linear-gradient(90deg, var(--c-grn), var(--c-amb) 50%, var(--brand-crimson)); margin-top:6px; }
  .qs-step-n { flex:none; width:36px; height:36px; border-radius:50%; background:var(--brand-crimson); color:#fff; font-size:19px; font-weight:700; display:flex; align-items:center; justify-content:center; }

  /* ---- Slide 130: Einfache vs systematische Zufallsstichproben ---- */
  .rs-cols { flex:1; display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:start; }
  .rs-col { display:flex; flex-direction:column; gap:18px; }
  .rs-head { font-size:24px; font-weight:700; color:#fff; padding:12px 22px; border-radius:8px; text-align:center; }
  .rs-col.einfach .rs-head { background:var(--c-deep); }
  .rs-col.system .rs-head { background:var(--c-vio); }
  .rs-col ul { margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:9px; }
  .rs-col li { font-size:19px; line-height:1.34; color:var(--ink-2); padding-left:20px; position:relative; }
  .rs-col li::before { content:""; position:absolute; left:0; top:10px; width:7px; height:7px; border-radius:50%; background:var(--brand-crimson); }
  .rs-col li em { font-style:italic; color:var(--ink-1); }
  .rs-namebox { display:flex; gap:16px; align-items:flex-start; margin-top:4px; }
  .rs-gutter { display:flex; flex-direction:column; align-items:center; font-size:13px; font-weight:700; color:var(--brand-crimson); text-transform:uppercase; letter-spacing:0.08em; padding-top:6px; width:96px; text-align:center; flex:none; }
  .rs-table { flex:1; border:1px solid var(--rule); border-radius:8px; overflow:hidden; background:var(--bg-surface); }
  .rs-row { display:grid; grid-template-columns:30px 1fr 1fr; align-items:center; border-bottom:1px solid var(--rule); }
  .rs-row:last-child { border-bottom:none; }
  .rs-row span { font-size:15px; padding:5px 10px; color:var(--ink-2); }
  .rs-row .rs-mark { display:flex; align-items:center; justify-content:center; padding:0; }
  .rs-row.sel { background:rgba(246,168,39,0.14); }
  .rs-row.sel span { color:var(--ink-1); font-weight:600; }
  .rs-dot { width:13px; height:13px; border-radius:50%; background:var(--brand-crimson); }
  .rs-itag { font-size:14px; font-style:italic; font-weight:700; color:var(--ink-3); }
  /* Slide 131: strata chips */
  .st-chip { width:42px; height:42px; border-radius:8px; display:flex; align-items:center; justify-content:center; color:#fff; font-size:19px; font-weight:700; flex:none; }
  .st-chip.blu { background:#2A6FDB; }
  .st-chip.red { background:var(--brand-crimson); }
  .st-chip.grn { background:#2A8A4E; }
  .qs-table.compact[data-rs131] td, .qs-table.compact[data-rs131] th { padding:9px 16px; }
  .qs-table.compact[data-rs131] thead th { font-size:18px; letter-spacing:0.04em; }
  /* Slide 132: Cluster-Boxen mit Elementen */
  .kl-box { border:2px solid var(--rule-strong); border-radius:8px; padding:8px; display:flex; gap:7px; background:#fff; }
  .kl-box.sel { border-color:var(--brand-crimson); background:var(--c-rose-50); box-shadow:0 0 0 3px rgba(220,59,85,0.14); }
  .kl-el { width:38px; height:38px; border-radius:7px; display:flex; align-items:center; justify-content:center; color:#fff; font-size:17px; font-weight:700; flex:none; }
  .kl-el.blu { background:#2A6FDB; }
  .kl-el.red { background:var(--brand-crimson); }
  .kl-el.grn { background:#2A8A4E; }
  /* Slide 133: Stärken/Schwächen-Tabelle */
  .ssw { width:100%; border-collapse:collapse; font-size:20px; }
  .ssw th, .ssw td { text-align:left; padding:13px 20px; border-bottom:1px solid var(--rule); vertical-align:top; line-height:1.32; }
  .ssw thead th { font-size:18px; letter-spacing:0.06em; text-transform:uppercase; font-weight:700; color:#fff; }
  .ssw thead th:nth-child(1){ background:var(--c-deep); border-top-left-radius:8px; }
  .ssw thead th:nth-child(2){ background:#2A8A4E; }
  .ssw thead th:nth-child(3){ background:var(--brand-crimson); border-top-right-radius:8px; }
  .ssw .grp td { background:var(--bg-sunken); font-weight:700; font-size:19px; letter-spacing:0.08em; text-transform:uppercase; color:var(--ink-1); padding:11px 20px; }
  .ssw .vf { font-weight:700; color:var(--ink-1); width:24%; }
  .ssw .pos { color:var(--ink-2); width:38%; }
  .ssw .neg { color:var(--ink-2); width:38%; }
  .ssw .pos::before { content:"+ "; color:#2A8A4E; font-weight:700; }
  .ssw .neg::before { content:"− "; color:var(--brand-crimson); font-weight:700; }
  /* Slide 138: Balkendiagramm Informationskanal */
  .hbar { display:flex; flex-direction:column; gap:16px; }
  .hbar-row { display:grid; grid-template-columns:260px 1fr 64px; align-items:center; gap:18px; }
  .hbar-name { font-size:22px; font-weight:600; color:var(--ink-1); text-align:right; line-height:1.2; }
  .hbar-track { display:block; height:34px; background:var(--bg-app); border:1px solid var(--rule); border-radius:8px; overflow:hidden; }
  .hbar-fill { display:block; height:100%; border-radius:8px; background:linear-gradient(90deg, var(--c-deep), var(--brand-crimson)); }
  .hbar-val { font-size:24px; font-weight:700; color:var(--ink-1); font-variant-numeric:tabular-nums; }
  .hbar-row.top .hbar-name { color:var(--brand-crimson); font-weight:700; }
  .hbar-row.top .hbar-val { color:var(--brand-crimson); }
  /* Slide 139: Fehlerspanne — Konfidenzband / Error-Bar */
  .eb-wrap { display:flex; flex-direction:column; gap:30px; }
  .eb-scale { position:relative; height:200px; }
  .eb-axis { position:absolute; left:0; right:0; bottom:64px; height:3px; background:var(--rule-strong); border-radius:2px; }
  .eb-band { position:absolute; bottom:46px; height:40px; background:rgba(220,59,85,0.16); border-left:2px dashed var(--brand-crimson); border-right:2px dashed var(--brand-crimson); }
  .eb-point { position:absolute; bottom:66px; width:0; }
  .eb-dot { position:absolute; left:0; bottom:-9px; width:20px; height:20px; border-radius:50%; background:var(--brand-crimson); transform:translateX(-50%); box-shadow:0 0 0 5px rgba(220,59,85,0.18); }
  .eb-pointlbl { position:absolute; left:0; bottom:18px; transform:translateX(-50%); font-size:34px; font-weight:800; color:var(--brand-crimson); white-space:nowrap; }
  .eb-tick { position:absolute; bottom:54px; width:2px; height:20px; background:var(--ink-mute); transform:translateX(-50%); }
  .eb-ticklbl { position:absolute; bottom:24px; transform:translateX(-50%); font-size:20px; font-weight:600; color:var(--ink-3); white-space:nowrap; }
  .eb-bracket { position:absolute; bottom:0; left:0; right:0; display:flex; justify-content:center; }
  .eb-bracket span { font-size:24px; font-weight:700; color:var(--ink-1); background:var(--c-rose-50); padding:8px 22px; border-radius:100px; }
  /* Slide 140: Fehlerspanne-Formeln */
  .fcards { flex:1; display:grid; grid-template-columns:1fr 1fr; gap:36px; align-items:stretch; }
  .fcard { display:flex; flex-direction:column; border:1px solid var(--rule); border-radius:14px; overflow:hidden; }
  .fcard-head { padding:18px 30px; color:#fff; }
  .fcard.mw .fcard-head { background:var(--c-deep); }
  .fcard.vh .fcard-head { background:var(--c-vio); }
  .fcard-head .fk { font-size:17px; letter-spacing:0.12em; text-transform:uppercase; color:var(--c-amb); font-weight:700; }
  .fcard-head .fn { font-size:30px; font-weight:700; margin-top:2px; }
  .fcard-head .fd { font-size:20px; opacity:0.88; margin-top:5px; }
  .fcard-body { flex:1; background:var(--bg-surface); padding:30px 34px; display:flex; flex-direction:column; gap:26px; }
  .formula { display:flex; align-items:center; justify-content:center; gap:14px; font-size:40px; font-weight:700; color:var(--ink-1); padding:18px 0; }
  .formula .var { font-style:italic; font-family:Georgia, "Times New Roman", serif; }
  .formula .op { color:var(--ink-mute); }
  .frac { display:inline-flex; flex-direction:column; text-align:center; }
  .frac .num { padding:0 10px 4px; border-bottom:3px solid var(--ink-1); }
  .frac .den { padding:4px 10px 0; }
  .sqrt { display:inline-flex; align-items:flex-start; }
  .sqrt .rad { font-size:46px; line-height:0.9; }
  .sqrt .under { border-top:3px solid var(--ink-1); padding:4px 8px 0; margin-top:6px; }
  .leg { display:flex; flex-direction:column; gap:11px; border-top:1px solid var(--rule); padding-top:20px; }
  .leg-row { display:grid; grid-template-columns:46px 1fr; gap:14px; align-items:baseline; font-size:21px; color:var(--ink-2); line-height:1.3; }
  .leg-row .lv { font-style:italic; font-family:Georgia, serif; font-weight:700; color:var(--brand-crimson); text-align:center; font-size:23px; }
  /* Slide 140 v2: sauberer Formel-Satz */
  .mrow { display:inline-flex; align-items:center; gap:12px; font-family:Georgia,"Times New Roman",serif; color:var(--ink-1); }
  .mrow .v { font-style:italic; }
  .mrow .op { font-style:normal; color:var(--ink-mute); }
  .mfrac { display:inline-flex; flex-direction:column; text-align:center; }
  .mfrac .nu { padding:0 12px 5px; border-bottom:3px solid currentColor; }
  .mfrac .de { padding:5px 12px 0; }
  .msqrt { display:inline-flex; align-items:flex-start; }
  .msqrt .rad { font-size:1.7em; line-height:0.85; margin-right:1px; font-style:normal; }
  .msqrt .rc { border-top:3px solid currentColor; padding:7px 10px 0; }
  .fb-top { display:flex; flex-direction:column; align-items:center; gap:16px; }
  .fb-top .mrow { font-size:52px; }
  .fb-top .hat { position:relative; }
  .leg-h { display:flex; gap:30px; flex-wrap:wrap; justify-content:center; }
  .leg-h span { font-size:19px; color:var(--ink-2); }
  .leg-h b { font-style:italic; font-family:Georgia,serif; color:var(--brand-crimson); font-weight:700; }
  /* Slides 141/142: Annotationen über Formelbildern */
  .fml-wrap { position:relative; display:inline-block; }
  .anno-ell { position:absolute; border:4px solid var(--brand-crimson); border-radius:50%; transform:rotate(-10deg); pointer-events:none; }
  .anno-ell.grn { border-color:#2A8A4E; }
  .anno-lbl { position:absolute; font-weight:700; font-size:22px; white-space:nowrap; color:var(--brand-crimson); }
  .anno-lbl.grn { color:#2A8A4E; }
  .anno-arr { position:absolute; height:0; border-top:3px solid var(--brand-crimson); transform-origin:left center; pointer-events:none; }
  .anno-arr.grn { border-top-color:#2A8A4E; }
  .anno-arr::after { content:""; position:absolute; right:-2px; top:-6px; border-top:6px solid transparent; border-bottom:6px solid transparent; border-left:11px solid var(--brand-crimson); }
  .anno-arr.grn::after { border-left-color:#2A8A4E; }
  .kl-cluster { width:66px; height:66px; border-radius:10px; border:2px dashed var(--rule-strong); background:var(--bg-surface); display:flex; align-items:center; justify-content:center; font-size:24px; font-weight:700; color:var(--ink-3); }
  .kl-cluster.sel { border-style:solid; border-color:var(--brand-crimson); background:var(--c-rose-50); color:var(--brand-crimson); }
  .qs-table.big-head.compact tbody td { padding:11px 24px; font-size:23px; }
  .qs-table.big-head.compact thead th { padding:12px 24px; }

  /* ---- Typologie overview: 3 category boxes (slide 12) ---- */
  .typ-overview { flex:1; display:grid; grid-template-columns:repeat(3,1fr); gap:32px; align-items:stretch; }
  .typ-box { display:flex; flex-direction:column; border-radius:10px; overflow:hidden; border:1px solid var(--rule); }
  .typ-box .tb-head { padding:30px 34px; color:#fff; }
  .typ-box:nth-child(1) .tb-head { background:var(--c-deep); }
  .typ-box:nth-child(2) .tb-head { background:var(--c-vio); }
  .typ-box:nth-child(3) .tb-head { background:var(--brand-crimson); }
  .typ-box .tb-k { font-size:15px; letter-spacing:0.14em; text-transform:uppercase; color:var(--c-amb); font-weight:700; }
  .typ-box .tb-n { font-size:36px; font-weight:700; margin-top:8px; line-height:1.06; }
  .typ-box .tb-body { flex:1; background:var(--bg-surface); padding:30px 34px; display:flex; flex-direction:column; gap:16px; }
  .typ-item { display:flex; flex-direction:column; gap:4px; padding-left:24px; position:relative; }
  .typ-item::before { content:""; position:absolute; left:0; top:14px; width:9px; height:9px; border-radius:50%; background:var(--brand-crimson); }
  .typ-item .ti-n { font-size:28px; font-weight:700; color:var(--ink-1); }
  .typ-item .ti-s { font-size:18px; font-style:italic; color:var(--ink-3); }

  /* ===== Kapitel 5 — shared helpers (note card, raw-data strip) ===== */
  .k5note { background:#f4f3f0; border-radius:8px; padding:20px 28px; box-shadow:0 10px 26px rgba(31,36,33,0.10); }
  .k5note .nt { font-size:24px; font-weight:700; color:var(--ink-1); margin-bottom:8px; }
  .k5note p { margin:0; font-size:25px; line-height:1.4; color:var(--ink-2); }
  .k5note p strong { color:var(--ink-1); }
  .rawcell { background:#e3eefb; color:var(--ink-1); font-variant-numeric:tabular-nums; font-size:16px; text-align:center; padding:4px 8px; }
  .rawwrap { display:flex; flex-wrap:wrap; gap:3px; background:#cfe0f5; padding:3px; border-radius:4px; }
  .k5cap { font-size:20px; color:var(--ink-2); text-align:center; margin-bottom:6px; font-weight:600; }
  .k5ring { display:inline-block; border:3px solid #E8A33B; border-radius:50%; padding:1px 9px; font-weight:700; color:var(--ink-1); }

  /* ---- Triangulation converge layout (slide 16) ---- */
  .tri-converge { display:grid; grid-template-columns:380px 120px auto; align-items:center; gap:0; }
  .tri-methods { display:flex; flex-direction:column; gap:22px; }
  .tri-m { background:var(--bg-surface); border:1px solid var(--rule); border-left:6px solid var(--c-vio); border-radius:8px; padding:24px 30px; font-size:28px; font-weight:700; color:var(--ink-1); box-shadow:0 8px 22px rgba(31,36,33,0.06); }
  .tri-m:nth-child(1){ border-left-color:var(--brand-crimson); }
  .tri-m:nth-child(2){ border-left-color:var(--c-amb); }
  .tri-arrows { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; }
  .tri-arrows .ta { width:90px; height:3px; background:var(--rule-strong); position:relative; }
  .tri-arrows .ta::after { content:""; position:absolute; right:-2px; top:50%; transform:translateY(-50%); border-top:9px solid transparent; border-bottom:9px solid transparent; border-left:14px solid var(--rule-strong); }

  /* ---- Ranked-list widget (slides 36, 37) ---- */
  .ranklist { flex:1; display:flex; flex-direction:column; gap:14px; max-width:1300px; width:100%; margin:0 auto; }
  .rl-intro { font-size:21px; color:var(--ink-2); line-height:1.4; margin:0 0 6px; }
  .rl-row { display:grid; grid-template-columns:64px 1fr auto; gap:24px; align-items:center; background:var(--bg-surface); border:1px solid var(--rule); border-radius:12px; padding:18px 26px; }
  .rl-pos { width:52px; height:52px; border-radius:12px; background:var(--brand-crimson); color:#fff; font-size:26px; font-weight:800; display:flex; align-items:center; justify-content:center; }
  .rl-row:nth-child(2) .rl-pos { background:var(--c-amb); color:var(--c-deep); }
  .rl-row:nth-child(3) .rl-pos { background:var(--c-vio); }
  .rl-name { font-size:27px; font-weight:600; color:var(--ink-1); }
  .rl-handle { display:flex; flex-direction:column; gap:4px; }
  .rl-handle span { width:26px; height:3px; border-radius:2px; background:var(--ink-mute); }

  /* ---- Slide 7: Iceberg metaphor (source art + native QS labels) ---- */
  .slide.iceberg { padding:0; overflow:hidden; }
  .iceberg .ice-bg { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
  .iceberg .rail-top, .iceberg .rail-bottom { z-index:4; }
  .iceberg .rail-bottom { color:var(--ink-2); text-shadow:0 1px 2px rgba(255,255,255,0.65); }
  .iceberg .ice-title { position:absolute; left:50%; transform:translateX(-50%); top:52px; margin:0; z-index:4; font-size:74px; font-weight:700; letter-spacing:-0.02em; color:var(--ink-1); text-align:center; }
  .iceberg .ice-title::after { content:""; display:block; width:84px; height:5px; background:var(--brand-crimson); margin:16px auto 0; border-radius:2px; }
  .iceberg .ice-layer { position:absolute; inset:0; z-index:3; pointer-events:none; }
  .iceberg .ice-waterline { position:absolute; background:var(--brand-crimson); z-index:0; border-radius:2px; }
  .iceberg .il { z-index:2; }
  .il { position:absolute; transform:translate(-50%,-50%); font-family:var(--font-sans); text-align:center; line-height:1.18; }
  .il.sym { background:rgba(255,255,255,0.88); color:var(--ink-1); font-size:21px; font-weight:600; padding:9px 15px; border-radius:9px; box-shadow:0 4px 14px rgba(31,36,33,0.14); max-width:230px; }
  .il.role { display:flex; align-items:center; gap:10px; background:var(--c-deep); color:#fff; font-size:21px; font-weight:700; padding:11px 20px; border-radius:100px; box-shadow:0 6px 18px rgba(0,0,0,0.24); white-space:nowrap; }
  .il.role .rdot { width:9px; height:9px; border-radius:50%; background:var(--c-amb); flex:none; }
  .il.badge { padding:15px 22px; border-radius:11px; box-shadow:0 10px 28px rgba(31,36,33,0.24); max-width:560px; }
  .il.badge .bk { display:block; font-size:13px; letter-spacing:0.12em; text-transform:uppercase; font-weight:800; margin-bottom:5px; }
  .il.badge .bt { font-size:23px; font-weight:800; line-height:1.2; }
  .il.badge.sympt { background:#fff; color:var(--ink-1); }
  .il.badge.sympt .bk { color:var(--brand-crimson); }
  .il.badge.problem { background:var(--brand-crimson); color:#fff; }
  .il.badge.problem .bk { color:var(--c-amb); }
  /* ---- Slide 16: Triangulation Venn (source art + native QS labels) ---- */
  .tri16 { flex:1; display:grid; grid-template-columns:540px 1fr; gap:56px; align-items:center; }
  .tri16-side { display:flex; flex-direction:column; gap:26px; }
  .tri16-lead { font-size:40px; font-weight:700; line-height:1.3; color:var(--ink-1); margin:0; text-wrap:pretty; }
  .tri16-lead .ld-term { color:var(--brand-crimson); }
  .tri16-source { font-size:18px; font-style:italic; color:var(--ink-3); margin:0; border-top:1px solid var(--rule); padding-top:20px; }
  .tri16-venn { position:relative; width:880px; aspect-ratio:451/336; margin:0 auto; }
  .tri16-venn img { width:100%; height:100%; display:block; }
  .vlabel { position:absolute; transform:translate(-50%,-50%); font-weight:700; text-align:center; line-height:1.1; white-space:nowrap; }
  .vlabel.method { color:var(--c-deep); font-size:27px; text-shadow:0 1px 0 rgba(255,255,255,0.4); }
  .vlabel.wahrheit { color:var(--ink-1); font-size:24px; letter-spacing:0.16em; text-transform:uppercase; font-weight:700; text-align:left; transform:translateY(-50%); }
  .vlabel.wahrheit .wh-tag { display:block; font-size:13px; letter-spacing:0.14em; color:var(--brand-crimson); margin-bottom:3px; }
  /* ---- Slide 20: Messung (Bild links, Definition + Regeln rechts) ---- */
  .messung20 { flex:1; display:grid; grid-template-columns:0.96fr 1.04fr; gap:56px; align-items:center; }
  .messung20-img { display:flex; align-items:center; justify-content:center; }
  .messung20-img img { width:100%; max-width:720px; max-height:700px; object-fit:contain; filter:drop-shadow(0 22px 44px rgba(31,36,33,0.16)); }
  .messung20-text { display:flex; flex-direction:column; gap:24px; }
  .messung20 .def-hero { padding:36px 40px; }
  .messung20 .def-hero .def-text { font-size:34px; line-height:1.32; }
  .m20-rules { display:flex; flex-direction:column; gap:14px; }
  .m20-rule { display:flex; align-items:center; gap:18px; background:var(--bg-surface); border:1px solid var(--rule); border-left:5px solid var(--brand-crimson); border-radius:6px; padding:18px 26px; }
  .m20-rule:nth-child(2){ border-left-color:var(--c-amb); }
  .m20-rule:nth-child(3){ border-left-color:var(--c-vio); }
  .m20-rule .rn { width:40px; height:40px; flex:none; border-radius:50%; background:var(--brand-crimson); color:#fff; font-size:20px; font-weight:700; display:flex; align-items:center; justify-content:center; }
  .m20-rule:nth-child(2) .rn{ background:var(--c-amb); color:var(--c-deep); }
  .m20-rule:nth-child(3) .rn{ background:var(--c-vio); }
  .m20-rule .rt { font-size:23px; line-height:1.34; color:var(--ink-2); font-weight:500; }
  .m20-rule .rt strong { color:var(--ink-1); font-weight:700; }

  /* ---- Slides 24/27: Skalierungs-Baum (Verschachtelung + Wurzel-Split) ---- */
  .stree { flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:0; }
  .stree-root { background:var(--brand-crimson); color:#fff; border-radius:12px; padding:16px 52px; text-align:center; box-shadow:0 16px 36px rgba(220,59,85,0.22); }
  .stree-root .k { font-size:13px; letter-spacing:0.16em; text-transform:uppercase; color:var(--c-amb); font-weight:700; }
  .stree-root .n { font-size:30px; font-weight:700; margin-top:2px; }
  .stree-stem { width:3px; height:26px; background:var(--rule-strong); }
  .stree-bar { width:50%; height:3px; background:var(--rule-strong); }
  .stree-branches { display:grid; grid-template-columns:1fr 1fr; gap:0; width:100%; align-items:start; }
  .stree-col { display:flex; flex-direction:column; align-items:center; padding:0 22px; }
  .stree-col .drop { width:3px; height:22px; background:var(--rule-strong); }
  .stree-branch { width:100%; border:2px solid var(--rule); border-radius:14px; overflow:hidden; }
  .stree-branch.komp { border-color:var(--c-deep); }
  .stree-branch.nkomp { border-color:var(--c-vio); }
  .sb-head { padding:20px 28px; color:#fff; }
  .komp .sb-head { background:var(--c-deep); }
  .nkomp .sb-head { background:var(--c-vio); }
  .sb-head .t { font-size:27px; font-weight:700; }
  .sb-head .d { font-size:15px; opacity:0.82; margin-top:3px; }
  .sb-body { padding:24px 26px; background:var(--bg-surface); display:flex; flex-direction:column; gap:16px; }
  .sb-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
  .sleaf { background:#fff; border:1px solid var(--rule); border-radius:9px; padding:15px 20px; font-size:20px; font-weight:600; color:var(--ink-1); text-align:center; }
  .snest { border:2px solid var(--c-vio); border-radius:12px; padding:16px 18px 18px; background:rgba(107,76,143,0.07); }
  .snest-head { display:flex; align-items:center; gap:11px; font-size:20px; font-weight:700; color:var(--c-vio); margin-bottom:14px; }
  .snest-head::before { content:""; width:10px; height:10px; border-radius:50%; background:var(--c-vio); flex:none; }
  .snest-leaves { display:grid; grid-template-columns:1fr 1fr 1fr; gap:10px; }
  .snest .sleaf { border-color:rgba(107,76,143,0.32); color:var(--c-vio); font-size:18px; }
  .stree.komp-only .stree-branch.nkomp { opacity:0.42; filter:grayscale(0.6); }
  .stree.komp-only .stree-branch.nkomp .sb-head { background:var(--ink-mute); }
  .stree.komp-only .stree-branch.nkomp .snest { border-color:var(--ink-mute); }
  .stree.komp-only .stree-branch.nkomp .snest .sleaf { color:var(--ink-3); }

  /* ---- Slide 30: Paarweise Vergleiche — 7-Punkt-Präferenzskala ---- */
  .pw-body { flex:1; display:flex; flex-direction:column; justify-content:center; gap:46px; padding:40px 60px; }
  .pw-options { display:grid; grid-template-columns:1fr 1fr; gap:60px; }
  .pw-opt { background:var(--bg-sunken); border:1px solid var(--rule); border-radius:12px; padding:26px 30px; text-align:center; }
  .pw-opt-label { font-size:14px; letter-spacing:0.14em; text-transform:uppercase; color:var(--ink-3); font-weight:700; margin-bottom:14px; }
  .pw-specs { display:flex; flex-direction:column; gap:8px; }
  .pw-specs .spec { font-size:27px; font-weight:700; color:var(--ink-1); }
  .pw-specs .spec em { font-style:normal; color:var(--brand-crimson); }
  .pw-scale { display:grid; grid-template-columns:repeat(7,1fr); row-gap:18px; position:relative; }
  .pw-scale::before { content:""; position:absolute; top:23px; left:7.1%; right:7.1%; height:2px; background:var(--rule); z-index:0; }
  .pw-dot { grid-row:1; justify-self:center; width:46px; height:46px; border-radius:50%; border:3px solid var(--rule-strong); background:#fff; position:relative; z-index:1; }
  .pw-dot.sel { border-color:var(--brand-crimson); background:var(--brand-crimson); box-shadow:0 0 0 5px rgba(220,59,85,0.16); }
  .pw-lab { grid-row:2; font-size:17px; font-weight:600; color:var(--ink-2); text-align:center; line-height:1.25; }
  .pw-lab.end { color:var(--ink-1); font-weight:700; }
  .pw-lab.neutral { color:var(--ink-mute); font-weight:500; }

  /* ---- Slide 32: Direkter Widerspruch (ein Proband, dieselbe Paarung) ---- */
  .contra { flex:1; display:flex; flex-direction:column; justify-content:center; gap:42px; max-width:1280px; margin:0 auto; width:100%; }
  .contra-intro { font-size:34px; font-weight:700; color:var(--ink-1); text-align:center; margin:0; text-wrap:pretty; }
  .contra-intro strong { color:var(--brand-crimson); }
  .contra-rows { display:flex; flex-direction:column; gap:24px; align-items:center; }
  .contra-row { display:flex; align-items:center; gap:30px; }
  .contra-vlabel { font-size:15px; letter-spacing:0.12em; text-transform:uppercase; color:var(--ink-3); font-weight:700; width:150px; text-align:right; }
  .fruit { display:inline-flex; align-items:center; justify-content:center; gap:14px; padding:18px 40px; border-radius:14px; font-size:33px; font-weight:700; color:var(--ink-1); border:2px solid; min-width:240px; }
  .fruit::before { content:""; width:20px; height:20px; border-radius:50%; flex:none; }
  .fruit.apfel { background:rgba(42,138,78,0.10); border-color:#2A8A4E; }
  .fruit.apfel::before { background:#2A8A4E; }
  .fruit.tomate { background:rgba(220,59,85,0.08); border-color:var(--brand-crimson); }
  .fruit.tomate::before { background:var(--brand-crimson); }
  .contra-gt { font-size:46px; font-weight:700; color:var(--ink-2); }
  .contra-note { font-size:24px; line-height:1.45; color:var(--ink-2); background:rgba(220,59,85,0.06); border-left:6px solid var(--brand-crimson); border-radius:4px; padding:24px 32px; text-align:center; text-wrap:pretty; }
  .contra-note strong { color:var(--ink-1); }
  /* ---- Slide 36: zwei Erhebungs-Methoden für Rangordnungen ---- */
  .ex36 { flex:1; display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:stretch; }
  .ex-method { display:flex; flex-direction:column; background:var(--bg-surface); border:1px solid var(--rule); border-radius:14px; overflow:hidden; box-shadow:0 10px 28px rgba(31,36,33,0.07); }
  .ex-mhead { display:flex; align-items:center; gap:14px; padding:18px 26px; border-bottom:1px solid var(--rule); }
  .ex-mbadge { font-size:13px; letter-spacing:0.1em; text-transform:uppercase; font-weight:700; color:#fff; background:var(--brand-crimson); padding:7px 15px; border-radius:100px; }
  .ex-method.b .ex-mbadge { background:var(--c-vio); }
  .ex-mtitle { font-size:20px; font-weight:700; color:var(--ink-1); }
  .ex-q { font-size:19px; color:var(--ink-2); padding:18px 26px 0; line-height:1.4; font-style:italic; }
  .ex-mbody { flex:1; padding:20px 26px 26px; }
  .dd-cols { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
  .dd-col-t { font-size:13px; letter-spacing:0.08em; text-transform:uppercase; color:var(--ink-3); font-weight:700; margin-bottom:12px; }
  .dd-pool, .dd-rank { display:flex; flex-direction:column; gap:9px; }
  .dd-chip { display:flex; align-items:center; gap:11px; background:#fff; border:1px solid var(--rule); border-radius:8px; padding:13px 15px; font-size:18px; color:var(--ink-1); font-weight:600; }
  .dd-chip.muted { color:var(--ink-3); background:var(--bg-app); font-weight:500; }
  .dd-grip { display:grid; grid-template-columns:repeat(2,3px); grid-template-rows:repeat(3,3px); gap:3px; flex:none; }
  .dd-grip i { width:3px; height:3px; background:var(--ink-mute); border-radius:50%; }
  .dd-rrow { display:flex; align-items:center; gap:11px; }
  .dd-rnum { width:34px; height:34px; flex:none; border-radius:9px; background:var(--c-amb); color:var(--c-deep); font-weight:800; font-size:18px; display:flex; align-items:center; justify-content:center; }
  .dd-rrow .dd-chip { flex:1; }
  .mx { display:flex; flex-direction:column; }
  .mx-row { display:grid; grid-template-columns:1.5fr repeat(6,1fr); align-items:center; gap:8px; padding:10px 0; border-bottom:1px solid var(--rule); }
  .mx-row.head { border-bottom:2px solid var(--rule-strong); padding-bottom:8px; }
  .mx-label { font-size:16px; color:var(--ink-1); font-weight:600; line-height:1.18; }
  .mx-h { font-size:14px; font-weight:700; color:var(--ink-3); text-align:center; }
  .mx-cell { justify-self:center; width:32px; height:32px; border-radius:50%; border:2px solid var(--rule-strong); }
  .mx-cell.sel { background:var(--brand-crimson); border-color:var(--brand-crimson); color:#fff; font-weight:800; font-size:16px; display:flex; align-items:center; justify-content:center; }

  /* ---- Slide 37: Drag-auf-Skala (grafische Einordnung) ---- */
  .s37 { flex:1; display:flex; padding:18px 56px 28px; }
  .s37-stage { position:relative; flex:1; }
  .s37-fruit { position:absolute; bottom:70px; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; }
  .s37-card { background:#fff; border:1px solid var(--rule); border-radius:14px; padding:11px 20px 11px 13px; display:flex; align-items:center; gap:13px; box-shadow:0 10px 26px rgba(31,36,33,0.13); }
  .s37-card img { width:62px; height:62px; object-fit:contain; }
  .s37-card span { font-size:21px; font-weight:700; color:var(--ink-1); white-space:nowrap; }
  .s37-stem { width:2px; background:var(--ink-mute); }
  .s37-dot { width:15px; height:15px; border-radius:50%; background:var(--ink-1); border:3px solid #fff; box-shadow:0 0 0 2px var(--ink-mute); }
  .s37-scale { position:absolute; left:0; right:0; bottom:46px; }
  .s37-track { height:24px; border-radius:12px; background:linear-gradient(90deg, var(--brand-crimson), var(--c-amb) 50%, var(--c-grn)); }
  .s37-ends { display:flex; justify-content:space-between; margin-top:14px; }
  .s37-ends span { font-size:22px; font-weight:700; }
  .s37-ends .l { color:var(--brand-crimson); }
  .s37-ends .r { color:var(--c-grn); }

  /* ---- Slide 38: verschachtelte Vorteile (Unterpunkte ggü. paarweisen Vergleichen) ---- */
  .pc-sub { list-style:none; margin:14px 0 2px; padding:0 0 0 8px; display:flex; flex-direction:column; gap:12px; border-left:3px solid rgba(42,138,78,0.35); }
  .pc-sub li { font-size:22px; line-height:1.35; color:var(--ink-2); padding-left:24px; position:relative; }
  .pc-sub li::before { content:""; position:absolute; left:0; top:10px; width:9px; height:9px; border-radius:50%; background:var(--c-grn); }
  .pc-card.cons .pc-sub { border-left-color:rgba(220,59,85,0.35); }
  .pc-card.cons .pc-sub li::before { background:var(--brand-crimson); }

  /* ---- Slide 41: Geldspiel (Münzen verteilen, Konstantsumme) ---- */
  .coin-sum { font-size:18px; font-weight:700; color:var(--ink-3); }
  .coin-sum b { color:var(--c-grn); font-size:24px; }
  .coin-sum .chk { color:var(--c-grn); margin-left:6px; }
  .coin-body { flex:1; display:grid; grid-template-columns:210px 1fr; gap:36px; padding:26px 36px 30px; align-items:center; }
  .coin-pool { display:flex; flex-direction:column; align-items:center; gap:12px; }
  .coin-pool .pile { display:flex; flex-direction:column-reverse; gap:3px; align-items:center; }
  .coin-pool .pile .coin { width:80px; }
  .coin-pool .pool-lbl { font-size:24px; font-weight:700; color:var(--ink-1); }
  .coin-pool .pool-sub { font-size:14px; letter-spacing:0.1em; text-transform:uppercase; color:var(--ink-3); font-weight:700; }
  .coin-pool .reset { font-size:16px; color:var(--brand-crimson); font-weight:600; text-decoration:underline; }
  .coin { height:9px; border-radius:50%; background:radial-gradient(ellipse at 50% 32%, #F6D784, #E0A93A 68%, #B07E1E); box-shadow:0 1px 1px rgba(31,36,33,0.18); }
  .coin-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
  .coin-cell { background:#fff; border:1px solid var(--rule); border-radius:10px; padding:14px 18px; display:flex; flex-direction:column; justify-content:space-between; gap:10px; min-height:104px; }
  .coin-cell.zero { background:var(--bg-app); }
  .cc-name { font-size:18px; font-weight:600; color:var(--ink-1); line-height:1.2; }
  .coin-cell.zero .cc-name { color:var(--ink-3); }
  .cc-val { display:flex; align-items:flex-end; justify-content:space-between; gap:10px; }
  .cc-eur { font-size:27px; font-weight:700; color:var(--ink-1); white-space:nowrap; }
  .coin-cell.zero .cc-eur { color:var(--ink-mute); font-weight:500; }
  .cc-stack { display:flex; flex-direction:column-reverse; gap:2px; }
  .cc-stack .coin { width:40px; }

  /* ---- Slide 42: drei Eingabe-Methoden (mit Summen-Check) ---- */
  .ex42 { flex:1; display:grid; grid-template-columns:repeat(3,1fr); gap:28px; align-items:stretch; }
  .ex42 .ex-q { font-size:16px; padding:14px 24px 0; min-height:64px; }
  .ex42 .ex-mbody { padding:18px 24px 22px; display:flex; flex-direction:column; }
  .ex-foot { margin-top:auto; padding-top:16px; border-top:1px solid var(--rule); font-size:18px; font-weight:700; color:var(--ink-3); display:flex; justify-content:space-between; }
  .ex-foot b { color:var(--c-grn); }
  .sl-row { display:grid; grid-template-columns:1fr 52px; align-items:center; column-gap:12px; margin-bottom:16px; }
  .sl-name { grid-column:1 / -1; font-size:16px; font-weight:600; color:var(--ink-1); margin-bottom:8px; }
  .sl-track { height:6px; background:var(--rule); border-radius:3px; position:relative; }
  .sl-fill { position:absolute; left:0; top:0; bottom:0; background:var(--c-amb); border-radius:3px; }
  .sl-track i { position:absolute; top:50%; transform:translate(-50%,-50%); width:22px; height:22px; border-radius:50%; background:var(--c-amb); border:3px solid #fff; box-shadow:0 1px 5px rgba(0,0,0,0.25); }
  .sl-val { font-size:18px; font-weight:700; text-align:right; font-variant-numeric:tabular-nums; color:var(--ink-1); }
  .nf-row { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:16px; }
  .nf-row span { font-size:18px; font-weight:600; color:var(--ink-1); }
  .nf-box { width:66px; height:42px; border:2px solid var(--rule-strong); border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:21px; font-weight:700; font-variant-numeric:tabular-nums; background:#fff; flex:none; }
  .cb-row { display:grid; grid-template-columns:84px 1fr 52px; align-items:center; gap:12px; margin-bottom:18px; }
  .cb-name { font-size:18px; font-weight:700; color:var(--c-vio); }
  .cb-bar { height:28px; background:var(--bg-app); border:1px solid var(--rule); border-radius:6px; overflow:hidden; }
  .cb-bar i { display:block; height:100%; background:var(--c-grn); }
  .cb-val { font-size:18px; font-weight:700; text-align:right; font-variant-numeric:tabular-nums; color:var(--ink-1); }

  /* ============================================================
     KAPITEL 2 · REMAINDER (Slides 45–77) · additional components
     ============================================================ */
  /* nicht-komparativer Fokus im Baum (Spiegel von komp-only) */
  .stree.nkomp-only .stree-branch.komp { opacity:0.42; filter:grayscale(0.6); }
  .stree.nkomp-only .stree-branch.komp .sb-head { background:var(--ink-mute); }

  /* ---- Slide 47: Kontinuierliche Ratingskalen (Versionen) ---- */
  .crate { flex:1; display:flex; flex-direction:column; background:var(--bg-surface); border:1px solid var(--rule); border-radius:16px; box-shadow:0 12px 36px rgba(31,36,33,0.08); overflow:hidden; max-width:1500px; margin:0 auto; width:100%; }
  .crate-head { padding:24px 40px; border-bottom:1px solid var(--rule); }
  .crate-q { font-size:27px; font-weight:700; color:var(--ink-1); }
  .crate-q em { font-style:normal; color:var(--brand-crimson); }
  .crate-body { flex:1; display:flex; flex-direction:column; justify-content:center; gap:34px; padding:34px 48px; }
  .cv-block { display:grid; grid-template-columns:104px 1fr; align-items:center; gap:28px; }
  .cv-tag { font-size:15px; letter-spacing:0.1em; text-transform:uppercase; font-weight:700; color:var(--brand-crimson); }
  .cl-row { display:grid; grid-template-columns:240px 1fr 240px; align-items:center; column-gap:26px; }
  .cl-end { font-size:21px; font-weight:600; color:var(--ink-2); }
  .cl-end.r { text-align:right; }
  .cl-track { position:relative; height:4px; background:var(--ink-1); border-radius:2px; }
  .cl-track::before, .cl-track::after { content:""; position:absolute; top:-9px; width:4px; height:22px; background:var(--ink-1); border-radius:2px; }
  .cl-track::before { left:0; } .cl-track::after { right:0; }
  .cl-x { position:absolute; top:50%; width:28px; height:28px; transform:translate(-50%,-50%); }
  .cl-x::before, .cl-x::after { content:""; position:absolute; left:50%; top:50%; width:28px; height:4px; background:var(--brand-crimson); border-radius:2px; }
  .cl-x::before { transform:translate(-50%,-50%) rotate(45deg); }
  .cl-x::after { transform:translate(-50%,-50%) rotate(-45deg); }
  .cl-scale { display:flex; justify-content:space-between; }
  .cl-scale span { font-size:15px; color:var(--ink-3); font-variant-numeric:tabular-nums; }
  .cl-anchors { display:flex; justify-content:space-between; }
  .crate-stack { display:flex; flex-direction:column; gap:24px; }
  .cl-anchors span { font-size:17px; font-weight:600; color:var(--ink-2); }
  /* S47 in method-page layout + Version-4 Slider */
  .method-page .crate { max-width:none; margin:0; }
  .cl-srail { position:relative; height:6px; background:var(--rule); border-radius:3px; margin-top:11px; }
  .cl-shandle { position:absolute; top:50%; width:26px; height:26px; transform:translate(-50%,-50%); border-radius:7px; background:#fff; border:2px solid var(--brand-crimson); box-shadow:0 2px 6px rgba(31,36,33,0.2); }
  .cl-shandle b { position:absolute; top:26px; left:50%; transform:translateX(-50%); font-size:15px; font-weight:700; color:var(--brand-crimson); font-variant-numeric:tabular-nums; }
  .crate-stack.v4 { padding-bottom:18px; }

  /* ---- Slide 48: Perception Analyzer (Echtzeit-Messung) ---- */
  .pa-page { flex:1; display:grid; grid-template-columns:0.95fr 1.05fr; gap:48px; align-items:center; }
  .pa-left { display:flex; flex-direction:column; gap:46px; align-items:flex-start; }
  .pa-figs { display:flex; flex-direction:column; gap:22px; align-items:flex-end; }
  .pa-fig { display:flex; flex-direction:column; gap:10px; margin:0; }
  .pa-fig img { display:block; }
  .pa-cap { font-size:18px; color:var(--ink-3); font-style:italic; line-height:1.35; }
  .pa-chart-img { width:100%; max-width:560px; }
  .pa-row { display:flex; gap:36px; align-items:flex-start; justify-content:flex-end; }
  .pa-lead { font-size:30px; font-weight:600; line-height:1.4; color:var(--ink-2); margin:0 0 28px; text-wrap:pretty; }
  .pa-lead strong { color:var(--ink-1); font-weight:700; }
  .pa-chart { background:var(--bg-surface); border:1px solid var(--rule); border-radius:14px; padding:26px 30px 18px; box-shadow:0 10px 28px rgba(31,36,33,0.07); }
  .pa-chart-t { font-size:16px; letter-spacing:0.06em; text-transform:uppercase; color:var(--ink-3); font-weight:700; margin-bottom:18px; }
  .pa-graph { position:relative; height:240px; }
  .pa-graph svg { width:100%; height:100%; display:block; overflow:visible; }
  .pa-dial { display:flex; flex-direction:column; align-items:center; gap:22px; }
  .pa-knob { width:230px; height:230px; border-radius:50%; background:var(--c-deep); position:relative; box-shadow:0 18px 44px rgba(31,36,33,0.28); }
  .pa-knob::after { content:""; position:absolute; width:8px; height:96px; background:var(--c-amb); border-radius:4px; top:20px; left:50%; transform:translateX(-50%) rotate(32deg); transform-origin:bottom center; }
  .pa-knob .knob-core { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:120px; height:120px; border-radius:50%; background:linear-gradient(160deg,#3a4540,#222b27); border:3px solid rgba(246,168,39,0.4); }
  .pa-scaleends { display:flex; justify-content:space-between; width:290px; font-size:18px; font-weight:700; }
  .pa-scaleends .l { color:var(--brand-crimson); } .pa-scaleends .r { color:var(--c-grn); }
  .pa-dial-cap { font-size:18px; color:var(--ink-3); text-align:center; max-width:320px; line-height:1.4; }

  /* ---- Slide 49: Likert-Matrix ---- */
  .lik-table { table-layout:fixed; }
  .lik-table thead th { text-align:center !important; vertical-align:top; }
  .dir-c .form-table.lik-table thead th { text-transform:none; letter-spacing:0; font-size:16px; font-weight:700; line-height:1.25; }
  .dir-c .form-table.lik-table td:first-child { color:var(--ink-1); font-weight:600; }
  .lik-table th:first-child, .lik-table td:first-child { width:30%; }
  .lik-table td, .lik-table th { padding:2px 14px; }
  .lik-table td.lik-cell { text-align:center; }
  .lik-dot { display:inline-block; width:22px; height:22px; border-radius:50%; border:2px solid var(--rule-strong); vertical-align:middle; }
  .lik-dot.sel { border-color:var(--brand-crimson); background:var(--brand-crimson); box-shadow:0 0 0 4px rgba(220,59,85,0.14); }
  .lik-rev { display:inline-block; margin-left:8px; font-size:12px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase; color:var(--c-deep); background:rgba(246,168,39,0.30); padding:2px 9px; border-radius:100px; vertical-align:middle; }
  .lik-note { margin:6px 0 0; font-size:16px; line-height:1.35; color:var(--ink-2); background:rgba(246,168,39,0.10); border-left:5px solid var(--c-amb); border-radius:4px; padding:9px 18px; text-wrap:pretty; }
  .lik-note strong { color:var(--ink-1); }

  /* ---- Slide 50: Likert-Beispiele (native Online-Umfrage-Formate) ---- */
  .lex-wrap { flex:1; display:flex; flex-direction:column; gap:26px; justify-content:center; }
  .lex-card { background:var(--bg-surface); border:1px solid var(--rule); border-radius:14px; padding:28px 38px; display:grid; grid-template-columns:0.92fr 1.08fr; gap:44px; align-items:center; box-shadow:0 8px 24px rgba(31,36,33,0.06); }
  .lex-tag { font-size:14px; letter-spacing:0.1em; text-transform:uppercase; color:var(--brand-crimson); font-weight:700; margin-bottom:10px; }
  .lex-q { font-size:26px; font-weight:700; color:var(--ink-1); line-height:1.3; text-wrap:pretty; }
  /* 1: Radio-Reihe */
  .lex-radios { display:flex; justify-content:space-between; align-items:flex-start; }
  .lex-rad { display:flex; flex-direction:column; align-items:center; gap:12px; flex:1; text-align:center; }
  .lex-rad .dot { width:30px; height:30px; border-radius:50%; border:2px solid var(--rule-strong); }
  .lex-rad.sel .dot { border-color:var(--brand-crimson); background:var(--brand-crimson); box-shadow:0 0 0 4px rgba(220,59,85,0.14); }
  .lex-rad .lbl { font-size:16px; font-weight:600; color:var(--ink-3); line-height:1.2; }
  .lex-rad.sel .lbl { color:var(--brand-crimson); }
  /* 2: Segmentierte Buttons */
  .lex-seg { display:flex; gap:10px; }
  .lex-seg div { flex:1; padding:16px 8px; border:2px solid var(--rule); border-radius:10px; text-align:center; font-size:16px; font-weight:600; color:var(--ink-2); line-height:1.25; background:#fff; }
  .lex-seg div.sel { border-color:var(--brand-crimson); background:var(--c-rose-50); color:var(--brand-crimson); }
  /* 3: Nummerierte Kreise */
  .lex-nums { display:flex; flex-direction:column; gap:14px; }
  .lex-numrow { display:flex; justify-content:space-between; }
  .lex-num { width:56px; height:56px; border-radius:50%; border:2px solid var(--rule-strong); display:flex; align-items:center; justify-content:center; font-size:23px; font-weight:700; color:var(--ink-2); }
  .lex-num.sel { border-color:var(--brand-crimson); background:var(--brand-crimson); color:#fff; box-shadow:0 0 0 4px rgba(220,59,85,0.14); }
  .lex-ends { display:flex; justify-content:space-between; font-size:17px; font-weight:600; }
  .lex-ends .l { color:var(--ink-3); } .lex-ends .r { color:var(--ink-3); }

  /* ---- Slide 51: Populäre Likert-Skalen (Tabelle) ---- */
  .lik-pop { table-layout:fixed; }
  .lik-pop thead th:first-child { width:15.5%; }
  .lik-pop thead th:not(:first-child), .lik-pop tbody td:not(:first-child) { text-align:center; }
  .dir-c .qs-table.lik-pop thead th { text-align:center; font-size:17px; }
  .dir-c .qs-table.lik-pop thead th:first-child { text-align:left; }
  .dir-c .qs-table.lik-pop tbody td { padding:14px 14px; font-size:20px; vertical-align:middle; }
  .lik-pop tbody td:first-child { font-weight:700; color:var(--brand-crimson); }
  .lik-pop tbody td:first-child .sub { display:block; font-weight:500; font-style:italic; color:var(--ink-3); font-size:14px; margin-top:2px; }
  .lik-pop-cap { font-size:17px; color:var(--ink-3); font-style:italic; margin:14px 0 0; }

  /* ---- Slide 52: Semantisches Differential ---- */
  .sd-subq { font-size:21px; font-weight:700; color:var(--ink-1); margin:0 0 16px; }
  .sd-rows { display:flex; flex-direction:column; gap:18px; }
  .sd-row { display:grid; grid-template-columns:220px 1fr 220px; align-items:center; gap:26px; }
  .sd-pole { font-size:22px; font-weight:600; color:var(--ink-1); }
  .sd-pole.l { text-align:right; }
  .sd-scale { position:relative; display:flex; justify-content:space-between; align-items:center; padding:0 4px; }
  .sd-scale::before { content:""; position:absolute; left:13px; right:13px; top:50%; height:2px; background:var(--rule); transform:translateY(-50%); }
  .sd-cell { position:relative; z-index:1; width:26px; height:26px; border-radius:50%; border:2px solid var(--rule-strong); background:#fff; }
  .sd-cell.sel { border-color:var(--brand-crimson); background:var(--brand-crimson); box-shadow:0 0 0 4px rgba(220,59,85,0.14); }

  /* ---- Slides 53/54: Semantisches-Differential-Profil ---- */
  .sdp { display:grid; grid-template-columns:200px 1fr 200px; column-gap:24px; }
  .sdp-poles { display:grid; }
  .sdp-poles .p { display:flex; align-items:center; font-size:18px; font-weight:600; color:var(--ink-1); }
  .sdp-poles.l .p { justify-content:flex-end; text-align:right; }
  .sdp-center { position:relative; }
  .sdp-grid { display:grid; height:100%; }
  .sdp-grid .row { display:grid; grid-template-columns:repeat(7,1fr); align-items:center; }
  .sdp-grid .cell { display:flex; justify-content:center; }
  .sdp-grid .d { width:8px; height:8px; border-radius:50%; background:var(--rule); }
  .sdp-grid .d.on { width:16px; height:16px; box-shadow:0 0 0 4px rgba(220,59,85,0.12); }
  .sdp-line { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; overflow:visible; }
  .sdp-line polyline { fill:none; stroke-width:2.5px; vector-effect:non-scaling-stroke; }
  .sdp-cap { font-size:17px; color:var(--ink-3); font-style:italic; margin:18px 0 0; }
  /* Mehrfach-Profil-Legende (S54) */
  .sdp-legend { display:flex; gap:26px; margin-bottom:16px; flex-wrap:wrap; }
  .sdp-leg { display:flex; align-items:center; gap:10px; font-size:18px; font-weight:700; color:var(--ink-1); }
  .sdp-leg .sw { width:30px; height:5px; border-radius:3px; }

  /* ---- Slide 55: Stapel-Skala ---- */
  .stapel-wrap { flex:1; display:flex; gap:90px; justify-content:center; align-items:center; }
  .stapel { display:flex; flex-direction:column; align-items:center; gap:5px; }
  .stapel .num { width:74px; height:36px; border:2px solid var(--rule); border-radius:6px; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:19px; color:var(--ink-2); background:#fff; font-variant-numeric:tabular-nums; }
  .stapel .num.sel { background:var(--brand-crimson); border-color:var(--brand-crimson); color:#fff; box-shadow:0 0 0 4px rgba(220,59,85,0.14); }
  .stapel .word { margin:10px 0; padding:16px 26px; background:var(--c-deep); color:#fff; font-weight:700; font-size:22px; border-radius:8px; white-space:nowrap; text-align:center; }
  .stapel .word.alt { background:var(--c-vio); }

  /* ---- Slide 56: Überblick nicht-komparative Skalen ---- */
  .ncomp-table { table-layout:fixed; }
  .ncomp-table th:first-child, .ncomp-table td:first-child { width:15%; }
  .dir-c .qs-table.ncomp-table thead th { font-size:15px; }
  .dir-c .qs-table.ncomp-table tbody td { font-size:21px; padding:15px 18px; vertical-align:top; line-height:1.4; }
  .dir-c .qs-table.ncomp-table tbody td:first-child { font-weight:700; color:var(--brand-crimson); }
  .ncomp-table .nc-sub { display:block; font-size:13px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; color:var(--ink-3); margin-top:4px; }

  /* ---- Slide 57: Konstruktion — 5 Gestaltungsfragen ---- */
  .konstr-list { flex:1; display:flex; flex-direction:column; gap:18px; justify-content:center; }
  .konstr-item { display:grid; grid-template-columns:62px 1fr; gap:26px; align-items:center; background:var(--bg-surface); border:1px solid var(--rule); border-left:6px solid var(--brand-crimson); border-radius:8px; padding:22px 32px; }
  .konstr-item:nth-child(2){ border-left-color:var(--c-vio); }
  .konstr-item:nth-child(3){ border-left-color:var(--c-amb); }
  .konstr-item:nth-child(4){ border-left-color:var(--c-grn); }
  .konstr-item:nth-child(5){ border-left-color:var(--c-deep); }
  .konstr-item .kn { width:54px; height:54px; flex:none; border-radius:50%; background:var(--brand-crimson); color:#fff; font-size:24px; font-weight:700; display:flex; align-items:center; justify-content:center; }
  .konstr-item:nth-child(2) .kn{ background:var(--c-vio); }
  .konstr-item:nth-child(3) .kn{ background:var(--c-amb); color:var(--c-deep); }
  .konstr-item:nth-child(4) .kn{ background:var(--c-grn); }
  .konstr-item:nth-child(5) .kn{ background:var(--c-deep); }
  .konstr-item .kt { font-size:25px; font-weight:700; color:var(--ink-1); }
  .konstr-item .kd { font-size:20px; color:var(--ink-2); line-height:1.4; margin-top:4px; text-wrap:pretty; }

  /* ---- Slide 58: Anzahl von Antwortkategorien (Abwägung) ---- */
  .acat-lead { background:var(--c-rose-50); border-top:6px solid var(--brand-crimson); border-radius:6px; padding:26px 34px; font-size:27px; font-weight:700; line-height:1.36; color:var(--ink-1); margin-bottom:28px; text-wrap:pretty; }
  .acat-lead .more { color:var(--c-grn); } .acat-lead .less { color:var(--brand-crimson); }
  .acat-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
  .acat-card { background:var(--bg-surface); border:1px solid var(--rule); border-radius:10px; padding:24px 30px; }
  .acat-card h3 { font-size:24px; font-weight:700; color:var(--ink-1); margin:0 0 12px; }
  .acat-card p { font-size:20px; line-height:1.42; color:var(--ink-2); margin:0; text-wrap:pretty; }
  .dir-tag { display:inline-block; font-size:14px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase; padding:3px 11px; border-radius:100px; margin-right:7px; vertical-align:1px; }
  .dir-tag.more { background:rgba(42,138,78,0.16); color:var(--c-grn); }
  .dir-tag.less { background:rgba(220,59,85,0.12); color:var(--brand-crimson); }
  /* Recap-Zeile auf Detailslides: wiederholt die Regel aus der Übersicht (S57) */
  .recap { font-size:23px; font-weight:600; color:var(--ink-2); line-height:1.4; padding-left:18px; border-left:4px solid var(--brand-crimson); margin:0 0 26px; text-wrap:pretty; }
  /* Detail-Slides wiederholen die Übersichts-Plakette mit eigener Nummer/Farbe */
  .konstr-item.kc1 { border-left-color:var(--brand-crimson); } .konstr-item.kc1 .kn { background:var(--brand-crimson); color:#fff; }
  .konstr-item.kc2 { border-left-color:var(--c-vio); } .konstr-item.kc2 .kn { background:var(--c-vio); color:#fff; }
  .konstr-item.kc3 { border-left-color:var(--c-amb); } .konstr-item.kc3 .kn { background:var(--c-amb); color:var(--c-deep); }
  .konstr-item.kc4 { border-left-color:var(--c-grn); } .konstr-item.kc4 .kn { background:var(--c-grn); color:#fff; }
  .konstr-item.kc5 { border-left-color:var(--c-deep); } .konstr-item.kc5 .kn { background:var(--c-deep); color:#fff; }

  /* ---- Slide 59: Balanciert vs. nicht-balanciert ---- */
  .bal-cols { display:grid; grid-template-columns:1fr 1fr; gap:36px; }
  .bal-card { border:1px solid var(--rule); border-radius:12px; overflow:hidden; display:flex; flex-direction:column; }
  .bal-head { padding:18px 28px; color:#fff; font-size:24px; font-weight:700; }
  .bal-card.good .bal-head { background:var(--c-grn); }
  .bal-card.warn .bal-head { background:var(--c-amb); color:var(--c-deep); }
  .bal-body { padding:24px 30px; background:var(--bg-surface); display:flex; flex-direction:column; gap:10px; flex:1; }
  .bal-pt { padding:12px 20px; border-radius:8px; font-size:21px; font-weight:600; }
  .bal-pt.pos { background:rgba(42,138,78,0.12); color:var(--c-grn); }
  .bal-pt.neu { background:var(--bg-app); color:var(--ink-3); border:1px solid var(--rule); }
  .bal-pt.neg { background:rgba(220,59,85,0.10); color:var(--brand-crimson); }
  .bal-note { font-size:19px; color:var(--ink-1); font-weight:700; margin-top:10px; }
  .bal-note span.g { color:var(--c-grn); } .bal-note span.r { color:var(--brand-crimson); } .bal-note span.n { color:var(--ink-3); }

  /* ---- Slide 60: Gerade vs. ungerade Anzahl ---- */
  .go-cols { display:grid; grid-template-columns:1fr 1fr; gap:36px; margin-bottom:24px; }
  .go-card { background:var(--bg-surface); border:1px solid var(--rule); border-radius:12px; padding:22px 28px; }
  .go-card h3 { font-size:23px; font-weight:700; margin:0 0 16px; color:var(--ink-1); }
  .go-scale { display:flex; gap:9px; }
  .go-pt { flex:1; padding:13px 6px; border:2px solid var(--rule); border-radius:8px; text-align:center; font-size:15px; font-weight:600; color:var(--ink-2); background:#fff; line-height:1.2; }
  .go-pt.mid { border-color:var(--c-amb); background:rgba(246,168,39,0.18); color:var(--c-deep); }
  .go-tag { display:inline-block; margin-top:14px; font-size:16px; font-weight:700; color:var(--ink-3); }
  .go-tag b { color:var(--c-amb); }
  .go-insight { background:var(--c-deep); color:var(--bg-app); border-radius:10px; padding:24px 34px; display:flex; flex-direction:column; gap:12px; }
  .go-insight p { margin:0; font-size:21px; line-height:1.4; }
  .go-insight p.q { color:var(--c-amb); font-weight:700; font-size:23px; }

  /* ---- Slide 61: Obligatorische vs. nicht-obligatorische Antwort ---- */
  .oblig-cards { display:grid; grid-template-columns:1fr 1fr; gap:30px; margin-top:24px; }
  .oblig-card { background:var(--bg-surface); border:1px solid var(--rule); border-radius:12px; padding:24px 30px; }
  .oblig-card h3 { font-size:23px; font-weight:700; margin:0 0 16px; color:var(--ink-1); }
  .oblig-rule { display:flex; gap:13px; align-items:flex-start; font-size:20px; line-height:1.38; color:var(--ink-2); margin-bottom:12px; }
  .oblig-rule:last-child { margin-bottom:0; }
  .oblig-rule .mk { width:28px; height:28px; flex:none; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:16px; color:#fff; margin-top:1px; }
  .oblig-rule.yes .mk { background:var(--c-grn); }
  .oblig-rule.no .mk { background:var(--brand-crimson); }
  .oblig-rule strong { color:var(--ink-1); }
  .oblig-card p { font-size:20px; line-height:1.42; color:var(--ink-2); margin:0; }
  .oblig-note { font-size:19px; color:var(--ink-3); font-style:italic; margin:22px 0 0; text-wrap:pretty; }
  .oblig-note strong { color:var(--ink-1); font-style:normal; }

  /* ---- Slide 62: Beschriftung der Skalenpunkte ---- */
  .acat-card.key { border:2px solid var(--brand-crimson); background:var(--c-rose-50); }
  .acat-card.key h3 { color:var(--brand-crimson); }

  /* ---- Slide: Spitze vs. flache Antwortverteilung ---- */
  .svd-cols { display:grid; grid-template-columns:1fr 1fr; gap:34px; margin-bottom:22px; }
  .svd-card { background:var(--bg-surface); border:1px solid var(--rule); border-radius:12px; padding:22px 30px; display:flex; flex-direction:column; gap:12px; }
  .svd-card.spitz { border-top:5px solid var(--brand-crimson); }
  .svd-card.flach { border-top:5px solid var(--c-grn); }
  .svd-tag { font-size:14px; letter-spacing:0.1em; text-transform:uppercase; font-weight:700; }
  .svd-card.spitz .svd-tag { color:var(--brand-crimson); }
  .svd-card.flach .svd-tag { color:var(--c-grn); }
  .svd-poles { display:flex; justify-content:space-between; font-size:18px; font-weight:700; color:var(--ink-1); }
  .svd-curve { height:150px; display:flex; align-items:center; justify-content:center; }
  .svd-curve svg { width:100%; height:100%; display:block; }
  .svd-eff { font-size:19px; line-height:1.42; color:var(--ink-2); margin:0; }
  .svd-eff strong { color:var(--ink-1); }
  .svd-decision { background:var(--c-deep); color:var(--bg-app); border-radius:10px; padding:22px 34px; display:grid; grid-template-columns:1fr 1fr; gap:0 40px; }
  .svd-dec { display:flex; flex-direction:column; gap:7px; }
  .svd-dec + .svd-dec { border-left:1px solid rgba(246,245,241,0.18); padding-left:40px; }
  .svd-dec .goal { font-size:18px; color:rgba(246,245,241,0.82); line-height:1.35; }
  .svd-dec .choice { font-size:21px; font-weight:700; }
  .svd-dec .choice.mod { color:var(--c-grn); }
  .svd-dec .choice.ext { color:var(--c-amb); }

  /* ---- Slide 63: Beschriftungs-Varianten (4 Beispiele) ---- */
  .lbv-wrap { flex:1; display:flex; flex-direction:column; gap:16px; justify-content:center; }
  .lbv-q { font-size:24px; font-weight:700; color:var(--ink-1); margin:0 0 4px; }
  .lbv-q span { color:var(--brand-crimson); }
  .lbv-card { background:var(--bg-surface); border:1px solid var(--rule); border-radius:12px; padding:18px 30px; display:grid; grid-template-columns:250px 1fr; gap:30px; align-items:center; }
  .lbv-tag .t { font-size:21px; font-weight:700; color:var(--ink-1); }
  .lbv-tag .d { font-size:15px; color:var(--ink-3); font-weight:600; margin-top:3px; }
  .lbv-scale { display:grid; grid-template-columns:repeat(5,1fr); align-items:start; }
  .lbv-pt { display:flex; flex-direction:column; align-items:center; gap:8px; }
  .lbv-pt .dot { width:26px; height:26px; border-radius:50%; border:2px solid var(--rule-strong); background:#fff; flex:none; }
  .lbv-pt .lbl { font-size:15px; font-weight:600; color:var(--ink-2); text-align:center; line-height:1.2; }
  .lbv-pt .num { font-size:18px; font-weight:700; color:var(--ink-2); }
  .lbv-scale.order-num .dot { order:2; } .lbv-scale.order-num .num { order:1; }

  /* ---- Slide 66: Latente Konstrukte — Multi-Item-Beispiel ---- */
  .alpha-badge { display:inline-flex; align-items:center; gap:12px; margin-top:18px; background:var(--c-deep); color:#fff; border-radius:100px; padding:11px 24px; font-size:21px; font-weight:700; }
  .alpha-badge .av { color:var(--c-amb); font-variant-numeric:tabular-nums; }
  .alpha-badge .ah { font-size:14px; font-weight:600; letter-spacing:0.08em; text-transform:uppercase; color:rgba(246,245,241,0.7); }

  /* ---- Slide 66: Messmodell (Konstrukt → Indikatoren) ---- */
  .cmodel { width:100%; }
  .cmodel svg { width:100%; height:auto; display:block; overflow:visible; }
  .cm-box { width:100%; height:100%; box-sizing:border-box; border:2px solid var(--c-deep); border-radius:8px; background:var(--bg-surface); display:flex; align-items:center; justify-content:center; text-align:center; font:600 16px/1.2 "Mona Sans",sans-serif; color:var(--ink-1); padding:6px; }
  .cm-latent { width:100%; height:100%; box-sizing:border-box; border-radius:50%; background:var(--c-deep); color:#fff; display:flex; align-items:center; justify-content:center; text-align:center; font:700 23px/1.1 "Mona Sans",sans-serif; }
  .cm-err { width:100%; height:100%; box-sizing:border-box; border-radius:50%; background:#fff; border:2px solid var(--ink-mute); display:flex; align-items:center; justify-content:center; font:700 17px "Mona Sans",sans-serif; color:var(--ink-3); }
  .cm-load { font:700 16px "Mona Sans",sans-serif; fill:var(--ink-3); }
  .lk-ex { background:var(--bg-surface); border:1px solid var(--rule); border-radius:12px; padding:18px 28px; }
  .lk-ex-h { font-size:15px; letter-spacing:0.06em; text-transform:uppercase; color:var(--ink-3); font-weight:700; margin-bottom:13px; }
  .lk-ex-items { display:flex; flex-direction:column; gap:6px; }
  .lk-exi { display:grid; grid-template-columns:160px 1fr 160px; align-items:center; gap:20px; font-size:16px; font-weight:600; color:var(--ink-2); }
  .lk-exi .l { text-align:right; }
  .lk-exi .sc { display:flex; justify-content:space-between; padding:0 6px; }
  .lk-exi .sc i { width:15px; height:15px; border-radius:50%; border:2px solid var(--rule-strong); }
  .lk-exi .sc i.on { background:var(--brand-crimson); border-color:var(--brand-crimson); }
  .lk-ex-note { margin-top:13px; font-size:15px; color:var(--ink-3); font-style:italic; }
  .lk-ex-note b { color:var(--c-deep); font-style:normal; }

  /* ---- Slide 67: Hierarchie Konstrukt → Dimensionen → Faktoren → Items → Skala ---- */
  .hier { flex:1; display:grid; grid-template-columns:1.05fr 1.05fr 1fr 1.5fr 1.15fr; gap:16px; align-items:stretch; }
  .hier-col { position:relative; display:flex; flex-direction:column; }
  .hier-col:not(:last-child)::after { content:"\203A"; position:absolute; right:-14px; top:62%; transform:translateY(-50%); font-size:30px; font-weight:700; color:var(--rule-strong); z-index:2; }
  .hier-head { font-size:14px; letter-spacing:0.1em; text-transform:uppercase; font-weight:700; color:#fff; background:var(--c-deep); border-radius:6px; padding:9px 12px; text-align:center; margin-bottom:16px; }
  .hier-head.l1 { background:var(--brand-crimson); }
  .hier-body { flex:1; display:flex; flex-direction:column; justify-content:center; gap:12px; }
  .hier-node { border:2px solid var(--rule); border-radius:8px; padding:14px 16px; font-size:17px; font-weight:600; color:var(--ink-3); background:var(--bg-surface); text-align:center; line-height:1.25; }
  .hier-node.active { border-color:var(--brand-crimson); background:var(--c-rose-50); color:var(--brand-crimson); font-weight:700; }
  .hier-node.lead { background:var(--brand-crimson); color:#fff; border-color:var(--brand-crimson); font-size:20px; }
  .hier-node.item { color:var(--ink-1); font-weight:500; font-size:16px; text-align:left; }
  .hier-scale { display:flex; flex-direction:column; gap:11px; }
  .hier-pt { display:flex; align-items:center; gap:11px; font-size:16px; font-weight:600; color:var(--ink-2); }
  .hier-pt i { width:15px; height:15px; border-radius:50%; border:2px solid var(--rule-strong); flex:none; }

  /* ---- Slide 67 v2: echtes Baum-Diagramm (SVG) ---- */
  .hier2 { flex:1; display:flex; align-items:center; }
  .hier2 svg { width:100%; height:auto; display:block; overflow:visible; }
  .h2node { width:100%; height:100%; box-sizing:border-box; border:2px solid var(--rule); border-radius:8px; background:var(--bg-surface); display:flex; align-items:center; justify-content:center; text-align:center; font:600 18px/1.2 "Mona Sans",sans-serif; color:var(--ink-3); padding:6px 12px; }
  .h2node.lead { background:var(--brand-crimson); color:#fff; border-color:var(--brand-crimson); font-weight:700; font-size:20px; }
  .h2node.active { border-color:var(--brand-crimson); background:var(--c-rose-50); color:var(--brand-crimson); font-weight:700; }
  .h2node.item { color:var(--ink-1); font-weight:500; font-size:17px; }
  .h2hd { width:100%; height:100%; box-sizing:border-box; border-radius:7px; background:var(--c-deep); color:#fff; display:flex; align-items:center; justify-content:center; font:700 17px "Mona Sans",sans-serif; letter-spacing:0.08em; text-transform:uppercase; }
  .h2hd.l1 { background:var(--brand-crimson); }
  .h2sc { font:600 18px "Mona Sans",sans-serif; fill:var(--ink-1); }

  /* ---- Slide 68: Vorteile + Beispiele ---- */
  .bsp-h { font-size:23px; font-weight:700; color:var(--ink-1); margin-bottom:20px; }
  .bsp-chips { display:flex; flex-wrap:wrap; gap:14px; }
  .bsp-chip { background:var(--c-rose-50); color:var(--brand-crimson); border-radius:100px; padding:13px 24px; font-size:21px; font-weight:600; }

  /* ---- Slide 69: baue oder klaue ---- */
  .bok-cols { flex:1; display:grid; grid-template-columns:1.18fr 0.82fr; gap:44px; align-items:stretch; }
  .bok-card { border-radius:14px; overflow:hidden; border:1px solid var(--rule); display:flex; flex-direction:column; }
  .bok-head { padding:18px 30px; color:#fff; }
  .bok-card.baue .bok-head { background:var(--c-deep); }
  .bok-card.klaue .bok-head { background:var(--brand-crimson); }
  .bok-head .ht { font-size:26px; font-weight:700; }
  .bok-head .hs { font-size:16px; font-weight:600; opacity:0.82; }
  .bok-body { padding:22px 30px; background:var(--bg-surface); flex:1; }
  .bok-step { display:grid; grid-template-columns:32px 1fr; gap:14px; align-items:center; padding:6px 0; }
  .bok-step .n { width:30px; height:30px; border-radius:50%; background:var(--c-deep); color:#fff; font-size:15px; font-weight:700; display:flex; align-items:center; justify-content:center; }
  .bok-step .t { font-size:18px; color:var(--ink-2); line-height:1.28; }
  .bok-step .t strong { color:var(--ink-1); }
  .bok-src-lead { font-size:22px; font-weight:700; color:var(--ink-1); margin:0 0 18px; }
  .bok-hb { background:var(--c-rose-50); border-radius:10px; padding:18px 22px; font-size:18px; line-height:1.4; color:var(--ink-2); margin-bottom:22px; }
  .bok-hb strong { color:var(--brand-crimson); }
  .bok-jrnls-h { font-size:15px; letter-spacing:0.08em; text-transform:uppercase; color:var(--ink-3); font-weight:700; margin-bottom:12px; }
  .bok-jrnls { display:flex; flex-wrap:wrap; gap:11px; }
  .bok-jrnl { background:var(--bg-surface); border:1px solid var(--rule); border-radius:8px; padding:10px 18px; font-size:19px; font-weight:700; color:var(--ink-1); }
  /* S69 Baue als Flussdiagramm */
  .bok-flow { position:relative; display:flex; flex-direction:column; align-items:stretch; padding-left:66px; }
  .bok-fbox { background:#e9e7e2; border-radius:6px; padding:12px 16px; font-size:18px; font-weight:600; color:var(--ink-1); text-align:center; line-height:1.25; }
  .bok-fbox.final { background:var(--c-deep); color:#fff; }
  .bok-fa { align-self:center; color:var(--ink-mute); font-size:12px; padding:2px 0; }
  .bok-flow .bok-fbox { position:relative; }
  .bok-spine { position:absolute; left:24px; top:24px; bottom:90px; border-left:2.5px solid var(--c-amb); }
  .bok-spine-lbl { position:absolute; left:4px; top:42%; transform:translateY(-50%); writing-mode:vertical-rl; rotate:180deg; font-size:12px; font-weight:700; color:var(--c-amb); letter-spacing:0.14em; text-transform:uppercase; }
  .bok-fbox.rev-in::before, .bok-fbox.rev-out::before, .bok-fbox.src::before { content:""; position:absolute; left:-42px; top:50%; width:42px; border-top:2.5px solid var(--c-amb); }
  .bok-fbox.rev-in::after { content:""; position:absolute; left:-7px; top:50%; transform:translateY(-50%); border-top:5px solid transparent; border-bottom:5px solid transparent; border-left:7px solid var(--c-amb); }
  .bok-fbox.rev-out::after { content:""; position:absolute; left:-42px; top:50%; transform:translateY(-50%); border-top:5px solid transparent; border-bottom:5px solid transparent; border-right:7px solid var(--c-amb); }

  /* ---- Slide 70: Secure Customer Index ---- */
  .sci-page { flex:1; display:grid; grid-template-columns:0.92fr 1.08fr; gap:50px; align-items:center; }
  .sci-lead { font-size:23px; font-weight:700; color:var(--ink-1); margin:0 0 22px; line-height:1.36; text-wrap:pretty; }
  .sci-lead em { color:var(--c-grn); font-style:normal; }
  .sci-segs { display:flex; flex-direction:column; gap:12px; }
  .sci-seg { border-radius:10px; padding:15px 22px; background:var(--bg-surface); border:1px solid var(--rule); border-left:6px solid var(--rule-strong); }
  .sci-seg .st { font-size:21px; font-weight:700; }
  .sci-seg .sd { font-size:16px; color:var(--ink-2); line-height:1.34; margin-top:3px; }
  .sci-seg.s1 { border-left-color:var(--c-grn); } .sci-seg.s1 .st { color:var(--c-grn); }
  .sci-seg.s2 { border-left-color:#6FA63A; } .sci-seg.s2 .st { color:#557f2c; }
  .sci-seg.s3 { border-left-color:var(--c-amb); } .sci-seg.s3 .st { color:#a8760c; }
  .sci-seg.s4 { border-left-color:var(--brand-crimson); } .sci-seg.s4 .st { color:var(--brand-crimson); }
  .sci-src { font-size:15px; color:var(--ink-3); font-style:italic; margin-top:18px; }
  .sci-venn { position:relative; width:100%; max-width:460px; margin:0 auto; }
  .sci-venn img { width:100%; display:block; }
  .vlbl { position:absolute; font-weight:700; line-height:1.18; text-align:center; }
  .vlbl.red { top:23%; left:60%; transform:translate(-50%,-50%); color:#fff; font-size:18px; width:120px; }
  .vlbl.blue { top:73%; left:27%; transform:translate(-50%,-50%); color:#0a3a52; font-size:15px; width:128px; }
  .vlbl.green { top:73%; left:73%; transform:translate(-50%,-50%); color:#3a4a08; font-size:15px; width:132px; }
  .vlbl.sc { top:30%; left:1%; transform:translateY(-50%); color:var(--ink-2); font-size:17px; width:96px; text-align:right; }
  /* S70 — 3-Spalten (Skalen | Segmente | Venn) */
  .sci-page3 { flex:1; display:grid; grid-template-columns:1.18fr 1fr 1.04fr; gap:34px; align-items:center; }
  .sci-dimcol { display:flex; flex-direction:column; gap:17px; }
  .sci-dim2 .dn { font-size:21px; font-weight:700; color:var(--ink-1); margin-bottom:8px; line-height:1.2; }
  .sci-scale5 { display:flex; flex-direction:column; gap:4px; }
  .sci-scale5 .sl { font-size:18px; color:var(--ink-2); line-height:1.34; }
  .sci-scale5 .sl b { color:var(--ink-mute); font-weight:700; }
  .sci-scale5 .sl.top { color:var(--c-grn); font-weight:700; }
  .sci-scale5 .sl.top b { color:var(--c-grn); }
  .sci-page3 .sci-segs { margin-left:-26px; }
  .sci-page3 .sci-seg { padding:15px 22px; }
  .sci-page3 .sci-seg .st { font-size:24px; }
  .sci-page3 .sci-seg .sd { font-size:18px; line-height:1.36; }
  .sci-page3 .sci-venn { max-width:380px; }
  .sci-page3 .vlbl.red { font-size:15px; width:100px; }
  .sci-page3 .vlbl.blue, .sci-page3 .vlbl.green { font-size:13px; width:108px; }
  .sci-page3 .vlbl.sc { font-size:14px; width:80px; left:-15%; }

  /* ---- Slide 71: Erweiterter SCI (Burke Inc.) ---- */
  .esci { flex:1; display:grid; grid-template-columns:1.28fr 0.72fr; gap:58px; align-items:center; }
  .esci-p { text-align:center; }
  .esci-p .ph { font-size:15px; letter-spacing:0.1em; text-transform:uppercase; font-weight:700; color:var(--ink-3); margin-bottom:12px; }
  .esci-loy { width:124px; height:124px; border-radius:50%; background:#1f6bb0; color:#fff; display:flex; align-items:center; justify-content:center; text-align:center; font-size:18px; font-weight:700; line-height:1.2; padding:10px; box-sizing:border-box; }
  .esci-period { display:flex; align-items:center; gap:30px; margin-bottom:30px; padding:20px 28px; background:var(--bg-surface); border:1px solid var(--rule); border-radius:14px; }
  .esci-arrow { font-size:32px; color:var(--ink-mute); align-self:flex-end; margin-bottom:42px; }
  .esci-sow { background:var(--brand-crimson); color:#fff; border-radius:8px; padding:30px 44px; font-size:24px; font-weight:700; text-align:center; line-height:1.3; }
  .esci-dimhead { font-size:15px; letter-spacing:0.1em; text-transform:uppercase; font-weight:700; color:var(--ink-3); margin-bottom:16px; }
  .esci-dims { display:flex; flex-direction:column; gap:0; }
  .esci-row { display:grid; grid-template-columns:268px 1fr; gap:30px; align-items:baseline; padding:15px 0; border-top:1px solid var(--rule); }
  .esci-row:last-child { border-bottom:1px solid var(--rule); }
  .esci-row .dn { font-size:19px; font-weight:700; color:var(--ink-1); line-height:1.25; }
  .esci-row .dq { font-size:18px; color:var(--ink-2); line-height:1.36; font-style:italic; }
  .esci-wheel { display:flex; flex-direction:column; align-items:center; gap:22px; }
  .esci-wheel img { width:100%; max-width:430px; display:block; }
  .esci-src { font-size:14px; color:var(--ink-3); font-style:italic; text-align:center; }

  /* ---- Slide 73: True-Score-Modell ---- */
  .tsm { flex:1; display:grid; grid-template-columns:1fr 1fr; gap:54px; align-items:center; }
  .tsm-lead { font-size:28px; font-weight:700; color:var(--ink-1); line-height:1.4; text-wrap:pretty; }
  .tsm-lead strong { color:var(--brand-crimson); }
  .tsm-eq { background:var(--c-deep); color:var(--bg-app); border-radius:14px; padding:36px 40px; }
  .tsm-formula { display:flex; align-items:center; justify-content:center; gap:14px; font-size:38px; font-weight:700; margin-bottom:28px; }
  .tsm-formula .v { display:flex; flex-direction:column; align-items:center; gap:7px; }
  .tsm-formula .v .sym { color:#fff; }
  .tsm-formula .v.o .sym { color:var(--c-amb); }
  .tsm-formula .op { color:rgba(246,245,241,0.6); font-weight:500; }
  .tsm-formula .tag { font-size:13px; font-weight:600; letter-spacing:0.04em; text-transform:uppercase; color:rgba(246,245,241,0.66); }
  .tsm-legend { display:flex; flex-direction:column; gap:11px; border-top:1px solid rgba(246,245,241,0.18); padding-top:22px; }
  .tsm-leg { display:grid; grid-template-columns:46px 1fr; gap:14px; align-items:baseline; font-size:19px; }
  .tsm-leg .s { font-weight:700; color:var(--c-amb); font-variant-numeric:tabular-nums; }
  .tsm-leg .d { color:rgba(246,245,241,0.9); line-height:1.3; }

  /* ---- Slide 74: Reliabilität vs. Validität (zwei Spalten) ---- */
  .rv-cols { flex:1; display:grid; grid-template-columns:1fr 1fr; gap:36px; align-items:stretch; }
  .rv-card { border-radius:14px; overflow:hidden; border:1px solid var(--rule); display:flex; flex-direction:column; }
  .rv-head { padding:20px 30px; color:#fff; }
  .rv-card.rel .rv-head { background:var(--c-deep); }
  .rv-card.val .rv-head { background:var(--brand-crimson); }
  .rv-head .ht { font-size:30px; font-weight:700; }
  .rv-head .hs { font-size:18px; font-weight:600; opacity:0.82; }
  .rv-body { padding:28px 34px; background:var(--bg-surface); flex:1; display:flex; flex-direction:column; gap:19px; }
  .rv-body p { margin:0; font-size:24px; line-height:1.42; color:var(--ink-2); padding-left:26px; position:relative; text-wrap:pretty; }
  .rv-body p::before { content:""; position:absolute; left:0; top:11px; width:8px; height:8px; border-radius:50%; }
  .rv-card.rel .rv-body p::before { background:var(--c-deep); }
  .rv-card.val .rv-body p::before { background:var(--brand-crimson); }
  .rv-body p strong { color:var(--ink-1); }
  .rv-body sub, .rv-eq sub { font-size:0.62em; vertical-align:-0.28em; line-height:0; }
  .rv-body .ar { vertical-align:0.12em; padding:0 2px; }
  .rv-body .imp { vertical-align:0.04em; font-size:1.18em; font-weight:700; color:var(--brand-crimson); padding:0 5px; }
  .rv-eq { margin-top:auto; background:var(--bg-app); border:1px solid var(--rule); border-radius:8px; padding:16px 18px; font-size:22px; font-weight:700; color:var(--ink-1); text-align:center; }
  .rv-eq .em { color:var(--brand-crimson); }
  .rv-note { margin-top:14px; font-size:15px; color:var(--ink-3); font-style:italic; text-align:center; }

  /* ---- Slide 75: Zusammenhang Reliabilität ↔ Validität (Dartboards) ---- */
  .dart-page { flex:1; display:grid; grid-template-columns:0.95fr 1.05fr; gap:50px; align-items:center; }
  .dart-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px 28px; }
  .dart-cell { display:flex; flex-direction:column; align-items:center; gap:12px; }
  .dart-cell img { width:118px; height:118px; object-fit:contain; }
  .dart-cap { text-align:center; }
  .dart-cap .dt { font-size:18px; font-weight:700; color:var(--ink-1); line-height:1.2; }
  .dart-cap .ds { font-size:15px; color:var(--ink-3); margin-top:2px; }
  .dart-cap.good .dt { color:var(--c-grn); }
  .dart-impl { display:flex; flex-direction:column; gap:18px; }
  .dart-imp { display:grid; grid-template-columns:30px 1fr; gap:14px; align-items:baseline; }
  .dart-imp .ic { width:28px; height:28px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:15px; font-weight:700; color:#fff; flex:none; }
  .dart-imp.yes .ic { background:var(--c-grn); }
  .dart-imp.no .ic { background:var(--brand-crimson); }
  .dart-imp .tx { font-size:23px; line-height:1.4; color:var(--ink-2); }
  .dart-imp .tx strong { color:var(--ink-1); }
  .dart-imp .fx { display:block; margin-top:5px; font-size:22px; color:var(--ink-3); }
  .dart-imp .fx sub { font-size:0.64em; vertical-align:-0.28em; line-height:0; }
  .dart-imp .fx .imp { font-size:1.18em; font-weight:700; color:var(--brand-crimson); vertical-align:0.04em; padding:0 5px; }
  .dart-concl { margin-top:8px; background:var(--c-deep); color:var(--bg-app); border-radius:10px; padding:18px 24px; font-size:20px; font-weight:700; line-height:1.36; text-wrap:pretty; }
  .dart-concl strong { color:var(--c-amb); }

  /* ---- Slide 76: Zitat (Gamble) ---- */
  .slide.quote-slide { background:var(--c-deep); }
  .slide.quote-slide .rail-top, .slide.quote-slide .rail-bottom { color:rgba(246,245,241,0.45); }
  .slide.quote-slide .rail-top .chapter-mark { color:var(--c-amb); }
  .slide.quote-slide .title-rule { background:var(--c-amb); }
  .qz-wrap { flex:1; display:grid; grid-template-columns:1fr 280px; gap:64px; align-items:center; }
  .qz-mark { font-size:130px; line-height:0.5; color:var(--c-amb); font-weight:700; height:74px; margin-bottom:10px; }
  .qz-text { font-size:42px; line-height:1.4; color:var(--bg-app); font-weight:600; margin:24px 0 30px; text-wrap:pretty; }
  .qz-text em { font-style:normal; color:var(--c-amb); }
  .qz-by { display:flex; flex-direction:column; gap:3px; }
  .qz-by .nm { font-size:24px; font-weight:700; color:#fff; }
  .qz-by .ro { font-size:18px; color:rgba(246,245,241,0.7); line-height:1.35; }
  .qz-photo { display:flex; flex-direction:column; align-items:center; gap:16px; }
  .qz-photo img { width:230px; height:230px; object-fit:cover; border-radius:14px; filter:grayscale(0.2); }

  /* ---- Slide 77: Net Promoter Score ---- */
  .nps-page { flex:1; display:flex; flex-direction:column; gap:22px; justify-content:center; }
  .nps-q { font-size:23px; font-weight:700; color:var(--ink-1); margin:0; text-wrap:pretty; }
  .nps-q span { color:var(--brand-crimson); }
  .nps-strip { border:1.5px solid var(--rule-strong); border-radius:12px; overflow:hidden; }
  .nps-cells { display:grid; grid-template-columns:repeat(11,1fr); }
  .nps-cell { padding:14px 0 11px; display:flex; flex-direction:column; align-items:center; gap:7px; }
  .nps-cell.det { background:rgba(192,57,43,0.12); }
  .nps-cell.pas { background:rgba(224,169,58,0.18); }
  .nps-cell.pro { background:rgba(42,138,78,0.12); }
  .nps-cell svg { width:34px; height:42px; display:block; }
  .nps-cell .nn { font-size:19px; font-weight:700; font-variant-numeric:tabular-nums; }
  .nps-cell.det .nn { color:#c0392b; } .nps-cell.pas .nn { color:#a8760c; } .nps-cell.pro .nn { color:#2a8a4e; }
  .nps-blabels { display:grid; grid-template-columns:7fr 2fr 2fr; border-top:1.5px solid var(--rule-strong); }
  .nps-bl { padding:9px 0; text-align:center; font-size:18px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase; }
  .nps-bl.det { background:rgba(192,57,43,0.12); color:#c0392b; }
  .nps-bl.pas { background:rgba(224,169,58,0.18); color:#a8760c; }
  .nps-bl.pro { background:rgba(42,138,78,0.12); color:#2a8a4e; }
  .nps-scale { display:flex; gap:7px; }
  .nps-n { flex:1; text-align:center; padding:13px 0; border-radius:8px; font-size:22px; font-weight:700; color:#fff; }
  .nps-n.det { background:#c0392b; } .nps-n.pas { background:#e0a93a; color:var(--c-deep); } .nps-n.pro { background:#2a8a4e; }
  .nps-bands { display:grid; grid-template-columns:1.1fr 0.85fr 1.05fr; gap:7px; }
  .nps-band { text-align:center; padding:9px 0; border-radius:8px; font-size:16px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase; }
  .nps-band.det { background:rgba(192,57,43,0.14); color:#c0392b; }
  .nps-band.pas { background:rgba(224,169,58,0.18); color:#a8760c; }
  .nps-band.pro { background:rgba(42,138,78,0.14); color:#2a8a4e; }
  .nps-formula { display:flex; align-items:center; justify-content:center; gap:22px; background:var(--c-deep); color:#fff; border-radius:12px; padding:22px 30px; flex-wrap:wrap; }
  .nps-formula .nf-res { font-size:26px; font-weight:700; color:var(--c-amb); }
  .nps-formula .nf-op { font-size:30px; font-weight:700; color:rgba(246,245,241,0.6); }
  .nps-formula .nf-term { display:flex; flex-direction:column; align-items:center; gap:3px; }
  .nps-formula .nf-term .big { font-size:24px; font-weight:700; }
  .nps-formula .nf-term .sm { font-size:14px; color:rgba(246,245,241,0.7); }
  .nps-bench { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
  .nps-bm { background:var(--bg-surface); border:1px solid var(--rule); border-left:6px solid var(--rule-strong); border-radius:8px; padding:14px 20px; }
  .nps-bm .v { font-size:24px; font-weight:700; color:var(--ink-1); }
  .nps-bm .l { font-size:16px; color:var(--ink-2); line-height:1.3; margin-top:2px; }
  .nps-bm.b1 { border-left-color:#c0392b; } .nps-bm.b2 { border-left-color:var(--c-amb); } .nps-bm.b3 { border-left-color:var(--c-grn); }
  .nps-src { font-size:14px; color:var(--ink-3); font-style:italic; margin-top:4px; }

  /* ============================================================
     KAPITEL 3 · Fragebogen (Slides 79–116) · components
     ============================================================ */
  /* Bild-Platzhalter — wird später durch Flow-Bild ersetzt */
  .imgph { background:repeating-linear-gradient(45deg, rgba(31,36,33,0.045) 0 11px, rgba(31,36,33,0.085) 11px 22px); border:1.5px dashed var(--rule-strong); border-radius:12px; display:flex; align-items:center; justify-content:center; text-align:center; }
  .imgph span { font-family:ui-monospace,monospace; font-size:13px; color:var(--ink-mute); text-transform:uppercase; letter-spacing:0.07em; line-height:1.4; padding:14px; }
  .imgph::before { content:"▦"; position:absolute; font-size:34px; color:var(--rule-strong); opacity:0.5; transform:translateY(-34px); }

  /* Beispiel → stattdessen (Frage-Regel) */
  .frule { flex:1; display:grid; grid-template-columns:440px 1fr; gap:48px; align-items:start; padding-top:8px; }
  .frule-side { display:flex; flex-direction:column; gap:22px; }
  .frule-ex { display:flex; flex-direction:column; gap:16px; }
  .fr-card { border-radius:12px; overflow:hidden; border:1px solid var(--rule); }
  .fr-head { padding:11px 22px; font-size:16px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase; color:#fff; display:flex; align-items:center; gap:11px; }
  .fr-card.bad .fr-head { background:var(--brand-crimson); }
  .fr-card.good .fr-head { background:var(--c-grn); }
  .fr-head .mk { width:24px; height:24px; border-radius:50%; background:rgba(255,255,255,0.25); display:flex; align-items:center; justify-content:center; font-size:15px; }
  .fr-body { padding:18px 24px; background:var(--bg-surface); font-size:24px; line-height:1.42; color:var(--ink-1); text-wrap:pretty; }
  .fr-body .q { font-style:italic; }
  .fr-body .opt { display:inline-flex; align-items:center; gap:8px; margin-right:18px; font-size:22px; color:var(--ink-2); white-space:nowrap; }
  .fr-body .opt::before { content:"☐"; font-size:23px; color:var(--ink-mute); }
  .fr-opts { display:flex; flex-wrap:wrap; gap:8px 4px; margin-top:10px; }

  /* Mini-Balkendiagramm (S82 Liebe-Beispiel) */
  .wbar { display:flex; flex-direction:column; gap:18px; width:100%; }
  .wbar-grp { display:flex; flex-direction:column; gap:7px; }
  .wbar-cat { font-size:20px; font-weight:700; color:var(--ink-1); }
  .wbar-row { display:flex; align-items:center; gap:10px; }
  .wbar-row i { height:18px; border-radius:0 4px 4px 0; }
  .wbar-row.g i { background:var(--c-grn); }
  .wbar-row.r i { background:var(--brand-crimson); }
  .wbar-row .v { font-size:17px; font-weight:700; color:var(--ink-3); font-variant-numeric:tabular-nums; }
  .wbar-legend { display:flex; flex-direction:column; gap:7px; margin-top:6px; padding-top:14px; border-top:1px solid var(--rule); }
  .wbar-leg { display:flex; align-items:center; gap:11px; font-size:22px; font-weight:600; color:var(--ink-1); line-height:1.32; }
  .wbar-leg .sw { width:20px; height:20px; border-radius:5px; flex:none; }

  /* ---- Slide 112: Ablaufplan (Flowchart) ---- */
  .flow-page { flex:1; display:flex; flex-direction:column; align-items:center; gap:9px; justify-content:center; }
  .fl-node { border-radius:10px; padding:13px 26px; font-size:21px; font-weight:600; text-align:center; max-width:760px; line-height:1.25; }
  .fl-node.fl-start, .fl-node.fl-end { background:var(--brand-crimson); color:#fff; font-weight:700; }
  .fl-node.fl-q { background:var(--bg-surface); border:2px solid var(--rule-strong); color:var(--ink-1); }
  .fl-arrow { width:2.5px; height:18px; background:var(--rule-strong); }
  .fl-branch { display:flex; gap:60px; align-items:center; }
  .fl-yes { color:var(--c-grn); font-weight:700; font-size:18px; }
  .fl-no { color:var(--brand-crimson); font-weight:700; font-size:18px; }
  .fl-pays, .fl-cards { display:flex; gap:12px; }
  .fl-pay, .fl-card { background:rgba(107,76,143,0.10); border:1px solid rgba(107,76,143,0.3); color:var(--c-vio); border-radius:100px; padding:9px 20px; font-size:18px; font-weight:700; }
  .fl-card { background:var(--c-rose-50); border-color:transparent; color:var(--brand-crimson); }

  /* ---- Slide 112 v2: exakter Ablaufplan (SVG) ---- */
  .fchart { flex:1; display:flex; align-items:stretch; justify-content:center; min-height:0; }
  .fchart svg { width:100%; height:100%; max-height:760px; display:block; overflow:visible; }
  .flb { width:100%; height:100%; box-sizing:border-box; background:var(--c-deep); color:#fff; display:flex; align-items:center; justify-content:center; text-align:center; border-radius:4px; font:600 21px/1.22 "Mona Sans",sans-serif; padding:6px 14px; }
  .fchart .lbl { font:700 21px "Mona Sans",sans-serif; fill:var(--ink-1); }
  /* ===== Kapitel 5 — TOC via chapter-divider, two-level subs ===== */
  .dir-c .chapter-divider .ch-sub.grp { font-weight:700; }
  .dir-c .chapter-divider .ch-sub.child { font-size:24px; padding:10px 0 10px 56px; border-bottom:1px solid rgba(31,36,33,0.07); }
  .dir-c .chapter-divider .ch-sub.child .ch-sub-num { font-size:13px; background:transparent; color:var(--ink-mute); }
  .dir-c .chapter-divider.k5 .ch-subs { margin-top:20px; max-width:1180px; }
  .dir-c .chapter-divider.k5 .ch-sub { padding:9px 0; }
  .dir-c .chapter-divider.k5 .ch-sub.active { background:var(--c-rose-50); border-radius:6px; padding-left:14px; margin-left:-14px; }
  .dir-c .chapter-divider.k5 .ch-sub.active .ch-sub-num { background:var(--brand-crimson); color:#fff; }
  .dir-c .chapter-divider.k5 .ch-sub.active > span:last-child { color:var(--ink-1); font-weight:700; }
  .dir-c .chapter-divider.k5 .ch-sub.dim { opacity:0.4; }
  .dir-c .chapter-divider.k5 .ch-sub.grp.dim { font-weight:400; }
  /* s159 compact */
  [data-screen-label="159 Säulendiagramm"] .qs-table td, [data-screen-label="159 Säulendiagramm"] .qs-table th { padding:2px 12px; font-size:14px; }
  [data-screen-label="159 Säulendiagramm"] .qs-table { max-width:330px; }
  [data-screen-label="162 Tabellen — Gruppierung"] .qs-table tbody td { padding:9px 18px; }
  [data-screen-label="162 Tabellen — Gruppierung"] .qs-table thead th { padding:10px 18px; }
  [data-screen-label="163 Tabellen und Histogramme"] .qs-table tbody td { padding:6px 14px; font-size:17px; }
  [data-screen-label="163 Tabellen und Histogramme"] .qs-table thead th { padding:8px 14px; }
  [data-screen-label="166 Kumulative Tabellen & Ogive"] .qs-table tbody td { padding:7px 16px; font-size:20px; }
  [data-screen-label="166 Kumulative Tabellen & Ogive"] .qs-table thead th { padding:8px 14px; line-height:1.2; }

  /* ===== K5 5.1.3 Lagemaße/Streuungsmaße ===== */
  .paper { background:linear-gradient(177deg,#fbfaf7,#eeebe3); border:1px solid #e3dfd5; border-radius:9px; box-shadow:0 16px 30px rgba(31,36,33,0.12); padding:20px 28px; }
  .paper-label { font-size:24px; font-weight:700; color:var(--ink-1); letter-spacing:-0.01em; }
  .mth { font-family:Georgia,"Times New Roman",serif; color:var(--ink-1); font-size:34px; line-height:1.05; display:inline-flex; align-items:center; gap:10px; white-space:nowrap; }
  .mth .v { font-style:italic; }
  .frac { display:inline-flex; flex-direction:column; align-items:center; vertical-align:middle; }
  .frac > .nm { padding:0 8px 2px; }
  .frac > .dn { padding:3px 8px 0; border-top:2px solid currentColor; }
  .ovl { display:inline-block; border-top:2px solid currentColor; line-height:1; padding-top:2px; }
  .sqrt { display:inline-flex; align-items:flex-start; gap:1px; }
  .sqrt > .rad { border-top:2px solid currentColor; padding:3px 7px 0; }
  .pcn { font-size:25px; line-height:1.4; color:var(--ink-2); }
  .pcn strong { color:var(--ink-1); }
  .vncap { font-size:18px; letter-spacing:0.12em; text-transform:uppercase; font-weight:700; }
  .vncap.v { color:#3E8E5A; } .vncap.n { color:var(--brand-crimson); }
  .l3cap { font-size:25px; font-weight:700; color:var(--ink-1); text-align:center; line-height:1.3; }

  /* ===== K5 5.1.4 Kreuztabellen ===== */
  .kreuz-q { font-size:31px; font-weight:700; color:var(--ink-1); text-align:center; line-height:1.3; }
  .kreuz-cap { font-size:20px; font-weight:600; color:var(--ink-2); margin-bottom:9px; }
  /* grouped cross-table */
  .xtab { border-collapse:collapse; font-size:22px; }
  .xtab thead th { background:var(--c-deep); color:var(--bg-app); font-weight:700; text-align:center; padding:11px 20px; line-height:1.18; }
  .xtab thead .grp-row th { font-size:20px; letter-spacing:0.03em; border-bottom:1px solid rgba(246,245,241,0.20); }
  .xtab thead .sub-row th { font-size:17px; font-weight:600; background:rgba(42,31,35,0.86); }
  .xtab thead th.rowhead { text-align:left; vertical-align:bottom; line-height:1.25; }
  .xtab tbody td { text-align:center; padding:11px 20px; color:var(--ink-2); font-variant-numeric:tabular-nums; border-bottom:1px solid var(--rule); }
  .xtab tbody td.rl { text-align:left; font-weight:700; color:var(--ink-1); }
  .xtab tbody tr:nth-child(odd) td { background:rgba(220,59,85,0.045); }
  .xtab .sumrow td { border-top:2px solid var(--rule-strong); border-bottom:none; font-weight:700; color:var(--ink-1); background:transparent !important; }
  .xtab .nrow td { color:var(--ink-3); background:transparent !important; border-bottom:none; }
  .xtab td.divr, .xtab th.divr { border-right:2px solid var(--rule-strong); }
  .xtab td.rl, .xtab th.rowhead { border-right:2px solid var(--rule-strong); }
  /* outcome corner tag */
  .kreuz-tag { position:absolute; top:120px; right:72px; padding:15px 24px; border-radius:11px; color:#fff; font-weight:700; font-size:21px; line-height:1.15; text-align:center; box-shadow:0 12px 28px rgba(31,36,33,0.22); max-width:240px; transform:rotate(2.2deg); z-index:4; }
  .kreuz-tag .kt-k { display:block; font-size:12px; letter-spacing:0.16em; text-transform:uppercase; opacity:0.8; margin-bottom:5px; }
  .kreuz-tag.scheinbar { background:var(--c-amb); color:var(--c-deep); }
  .kreuz-tag.verdeckt { background:var(--c-vio); }
  .kreuz-tag.keine { background:#2A8A4E; }
  /* third-variable preview */
  .kr-lead { font-size:30px; line-height:1.4; color:var(--ink-1); text-align:center; max-width:1100px; }
  .kr-lead strong { color:var(--brand-crimson); }
  .kr-outcomes { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; width:100%; }
  .kr-oc { display:flex; flex-direction:column; gap:10px; padding:30px 32px; border-radius:12px; border:1px solid var(--rule); background:var(--bg-surface); border-top:5px solid; }
  .kr-oc.amb { border-top-color:var(--c-amb); }
  .kr-oc.vio { border-top-color:var(--c-vio); }
  .kr-oc.grn { border-top-color:#2A8A4E; }
  .kr-oc-k { font-size:14px; letter-spacing:0.14em; text-transform:uppercase; font-weight:700; }
  .kr-oc.amb .kr-oc-k { color:#B9851A; }
  .kr-oc.vio .kr-oc-k { color:var(--c-vio); }
  .kr-oc.grn .kr-oc-k { color:#2A8A4E; }
  .kr-oc-t { font-size:27px; font-weight:700; color:var(--ink-1); line-height:1.15; }
  .kr-oc-d { font-size:20px; line-height:1.45; color:var(--ink-2); }
  .kr-prompt { font-size:28px; font-weight:700; color:var(--ink-1); text-align:center; }
  /* ===== K5 5.2.1 Hypothesentest ===== */
  .step-plaque { display:inline-block; background:linear-gradient(180deg,#f5f5f2,#e7e7e2); border:1px solid #dcdcd5; border-radius:8px; padding:15px 30px; font-size:25px; font-weight:700; color:var(--ink-1); box-shadow:0 6px 16px rgba(31,36,33,0.10); }
  .ht-paper { background:linear-gradient(177deg,#fbfaf7,#f1eee7); border:1px solid #e3dfd5; border-radius:9px; box-shadow:0 14px 30px rgba(31,36,33,0.12); padding:26px 32px; }
  .ht-paper p { font-size:22px; line-height:1.5; color:var(--ink-1); margin:0 0 16px; }
  .ht-paper p:last-child { margin-bottom:0; }
  .ht-paper .gk { color:var(--brand-crimson); font-weight:700; font-style:normal; }
  .ht-hyp { display:flex; flex-direction:column; gap:38px; }
  .ht-hyp .hh-row { display:flex; gap:16px; align-items:baseline; }
  .ht-hyp .hh-tag { font-family:Georgia,"Times New Roman",serif; font-style:italic; font-weight:700; font-size:30px; color:var(--ink-1); flex:none; }
  .ht-hyp .hh-txt { font-size:24px; line-height:1.4; color:var(--ink-1); }
  .ht-hyp .hh-formula { margin:14px 0 0 48px; }
  /* error matrix */
  .hmx { max-width:840px; }
  .hmatrix { border-collapse:separate; border-spacing:4px; width:100%; }
  .hmatrix th, .hmatrix td { padding:15px 16px; text-align:center; line-height:1.25; border-radius:5px; }
  .hmatrix thead th { background:#ECEAE6; color:var(--ink-1); font-weight:600; font-size:21px; }
  .hmatrix thead th.blank { background:transparent; }
  .hmatrix tbody th { background:#ECEAE6; text-align:left; font-weight:600; color:var(--ink-1); font-size:21px; }
  .hmatrix td.err { background:rgba(220,59,85,0.15); }
  .hmatrix td.ok { background:rgba(42,138,78,0.17); }
  .hmatrix .ct { display:block; font-weight:700; color:var(--ink-1); font-size:22px; }
  .hmatrix .cs { display:block; font-size:17px; color:var(--ink-3); margin-top:3px; }
  .hmx-anno { display:grid; grid-template-columns:30% 1fr 1fr; align-items:end; }
  .hmx-cellnote { font-size:19px; color:var(--ink-2); line-height:1.3; display:flex; align-items:center; justify-content:center; gap:10px; text-align:center; padding:0 8px; }
  .hmx-cellnote .ar { color:var(--brand-crimson); font-size:30px; font-weight:800; line-height:1; }
  .ht-sig { display:flex; gap:90px; }
  .ht-sig .sig-col { display:flex; flex-direction:column; gap:18px; }
  .ht-sig .sig-h { font-size:24px; color:var(--ink-1); }
  .ht-sig .sig-v { font-size:30px; font-weight:700; color:var(--ink-1); font-variant-numeric:tabular-nums; }
  .ht-sig .sig-v.mark { color:var(--brand-crimson); border:2.5px solid var(--brand-crimson); border-radius:30px; padding:4px 18px; align-self:flex-start; }
  /* test-selection table (Schritt 3) */
  .tsel { border-collapse:collapse; width:100%; font-size:18px; }
  .tsel thead th { background:var(--c-deep); color:var(--bg-app); font-weight:700; text-transform:uppercase; letter-spacing:0.05em; font-size:15px; padding:12px 16px; text-align:left; }
  .tsel td { padding:10px 16px; border-bottom:1px solid var(--rule); color:var(--ink-2); line-height:1.35; vertical-align:top; }
  .tsel td.grp { font-weight:700; color:var(--ink-1); font-size:20px; vertical-align:middle; border-right:1px solid var(--rule); background:rgba(31,36,33,0.02); }
  .tsel tr.grp-end td { border-bottom:2px solid var(--rule-strong); }
  .tsel .tst { font-style:italic; }
  .tsel td.hl { background:rgba(220,59,85,0.12); }
  .tsel td.hl-strong { background:rgba(220,59,85,0.12); color:var(--brand-crimson); font-weight:700; }
  /* formula sum glyph */
  .bigsum { display:inline-flex; flex-direction:column; align-items:center; vertical-align:middle; line-height:0.9; }
  .bigsum .sg { font-size:52px; font-weight:400; font-family:Georgia,serif; }
  .bigsum .sgsub { font-size:13px; color:var(--ink-3); font-style:italic; margin-top:2px; }
  /* chi-square critical values table */
  .chitab { border-collapse:collapse; font-size:15px; font-variant-numeric:tabular-nums; }
  .chitab th, .chitab td { padding:8px 12px; text-align:center; border-bottom:1px solid var(--rule); font-size:22px; }
  .chitab thead th { background:var(--c-deep); color:var(--bg-app); font-weight:700; font-size:22px; }
  .chitab td.dfc, .chitab thead th.dfc { font-weight:700; color:var(--ink-1); border-right:2px solid var(--rule-strong); font-style:italic; }
  .chitab thead th.dfc { color:var(--bg-app); }
  .chitab td.hit { background:rgba(220,59,85,0.18); color:var(--brand-crimson); font-weight:800; outline:2px solid var(--brand-crimson); }
  .ht-concl { font-size:30px; font-weight:700; color:var(--brand-crimson); }
  .kr-take { font-size:23px; line-height:1.45; color:var(--ink-2); text-align:center; max-width:1180px; margin:0 auto; }
  .kr-take strong { color:var(--brand-crimson); }
  [data-screen-label="178 Kreuztabelle — Beispiel"] .xtab thead .sub-row th { font-size:22px; }
  [data-screen-label="178 Kreuztabelle — Beispiel"] .xtab thead .grp-row th { font-size:23px; }
  [data-screen-label="180 Scheinbare Beziehung"] .xtab thead .sub-row th { font-size:20px; }
  [data-screen-label="180 Scheinbare Beziehung"] .xtab thead .grp-row th { font-size:23px; }
  [data-screen-label="181 Verdeckter Zusammenhang"] .xtab thead .sub-row th,
  [data-screen-label="182 Keine Veränderung"] .xtab thead .sub-row th { font-size:18px; }
  [data-screen-label="181 Verdeckter Zusammenhang"] .xtab thead .grp-row th,
  [data-screen-label="182 Keine Veränderung"] .xtab thead .grp-row th { font-size:21px; }
  /* s198 — fit left column (chi table + df block) above footer */
  [data-screen-label="198 Hypothesentest — kritischer Wert"] .chitab th,
  [data-screen-label="198 Hypothesentest — kritischer Wert"] .chitab td { padding:3px 12px; }

  /* ===== K5 5.2.2 Zusammenhangsmaße (Phi / C / V / Lambda) ===== */
  .coef-grid { display:grid; grid-template-columns:0.92fr 1.08fr; gap:60px; align-items:center; height:100%; }
  .coef-left { display:flex; flex-direction:column; align-items:center; gap:24px; }
  .coef-formula { display:flex; align-items:center; justify-content:center; min-height:150px; }
  .coef-formula img { display:block; max-width:100%; }
  .coef-fph { display:flex; align-items:center; justify-content:center; gap:10px; min-width:300px; min-height:140px; border:2px dashed #cdd2cf; border-radius:12px; color:#9aa39d; font-size:19px; padding:18px 26px; text-align:center; background:repeating-linear-gradient(135deg,#fafbfa,#fafbfa 10px,#f3f5f3 10px,#f3f5f3 20px); }
  .coef-legend { display:flex; flex-direction:column; gap:6px; font-size:22px; color:var(--ink-2); align-self:center; }
  .coef-legend .mth { font-size:24px; }
  .coef-right { display:flex; flex-direction:column; gap:16px; }
  .coef-lead { font-size:24px; line-height:1.5; color:var(--ink-1); margin:0; }
  .coef-lead .v, .coef-lead .gk { font-family:Georgia,"Times New Roman",serif; font-style:italic; }
  .coef-probs { list-style:none; margin:2px 0 0; padding:0; display:flex; flex-direction:column; gap:11px; }
  .coef-probs li { position:relative; padding-left:30px; font-size:22px; line-height:1.45; color:var(--ink-1); }
  .coef-probs li::before { content:""; position:absolute; left:6px; top:11px; width:8px; height:8px; border-radius:50%; background:var(--brand-crimson); }
  .coef-probs li .v, .coef-probs li .gk { font-family:Georgia,"Times New Roman",serif; font-style:italic; }
  .coef-probs-lbl { font-weight:700; color:var(--ink-2); font-size:22px; margin:6px 0 0; }
  .coef-ex { margin-top:8px; padding:34px 32px; background:linear-gradient(177deg,#fbfaf7,#f1eee7); border:1px solid #e3dfd5; border-radius:9px; box-shadow:0 12px 26px rgba(31,36,33,0.10); align-self:flex-start; display:flex; flex-direction:column; align-items:flex-start; gap:18px; }
  .coef-ex .coef-fph { min-width:240px; min-height:90px; }
  .coef-take { font-size:22px; color:var(--ink-2); font-style:italic; margin:2px 0 0; }
  .coef-take strong { color:var(--brand-crimson); font-style:normal; }
  /* annotation (s207) */
  .anno-cap { font-size:20px; line-height:1.25; }
  .anno-cap.grn { color:#1f8a5b; }
  .anno-cap.org { color:#c9781a; }
  .xcirc { position:relative; }
  .xcirc::after { content:""; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:44px; height:32px; border:2.5px solid; border-radius:50%; }
  .xcirc.grn::after { border-color:#1f8a5b; }
  .xcirc.org::after { border-color:#e08a1e; }
  .rtag { position:absolute; left:-54px; top:50%; transform:translateY(-50%); font-size:19px; color:var(--ink-3); font-style:italic; white-space:nowrap; }
  [data-screen-label="207 Lambda — Berechnung"] .xtab td.rl { position:relative; }
  .ctag { position:absolute; left:50%; bottom:-32px; transform:translateX(-50%); font-size:19px; color:var(--ink-3); font-style:italic; white-space:nowrap; }
  [data-screen-label="207 Lambda — Berechnung"] .xtab td.csum { position:relative; }

  /* ===== K5 5.2.3 Beziehung zweier (metrischer) Variablen ===== */
  .sc { width:100%; height:auto; display:block; }
  .sc .ax { stroke:#b6bac2; stroke-width:1.6; fill:none; }
  .sc circle { fill:#a9c8ec; stroke:#6f9fd0; stroke-width:1.3; }
  .sc-cell { display:flex; flex-direction:column; align-items:center; gap:10px; }
  .sc-cap { font-size:21px; font-weight:700; color:var(--ink-1); text-align:center; line-height:1.2; }
  .corr-lbl { font-size:23px; font-weight:700; color:var(--ink-2); text-align:center; margin:0 0 4px; }
  .konzept { background:var(--c-rose-50); border:1px solid #ecd6dc; border-radius:8px; overflow:hidden; align-self:start; }
  .konzept-head { display:flex; align-items:center; gap:20px; background:var(--brand-crimson); padding:16px 26px; }
  .konzept-head .kic { width:46px; height:46px; flex:none; border-radius:50%; background:#fff; color:var(--brand-crimson); display:flex; align-items:center; justify-content:center; font-family:Georgia,serif; font-style:italic; font-weight:700; font-size:30px; }
  .konzept-head h3 { margin:0; font-size:26px; font-weight:700; color:#fff; letter-spacing:-0.01em; }
  .konzept-body { padding:26px 30px; display:flex; flex-direction:column; gap:16px; }
  .konzept-body p { margin:0; font-size:23px; line-height:1.5; color:var(--ink-1); }
  .konzept-body .v { font-family:Georgia,"Times New Roman",serif; font-style:italic; }
  .rwert { border-collapse:collapse; }
  .rwert th { background:#3c4654; color:#fff; font-size:21px; font-weight:700; text-align:left; padding:12px 22px; }
  .rwert th.r { text-align:left; }
  .rwert td { font-size:22px; padding:11px 22px; border-bottom:1px solid var(--rule); color:var(--ink-1); }
  .rwert td .v { font-family:Georgia,"Times New Roman",serif; font-style:italic; }
  .rwert tr:last-child td { border-bottom:none; }
  .dtab { border-collapse:collapse; font-variant-numeric:tabular-nums; }
  .dtab th { font-size:18px; font-style:italic; color:var(--ink-2); padding:5px 12px; text-align:center; font-weight:600; white-space:nowrap; }
  .dtab td { font-size:18px; padding:4px 12px; text-align:center; color:var(--ink-1); }
  .dtab tbody tr:nth-child(odd) td.d { background:#eaf1fb; }
  .dtab tbody tr:nth-child(even) td.d { background:#dce8f7; }
  .dtab .lbl { text-align:right; font-style:italic; color:var(--ink-2); }
  .dtab .sum td { font-weight:700; padding-top:8px; }
  .dtab2 { border-collapse:collapse; font-variant-numeric:tabular-nums; }
  .dtab2 th { font-size:20px; color:var(--ink-2); padding:8px 22px; text-align:center; font-weight:700; line-height:1.25; }
  .dtab2 td { font-size:21px; padding:7px 22px; text-align:center; color:var(--ink-1); }
  .dtab2 tbody tr:nth-child(odd) td { background:#eaf1fb; }
  .dtab2 tbody tr:nth-child(even) td { background:#dce8f7; }
  [data-screen-label="211 Korrelationskoeffizient — Eigenschaften"] .coef-probs li { font-size:25px; line-height:1.5; }
  [data-screen-label="211 Korrelationskoeffizient — Eigenschaften"] .coef-probs-lbl { font-size:26px; }
  [data-screen-label="213 Regressionsanalyse"] .coef-probs-lbl { font-size:26px; }
  [data-screen-label="213 Regressionsanalyse"] > .slide-body > div:first-child .coef-probs li { font-size:26px; line-height:1.5; }
  [data-screen-label="213 Regressionsanalyse"] .konzept-body p { font-size:25px; }
  [data-screen-label="213 Regressionsanalyse"] .konzept-body .coef-probs li { font-size:23px; }
  [data-screen-label="214 Regressionsanalyse — Beispiel"] .coef-probs li { font-size:24px; line-height:1.45; }
  [data-screen-label="221 Conjoint — Warum"] .coef-probs li { font-size:27px; line-height:1.5; }
  [data-screen-label="221 Conjoint — Warum"] .slide-body > p { font-size:30px !important; line-height:1.5; }

  /* ===== K6 6.1 Conjoint-Analyse ===== */
  .cj-prompt { font-size:25px; line-height:1.45; color:var(--ink-1); background:var(--c-rose-50); border-left:5px solid var(--brand-crimson); border-radius:4px; padding:20px 26px; }
  .likert { border-collapse:collapse; width:100%; table-layout:fixed; }
  .likert .attr, .likert thead th:first-child { width:32%; }
  .likert thead th { font-size:20px; color:var(--ink-3); font-weight:600; padding:8px 12px; text-align:center; vertical-align:bottom; line-height:1.2; font-style:italic; }
  .likert tbody td { padding:15px 12px; border-top:1px solid var(--rule); }
  .likert .attr { font-size:24px; font-weight:600; color:var(--ink-1); text-align:left; white-space:nowrap; }
  .likert .opt { text-align:center; }
  .likert .dot { width:28px; height:28px; border:2.5px solid #b9c0c8; border-radius:50%; display:inline-block; vertical-align:middle; }
  .likert .dot.on { background:var(--brand-crimson); border-color:var(--brand-crimson); }
  .cc-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
  .cc-card { border:1px solid var(--rule); border-radius:12px; overflow:hidden; display:flex; flex-direction:column; background:var(--bg-surface); }
  .cc-head { background:var(--c-deep); color:#fff; font-size:27px; font-weight:700; text-align:center; padding:15px; }
  .cc-body { padding:22px 24px; display:flex; flex-direction:column; gap:13px; font-size:23px; color:var(--ink-1); flex:1; }
  .cc-price { font-size:27px; font-weight:700; color:var(--brand-crimson); margin-top:10px; }
  .cc-choose { border-top:1px solid var(--rule); padding:16px; display:flex; justify-content:center; }
  .cc-box { width:30px; height:30px; border:2.5px solid #b9c0c8; border-radius:5px; }

  /* ===== K6 6.2 Marktsimulationen ===== */
  .preftab { border-collapse:collapse; font-variant-numeric:tabular-nums; }
  .preftab th { background:#3c4654; color:#fff; font-size:25px; font-weight:700; padding:14px 34px; text-align:center; }
  .preftab th.rowh { text-align:left; }
  .preftab td { font-size:25px; padding:13px 34px; text-align:center; border-bottom:1px solid var(--rule); color:var(--ink-1); }
  .preftab td.rowh { text-align:left; font-weight:600; }
  .preftab .mean td { font-weight:700; border-top:3px solid var(--ink-3); border-bottom:none; background:#f3f1ec; }
  .preftab td.hl { background:var(--c-rose-50); }
  .preftab .mean td.hl { background:#f6dfe4; color:var(--brand-crimson); }
  .preftab .wahl { color:var(--brand-crimson); font-weight:700; }
  .preftab .grouph { text-align:center; font-weight:700; border-bottom:1px solid rgba(255,255,255,0.32); padding-bottom:9px; padding-top:14px; }
  .preftab .sub-row th { padding-top:11px; padding-bottom:14px; }
  .preftab th.wahlh { vertical-align:middle; }
  .cdot { display:inline-block; width:16px; height:16px; border-radius:50%; vertical-align:middle; margin-right:9px; }
  .cdot.blau { background:#2a6fdb; } .cdot.rot { background:#d0322f; } .cdot.gelb { background:#e0a81e; }

  /* S227 — Warum Marktsimulationen? Wettbewerber! */
  [data-screen-label^="227"] .slide-body { display:flex; flex-direction:column; gap:34px; align-items:center; justify-content:center; }
  [data-screen-label^="227"] .wb-scenario { font-size:30px; color:var(--ink-1); text-align:center; max-width:1180px; margin:0; line-height:1.5; }
  [data-screen-label^="227"] .wb-scenario strong { color:var(--ink-1); font-weight:700; }
  [data-screen-label^="227"] .sharebar { display:flex; width:1040px; height:62px; border-radius:9px; overflow:hidden; }
  [data-screen-label^="227"] .sharebar .seg { display:flex; align-items:center; justify-content:center; gap:13px; color:#fff; font-size:24px; font-weight:700; letter-spacing:0.01em; }
  [data-screen-label^="227"] .sharebar .seg.round { background:#2a6fdb; flex:80; }
  [data-screen-label^="227"] .sharebar .seg.square { background:#8d9098; flex:20; }
  [data-screen-label^="227"] .ico-round { width:25px; height:25px; border-radius:50%; background:#fff; display:inline-block; }
  [data-screen-label^="227"] .ico-square { width:23px; height:23px; border-radius:4px; background:#fff; display:inline-block; }
  [data-screen-label^="227"] .wb-acts { display:grid; grid-template-columns:1fr 1fr; gap:38px; width:1180px; align-items:stretch; }
  [data-screen-label^="227"] .wb-card { border:1px solid var(--rule); border-radius:14px; padding:26px 32px 28px; background:var(--bg-surface); display:flex; flex-direction:column; gap:16px; }
  [data-screen-label^="227"] .wb-card.twist { border-color:rgba(220,59,85,0.45); background:var(--c-rose-50); }
  [data-screen-label^="227"] .wb-eyebrow { font-size:18px; font-weight:700; letter-spacing:0.16em; text-transform:uppercase; color:var(--ink-3); }
  [data-screen-label^="227"] .wb-card.twist .wb-eyebrow { color:var(--brand-crimson); }
  [data-screen-label^="227"] .wb-q { font-size:25px; color:var(--ink-2); line-height:1.45; margin:0; }
  [data-screen-label^="227"] .wb-answer { display:flex; align-items:center; gap:18px; margin-top:2px; }
  [data-screen-label^="227"] .big-round { width:58px; height:58px; border-radius:50%; background:#2a6fdb; flex:none; }
  [data-screen-label^="227"] .big-square { width:54px; height:54px; border-radius:8px; background:#2a8a4e; flex:none; }
  [data-screen-label^="227"] .wb-answer .lbl { font-size:27px; font-weight:700; color:var(--ink-1); }
  [data-screen-label^="227"] .wb-answer .lbl small { display:block; font-size:18px; font-weight:600; color:var(--ink-3); letter-spacing:0.02em; }
  [data-screen-label^="227"] .comp-row { display:flex; flex-wrap:wrap; gap:11px; align-items:center; }
  [data-screen-label^="227"] .comp-round { width:34px; height:34px; border-radius:50%; background:#2a6fdb; opacity:0.85; flex:none; }
  [data-screen-label^="227"] .comp-gap { width:1px; height:40px; background:var(--rule-strong); margin:0 6px; flex:none; }
  [data-screen-label^="227"] .comp-square { width:48px; height:48px; border-radius:9px; background:#2a8a4e; flex:none; box-shadow:0 4px 14px rgba(42,138,78,0.3); }
  [data-screen-label^="227"] .comp-note { font-size:21px; color:var(--ink-2); line-height:1.4; margin:0; }
  [data-screen-label^="227"] .comp-note b { color:var(--brand-crimson); }
  [data-screen-label^="227"] .wb-take { font-size:26px; line-height:1.45; color:var(--ink-1); text-align:center; max-width:1120px; margin:0 auto; }
  [data-screen-label^="227"] .wb-take strong { color:#2a8a4e; }

  /* S228 — Warum Marktsimulationen? (Vorteile) */
  [data-screen-label^="228"] .slide-body { display:flex; flex-direction:column; gap:30px; justify-content:center; }
  [data-screen-label^="228"] .adv-intro { font-size:28px; line-height:1.5; color:var(--ink-1); margin:0; max-width:1660px; }
  [data-screen-label^="228"] .adv-intro strong { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="228"] .adv-grid { display:grid; grid-template-columns:1fr 1fr; gap:26px 34px; }
  [data-screen-label^="228"] .adv-card { display:grid; grid-template-columns:auto 1fr; gap:22px; align-items:start; border:1px solid var(--rule); border-radius:14px; padding:24px 30px; background:var(--bg-surface); }
  [data-screen-label^="228"] .adv-num { font-size:34px; font-weight:800; color:var(--brand-crimson); line-height:1; font-variant-numeric:tabular-nums; }
  [data-screen-label^="228"] .adv-card h3 { font-size:25px; font-weight:700; color:var(--ink-1); margin:0 0 8px; letter-spacing:-0.01em; }
  [data-screen-label^="228"] .adv-card p { font-size:22px; line-height:1.45; color:var(--ink-2); margin:0; }
  [data-screen-label^="228"] .adv-sub { list-style:none; margin:11px 0 0; padding:0; display:flex; flex-direction:column; gap:7px; }
  [data-screen-label^="228"] .adv-sub li { font-size:21px; line-height:1.4; color:var(--ink-2); padding-left:24px; position:relative; }
  [data-screen-label^="228"] .adv-sub li::before { content:"→"; position:absolute; left:0; color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="228"] .adv-card.echo { background:var(--c-rose-50); border-color:rgba(220,59,85,0.35); }

  /* S229 — Was machen Marktsimulationen? (Prozess) */
  [data-screen-label^="229"] .slide-body { display:flex; flex-direction:column; gap:42px; justify-content:center; }
  [data-screen-label^="229"] .sim-lead { font-size:28px; line-height:1.5; color:var(--ink-1); margin:0 auto; max-width:1500px; text-align:center; }
  [data-screen-label^="229"] .sim-lead strong { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="229"] .sim-flow { display:flex; align-items:center; justify-content:center; gap:20px; }
  [data-screen-label^="229"] .sim-col { display:flex; flex-direction:column; gap:14px; }
  [data-screen-label^="229"] .sim-card { border:1px solid var(--rule); border-radius:14px; padding:22px 26px; background:var(--bg-surface); width:380px; }
  [data-screen-label^="229"] .sc-eyebrow { font-size:16px; font-weight:700; letter-spacing:0.15em; text-transform:uppercase; color:var(--ink-3); display:block; margin-bottom:9px; }
  [data-screen-label^="229"] .sc-title { font-size:24px; font-weight:700; color:var(--ink-1); line-height:1.3; }
  [data-screen-label^="229"] .sc-note { font-size:19px; color:var(--ink-2); line-height:1.4; margin-top:7px; }
  [data-screen-label^="229"] .sim-plus { text-align:center; font-size:30px; color:var(--ink-3); font-weight:300; line-height:0.6; }
  [data-screen-label^="229"] .sim-arrow { font-size:48px; color:var(--brand-crimson); font-weight:300; flex:none; }
  [data-screen-label^="229"] .sim-card.accent { background:var(--c-rose-50); border-color:rgba(220,59,85,0.42); width:360px; }
  [data-screen-label^="229"] .sim-card.out { background:#3c4654; border:none; width:340px; }
  [data-screen-label^="229"] .sim-card.out .sc-eyebrow { color:rgba(255,255,255,0.6); }
  [data-screen-label^="229"] .sim-card.out .sc-title { color:#fff; }
  [data-screen-label^="229"] .sim-card.out .sc-note { color:rgba(255,255,255,0.82); }

  /* S230 — Wahlregeln */
  [data-screen-label^="230"] .slide-body { display:flex; flex-direction:column; gap:30px; justify-content:center; }
  [data-screen-label^="230"] .wr-lead { font-size:28px; line-height:1.5; color:var(--ink-1); margin:0; max-width:1660px; }
  [data-screen-label^="230"] .wr-lead strong { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="230"] .wr-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; align-items:stretch; }
  [data-screen-label^="230"] .wr-card { border:1px solid var(--rule); border-radius:14px; padding:28px 30px; background:var(--bg-surface); display:flex; flex-direction:column; gap:6px; }
  [data-screen-label^="230"] .wr-card h3 { font-size:26px; font-weight:700; color:var(--brand-crimson); margin:0; letter-spacing:-0.01em; }
  [data-screen-label^="230"] .wr-card .wr-sub { font-size:18px; color:var(--ink-3); font-weight:600; margin-bottom:12px; }
  [data-screen-label^="230"] .wr-card ul { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:12px; }
  [data-screen-label^="230"] .wr-card li { font-size:21px; line-height:1.42; color:var(--ink-2); padding-left:24px; position:relative; }
  [data-screen-label^="230"] .wr-card li::before { content:"–"; position:absolute; left:0; color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="230"] .wr-formel { margin-top:auto; padding-top:24px; display:flex; justify-content:center; }
  [data-screen-label^="230"] .wr-formel img { height:135px; width:auto; }

  /* S232 — Marktsegmentierung (Definition) */
  [data-screen-label^="232"] .slide-body { display:flex; flex-direction:column; justify-content:center; gap:28px; }
  [data-screen-label^="232"] .ms-def { background:var(--c-rose-50); border-top:6px solid var(--brand-crimson); border-radius:6px; padding:32px 46px; }
  [data-screen-label^="232"] .ms-def .lbl { font-size:19px; letter-spacing:0.18em; text-transform:uppercase; color:var(--brand-crimson); font-weight:700; margin-bottom:16px; }
  [data-screen-label^="232"] .ms-def p { font-size:33px; font-weight:600; line-height:1.36; color:var(--ink-1); margin:0; text-wrap:pretty; }
  [data-screen-label^="232"] .ms-def .term { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="232"] .ms-row { display:grid; grid-template-columns:1.25fr 1fr; gap:34px; align-items:stretch; }
  [data-screen-label^="232"] .seg-viz { border:1px solid var(--rule); border-radius:14px; background:var(--bg-surface); padding:24px; display:flex; flex-direction:column; gap:14px; align-items:center; justify-content:center; }
  [data-screen-label^="232"] .seg-viz img { width:100%; max-width:470px; height:auto; display:block; }
  [data-screen-label^="232"] .seg-note { font-size:21px; color:var(--ink-2); line-height:1.4; text-align:center; margin:0; }
  [data-screen-label^="232"] .seg-note strong { color:var(--ink-1); }
  [data-screen-label^="232"] .ziel { border:1px solid var(--rule); border-left:6px solid var(--c-grn); border-radius:10px; background:var(--bg-surface); padding:28px 32px; display:flex; flex-direction:column; gap:12px; justify-content:center; }
  [data-screen-label^="232"] .ziel .zlbl { font-size:19px; letter-spacing:0.16em; text-transform:uppercase; color:var(--c-grn); font-weight:700; }
  [data-screen-label^="232"] .ziel p { font-size:24px; line-height:1.45; color:var(--ink-1); margin:0; }

  /* S233 — Effektive Marktsegmentierung (6 Kriterien) */
  [data-screen-label^="233"] .slide-body { display:flex; flex-direction:column; justify-content:center; gap:30px; }
  [data-screen-label^="233"] .crit-lead { font-size:28px; line-height:1.5; color:var(--ink-1); margin:0; max-width:1660px; }
  [data-screen-label^="233"] .crit-lead strong { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="233"] .crit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px 28px; }
  [data-screen-label^="233"] .crit-card { border:1px solid var(--rule); border-radius:14px; padding:24px 28px; background:var(--bg-surface); display:flex; flex-direction:column; gap:11px; }
  [data-screen-label^="233"] .crit-head { display:flex; align-items:center; gap:14px; }
  [data-screen-label^="233"] .crit-num { width:42px; height:42px; flex:none; border-radius:50%; background:var(--brand-crimson); color:#fff; font-size:21px; font-weight:700; display:flex; align-items:center; justify-content:center; font-variant-numeric:tabular-nums; }
  [data-screen-label^="233"] .crit-card h3 { font-size:24px; font-weight:700; color:var(--ink-1); margin:0; letter-spacing:-0.01em; }
  [data-screen-label^="233"] .crit-card p { font-size:20px; line-height:1.42; color:var(--ink-2); margin:0; }

  /* S234 — Typologie von Segmentierungsmerkmalen (2×2-Matrix) */
  [data-screen-label^="234"] .slide-body { display:flex; flex-direction:column; justify-content:center; }
  [data-screen-label^="234"] .typo { display:grid; grid-template-columns:172px 1fr 1fr; grid-template-rows:62px 1fr 1fr; gap:16px; flex:1; }
  [data-screen-label^="234"] .typo .corner { background:transparent; }
  [data-screen-label^="234"] .typo .chead { display:flex; align-items:center; justify-content:center; font-size:25px; font-weight:700; color:#fff; background:#3c4654; border-radius:10px; }
  [data-screen-label^="234"] .typo .rhead { display:flex; align-items:center; justify-content:center; font-size:23px; font-weight:700; color:#fff; background:#3c4654; border-radius:10px; text-align:center; padding:0 10px; line-height:1.25; }
  [data-screen-label^="234"] .typo .cell { border:1px solid var(--rule); border-radius:12px; background:var(--bg-surface); padding:22px 28px; display:flex; align-items:center; }
  [data-screen-label^="234"] .typo .cell ul { margin:0; padding:0; list-style:none; display:flex; flex-direction:column; gap:9px; }
  [data-screen-label^="234"] .typo .cell li { font-size:22px; line-height:1.34; color:var(--ink-2); padding-left:22px; position:relative; }
  [data-screen-label^="234"] .typo .cell li::before { content:"•"; position:absolute; left:0; color:var(--brand-crimson); font-weight:700; }

  /* S235 — Nutzen-Segmentierung (Zitate) */
  [data-screen-label^="235"] .slide-body { display:flex; flex-direction:column; justify-content:center; gap:34px; }
  [data-screen-label^="235"] .ns-lead { font-size:28px; line-height:1.5; color:var(--ink-1); margin:0; max-width:1660px; }
  [data-screen-label^="235"] .ns-lead strong { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="235"] .quote-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
  [data-screen-label^="235"] .qcard { position:relative; background:var(--c-rose-50); border-radius:8px; border-top:5px solid var(--brand-crimson); padding:46px 46px 30px; }
  [data-screen-label^="235"] .qcard::before { content:"\201C"; position:absolute; left:30px; top:6px; font-size:96px; line-height:1; color:var(--brand-crimson); opacity:0.25; font-weight:700; }
  [data-screen-label^="235"] .qcard p { font-size:26px; line-height:1.45; color:var(--ink-1); margin:0 0 18px; font-style:italic; text-wrap:pretty; }
  [data-screen-label^="235"] .qcard .src { font-size:21px; font-weight:700; color:var(--brand-crimson); }

  /* S236 — Bewertung von Segmentierungsmerkmalen (Tabelle) */
  [data-screen-label^="236"] .slide-body { display:flex; flex-direction:column; justify-content:center; gap:18px; }
  .segeval { border-collapse:collapse; width:100%; font-variant-numeric:tabular-nums; }
  .segeval th { background:#3c4654; color:#fff; font-size:18px; font-weight:700; padding:13px 6px; text-align:center; line-height:1.18; vertical-align:middle; }
  .segeval th.rowh { text-align:left; width:30%; padding-left:20px; }
  .segeval td { font-size:24px; font-weight:700; padding:6px 6px; text-align:center; border-bottom:1px solid var(--rule); }
  .segeval td.rowh { text-align:left; font-size:20px; font-weight:600; color:var(--ink-1); padding-left:42px; }
  .segeval tr.grp td { background:#ece9e2; font-size:20px; font-weight:800; color:var(--ink-1); text-align:left; padding-left:20px; letter-spacing:0.01em; }
  .segeval tr.solo td.rowh { font-weight:800; padding-left:20px; }
  .segeval .r-pp { color:#1f8a4d; } .segeval .r-p { color:#5aa86e; }
  .segeval .r-n { color:#c8930f; } .segeval .r-m { color:#d0322f; }
  .segeval tr.hl-row td { background:#FBF3A6; }
  .segeval tr.hl-row td.rowh { color:var(--ink-1); }
  [data-screen-label^="236"] .seg-take { font-size:21px; line-height:1.4; color:var(--ink-1); text-align:center; margin:0; max-width:1660px; }
  [data-screen-label^="236"] .seg-take strong { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="236"] .seg-take .hlw { background:#FBF3A6; padding:1px 6px; border-radius:3px; font-weight:700; }
  [data-screen-label^="236"] .seg-legend { display:flex; gap:30px; justify-content:center; font-size:19px; color:var(--ink-2); }
  [data-screen-label^="236"] .seg-legend b { font-weight:800; margin-right:7px; }

  /* S237 — Paradox der Nutzensegmentierung */
  [data-screen-label^="238"] .slide-body { display:flex; flex-direction:column; justify-content:center; gap:28px; }
  [data-screen-label^="238"] .px-lead { font-size:28px; line-height:1.5; color:var(--ink-1); margin:0; max-width:1660px; }
  [data-screen-label^="238"] .px-lead strong { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="238"] .px-grid { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
  [data-screen-label^="238"] .px-card { border:1px solid var(--rule); border-radius:14px; background:var(--bg-surface); padding:28px 32px; display:flex; flex-direction:column; gap:12px; }
  [data-screen-label^="238"] .px-card .tag { font-size:18px; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:var(--ink-3); }
  [data-screen-label^="238"] .px-card h3 { font-size:25px; font-weight:700; color:var(--ink-1); margin:0; }
  [data-screen-label^="238"] .px-card p { font-size:22px; line-height:1.45; color:var(--ink-2); margin:0; }
  [data-screen-label^="238"] .px-take { border-left:6px solid var(--brand-crimson); background:var(--c-rose-50); border-radius:0 10px 10px 0; padding:26px 32px; font-size:24px; line-height:1.45; color:var(--ink-1); }
  [data-screen-label^="238"] .px-take strong { color:var(--brand-crimson); }

  /* S237 — Weihnachtsbäume (schematische Cluster-Profile) */
  [data-screen-label^="237"] .slide-body { display:flex; flex-direction:column; justify-content:center; gap:18px; }
  [data-screen-label^="237"] .ct-wrap { width:100%; }
  [data-screen-label^="237"] .ct-wrap svg { width:100%; height:auto; display:block; }
  [data-screen-label^="237"] .ct-foot { display:flex; gap:40px; align-items:flex-start; justify-content:space-between; }
  [data-screen-label^="237"] .ct-legend { display:flex; flex-direction:column; gap:6px; font-size:18px; color:var(--ink-2); line-height:1.35; }
  [data-screen-label^="237"] .ct-legend b { color:var(--ink-1); }
  [data-screen-label^="237"] .ct-take { flex:1; border-left:6px solid var(--brand-crimson); background:var(--c-rose-50); border-radius:0 10px 10px 0; padding:18px 26px; font-size:21px; line-height:1.45; color:var(--ink-1); max-width:1080px; }
  [data-screen-label^="237"] .ct-take strong { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="237"] .ct-note { font-size:15px; color:var(--ink-3); font-style:italic; }

  /* S240 — Positionierung (Definition) */
  [data-screen-label^="240"] .slide-body { display:flex; flex-direction:column; justify-content:center; gap:26px; }
  [data-screen-label^="240"] .pos-row { display:grid; grid-template-columns:1.45fr 1fr; gap:40px; align-items:stretch; }
  [data-screen-label^="240"] .pos-def { background:var(--c-rose-50); border-top:6px solid var(--brand-crimson); border-radius:6px; padding:30px 38px; display:flex; flex-direction:column; gap:20px; justify-content:center; }
  [data-screen-label^="240"] .pos-def .lbl { font-size:19px; letter-spacing:0.18em; text-transform:uppercase; color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="240"] .pos-def p { font-size:27px; font-weight:600; line-height:1.4; color:var(--ink-1); margin:0; text-wrap:pretty; }
  [data-screen-label^="240"] .pos-def .term { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="240"] .pos-ziel { font-size:22px; line-height:1.5; color:var(--ink-2); margin:0; }
  [data-screen-label^="240"] .pos-ziel b.zl { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="240"] .pos-ziel strong { color:var(--ink-1); font-weight:700; }
  [data-screen-label^="240"] .pos-img { border:1px solid var(--rule); border-radius:14px; background:var(--bg-surface); padding:26px 26px 20px; display:flex; flex-direction:column; gap:14px; align-items:center; justify-content:center; }
  [data-screen-label^="240"] .pos-img img { width:100%; max-width:420px; height:auto; }
  [data-screen-label^="240"] .pos-img .cap { font-size:21px; line-height:1.4; color:var(--ink-2); text-align:center; }
  [data-screen-label^="240"] .pos-img .cap strong { color:var(--brand-crimson); }

  /* S241 — Rolle der Wahrnehmung (Pepsi/Coke) */
  [data-screen-label^="241"] .slide-body { display:flex; flex-direction:column; justify-content:center; gap:22px; }
  [data-screen-label^="241"] .perc-lead { font-size:27px; line-height:1.5; color:var(--ink-1); margin:0; max-width:1660px; }
  [data-screen-label^="241"] .perc-lead strong { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="241"] .perc-grid { display:grid; grid-template-columns:1fr 1fr; gap:36px; }
  [data-screen-label^="241"] .perc-panel { border:1px solid var(--rule); border-radius:14px; background:var(--bg-surface); padding:22px 28px 24px; display:flex; flex-direction:column; gap:16px; }
  [data-screen-label^="241"] .perc-head { display:flex; align-items:baseline; gap:12px; }
  [data-screen-label^="241"] .perc-head h3 { font-size:25px; font-weight:700; color:var(--ink-1); margin:0; }
  [data-screen-label^="241"] .perc-head span { font-size:18px; color:var(--ink-3); }
  [data-screen-label^="241"] .pbar-row { display:grid; grid-template-columns:128px 1fr 52px; align-items:center; gap:14px; }
  [data-screen-label^="241"] .pbar-lbl { font-size:19px; color:var(--ink-2); display:flex; align-items:center; gap:9px; }
  [data-screen-label^="241"] .pbar-lbl .cdot2 { width:13px; height:13px; border-radius:50%; flex:none; }
  [data-screen-label^="241"] .pbar-track { background:var(--bg-sunken); border-radius:6px; height:26px; overflow:hidden; }
  [data-screen-label^="241"] .pbar-fill { height:100%; border-radius:6px 0 0 6px; }
  [data-screen-label^="241"] .pbar-val { font-size:20px; font-weight:700; color:var(--ink-1); text-align:right; font-variant-numeric:tabular-nums; }
  [data-screen-label^="241"] .perc-take { border-left:6px solid var(--brand-crimson); background:var(--c-rose-50); border-radius:0 10px 10px 0; padding:20px 28px; font-size:23px; line-height:1.45; color:var(--ink-1); }
  [data-screen-label^="241"] .perc-take strong { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="241"] .perc-cans { display:flex; gap:30px; align-items:flex-end; justify-content:center; }
  [data-screen-label^="241"] .can { height:150px; width:auto; filter:drop-shadow(0 10px 20px rgba(31,36,33,0.16)); }

  /* S242 — Wahrnehmungskarten (Definition) */
  [data-screen-label^="242"] .slide-body { display:flex; flex-direction:row; align-items:center; justify-content:center; gap:30px; }
  [data-screen-label^="242"] .wk-left { flex:1.05; display:flex; justify-content:center; padding:0 48px; }
  [data-screen-label^="242"] .wk-left .beermap { max-width:560px; margin:0; }
  [data-screen-label^="242"] .wk-right { flex:1; display:flex; flex-direction:column; gap:18px; max-width:760px; }
  [data-screen-label^="242"] .wk-def { font-size:24px; line-height:1.5; color:var(--ink-1); margin:0; }
  [data-screen-label^="242"] .wk-def .term { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="242"] .wk-grid { display:flex; flex-direction:column; gap:14px; }
  [data-screen-label^="242"] .wk-card { border:1px solid var(--rule); border-radius:12px; background:var(--bg-surface); padding:18px 24px; display:flex; flex-direction:column; gap:5px; border-left:5px solid var(--brand-crimson); }
  [data-screen-label^="242"] .wk-card:nth-child(2){ border-left-color:var(--c-amb); }
  [data-screen-label^="242"] .wk-card:nth-child(3){ border-left-color:var(--c-vio); }
  [data-screen-label^="242"] .wk-card h3 { font-size:22px; font-weight:700; color:var(--ink-1); margin:0; }
  [data-screen-label^="242"] .wk-card p { font-size:20px; line-height:1.4; color:var(--ink-2); margin:0; }

  /* S243 — Ziel der Positionierung (Wahrnehmungskarte) */
  [data-screen-label^="243"] .slide-body { display:flex; flex-direction:row; gap:50px; align-items:center; justify-content:center; }
  [data-screen-label^="243"] .zp-map { flex:none; }
  [data-screen-label^="243"] .zp-map svg { display:block; }
  [data-screen-label^="243"] .zp-text { display:flex; flex-direction:column; gap:24px; max-width:680px; }
  [data-screen-label^="243"] .zp-ziel { font-size:28px; line-height:1.4; color:var(--ink-1); margin:0; font-weight:600; }
  [data-screen-label^="243"] .zp-ziel strong { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="243"] .zp-bullets { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:16px; }
  [data-screen-label^="243"] .zp-bullets li { font-size:25px; line-height:1.4; color:var(--ink-1); padding-left:36px; position:relative; }
  [data-screen-label^="243"] .zp-bullets li::before { content:""; position:absolute; left:0; top:11px; width:14px; height:14px; border-radius:50%; background:var(--brand-crimson); }
  [data-screen-label^="243"] .zp-bullets strong { color:var(--brand-crimson); font-weight:700; }
  [data-screen-label^="243"] .zp-note { font-size:21px; line-height:1.45; color:var(--ink-2); margin:0; padding-top:20px; border-top:1px solid var(--rule); }
  [data-screen-label^="243"] .zp-note strong { color:var(--ink-1); font-weight:700; }

  /* Beer perceptual map — reusable (S242, S245, S246+) */
  .beermap { container-type:inline-size; position:relative; width:100%; }
  .beermap img.bm-base { width:100%; height:auto; display:block; }
  .beermap .bm-lbl { position:absolute; color:#2A2D29; line-height:1.12; font-size:2.0cqw; white-space:nowrap; }
  .beermap .bm-axis { font-weight:800; font-size:2.3cqw; color:#1F2421; letter-spacing:0.01em; }
  .beermap .bm-c { transform:translate(-50%,-50%); text-align:center; }
  .beermap .bm-l { transform:translateY(-50%); text-align:left; }
  .beermap .bm-r { transform:translate(-100%,-50%); text-align:right; }
  [data-screen-label^="245"] .slide-body { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:10px; }
  [data-screen-label^="245"] .bm-source { font-size:18px; font-style:italic; color:var(--ink-3); align-self:flex-end; }
  /* S246 — Wettbewerbsintensität (annotierte Bierkarte) */
  .pmap .slide-body { position:relative; }
  .pmap .wi-box { position:absolute; left:0; top:140px; width:430px; background:var(--bg-surface); border:1px solid var(--rule); border-left:6px solid var(--brand-crimson); border-radius:12px; padding:26px 30px; }
  .pmap .wi-box h3 { font-size:31px; font-weight:700; color:var(--ink-1); margin:0 0 18px; }
  .pmap .wi-box p { font-size:25px; line-height:1.5; color:var(--ink-2); margin:0; }
  .pmap .wi-box p strong { color:var(--brand-crimson); font-weight:700; }
  .pmap .wb-mapwrap { position:absolute; left:520px; top:10px; width:760px; }
  .pmap .bm-anno { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; overflow:visible; }
  .pmap .callout { position:absolute; border:2px solid #E0882E; border-radius:6px; padding:12px 16px; font-size:19px; font-weight:700; color:var(--ink-1); text-align:center; background:var(--bg-surface); line-height:1.25; width:210px; }
  .pmap .callout.reminder { color:var(--ink-3); }
  .pmap .callout.vio { border-color:#9579c0; }
  .pmap .callout.blu { border-color:#5b8fd0; }
  .pmap .wb-legend { position:absolute; left:0; top:432px; display:flex; flex-direction:column; gap:14px; width:430px; }
  .pmap .wb-legend .lg { display:flex; align-items:center; gap:14px; font-size:21px; color:var(--ink-1); }
  .pmap .expl-box { position:absolute; left:0; top:524px; width:430px; border:2px solid #E0882E; border-radius:8px; padding:18px 24px; font-size:20px; line-height:1.45; color:var(--ink-1); background:var(--bg-surface); }
  [data-screen-label^="249"] .wi-box { top:24px; }
  [data-screen-label^="251"] .wi-box { top:18px; }
  [data-screen-label^="251"] .themes { top:300px; }
  .pmap .themes { position:absolute; left:1366px; top:362px; width:352px; }
  .pmap .themes h4 { font-size:25px; font-weight:700; color:var(--ink-1); margin:0 0 16px; }
  .pmap .themes .th { font-size:22px; line-height:1.42; color:var(--ink-2); margin-bottom:13px; }
  .pmap .themes .th b { font-weight:700; }
  .pmap .seg-lbl { position:absolute; transform:translate(-50%,-50%); color:#fff; font-weight:800; font-size:27px; text-align:center; line-height:1.05; text-shadow:0 1px 4px rgba(0,0,0,0.3); }

  /* S252/S253 — Schmerzmittel-Karte */
  [data-screen-label^="252"] .slide-body, [data-screen-label^="253"] .slide-body { display:flex; flex-direction:row; gap:44px; align-items:center; justify-content:center; }
  .pruef { flex:0 0 560px; }
  .pruef h3 { font-size:25px; font-weight:700; color:var(--ink-1); margin:0 0 22px; }
  .pruef .q { font-size:21px; line-height:1.4; color:var(--ink-1); margin-bottom:18px; padding-left:26px; position:relative; }
  .pruef .q::before { content:"•"; position:absolute; left:4px; top:-1px; color:var(--brand-crimson); font-weight:700; font-size:24px; }
  .pruef .q .ans { display:block; font-style:italic; color:var(--brand-crimson); font-size:19px; margin-top:5px; }
  .smap { flex:1; display:flex; justify-content:center; }
  .smap .beermap { max-width:600px; margin:0; }
  [data-screen-label^="252"] .smap .bm-lbl, [data-screen-label^="253"] .smap .bm-lbl { font-size:2.7cqw; }

  /* S254/S255 — Lebensmittel-Karte (gebackene Labels) */
  [data-screen-label^="254"] .slide-body, [data-screen-label^="255"] .slide-body { display:flex; flex-direction:row; gap:40px; align-items:center; justify-content:center; }
  .foodleft { flex:0 0 470px; }
  .foodleft h3 { font-size:30px; font-weight:700; color:var(--ink-1); margin:0 0 22px; }
  .foodleft p { font-size:24px; line-height:1.5; color:var(--ink-2); margin:0 0 18px; }
  .foodmap { flex:1; display:flex; justify-content:center; }
  .foodmap img { max-width:780px; width:100%; height:auto; mix-blend-mode:multiply; }
  .pmap .expl-box strong { color:var(--brand-crimson); font-weight:700; }
  .pmap .bm-annoimg { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
  /* S244 — Sessel-Designs Wahrnehmungskarte */
  [data-screen-label^="244"] .slide-body { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:8px; }
  [data-screen-label^="244"] .beermap { max-width:600px; margin:0 auto; }
  [data-screen-label^="244"] .bm-base { mix-blend-mode:multiply; }
  [data-screen-label^="244"] .bm-lbl { font-size:1.7cqw; }
  [data-screen-label^="244"] .bm-source { font-size:18px; font-style:italic; color:var(--ink-3); align-self:flex-end; }




    :root { --c-rose-50:#FCEEF0; --c-amb:#F6A827; --c-grn:#2A8A4E; --c-vio:#6B4C8F; --c-amber-50:#FFF6E5; }
    /* eyebrow + lead */
    .k7 .slide-title { margin-top:20px; }
    .k7-lead { font-size:30px; line-height:1.5; color:var(--ink-2); max-width:1500px; margin:0 0 4px; text-wrap:pretty; }
    .k7-lead strong { color:var(--ink-1); font-weight:700; }
    .k7-body { flex:1; display:flex; flex-direction:column; gap:30px; justify-content:center; }

    /* card grid */
    .k7-cards { display:grid; gap:26px; }
    .k7-cards.c2 { grid-template-columns:1fr 1fr; }
    .k7-cards.c3 { grid-template-columns:repeat(3,1fr); }
    .k7-cards.c4 { grid-template-columns:repeat(4,1fr); }
    .k7-card { background:var(--bg-surface); border:1px solid var(--rule); border-radius:10px; padding:30px 32px; display:flex; flex-direction:column; gap:13px; }
    .k7-card .ct { font-size:27px; font-weight:700; color:var(--ink-1); line-height:1.2; }
    .k7-card .cd { font-size:23px; line-height:1.45; color:var(--ink-2); margin:0; text-wrap:pretty; }
    .k7-card .cd strong { color:var(--ink-1); font-weight:700; }
    .k7-card.accent { border-top:5px solid var(--brand-crimson); }
    .k7-card .ci { width:50px; height:50px; border-radius:11px; background:var(--c-rose-50); color:var(--brand-crimson); display:flex; align-items:center; justify-content:center; font-size:27px; font-weight:800; flex:none; }
    .k7-card .cimg { height:150px; display:flex; align-items:center; justify-content:flex-start; margin-bottom:2px; }
    .k7-card .cimg img { height:150px; width:auto; filter:drop-shadow(0 8px 18px rgba(31,36,33,0.16)); }

    /* numbered cards */
    .k7-num { display:grid; gap:22px; }
    .k7-num .nrow { display:flex; gap:24px; align-items:flex-start; background:var(--bg-surface); border:1px solid var(--rule); border-radius:10px; padding:26px 30px; }
    .k7-num .nn { flex:none; width:54px; height:54px; border-radius:50%; background:var(--brand-crimson); color:#fff; font-size:27px; font-weight:800; display:flex; align-items:center; justify-content:center; }
    .k7-num .nbody { display:flex; flex-direction:column; gap:7px; }
    .k7-num .nt { font-size:26px; font-weight:700; color:var(--ink-1); line-height:1.18; }
    .k7-num .nd { font-size:22px; line-height:1.42; color:var(--ink-2); margin:0; text-wrap:pretty; }

    /* horizontal flow chain */
    .k7-flow { display:flex; align-items:stretch; gap:0; flex-wrap:wrap; justify-content:center; }
    .k7-flow .step { flex:1 1 0; min-width:175px; background:var(--bg-surface); border:1px solid var(--rule); border-radius:10px; padding:24px 20px; text-align:center; font-size:23px; font-weight:600; color:var(--ink-1); line-height:1.28; display:flex; align-items:center; justify-content:center; }
    .k7-flow .step.hot { border-color:var(--brand-crimson); border-width:2px; background:var(--c-rose-50); color:var(--brand-crimson); }
    .k7-flow .chev { flex:none; display:flex; align-items:center; justify-content:center; width:42px; color:var(--rule-strong); font-size:34px; font-weight:700; }

    /* split: left rail + right content */
    .k7-split { display:grid; grid-template-columns:0.82fr 1.18fr; gap:54px; flex:1; align-items:center; }
    .k7-split .lead-side h3 { font-size:34px; font-weight:700; color:var(--ink-1); margin:0 0 18px; line-height:1.15; }
    .k7-split .lead-side p { font-size:24px; line-height:1.5; color:var(--ink-2); margin:0 0 16px; text-wrap:pretty; }
    .k7-split .lead-side p strong { color:var(--ink-1); font-weight:700; }

    /* quote band */
    .k7-quote { background:var(--ink-1); color:var(--bg-app); border-radius:12px; padding:38px 46px; font-size:30px; line-height:1.42; font-style:italic; text-wrap:pretty; }
    .k7-quote .qc { color:var(--grad-amber); font-style:normal; font-weight:700; font-size:22px; letter-spacing:0.04em; display:block; margin-top:14px; }

    /* big stat */
    .k7-stat { display:flex; align-items:baseline; gap:8px; }
    .k7-stat .num { font-size:128px; font-weight:800; color:var(--brand-crimson); line-height:0.9; letter-spacing:-0.03em; font-variant-numeric:tabular-nums; }
    .k7-stat .pct { font-size:64px; font-weight:800; color:var(--brand-crimson); }

    /* simple bullet list */
    .k7-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:14px; }
    .k7-list li { position:relative; padding-left:34px; font-size:24px; line-height:1.4; color:var(--ink-2); text-wrap:pretty; }
    .k7-list li::before { content:""; position:absolute; left:6px; top:13px; width:11px; height:11px; border-radius:50%; background:var(--brand-crimson); }
    .k7-list.warn li::before { border-radius:2px; background:var(--grad-amber); }

    /* compare two columns */
    .k7-compare { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
    .k7-compare .col { border:1px solid var(--rule); border-radius:12px; padding:32px 34px; background:var(--bg-surface); }
    .k7-compare .col.now { border-color:var(--brand-crimson); background:var(--c-rose-50); }
    .k7-compare .col .colh { font-size:20px; letter-spacing:0.12em; text-transform:uppercase; font-weight:700; color:var(--ink-3); margin-bottom:20px; }
    .k7-compare .col.now .colh { color:var(--brand-crimson); }
    .c-rose-fallback { } /* ensure var exists */

    /* GlobalCash table */
    .gc-table { width:100%; border-collapse:collapse; font-size:22px; }
    .gc-table thead th { font-size:20px; font-weight:700; color:#fff; background:var(--brand-crimson); padding:14px 16px; text-align:center; }
    .gc-table thead th:first-child { text-align:left; background:var(--ink-1); border-top-left-radius:8px; }
    .gc-table thead th:last-child { border-top-right-radius:8px; }
    .gc-table tbody td { padding:15px 16px; text-align:center; border-bottom:1px solid var(--rule); color:var(--ink-2); font-variant-numeric:tabular-nums; font-weight:600; }
    .gc-table tbody td:first-child { text-align:left; font-weight:700; color:var(--ink-1); }
    .gc-table tbody tr:nth-child(even) { background:var(--bg-sunken); }
    .gc-table tbody tr:last-child td { border-bottom:none; }
    .gtico { width:48px; height:48px; margin-bottom:2px; }
    .gtico svg { width:48px; height:48px; }
    [data-screen-label^="272"] .k7-num { grid-template-rows:repeat(3,auto); grid-auto-flow:column; }
    [data-screen-label^="272"] .k7-num .nrow { padding:30px 34px; }
    [data-screen-label^="272"] .k7-num .nn { width:62px; height:62px; font-size:31px; }
    [data-screen-label^="272"] .k7-num .nt { font-size:31px; }
    [data-screen-label^="272"] .k7-num .nd { font-size:25px; }

    /* S273 — Über den Autor */
    [data-screen-label^="273"] .author-split { display:grid; grid-template-columns:380px 1fr; gap:60px; flex:1; align-items:center; }
    [data-screen-label^="273"] .author-photo { width:340px; height:340px; border-radius:50%; overflow:hidden; background:var(--bg-sunken); border:4px solid var(--bg-surface); box-shadow:0 16px 40px rgba(31,36,33,0.18); display:flex; align-items:center; justify-content:center; justify-self:center; }
    [data-screen-label^="273"] .author-photo img { width:100%; height:100%; object-fit:cover; }
    [data-screen-label^="273"] .author-photo .ph { font-size:90px; font-weight:800; color:var(--ink-mute); }
    [data-screen-label^="273"] .author-bio { font-size:22px; line-height:1.55; color:var(--ink-2); margin:0 0 26px; text-wrap:pretty; }
    [data-screen-label^="273"] .author-bio strong { color:var(--ink-1); font-weight:700; }
    [data-screen-label^="273"] .author-contact { display:flex; flex-wrap:wrap; gap:6px 38px; border-top:1px solid var(--rule); padding-top:22px; }
    [data-screen-label^="273"] .author-contact .cname { width:100%; font-size:21px; font-weight:700; color:var(--ink-1); margin-bottom:4px; }
    [data-screen-label^="273"] .author-contact .ci { font-size:20px; color:var(--ink-2); }
    [data-screen-label^="273"] .author-contact .ci b { color:var(--brand-crimson); font-weight:700; }

    /* S274 — Referenzen & Lizenz */
    [data-screen-label^="274"] .ref-split { display:grid; grid-template-columns:1.42fr 0.58fr; gap:46px; flex:1; align-items:start; }
    [data-screen-label^="274"] .ref-list { list-style:none; margin:0; padding:0; column-count:2; column-gap:38px; }
    [data-screen-label^="274"] .ref-list li { font-size:17px; line-height:1.36; color:var(--ink-2); padding-left:18px; position:relative; text-wrap:pretty; margin-bottom:13px; break-inside:avoid; }
    [data-screen-label^="274"] .ref-list li::before { content:""; position:absolute; left:2px; top:9px; width:7px; height:7px; border-radius:50%; background:var(--rule-strong); }
    [data-screen-label^="274"] .ref-h { font-size:20px; letter-spacing:0.14em; text-transform:uppercase; color:var(--brand-crimson); font-weight:700; margin-bottom:18px; }
    [data-screen-label^="274"] .ref-list li b { color:var(--ink-1); font-weight:700; }
    [data-screen-label^="274"] .ref-h2 { font-size:20px; letter-spacing:0.14em; text-transform:uppercase; color:var(--brand-crimson); font-weight:700; margin-bottom:18px; }
    [data-screen-label^="274"] .legal { font-size:15px; line-height:1.5; color:var(--ink-3); margin:0 0 16px; text-wrap:pretty; }
    [data-screen-label^="274"] .license { font-size:17px; line-height:1.45; color:var(--ink-2); border-top:1px solid var(--rule); padding-top:16px; }
    [data-screen-label^="274"] .license strong { color:var(--ink-1); }
    [data-screen-label^="274"] .copyright { font-size:18px; font-weight:700; color:var(--ink-1); margin-top:14px; }
    [data-screen-label^="274"] .cc-badge { display:inline-block; font-size:13px; font-weight:700; letter-spacing:0.08em; color:var(--brand-crimson); border:1px solid var(--brand-crimson); border-radius:5px; padding:3px 8px; margin-bottom:10px; }
    [data-screen-label^="266"] .col .cd { font-size:25px; line-height:1.5; color:var(--ink-2); margin:0; }
    [data-screen-label^="266"] .col .colh { font-size:23px; }
    [data-screen-label^="266"] .col .ct { font-size:34px !important; }
    [data-screen-label^="266"] .col svg { width:185px !important; height:185px !important; }
    [data-screen-label^="267"] .pres-top { display:grid; grid-template-columns:1fr 360px; gap:40px; align-items:center; }
    [data-screen-label^="267"] .pres-guitar { display:flex; justify-content:center; align-items:center; height:100%; }
    [data-screen-label^="267"] .pres-guitar img { height:480px; width:auto; filter:drop-shadow(0 14px 30px rgba(31,36,33,0.22)); }
  

/* ════════════════════════════════════════════════════════════════════════
   Lehrbuch drop-in — page chrome. Scoped to .lecture-page; does NOT touch the
   global tokens.css. Mona Sans weights 400/600/700 come from the VF woff2
   already declared in the deck CSS above.
   ════════════════════════════════════════════════════════════════════════ */
.lecture-page {
  --lecture-bg: #F6F5F1;
  --lecture-surface: #FAF8F2;
  --lecture-ink-1: #1F2421;
  --lecture-ink-2: #4A4D48;
  --lecture-ink-3: #7A7D77;
  --lecture-rule: #DDD9CF;
  --lecture-accent: #DC3B55;
  --lecture-font: "Mona Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
}
body.lecture-page {
  margin: 0;
  background: var(--lecture-bg);
  color: var(--lecture-ink-1);
  font-family: var(--lecture-font);
  -webkit-font-smoothing: antialiased;
}
.lecture-wrap { max-width: 1180px; margin: 0 auto; padding: 0 32px; }

/* ── Lehrbuch-mode header ── */
.lecture-header { position: sticky; top: 0; z-index: 20; border-bottom: 1px solid var(--lecture-rule); background: rgba(250,248,242,.92); backdrop-filter: saturate(1.2) blur(8px); }
.lecture-header-inner { max-width: 1320px; margin: 0 auto; padding: 0 24px; height: 60px; display: flex; align-items: center; gap: 20px; }
.lecture-logo { display: flex; align-items: center; gap: 11px; text-decoration: none; color: var(--lecture-ink-1); min-width: 0; }
.lecture-logo img { display: block; flex: none; }
.lecture-book-title { font-weight: 700; font-size: 16px; letter-spacing: -.01em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lecture-toc { margin: 0 auto; position: relative; }
.lecture-toc-dropdown > summary { list-style: none; cursor: pointer; font-size: 15px; font-weight: 600; color: var(--lecture-ink-2); padding: 8px 14px; border-radius: 8px; border: 1px solid var(--lecture-rule); background: #fff; user-select: none; }
.lecture-toc-dropdown > summary::-webkit-details-marker { display: none; }
.lecture-toc-dropdown[open] > summary { border-color: var(--lecture-accent); color: var(--lecture-ink-1); }
.lecture-toc-dropdown ul { position: absolute; top: calc(100% + 8px); left: 50%; transform: translateX(-50%); margin: 0; padding: 8px; list-style: none; min-width: 340px; max-height: 70vh; overflow: auto; background: #fff; border: 1px solid var(--lecture-rule); border-radius: 12px; box-shadow: 0 18px 50px -24px rgba(31,36,33,.5); }
.lecture-toc-dropdown li a { display: block; padding: 9px 12px; border-radius: 8px; font-size: 14px; color: var(--lecture-ink-2); text-decoration: none; }
.lecture-toc-dropdown li a:hover { background: var(--lecture-bg); color: var(--lecture-ink-1); }
.lecture-toc-dropdown li a[aria-current="page"] { color: var(--lecture-accent); font-weight: 600; }
.lecture-escape { font-size: 14px; color: var(--lecture-ink-3); text-decoration: none; white-space: nowrap; }
.lecture-escape:hover { color: var(--lecture-accent); }

/* ── Slide-page body ── */
.lecture-main { padding-bottom: 24px; }
.lecture-crumbs { font-size: 13px; color: var(--lecture-ink-3); padding: 24px 0 0; }
.lecture-crumbs a { color: var(--lecture-ink-3); text-decoration: none; }
.lecture-crumbs a:hover { color: var(--lecture-accent); }
.lecture-crumbs .sep { margin: 0 8px; color: var(--lecture-ink-3); opacity: .6; }
.lecture-head { padding: 28px 0 24px; }
.lecture-eyebrow { font-size: 13px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--lecture-accent); margin-bottom: 12px; }
.lecture-h1 { margin: 0; font-size: clamp(28px, 4.4vw, 44px); font-weight: 700; line-height: 1.1; letter-spacing: -.02em; text-wrap: balance; }
.lecture-lead { margin: 16px 0 0; font-size: clamp(17px, 2.2vw, 20px); line-height: 1.5; color: var(--lecture-ink-2); max-width: 780px; }

/* ── Variante B: real <section> scaled into a 16:9 frame ── */
.lecture-stage { position: relative; width: 100%; aspect-ratio: 1920 / 1080; overflow: hidden; border: 1px solid var(--lecture-rule); border-radius: 14px; background: var(--lecture-bg); box-shadow: 0 18px 50px -28px rgba(31,36,33,.45); }
.lecture-canvas { position: absolute; top: 0; left: 0; width: 1920px; height: 1080px; transform-origin: top left; }
.lecture-canvas > .slide { box-shadow: none !important; }
.lecture-open { position: absolute; right: 16px; bottom: 16px; display: inline-flex; align-items: center; gap: 9px; white-space: nowrap; max-width: calc(100% - 32px); background: var(--lecture-ink-1); color: #fff; text-decoration: none; font-size: 15px; font-weight: 600; padding: 11px 18px; border-radius: 10px; box-shadow: 0 8px 22px -10px rgba(31,36,33,.6); transition: transform .12s, background .12s; }
.lecture-open:hover { background: #000; transform: translateY(-1px); }
.lecture-open svg { width: 16px; height: 16px; }

/* ── Prev / Next ── */
.lecture-pager { display: flex; justify-content: space-between; gap: 16px; padding: 28px 0 8px; }
.lecture-pager a, .lecture-pager .disabled { flex: 1; min-width: 0; }
.lecture-pager a { display: flex; flex-direction: column; gap: 4px; text-decoration: none; padding: 16px 20px; border: 1px solid var(--lecture-rule); border-radius: 12px; background: var(--lecture-surface); transition: border-color .12s, transform .12s; }
.lecture-pager a:hover { border-color: var(--lecture-accent); transform: translateY(-1px); }
.lecture-pager a.next { align-items: flex-end; text-align: right; }
.lecture-pager .dir { font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--lecture-ink-3); }
.lecture-pager .ttl { font-size: 16px; font-weight: 600; color: var(--lecture-ink-1); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
.lecture-meta-links { display: flex; gap: 22px; padding: 18px 0 8px; }
.lecture-meta-links a { font-size: 14px; color: var(--lecture-ink-3); text-decoration: none; }
.lecture-meta-links a:hover { color: var(--lecture-accent); }

/* ── Footer ── */
.lecture-footer { max-width: 1180px; margin: 32px auto 0; padding: 28px 32px; border-top: 1px solid var(--lecture-rule); display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; align-items: center; font-size: 14px; color: var(--lecture-ink-3); }
.lecture-footer a { color: var(--lecture-ink-3); text-decoration: none; }
.lecture-footer a:hover { color: var(--lecture-accent); }

@media (max-width: 720px) {
  .lecture-toc { display: none; }
  .lecture-crumbs { display: none; }
  .lecture-pager { flex-direction: column; }
  .lecture-pager a.next { align-items: flex-start; text-align: left; }
  /* Keep the longer «Zur vollständigen Präsentation» label proportionate on the
     small slide preview (one line, no clipping down to ~320px). */
  .lecture-open { font-size: 12.5px; padding: 8px 12px; gap: 7px; right: 10px; bottom: 10px; }
  .lecture-open svg { width: 14px; height: 14px; }
}
