/* ==========================================================================
   Global Responsive Overrides
   ========================================================================== */

@media (max-width: 1023px) {
    :root {
        --text-3xl: 36px;
        --text-4xl: 42px;
        --page-padding: 24px;
    }
}

@media (max-width: 767px) {
    :root {
        --text-2xl: 28px;
        --text-3xl: 32px;
        --text-4xl: 36px;
        --page-padding: 20px;
    }

    .news-card {
        flex-direction: column;
    }

    .news-card__image {
        width: 100%;
    }

    .filter-bar {
        flex-direction: column;
        align-items: stretch;
    }

    .footer-contact {
        grid-template-columns: 1fr;
    }

    /* Touch targets */
    .btn,
    button,
    a {
        min-height: 44px;
    }

    /* Prevent horizontal overflow */
    body {
        overflow-x: hidden;
    }
}

@media (max-width: 479px) {
    :root {
        --text-2xl: 24px;
        --text-3xl: 28px;
        --page-padding: 16px;
    }
}
