
.legal { padding: 140px 0 80px; background: var(--white); }
.legal-inner { max-width: 760px; margin: 0 auto; padding: 0 24px; }

.legal h1 { color: var(--heading); font-size: 2.25rem; margin-bottom: 8px; }
.legal .legal-updated { color: var(--body); font-size: 0.95rem; margin-bottom: 40px; }
.legal h2 { color: var(--heading); font-size: 1.3rem; margin: 40px 0 12px; padding-top: 20px; border-top: 1px solid var(--border); }
.legal h2:first-of-type { border-top: none; padding-top: 0; }
.legal h3 { color: var(--heading); font-size: 1.05rem; margin: 24px 0 8px; }

.legal p, .legal li { color: var(--body); line-height: 1.75; }
.legal p { margin: 12px 0; }
.legal ul { margin: 12px 0; padding-left: 22px; }
.legal li { margin: 7px 0; }
.legal a { color: var(--primary-dark); }
.legal strong { color: var(--heading); }

.legal table { width: 100%; border-collapse: collapse; margin: 18px 0; font-size: 0.95rem; }
.legal th, .legal td { border: 1px solid var(--border); padding: 10px 12px; text-align: left; vertical-align: top; color: var(--body); }
.legal th { background: var(--bg-subtle); color: var(--heading); font-weight: 600; }

@media (max-width: 640px) {
  .legal { padding: 110px 0 60px; }
  .legal h1 { font-size: 1.75rem; }
}
