.v9-films {margin-top:24px;padding-top:40px;scroll-margin-top:20px}
.v9-films>h3 {font-size:clamp(32px,4vw,52px);line-height:1.1;letter-spacing:-.035em;font-weight:700;margin:0 0 20px;max-width:48rem}
.v9-films>p {max-width:46rem;margin-bottom:28px}
/* Orion A2d: film pacing takes priority over the old 12–15k page estimate. */
.v9-film-entry {position:relative;min-height:365svh;padding-top:24px;margin-bottom:0;scroll-margin-top:12px}
.v9-film-heading h4 {font-size:28px;font-weight:650;line-height:1.2;letter-spacing:-.025em;margin:0 0 12px}
.film-example {font-size:16px;line-height:1.4;color:var(--lavender);margin:0 0 12px}
.v9-film-links {display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:18px;font-size:14px;color:var(--lavender)}
.v9-film-links a {display:inline-flex;min-height:44px;align-items:center;text-decoration:underline;text-underline-offset:4px}
.v9-film-links button,[data-retry-film],#film-viewer button {min-height:44px;border:1px solid var(--line);background:var(--surface);border-radius:0;padding:8px 14px;font-size:14px}
[data-open-film][hidden],[data-retry-film][hidden] {display:none}
.v9-film-layout {--film-width:min(100vw,calc((100svh - 36px) * 16 / 9));width:var(--film-width);margin-inline:calc((100% - var(--film-width))/2);position:sticky;top:24px;min-width:0;display:block;perspective:1400px;perspective-origin:50% 50%;padding-bottom:22px}
.v9-film-stage {position:relative;aspect-ratio:16/9;width:100%;min-width:0;background:var(--night);transform:translateZ(-900px) rotateY(10deg);transform-style:preserve-3d;will-change:transform}
.v9-film-stage::before {content:none}
.v9-film-stage picture,.v9-film-stage img,.v9-film-stage video {position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
.v9-film-stage img {z-index:0}.v9-film-stage video {z-index:1;opacity:0}
.v9-film-stage video.has-frame {opacity:1}
.v9-film-copy {max-width:48rem;margin-top:20px;font-size:16px;line-height:1.5}
.v9-film-copy>p {font-size:16px;margin:0}
.v9-film-status {font-size:14px;margin:12px 0;color:var(--muted);position:relative}
#films[data-catalog=unavailable] .v9-film-entry,#films[data-reduced=true] .v9-film-entry {min-height:0;margin-bottom:70px}
#films[data-catalog=unavailable] .v9-film-layout,#films[data-reduced=true] .v9-film-layout {position:relative;top:0}
#films[data-reduced=true] .v9-film-stage {transform:none!important;will-change:auto}
#film-viewer {color:var(--text);background:var(--night);border:0;padding:0;width:min(100vw,calc((100svh - 76px) * 16 / 9));max-width:100vw;max-height:100svh;overscroll-behavior:contain}
#film-viewer[data-variant=phone] {width:min(100vw,calc((100svh - 76px) * 9 / 16))}
#film-viewer::backdrop {background:rgb(15 13 26 / .96)}
#film-viewer header {box-sizing:border-box;height:64px;padding:8px 12px;display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0}
#film-viewer h3 {font-size:22px;line-height:1.2}
#film-viewer video {display:block;width:100%;height:auto;max-height:calc(100svh - 76px);object-fit:contain;background:var(--night)}
#film-viewer>a,#film-viewer [data-viewer-status] {margin-inline:12px}
#film-viewer a {display:inline-flex;min-height:44px;align-items:center;font-size:14px;text-decoration:underline;text-underline-offset:4px}
#film-viewer [data-viewer-status] {font-size:14px}
@media(max-width:760px),(orientation:portrait){
 .v9-film-entry {min-height:270svh}
 .v9-film-layout {--film-width:100vw;top:0;max-width:none;padding-bottom:0}
 .v9-film-stage {aspect-ratio:auto;height:100svh;margin-inline:auto}
 .v9-film-copy {margin:18px 16px 0;max-width:36rem}
 .v9-film-heading h4 {font-size:26px}
 .v9-film-links {gap:8px 18px}
 #film-viewer h3 {font-size:18px}
}
@media(max-height:520px) and (min-width:761px) and (orientation:landscape){.v9-film-layout{--film-width:min(100vw,calc((100svh - 12px) * 16 / 9));top:0}}
@media(prefers-reduced-motion:reduce){.v9-film-entry{min-height:0;margin-bottom:70px}.v9-film-layout{position:relative;top:0}.v9-film-stage{transform:none!important;will-change:auto}}
html:not(.a2-enhanced) .v9-film-entry {min-height:0;margin-bottom:60px}
html:not(.a2-enhanced) .v9-film-layout {position:relative;top:0}
html:not(.a2-enhanced) .v9-film-stage {transform:none}
