.container {
    width: 90%;
    margin: 0 auto;
}

.grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

.news-item {
    margin: 10px;
    flex: 1 1 calc(33% - 20px);
    box-sizing: border-box;
}

.news-item img {
    width: 100%;
    height: auto;
}

.news-item iframe {
    width: 100%;
    height: 315px;
}

/* Responsive design */
@media (max-width: 800px) {
    .news-item {
        flex: 1 1 calc(50% - 20px);
    }
}

@media (max-width: 600px) {
    .news-item {
        flex: 1 1 100%;
    }
}