:root {
  --legal-ink: #172536;
  --legal-muted: #5d6875;
  --legal-border: #dce3e9;
  --legal-paper: #fbfcfd;
}

body.legal-page {
  min-height: 100vh;
  color: var(--legal-ink);
  background: var(--legal-paper);
  font-family: Arial, Helvetica, sans-serif;
}

.legal-header { padding: 1.5rem clamp(1rem, 4vw, 4rem); color: #fff; background: #133b5c; }
.legal-header-inner, .legal-content, .legal-footer-inner { width: min(100%, 72rem); margin: 0 auto; }
.legal-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.legal-brand, .legal-nav a, .legal-back { color: inherit; text-decoration: none; }
.legal-brand { font-weight: 700; letter-spacing: .02em; }
.legal-nav { display: flex; flex-wrap: wrap; gap: 1rem; font-size: .9rem; }
.legal-content { padding: clamp(3rem, 7vw, 6rem) clamp(1rem, 4vw, 4rem); }
.legal-content h1, .legal-content h2 { line-height: 1.2; }
.legal-content h1 { margin-bottom: .75rem; font-size: clamp(2.2rem, 5vw, 4.5rem); }
.legal-content h2 { margin-top: 2.5rem; margin-bottom: .75rem; font-size: 1.45rem; }
.legal-content p, .legal-content li { max-width: 70ch; color: var(--legal-muted); line-height: 1.75; }
.legal-content ul { padding-left: 1.25rem; }
.legal-updated { margin-bottom: 2rem; color: var(--legal-muted); }
.legal-back { display: inline-block; margin-top: 2rem; padding: .75rem 1.1rem; border-radius: 999px; color: #fff; background: #133b5c; }
.legal-footer { padding: 1.5rem clamp(1rem, 4vw, 4rem); border-top: 1px solid var(--legal-border); }
.legal-footer-inner { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem; color: var(--legal-muted); font-size: .9rem; }
.legal-footer a { color: inherit; }
