.film-format[data-film-carousel] .films-grid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:calc((100% - 1.5rem)/2);gap:1.5rem;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;padding:6px 0 12px}
.film-format[data-film-carousel] .films-grid--vertical{grid-auto-columns:calc((100% - 3rem)/3)}
.film-format[data-film-carousel] .films-grid::-webkit-scrollbar{display:none}
.film-format[data-film-carousel] .film-card{min-width:0;scroll-snap-align:start;scroll-snap-stop:always}
.film-format[data-film-carousel] .film-cover:focus-visible{outline-offset:-4px}
.film-carousel-controls{display:flex;align-items:center;gap:1.5rem;margin-top:1rem}
.film-carousel-arrows{display:flex;gap:.5rem;flex-shrink:0}
.film-carousel-arrows button{width:48px;height:48px;border:1px solid var(--line-strong);font-size:1.4rem}
.film-carousel-arrows button:hover{background:var(--accent);color:var(--background)}
.film-carousel-progress{flex:1;height:2px;background:var(--line);position:relative}
.film-carousel-progress span{position:absolute;inset:0 auto 0 0;width:var(--film-progress,0%);background:var(--accent)}
.film-carousel-count{font-size:.8125rem;letter-spacing:.1em;color:var(--muted);white-space:nowrap;min-width:5rem;text-align:right}
@media(max-width:767px){.film-format[data-film-carousel] .films-grid{grid-auto-columns:100%;gap:1rem}.film-format[data-film-carousel] .films-grid--vertical{grid-auto-columns:72%}.film-carousel-controls{gap:1rem}.film-carousel-arrows button{width:44px;height:44px}}
