/* Legal pages (Privacy Policy, Terms of Service) */
html { scroll-behavior: smooth; }
.legal { background: linear-gradient(180deg,#ffffff,#f4faf1); padding: 10px 32px 72px; }
.legal__inner { max-width: 1140px; margin: 0 auto; display: flex; flex-wrap: wrap; gap: 28px; align-items: flex-start; }
.legal__toc { flex: 1 1 240px; max-width: 100%; position: sticky; top: 90px; padding: 22px; border-radius: 18px; background: #fff; border: 1px solid #e1eedc; box-shadow: 0 10px 30px rgba(16,80,36,0.08); display: flex; flex-direction: column; gap: 4px; }
.legal__toc-title { font-size: 13px; font-weight: 800; letter-spacing: 0.06em; color: #13793a; margin-bottom: 6px; }
.legal__toc a { padding: 7px 0; font-size: 15px; font-weight: 600; color: var(--ink-2); }
.legal__article { flex: 999 1 480px; min-width: 0; padding: 36px; border-radius: 18px; background: #fff; border: 1px solid #e1eedc; box-shadow: 0 10px 30px rgba(16,80,36,0.08); display: flex; flex-direction: column; gap: 28px; font-size: 16px; line-height: 1.65; color: var(--ink-2); }
.legal__sec { display: flex; flex-direction: column; gap: 8px; scroll-margin-top: 80px; }
.legal__sec h2 { margin: 0; font-size: 24px; font-weight: 800; color: var(--ink); }
.legal__sec p { margin: 0; }
.legal__sec a { color: #13793a; font-weight: 700; }
/* Once the list stacks above the article (container < 748px), stop it sticking over the text */
@media (max-width: 811.98px) {
  .legal__toc { position: static; }
}
