.legal-page { min-height: 100vh; background: var(--wash); }
.legal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 76px;
}
.legal-back { font-size: 14px; }
.legal-card {
  margin-bottom: 40px;
  padding: clamp(20px, 5vw, 52px);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #fff;
  overflow-wrap: anywhere;
}
.legal-card h1 { margin: 0 0 12px; font-size: clamp(24px, 6vw, 48px); line-height: 1.08; hyphens: auto; }
.legal-card h2 { margin-bottom: 9px; font-size: clamp(21px, 4vw, 28px); line-height: 1.17; }
.legal-card p, .legal-card li { color: var(--muted); }
.legal-card strong { color: var(--ink); }
.legal-card p + p { margin-top: 8px; }
.legal-card section { margin-top: 26px; padding-top: 21px; border-top: 1px solid var(--line); }
.legal-card ul, .legal-card ol { margin-block: 8px 12px; padding-left: 22px; }
.legal-card li + li { margin-top: 5px; }
.legal-note { padding: 15px 17px; border-radius: 12px; background: #edf4ff; }
.legal-card table { width: 100%; margin-top: 12px; border-collapse: collapse; }
.legal-card th, .legal-card td { padding: 8px 12px; border-bottom: 1px solid var(--line); text-align: left; }
.legal-card th { background: var(--wash); }
.legal-card th:last-child, .legal-card td:last-child { text-align: right; }
.legal-docs { display: flex; flex-wrap: wrap; gap: 8px 16px; margin-top: 24px; font-size: 14px; }
.legal-card .text-link { text-decoration: underline; }
