*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: rgb(251, 251, 250); }
a { color: inherit; text-decoration: none; }
a:hover { color: oklch(0.58 0.17 38); }
a:focus-visible { outline: 2px solid oklch(0.58 0.17 38); outline-offset: 3px; border-radius: 4px; }
img { max-width: 100%; }

/* legal text: the design board's article styles, applied to the policy markup */
.legal-body h1 { margin: 0 0 16px; font-size: clamp(40px, 6cqw, 76px); line-height: 0.98; letter-spacing: -0.045em; font-weight: 700; color: rgb(22, 24, 26); text-wrap: balance; }
.legal-body .meta { margin: 0 0 40px; font-family: "JetBrains Mono", monospace; font-size: 12px; color: rgb(122, 126, 130); }
.legal-body h2 { margin: 48px 0 14px; padding-top: 28px; border-top: 1px solid rgb(227, 227, 222); font-size: 24px; letter-spacing: -0.03em; line-height: 1.2; color: rgb(22, 24, 26); }
.legal-body p { margin: 0 0 18px; }
.legal-body ul { margin: 0 0 18px; padding-left: 20px; display: flex; flex-direction: column; gap: 6px; }
.legal-body a { color: oklch(0.52 0.17 38); }
.legal-body a:hover { text-decoration: underline; }
.legal-body code { font-family: "JetBrains Mono", monospace; font-size: 0.85em; background: rgb(240, 240, 237); padding: 1px 5px; border-radius: 4px; }
