/* Human Surrender: a screening room, a contact sheet, then the production record.
   The site palette and reading preference remain shared; only the screen is black. */
html.film-page { scroll-padding-top: 0; }
body.film-presentation { --fc-width: 1480px; --fc-reading: 760px; --fc-wave-filter: grayscale(1) brightness(.45); }
html[data-ww-theme="dark"] body.film-presentation { --fc-wave-filter: grayscale(1) brightness(1.5); }
@media (prefers-color-scheme: dark) { html:not([data-ww-theme="light"]) body.film-presentation { --fc-wave-filter: grayscale(1) brightness(1.5); } }
.film-presentation main { overflow: visible; }
.film-presentation .fc-shell { width: calc(100% - 2 * var(--ww-gutter)); max-width: var(--fc-width); margin-inline: auto; }
.film-presentation main [id] { scroll-margin-top: 84px; }
.film-presentation #watch-film { scroll-margin-top: 24px; }
.film-presentation h1,.film-presentation .fc-section-head h2 { font-family: var(--ww-sans); font-weight: 450; }
.film-presentation .fc-opening { display: grid; grid-template-columns: minmax(240px,.72fr) minmax(0,2fr); grid-template-areas: "title screen" "intro screen"; align-content: center; column-gap: clamp(32px,4.5vw,76px); row-gap: 28px; padding-block: clamp(36px,5vw,70px) 48px; }
.fc-title { grid-area: title; align-self: end; }
.fc-kicker { margin: 0 0 28px; font: 12px/1.6 var(--ww-sans); color: var(--ww-muted); letter-spacing: .07em; }
.film-presentation .fc-title h1 { font-size: clamp(58px,5.6vw,88px); line-height: 1.13; letter-spacing: -.055em; margin: 0; }
html[lang="en"] .film-presentation .fc-title h1 { font-size: clamp(44px,4.35vw,68px); line-height: 1.09; }
.fc-alias { margin: 20px 0 0; font: 400 clamp(17px,1.7vw,24px)/1.45 var(--ww-sans); letter-spacing: -.02em; }
html[lang="en"] .fc-alias { font-size: 15px; letter-spacing: 0; }
.fc-introduction { grid-area: intro; align-self: start; }
.fc-logline { margin: 0; max-width: 22em; font: 400 clamp(17px,1.4vw,20px)/1.8 var(--ww-reading); }
.fc-duration { margin: 20px 0 0; font: 12px/1.8 var(--ww-sans); color: var(--ww-muted); }
.fc-credit { margin: 24px 0 0; max-width: 32em; font: 12px/1.9 var(--ww-sans); color: var(--ww-muted); }
.fc-credit a { display: inline-block; margin-top: 6px; text-decoration-color: var(--ww-line); }
.fc-projection { grid-area: screen; min-width: 0; align-self: center; }
.film-presentation .fc-screen { position: relative; width: 100%; padding: 0; margin: 0; aspect-ratio: 16 / 9; background: #080909; overflow: hidden; }
.film-presentation .fc-screen video { display: block; width: 100%; height: 100%; object-fit: contain; aspect-ratio: 16 / 9; background: #080909; }
.fc-screen [data-fc-fullscreen] { width: 100%; height: 100%; }
.fc-screen iframe { display: block; width: 100%; height: 100%; border: 0; aspect-ratio: 16 / 9; }
.fc-player-bar { display: flex; align-items: center; gap: 20px; min-height: 48px; border-bottom: 1px solid var(--ww-line); }
.fc-player-bar p { margin: 0 auto 0 0; font: 11px/1.8 var(--ww-sans); color: var(--ww-muted); }
.film-presentation .fc-player-bar button { font: 12px/1.8 var(--ww-sans); color: var(--ww-ink); border: 0; border-radius: 0; padding: 12px 0 12px 10px; background: transparent; cursor: pointer; white-space: nowrap; }
.fc-screening-actions { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 20px; padding-top: 20px; }
.film-presentation .fc-watch-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; border: 1px solid var(--ww-ink); border-radius: 0; background: var(--ww-ink); color: var(--ww-paper); padding: 13px 18px; font: 14px/1.5 var(--ww-sans); cursor: pointer; white-space: nowrap; transition: background .2s,color .2s; }
.film-presentation .fc-watch-button:hover { background: var(--ww-paper); color: var(--ww-ink); }
.fc-watch-button span { font-size: 18px; }
.fc-watch-links { display: flex; gap: 14px 23px; flex-wrap: wrap; font: 11px/1.9 var(--ww-sans); }
.fc-watch-links a { text-decoration: none; color: var(--ww-muted); }
.fc-watch-links a:hover { color: var(--ww-ink); text-decoration: underline; }
.fc-player-note { font: 12px/1.8 var(--ww-sans); color: var(--ww-muted); max-width: 64ch; margin: 18px 0 0; }
.film-presentation .fc-nav { position: sticky; top: 0; z-index: 35; background: var(--ww-paper); border-block: 1px solid var(--ww-line); }
.fc-nav > div { width: calc(100% - 2 * var(--ww-gutter)); max-width: var(--fc-width); margin-inline: auto; display: flex; align-items: center; gap: clamp(26px,4.5vw,70px); min-height: 60px; }
.fc-nav a { display: block; flex: 0 0 auto; padding-block: 18px; font: 13px/1.8 var(--ww-sans); text-decoration: none; color: var(--ww-muted); white-space: nowrap; }
.fc-nav a:hover,.fc-nav a[aria-current] { color: var(--ww-accent); }
.film-presentation .fc-section { padding-block: clamp(58px,7.5vw,112px); border-bottom: 1px solid var(--ww-line); }
.fc-section-head { margin-bottom: 44px; max-width: 780px; }
.film-presentation .fc-section-head h2 { margin: 0 0 18px; font-size: clamp(30px,3vw,45px); line-height: 1.35; letter-spacing: -.025em; }
.fc-section-head > p { font: 15px/1.9 var(--ww-sans); color: var(--ww-muted); margin: 0; max-width: 62ch; }
.fc-frame { margin: 0 0 44px; }
.fc-frame > a { display: block; background: #0a0c0b; }
.fc-frame img { display: block; width: 100%; height: auto; max-height: calc(100svh - 310px); object-fit: contain; }
.fc-frame figcaption { display: flex; justify-content: space-between; gap: 24px; padding-block: 15px 0; font: 12px/1.8 var(--ww-sans); color: var(--ww-muted); }
.fc-frame figcaption a { flex-shrink: 0; text-decoration: none; }
.fc-gallery.is-enhanced .fc-frame { margin-bottom: 0; }
.fc-gallery-tools { display: flex; justify-content: space-between; align-items: center; min-height: 48px; margin-block: 10px; font: 12px/1 var(--ww-sans); font-variant-numeric: tabular-nums; color: var(--ww-muted); }
.fc-gallery-tools > div { display: flex; gap: 10px; }
.film-presentation .fc-gallery-tools button { width: 44px; height: 42px; padding: 0; border: 1px solid var(--ww-line); border-radius: 0; background: transparent; color: var(--ww-ink); font-size: 21px; cursor: pointer; }
.fc-gallery-tools button:hover { border-color: var(--ww-ink); }
.fc-thumbnails { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: clamp(9px,1.5vw,22px); }
.film-presentation .fc-thumbnails button { padding: 0 0 9px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--ww-muted); border-radius: 0; cursor: pointer; text-align: left; }
.fc-thumbnails img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; }
.fc-thumbnails span { display: block; margin-top: 8px; font: 10px/1.6 var(--ww-sans); font-variant-numeric: tabular-nums; }
.film-presentation .fc-thumbnails button[aria-pressed="true"] { border-color: var(--ww-accent); color: var(--ww-ink); }
.fc-frame.is-entering { animation: fc-dissolve .32s ease-out; }
@keyframes fc-dissolve { from { opacity: .3; } to { opacity: 1; } }
.fc-story-body { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(0,.65fr); gap: clamp(40px,8vw,130px); align-items: start; }
.fc-statement h3 { font: 13px/1.8 var(--ww-sans); color: var(--ww-muted); font-weight: 400; margin: 0 0 24px; }
.fc-statement p,.fc-making-copy p { font: 400 19px/1.95 var(--ww-reading); margin: 0 0 23px; max-width: var(--fc-reading); }
.fc-question { padding: 28px 0 0; border-top: 1px solid var(--ww-line); margin: 4px 0 0; background: transparent; }
.film-presentation .fc-question > p { font: 11px/1.8 var(--ww-sans); color: var(--ww-muted); margin: 0 0 16px; }
.film-presentation .fc-question blockquote { font: 400 22px/1.85 var(--ww-reading); margin: 0; max-width: 21em; }
.fc-question p > span { display: block; font: 11px/1.8 var(--ww-sans); color: var(--ww-muted); margin-bottom: 16px; }
.fc-timeline { margin: 50px 0 0; }
.fc-making-entry { display: grid; grid-template-columns: minmax(125px,.32fr) minmax(0,1fr); gap: 40px; padding: 38px 0; border-top: 1px solid var(--ww-line); }
.fc-date { font: 12px/1.8 var(--ww-sans); color: var(--ww-muted); font-variant-numeric: tabular-nums; margin: 6px 0 0; }
.fc-making-copy { max-width: var(--fc-reading); }
.fc-making-copy h3 { font: 450 clamp(21px,2vw,28px)/1.6 var(--ww-sans); margin: 0 0 20px; letter-spacing: -.01em; }
.fc-source-link { font: 12px/1.8 var(--ww-sans); text-decoration-color: var(--ww-line); display: inline-block; margin-top: 3px; }
.film-presentation .fc-writing { border-top: 0; background: transparent; }
.film-presentation .fc-writing .wc-heading { max-width: 780px; margin-bottom: 42px; }
.film-presentation .fc-writing .wc-heading h2 { font: 450 clamp(30px,3vw,45px)/1.35 var(--ww-sans); letter-spacing: -.025em; }
.film-presentation .fc-writing .wc-heading > p { font-size: 15px; }
.fc-writing .wc-list { max-width: 1150px; }
.film-presentation .fc-writing .wc-row { grid-template-columns: minmax(130px,.23fr) minmax(0,1fr); padding-block: 28px; gap: 18px 40px; }
.film-presentation .fc-writing .fc-featured-writing { padding-block: 38px 45px; }
.fc-featured-writing .wc-body h3 { font: 400 clamp(23px,2.35vw,33px)/1.55 var(--ww-reading); margin-bottom: 17px; }
.fc-writing .wc-relation { font: 17px/1.95 var(--ww-reading); }
.fc-writing .wc-relation-label { margin-bottom: 8px; }
.fc-writing-detail { min-width: 0; }
.fc-writing-detail > summary { font: 400 clamp(18px,1.6vw,23px)/1.6 var(--ww-reading); padding-right: 18px; cursor: pointer; list-style-position: outside; margin-left: 18px; }
.fc-writing-detail[open] > summary { margin-bottom: 24px; }
.fc-essay-return { padding: 26px 0; margin-block: 32px; border-block: 1px solid var(--ww-line); max-width: 1150px; }
.fc-essay-return p { margin: 0 0 10px; font: 14px/1.9 var(--ww-sans); color: var(--ww-muted); max-width: 66ch; }
.fc-essay-return p:last-child { font-size: 19px; color: var(--ww-ink); margin-top: 16px; }
.fc-essay-return .re-label { font-size: 11px; }
.fc-disclosure { border-top: 1px solid var(--ww-line); margin: 0; padding: 0; }
.fc-disclosure > summary { padding: 23px 26px 23px 0; font: 400 17px/1.7 var(--ww-sans); cursor: pointer; list-style: none; position: relative; }
.fc-disclosure > summary::-webkit-details-marker { display: none; }
.fc-disclosure > summary::after { content: '+'; position: absolute; right: 2px; top: 23px; color: var(--ww-muted); font-size: 21px; font-weight: 300; }
.fc-disclosure[open] > summary::after { content: '−'; }
.film-presentation .fc-editorial { border: 0; padding: 25px 0 42px; background: transparent; }
.fc-editorial .ww-work-reading-head,.fc-editorial .ww-work-reading-body { max-width: var(--fc-reading); margin-inline: auto; }
.fc-editorial .ww-work-reading-head h2 { font-size: 30px; }
.fc-editorial .ww-work-reading-body p { font-size: 18px; line-height: 1.95; }
.film-presentation .fc-audio { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: clamp(28px,5vw,80px); padding: 0 0 56px; border: 0; align-items: center; background: transparent; }
.fc-audio > div:first-child > p:first-child { font: 11px/1.8 var(--ww-sans); color: var(--ww-muted); margin: 0 0 16px; }
.film-presentation .fc-audio h3 { font: 400 25px/1.5 var(--ww-reading); margin: 0 0 18px; color: var(--ww-ink); }
.fc-audio > div:first-child > p:last-child { font: 16px/1.95 var(--ww-reading); max-width: 43ch; }
.film-presentation .fc-audio .audio-excerpt { background: var(--ww-surface); border: 1px solid var(--ww-line); color: var(--ww-ink); padding: 27px; }
.film-presentation .fc-audio .audio-excerpt h3 { font: 16px/1.8 var(--ww-sans); margin-top: 8px; }
.film-presentation .fc-audio .audio-label span,.film-presentation .fc-audio .audio-time { color: var(--ww-muted); }
.film-presentation .fc-audio .audio-play { color: var(--ww-ink); border-color: var(--ww-line); background: var(--ww-paper); }
.film-presentation .fc-audio .audio-wave img { opacity: .9; filter: var(--fc-wave-filter); }
.fc-projects { padding: 48px 0 0; border-top: 1px solid var(--ww-line); }
.fc-projects > header { margin-bottom: 32px; }
.fc-projects > header > h3 { font: 450 28px/1.4 var(--ww-sans); margin: 0; }
.fc-projects .sr-sites { column-gap: clamp(28px,5vw,76px); row-gap: 42px; }
.fc-projects .sr-site { padding: 0; border: 0; }
.fc-projects .sr-site h3 { font: 400 clamp(23px,2vw,29px)/1.5 var(--ww-sans); margin: 11px 0 16px; }
.fc-projects .sr-site > p { font: 16px/1.9 var(--ww-reading); max-width: 45em; }
.fc-projects .sr-site .sr-kind,.fc-projects .sr-site .sr-destination { font: 11px/1.9 var(--ww-sans); color: var(--ww-muted); }
.fc-projects .sr-site .sr-preview-note { font: 10px/1.8 var(--ww-sans); margin-bottom: 20px; }
.fc-projects .sr-preview img { aspect-ratio: 8 / 5; object-fit: contain; }
.film-presentation .fc-archive { border-bottom: 0; }
.fc-credits { padding: 0 0 48px; }
.fc-credits > h2 { font: 400 25px/1.5 var(--ww-reading); margin: 0 0 17px; }
.fc-credits > p { font: 17px/1.95 var(--ww-reading); max-width: var(--fc-reading); margin: 0 0 28px; }
.fc-credits .pf-gallery { max-width: 1040px; gap: 24px; }
.fc-credits figcaption { font: 12px/1.9 var(--ww-sans); color: var(--ww-muted); }
.film-presentation .fc-record { margin: 0; padding: 20px 0 35px; width: 100%; max-width: 1000px; background: transparent; border: 0; }
.fc-record h2 { font: 400 24px/1.5 var(--ww-reading); }
.fc-record .ac-record-summary { font: 17px/1.9 var(--ww-reading); max-width: var(--fc-reading); }
.fc-record dl { margin-block: 25px; }
.fc-record .ac-citation { overflow-wrap: anywhere; }
.fc-festivals { padding: 15px 0 35px; max-width: 900px; }
.fc-festivals h3 { font: 400 22px/1.6 var(--ww-reading); margin-bottom: 18px; }
.fc-festivals > p { font: 17px/1.95 var(--ww-reading); }
.fc-festivals .project-source-links { display: grid; gap: 13px; margin-block: 28px; }
.fc-festivals .project-source-links p { display: none; }
.fc-festivals .project-source-links a { font: 13px/1.9 var(--ww-sans); }
.film-presentation .fc-festivals .ar-text { padding: 25px 0 0; max-width: none; margin: 0; }
.fc-festivals .ar-text h2 { font: 400 22px/1.6 var(--ww-reading); }
.fc-festivals .ar-text a { font-size: 13px; }
.fc-relations .wm-work-crossings,.fc-relations .ww-connections { padding: 30px 0; background: transparent; border: 0; }
.fc-relations .wm-work-crossings > h2,.fc-relations .ww-connections > h2 { font: 400 28px/1.5 var(--ww-reading); }
.fc-relations .sr-more { margin: 20px 0; padding: 0; }
.fc-relations .pf-related { margin: 0; padding: 20px 0; }
.fc-contents .pf-chapter-nav { display: flex; flex-wrap: wrap; gap: 15px 30px; padding: 12px 0 32px; position: static; margin: 0; border: 0; background: transparent; height: auto; }
.fc-contents .pf-chapter-nav a { white-space: normal; font: 13px/1.8 var(--ww-sans); }
.fc-back-catalogue { font: 12px/1.8 var(--ww-sans); color: var(--ww-muted); padding-top: 40px; display: flex; gap: 12px; }
.film-presentation main button:focus-visible,.film-presentation main a:focus-visible,.film-presentation main summary:focus-visible { outline: 2px solid var(--ww-accent); outline-offset: 5px; }
.film-presentation main button:active { transform: translateY(1px); }
@media (min-width: 1650px) { .film-presentation .fc-opening { grid-template-columns: minmax(280px,.65fr) minmax(0,2fr); } }
@media (min-width: 761px) and (max-height: 800px) {
  .film-presentation .fc-opening { padding-block: 30px; }
  .film-presentation .fc-screen { max-height: calc(100svh - 290px); }
  .fc-kicker { margin-bottom: 18px; }
  .fc-credit { margin-top: 16px; }
}
@media (max-width: 1050px) {
  .film-presentation .fc-opening { column-gap: 30px; grid-template-columns: minmax(220px,.8fr) minmax(0,1.7fr); padding-block: 35px 40px; }
  .film-presentation .fc-title h1 { font-size: 64px; }
  html[lang="en"] .film-presentation .fc-title h1 { font-size: 47px; }
  .fc-title { align-self: start; }
  .fc-screening-actions { gap: 14px; }
  .fc-watch-links { gap: 12px 20px; }
  .fc-story-body { gap: 42px; grid-template-columns: minmax(0,1.5fr) minmax(0,1fr); }
  .fc-question p { font-size: 19px; }
  .fc-making-entry { grid-template-columns: 150px minmax(0,1fr); gap: 25px; }
}
@media (max-width: 760px) {
  .film-presentation .fc-opening { display: flex; flex-direction: column; align-items: stretch; gap: 27px; padding-block: 30px 32px; }
  .fc-title { width: 100%; }
  .fc-kicker { font-size: 11px; margin-bottom: 13px; }
  .film-presentation .fc-title h1 { font-size: clamp(40px,9vw,61px); line-height: 1.2; letter-spacing: -.04em; }
  .fc-title h1 br { display: none; }
  html[lang="en"] .film-presentation .fc-title h1 { font-size: clamp(37px,8vw,54px); line-height: 1.18; max-width: 13ch; }
  html[lang="en"] .fc-title h1 br { display: initial; }
  .fc-alias { font-size: 16px; margin-top: 12px; }
  .fc-projection { width: 100%; }
  .fc-introduction { width: 100%; }
  .fc-logline { max-width: 29em; font-size: 17px; }
  .fc-duration { margin-top: 13px; }
  .fc-credit { margin-top: 13px; max-width: none; font-size: 11px; }
  .fc-credit br { display: none; }
  .fc-credit a { margin: 0 0 0 12px; }
  .fc-player-bar { min-height: 44px; gap: 9px; }
  .fc-player-bar p { font-size: 10px; }
  .fc-screening-actions { padding-top: 15px; gap: 16px; }
  .fc-watch-button { width: 100%; }
  .fc-watch-links { width: 100%; justify-content: space-between; gap: 10px; }
  .fc-nav > div { justify-content: space-between; gap: 15px; min-height: 52px; overflow-x: auto; scrollbar-width: none; }
  .fc-nav a { font-size: 12px; padding-block: 14px; min-width: 44px; text-align: center; }
  .fc-section-head { margin-bottom: 30px; }
  .fc-section-head > p { font-size: 14px; }
  .fc-frame img { max-height: none; }
  .fc-frame figcaption { font-size: 11px; gap: 15px; padding-top: 12px; }
  .fc-frame figcaption a { font-size: 10px; }
  .fc-thumbnails { grid-template-columns: repeat(7,minmax(74px,1fr)); overflow-x: auto; padding-bottom: 7px; gap: 12px; }
  .fc-story-body { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .fc-statement p,.fc-making-copy p { font-size: 17px; line-height: 1.95; }
  .fc-question { padding-block: 20px; }
  .film-presentation .fc-question blockquote { font-size: 21px; max-width: 27ch; }
  .fc-timeline { margin-top: 20px; }
  .fc-making-entry { grid-template-columns: minmax(0,1fr); gap: 14px; padding-block: 27px; }
  .fc-making-copy h3 { font-size: 22px; }
  .film-presentation .fc-writing .wc-row { grid-template-columns: minmax(0,1fr); gap: 16px; padding-block: 24px; }
  .fc-writing .wc-meta { display: flex; flex-wrap: wrap; gap: 8px 20px; }
  .fc-writing .wc-relation { font-size: 16px; }
  .fc-featured-writing .wc-body h3 { font-size: 24px; }
  .fc-writing-detail > summary { font-size: 19px; }
  .fc-essay-return p:last-child { font-size: 17px; }
  .fc-disclosure > summary { font-size: 15px; padding-block: 21px; }
  .fc-editorial .ww-work-reading-body p { font-size: 17px; }
  .film-presentation .fc-audio { grid-template-columns: minmax(0,1fr); gap: 22px; padding-bottom: 38px; }
  .film-presentation .fc-audio .audio-excerpt { padding: 22px 18px; }
  .fc-projects { padding-top: 35px; }
  .fc-projects .sr-sites { grid-template-columns: minmax(0,1fr); gap: 38px; }
  .fc-projects .sr-site h3 { font-size: 25px; }
  .fc-credits .pf-gallery { grid-template-columns: minmax(0,1fr); gap: 28px; }
  .fc-credits > p { font-size: 16px; }
  .fc-record dl > div { grid-template-columns: 80px minmax(0,1fr); }
  .fc-contents .pf-chapter-nav { flex-direction: column; align-items: start; }
}
@media (prefers-reduced-motion: reduce) { .film-presentation .fc-frame.is-entering { animation: none; } .film-presentation .fc-watch-button { transition: none; } }
.film-presentation[data-wm-motion="paused"] .fc-frame.is-entering { animation: none; }
@media print {
  .fc-nav,.fc-player-bar,.fc-screening-actions,.fc-gallery-tools,.fc-thumbnails { display: none !important; }
  .film-presentation .fc-opening,.film-presentation .fc-story-body { display: block; }
  .fc-projection { margin-block: 25px; }
  .film-presentation .fc-frame[hidden] { display: block !important; }
  .fc-section { break-inside: auto; padding-block: 30px; }
  .fc-frame { break-inside: avoid; }
}
