.poster-section { min-height: 0; }
.poster-intro { max-width: none; }
.poster-touch-copy { display: none; }
@media (hover: none), (pointer: coarse) {
  .poster-hover-copy { display: none; }
  .poster-touch-copy { display: inline; }
}
.poster-wall { position: relative; width: 100%; aspect-ratio: 1.3; isolation: isolate; outline-offset: 8px; touch-action: pan-y; }
.poster-wall:focus-visible { outline: 2px solid var(--accent); }
.poster-wall-frame { display: block; width: 100%; height: 100%; pointer-events: none; user-select: none; }
.poster-wall-window { position: absolute; left: 4.18%; top: 26.45%; width: 91.88%; height: 29.99%; overflow: hidden; background: #080807; }
.poster-wall-track { display: flex; width: 100%; height: 100%; will-change: transform; }
.poster-wall-slot { flex: 0 0 20%; min-width: 0; height: 100%; padding: 0; border: 0; box-sizing: border-box; background: #080807; cursor: zoom-in; }
.poster-wall-slot img { display: block; width: 100%; height: 100%; object-fit: cover; user-select: none; }
.poster-wall-slot:focus-visible { outline: 2px solid var(--accent); outline-offset: -3px; }
.poster-wall-controls { display: flex; gap: 12px; justify-content: flex-end; margin-top: 18px; }
.poster-wall-controls button { border: 1px solid var(--line); min-width: 48px; min-height: 44px; font-size: 24px; }
.poster-collection { margin-top: 48px; }
.poster-collection .artwork-card > a { aspect-ratio: 3 / 4; }
.poster-collection .artwork-card img { object-fit: cover; }
.poster-wall-caption { display: flex; justify-content: space-between; gap: 16px; margin-top: 16px; color: var(--muted); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
@media(max-width:600px) { .poster-wall-caption { font-size: 9px; letter-spacing: .03em; } }
