/* --- Планшеты (до 768px) --- */
@media (max-width: 768px) {
    h1 {
        font-size: 2.2rem;
    }

    .problem-cards, .features-grid {
        grid-template-columns: 1fr;
    }

    .hero h1 {
        font-size: 2rem; /* 32px */
    }

    .hero p {
        font-size: 1rem; /* 16px */
    }

    .step {
        flex-direction: column;
        text-align: center;
    }

    .step:nth-child(even) {
        flex-direction: column;
    }
}

/* --- Мобильные устройства (до 480px) --- */
@media (max-width: 480px) {
    body {
        font-size: 14px;
    }

    h1 {
        font-size: 1.8rem;
    }

    h2 {
        font-size: 1.5rem;
    }

    .container {
        padding: 0 1rem;
    }

    .site-footer .container {
        flex-direction: column;
    }

    .offer-content {
        padding: 1.5rem;
    }

    .offer-text h2 {
        font-size: 1.5rem;
    }

    .offer-text h3 {
        font-size: 1.2rem;
    }

    .hero h1 {
        font-size: 1.75rem; /* 28px */
    }

    .problems-section h2,
    .solution-section h2,
    .features-section h2,
    .cta-section h2 {
        font-size: 1.5rem; /* 24px */
    }

    .section {
        padding: 60px 0;
    }
}
