.film-carousel { width: 100%; max-width: 900px; min-width: 0; margin-inline: auto; }
.film-carousel-track { -webkit-mask-image: linear-gradient(to right, transparent, black 13%, black 87%, transparent); mask-image: linear-gradient(to right, transparent, black 13%, black 87%, transparent); }
#filmwork .poster-gallery { position: relative; display: flex; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; }
#filmwork .poster-gallery::-webkit-scrollbar { display: none; }
#filmwork .poster-card { flex: 0 0 52%; min-width: 0; scroll-snap-align: center; opacity: .58; transform: scale(.94); filter: blur(3px); box-shadow: none; transition: filter .3s, opacity .3s, transform .3s; }
#filmwork .poster-card.is-current { opacity: 1; transform: none; filter: none; }
#filmwork .poster-card[inert] { scroll-snap-align: none; }
#filmwork .poster-card { display: flex; flex-direction: column; background: none; border: 0; border-radius: 0; }
#filmwork .poster-frame { display: block; width: 100%; height: min(540px, 62vh); height: min(540px, 62svh); min-height: 0; aspect-ratio: auto; padding: 0; background: none; }
#filmwork .poster-frame img { display: block; width: 100%; height: 100%; object-fit: contain; object-position: center; }
#filmwork .poster-caption { padding: 14px 4px 4px; border: 0; text-align: center; font-size: 17px; line-height: 1.3; }
#filmwork .poster-caption span { margin-top: 4px; font-size: 14px; line-height: 1.4; }
.film-carousel-controls { display: flex; justify-content: center; align-items: center; gap: 22px; padding: 20px 0; }
.film-carousel-controls button { width: 42px; height: 42px; border: 1px solid var(--line); border-radius: 50%; background: transparent; color: var(--text); font-size: 22px; cursor: pointer; }
.film-carousel-controls button:hover { color: var(--cyan); border-color: var(--cyan); }
.film-carousel-count { min-width: 60px; text-align: center; color: var(--muted); font-size: 13px; }
@media(max-width:640px) { #filmwork .poster-gallery { gap: 8px; } #filmwork .poster-card { flex-basis: 72%; } #filmwork .poster-frame { height: min(96vw, 52vh); height: min(96vw, 52svh); } }
@media(prefers-reduced-motion:reduce) { #filmwork .poster-card { transition: none; } }
