/* Client and film credits: native CSS, no external assets or per-frame JS. */
.companies-section{position:relative;border-block:1px solid var(--line);background:radial-gradient(ellipse at 12% 80%,#c9192614,transparent 65%);overflow:hidden}
.companies-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:36px}
.companies-heading .section-heading{max-width:720px}
.companies-heading .section-heading h2{font-size:clamp(32px,3.3vw,48px);text-wrap:balance}
.companies-heading>p{max-width:270px;font-size:14px;line-height:1.75}
.company-marquee{--company-gap:16px;--company-half-gap:8px;overflow:hidden;max-width:100%;padding-block:8px 16px;mask-image:linear-gradient(90deg,transparent,#000 1%,#000 99%,transparent)}
.companies-belt{display:flex;gap:var(--company-gap);width:max-content;animation:companies-loop 96s linear infinite;will-change:transform}
.companies-track{display:flex;flex:0 0 auto;gap:var(--company-gap);width:max-content;list-style:none;margin:0;padding:0}
.company-card{position:relative;display:grid;grid-template-rows:auto 1fr;align-content:start;gap:26px;flex:0 0 294px;width:294px;min-height:200px;padding:24px;border:1px solid #ffffff26;border-radius:18px;background:linear-gradient(135deg,#ffffff0c,#ffffff02 65%,#c919260b);box-shadow:inset 0 1px 0 #ffffff24;overflow:hidden}
.company-country{display:flex;align-items:center;gap:9px;color:#d4d6dc;font-size:12px;line-height:1.5}
.company-country:before{content:'';width:5px;height:5px;flex-shrink:0;border-radius:50%;background:var(--bright);box-shadow:0 0 9px #ff626a66}
.company-card h3{font-size:24px;line-height:1.2;letter-spacing:-.025em;overflow-wrap:break-word}
.company-identity{display:grid;grid-template-rows:auto minmax(18px,auto);row-gap:8px;align-self:start;min-width:0;width:100%}
.company-name-line{display:block}
.company-note{display:block;min-height:18px;font-size:12px;line-height:1.5;color:#ffb4bb}
@keyframes companies-loop{to{transform:translate3d(calc(-50% - var(--company-half-gap)),0,0)}}
.countries-document-hidden .companies-belt{animation-play-state:paused}
.film-section{position:relative;border-block:1px solid var(--line);background:radial-gradient(ellipse at 90% 95%,#c919261c,transparent 65%)}
.film-section .section-heading{margin-bottom:44px}
.film-section .section-heading h2{text-wrap:balance}
.film-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;list-style:none;margin:0;padding:0}
.film-grid>li{min-width:0}
.film-card{height:100%;border:1px solid #ffffff29;border-radius:20px;overflow:hidden;background:linear-gradient(145deg,#ffffff0a,#ffffff02);box-shadow:inset 0 1px 0 #ffffff20,0 14px 35px #0002}
.film-poster{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;gap:32px;min-height:350px;padding:28px;background:linear-gradient(155deg,#15181e,#0b0d11 56%,#45111c);overflow:hidden}
.film-poster:before{content:'';position:absolute;z-index:-1;inset:10px;border:1px solid #ffffff10;border-radius:10px;pointer-events:none}
.film-poster:after{content:'';position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 85% 100%,#ee2b4f2a,transparent 70%);pointer-events:none}
.film-card--2 .film-poster{background:linear-gradient(155deg,#1d1518,#0b0d11 56%,#37121d)}
.film-card--3 .film-poster{background:linear-gradient(155deg,#14171f,#0b0d11 56%,#51121c)}
.film-topline{display:flex;justify-content:space-between;align-items:center;gap:12px}
.film-format{font-size:11px;line-height:1.5;letter-spacing:.12em;text-transform:uppercase;color:#f0bec7}
.film-index{font-size:11px;line-height:1.5;letter-spacing:.12em;color:#c3bec9}
.film-year{display:block;font:500 clamp(64px,6.5vw,98px)/.95 var(--display);letter-spacing:-.07em;color:#ff8d9e;text-shadow:0 0 35px #ef334f20;font-variant-numeric:tabular-nums}
.film-title h3{font-size:clamp(26px,2.6vw,37px);line-height:1.12;letter-spacing:-.035em;text-wrap:balance}
.film-title p{font-size:15px;line-height:1.5;color:#d5ccd1;margin-top:9px}
.film-producer{padding:22px 26px;min-height:100px;border-top:1px solid var(--line);background:#ffffff02}
.film-producer small{display:block;color:#c4bec9;font-size:10px;letter-spacing:.12em;margin-bottom:7px}
.film-producer p{color:var(--text);font-size:15px;line-height:1.5;overflow-wrap:break-word}
@media(max-width:850px){.companies-heading{display:block}.companies-heading>p{max-width:600px;margin-top:20px}.film-grid{gap:14px}.film-poster{padding:22px;min-height:330px}.film-producer{padding:20px}}
@media(max-width:800px){.film-grid{grid-template-columns:minmax(0,1fr);max-width:560px;margin-inline:auto;gap:22px}.film-poster{min-height:310px;padding:28px;gap:26px}.film-year{font-size:86px}.film-title h3{font-size:34px}.film-producer{min-height:0;padding:22px 28px}}
@media(max-width:650px){.companies-heading{margin-bottom:24px}.companies-heading .section-heading h2{font-size:clamp(30px,8.4vw,39px)}.companies-heading>p{font-size:16px}.company-marquee{--company-gap:14px;--company-half-gap:7px}.companies-belt{animation-duration:110s}.company-card{flex-basis:min(294px,calc(100vw - 64px));width:min(294px,calc(100vw - 64px));padding:22px;min-height:190px}.company-card h3{font-size:clamp(20px,5vw,24px)}.company-country{font-size:13px}.film-section .section-heading{margin-bottom:30px}.film-section .section-heading>p{font-size:16px}.film-poster{padding:24px;min-height:300px}.film-title h3{font-size:32px}.film-year{font-size:80px}.film-producer{padding:22px 24px}.film-producer p{font-size:16px}}
@media(prefers-reduced-motion:reduce){.companies-belt{animation:none;transform:none;will-change:auto}.company-marquee{overflow-x:auto;mask-image:none}.companies-track[aria-hidden="true"]{display:none}}
/* Full posters share a frame; text-only 2025 artwork retains its visual treatment. */
.film-card{display:flex;flex-direction:column}
.film-artwork{aspect-ratio:3/4;flex-shrink:0;position:relative;overflow:hidden;background:#08090b}
.film-artwork>img{width:100%;height:100%;object-fit:contain}
.film-artwork>.film-poster{height:100%;min-height:0}
.film-coming{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center;pointer-events:none;padding:24px}
.film-coming-label{font-size:18px;line-height:1.5;letter-spacing:.02em;color:#f0bec7}
.film-artwork>.film-poster>.film-title{text-align:center;width:100%}
.film-placeholder-title{display:block;font-family:var(--display);font-size:clamp(26px,2.6vw,37px);line-height:1.12;letter-spacing:-.035em}
.film-caption{padding:24px 26px 20px;flex:1}
.film-caption-meta{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px;color:#f0bec7;font-size:12px;line-height:1.5}
.film-caption-meta>span{color:var(--muted)}
.film-caption h3{font-size:27px;line-height:1.18;min-height:2.36em;text-wrap:balance}
.film-subtitle{font-size:14px;line-height:1.5;min-height:1.5em;margin-top:8px}
.film-card .film-producer{min-height:100px}
@media(max-width:850px){.film-caption{padding:22px 20px 18px}.film-caption h3{font-size:24px}}
@media(max-width:800px){.film-grid{max-width:440px}.film-placeholder-title{font-size:34px}.film-caption{padding:24px}.film-caption h3{font-size:28px;min-height:0}.film-subtitle:empty{display:none}}
