/* Long-form pages (privacy, terms) on the v4 site style. Loaded after
   /css/v4.css; uses its tokens, so light and dark follow the device. */
.legal{display:grid;grid-template-columns:230px minmax(0,1fr);gap:56px;align-items:start;padding-block:56px 90px}
.legal .toc{position:sticky;top:104px;max-height:calc(100vh - 130px);overflow:auto;padding-right:6px}
.legal .toc b{display:block;font-family:var(--display);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--brand-deep);margin-bottom:12px}
.legal .toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.legal .toc a{display:block;padding:6px 10px;border-radius:var(--r-chip-2);color:var(--ink-2);text-decoration:none;font-size:14px;line-height:1.35}
.legal .toc a:hover{background:var(--wash);color:var(--ink)}
.legal .toc a.on{background:var(--wash);color:var(--ink);font-weight:700}
.doc{max-width:74ch;min-width:0;font-size:17px;color:var(--ink-2);overflow-wrap:anywhere}
.doc section{scroll-margin-top:104px}
.doc section + section{margin-top:44px;padding-top:40px;border-top:1px solid var(--hair)}
.doc h2{font-size:clamp(24px,2.6vw,30px);font-weight:900;color:var(--ink);margin-bottom:16px;letter-spacing:-.01em}
.doc h3{font-size:19px;font-weight:700;color:var(--ink);margin:26px 0 10px}
.doc h4{font-size:17px;color:var(--ink);margin:18px 0 8px}
.doc p{margin:0 0 14px}
.doc ul,.doc ol{margin:0 0 16px;padding-left:22px}
.doc li{margin-bottom:8px}
.doc li::marker{color:var(--brand-deep)}
.doc strong{color:var(--ink)}
.doc a{color:var(--brand-deep);font-weight:700}
.doc .summary{background:var(--surface);border-radius:var(--r-soft-2);padding:22px 26px;margin:18px 0 22px;color:var(--ink)}
.doc .summary h3{margin-top:0}
.doc .summary ul{margin:0;padding-left:20px}
.doc .tablewrap{overflow-x:auto;margin:18px 0 22px;border-radius:var(--r-soft-1);box-shadow:var(--shadow)}
.doc table{width:100%;border-collapse:collapse;background:var(--paper);font-size:15px;min-width:600px;overflow-wrap:normal}
.doc th:first-child,.doc td:first-child{min-width:130px}
.doc th,.doc td{padding:12px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--hair)}
.doc thead th{font-family:var(--display);background:var(--band);color:#fff}
.doc tbody tr:nth-child(2n) td{background:var(--paper-2)}
.doc .updated{margin-top:44px;padding-top:20px;border-top:1px solid var(--hair);font-size:15px}
.legalhero .lede b{color:var(--ink)}
@media (max-width:900px){
  .legal{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:32px}
  .legal .toc{position:static;max-height:none;background:var(--paper-2);border-radius:var(--r-soft-3);padding:18px}
  .legal .toc ol{grid-template-columns:1fr 1fr;gap:2px 10px}
  .doc{font-size:16px}
}
@media (max-width:520px){.legal .toc ol{grid-template-columns:1fr}}
@media print{.legal .toc,.gbar,.navshell,.drawer,.scrim,footer{display:none!important}.legal{display:block}}
