.random-photos {
    container-type: inline-size;
    display: flex;
    gap: 12px;
    padding: 16px 12px 6px 12px;
    justify-content: space-between;
}

.random-photos>a {
    flex: 1;
    min-width: 0;
    display: block;
}

.photo-item {
    width: 100%;
    aspect-ratio: 3 / 4;
    overflow: hidden;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    opacity: 0;
    transform: translateX(30px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.photo-item.visible {
    opacity: 1;
    transform: translateX(0);
}

.photo-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}

@container (min-width: 948px) {
    .photo-item {
        aspect-ratio: unset;
        height: 400px;
    }
}