/* Akten und Personendossiers: ein Blatt für alle Seiten unter /dossiers/<slug>/.
   Farben und Schriften kommen aus marke.css (--display, --sans, --rot, --rot-hell). */
:root{--do-schwarz:#0c0c0c;--do-linie:#d9d9d9;--do-linie-dunkel:#353535;--do-grau:#4a4a4a;--do-grau-hell:#c4c4c4;--do-breit:1180px;--do-rand:clamp(16px,5vw,72px)}
*{box-sizing:border-box}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
section[id],h2[id]{scroll-margin-top:24px}
body{margin:0;background:#fff;color:var(--do-schwarz);font-family:Arial,Helvetica,sans-serif;font-size:1.0625rem;line-height:1.55;overflow-x:hidden;-webkit-text-size-adjust:100%}
body.modal-open{overflow:hidden}
a{color:inherit}
img{max-width:100%;height:auto}
main :focus-visible,.modal :focus-visible{outline:3px solid var(--rot,#e51b20);outline-offset:3px}
.timeline-section:not(.chapter-dark) :focus-visible,.do-weiter :focus-visible,.modal :focus-visible{outline-color:#fff}
.button-reset{font:inherit;cursor:pointer}

/* Pfad über dem Titel */
.do-pfad{max-width:1320px;margin:0 auto;padding:6px var(--do-rand) 0;display:flex;flex-wrap:wrap;align-items:center;gap:0 10px;font-size:.9375rem;color:var(--do-grau)}
.do-pfad a{display:inline-flex;align-items:center;min-width:44px;min-height:44px;font-weight:700;color:var(--do-schwarz);text-decoration:underline;text-decoration-color:var(--rot,#e51b20);text-decoration-thickness:2px;text-underline-offset:4px}
.do-pfad span[aria-current]{display:inline-flex;align-items:center;min-height:44px}

/* Kopf der Akte */
.hero{max-width:1320px;margin:0 auto;padding:clamp(10px,2vw,28px) var(--do-rand) clamp(36px,5vw,64px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(28px,4vw,64px);align-items:center}
.hero-copy{min-width:0}
.eyebrow{margin:0 0 14px;color:var(--rot-text,#c4141a)}
.hero h1{margin:0;font-size:clamp(2.6rem,5.2vw,4.6rem);overflow-wrap:break-word;hyphens:auto}
.deck{max-width:38em;margin:22px 0 26px;color:#262626;font-size:clamp(1.125rem,1.5vw,1.3125rem);line-height:1.45;font-weight:500}
.hero-actions{display:flex;gap:6px 22px;align-items:center;flex-wrap:wrap}
.hero-actions a,.hero-actions button{display:inline-flex;align-items:center;min-height:48px;font-size:1rem;font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.primary,.hero-actions .primary{display:inline-flex;align-items:center;min-height:48px;padding:12px 20px;border:0;border-radius:0;background:var(--rot,#e51b20);color:#fff;font-size:1rem;font-weight:700;line-height:1.2;text-decoration:none;cursor:pointer}
.primary:hover{background:#c4151a}
.hero-image{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#161616;overflow:hidden;cursor:pointer;color:#fff;text-decoration:none}
.hero-image img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.hero-image .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:var(--rot,#e51b20);color:#fff;font-size:1.5rem;padding-left:4px}
.hero-image .image-label{position:absolute;left:0;bottom:0;max-width:100%;padding:7px 12px;background:rgba(0,0,0,.82);color:#fff;font-size:.8125rem;font-weight:700;line-height:1.3;text-align:left}
/* Porträts und fremde Vorschaubilder: nie hochrechnen, nie beschneiden, Bildnachweis unter dem Bild */
.hero-image.platform-hero{aspect-ratio:auto;display:flex;flex-direction:column;align-items:center;margin:0;background:var(--do-schwarz);cursor:default}
.hero-image.platform-hero img{position:static;width:auto;height:auto;max-width:100%;max-height:min(68vh,560px);object-fit:contain;margin:clamp(14px,3vw,28px) auto 0}
.hero-image.platform-hero .play{display:none}
.hero-image.platform-hero .image-label{position:static;width:100%;padding:8px 14px 10px;background:none;color:var(--do-grau-hell);font-weight:400;font-size:.875rem;text-align:center}
.hero-image.platform-hero .image-label a{display:inline-block;padding:13px 0;color:#fff;text-decoration:underline;text-decoration-color:#8a8a8a;text-underline-offset:4px}
.hero.hero-ohne-bild{grid-template-columns:minmax(0,1fr)}
.hero.hero-ohne-bild .hero-copy{max-width:52rem}

.facts{max-width:1320px;margin:0 auto;padding:0 var(--do-rand);display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.facts div{padding:20px 18px 22px 0;border-top:3px solid var(--do-schwarz)}
.facts div+div{padding-left:18px;border-left:1px solid var(--do-linie)}
.facts strong{display:block;font-family:var(--display);font-size:clamp(1.75rem,3vw,2.25rem);font-weight:800;line-height:1.05;overflow-wrap:anywhere}
.facts span{display:block;margin-top:6px;color:var(--do-grau);font-size:.9375rem;line-height:1.35}

/* Kurzbiografie, roter Faden, Auswahlregeln */
.biography,.reading,.evidence{max-width:calc(var(--do-breit) + 2 * var(--do-rand));margin:0 auto;padding:clamp(48px,7vw,88px) var(--do-rand);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,5vw,72px);align-items:start}
.biography h2,.reading h2,.evidence h2,.timeline-section h2,.next h2,.erwaehnt h2{margin:0;font-size:clamp(1.9rem,3.8vw,3.2rem);overflow-wrap:break-word;hyphens:auto}
.biography+.reading,.reading+.evidence{border-top:1px solid var(--do-linie)}
.biography-copy>p{margin:0 0 16px}
.biography-copy>p:first-child{font-size:1.1875rem;line-height:1.5}
.biography-copy ul{margin:0 0 18px;padding-left:1.15em}
.biography-copy li{margin:0 0 9px}
.biography-copy li::marker{color:var(--rot,#e51b20)}
.biography-sources{margin-top:22px!important;padding-top:14px;border-top:1px solid var(--do-linie);font-size:1rem;line-height:1.4}
.biography-sources strong,.biography-sources a{display:block}
.biography-sources a{padding:11px 0}
.biography-sources span{display:none}
@media (min-width:1000px) and (hover:hover) and (pointer:fine){.biography-sources a{padding:5px 0}}
.reading ol{list-style:none;margin:0;padding:0;border-top:3px solid var(--do-schwarz)}
.reading li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:2px 14px;padding:16px 0;border-bottom:1px solid var(--do-linie)}
.reading li>span{grid-row:1/3;font-family:var(--display);font-size:1.375rem;font-weight:800;color:var(--rot,#e51b20);line-height:1.2}
.reading li strong{font-size:1.0625rem}
.reading li p{grid-column:2;margin:0;color:var(--do-grau)}
.evidence-copy>p:not(.eyebrow){margin:18px 0 0}
.evidence-rules{border-top:3px solid var(--do-schwarz)}
.evidence-rules article{padding:16px 0;border-bottom:1px solid var(--do-linie)}
.evidence-rules strong{display:block;font-size:1.0625rem}
.evidence-rules p{margin:4px 0 0;color:var(--do-grau)}
blockquote{margin:20px 0;padding:6px 0 6px 18px;border-left:4px solid var(--rot,#e51b20);font-size:1.125rem;font-weight:700;line-height:1.5;overflow-wrap:anywhere}

/* Chronologie: dunkle Kapitel, dazwischen helle (.chapter-dark ist historisch der Name der hellen) */
.timeline-section{background:var(--do-schwarz);color:#fff;padding:clamp(48px,7vw,96px) var(--do-rand)}
.section-head{max-width:var(--do-breit);margin:0 auto 30px;display:flex;justify-content:space-between;align-items:end;gap:40px}
.section-head>div{min-width:0}
.section-head .eyebrow{color:var(--rot-hell,#f2332f)}
.section-head>p{max-width:30em;margin:0;color:var(--do-grau-hell)}
.timeline{max-width:var(--do-breit);margin:0 auto;border-top:3px solid #fff}
.timeline-item{display:grid;grid-template-columns:150px 260px minmax(0,1fr);gap:28px;padding:26px 0;border-bottom:1px solid var(--do-linie-dunkel);align-items:start}
.timeline-item.featured{padding-left:16px;box-shadow:inset 4px 0 0 var(--rot,#e51b20)}
.date time{display:block;font-family:var(--display);font-size:1.25rem;font-weight:700;line-height:1.15}
.date span,.kind{display:block;margin:6px 0 0;color:var(--rot-hell,#f2332f);font-size:.8125rem;font-weight:700;letter-spacing:.05em;line-height:1.35;text-transform:uppercase;overflow-wrap:anywhere}
.kind{margin:0 0 6px}
.thumb{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#161616;overflow:hidden;cursor:pointer;color:#fff;text-decoration:none}
.thumb img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.thumb>span{position:absolute;left:10px;bottom:10px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--rot,#e51b20);color:#fff;font-size:1rem}
.evidence-trigger img{object-position:top}
.platform-thumb,.source-stamp{display:flex;flex-direction:column;justify-content:center;padding:18px 20px;background:#161616;border:1px solid #3a3a3a;color:#fff}
.source-stamp{aspect-ratio:16/9}
.platform-thumb strong,.source-stamp strong{font-family:var(--display);font-size:1.5rem;font-weight:700;line-height:1.1;overflow-wrap:anywhere}
.platform-thumb small,.source-stamp span{margin-top:6px;color:var(--do-grau-hell);font-size:.8125rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.platform-thumb>span{left:auto;bottom:auto;right:10px;top:10px;width:32px;height:32px;background:none;border:1px solid #6a6a6a;font-size:.9375rem}
.platform-thumb-image{padding:0}
.platform-thumb-image img{object-position:50% 20%}
/* Hochformat-Porträts aus assets/: ganz zeigen statt auf 16:9 beschneiden (der Kopf bleibt im Bild) */
.thumb img[src*="/assets/person-"]{object-fit:contain;object-position:50% 50%}
.platform-thumb-image>span{background:rgba(0,0,0,.72);border-color:transparent}
.item-copy{min-width:0}
.item-copy h3{margin:0 0 8px;font-size:clamp(1.375rem,2vw,1.625rem);overflow-wrap:break-word;hyphens:auto}
.item-copy p:not(.kind){max-width:40em;margin:0 0 6px;color:var(--do-grau-hell)}
.item-copy p small{font-size:1rem}
.item-copy a{display:inline-block;padding:12px 0;font-size:1rem;font-weight:700;line-height:1.35;color:#fff;text-decoration:underline;text-decoration-color:#8a8a8a;text-decoration-thickness:1px;text-underline-offset:5px}
.item-copy a:hover{text-decoration-color:currentColor}
/* Linkzeile unter dem Eintrag: Abstand statt Trennpunkt, damit beim Umbruch nichts am Zeilenende hängt */
.item-copy>a{margin-right:22px}
.item-copy>a:last-child{margin-right:0}
.item-copy a.do-sendung{text-decoration-color:var(--rot-hell,#f2332f);text-decoration-thickness:2px}
.evidence-stack{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.evidence-stack img{position:static;width:100%;height:auto}
.source-note{margin:12px 0 0;color:var(--do-grau-hell);font-size:.9375rem}

.chapter-dark{background:#fff;color:var(--do-schwarz);border-top:1px solid var(--do-linie)}
.chapter-dark .section-head .eyebrow,.chapter-dark .date span,.chapter-dark .kind{color:var(--rot-text,#c4141a)}
.chapter-dark .section-head>p,.chapter-dark .item-copy p:not(.kind),.chapter-dark .source-note{color:var(--do-grau)}
.chapter-dark .timeline{border-top-color:var(--do-schwarz)}
.chapter-dark .timeline-item{border-bottom-color:var(--do-linie)}
.chapter-dark .item-copy a{color:var(--do-schwarz);text-decoration-color:#767676}
.chapter-dark .item-copy a.do-sendung{text-decoration-color:var(--rot,#e51b20)}

/* Erwähnungen im Archiv: eine Zeile je Sendung */
.erwaehnt{padding:clamp(48px,7vw,88px) var(--do-rand);border-top:1px solid var(--do-linie)}
.erwaehnt .section-head .eyebrow{color:var(--rot-text,#c4141a)}
.erwaehnt .section-head>p{color:var(--do-grau)}
.erwaehnt-liste{list-style:none;max-width:var(--do-breit);margin:0 auto;padding:0}
.erwaehnt>.erwaehnt-liste{border-top:3px solid var(--do-schwarz)}
.erwaehnt-liste li{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:4px 28px;align-items:baseline;padding:6px 0;border-bottom:1px solid var(--do-linie)}
.erwaehnt-liste time{color:var(--do-grau);font-size:.9375rem}
.erwaehnt-liste a{display:inline-block;padding:11px 0}
.erwaehnt-sendung{font-weight:700;text-decoration:none}
.erwaehnt-sendung:hover{text-decoration:underline;text-underline-offset:4px}
.erwaehnt-zeiten{display:flex;flex-wrap:wrap;gap:0 18px;justify-content:flex-end;font-size:1rem}
.erwaehnt-zeiten a{min-width:44px;font-variant-numeric:tabular-nums;text-decoration:underline;text-decoration-color:var(--rot,#e51b20);text-decoration-thickness:2px;text-underline-offset:4px;white-space:nowrap}
.erwaehnt-mehr{max-width:var(--do-breit);margin:0 auto}
.erwaehnt-mehr summary{display:inline-flex;align-items:center;min-height:48px;margin-top:8px;font-weight:700;cursor:pointer;text-decoration:underline;text-decoration-color:var(--rot,#e51b20);text-decoration-thickness:2px;text-underline-offset:5px}
.erwaehnt-mehr[open] summary{display:none}

.next{text-align:center;padding:clamp(52px,8vw,96px) var(--do-rand);border-top:1px solid var(--do-linie)}
.next p:not(.eyebrow){max-width:38em;margin:18px auto 24px;color:#333}
.next>a:not(.primary){display:inline-block;padding:12px 0;font-weight:700;text-underline-offset:4px}
/* langer Fliesstext («Offen bleibt.» in den erzeugten Akten): linksbündig in einer Lesespalte statt zentriert */
.next.offen{text-align:left}
.next.offen>*{max-width:40rem;margin-left:auto;margin-right:auto}
.next.offen p:not(.eyebrow){max-width:40rem;margin-bottom:0;font-size:1.0625rem;line-height:1.6;color:#222}

/* Bezüge und Blättern am Fuss */
.do-bezug{padding:24px var(--do-rand);border-top:1px solid var(--do-linie)}
.do-bezug>div{max-width:var(--do-breit);margin:0 auto;display:flex;flex-wrap:wrap;align-items:baseline;gap:0 22px}
.do-bezug h2{margin:0;padding:10px 0;font-size:1.0625rem!important;letter-spacing:.05em!important;color:var(--rot-text,#c4141a)}
.do-bezug ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0 22px}
.do-bezug a{display:inline-block;padding:10px 0;font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.do-weiter{background:var(--do-schwarz);color:#fff;padding:0 var(--do-rand)}
.do-weiter>div{max-width:var(--do-breit);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:24px;align-items:center}
.do-weiter a{display:flex;flex-direction:column;justify-content:center;min-height:96px;padding:18px 0;color:#fff;text-decoration:none}
.do-weiter a span{color:var(--do-grau-hell);font-size:.8125rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.do-weiter a strong{margin-top:4px;font-family:var(--display);font-size:1.375rem;font-weight:700;line-height:1.15;text-transform:uppercase;overflow-wrap:anywhere}
.do-weiter a:hover strong{text-decoration:underline;text-decoration-color:var(--rot-hell,#f2332f);text-decoration-thickness:3px;text-underline-offset:5px}
.do-weiter .do-vor{grid-column:1}
.do-weiter .do-nach{grid-column:3;text-align:right;align-items:flex-end}
.do-weiter .do-alle{grid-column:2;grid-row:1;align-items:center;padding:18px 8px;font-weight:700;text-decoration:underline;text-decoration-color:var(--rot-hell,#f2332f);text-decoration-thickness:2px;text-underline-offset:5px}

/* Video- und Belegdialog */
.modal[hidden]{display:none}
.modal{position:fixed;z-index:150;inset:0;background:rgba(0,0,0,.9);display:grid;place-items:center;padding:20px;overflow:auto}
.modal-panel{position:relative;width:min(100%,1040px);max-height:100%;background:var(--do-schwarz);color:#fff;border:1px solid #3a3a3a;overflow:auto}
.modal-kopf{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 4px 4px 16px;min-height:52px}
.modal-kopf strong{min-width:0;font-family:var(--display);font-size:1.25rem;font-weight:700;line-height:1.15;overflow-wrap:anywhere}
.modal-kopf small{display:block;color:var(--do-grau-hell);font-family:var(--sans);font-size:.8125rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.close{flex:none;width:44px;height:44px;border:0;border-radius:0;background:none;color:#fff;font-size:1.75rem;line-height:1;cursor:pointer}
.close:hover{background:#262626}
.frame-wrap{aspect-ratio:16/9;background:#000}
.frame-wrap iframe{display:block;width:100%;height:100%;border:0}
.modal-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 24px;margin:0;padding:2px 16px 6px}
.modal-links a{display:inline-flex;align-items:center;min-height:48px;font-size:1rem;font-weight:700;color:#fff;text-decoration:underline;text-decoration-color:#8a8a8a;text-underline-offset:5px}
.modal-links a.sendung-link{text-decoration-color:var(--rot-hell,#f2332f);text-decoration-thickness:2px}
.modal-links a[hidden]{display:none}
.evidence-panel{width:min(100%,1000px)}
.evidence-panel .modal-kopf{position:sticky;top:0;z-index:1;background:var(--do-schwarz);border-bottom:1px solid #3a3a3a}
.evidence-document{background:#fff}
.evidence-document img{display:block;width:100%;height:auto}
.evidence-panel .evidence-stack{padding:14px 16px 0}
.evidence-panel .source-note{margin:0;padding:12px 16px 0}

/* Eigenheiten einzelner Akten */
.gates-dossier .hero h1,.mexico-dossier .hero h1{font-size:clamp(2.6rem,4.8vw,4.2rem)}

@media (max-width:900px){
  .hero{grid-template-columns:minmax(0,1fr)}
  .facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .facts div:nth-child(odd){padding-left:0;border-left:0}
  .biography,.reading,.evidence{grid-template-columns:minmax(0,1fr)}
  .timeline-item{grid-template-columns:120px 200px minmax(0,1fr);gap:20px}
  .erwaehnt-liste li{grid-template-columns:130px minmax(0,1fr)}
  .erwaehnt-zeiten{grid-column:2;justify-content:flex-start;margin-top:-10px}
}
@media (max-width:650px){
  .hero h1{font-size:clamp(2.25rem,10.5vw,3rem)}
  .biography h2,.reading h2,.evidence h2,.timeline-section h2,.next h2,.erwaehnt h2{font-size:clamp(1.75rem,7.6vw,2.25rem)}
  .gates-dossier .hero h1,.mexico-dossier .hero h1{font-size:clamp(2.1rem,9.6vw,2.8rem)}
  .sylvia-oldenburg-page .hero h1{font-size:clamp(1.9rem,8.4vw,2.4rem)}
  .hero-actions .primary{width:100%;justify-content:center}
  .hero-image .play{width:60px;height:60px}
  .section-head{display:block;margin-bottom:22px}
  .section-head>p{margin-top:14px}
  .timeline-item{grid-template-columns:minmax(0,1fr);gap:12px;padding:22px 0}
  .timeline-item.featured{padding-left:14px}
  .date{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px}
  .date span{margin:0}
  .item-copy h3{font-size:1.4375rem}
  .evidence-stack{grid-template-columns:1fr}
  .erwaehnt-liste li{grid-template-columns:minmax(0,1fr);gap:0;padding:12px 0 4px}
  .erwaehnt-zeiten{grid-column:1;margin-top:-6px}
  .erwaehnt-liste a.erwaehnt-sendung{padding:9px 0 10px}
  .do-weiter>div{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 16px}
  .do-weiter a{min-height:76px;padding:14px 0}
  .do-weiter .do-vor{grid-column:1;grid-row:1}
  .do-weiter .do-nach{grid-column:2;grid-row:1}
  .do-weiter .do-alle{grid-column:1/-1;grid-row:2;min-height:52px;padding:10px 0;border-top:1px solid var(--do-linie-dunkel)}
  .modal{padding:0;place-items:center stretch}
  .modal-panel{width:100%;border-left:0;border-right:0}
  .modal-kopf strong{font-size:1.125rem}
}
@media (max-width:380px){
  .facts strong{font-size:1.5rem}
  .do-pfad{font-size:.875rem}
}
@media print{
  .modal,.do-weiter,.hero-actions{display:none}
  .timeline-section{background:#fff;color:#000}
}
