        /* Desktop Styles - Only applied on larger screens.
           The header and the wordmark are NOT here — they travel with the shared header card
           (app/shared/css/header.css), so a breakpoint cannot resize them behind its back. */
        @media (min-width: 769px) {
            main {
                padding: 2rem 7% 3rem;
            }

            .section-title {
                font-size: 1.7rem;
                letter-spacing: 0.12em;
            }

            .card-grid {
                display: grid;
                grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
                flex-direction: row;
            }

            .card {
                padding: 1.8rem;
                border-radius: 20px;
            }

            .carousel-card {
                min-width: 320px;
                max-width: 320px;
            }

            .link-list {
                display: grid;
                grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
                flex-direction: row;
            }
        }

        /* Tablet Styles */
        @media (min-width: 481px) and (max-width: 768px) {
            .card-grid {
                display: grid;
                grid-template-columns: repeat(2, 1fr);
                flex-direction: row;
            }

            .carousel-card {
                min-width: 45vw;
                max-width: 45vw;
            }
        }
