/* Studio Nocturne film strip, scoped to leave the existing homepage unchanged. */
.films{background:var(--green);color:var(--paper)}
.films-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:25px}
.films .eyebrow{color:#c4b589}
.films-heading h2{font-size:clamp(34px,3vw,49px);line-height:1.08}
.films-heading-aside{display:flex;align-items:center;gap:25px;flex-shrink:0}
.films-heading-aside p{color:#d4ddd4;font:16px/1.4 var(--serif)}
.film-controls{display:flex;gap:9px}
.film-controls .round-button{color:var(--paper);border-color:#f2efe552}
.film-controls .round-button:hover:not(:disabled){background:var(--paper);color:var(--green)}
.film-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 64px)/5);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:5px 0 10px}
.film-track::-webkit-scrollbar{display:none}
.film-card{position:relative;aspect-ratio:9/16;overflow:hidden;border-radius:8px;isolation:isolate;scroll-snap-align:start;display:block;width:100%;background:#243f35;color:white;text-align:left}
.film-card img{width:100%;height:100%;object-fit:cover;transition:transform var(--duration-image) var(--ease-ui)}
.film-card::after{content:'';position:absolute;inset:48% 0 0;background:linear-gradient(transparent,rgba(8,23,18,.82));pointer-events:none;z-index:1}
.film-card:hover img{transform:scale(1.035)}
.film-card:focus-visible{outline:3px solid var(--brass);outline-offset:-4px}
.film-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--paper);color:var(--green);z-index:2;box-shadow:0 2px 18px #0002;transition:transform var(--duration-ui) var(--ease-ui)}
.film-play svg{width:15px;height:15px;fill:currentColor;transform:translateX(1px)}
.film-card:hover .film-play{transform:translate(-50%,-50%) scale(1.04)}
.film-caption{position:absolute;bottom:18px;left:16px;right:12px;z-index:2}
.film-caption strong{display:block;font:500 15px/1.35 var(--sans)}
.film-caption small{display:block;color:#e3e9df;font-size:10px;letter-spacing:.025em;margin-top:5px}
.film-card.is-current{box-shadow:inset 0 0 0 2px var(--brass)}
.films-bottom{display:flex;align-items:center;gap:18px;margin-top:10px}
.film-progress{height:2px;background:#f2efe530;flex:1;position:relative;overflow:hidden}
.film-progress span{display:block;width:20%;height:100%;background:var(--paper);transition:transform .25s}
.film-position{font:11px var(--sans);color:#e3e9df;min-width:45px;text-align:right;font-variant-numeric:tabular-nums}
.films-disclosure{color:#b6c9be;font:10px/1.5 var(--sans);margin-top:13px}
.film-dialog{width:1000px;background:var(--paper)}
.film-dialog-heading{padding:22px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.film-dialog-heading h2{font-size:35px;line-height:1.1}
.film-dialog-heading .eyebrow{margin-bottom:5px}
.film-player{aspect-ratio:16/9;background:#0b1e18;display:grid;place-items:center}
.film-player iframe,.film-player video{width:100%;height:100%;border:0;display:block}
.film-player p{padding:28px;color:var(--paper);text-align:center}
.film-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:20px 28px}
.film-dialog-footer p{font-size:11px;max-width:530px;line-height:1.6}
.film-dialog-footer .text-link{white-space:nowrap;font-size:16px}
@media(min-width:1900px){.film-track{grid-auto-columns:minmax(0,1fr)}.film-card{max-height:560px}}
@media(max-width:1100px){.films-heading-aside p{display:none}.film-track{grid-auto-columns:calc((100% - 48px)/4.3)}}
@media(max-width:800px){.films-heading h2{font-size:36px;max-width:400px}.film-track{grid-auto-columns:calc((100% - 32px)/3.15)}.film-caption{left:12px;bottom:14px}.film-caption strong{font-size:13px}}
@media(max-width:560px){.films-heading{gap:15px;align-items:flex-end;margin-bottom:20px}.films-heading h2{font-size:35px;max-width:255px}.film-controls{gap:6px}.film-controls .round-button{width:31px;height:31px}.film-track{grid-auto-columns:76%;gap:14px}.film-caption{left:18px;bottom:20px}.film-caption strong{font-size:16px}.film-caption small{font-size:11px}.film-dialog-heading{padding:20px}.film-dialog-heading h2{font-size:29px}.film-dialog-footer{display:block;padding:18px 20px}.film-dialog-footer .text-link{margin-top:12px}.film-dialog-footer p{font-size:12px}}
