/* ============================================================
   Dues — legal document pages (privacy.html, terms.html)
   Layered on site.css: same tokens, fonts, nav,
   footer, and store badge. This file only styles the document.
   ============================================================ */

/* The legal pages load no JS, so the nav never gets .is-scrolled; give it a static edge. */
.nav{border-bottom:1px solid var(--line)}

.doc-hero{padding:calc(var(--section)*.55) 0 0}
.doc-hero h1{font:400 var(--fs-h2)/1.16 var(--font-display);letter-spacing:-.018em;text-wrap:balance}
.doc-hero__meta{margin-top:.75rem;font-size:var(--fs-small);color:var(--text-3)}

.doc{max-width:70ch;padding:2.5rem 0 var(--section)}
.doc>.lede{margin-bottom:1rem}
.doc p{margin:0 0 1rem;color:var(--text-2)}
.doc>p:first-of-type{color:var(--text)}
.doc ul,.doc ol{margin:0 0 1rem;padding-left:1.35rem;color:var(--text-2)}
.doc ul{list-style:disc}
.doc ol{list-style:decimal}
.doc li{margin-bottom:.5rem}
.doc li::marker{color:var(--burnt)}
.doc strong{color:var(--text)}
.doc a{color:var(--burnt);text-decoration:underline;text-underline-offset:2px}
.doc a:hover{color:var(--orange-hover)}

/* .section on the landing page carries huge padding-block; zero the bottom here and
   leave room under the sticky nav for TOC anchor jumps. */
.doc h2.section{font:400 var(--fs-h3)/1.28 var(--font-display);letter-spacing:-.01em;margin:2.75rem 0 .9rem;padding:1.5rem 0 0;border-top:1px solid var(--line);color:var(--text);scroll-margin-top:5.5rem}
.doc h2.section .num{display:inline-block;min-width:1.9rem;color:var(--burnt);font-variant-numeric:tabular-nums}
.doc h3{font:700 var(--fs-body)/1.3 var(--font-sans);margin:1.6rem 0 .6rem;color:var(--text)}

.toc{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.4rem 1.6rem;margin:1.75rem 0 1rem}
.toc h2{font:400 1.25rem/1.2 var(--font-display);margin:0 0 .75rem}
.toc ol{columns:2;column-gap:2rem;margin:0;padding-left:1.35rem;font-size:var(--fs-small)}
.toc li{margin-bottom:.35rem;break-inside:avoid}
.toc a{color:var(--text-2);text-decoration:none}
.toc a:hover{color:var(--burnt);text-decoration:underline}
@media (max-width:599px){.toc ol{columns:1}}

.table-wrap{overflow-x:auto;margin:0 0 1rem}
table.data{width:100%;border-collapse:collapse;font-size:var(--fs-small)}
table.data th{text-align:left;font:700 var(--fs-micro)/1.3 var(--font-sans);letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);padding:.55rem .75rem;border-bottom:1.5px solid var(--line-2)}
table.data td{padding:.6rem .75rem;border-bottom:1px solid var(--line);color:var(--text-2);vertical-align:top}
table.data td:first-child{color:var(--text);font-weight:700}

.callout{background:var(--tint);border-radius:var(--r-md);padding:1rem 1.25rem;margin:0 0 1rem}
.callout p{margin:0;color:var(--text)}

