/* Legal pages (privacy, agreement) */
.legal {
  min-height: 100vh;
  color: var(--ink, #efe9df);
  padding: 40px 20px 80px;
}
.legal__wrap { max-width: 820px; margin: 0 auto; }
.legal__top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 28px; }
.legal__logo {
  font-family: var(--font-display, "Cinzel", serif);
  letter-spacing: .18em; color: var(--gold-2, #f0d98a); text-decoration: none; font-size: 1.05rem;
}
.legal__back { color: var(--ink-mute, #a99fc0); text-decoration: none; font-size: .9rem; }
.legal__back:hover { color: var(--gold-2, #f0d98a); }
.legal h1 {
  font-family: var(--font-display, "Cinzel", serif);
  font-size: clamp(1.7rem, 4vw, 2.4rem); color: var(--ink, #efe9df); margin: 0 0 8px;
}
.legal__date { color: var(--ink-mute, #a99fc0); font-size: .9rem; margin: 0 0 28px; }
.legal h2 {
  font-family: var(--font-display, "Cinzel", serif);
  font-size: 1.25rem; color: var(--gold-2, #f0d98a); margin: 32px 0 12px;
  padding-top: 14px; border-top: 1px solid rgba(231,196,99,.14);
}
.legal h3 { font-size: 1.05rem; color: var(--ink, #efe9df); margin: 20px 0 8px; }
.legal p, .legal li { color: var(--ink-soft, #cfc7dd); line-height: 1.65; font-size: 1rem; }
.legal p { margin: 0 0 12px; }
.legal ul { margin: 0 0 14px; padding-left: 22px; }
.legal li { margin: 0 0 8px; }
.legal a { color: var(--gold-2, #f0d98a); text-decoration: underline; }
.legal b, .legal strong { color: var(--ink, #efe9df); }
.legal__req { margin-top: 30px; padding: 18px 20px; border: 1px solid rgba(231,196,99,.2); border-radius: 14px; background: rgba(255,255,255,.03); }
.legal__req p { margin: 0 0 4px; font-size: .95rem; }
