/* A deliberate invitation to watch; the full film loads only on request. */
.film-section{padding:80px var(--gutter) 70px;background:var(--obsidian);color:var(--ivory)}
.film-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;align-items:end;margin-bottom:40px}
.film-heading h2{font-size:clamp(52px,6vw,88px);margin-top:24px;line-height:1.02}
.film-heading>p{max-width:390px;font-size:15px;line-height:1.7;color:#b9b8b1;padding-bottom:5px}
.film-poster{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;background:#1b1b18}
.film-poster img{display:block;width:100%;height:100%;object-fit:contain}
.film-play{position:absolute;right:4%;bottom:7%;width:94px;height:94px;display:grid;place-items:center;border-radius:50%;background:var(--obsidian);color:var(--ivory);box-shadow:0 6px 28px #0b0b0b33;border:1px solid #f7f6f34d}
.film-play svg{width:27px;height:27px;margin-left:4px}
.film-poster:focus-visible{outline:2px solid var(--signal);outline-offset:6px}
.film-caption{display:flex;justify-content:space-between;gap:24px;padding-top:20px;font-size:11px;line-height:1.7;color:#b9b8b1}
.film-caption strong{color:var(--ivory);font-weight:500}
.film-caption>span:last-child{text-align:right;font-size:10px}
body.film-open{overflow:hidden}
.film-dialog{width:min(1160px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 40px);border:1px solid #f7f6f326;padding:0;background:var(--obsidian);color:var(--ivory);overflow:auto;margin:auto;box-shadow:0 24px 100px #0008}
.film-dialog::backdrop{background:#050505eb}
.film-player-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:13px 20px;border-bottom:1px solid var(--line-light)}
.film-player-header h2{font-family:Inter,Arial,sans-serif;font-weight:400;font-size:12px;letter-spacing:.01em;line-height:1.4}
.film-player-header h2 span{color:#a5a49d;margin-left:14px;font-size:10px}
.film-close{display:flex;align-items:center;gap:12px;min-width:44px;min-height:44px;font-size:11px;flex-shrink:0}
.film-close svg{width:18px;height:18px}
.film-dialog video{display:block;width:100%;height:auto;max-height:calc(100dvh - 205px);aspect-ratio:16/9;object-fit:contain;background:#000}
.film-dialog video:focus-visible{outline:2px solid var(--signal);outline-offset:-2px}
.film-player-footer{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px;font-size:11px;line-height:1.6}
.film-player-footer p{max-width:530px;color:#a5a49d;font-size:10px}
.film-player-footer a{white-space:nowrap;border-bottom:1px solid var(--signal);padding:8px 0;min-height:36px}
.film-player-footer a svg{display:inline-block;width:16px;height:16px;vertical-align:-3px;color:var(--signal);margin-left:14px}
.film-error{padding:14px 20px;background:#2a1712;font-size:12px;line-height:1.6}
.film-error a{text-decoration:underline;text-underline-offset:3px}
@media(hover:hover) and (pointer:fine){.film-poster:hover .film-play{background:var(--signal);color:var(--obsidian);border-color:var(--signal)}.film-close:hover{color:var(--signal)}}
@media(max-width:700px){
  .film-section{padding:55px var(--gutter) 45px}
  .film-heading{grid-template-columns:1fr;gap:24px;margin-bottom:28px}
  .film-heading h2{font-size:clamp(36px,10.8vw,52px);margin-top:22px}
  .film-heading>p{font-size:14px;max-width:340px}
  .film-play{width:52px;height:52px;right:5%;bottom:8%}.film-play svg{width:18px;height:18px;margin-left:3px}
  .film-caption{flex-direction:column;gap:6px;padding-top:15px}.film-caption>span:last-child{text-align:left}
  .film-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}
  .film-player-header{padding:8px 12px;gap:10px}.film-player-header h2{font-size:11px}.film-player-header h2 span{display:block;margin:3px 0 0;font-size:9px}
  .film-player-footer{align-items:start;flex-direction:column;gap:9px;padding:15px}
  .film-dialog video{max-height:calc(100dvh - 230px)}
}
@media print{.film-section,.film-dialog,.hero-pricing.film-trigger{display:none}}
