.page { min-height: 100vh; background: var(--bg, #F7F6F4); }
.legal { padding: 3.2vw 6.4vw 8vw; }
.legal-title {
  font-family: 'Noto Serif SC', serif; font-weight: 700;
  font-size: 5.867vw; color: var(--ink, #1B1B1A); margin-bottom: 1.6vw;
}
.legal-updated { font-size: 3.2vw; color: var(--meta, #9C9C97); margin-bottom: 5.333vw; }
.legal-sec { margin-bottom: 4.8vw; }
.legal-h {
  font-size: 4vw; font-weight: 700; color: var(--ink, #1B1B1A); margin-bottom: 2.133vw;
}
.legal-p {
  font-size: 3.6vw; line-height: 1.85; color: var(--body, #2C2C2A);
  margin-bottom: 1.6vw; text-align: left;
}
