:root {
  --navy: #10233f;
  --paper: #f4f1eb;
  --surface: #fffdf9;
  --ink: #172235;
  --muted: #626b78;
  --line: #dedbd3;
  --red: #e2574c;
}
* { box-sizing: border-box; }
html { background: var(--paper); color: var(--ink); font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
body { margin: 0; min-width: 320px; line-height: 1.6; }
a { color: var(--navy); }
.legal-header { background: var(--navy); color: white; }
.legal-header-inner { width: min(100% - 32px, 780px); margin: auto; padding: 22px 0 30px; }
.legal-brand { display: inline-flex; align-items: center; gap: 11px; color: white; font-size: 1.05rem; font-weight: 800; text-decoration: none; }
.legal-brand img { width: 48px; height: 48px; border-radius: 14px; background: white; }
.legal-header h1 { margin: 30px 0 6px; font-family: Georgia, "Times New Roman", serif; font-size: clamp(2rem, 9vw, 3.5rem); line-height: 1; }
.legal-header p { margin: 0; color: #cbd4df; }
.legal-main { width: min(100% - 32px, 780px); margin: 24px auto 44px; }
.legal-card { padding: clamp(20px, 5vw, 34px); border: 1px solid var(--line); border-radius: 22px; background: var(--surface); }
.legal-card h2 { margin: 30px 0 8px; font-family: Georgia, "Times New Roman", serif; font-size: 1.45rem; line-height: 1.2; }
.legal-card h2:first-child { margin-top: 0; }
.legal-card h3 { margin: 22px 0 6px; font-size: 1rem; }
.legal-card p, .legal-card li { color: var(--muted); }
.legal-card p { margin: 7px 0; }
.legal-card ul { padding-left: 20px; }
.legal-note { margin: 18px 0 !important; padding: 14px 16px; border-left: 4px solid var(--red); border-radius: 0 12px 12px 0; background: #fff3f1; color: var(--ink) !important; }
.legal-meta { color: #8b867d; font-size: .78rem; }
.legal-nav { display: flex; flex-wrap: wrap; gap: 9px 16px; margin-top: 26px; padding-top: 20px; border-top: 1px solid var(--line); font-size: .82rem; }
.legal-footer { padding: 0 16px 30px; text-align: center; color: #777; font-size: .75rem; }
.legal-footer a { margin: 0 6px; }
