/* Sponsor posters inherit the SAME .movie-card sizing as the film rows. */
.zf-ad-section { content-visibility:visible; scroll-margin-top:92px; }
.content-section .movie-row.zf-ad-row { display:flex !important; flex-wrap:nowrap; align-items:flex-start; content-visibility:visible; }
.movie-card.zf-ad-card-item { position:relative; aspect-ratio:2/3; min-width:0; box-sizing:border-box; overflow:hidden; animation:none; background:#16161c; }
.zf-ad-card-link { display:block; width:100%; height:100%; color:inherit; text-decoration:none; }
.zf-ad-card-item:focus-within { outline:3px solid #fff; outline-offset:3px; }
.zf-ad-card-media { position:absolute; inset:0; display:grid; place-items:center; background:#16161c; }
.zf-ad-card-media>img { width:100%; height:100%; object-fit:cover; }
.zf-ad-card-fallback { position:absolute; inset:0; display:grid; place-items:center; background:linear-gradient(145deg,#282835,#121219); }
.zf-ad-card-media [hidden] { display:none !important; }
.zf-ad-card-fallback img { width:min(48%,120px); height:auto; max-height:50%; object-fit:contain; }
.zf-ad-card-initial { display:grid; width:64px; aspect-ratio:1; place-items:center; border-radius:16px; background:#30303c; color:#fff; font-size:30px; font-weight:800; }
.zf-ad-label { position:absolute; inset-block-start:8px; inset-inline-start:8px; z-index:2; padding:4px 8px; border-radius:4px; background:rgba(0,0,0,.8); color:#fff; font-size:10px; font-weight:700; }
.zf-ad-card-copy { position:absolute; inset-inline:0; bottom:0; z-index:1; display:flex; flex-direction:column; gap:4px; padding:36px 10px 12px; background:linear-gradient(transparent,rgba(0,0,0,.9) 42%); }
.zf-ad-card-copy strong { color:#fff; font-size:13px; line-height:1.3; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.zf-ad-card-copy span { color:#d0d0d9; font-size:11px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.zf-ad-card-copy em { color:#fff; font-size:11px; font-style:normal; font-weight:700; }
.zf-ad-staff-note { color:#aaa; font-size:12px; margin:0 0 10px; }
[dir="rtl"] .movie-row.zf-ad-row { direction:rtl; }
@media(prefers-reduced-motion:reduce){.zf-ad-card-item{transition:none!important;animation:none!important;}}
/* Free ad places: same size as a poster card, they lead to the advertise page. */
.zf-ad-open .zf-ad-open-art { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 12px; text-align: center; color: #fff; background: linear-gradient(160deg, #24141a, #141418 70%); border: 1px dashed rgba(255, 255, 255, .28); border-radius: inherit; transition: border-color .2s, background-color .2s; }
.zf-ad-open .zf-ad-open-art svg { color: #e50914; }
.zf-ad-open .zf-ad-open-art strong { font-size: 15px; line-height: 1.25; }
.zf-ad-open .zf-ad-open-art span { color: #b8b8c2; font-size: 12px; line-height: 1.3; }
.zf-ad-open:hover .zf-ad-open-art, .zf-ad-open a:focus-visible .zf-ad-open-art { border-color: #e50914; }
