.sitemap-container {
            max-width: 1400px;
            margin: 2rem auto;
            padding: 0 1rem;
        }
        h1 {
            font-size: 28px;
            font-weight: 600;
            color: #102a43;
            letter-spacing: -0.3px;
            border-bottom: 3px solid #cbd6e6;
            padding-bottom: 0.65rem;
            margin-bottom: 2rem;
        }
        /* force every column to be a flex container so cards stretch equally */
        .row {
            --bs-gutter-y: 1.2rem;  /* vertical gutter */
            margin: 0 -0.6rem;   /* compensate for column padding */
            margin-bottom: 25px;
            justify-content: center;
        }
        .row > [class*="col-"] {
            padding: 0 0.6rem;        /* half of gutter (1.2rem/2) */
            display: flex;
        }
        /* card-link: fill the column, centered text, consistent appearance */
        .card-link {
            display: flex;
            align-items: center;
            justify-content: center;
            text-align: center;
            width: 100%;               /* take full width of flex parent */
            padding: 5px 5px;
            background: white;
            border: 1px solid #d8e0ec;
            border-radius: 16px;
            text-decoration: none;
            color: #1e3b5c;
            font-size: 15px;
            font-weight: 470;
            line-height: 1.4;
            word-break: break-word;
            box-shadow: 0 4px 10px rgba(0, 20, 40, 0.02);
            transition: all 0.18s ease;
            min-height: 70px;           /* ensures all cards have at least this height */
            transition: background 0.2s, border-color 0.2s, box-shadow 0.2s, transform 0.1s;
        }
        .card-link:hover {
            background: #e9f1fc;
            border-color: #7fa3ce;
            color: #0b2b44;
            box-shadow: 0 12px 22px rgba(17, 55, 100, 0.12);
            transform: translateY(-2px);
        }
        /* optional: subtle active state */
        .card-link:active {
            transform: translateY(1px);
            box-shadow: 0 4px 8px rgba(0,0,0,0.05);
        }
        /* no extra elements, only the grid */