/**
 * Páginas legais (políticas) — layout e tipografia do conteúdo CMS.
 * Carregado apenas em legal-page.blade.php (não inclui header do site).
 */

/* -------------------------------------------------------------------------- */
/* Shell da seção                                                             */
/* -------------------------------------------------------------------------- */

.baw-legal-page {
    padding: 70px 0 90px;
    background: #fff;
    border-top: 1px solid #dad9d7;
}

.baw-legal-page__inner {
    width: min(1160px, calc(100% - 30px));
    margin: 0 auto;
}

.baw-legal-page__body {
    color: #6b6866;
    font-size: 16px;
    line-height: 1.75;
}

/* -------------------------------------------------------------------------- */
/* Intro (mock / HTML colado no editor)                                       */
/* -------------------------------------------------------------------------- */

.baw-legal-page__intro,
.baw-legal-page .baw-politica-privacidade__intro {
    text-align: center;
    margin-bottom: 26px;
}

.baw-legal-page__intro-sub,
.baw-legal-page .baw-politica-privacidade__intro-sub {
    display: inline-block;
    font-size: 14px;
    line-height: 24px;
    font-family: "Monda", sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #827e7d;
    letter-spacing: 0.04em;
    padding-bottom: 10px;
    margin-bottom: 14px;
    border-bottom: 2px solid #e4492e;
}

.baw-legal-page__intro h2,
.baw-legal-page .baw-politica-privacidade__intro h2 {
    margin: 0 0 10px;
    font-size: clamp(30px, 4vw, 42px);
    line-height: 1.15;
    color: #1c1c1c;
    font-family: "Monda", sans-serif;
    font-weight: 700;
}

.baw-legal-page__intro p,
.baw-legal-page .baw-politica-privacidade__intro p {
    margin: 0 auto;
    max-width: 860px;
    color: #6b6866;
    line-height: 1.65;
}

.baw-legal-page__titulo-central,
.baw-legal-page .baw-politica-privacidade__titulo-central {
    text-align: center;
    margin: 0 0 28px;
    font-size: 24px;
    line-height: 1.35;
    font-family: "Monda", sans-serif;
    color: #1c1c1c;
}

/* -------------------------------------------------------------------------- */
/* Tipografia do conteúdo (CMS / Quill)                                       */
/* -------------------------------------------------------------------------- */

.baw-legal-page__body > :first-child,
.baw-legal-page__inner > :first-child:not(.baw-legal-page__intro) {
    margin-top: 0;
}

.baw-legal-page__body h1,
.baw-legal-page__body h2,
.baw-legal-page__body h3,
.baw-legal-page__body h4,
.baw-legal-page h2,
.baw-legal-page .baw-politica-privacidade h2 {
    margin: 36px 0 14px;
    font-family: "Monda", sans-serif;
    color: #1c1c1c;
    font-weight: 700;
}

.baw-legal-page__body h1,
.baw-legal-page h1.baw-legal-page__titulo-central {
    font-size: 24px;
    line-height: 1.35;
}

.baw-legal-page__body h2,
.baw-legal-page h2,
.baw-legal-page .baw-politica-privacidade h2 {
    font-size: 30px;
    line-height: 1.2;
}

.baw-legal-page__body h3,
.baw-legal-page__subtitulo-tabela,
.baw-legal-page .baw-politica-privacidade__subtitulo-tabela,
.baw-legal-page h3.baw-legal-page__subtitulo-tabela {
    margin-top: 22px;
    margin-bottom: 8px;
    font-size: 24px;
    line-height: 1.3;
}

.baw-legal-page__body h4,
.baw-legal-page__body h5,
.baw-legal-page__body h6 {
    margin: 20px 0 10px;
    font-size: 20px;
    line-height: 1.3;
}

.baw-legal-page__body p,
.baw-legal-page__body li,
.baw-legal-page p,
.baw-legal-page li,
.baw-legal-page .baw-politica-privacidade p,
.baw-legal-page .baw-politica-privacidade li {
    font-size: 16px;
    line-height: 1.75;
    color: #6b6866;
}

