.documento-publico { padding-top:140px; padding-bottom:70px; }
.pagina-legal header { background:#071522; }
header.fixo { background:#071522; }
.documento-publico h1 { font-size:clamp(30px,4vw,48px); line-height:1.18; margin-bottom:24px; }
.documento-publico h2 { margin-top:2em; line-height:1.35; }
.documento-publico p,.documento-publico li { line-height:1.75; }
.formulario .nota-formulario { font-size:13px; line-height:1.6; color:#47576a; }
.formulario .consentimento a { color:#1260a0; text-decoration:underline; }
.consentimento { align-items:flex-start; }
.consentimento input[type=checkbox] { flex:0 0 auto; margin-top:4px; }
.preferencias-link { color:#c4d5e7; background:none; border:0; text-decoration:underline; cursor:pointer; padding:16px 0 24px; font:inherit; font-size:14px; }
.escolha-privacidade { position:fixed; z-index:10000; left:16px; right:16px; bottom:16px; max-width:720px; margin:auto; padding:22px; background:#102438; color:#f1f6fc; border:1px solid #57728b; border-radius:12px; box-shadow:0 6px 40px #0008; max-height:75vh; overflow:auto; }
.escolha-privacidade[hidden] { display:none; }
.escolha-privacidade strong { font-size:18px; color:#f1f6fc; }
.escolha-privacidade p { margin:10px 0; font-size:14px; line-height:1.5; color:#d3deeb; }
.escolha-privacidade a { color:#b1d5ff; text-decoration:underline; }
.escolha-acoes { display:flex; gap:10px; flex-wrap:wrap; }
.escolha-acoes button { padding:10px 16px; border:1px solid #83a3c2; background:#163553; color:white; border-radius:6px; font:inherit; font-size:14px; cursor:pointer; }
.escolha-acoes button:focus-visible,.preferencias-link:focus-visible { outline:3px solid #eac657; outline-offset:3px; }
.escolha-atual { font-size:12px !important; }
@media(max-width:500px) { .escolha-privacidade { left:8px; right:8px; bottom:8px; padding:16px; } .escolha-acoes button { flex:1; } .documento-publico { padding-top:110px; } }

.escolha-categorias { display:grid; gap:12px; margin:16px 0; }
.escolha-categorias label { display:flex; align-items:flex-start; gap:10px; cursor:pointer; font-size:14px; line-height:1.5; color:#f1f6fc; }
.escolha-categorias input { flex:0 0 auto; width:18px; height:18px; margin-top:3px; accent-color:#83bfff; }
.escolha-categorias input:focus-visible { outline:3px solid #eac657; outline-offset:3px; }
#medicao-site { scroll-margin-top:110px; }
