@media (max-width: 1024px) {
    .cards-grid > .card,
    .steps-grid > .step-card,
    .specs-grid > .spec-card {
        flex: 1 1 calc(50% - 24px);
    }
}

@media (max-width: 768px) {
    .section {
        padding: 60px 0;
    }

    .section-title {
        font-size: 2rem;
    }

    .section-subtitle {
        font-size: 1.125rem;
    }

    .hero-section {
        min-height: auto;
        padding: 60px 0;
    }

    .hero-title {
        font-size: 2.5rem;
    }

    .hero-description {
        font-size: 1.125rem;
    }

    .hero-buttons {
        flex-direction: column;
    }

    .hero-features {
        grid-template-columns: 1fr;
    }

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

    .comparison-row {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .certification-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .footer {
        padding: 60px 0 30px;
    }

    .footer-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
}

@media (max-width: 576px) {
    .hero-badge {
        font-size: 0.75rem;
        width: 100%;
        justify-content: center;
    }

    .hero-title {
        font-size: 2rem;
    }

    .hero-description {
        font-size: 1rem;
    }

    .cards-grid > .card,
    .steps-grid > .step-card,
    .specs-grid > .spec-card {
        flex: 1 1 100%;
    }

    .section-title,
    .comparison-title {
        font-size: 1.25rem
    }

    .section-subtitle {
        font-size: 1rem;
    }
}