/* Politicas DJ Locacao — estilo autocontido (Hostgator). Tema claro, legivel. */
:root{
  --azul:#2563eb; --azul-forte:#1d4ed8; --texto:#1c274c; --suave:#5b6b81;
  --linha:#e2e8f2; --fundo:#eef2f8; --card:#ffffff; --max:860px;
}
*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0; background:var(--fundo); color:var(--texto);
  font-family:"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;
  line-height:1.6; font-size:16px;
}
a{ color:var(--azul); text-decoration:none; }
a:hover{ text-decoration:underline; }

.topo{
  background:var(--card); border-bottom:1px solid var(--linha);
  position:sticky; top:0; z-index:5;
}
.topo-in{
  max-width:var(--max); margin:0 auto; padding:14px 20px;
  display:flex; align-items:center; gap:14px; flex-wrap:wrap;
}
.topo img{ height:40px; width:auto; }
.topo .nome{ font-weight:700; color:var(--texto); }
.topo nav{ margin-left:auto; display:flex; gap:6px; flex-wrap:wrap; }
.topo nav a{
  padding:7px 12px; border-radius:8px; color:var(--suave); font-size:14px;
}
.topo nav a:hover{ background:var(--fundo); text-decoration:none; }
.topo nav a[aria-current="page"]{ color:var(--azul); background:#e8efff; font-weight:600; }

main{ max-width:var(--max); margin:0 auto; padding:28px 20px 64px; }
.doc{
  background:var(--card); border:1px solid var(--linha); border-radius:14px;
  padding:36px 40px; box-shadow:0 8px 30px rgba(28,39,76,.06);
}
.doc h1{ font-size:28px; margin:0 0 6px; }
.doc .sub{ color:var(--suave); margin:0 0 8px; }
.doc .rev{ color:var(--suave); font-size:13px; margin:0 0 26px; }
.doc h2{ font-size:20px; margin:30px 0 8px; padding-top:8px; }
.doc h3{ font-size:16px; margin:20px 0 6px; }
.doc p, .doc li{ color:#33415c; }
.doc ul{ padding-left:20px; }
.doc table{ width:100%; border-collapse:collapse; margin:12px 0; font-size:14px; }
.doc th, .doc td{ border:1px solid var(--linha); padding:9px 11px; text-align:left; vertical-align:top; }
.doc th{ background:var(--fundo); }

.placeholder{
  background:#fff7ed; border:1px dashed #f59e0b; border-radius:8px;
  padding:10px 14px; color:#92400e; font-size:14px; margin:8px 0;
}
.aviso-rascunho{
  background:#fef2f2; border:1px solid #fecaca; color:#991b1b;
  border-radius:10px; padding:12px 16px; margin:0 0 24px; font-size:14px;
}
.rodape{
  max-width:var(--max); margin:0 auto; padding:24px 20px 48px;
  color:var(--suave); font-size:13px; text-align:center;
}
@media (max-width:640px){
  .doc{ padding:24px 20px; }
  .doc h1{ font-size:23px; }
}
