/* Terms & privacy (legal.html): one drawing sheet on the mat, set for reading. Loaded after home.css. */
.legal { padding-top: clamp(24px, 4vw, 56px); }
.legal .paper { max-width: 980px; }
.legal :is(.legal-head, section, .legal-date) { max-width: 44em; margin-left: auto; margin-right: auto; }

.legal h1 { margin: 0 0 18px; font: 600 clamp(2.4rem, 5.4vw, 4.4rem)/1 var(--display); letter-spacing: -0.045em; }
.legal h1 em { font: italic var(--accent-weight) 1em/0.9 var(--accent); font-variation-settings: var(--accent-axes); letter-spacing: -0.01em; color: var(--green); }
.legal-toc { display: flex; flex-wrap: wrap; gap: 8px 22px; margin-top: 26px; padding-top: 16px; border-top: 1px solid rgba(16, 36, 30, 0.3);
  font: 500 0.75rem/1 var(--mono); letter-spacing: 0.12em; text-transform: uppercase; }
.legal-toc a { color: var(--green); text-decoration: none; }
.legal-toc a:hover { text-decoration: underline; text-underline-offset: 4px; }

.legal section { margin-top: clamp(48px, 6vw, 72px); scroll-margin-top: 24px; }
.legal h2 { padding-bottom: 14px; border-bottom: 2px solid var(--ink); }
.legal h3 { margin: 30px 0 8px; font-size: 1.125rem; }
.legal :is(p, ul) { margin: 0 0 12px; color: rgba(16, 36, 30, 0.86); text-wrap: pretty; }
.legal ul { padding-left: 1.2em; }
.legal li + li { margin-top: 6px; }
.legal li::marker { color: var(--green); }
.legal b { color: var(--ink); font-weight: 600; }
.legal :is(p, li) a { color: var(--green); text-underline-offset: 3px; }
.legal-date { margin-top: 48px !important; font: 500 0.75rem/1.4 var(--mono); letter-spacing: 0.08em; text-transform: uppercase; color: rgba(16, 36, 30, 0.6) !important; }

@media (max-width: 760px) {
  .top nav a:not(.btn) { display: none; }
  .legal .paper-tb span:nth-child(n + 2) { display: none; }
}
