.blog {
    padding: 140px 0;
}

.blog__container {
    display: grid;
    gap: 46px;
}

.blog__heading {
    display: grid;
    gap: 24px;
    text-align: center;
}

.blog__title {
    max-width: 720px;
    margin: 0 auto;
}

.blog__subtitle {
    max-width: 680px;
    margin: 0 auto;
}

.blog__list {
    display: grid;
    gap: 24px;
}

@media only screen and (min-width: 768px) {
    .blog__list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media only screen and (min-width: 1280px) {
    .blog__list {
        grid-template-columns: repeat(3, 1fr);
    }
}