* { box-sizing: border-box; }
/* Reprodução do design original: Arial, branco e azul-ardósia. */
:root {
  --law-ink: #333;
  --law-navy: #1e293b;
  --law-panel: #f8fafc;
  --law-footer: #cbd5e1;
}

html { font-size: 16px; }
body { margin: 0; }
.law-site {
  font-family: Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: var(--law-ink);
  background: #fff;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
.law-site h1, .law-site h2, .law-site p { margin: 0; }
.law-site h1, .law-site h2 { font-weight: 400; color: var(--law-navy); }
.law-site strong { font-weight: 700; }
.site-header { background: var(--law-navy); color: #fff; padding: 16px; }
.site-nav { max-width: 900px; margin: 0 auto; display: flex; flex-direction: column; gap: 12px; align-items: center; }
.site-name { font-size: 1.1rem; text-align: center; }
.site-links { display: flex; gap: 16px; flex-wrap: wrap; justify-content: center; font-size: 0.9rem; }
.site-links a { color: #fff; text-decoration: none; }
.site-links a:focus-visible { outline: 2px solid #fff; outline-offset: 4px; border-radius: 2px; }
.site-main { flex: 1; max-width: 900px; margin: 0 auto; padding: 24px 16px; }
.welcome-section { margin-bottom: 32px; }
.welcome-section h1 { font-size: 1.6rem; margin-bottom: 12px; }
.company-section { background: var(--law-panel); padding: 20px; border-radius: 8px; margin-bottom: 32px; }
.company-section h2 { font-size: 1.2rem; margin-bottom: 12px; }
.company-section ul { list-style: none; padding: 0; margin: 0; }
.company-section li { margin-bottom: 8px; }
.company-section li:last-child { margin-bottom: 0; }
.legal-page h1 { font-size: 1.6rem; margin-bottom: 16px; }
.legal-page h2 { font-size: 1.1rem; margin-bottom: 8px; }
.legal-page p { margin-bottom: 16px; }
.site-footer { background: var(--law-navy); color: var(--law-footer); padding: 16px; text-align: center; font-size: 0.85rem; }
.back-link { color: var(--law-navy); text-decoration: underline; text-underline-offset: 3px; }
