/* Policy pages: privacy, terms, accessibility, disclaimer. Plain readable legal layout. */
/* Round 3 (R3-C, R3-S): the document reads on white between the dark header and footer; one section rhythm; red solid rules. */
.legal { padding: var(--section) 0; }
.legal__doc { max-width: 72ch; }
.legal__doc h1 { margin-bottom: 16px; }
.legal__doc .legal__updated { font-size: 15px; color: var(--muted); margin-bottom: 28px; }
.legal__doc .legal__intro { font-size: clamp(17px, 1.3vw, 20px); color: var(--cream); }
.legal__doc h2 { font: 700 clamp(20px, 1.6vw, 23px)/1.3 var(--body); color: var(--cream); margin: 38px 0 12px; }
.legal__doc h2::before { content: ""; display: block; width: 44px; height: 3px; border-radius: 3px; background: var(--accent); margin-bottom: 14px; }
.legal__doc p { margin: 0 0 16px; color: var(--text); }
.legal__doc .eyebrow { color: var(--accent); margin-bottom: 12px; }
.legal__doc p strong { color: var(--cream); }
.legal__doc ul { margin: 0 0 16px; padding-left: 1.3em; }
.legal__doc li { margin-bottom: 8px; }
.legal__doc li::marker { color: var(--accent); }
.legal__doc a { color: var(--accent); text-underline-offset: 3px; overflow-wrap: anywhere; }
.legal__doc a:hover { color: #8E1E10; }
.legal__related { margin-top: 44px; padding-top: 24px; border-top: 1px solid var(--line); font-size: 15px; color: var(--muted); }
.legal__related ul { display: flex; flex-wrap: wrap; gap: 6px 26px; list-style: none; margin: 10px 0 0; padding: 0; }
.legal__related a { display: inline-block; padding: 10px 0; color: var(--cream); text-decoration: none; border-bottom: 1px solid #CFCAC6; line-height: 1.2; }
.legal__related a:hover { border-color: var(--accent); }
.legal__related a[aria-current="page"] { color: var(--accent); border-color: var(--accent); }
