/* One compact entry for authored films; the shared player owns playback. */
.r31-film-card{--film-card-ease:cubic-bezier(.16,1,.3,1);display:block;width:min(100%,360px);max-width:360px;min-width:0;margin:0;color:#fff;isolation:isolate}
.r31-film-image{position:relative;display:block;width:100%;aspect-ratio:16/10;min-height:0;padding:0;overflow:hidden;background:#111;color:#fff;border:0!important;outline:0!important;box-shadow:none!important;border-radius:0;font:inherit;text-align:left;cursor:pointer;touch-action:pan-y;-webkit-tap-highlight-color:transparent}
.r31-film-image>img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;border:0!important;outline:0!important;box-shadow:none!important;pointer-events:none;transition:transform .8s var(--film-card-ease),opacity .5s var(--film-card-ease)}
.r31-film-image:is(:hover,:focus-visible)>img{transform:scale(.965);opacity:.72}
.r31-film-image:focus-visible{background:#303030}
.r31-film-type{display:flex;align-items:center;justify-content:center;height:100%;padding:24px;font-size:24px;line-height:1.05;letter-spacing:-.04em}
.r31-film-static{cursor:default}
.r31-film-watch{position:absolute;left:13px;right:13px;bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:8px;line-height:1.4;letter-spacing:.05em;opacity:0;transform:translateY(5px);transition:opacity .35s var(--film-card-ease),transform .5s var(--film-card-ease);pointer-events:none;text-shadow:0 1px 12px #000}
.r31-film-watch>span:last-child{font-size:18px;line-height:1}
.r31-film-image:is(:hover,:focus-visible) .r31-film-watch{opacity:1;transform:translateY(0)}
.r31-film-card>.r31-film-caption{display:grid;justify-content:start;gap:5px;width:100%;margin:0;padding:13px 0 0;font-size:11px;line-height:1.4;letter-spacing:0}
.r31-film-caption>h3{margin:0;font-size:clamp(17px,1.55vw,24px);line-height:1.13;letter-spacing:-.035em;font-weight:500;color:#fff}
.r31-film-caption>p{margin:0;font-size:11px;line-height:1.4;color:#b5b5b5;letter-spacing:0}
.r31-film-caption>span{display:block;font-size:9px;line-height:1.4;color:#aaa}
.r12-sound-collage>.r31-film-card{width:100%;max-width:none}
.case-page .r31-film-card.media-figure{width:min(100%,360px);max-width:360px;min-height:0;padding:0;grid-column:auto}
.page-block-case .page-block-rail>.r31-film-card.media-figure{flex:0 0 min(76vw,360px);width:min(76vw,360px);max-width:360px}
.page-block-case .page-block-layout-full-bleed .r31-film-card{margin-inline:var(--gutter)}
.page-block-case .page-block-layout-full-bleed .r31-film-card>figcaption{padding-inline:0}
@media(hover:none),(pointer:coarse){.r31-film-watch{opacity:1;transform:none}.r31-film-image:hover>img{transform:none;opacity:1}}
@media(max-width:760px){
 .r31-film-card,.case-page .r31-film-card.media-figure{width:min(100%,320px);max-width:320px}
 .r31-film-card>.r31-film-caption{gap:5px;padding-top:10px}.r31-film-caption>h3{font-size:18px}
 .r12-sound-collage>.r31-film-card{max-width:none}.r12-sound-collage .r31-film-image{aspect-ratio:1/1.08}
 .r12-sound-collage .r31-film-caption>h3{font-size:15px}.r12-sound-collage .r31-film-caption>p{font-size:9px}.r12-sound-collage .r31-film-caption>span{font-size:8px}
 .r12-sound-collage .r31-film-watch{left:7px;right:7px;bottom:7px;font-size:6px}.r12-sound-collage .r31-film-watch>span:last-child{font-size:14px}
}

/* R32: the film's sign is a centred white play pill, no words. Its size follows the
 * card; its pet behaviour and the hover-wait charge belong to film-pet-r32.js/.css. */
.r31-film-image{container-type:inline-size}
.r31-film-watch{display:none}
.r32-film-pill{--pill-h:clamp(34px,15cqw,86px);--pill-w:calc(var(--pill-h) * 1.58);--pill-tri:calc(var(--pill-h) * .34);position:absolute;left:50%;top:50%;z-index:2;width:var(--pill-w);height:var(--pill-h);border-radius:999px;background:#fff;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 8px 28px #00000026;pointer-events:none;transition:transform .5s var(--film-card-ease),width .55s var(--film-card-ease),background-color .3s var(--film-card-ease)}
.r32-film-pill-fill,.r32-film-pill-track{position:absolute;opacity:0;pointer-events:none}
.r32-film-tri{position:absolute;left:calc(50% - var(--pill-tri) * .42);top:50%;width:var(--pill-tri);height:calc(var(--pill-tri) * 1.12);background:#000;clip-path:polygon(0 0,100% 50%,0 100%);transform:translateY(-50%);transition:left .35s var(--film-card-ease)}
.r31-film-image:focus-visible .r32-film-pill{transform:translate(-50%,-50%) scale(1.06)}

/* R32 layout interface: centred by default; the block's fit or width choice wins. */
.case-page .r31-film-card.media-figure{margin-inline:auto}
.case-page .r31-film-card.media-figure[data-media-display="wide"]{width:100%;max-width:none}
.case-page .r31-film-card.media-figure[data-media-display="contain"]{width:min(100%,calc(78svh * var(--media-ratio,1.6)));max-width:none}
.case-page .r31-film-card.media-figure:is([data-media-display="wide"],[data-media-display="contain"])>.r31-film-image{aspect-ratio:var(--media-ratio,1.6)}
.page-block-case .page-block-layout-full-bleed .r31-film-card.media-figure[data-media-display="wide"]{width:100%;margin-inline:0}
.page-block-case .page-block-layout-full-bleed .r31-film-card.media-figure[data-media-display="wide"]>figcaption{padding-inline:var(--gutter)}
.page-block-case .page-block-columns>.r31-film-card.media-figure:not([data-media-display="wide"]):not([data-media-display="contain"]){width:min(100%,360px)}
@media(max-width:760px){
 .case-page .r31-film-card.media-figure{margin-inline:auto}
 .case-page .r31-film-card.media-figure[data-media-display="wide"]{width:100%;max-width:none}
 .case-page .r31-film-card.media-figure[data-media-display="contain"]{width:min(100%,calc(74svh * var(--media-ratio,1.6)));max-width:none}
}