.baw-legal-page__body p,
.baw-legal-page p,
.baw-legal-page .baw-politica-privacidade p {
    margin: 0 0 16px;
}

.baw-legal-page__body a,
.baw-legal-page a,
.baw-legal-page .baw-politica-privacidade a {
    color: #1c1c1c;
    text-decoration: underline;
}

.baw-legal-page__body a:hover,
.baw-legal-page a:hover,
.baw-legal-page .baw-politica-privacidade a:hover {
    color: #e4492e;
}

.baw-legal-page__body ul,
.baw-legal-page__body ol,
.baw-legal-page ul,
.baw-legal-page .baw-politica-privacidade ul {
    padding-left: 22px;
    margin: 0 0 16px;
}

.baw-legal-page__body ul li,
.baw-legal-page__body ol li {
    margin-bottom: 6px;
}

.baw-legal-page__body strong,
.baw-legal-page__body b {
    color: #1c1c1c;
    font-weight: 700;
}

.baw-legal-page__body img {
    max-width: 100%;
    height: auto;
}

/* Alinhamento comum do Quill */
.baw-legal-page__body .ql-align-center {
    text-align: center;
}

.baw-legal-page__body .ql-align-right {
    text-align: right;
}

/* -------------------------------------------------------------------------- */
/* Tabelas (classes do template + tabelas genéricas do editor)                */
/* -------------------------------------------------------------------------- */

.baw-legal-page__tabela-legenda,
.baw-legal-page .baw-politica-privacidade__tabela-legenda {
    margin-bottom: 14px;
}

.baw-legal-page__tabela-wrap,
.baw-legal-page .baw-politica-privacidade__tabela-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border: 1px solid #e8e6e4;
    background: #fff;
    margin-bottom: 26px;
}

.baw-legal-page__tabela,
.baw-legal-page .baw-politica-privacidade__tabela,
.baw-legal-page__body table {
    width: 100%;
    min-width: 280px;
    border-collapse: collapse;
}

.baw-legal-page__tabela,
.baw-legal-page .baw-politica-privacidade__tabela {
    min-width: 980px;
}

.baw-legal-page__tabela th,
.baw-legal-page__tabela td,
.baw-legal-page .baw-politica-privacidade__tabela th,
.baw-legal-page .baw-politica-privacidade__tabela td,
.baw-legal-page__body table th,
.baw-legal-page__body table td {
    border: 1px solid #ececec;
    padding: 14px 12px;
    vertical-align: top;
    font-size: 14px;
    line-height: 1.55;
    color: #4f4c4a;
    text-align: left;
}

.baw-legal-page__tabela thead th,
.baw-legal-page .baw-politica-privacidade__tabela thead th,
.baw-legal-page__body table thead th {
    background: #f7f6f5;
    font-family: "Monda", sans-serif;
    font-weight: 700;
    color: #1c1c1c;
}

.baw-legal-page__tabela-categoria,
.baw-legal-page .baw-politica-privacidade__tabela-categoria {
    font-family: "Monda", sans-serif;
    font-weight: 700;
    color: #1c1c1c !important;
    background: #fcfbfb;
}

.baw-legal-page__tabela-lista-titular,
.baw-legal-page .baw-politica-privacidade__tabela-lista-titular {
    margin: 0;
    padding-left: 16px;
}

.baw-legal-page__tabela-lista-titular li,
.baw-legal-page .baw-politica-privacidade__tabela-lista-titular li {
    font-size: 14px;
    line-height: 1.55;
    margin-bottom: 4px;
}

/* Tabelas compactas (controladora, DPO, canal) */
.baw-legal-page__tabela--controladoras,
.baw-legal-page__tabela--dpo,
.baw-legal-page__tabela--canal-requisicoes,
.baw-legal-page .baw-politica-privacidade__tabela--controladoras,
.baw-legal-page .baw-politica-privacidade__tabela--dpo,
.baw-legal-page .baw-politica-privacidade__tabela--canal-requisicoes {
    min-width: 0;
}

