:root { --azul: #0b2f4f; --azul-2: #124a72; --agua: #2e9cca; --agua-claro: #e8f5fb; --verde: #3f9d6b; --texto: #1d2a35; --suave: #5b6b78; --borda: #dbe6ee; --fundo-2: #f5f9fb; }
* { box-sizing: border-box; }
body { margin: 0; font-family: Inter, Arial, sans-serif; color: var(--texto); background: #fff; line-height: 1.7; font-size: 17px; }
a { color: var(--azul-2); }
.topo { position: sticky; top: 0; z-index: 10; background: rgba(255,255,255,.96); border-bottom: 1px solid var(--borda); }
.topo .in { max-width: 1120px; margin: 0 auto; padding: 0 16px; height: 64px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.logo { display: flex; align-items: center; gap: 8px; text-decoration: none; }
.logo b { font-weight: 800; font-size: 24px; letter-spacing: -.5px; color: var(--azul); }
.logo b span { color: var(--agua); }
.btn { display: inline-flex; align-items: center; justify-content: center; padding: 12px 20px; border-radius: 999px; font-weight: 700; font-size: 15px; text-decoration: none; background: var(--verde); color: #fff; }
.btn:hover { background: #358a5d; }
.artigo { max-width: 760px; margin: 0 auto; padding: 36px 16px 64px; }
.trilha { font-size: 14px; color: var(--suave); margin-bottom: 14px; }
.trilha a { color: var(--suave); }
h1 { font-size: clamp(28px, 5vw, 40px); line-height: 1.15; color: var(--azul); letter-spacing: -.5px; margin: 0 0 14px; }
.meta { font-size: 14px; color: var(--suave); margin-bottom: 26px; }
h2 { font-size: clamp(22px, 3.4vw, 27px); color: var(--azul); margin: 40px 0 10px; line-height: 1.25; }
h3 { font-size: 19px; color: var(--azul-2); margin: 26px 0 6px; }
.resumo { background: var(--agua-claro); border-left: 4px solid var(--agua); border-radius: 0; padding: 18px 22px; margin: 0 0 28px; }
.resumo p { margin: 0 0 8px; } .resumo ul { margin: 0; padding-left: 20px; }
.tabela { width: 100%; overflow-x: auto; margin: 16px 0; }
table { border-collapse: collapse; width: 100%; font-size: 15px; }
th, td { border: 1px solid var(--borda); padding: 10px 12px; text-align: left; }
th { background: var(--fundo-2); color: var(--azul); }
.aviso { background: #fff8e6; border: 1px solid #f1d58a; border-radius: 12px; padding: 16px 20px; font-size: 15px; margin: 28px 0; }
.cta { background: var(--azul); color: #fff; border-radius: 18px; padding: 28px; margin: 40px 0; }
.cta h2 { color: #fff; margin-top: 0; }
.cta p { color: #cfe3ef; }
details { border: 1px solid var(--borda); border-radius: 12px; padding: 14px 18px; margin-bottom: 10px; }
summary { cursor: pointer; font-weight: 700; color: var(--azul); }
details p { margin: 10px 0 0; color: var(--suave); }
.fontes { font-size: 14px; color: var(--suave); }
.lista-guias { list-style: none; padding: 0; display: grid; gap: 14px; }
.lista-guias li a { display: block; border: 1px solid var(--borda); border-radius: 14px; padding: 20px; text-decoration: none; }
.lista-guias li a:hover { border-color: var(--agua); }
.lista-guias strong { display: block; color: var(--azul); font-size: 19px; margin-bottom: 4px; }
.lista-guias span { color: var(--suave); font-size: 15px; }
footer { background: #071f35; color: #9fb6c8; font-size: 14px; padding: 28px 16px; text-align: center; }
footer a { color: #cfe3ef; }
@media (max-width: 600px) {
  table.empilha, table.empilha tbody, table.empilha tr, table.empilha td { display: block; width: 100%; }
  table.empilha tr:first-child { display: none; }
  table.empilha tr { border: 1px solid var(--borda); border-radius: 10px; margin-bottom: 10px; padding: 6px 0; }
  table.empilha td { border: 0; padding: 4px 14px; }
  table.empilha td[data-l]::before { content: attr(data-l) ": "; font-weight: 700; color: var(--azul); }
}
@media (max-width: 600px) { body { font-size: 16px; } table { font-size: 13.5px; } th, td { padding: 8px; } .topo .btn { padding: 10px 14px; font-size: 14px; } .cta { padding: 22px; } }
