/* Lot exp12 — film card poster frame (R11), watchlist heart (R18), viewer likes (R14), sponsored banner above « Discover films » (R17). */
/* R11: one poster frame (2:3) for film cards, cropped from the top-centre where titles usually sit. */
.film-result-cover{position:relative;display:block;aspect-ratio:2/3;overflow:hidden;background:#101c3d}
.film-result-cover-link{position:absolute;inset:0;display:block}
.film-result-cover .film-result-poster{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.film-result-cover .film-result-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:16px;box-sizing:border-box;text-align:center}
.film-results-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1500px){.film-results-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.film-results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.film-results-grid{grid-template-columns:minmax(0,1fr)}.film-result-cover{aspect-ratio:4/5}}
.plus-poster-frame{position:relative}
.plus-poster,.plus-rail-poster{position:relative;aspect-ratio:2/3}
.plus-poster .film-result-poster,.plus-rail-poster .film-result-poster{object-position:center top}
.plus-rail-card{flex-basis:clamp(170px,18vw,220px)}
@media(max-width:650px){.plus-rail-card{flex-basis:46vw}.plus-poster{aspect-ratio:4/5}}
/* Demonstration artwork is a landscape crop: shown whole, centred in the poster frame, never stretched. */
:is(.film-result-cover,.plus-poster,.plus-rail-poster) .art.film-result-poster{position:absolute;top:50%;left:0;width:100%;height:auto;min-height:0;transform:translateY(-50%)}
:is(.film-result-cover,.plus-poster,.plus-rail-poster):has(.art.film-result-poster){background:linear-gradient(160deg,var(--color-navy-850),var(--color-navy-950))}
/* R18: heart in a white circle; red filled heart once saved. */
.watch-heart-form{position:absolute;top:10px;inset-inline-end:10px;z-index:2;margin:0}
.film-result-cover>a.watch-heart,.plus-poster-frame>a.watch-heart{position:absolute;top:10px;inset-inline-end:10px;z-index:2}
.watch-heart{display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:999px;background:var(--color-white);color:var(--color-text);box-shadow:0 2px 10px color-mix(in srgb,var(--color-navy-950) 25%,transparent);cursor:pointer;transition:transform .15s ease}
.watch-heart:hover{transform:scale(1.06)}
.watch-heart:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}
.watch-heart .icon,.watch-heart svg{width:22px;height:22px;fill:none;stroke:currentColor}
.watch-heart[aria-pressed="true"]{color:#e0245e}
.watch-heart[aria-pressed="true"] .icon,.watch-heart[aria-pressed="true"] svg{fill:#e0245e;stroke:#e0245e}
.watch-heart-form[aria-busy="true"] .watch-heart{opacity:.7}
.watch-heart-form .sr-only,.watch-heart .sr-only,.film-like .sr-only,.explore-ad .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(prefers-reduced-motion:reduce){.watch-heart{transition:none}.watch-heart:hover{transform:none}}
/* R14: « I like this film ». */
.film-like{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 0;font-size:15px}
.film-like-button{display:inline-flex;align-items:center;gap:8px}
.film-like-icon .icon,.film-like-icon svg{width:18px;height:18px;fill:none;stroke:currentColor}
.film-like-button[aria-pressed="true"] .film-like-icon svg,.film-like-button[aria-pressed="true"] .film-like-icon .icon{fill:#e0245e;stroke:#e0245e}
.film-like-count{font-weight:700}
/* R17: sponsored banner above « Discover films »; absent when no advertisement is live. */
.explore-ad{position:relative;margin:0 0 18px;border-radius:14px;overflow:hidden;background:linear-gradient(110deg,var(--color-navy-950),#15124d);color:var(--color-white)}
.explore-ad-slide{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);min-height:260px}
.explore-ad-slide[hidden]{display:none}
.explore-ad-art{position:relative;min-height:260px;overflow:hidden;background:#101c3d}
.explore-ad-art .explore-ad-poster,.explore-ad-art .fad-cover,.explore-ad-art img,.explore-ad-art .art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:0}
.explore-ad-art .film-result-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#d6c5ff}
.explore-ad-art::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 45%,color-mix(in srgb,var(--color-navy-950) 95%,transparent))}
[dir="rtl"] .explore-ad-art::after{background:linear-gradient(270deg,transparent 45%,color-mix(in srgb,var(--color-navy-950) 95%,transparent))}
.explore-ad-copy{display:flex;flex-direction:column;justify-content:center;gap:10px;padding:28px clamp(20px,3.5vw,52px) 48px;min-width:0}
.explore-ad-copy .fad-label{position:static;align-self:flex-start}
.explore-ad-kind{margin:0;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#cbbcff}
.platform .explore-ad-copy h2{margin:0;font-size:clamp(24px,2.6vw,36px);line-height:1.15;color:var(--color-white);overflow-wrap:anywhere}
.explore-ad-meta,.explore-ad-deadline{margin:0;color:var(--color-line);font-size:15px}
.explore-ad-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}
.explore-ad-actions .pbtn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px}
.explore-ad-actions .pbtn .icon,.explore-ad-actions .pbtn svg{width:16px;height:16px}
.platform .explore-ad .pbtn.outline{background:transparent;color:var(--color-white);border-color:color-mix(in srgb,var(--color-white) 50%,transparent)}
.explore-ad-controls{position:absolute;bottom:12px;inset-inline-end:16px;display:flex;align-items:center;gap:10px}
.explore-ad-controls[hidden]{display:none}
.explore-ad-dots{display:flex;gap:4px}
.explore-ad-dot{position:relative;width:24px;height:24px;padding:0;border:0;background:transparent;cursor:pointer}
.explore-ad-dot::before{content:"";position:absolute;inset:7px;border-radius:999px;background:color-mix(in srgb,var(--color-white) 45%,transparent)}
.explore-ad-dot[aria-current="true"]::before{background:var(--color-white)}
.explore-ad-pause{display:inline-grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid color-mix(in srgb,var(--color-white) 50%,transparent);border-radius:999px;background:color-mix(in srgb,var(--color-navy-950) 60%,transparent);color:var(--color-white);cursor:pointer;font-size:12px}
.explore-ad-dot:focus-visible,.explore-ad-pause:focus-visible{outline:3px solid var(--color-focus-on-dark);outline-offset:2px}
@media(max-width:760px){.explore-ad-slide{grid-template-columns:minmax(0,1fr)}.explore-ad-art{min-height:180px}.explore-ad-art::after{background:linear-gradient(180deg,transparent 40%,color-mix(in srgb,var(--color-navy-950) 95%,transparent))}[dir="rtl"] .explore-ad-art::after{background:linear-gradient(180deg,transparent 40%,color-mix(in srgb,var(--color-navy-950) 95%,transparent))}.explore-ad-copy{padding:20px 20px 52px}.explore-ad-actions .pbtn{flex:1 1 140px}}
