.mapa-site {
    color: #253047;
}

.cabecalho-mapa-site {
    margin-bottom: 1.5rem;
}

.cabecalho-mapa-site > h1 {
    margin-bottom: .6rem !important;
}

.cabecalho-mapa-site > p {
    margin: 0;
    color: #5f6b7c;
}

.grade-mapa-site {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    align-items: start;
}

.grupo-mapa-site {
    min-width: 0;
    padding: 1.2rem;
    background: #f7f8fb;
    border: 1px solid #dfe4ec;
    border-radius: .75rem;
}

.grupo-mapa-site h2 {
    margin: 0 0 .75rem !important;
    padding: 0 !important;
    color: var(--cor-primaria) !important;
    background: transparent !important;
    font-size: 1.2rem;
}

.grupo-mapa-site p {
    margin: 0 0 .8rem;
    color: #5f6b7c;
}

.grupo-mapa-site ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.grupo-mapa-site li + li {
    margin-top: .35rem;
}

.grupo-mapa-site a {
    display: block;
    padding: .45rem .55rem;
    color: var(--cor-primaria);
    text-decoration: none;
    border-radius: .4rem;
    overflow-wrap: anywhere;
}

.grupo-mapa-site a::before {
    margin-right: .45rem;
    content: "\203A";
}

.grupo-mapa-site a:hover,
.grupo-mapa-site a:focus-visible {
    color: #fff !important;
    background: var(--cor-secundaria);
}

.grupo-institucional {
    grid-column: 1 / -1;
}

.grupo-institucional ul {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem 1rem;
}

@media (max-width: 980px) {
    .grade-mapa-site {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 620px) {
    .grade-mapa-site {
        grid-template-columns: 1fr;
    }

    .grupo-institucional {
        grid-column: auto;
    }

    .grupo-institucional ul {
        display: block;
    }
}
