.media-grid {
    display: flex;
    flex-direction: column;
    gap: 8px;
    justify-content: center;
}

.media-row {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    justify-content: center;
    box-sizing: border-box;
}

.media-item {
    flex: 1 1 40%;
    max-width: 40%;
    margin: 20px 0;
    border-radius: 4px;
    overflow: visible;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    box-sizing: border-box;
}

@media (max-width: 800px) {
    .media-item {
        flex: 1 1 70%;
        max-width: 70%;
    }
}

.media-item img {
    width: 100%;
    height: auto;
    object-fit: cover;
}
.media-item video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.media-item h3 {
    font-size: 1.1rem;
}