.politica-privacidade,
.termos-uso {
    color: var(--cor-texto-conteudo);
}

.politica-privacidade .cabecalho-politica > h1,
.termos-uso .cabecalho-politica > h1 {
    margin-bottom: .65rem !important;
}

.politica-privacidade .data-atualizacao,
.termos-uso .data-atualizacao {
    margin-top: 0;
    color: var(--cor-texto-suave);
}

.politica-privacidade section,
.termos-uso section {
    scroll-margin-top: 1.5rem;
}

.politica-privacidade section + section,
.termos-uso section + section {
    margin-top: 2rem;
    padding-top: .5rem;
    border-top: 1px solid var(--cor-borda);
}

.politica-privacidade h2,
.termos-uso h2 {
    margin: 0 0 .75rem !important;
    padding: 0 !important;
    color: var(--cor-link) !important;
    background: transparent !important;
    font-size: 1.35rem;
}

.politica-privacidade h3,
.termos-uso h3 {
    margin-top: 1.5rem;
    color: var(--cor-texto-conteudo);
    font-size: 1.08rem;
}

.politica-privacidade p,
.politica-privacidade li,
.politica-privacidade td,
.politica-privacidade th,
.termos-uso p,
.termos-uso li {
    line-height: 1.65;
}

.politica-privacidade ul,
.politica-privacidade ol,
.termos-uso ul,
.termos-uso ol {
    padding-left: 1.4rem;
}

.politica-privacidade li + li,
.termos-uso li + li {
    margin-top: .45rem;
}

.indice-politica {
    margin: 1.5rem 0 2rem;
    padding: 1.25rem;
    background: var(--cor-superficie-suave);
    border: 1px solid var(--cor-borda);
    border-radius: .75rem;
}

.indice-politica ol {
    columns: 2;
    column-gap: 2rem;
    margin-bottom: 0;
}

.indice-politica li {
    break-inside: avoid;
}

.tabela-responsiva {
    width: 100%;
    margin: 1rem 0;
    overflow-x: auto;
    border: 1px solid var(--cor-borda);
    border-radius: .65rem;
}

.politica-privacidade table {
    width: 100%;
    min-width: 680px;
    border-collapse: collapse;
    color: var(--cor-texto-conteudo);
    background: var(--cor-superficie);
}

.politica-privacidade caption {
    padding: .8rem 1rem;
    color: var(--cor-texto-suave);
    text-align: left;
    background: var(--cor-superficie-suave);
    border-bottom: 1px solid var(--cor-borda);
}

.politica-privacidade th,
.politica-privacidade td {
    padding: .8rem 1rem !important;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid var(--cor-borda-suave);
}

.politica-privacidade thead th {
    color: var(--cor-texto-inverso);
    background: var(--cor-primaria);
}

.politica-privacidade tbody th {
    width: 28%;
    color: var(--cor-texto-conteudo);
    background: var(--cor-superficie-suave);
}

.politica-privacidade tbody tr:last-child > * {
    border-bottom: 0;
}

.canal-privacidade {
    padding: 1.25rem;
    background: var(--cor-superficie-suave);
    border: 1px solid var(--cor-borda) !important;
    border-radius: .75rem;
}

.documento-legal-incorporado {
    --cor-primaria: #AB1414;
    --cor-link: #AB1414;
    --cor-texto-conteudo: #1f2937;
    --cor-texto-suave: #5f6b7c;
    --cor-texto-inverso: #ffffff;
    --cor-superficie: #ffffff;
    --cor-superficie-suave: #f6f7f9;
    --cor-borda: #d9dee7;
    --cor-borda-suave: #e7eaf0;
    box-sizing: border-box;
    margin: 0;
    padding: clamp(1rem, 3vw, 2rem);
    color: var(--cor-texto-conteudo);
    background: var(--cor-superficie);
    font-family: Calibri, "Segoe UI", Arial, sans-serif;
    font-size: 16px;
}

.documento-legal-incorporado *,
.documento-legal-incorporado *::before,
.documento-legal-incorporado *::after {
    box-sizing: inherit;
    font-family: inherit;
}

.documento-legal-incorporado .termos-uso {
    width: min(100%, 1080px);
    margin: 0 auto;
}

.documento-legal-incorporado .cabecalho-politica > h1 {
    margin-top: 0;
    color: var(--cor-primaria);
    font-size: clamp(1.65rem, 5vw, 2.25rem);
    line-height: 1.15;
}

.documento-legal-incorporado a {
    color: var(--cor-link);
}

.documento-legal-incorporado p,
.documento-legal-incorporado li {
    overflow-wrap: anywhere;
}

@media (max-width: 720px) {
    .indice-politica ol {
        columns: 1;
    }

    .politica-privacidade table {
        min-width: 560px;
    }

    .documento-legal-incorporado {
        padding: 1rem;
    }
}

@media print {
    .indice-politica,
    .referencias-legais {
        display: none;
    }

    .tabela-responsiva {
        overflow: visible;
    }

    .politica-privacidade table {
        min-width: 0;
    }
}
