/* Full presentation in the selected B / Filmisch direction. The opening uses
   the approved comparison styles; these rules extend the direction below it. */
html { scroll-padding-top:26px; }
body { min-width:320px; }
.site-nav { display:flex; align-items:center; gap:26px; font-size:14px; }
.site-nav a { min-height:44px; display:inline-flex; align-items:center; text-decoration:none; }
.site-nav a:hover { text-decoration:underline; }
.anchor-point { display:block; height:0; }
.presentation .opening-intro { padding-bottom:12px; }
.presentation .skip-link { color:#111; }
.cinema-section { padding:76px var(--edge); position:relative; }
.cinema-section>.eyebrow { color:var(--accent); margin-bottom:30px; }
.section-header { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); column-gap:24px; align-items:start; }
.section-header h2 { grid-column:1/7; max-width:18ch; font:600 clamp(36px,4.6vw,66px)/1.03 var(--sans); letter-spacing:-.05em; text-wrap:balance; }
.section-header h2 span { display:block; }
.section-header>.body-copy { grid-column:8/13; padding-top:5px; }
.body-copy { max-width:62ch; }
.body-copy p { text-wrap:pretty; }
.body-copy strong { font-weight:550; }
.secondary-title { color:#acb1a5; }
.fact-note { border-top:1px solid var(--line); padding-top:20px; margin-top:25px; font-size:15px; }
.fact-note small { display:block; margin-top:10px; color:var(--muted); font-size:12px; line-height:1.5; }
.evidence { margin-top:52px; }
.feature-evidence { margin-bottom:35px; }
.media-heading { font-size:13px; font-weight:400; letter-spacing:.03em; margin-bottom:17px; color:var(--accent); }
.detail-grid { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:24px; align-items:start; }
.detail-grid figure { grid-column:1/9; }
.detail-grid>.body-copy { grid-column:10/13; font-size:15px; line-height:1.55; border-top:1px solid var(--line); padding-top:15px; }
.video-frame { background:#050605; }
.video-frame video { aspect-ratio:16/9; object-fit:contain; }
.cinema-section figcaption { color:var(--muted); font-size:12px; line-height:1.5; margin-top:12px; }
details { border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
summary { cursor:pointer; padding:19px 0; font-size:14px; }
summary::marker { color:var(--accent); }
.details-content { padding:4px 0 27px; }
#format { background:#191d18; border-block:1px solid var(--line); }
#format .section-header h2 { max-width:16ch; }
.episode { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:0 24px; margin-top:56px; padding-top:30px; border-top:1px solid #656f5d; }
.episode>div { display:contents; }
.episode-label { grid-column:1/5; grid-row:1; color:var(--accent); font-size:12px; line-height:1.5; text-transform:uppercase; letter-spacing:.06em; }
.episode h3 { grid-column:1/9; grid-row:2; margin-top:22px; max-width:17ch; font:500 clamp(42px,5.5vw,78px)/1.01 var(--sans); letter-spacing:-.05em; color:#eee3d2; text-wrap:balance; }
.episode-intro { grid-column:10/13; grid-row:2; margin-top:0; align-self:end; font-size:15px; color:#bcc2b4; }
.beats { grid-column:1/-1; grid-row:3; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; list-style:none; margin:42px 0 0; padding:0; counter-reset:beat; }
.beats li { border-top:1px solid #656f5d; padding-top:16px; counter-increment:beat; font-size:15px; }
.beats li::before { content:"0" counter(beat); display:block; font:400 13px/1.4 var(--sans); color:var(--accent); margin-bottom:18px; }
.beats strong { display:block; font-size:21px; font-weight:500; margin-bottom:12px; letter-spacing:-.02em; }
.assumption { max-width:88ch; margin-top:28px; color:#bcc2b4; font-size:13px; line-height:1.6; }
#praxis .section-header h2 { max-width:none; grid-column:1/8; font-size:clamp(42px,5.7vw,80px); line-height:.98; }
#praxis .section-header>.body-copy { grid-column:9/13; }
.work { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); column-gap:24px; align-items:start; margin-top:45px; }
.work>.work-photo { grid-column:1/6; margin-top:0; }
.work>.work-photo img { aspect-ratio:.91; object-position:center 29%; }
.work>div { grid-column:7/13; align-self:center; max-width:58ch; }
.work h3 { font-size:20px; line-height:1.3; font-weight:500; letter-spacing:-.02em; margin-bottom:27px; }
dl { margin:0; }
.role { margin-bottom:22px; }
.role dt,.result-label { font-size:12px; line-height:1.5; color:var(--accent); margin-bottom:8px; }
.role dd { margin:0; font-size:17px; }
.result-label { padding-top:20px; border-top:1px solid var(--line); }
.results { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:15px; }
.results strong { display:block; font:500 clamp(34px,4vw,56px)/1 var(--sans); letter-spacing:-.045em; }
.results span { display:block; font-size:13px; color:var(--muted); margin-top:12px; }
.attribution { max-width:65ch; margin-top:21px; color:var(--muted); font-size:12px; line-height:1.6; }
.experience { display:grid; grid-template-columns:1fr 1fr; gap:48px; margin-top:47px; padding-top:27px; border-top:1px solid var(--line); }
.experience h3 { margin-bottom:12px; color:var(--accent); font-size:17px; font-weight:500; }
.experience p { max-width:58ch; font-size:16px; }
.background { margin-top:36px; }
.gallery { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin-top:28px; }
.gallery img { height:180px; object-fit:cover; }
.next { border-top:1px solid var(--line); padding-top:68px; padding-bottom:76px; }
.next .section-header h2 { max-width:14ch; font-size:clamp(45px,5.6vw,80px); }
.responsibilities { margin-top:30px; }
.responsibilities>div { padding-block:17px; border-top:1px solid var(--line); }
.responsibilities dt { color:var(--accent); font-size:13px; margin-bottom:7px; }
.responsibilities dd { margin:0; font-size:16px; }
.contact { margin-top:30px; }
.contact>p { font-size:16px; }
.button { display:inline-flex; gap:20px; align-items:center; min-height:56px; padding:15px 0; margin-top:15px; border-bottom:1px solid var(--accent); color:var(--accent); text-decoration:none; font-size:22px; font-weight:500; letter-spacing:-.02em; }
.button:hover { color:#fff; border-color:#fff; }
.contact-address { display:block; width:fit-content; margin-top:18px; color:var(--muted); font-size:13px; overflow-wrap:anywhere; }
.page-footer { display:flex; align-items:start; justify-content:space-between; gap:30px; margin-inline:var(--edge); padding:24px 0 32px; border-top:1px solid var(--line); color:var(--muted); font-size:12px; line-height:1.6; }
.page-footer p:first-child { max-width:72ch; }
.page-footer p+p { margin:0; white-space:nowrap; }
@media (max-width:1000px) {
  .site-header .header-note { display:none; }
  .section-header>.body-copy { grid-column:7/13; }
  .detail-grid>.body-copy { grid-column:9/13; }
  #praxis .section-header h2 { grid-column:1/8; }
  #praxis .section-header>.body-copy { grid-column:8/13; }
  .episode h3 { grid-column:1/9; }
  .episode-intro { grid-column:9/13; }
}
@media (max-width:700px) {
  .cinema-section { padding-block:44px; }
  .cinema-section>.eyebrow { margin-bottom:22px; }
  .section-header,.detail-grid,.episode,.work { grid-template-columns:minmax(0,1fr); gap:25px; }
  .section-header h2,.section-header>.body-copy,#praxis .section-header h2,#praxis .section-header>.body-copy,.detail-grid figure,.detail-grid>.body-copy,.work>.work-photo,.work>div { grid-column:1; }
  .section-header h2 { font-size:clamp(36px,6.2vw,48px); max-width:20ch; }
  .section-header>.body-copy { padding-top:0; }
  .evidence { margin-top:32px; }
  .detail-grid>.body-copy { font-size:16px; }
  .episode { margin-top:35px; padding-top:24px; row-gap:0; }
  .episode-label,.episode h3,.episode-intro,.beats { grid-column:1; grid-row:auto; }
  .episode h3 { font-size:clamp(40px,7.8vw,56px); margin-top:20px; }
  .episode-intro { margin-top:24px; max-width:45ch; }
  .beats { grid-template-columns:1fr; gap:23px; margin-top:29px; }
  .beats li { display:grid; grid-template-columns:34px 1fr; gap:14px; padding-top:18px; font-size:16px; }
  .beats li::before { margin-bottom:0; padding-top:4px; }
  .beats strong { font-size:21px; margin-bottom:9px; }
  #praxis .section-header h2 { font-size:clamp(42px,8vw,58px); }
  .work { margin-top:28px; }
  .work>.work-photo { max-width:430px; }
  .work>.work-photo img { aspect-ratio:4/4.5; }
  .work>div { max-width:none; }
  .work h3 { margin-bottom:24px; }
  .results strong { font-size:43px; }
  .experience { grid-template-columns:1fr; gap:27px; margin-top:32px; }
  .gallery { grid-template-columns:1fr 1fr; gap:20px 14px; }
  .gallery img { height:150px; }
  .next .section-header h2 { font-size:clamp(43px,8vw,60px); max-width:18ch; }
  .next { padding-bottom:45px; }
  .page-footer { flex-direction:column; gap:20px; }
}
@media (max-width:650px) {
  .site-nav { gap:16px; font-size:13px; }
  .site-nav a:not(:last-child) { display:none; }
  .presentation .opening-intro { padding-bottom:0; }
  .presentation .opening>.eyebrow { font-size:12px; }
  .presentation .lead-photo figcaption { font-size:12px; }
  .presentation .opening { min-height:1060px; }
  .button { font-size:20px; }
}
@media (max-width:370px) { .presentation .opening { min-height:1160px; } .results strong { font-size:37px; } }
@media print {
  .presentation { --ink:#111; --paper:#fff; --muted:#444; --line:#aaa; --accent:#222; color:#111; background:white; }
  .site-nav,.skip-link,.opening-video { display:none!important; }
  .presentation .opening { min-height:0; }
  .cinema-section,#format,.next { color:#111; background:white; padding-block:25px; }
  .section-header,.detail-grid,.episode,.work,.beats { display:block; }
  .section-header h2,#praxis .section-header h2,.next .section-header h2 { font-size:30pt; margin-bottom:20px; }
  .episode h3 { font-size:28pt; color:#111; }
  .episode-intro,.assumption,.secondary-title { color:#444; }
  .work>.work-photo { max-width:260px; margin-bottom:25px; }
  .video-frame,.work-photo,.results { break-inside:avoid; }
  .beats li { padding:12px 0; }
  .button { color:#111; border-color:#111; }
  .page-footer { color:#444; }
}

/* V3 copy (28.9.2026): two-part headline, closing statement, number row,
   second track and contact list. */
.presentation .opening h1 { grid-column:1/11; font-size:clamp(52px,6.6vw,104px); line-height:.93; }
.presentation .opening h1 .title-main { max-width:11.5em; letter-spacing:-.05em; word-spacing:.06em; }
/* Dark only: over the full-bleed photo the winner line moves under the headline. */
.presentation:not(.film-light) .winner { grid-column:1/6; grid-row:3; max-width:34ch; margin-top:30px; }
.presentation .opening h1 .title-sub { margin-top:.4em; max-width:22em; font-weight:400; font-size:.46em; line-height:1.08; letter-spacing:-.035em; color:#e6dfd2; }
.closing { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); column-gap:24px; align-items:start; margin-top:56px; padding-top:28px; border-top:1px solid var(--line); }
.closing-fact { grid-column:1/6; max-width:46ch; font-size:16px; }
.closing p.closing-line { grid-column:7/13; margin-top:0; font:500 clamp(28px,3vw,42px)/1.12 var(--sans); letter-spacing:-.035em; text-wrap:balance; }
.stats { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:52px; padding-top:22px; border-top:1px solid var(--line); }
.stats span { max-width:26ch; }
#format .section-header h2 { max-width:20ch; font-size:clamp(34px,4.2vw,60px); }
.side-track { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); column-gap:24px; margin-top:56px; padding-top:28px; border-top:1px solid #656f5d; }
.side-track .episode-label { grid-column:1/6; }
.side-track .body-copy { grid-column:7/13; }
.work-copy-text { margin-top:30px; padding-top:22px; border-top:1px solid var(--line); font-size:16px; }
.contact-list { list-style:none; margin:24px 0 0; padding:0; font-size:14px; }
.contact-list li { display:flex; gap:16px; padding:9px 0; border-top:1px solid var(--line); }
.contact-list li>span { min-width:84px; color:var(--muted); }
.contact-list a { overflow-wrap:anywhere; }
/* Placeholders: visible on purpose, all must be replaced before sending. */
.todo { outline:1px dashed var(--accent); outline-offset:2px; background:rgba(223,175,112,.14); padding:0 .2em; }
.contact .todo { display:inline-block; margin-left:10px; font-size:12px; }
@media (max-width:700px) {
  .closing,.side-track { grid-template-columns:minmax(0,1fr); row-gap:18px; margin-top:36px; }
  .closing-fact,.closing p.closing-line,.side-track .episode-label,.side-track .body-copy { grid-column:1; }
  .closing p.closing-line { font-size:clamp(26px,6.4vw,32px); }
  .stats { grid-template-columns:minmax(0,1fr); gap:0; margin-top:36px; padding-top:0; border-top:0; }
  .stats>div { display:grid; grid-template-columns:88px 1fr; align-items:baseline; gap:14px; padding-block:14px; border-top:1px solid var(--line); }
  .stats strong { font-size:36px; }
  .stats span { margin-top:0; }
  #format .section-header h2 { font-size:clamp(32px,6vw,44px); }
}
@media (max-width:650px) {
  .presentation .opening h1 { font-size:clamp(44px,11.4vw,64px); line-height:.97; }
  .presentation .opening h1 .title-sub { font-size:.5em; }
}

/* Light variant (29.9.2026): body.film-light. Uses "Filmisch hell" from
   design-varianten.css for the opening and replaces the dark-only colours. */
.presentation.film-light .opening h1 { grid-column:1/10; }
.presentation.film-light .opening h1 .title-sub { color:var(--muted); }
.film-light #format { background:#f4f3ee; }
.film-light .episode,.film-light .beats li,.film-light .side-track { border-top-color:var(--line); }
.film-light .episode h3 { color:var(--ink); }
.film-light .episode-intro { color:var(--muted); }
.film-light .button:hover { color:var(--ink); border-color:var(--ink); }
.film-light .todo { background:rgba(160,44,39,.08); }
@media (max-width:650px) {
  .presentation.film-light .opening { min-height:0; }
  .presentation .opening h1,.presentation.film-light .opening h1 { grid-column:1/-1; }
}
.section-header h2,.episode h3,.closing p.closing-line { word-spacing:.05em; }

/* Hero ab 29.9.2026 ist ein Hochformat-Foto (Levi am Pult). Querausschnitt um
   Gesicht und Hand statt des 2,6:1-Streifens, der nur die Stirn zeigen wuerde. */
.presentation.film-light .lead-photo img { aspect-ratio:16/9; object-position:50% 42%; }
@media (max-width:650px) { .presentation.film-light .lead-photo img { aspect-ratio:4/5; object-position:50% 45%; } }

/* Nachrichtenbeitrag im Einstieg (29.9.2026): direkt sichtbar statt im Dialog,
   startet stumm von selbst (Browser erlauben Autoplay nur ohne Ton). */
.film-light .opening-video { grid-column:8/13; grid-row:4; margin:34px 0 0; }
.opening-video figcaption { margin-top:10px; color:var(--muted); font-size:12px; line-height:1.5; }
.opening-video figcaption strong { color:var(--ink); font-weight:600; }
@media (max-width:650px) { .film-light .opening-video { grid-column:1/-1; grid-row:6; margin-top:26px; } }
