.container {
    max-width: var(--max-width);
    margin: 0 auto;
    padding: var(--space-lg) var(--space-md) var(--space-xl);
}

.posters-display {
    padding: 0;
}

.four-posters-display,
.display {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--space-xl) var(--space-md);
    align-items: start;
}

.item {
    background: transparent;
    border: none;
    display: flex;
    flex-direction: column;
}

.img-wrapper {
    display: block;
    overflow: hidden;
    background: var(--bg-muted);
    position: relative;
    width: 100%;
}

.img-wrapper img {
    width: 100%;
    height: auto;
    display: block;
    transition: opacity 0.25s ease;
}

.poster-link:hover .img-wrapper img,
.item:hover .img-wrapper img {
    opacity: 0.88;
}

.info {
    padding: var(--space-sm) 0 0;
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.title {
    font-family: var(--font);
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: var(--tracking-wide);
    margin: 0;
    color: var(--text);
}

.price {
    font-size: 0.72rem;
    color: var(--text-muted);
    margin: 0;
    letter-spacing: var(--tracking-wide);
}

.poster-link {
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
}

.item-sold .img-wrapper img {
    opacity: 0.35;
}

.shop-badge {
    position: absolute;
    top: var(--space-sm);
    left: var(--space-sm);
    font-size: 0.62rem;
    font-weight: 600;
    letter-spacing: var(--tracking-wide);
    padding: 0;
    background: transparent;
    border: 0;
    color: var(--text);
}

.shop-badge.reserved {
    color: var(--text-muted);
}

.caption {
    height: auto;
}

.studio-item {
    cursor: default;
    background: transparent;
    border: none;
}

@media (max-width: 768px) {
    .container {
        padding: var(--space-md) var(--space-sm) var(--space-lg);
    }

    .four-posters-display,
    .display {
        gap: var(--space-lg) var(--space-sm);
    }
}

@media (max-width: 480px) {
    .four-posters-display,
    .display {
        grid-template-columns: 1fr;
        gap: var(--space-lg);
    }
}
