.films { padding: 100px 0; background: #171816; color: #f4f1eb; scroll-margin-top: 90px; }
.films-heading { display: grid; grid-template-columns: 1.2fr 1fr; gap: 48px; align-items: end; margin-bottom: 44px; }
.films .films-eyebrow { font-family: 'Inter', sans-serif; color: #c5b89f; font-size: .72rem; font-weight: 500; letter-spacing: .13em; text-transform: uppercase; line-height: 1.7; margin: 0 0 12px; }
.films-heading h2 { margin: 0; font-size: clamp(2.2rem, 4.7vw, 3.7rem); line-height: 1.12; }
.films-heading > p { color: #c6c7be; max-width: 390px; justify-self: end; }
.films-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
.film-card { min-width: 0; }
.film-screen { aspect-ratio: 16 / 9; position: relative; background: #242720; overflow: hidden; border-radius: 3px; }
.film-screen > img { width: 100%; height: 100%; object-fit: cover; }
.film-screen > iframe { display: block; width: 100%; height: 100%; border: 0; }
.film-play { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; width: 100%; border: 0; color: white; background: linear-gradient(transparent, rgba(0,0,0,.3)); font: 500 .9rem 'Inter', sans-serif; cursor: pointer; }
.film-play-icon { display: grid; place-items: center; width: 64px; height: 64px; padding-left: 4px; background: rgba(23,24,22,.8); border: 1px solid rgba(255,255,255,.7); border-radius: 50%; font-size: 21px; transition: transform .2s, background .2s; }
.film-play:hover .film-play-icon { transform: scale(1.08); background: #8b7355; }
.film-play:focus-visible { outline: 3px solid #e7ce99; outline-offset: -5px; }
.film-duration, .film-soon { position: absolute; bottom: 14px; padding: 5px 10px; background: rgba(20,21,19,.85); color: #fff; font-size: .75rem; border-radius: 2px; }
.film-duration { right: 14px; pointer-events: none; }
.film-soon { left: 14px; }
.film-info { padding-top: 25px; }
.film-info h3 { font-size: clamp(1.6rem, 2.4vw, 2rem); margin-bottom: 12px; }
.film-info > p:not(.films-eyebrow) { color: #c6c7be; font-size: .94rem; }
.film-external { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; margin-top: 12px; font-size: .82rem; text-decoration: underline; text-underline-offset: 5px; }
.films-privacy { max-width: 760px; margin-top: 36px; color: #b5b7ad; font-size: .76rem; }
.films-privacy a { text-decoration: underline; text-underline-offset: 3px; }
.films-contact { display: inline-flex; gap: 30px; align-items: center; min-height: 48px; margin-top: 24px; border-bottom: 1px solid #c5b89f; font-size: .95rem; }
.films a:focus-visible { outline: 2px solid #e7ce99; outline-offset: 4px; }
@media (max-width: 700px) {
    .films { padding: 64px 0; }
    .films-heading { grid-template-columns: 1fr; gap: 20px; margin-bottom: 30px; }
    .films-heading > p { justify-self: start; }
    .films-grid { grid-template-columns: 1fr; gap: 40px; }
    .film-info { padding-top: 20px; }
    .film-play-icon { width: 56px; height: 56px; }
    .films-privacy { margin-top: 30px; }
}
@media (prefers-reduced-motion: reduce) { .film-play-icon { transition: none; } }