/* -------------------------------------------------------------------------- */
/* Canal / QR                                                                 */
/* -------------------------------------------------------------------------- */

.baw-legal-page__canal-qr,
.baw-legal-page .baw-politica-privacidade__canal-qr {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.baw-legal-page__canal-qr-row,
.baw-legal-page .baw-politica-privacidade__canal-qr-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
}

.baw-legal-page__canal-qr-ou,
.baw-legal-page .baw-politica-privacidade__canal-qr-ou {
    font-family: "Monda", sans-serif;
    font-weight: 700;
    color: #1c1c1c;
}

.baw-legal-page__canal-qr-link,
.baw-legal-page .baw-politica-privacidade__canal-qr-link {
    margin: 0;
    word-break: break-word;
}

/* -------------------------------------------------------------------------- */
/* Vigência                                                                   */
/* -------------------------------------------------------------------------- */

.baw-legal-page__vigencia,
.baw-legal-page .baw-politica-privacidade__vigencia {
    margin-top: 16px;
    padding: 16px 18px;
    background: #f7f6f5;
    border-left: 4px solid #e4492e;
}

.baw-legal-page__vigencia p,
.baw-legal-page .baw-politica-privacidade__vigencia p {
    margin: 0 0 8px;
    font-size: 14px;
    line-height: 1.6;
    color: #4f4c4a;
}

.baw-legal-page__vigencia p:last-child,
.baw-legal-page .baw-politica-privacidade__vigencia p:last-child {
    margin-bottom: 0;
}

/* -------------------------------------------------------------------------- */
/* Página de cookies — blocos opcionais no HTML do CMS                         */
/* -------------------------------------------------------------------------- */

.page-legal--cookies .cookies-intro,
.baw-legal-page .cookies-intro {
    margin-bottom: 24px;
    text-align: center;
}

.page-legal--cookies .cookies-intro__sub,
.baw-legal-page .cookies-intro__sub {
    display: inline-block;
    font-size: 14px;
    line-height: 24px;
    font-family: "Monda", sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    color: #827e7d;
    letter-spacing: 0.04em;
    padding-bottom: 10px;
    margin-bottom: 14px;
    border-bottom: 2px solid #e4492e;
}

.page-legal--cookies .cookies-intro h2,
.baw-legal-page .cookies-intro h2 {
    margin: 0 0 10px;
    font-size: clamp(30px, 4vw, 42px);
    line-height: 1.15;
    font-weight: 700;
    color: #1c1c1c;
    font-family: "Monda", sans-serif;
}

.page-legal--cookies .cookies-intro p,
.baw-legal-page .cookies-intro p {
    margin: 0 auto;
    max-width: 800px;
    color: #6b6866;
    line-height: 1.65;
}

.page-legal--cookies .cookies-links,
.baw-legal-page .cookies-links {
    margin: 0 auto 24px;
    font-size: 14px;
    color: #6c6f73;
    text-align: center;
}

.page-legal--cookies .cookies-links a,
.baw-legal-page .cookies-links a {
    color: #1c1c1c;
    text-decoration: none;
}

.page-legal--cookies .cookies-links a:hover,
.baw-legal-page .cookies-links a:hover {
    color: #e4492e;
}

/* -------------------------------------------------------------------------- */
/* Responsivo                                                                 */
/* -------------------------------------------------------------------------- */

@media (max-width: 767px) {
    .baw-legal-page {
        padding: 56px 0 70px;
    }

    .baw-legal-page__body h2,
    .baw-legal-page h2,
    .baw-legal-page .baw-politica-privacidade h2 {
        font-size: 25px;
    }

    .baw-legal-page__titulo-central,
    .baw-legal-page .baw-politica-privacidade__titulo-central {
        font-size: 20px;
    }

    .baw-legal-page__tabela,
    .baw-legal-page .baw-politica-privacidade__tabela {
        min-width: 640px;
    }
}
