.page2 .news {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.newsBox,
.productGrid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
    justify-content: center;
    padding: 20px;
}

.newsCard,
.productCard {
    width: 100%;
    margin: 0 auto;
    max-width: 400px;
}

main {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

@media (min-width: 768px) {
    .newsBox,
    .productGrid {
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    }
}

@media (min-width: 1024px) {
    .newsBox,
    .productGrid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    }
}

.title {
    text-align: center;
    margin-bottom: 2rem;
}

.title h2 {
    font-size: 2rem;
    margin-bottom: 0.5rem;
}

.subtitle {
    color: var(--text-muted);
    font-size: 1.1rem;
}