/* ---------------------------------------------------------------
   VoidPay — Políticas
   Layout conforme especificação: Poppins 400/700, coluna de 620px,
   alinhamento à esquerda, escala tipográfica em pontos.
   --------------------------------------------------------------- */

:root {
  --navy:  #1B2A3C;
  --body:  #2B3A48;
  --muted: #5A6875;
}

* { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body {
  font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  color: var(--body);
  background: #fff;
  max-width: 620px;
  margin: 0 auto;
  padding: 60pt 0;
  font-size: 11pt;
  line-height: 1.25;
  text-align: left;
}

h1 {
  font-size: 20pt;
  font-weight: 700;
  color: var(--navy);
  line-height: 1.33;
  margin: 0 0 7pt;
}

.versao {
  font-size: 10.5pt;
  font-weight: 400;
  color: var(--muted);
  line-height: 1.25;
  margin: 0 0 10pt;
}

h2 {
  font-size: 15pt;
  font-weight: 700;
  color: var(--navy);
  text-transform: uppercase;
  line-height: 1.25;
  margin: 20pt 0 9pt;
}

/* Subcapítulos (I., II., III. da Política) — não constam da especificação;
   derivado do h2, um degrau abaixo. */
h3 {
  font-size: 12pt;
  font-weight: 700;
  color: var(--navy);
  text-transform: uppercase;
  line-height: 1.25;
  margin: 16pt 0 7pt;
}

p { margin: 0 0 8pt; }

ul {
  margin: 0 0 8pt;
  padding-left: 34px;
  list-style: disc;
}

li { margin-bottom: 4.5pt; }

.assinatura { margin-top: 21pt; }

/* ---------- Navegação entre os documentos (só na web) ---------- */

.navegacao {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
  margin: 0 0 28pt;
  font-size: 10pt;
}

.navegacao a {
  color: var(--muted);
  text-decoration: none;
}

.navegacao a:hover { color: var(--navy); text-decoration: underline; }
.navegacao a[aria-current="page"] { color: var(--navy); font-weight: 700; }

/* ---------- Índice de documentos (home) ---------- */

.lista-politicas {
  list-style: none;
  margin: 0;
  padding: 0;
}

.lista-politicas li {
  margin: 0;
  border-top: 1px solid #E4E8EC;
}

.lista-politicas li:last-child { border-bottom: 1px solid #E4E8EC; }

.lista-politicas a {
  display: block;
  padding: 14pt 0;
  text-decoration: none;
  color: var(--body);
}

.lista-politicas strong {
  display: block;
  font-size: 12pt;
  font-weight: 700;
  color: var(--navy);
  text-transform: uppercase;
  line-height: 1.25;
  margin-bottom: 4pt;
}

.lista-politicas a:hover strong { text-decoration: underline; }

.lista-politicas span {
  color: var(--muted);
  font-size: 10.5pt;
}

/* ---------- Telas estreitas ----------
   A coluna de 620px encostaria nas bordas no celular; só aqui a
   margem lateral entra. */

@media (max-width: 680px) {
  body { padding: 32pt 20px; }
  h1 { font-size: 18pt; }
  h2 { font-size: 13.5pt; }
}

/* ---------- Impressão ---------- */

@media print {
  .navegacao { display: none; }
  body { max-width: none; padding: 0; color: #000; }
  h1, h2, h3 { color: #000; }
  a { color: #000; text-decoration: none; }
  h2, h3 { page-break-after: avoid; }
}
