/* GERADO por ferramentas/montar-legal-site.js — não editar à mão. */
@font-face {
  font-family: "Hanken";
  src: url("/fontes/hanken-grotesk.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root {
  color-scheme: dark;
  --noite:   #070F2B;
  --cartao:  #14224E;
  --linha:   rgba(143, 197, 255, .14);
  --linha-2: rgba(143, 197, 255, .26);
  --tinta:   #EEF3FF;
  --texto:   #D5DDF0;
  --suave:   #A8B5D4;
  --apagado: #6E7EA6;
  --azul:    #5FA0FF;   /* o azul do app */
  --azul-cl: #8FC5FF;
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }

body {
  margin: 0;
  background: var(--noite);
  color: var(--texto);
  font-family: "Hanken", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  font-size: 17px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
/* as estrelas paradas, como na página principal */
body::before {
  content: "";
  position: fixed; inset: 0;
  background: url("/img/estrelas.webp") 0 0 / 700px 700px repeat;
  opacity: .45;
  pointer-events: none;
  z-index: 0;
}
body > * { position: relative; z-index: 1; }

a { color: var(--azul-cl); }
.miolo { max-width: 1160px; margin: 0 auto; padding: 0 24px; }

/* ---------- barra de cima (igual à da página principal) ---------- */
.nav {
  position: sticky; top: 0; z-index: 20;
  background: rgba(7, 15, 43, .72);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--linha);
}
.nav .miolo { display: flex; align-items: center; height: 66px; gap: 36px; }
.logo { display: inline-flex; align-items: center; gap: 11px; text-decoration: none; font-weight: 750; font-size: 20px; letter-spacing: -0.02em; color: var(--tinta); }
.logo img { width: 30px; height: 30px; border-radius: 8px; }
.nav nav { display: flex; gap: 28px; margin-left: auto; }
.nav nav a { text-decoration: none; color: var(--suave); font-size: 15px; font-weight: 550; }
.nav nav a:hover { color: var(--tinta); }
.nav .ir { text-decoration: none; font-size: 15px; font-weight: 650; padding: 9px 18px; border-radius: 999px; background: var(--tinta); color: var(--noite); }
.nav .ir:hover { background: #fff; }
@media (max-width: 860px) {
  .nav nav { display: none; }
  .nav .ir { margin-left: auto; }
}

/* ---------- o documento ---------- */
.doc { max-width: 760px; margin: 0 auto; padding: 32px 24px 88px; }   /* topo mais rente (pedido de 01/10) */

.etiqueta {
  display: block;
  border-top: 1px solid var(--linha-2);
  padding-top: 14px;
  margin-bottom: 26px;
  font-size: 12.5px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase;
  color: var(--azul-cl);
}

h1, h2, h3 { color: var(--tinta); font-weight: 750; letter-spacing: -0.03em; line-height: 1.12; text-wrap: balance; }
h1 { font-size: clamp(38px, 6vw, 60px); margin: 0 0 14px; }
.data { color: var(--apagado); font-size: 15px; margin: 0 0 40px; }

h2 { font-size: clamp(23px, 3vw, 28px); margin: 56px 0 16px; letter-spacing: -0.025em; }
h3 { font-size: 19px; margin: 32px 0 10px; letter-spacing: -0.015em; }

p { margin: 0 0 16px; }
strong { color: var(--tinta); font-weight: 650; }

ul { margin: 0 0 20px; padding-left: 22px; }
li { margin: 0 0 8px; }
li::marker { color: var(--azul); }

hr { border: 0; border-top: 1px solid var(--linha); margin: 44px 0; }

.aviso {
  background: rgba(20, 34, 78, .7);
  border: 1px solid var(--linha-2);
  border-left: 3px solid var(--azul);
  border-radius: 14px;
  padding: 18px 20px;
  margin: 0 0 22px;
}

/* a tabela rola sozinha no celular em vez de esticar a página */
.tabela { overflow-x: auto; margin: 0 0 22px; border-radius: 14px; border: 1px solid var(--linha-2); }
table { border-collapse: collapse; width: 100%; font-size: 15.5px; }
th, td { text-align: left; padding: 12px 16px; border-bottom: 1px solid var(--linha); vertical-align: top; }
tr:last-child td { border-bottom: 0; }
th { background: rgba(20, 34, 78, .85); color: var(--tinta); font-weight: 650; }
td { background: rgba(7, 15, 43, .55); }

.outro {
  margin-top: 56px; padding: 20px 22px;
  border-radius: 16px; border: 1px solid var(--linha-2); background: rgba(20, 34, 78, .6);
}
.outro a { font-weight: 650; text-decoration: none; }
.outro a:hover { text-decoration: underline; }

/* ---------- rodapé (igual ao da página principal) ---------- */
footer { border-top: 1px solid var(--linha); padding: 56px 0 72px; color: var(--apagado); font-size: 14.5px; background: #040918; }
footer .miolo { display: grid; grid-template-columns: 1fr auto; gap: 40px; }
footer .links { display: flex; flex-wrap: wrap; gap: 10px 28px; }
footer .links a { color: var(--suave); text-decoration: none; font-weight: 550; }
footer .links a:hover { color: var(--tinta); }
footer .empresa { margin-top: 28px; line-height: 1.7; }
footer .email { color: var(--azul-cl); font-weight: 600; text-decoration: none; }
footer .email:hover { text-decoration: underline; }
footer p { margin: 0; }
@media (max-width: 700px) { footer .miolo { grid-template-columns: 1fr; } }
