/* CCL Landing — Responsive / Media Queries */

/* -----------------------------------------------------------------------
   TABLET — up to 991px (nav collapses to hamburger)
   ----------------------------------------------------------------------- */
@media (max-width: 991px) {
    :root {
        --header-height: 64px;
    }

    /* Footer: stack columns */
    .footer-inner {
        flex-direction: column;
        gap: 2rem;
    }

    .footer-left {
        max-width: 100%;
    }

    .footer-right {
        align-items: flex-start;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 1rem;
    }

    .footer-copyright-inner {
        flex-direction: column;
        text-align: center;
        gap: 0.4rem;
    }

    /* News section: stack columns */
    .news-container {
        flex-direction: column;
        gap: 2rem;
    }

    .news-featured-col {
        flex: 1;
    }

    .news-sidebar {
        flex: 1;
    }

    /* Player of the week: stack layout */
    .player-of-week-content {
        flex-direction: column;
        gap: 2rem;
    }

    .player-of-week-image {
        width: 100%;
        height: 250px;
    }
}

/* -----------------------------------------------------------------------
   MOBILE — up to 767px
   ----------------------------------------------------------------------- */
@media (max-width: 767px) {
    .hero-headline {
        font-size: clamp(1.5rem, 8vw, 2.5rem);
    }

    .hero-banner {
        min-height: 40vh;
    }

    .team-logos-bar {
        padding: 0.4rem 0;
    }

    .footer-main {
        padding: 2rem 0 1.5rem;
    }
}

/* -----------------------------------------------------------------------
   SMALL MOBILE — up to 575px
   ----------------------------------------------------------------------- */
@media (max-width: 575px) {
    .footer-right {
        flex-direction: column;
        align-items: flex-start;
    }

    .affiliate-logo {
        height: 40px;
    }

    .footer-logo {
        height: 44px;
    }

    .hero-content {
        padding: 2.5rem 0;
    }

    .news-featured-title {
        font-size: 1.25rem;
    }

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

    .news-card-image {
        width: 100%;
        height: 80px;
    }

    .player-of-week-image {
        height: 200px;
    }

    .player-of-week-name {
        font-size: 1.5rem;
    }
}

/* -----------------------------------------------------------------------
   LARGE — 1400px+
   ----------------------------------------------------------------------- */
@media (min-width: 1400px) {
    .site-logo img {
        height: 56px;
    }
}
