:root{--motion-dark:#252b25;--motion-dark-2:#1b211d;--motion-paper:#e8e5d9;--motion-gold:#c5a96d}
.motion-page{overflow:hidden;background:var(--motion-dark);color:var(--motion-paper)}
.motion-page button{font:inherit;cursor:pointer}.motion-page button:focus-visible,.motion-page a:focus-visible{outline:2px solid var(--motion-gold);outline-offset:5px}
.masthead{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;padding:28px clamp(24px,5.5vw,90px);border-bottom:1px solid rgba(232,229,217,.2)}
.brand{display:flex;gap:10px;align-items:center;text-transform:uppercase;font-size:clamp(13px,1.15vw,18px);line-height:1.05;letter-spacing:-.025em;font-weight:700}.brand-eye{display:block;width:31px;opacity:.8}.brand-eye img{width:100%;filter:grayscale(1) brightness(2.6)}.back-link{text-transform:uppercase;letter-spacing:.16em;font-size:11px;padding:8px 0;color:#c7c5b7}.back-link span{font-size:18px;vertical-align:-1px;margin-right:9px;transition:transform .3s;display:inline-block}.back-link:hover span{transform:translate(-3px,-3px)}
.intro{position:relative;isolation:isolate;padding:32px clamp(24px,5.5vw,90px) clamp(68px,7vw,130px);min-height:470px;background:radial-gradient(circle at 70% 100%,#373d33,transparent 45%),var(--motion-dark)}.intro-line,.section-rule{display:flex;justify-content:space-between;gap:16px;text-transform:uppercase;font-size:11px;letter-spacing:.24em;color:var(--motion-gold);font-weight:700}.intro-line span:last-child{color:#8e9389}.intro h1{position:relative;z-index:1;font-size:clamp(76px,12.5vw,226px);font-weight:400;line-height:.8;letter-spacing:-.095em;white-space:nowrap;margin:clamp(60px,7vw,105px) 0 0}.intro h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.105em;color:var(--motion-gold)}.intro-bottom{display:flex;align-items:end;justify-content:space-between;gap:30px;position:relative;z-index:1;margin-top:clamp(38px,5vw,76px)}.intro-bottom p{font-size:clamp(18px,1.55vw,25px);line-height:1.35;font-weight:400;margin:0}.intro-bottom strong{font-weight:700}.intro-jump{text-transform:uppercase;letter-spacing:.16em;font-size:11px;border-bottom:1px solid currentColor;padding-bottom:8px;white-space:nowrap}.intro-jump span{margin-left:20px;font-size:18px;display:inline-block;transition:transform .3s}.intro-jump:hover span{transform:translate(3px,3px)}.intro-outline{position:absolute;right:-.5%;bottom:-.4em;font:normal min(35vw,500px)/1 Georgia,serif;letter-spacing:-.12em;color:rgba(255,255,255,.035);z-index:-1;pointer-events:none}
.screening{padding:clamp(24px,4.5vw,76px) clamp(24px,5.5vw,90px) clamp(85px,10vw,170px);background:#1b211d}.section-rule{padding:0 0 24px;border-bottom:1px solid rgba(232,229,217,.22)}.section-rule span:last-child{color:#9a9f94}
.player-wrap{position:relative;display:grid;place-items:center;height:clamp(420px,60vw,830px);background:#111613;isolation:isolate;overflow:hidden;margin-top:30px}.player-ambient{position:absolute;inset:-9%;background-position:center;background-size:cover;filter:blur(85px) brightness(.38) saturate(.7);opacity:.9;z-index:-1;transition:background-image .3s}.player-wrap::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 35%,rgba(10,15,11,.65));pointer-events:none}.player-frame{position:relative;display:grid;place-items:center;width:min(92%,1180px);height:90%;box-shadow:0 25px 80px rgba(0,0,0,.34);background:#0a0d0a;transition:width .55s cubic-bezier(.2,.8,.2,1),height .55s cubic-bezier(.2,.8,.2,1)}.player-frame video{display:block;width:100%;height:100%;object-fit:contain;aspect-ratio:16/9;background:#0b0f0d}.player-wrap[data-orientation="landscape"] .player-frame{height:auto;aspect-ratio:16/9}.player-wrap[data-orientation="portrait"] .player-frame{width:auto;aspect-ratio:9/16;max-width:86%;height:91%}.player-wrap[data-orientation="square"] .player-frame{width:auto;aspect-ratio:1;max-width:86%;height:82%}.player-wrap[data-orientation="portrait"] video,.player-wrap[data-orientation="square"] video{aspect-ratio:auto}.play-overlay{position:absolute;inset:0;border:0;background:linear-gradient(0deg,rgba(0,0,0,.42),transparent 38%);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-transform:uppercase;letter-spacing:.2em;font-size:11px;font-weight:700;transition:opacity .25s,visibility .25s}.play-overlay:hover .play-symbol{transform:scale(1.14);background:var(--motion-paper);color:var(--motion-dark)}.play-symbol{width:clamp(62px,7vw,100px);height:clamp(62px,7vw,100px);border:1px solid rgba(255,255,255,.9);border-radius:50%;display:grid;place-items:center;padding-left:4px;font-size:clamp(22px,2.5vw,34px);letter-spacing:0;backdrop-filter:blur(8px);transition:transform .3s,background .3s,color .3s}.player-wrap.is-playing .play-overlay{opacity:0;visibility:hidden;pointer-events:none}.frame-corner{position:absolute;width:29px;height:29px;border-color:var(--motion-gold);pointer-events:none}.top-left{top:24px;left:24px;border-top:1px solid;border-left:1px solid}.bottom-right{bottom:24px;right:24px;border-bottom:1px solid;border-right:1px solid}
.film-details{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:clamp(40px,8vw,140px);padding-top:clamp(32px,5vw,78px)}.detail-kicker{color:var(--motion-gold);text-transform:uppercase;letter-spacing:.19em;font-size:11px;font-weight:700;margin:0 0 18px}.detail-kicker span{color:#626c61;padding:0 7px}.film-primary h2{font-size:clamp(43px,6vw,105px);letter-spacing:-.075em;line-height:.95;font-weight:400;margin:0;max-width:960px}.detail-description{font-size:clamp(17px,1.4vw,23px);color:#aeb6a9;line-height:1.4;margin:28px 0 0}.film-secondary{display:flex;flex-direction:column;justify-content:space-between}.film-secondary dl{margin:0}.film-secondary dl div{border-top:1px solid #424b42;padding:12px 0 17px;display:grid;grid-template-columns:105px 1fr;gap:15px}.film-secondary dt{font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:#9b9e8e}.film-secondary dd{font-size:14px;line-height:1.35;margin:0}.player-navigation{display:flex;justify-content:flex-end;gap:10px;margin-top:40px}.player-navigation button{border:1px solid #6b746a;background:transparent;color:var(--motion-paper);width:55px;height:55px;font-size:24px;transition:background .25s,color .25s,transform .25s}.player-navigation button:hover{background:var(--motion-gold);color:var(--motion-dark);transform:translateY(-3px)}
.catalog{padding:clamp(75px,10vw,155px) clamp(24px,5.5vw,90px) clamp(100px,12vw,190px);background:var(--motion-paper);color:var(--motion-dark)}.catalog-top{display:flex;justify-content:space-between;align-items:end;gap:35px}.catalog-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.25em;color:#8c7249;font-weight:700;margin:0 0 26px}.catalog h2{font-weight:400;font-size:clamp(54px,7vw,118px);letter-spacing:-.08em;line-height:.9;margin:0}.catalog h2 span{color:#ae8d58}.catalog-top>p{max-width:230px;font-size:16px;line-height:1.4;margin:0 0 4px;color:#5d675d}.filters{display:flex;flex-wrap:wrap;gap:9px;padding:38px 0 35px;margin-top:clamp(35px,5vw,85px);border-top:1px solid #c7c8bc}.filter{border:1px solid #babdb0;border-radius:100px;padding:11px 18px;background:transparent;color:#535b52;font-size:11px!important;text-transform:uppercase;letter-spacing:.11em;transition:background .25s,color .25s,border-color .25s}.filter span{margin-left:8px;opacity:.65}.filter:hover,.filter.active{background:var(--motion-dark);color:var(--motion-paper);border-color:var(--motion-dark)}
.film-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:clamp(12px,1.8vw,28px);row-gap:clamp(42px,5vw,90px)}.film-card{border:0;padding:0;background:none;color:inherit;display:block;text-align:left;min-width:0;transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .5s,filter .5s}.film-card[hidden]{display:none}.film-card:hover{transform:translateY(-7px)}.film-card[aria-pressed="true"] .thumb{outline:3px solid #ad8c56;outline-offset:4px}.thumb{position:relative;display:grid;place-items:center;overflow:hidden;aspect-ratio:4/3;background:#323931}.thumb-back{position:absolute;inset:-12px;background-position:center;background-size:cover;filter:blur(20px) brightness(.46);transform:scale(1.08)}.thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.3),transparent 45%,rgba(0,0,0,.4));pointer-events:none}.thumb img{height:100%;width:100%;object-fit:contain;position:relative;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.film-card:hover .thumb img{transform:scale(1.05)}.thumb-index,.thumb-runtime{position:absolute;z-index:2;top:12px;color:#fff;font-size:10px;font-weight:700;letter-spacing:.1em}.thumb-index{left:12px}.thumb-runtime{right:12px}.thumb-play{position:absolute;z-index:2;color:#fff;border:1px solid rgba(255,255,255,.85);border-radius:50%;width:48px;height:48px;display:grid;place-items:center;padding-left:3px;font-size:16px;opacity:0;transform:scale(.8);transition:opacity .3s,transform .3s;backdrop-filter:blur(8px)}.film-card:hover .thumb-play,.film-card:focus-visible .thumb-play,.film-card[aria-pressed="true"] .thumb-play{opacity:1;transform:scale(1)}.card-meta{display:flex;flex-direction:column;padding-top:19px}.card-client{font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#927347;line-height:1.4}.card-location{color:#7a8076;font-weight:500}.card-title{font-size:clamp(20px,2vw,32px);letter-spacing:-.045em;line-height:1.04;margin-top:9px;font-weight:500}.card-description{font-size:13px;line-height:1.35;color:#666d64;margin-top:11px}.filter-empty{font-size:18px}.reveal-ready .film-card:not(.is-visible){opacity:0;transform:translateY(40px);filter:blur(4px)}
.motion-footer{padding:clamp(55px,7vw,110px) clamp(24px,5.5vw,90px) 32px;background:#aa8e60;color:#202a22;display:grid;grid-template-columns:2fr 1fr auto;gap:35px}.motion-footer span{font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:700}.motion-footer p{font-size:clamp(36px,5vw,75px);letter-spacing:-.065em;line-height:.95;margin:30px 0 0}.motion-footer>div:nth-child(2){display:flex;flex-direction:column;gap:15px}.motion-footer>div:nth-child(2) a{font-size:14px;border-bottom:1px solid rgba(32,42,34,.5);padding:0 0 10px;display:flex;justify-content:space-between;gap:15px}.top-link{font-size:11px;text-transform:uppercase;letter-spacing:.15em;white-space:nowrap}
@media(max-width:1050px){.film-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.intro h1{font-size:12.6vw}.film-details{gap:40px}.intro{min-height:400px}}
@media(max-width:750px){.masthead{padding:20px 24px}.back-link{font-size:10px}.intro{min-height:0;padding:24px 24px 70px}.intro-line span:last-child{display:none}.intro h1{white-space:normal;font-size:clamp(70px,15vw,120px);margin-top:75px}.intro-bottom{margin-top:60px}.intro-bottom p{font-size:17px}.intro-jump{display:none}.screening{padding:24px 18px 90px}.section-rule{padding:0 6px 18px}.player-wrap{height:clamp(360px,66vw,570px);margin-top:18px}.player-wrap[data-orientation="landscape"] .player-frame{width:100%}.player-wrap[data-orientation="portrait"] .player-frame{height:93%}.frame-corner{display:none}.film-details{display:block;padding:38px 6px 0}.film-primary h2{font-size:clamp(44px,8vw,70px)}.film-secondary{display:block;margin-top:40px}.film-secondary dl{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.film-secondary dl div{display:block}.film-secondary dt{margin-bottom:7px}.player-navigation{justify-content:flex-start;margin-top:27px}.catalog{padding:80px 24px 100px}.film-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}.motion-footer{grid-template-columns:1fr 1fr}.top-link{grid-column:1/-1}}
@media(max-width:480px){.brand{font-size:12px}.brand-eye{width:24px}.back-link{max-width:120px;text-align:right;line-height:1.4}.back-link span{display:none}.intro h1{font-size:clamp(65px,19vw,95px);line-height:.9;margin-top:70px}.intro-bottom{margin-top:45px}.intro-bottom p{font-size:16px}.player-wrap{height:clamp(300px,89vw,450px)}.player-wrap[data-orientation="portrait"] .player-frame{height:94%}.player-wrap[data-orientation="square"] .player-frame{width:90%;height:auto}.play-symbol{width:62px;height:62px}.film-secondary dl{column-gap:14px}.film-secondary dd{font-size:13px}.catalog-top{display:block}.catalog-top>p{margin-top:20px}.filters{gap:7px;padding:25px 0;margin-top:42px}.filter{padding:9px 11px;font-size:10px!important}.film-grid{column-gap:12px;row-gap:45px}.thumb{aspect-ratio:1/1}.card-meta{padding-top:14px}.card-title{font-size:21px}.card-description{font-size:12px}.card-location{display:block}.motion-footer{display:block}.motion-footer>div:nth-child(2){margin-top:45px;max-width:300px}.top-link{display:inline-block;margin-top:50px}}
@media(prefers-reduced-motion:reduce){.motion-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal-ready .film-card:not(.is-visible){opacity:1;transform:none;filter:none}}

/* Give the video its own fitted viewport. Its intrinsic width must never resize the portrait frame. */
.player-frame{display:block;min-width:0;min-height:0;overflow:hidden}
.player-frame video{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;aspect-ratio:auto;object-fit:contain;object-position:center}
@media(max-width:750px){.player-wrap[data-orientation="portrait"]{height:650px;height:min(78svh,760px)}.player-wrap[data-orientation="portrait"] .player-frame{max-width:96%}}

/* Keep every thumbnail at the top of its grid row, regardless of caption length. */
.film-grid{align-items:start}
.film-card{display:flex;flex-direction:column;align-self:start;width:100%}
.film-card .thumb,.film-card .card-meta{width:100%}
.reveal-ready .film-card:not(.is-visible){transform:none}
