.legal-wrap{max-width:820px;margin:auto;padding:120px 28px 90px}
.legal-wrap h1{font-size:clamp(30px,5vw,44px);margin:0 0 6px;letter-spacing:-.03em}
.legal-wrap .updated{color:var(--muted);font-size:13px;margin:0 0 36px}
.legal-wrap h2{font-size:20px;margin:38px 0 12px;color:var(--accent2)}
.legal-wrap p,.legal-wrap li{color:#c7cbd3;line-height:1.75;font-size:15px}
.legal-wrap ul,.legal-wrap ol{padding-left:22px;margin:10px 0}
.legal-wrap li{margin:6px 0}
.legal-wrap strong{color:var(--text)}
.legal-wrap a{color:var(--accent2);text-decoration:underline}
.legal-notice{background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;font-size:13px;color:var(--muted);margin-bottom:34px}
.legal-notice b{color:var(--text)}
.back-link{display:inline-block;margin-bottom:18px;color:var(--muted);font-size:13px}

/* Aviso de cookies — injetado via assets/js/cookie-banner.js em todas as páginas.
   Cores fixas (não usa variáveis --var do site.css) porque cada página do projeto
   define seu próprio conjunto de variáveis de tema — assim o aviso fica igual em
   qualquer uma delas, sem depender de qual CSS a página já carrega. */
#cookieBanner{position:fixed;left:16px;right:16px;bottom:16px;z-index:999;max-width:640px;margin:0 auto;background:#12141c;border:1px solid #2a2e3a;border-radius:14px;padding:16px 18px;display:flex;gap:14px;align-items:center;flex-wrap:wrap;box-shadow:0 20px 60px #000a;font-family:Inter,system-ui,sans-serif}
#cookieBanner p{margin:0;color:#c7cbd3;font-size:13px;line-height:1.6;flex:1;min-width:220px}
#cookieBanner a{color:#89a6ff;text-decoration:underline}
#cookieBanner .actions{display:flex;gap:8px}
#cookieBanner button{padding:9px 14px;border-radius:9px;font-size:13px;font-weight:600;border:1px solid #2a2e3a;background:#1a1d26;color:#f4f6f8;cursor:pointer;font-family:inherit}
#cookieBanner button.accept{background:#4f7cff;border-color:#4f7cff;color:#0a0c10}
@media(max-width:520px){.legal-wrap{padding:100px 18px 60px}}

/* ======== Central legal: layout com índice lateral, tabelas e formulários ======== */
ul.links{list-style:none;margin:0;padding:0}
.legal-layout{max-width:1180px;margin:auto;padding:110px 28px 80px;display:grid;grid-template-columns:230px minmax(0,1fr);gap:48px;align-items:start}
.legal-layout .legal-wrap{padding:0;margin:0;max-width:820px}
.legal-side{position:sticky;top:96px;border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--surface)}
.legal-side-title{margin:0 0 8px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#a3abb8;font-weight:700}
.legal-side ul{list-style:none;margin:0;padding:0}
.legal-side a{display:block;padding:8px 10px;border-radius:7px;color:#c7cbd3;font-size:13px;text-decoration:none}
.legal-side a:hover{background:#171b24;color:#fff}
.legal-side a[aria-current="page"]{background:#1d2235;color:#fff;font-weight:700;box-shadow:inset 3px 0 0 #b79cff}
.crumbs{font-size:12px;color:#a3abb8;margin-bottom:14px}
.crumbs a{color:#c7cbd3!important}
.legal-wrap .lead{font-size:17px;color:#d6dae1}
.legal-wrap h2{scroll-margin-top:96px}
.legal-wrap code{background:#171b24;border:1px solid var(--line);border-radius:5px;padding:1px 5px;font-size:13px;color:#e4e7ec}
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:12px;margin:14px 0}
.legal-table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:620px}
.legal-table caption{text-align:left;padding:12px 14px;color:#a3abb8;font-size:12px;border-bottom:1px solid var(--line)}
.legal-table th,.legal-table td{padding:12px 14px;text-align:left;vertical-align:top;border-bottom:1px solid #20242c;color:#c7cbd3;line-height:1.55}
.legal-table thead th{color:#e4e7ec;font-size:12px;background:#12161d}
.legal-table tbody th{color:#f4f6f8;font-weight:600}
.legal-table tr:last-child>*{border-bottom:0}
.company-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:14px 0}
.company-card>div{background:var(--surface);padding:14px 16px}
.company-card dt{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#a3abb8;margin-bottom:4px}
.company-card dd{margin:0;color:#f4f6f8;font-size:14px;word-break:break-word}
.doc-grid{list-style:none;padding:0!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.doc-grid li{margin:0!important}
.doc-grid a{display:block;height:100%;border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--surface);text-decoration:none!important;transition:border-color .2s}
.doc-grid a:hover{border-color:#6d3fd6}
.doc-grid strong{display:block;color:#fff;margin-bottom:4px}
.doc-grid span{display:block;color:#a3abb8;font-size:13px;line-height:1.5}
.legal-form{border:1px solid var(--line);border-radius:14px;padding:20px;background:var(--surface);margin:16px 0}
.legal-form .field{margin-bottom:14px}
.legal-form .field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.legal-form label{display:block;font-size:13px;font-weight:600;color:#e4e7ec;margin-bottom:6px}
.legal-form .optional{font-weight:400;color:#a3abb8}
.legal-form input,.legal-form select,.legal-form textarea{width:100%;box-sizing:border-box;background:#0c0e11;border:1px solid #3a4258;border-radius:8px;padding:11px 12px;color:#fff;font:inherit;font-size:14px}
.legal-form input[aria-invalid="true"],.legal-form select[aria-invalid="true"]{border-color:#ff6b7a}
.legal-form .hint{font-size:12px;color:#a3abb8;margin:6px 0 0;line-height:1.5}
.form-actions{margin-top:16px}
.form-actions .btn:not(.ghost){border:0}
.form-status{margin-top:12px;font-size:14px;line-height:1.6}
.form-status .ok{color:#52d29b}.form-status .err{color:#ff8a95}
.form-status .protocol{display:inline-block;font:700 16px ui-monospace,monospace;background:#12161d;border:1px solid #3a4258;border-radius:6px;padding:4px 8px;color:#fff;margin:4px 0}
.linklike{background:none;border:0;padding:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}
/* Rodapé completo (dados da empresa + links legais) */
.site-footer{padding:48px 0 28px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
.footer-grid p{margin:0 0 8px;line-height:1.6;color:#a3abb8}
.footer-company{font-size:12px}
.footer-company a,.footer-col a,.footer-col .linklike{color:#c7cbd3}
.footer-col a:hover,.footer-col .linklike:hover{color:#fff}
.footer-title{font-size:11px!important;letter-spacing:.14em;text-transform:uppercase;color:#a3abb8;margin:0 0 10px!important;font-weight:700}
.footer-col ul{list-style:none;margin:0;padding:0}
.footer-col li{margin:0 0 8px}
.footer-bottom{border-top:1px solid var(--line);margin-top:28px;padding-top:18px}
.footer-bottom p{margin:0;font-size:12px;line-height:1.6;color:#a3abb8}
@media(max-width:900px){.legal-layout{grid-template-columns:minmax(0,1fr);padding-top:96px;gap:24px}.legal-side{position:static}.footer-grid{grid-template-columns:1fr 1fr}.footer-about{grid-column:1/-1}}
@media(max-width:560px){.legal-layout{padding:90px 18px 60px}.doc-grid,.company-card,.legal-form .field-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}}
