/* Independent cinema. No external assets, fonts, scripts, or fabricated posters. */
body:has(.original-theater) {
  color-scheme: dark;
  --bg: #080a0d; --bg-elev: #14171c; --bg-card: #111419;
  --border: #292d34; --border-hover: #abb5c2;
  --text: #f0eee9; --text-muted: #a6abb3; --text-dim: #777f8b;
  --accent: #f0eee9; --accent-hover: #fff; --accent-text: #101216;
  --highlight: #1b2027;
}
body:has(.original-theater) > header {background: rgba(8,10,13,.92); border-color: #24272c;}
body:has(.original-theater) > main {padding: 0; min-width: 0;}
body:has(.original-theater) > header .header-inner {min-width: 0;}
body:has(.original-theater) > header .nav {min-width: 0;}
.original-theater {--cinema-gutter: clamp(20px,4vw,72px); width: 100%; max-width: 1920px; min-width: 0; margin: 0 auto; color: #f0eee9; background: #080a0d; font-family: inherit; overflow-wrap: anywhere;}
.original-theater *, .original-theater *::before, .original-theater *::after {box-sizing: border-box;}
.original-theater a {text-decoration: none;}
.original-theater :focus-visible {outline: 2px solid #d2b98e; outline-offset: 5px;}
.original-masthead {display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 20px; padding: 30px var(--cinema-gutter);}
.original-wordmark {display: flex; flex-direction: column; gap: 4px; width: fit-content;}
.original-wordmark span {font-size: 10px; font-weight: 700; letter-spacing: .36em;}
.original-wordmark strong {font-size: 24px; line-height: 1; font-weight: 800; letter-spacing: -.045em;}
.original-masthead-actions {display: flex; gap: 28px; align-items: center; flex-wrap: wrap;}
.original-label {font-size: 11px; color: #9098a3;}
.original-text-link {display: inline-flex; align-items: center; gap: 9px; font-size: 12px; line-height: 1.6; color: #bcc2cb; transition: color .2s;}
.original-text-link:hover {color: #fff;}
.original-text-link span {font-size: 16px;}
.original-eyebrow {font-size: 10px; line-height: 1.7; letter-spacing: .19em; font-weight: 600; color: #bda581;}
.original-eyebrow span {padding: 0 12px; color: #737983;}
.original-badges {display: flex; align-items: center; flex-wrap: wrap; gap: 8px;}
.original-badge {display: inline-flex; align-items: center; width: fit-content; padding: 5px 8px; font-size: 9px; line-height: 1.4; letter-spacing: .09em; font-weight: 600; color: #d2c4ae; border: 1px solid #7b6d574d; border-radius: 2px; background: #10121666;}
.original-badge-private {border-color: #8e6b624f; color: #d7b8ae;}
.original-model {font-size: 11px; color: #a9b0bc;}
.original-hero {position: relative; isolation: isolate; min-height: 570px; min-height: clamp(490px,43vw,750px); margin: 0 var(--cinema-gutter); background: #11161c; border: 1px solid #252b33; border-radius: 5px; overflow: hidden;}
.original-hero-media, .original-hero-shade {position: absolute; inset: 0; z-index: -1;}
.original-hero-media .original-media {width: 100%; height: 100%; object-fit: cover; object-position: center 35%; opacity: .77;}
.original-hero-shade {background: linear-gradient(90deg,rgba(5,8,12,.98),rgba(5,8,12,.68) 42%,rgba(5,8,12,.12) 78%),linear-gradient(0deg,#080a0de8,transparent 70%);}
.original-hero-copy {display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; gap: 24px; min-height: inherit; width: min(76%,850px); padding: clamp(28px,5vw,88px);}
.original-hero h1 {font-size: clamp(35px,5.2vw,84px); line-height: 1.12; letter-spacing: -.055em; font-weight: 800; text-wrap: balance;}
.original-actions {display: flex; align-items: center; gap: 10px; flex-wrap: wrap;}
.original-button {display: inline-flex; justify-content: center; align-items: center; gap: 11px; min-height: 44px; padding: 12px 20px; border: 1px solid transparent; border-radius: 3px; font-size: 12px; font-weight: 650; line-height: 1.4; transition: background .2s,border-color .2s;}
.original-button-light {color: #15171a; background: #eeeae2; border-color: #eeeae2;}
.original-button-light:hover {background: #fff; border-color: #fff;}
.original-button-outline {color: #e0e2e6; border-color: #747d8d66; background: #0d101655;}
.original-button-outline:hover {background: #282e37; border-color: #a6afbd;}
.original-play-icon {width: 0; height: 0; border-left: 8px solid currentColor; border-top: 5px solid transparent; border-bottom: 5px solid transparent;}
.original-hero-caption {position: absolute; right: 30px; bottom: 28px; font-size: 8px; letter-spacing: .24em; color: #aaaeb7;}
.original-library {padding: 48px var(--cinema-gutter) 0; min-width: 0;}
.original-library-heading {display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 28px;}
.original-sort {display: flex; gap: 18px; font-size: 11px; color: #858d99;}
.original-sort a {padding: 8px 0; border-bottom: 1px solid transparent;}
.original-sort a[aria-current] {color: #f0eee9; border-color: #c1a780;}
.original-shelf {min-width: 0; margin-bottom: 44px;}
.original-shelf-heading {display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 19px;}
.original-shelf h2 {font-size: clamp(17px,1.6vw,22px); letter-spacing: -.035em; line-height: 1.4; font-weight: 650;}
.original-scroll-hint {font-size: 10px; color: #89919b; white-space: nowrap;}
.original-shelf-track {display: flex; align-items: flex-start; gap: clamp(14px,1.5vw,24px); overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: x proximity; scrollbar-width: thin; scrollbar-color: #444a54 #111419; padding: 5px 3px 20px; max-width: 100%; min-width: 0;}
.original-shelf-track::-webkit-scrollbar {height: 4px;}
.original-shelf-track::-webkit-scrollbar-thumb {background: #444a54; border-radius: 10px;}
.original-card {flex: 0 0 clamp(165px,18vw,280px); min-width: 0; scroll-snap-align: start;}
.original-card-link {display: block;}
.original-poster {position: relative; aspect-ratio: 2/3; width: 100%; overflow: hidden; border-radius: 3px; border: 1px solid #2a3038; background: #141920; transition: border-color .2s;}
.original-poster::after {position: absolute; content: ''; inset: 0; background: linear-gradient(0deg,#06090d9e,transparent 40%); pointer-events: none;}
.original-poster .original-media {display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .25s;}
.original-card-link:hover .original-poster {border-color: #bca783;}
.original-card-link:hover .original-media {transform: scale(1.035);}
.original-poster-brand {position: absolute; z-index: 1; bottom: 16px; left: 14px; font-size: 8px; letter-spacing: .18em; color: #eeeae2;}
.original-card-play {position: absolute; z-index: 1; top: 50%; left: 50%; transform: translate(-50%,-50%); width: 44px; height: 44px; border: 1px solid #fff8; border-radius: 50%; background: #05080b88; opacity: 0; transition: opacity .2s;}
.original-card-play::after {position: absolute; content: ''; left: 18px; top: 14px; border-left: 10px solid #fff; border-top: 7px solid transparent; border-bottom: 7px solid transparent;}
.original-card-link:hover .original-card-play, .original-card-link:focus-visible .original-card-play {opacity: 1;}
.original-poster-private {position: absolute; top: 12px; right: 12px; background: #0b0d12d9; color: #d7c7b4; font-size: 9px; padding: 5px 8px; border: 1px solid #9e897455; border-radius: 2px;}
.original-card-copy {padding-top: 13px;}
.original-card h3 {font-size: 13px; line-height: 1.5; font-weight: 600; color: #e6e8eb; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;}
.original-card p {margin-top: 5px; color: #89929e; font-size: 10px; line-height: 1.6;}
.original-media-missing {display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 20px; width: 100%; height: 100%; min-height: 120px; padding: 20px; text-align: center; color: #929ba7; background: radial-gradient(ellipse at 50% 10%,#303743,#10141b 70%); font-size: 11px;}
.original-monogram {font-size: clamp(40px,7vw,110px); color: #ffffff12; font-weight: 800; line-height: 1;}
.original-pagination {display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 20px; font-size: 11px; color: #a2a9b4; margin: 12px 0 48px;}
.original-colophon {display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 15px; margin: 48px var(--cinema-gutter) 0; padding: 25px 0 32px; border-top: 1px solid #262a30; font-size: 10px; line-height: 1.6; color: #7d8591;}
.original-colophon > span:first-child {letter-spacing: .16em; color: #a9afb8; font-weight: 600;}
/* Empty theatre: purely CSS architecture, never a fake film or thumbnail. */
.original-empty-stage {position: relative; isolation: isolate; min-height: 650px; min-height: min(790px,calc(100svh - 150px)); margin: 0 var(--cinema-gutter); padding: 85px 30px 100px; display: grid; place-items: center; background: #0e1218; border: 1px solid #252c35; border-radius: 4px; overflow: hidden;}
.original-stage-art {position: absolute; z-index: -1; inset: 0; overflow: hidden; background: radial-gradient(ellipse at 50% 8%,#aeb6c920,transparent 65%),linear-gradient(90deg,#06090ee8,transparent 25%,transparent 75%,#06090ee8);}
.original-stage-beam {position: absolute; top: -15%; left: 10%; width: 80%; height: 110%; background: linear-gradient(180deg,#a5b5d10d,transparent 75%); clip-path: polygon(44% 0,56% 0,100% 100%,0 100%);}
.original-stage-screen {position: absolute; left: 18%; right: 18%; top: 13%; bottom: 23%; display: grid; place-items: center; border: 1px solid #95a7bd17; border-top-color: #bdc9dc33; border-radius: 50% / 3%; background: linear-gradient(160deg,#6a7b9515,#25334608); box-shadow: 0 0 100px #b7c4dc08,inset 0 0 100px #7f90a108;}
.original-stage-screen span {font-size: clamp(140px,25vw,420px); color: #c4d3e404; font-weight: 800;}
.original-stage-floor {position: absolute; left: -15%; right: -15%; height: 26%; bottom: -12%; border-top: 1px solid #8d9db629; border-radius: 50%; background: radial-gradient(ellipse at 50% 0,#52658122,#080b11 70%); box-shadow: 0 -10px 80px #a2b1c40a;}
.original-empty-copy {position: relative; text-align: center; max-width: 660px;}
.original-empty-copy .original-eyebrow {margin-bottom: 32px; color: #a5a9ae; font-size: 9px; letter-spacing: .3em;}
.original-empty-copy h1 {font-size: clamp(40px,7.8vw,112px); line-height: .98; font-weight: 800; letter-spacing: -.065em; text-shadow: 0 3px 32px #05080c;}
.original-empty-copy h1 span {display: block; font-size: .29em; letter-spacing: .36em; font-weight: 650; padding-left: .36em; margin-bottom: 17px; color: #ced1d7;}
.original-empty-tagline {margin-top: 29px; font-size: clamp(16px,1.7vw,23px); line-height: 1.6; font-weight: 500; letter-spacing: -.04em; color: #e6e3dd;}
.original-empty-note {margin: 15px auto 28px; color: #929ba8; font-size: 12px; line-height: 1.9; text-wrap: balance;}
.original-stage-baseline {position: absolute; left: 28px; right: 28px; bottom: 23px; display: flex; justify-content: space-between; gap: 16px; font-size: 7px; letter-spacing: .15em; color: #687383;}
/* Dedicated screening page. All media remains under the viewer's control. */
.original-watch {padding-top: 26px;}
.original-watch-topline {display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 0 var(--cinema-gutter) 28px;}
.original-watch-brand {font-size: 9px; font-weight: 650; letter-spacing: .16em; color: #a7aeb8;}
.original-screening {max-width: 1440px; margin: 0 auto; padding: 0 var(--cinema-gutter);}
.original-player {display: grid; place-items: center; width: 100%; max-width: 1440px; aspect-ratio: 16/9; background: #000; border: 1px solid #272d35; border-radius: 3px; overflow: hidden; box-shadow: 0 20px 90px #0005;}
.original-player .original-media {display: block; width: 100%; height: 100%; max-width: 100%; max-height: 100%; object-fit: contain; background: #000; min-width: 0; min-height: 0;}
.original-player .original-media-missing {min-height: 0;}
.original-film-info {display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; margin-top: 28px;}
.original-film-heading {min-width: 0;}
.original-film-info h1 {font-size: clamp(26px,3vw,44px); line-height: 1.25; font-weight: 700; letter-spacing: -.045em; margin-top: 14px;}
.original-film-info .original-actions {flex-shrink: 0; max-width: 55%;}
.original-tags {display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 20px 0 0; padding: 0;}
.original-tags li {color: #a6aebb; padding: 5px 9px; border: 1px solid #2b313b; border-radius: 2px; font-size: 10px; line-height: 1.5;}
.original-board-wrap {max-width: 1800px; min-width: 0; margin: 0 auto; padding: 0 var(--cinema-gutter);}
.original-theater .production-board {color: #e4e7eb; scroll-margin-top: 140px;}
.original-theater .production-board .pb-heading h2 {color: #e4e7eb;}
.original-theater .production-board .pb-heading p, .original-theater .production-board .pb-eyebrow {color: #9da6b4;}
.original-theater .production-board .pb-toggle {background: #171b22; border-color: #434b58; color: #e4e7eb;}
.original-related {padding: 0 var(--cinema-gutter); margin-top: 60px;}
@media (min-width: 1600px) {.original-card {flex-basis: calc((100% - 120px)/6);} }
@media (max-width: 800px) {
  .original-masthead {padding-top: 24px; padding-bottom: 24px;}
  .original-label {display: none;}
  .original-hero {min-height: 560px;}
  .original-hero-copy {width: 100%; padding: 32px 24px; gap: 20px; justify-content: flex-end;}
  .original-hero-shade {background: linear-gradient(0deg,#070a0fff,rgba(7,10,15,.78) 42%,rgba(7,10,15,.12) 90%);}
  .original-hero-media .original-media {object-position: center top;}
  .original-hero h1 {max-width: 620px; font-size: clamp(32px,7vw,54px);}
  .original-hero-caption {display: none;}
  .original-library {padding-top: 32px;}
  .original-empty-stage {min-height: 610px; padding-inline: 20px;}
  .original-stage-screen {left: 8%; right: 8%;}
  .original-stage-baseline span:last-child {display: none;}
  .original-film-info {align-items: flex-start; flex-direction: column; gap: 22px;}
  .original-film-info .original-actions {max-width: 100%;}
}
@media (max-width: 480px) {
  .original-wordmark strong {font-size: 21px;}
  .original-masthead {gap: 14px;}
  .original-masthead-actions {gap: 10px;}
  .original-masthead-actions .original-text-link {font-size: 10px;}
  .original-hero {min-height: 500px;}
  .original-hero-copy {padding: 28px 18px;}
  .original-eyebrow {font-size: 8px;}
  .original-button {padding: 11px 14px; font-size: 11px;}
  .original-card {flex-basis: 155px;}
  .original-empty-stage {min-height: 560px;}
  .original-empty-copy h1 {font-size: clamp(30px,10.5vw,48px);}
  .original-empty-note {font-size: 11px;}
  .original-library-heading {gap: 12px;}
  .original-sort {gap: 14px; font-size: 10px;}
  .original-scroll-hint {font-size: 9px;}
  .original-watch-brand {font-size: 7px; letter-spacing: .1em;}
  .original-screening {padding-inline: 12px;}
  .original-film-info, .original-tags {margin-left: 8px; margin-right: 8px;}
  .original-colophon {margin-top: 32px; font-size: 9px;}
}
@media (prefers-reduced-motion: reduce) {.original-theater *, .original-theater *::before, .original-theater *::after {transition: none !important; scroll-behavior: auto !important;}}
