/* Publish Law — protótipo v2 (04/09/2026). Linguagem das referências (Jusfy / MinutaIA): branco, uma cor, sans bold. */
:root{
  --ink:#0F1424; --text:#1F2537; --muted:#667085; --line:#E4E7EC; --line-2:#D0D5DD;
  --bg:#FFFFFF; --bg-2:#F8F9FC; --bg-3:#F2F4F8;
  --blue:#3557E0; --blue-2:#2743B8; --blue-3:#1E3399; --blue-soft:#EEF2FF; --blue-line:#C7D2FE;
  --green:#12B76A; --green-soft:#ECFDF3; --red:#D92D20; --red-soft:#FEF3F2; --amber:#B54708; --amber-soft:#FFFAEB;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --head:'Poppins','Inter',system-ui,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  --r:16px; --r-sm:10px;
  --shadow:0 1px 2px rgba(16,24,40,.05),0 8px 24px -12px rgba(16,24,40,.18);
  --shadow-lg:0 24px 64px -24px rgba(16,24,40,.35);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;font-family:var(--sans);color:var(--text);background:var(--bg);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit}
img,svg{max-width:100%;display:block}
h1,h2,h3,h4{margin:0;font-family:var(--head);font-weight:600;line-height:1.15;color:var(--ink);letter-spacing:-.01em}
p{margin:0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 20px;height:46px;border-radius:12px;border:1px solid transparent;font:600 15px/1 var(--sans);text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s,transform .05s;white-space:nowrap}
.btn:active{transform:translateY(1px)}
.btn-blue{background:var(--blue);color:#fff;box-shadow:0 1px 2px rgba(53,87,224,.3)}.btn-blue:hover{background:var(--blue-2)}
.btn-ghost{background:#fff;border-color:var(--line-2);color:var(--ink)}.btn-ghost:hover{border-color:var(--ink)}
.btn-soft{background:var(--blue-soft);color:var(--blue-2)}.btn-soft:hover{background:#E0E7FF}
.btn-sm{height:38px;padding:0 14px;font-size:14px;border-radius:10px}
.btn-lg{height:52px;padding:0 26px;font-size:16px}
:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.chip{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:#fff;border:1px solid var(--line);font:500 13px/1 var(--sans);color:var(--text);box-shadow:0 1px 2px rgba(16,24,40,.04)}
.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--blue-soft);color:var(--blue-2);font:600 12px/1 var(--sans)}
.ico{width:40px;height:40px;border-radius:10px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;flex-shrink:0}
.ico svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.marca{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:var(--ink);font-family:var(--head);font-weight:700;font-size:21px;letter-spacing:-.02em}
.marca .m{width:32px;height:32px;border-radius:9px;background:var(--blue);display:grid;place-items:center}
.marca .m svg{width:20px;height:20px}
.marca b{font-weight:700}.marca span{color:var(--blue);font-weight:700}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
