/* Public legal pages: /terms, /privacy, /refund, /contact. Loaded after landing.css and uses its tokens.
   The review notice is the single .legal-review-notice element at the top of each page (RUNBOOK: "Public legal pages"). */
.legal-main{width:min(860px,calc(100% - 32px));margin-inline:auto;padding-block:40px 80px}
.legal-review-notice{margin:0 0 32px;padding:14px 18px;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;border:1px solid var(--gold);border-radius:14px;background:var(--gold-soft);color:var(--text);font-size:14px;line-height:1.8}
.legal-review-notice strong{color:var(--gold);font-weight:900}
.legal-head{padding-bottom:24px;border-bottom:1px solid var(--line)}
.legal-head h1{margin:0;font-size:clamp(30px,4.2vw,46px);line-height:1.3;letter-spacing:-.02em}
.legal-meta{margin:12px 0 0;color:var(--quiet);font-size:13px}
.legal-lead{margin:18px 0 0;color:var(--muted);font-size:17px;line-height:1.9}
.legal-toc{margin-top:28px;padding:16px 20px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.legal-toc h2{margin:0 0 4px;color:var(--muted);font-size:14px;font-weight:800}
.legal-toc ol{margin:0;padding:0;list-style:none;columns:2;column-gap:28px}
.legal-toc li{break-inside:avoid}
.legal-toc a{min-height:44px;display:flex;align-items:center;color:var(--text);font-size:14px;font-weight:700;text-decoration:none}
.legal-toc a:hover{color:var(--gold)}
.legal-section{margin-top:40px;scroll-margin-top:96px}
.legal-section h2{margin:0 0 12px;font-size:clamp(21px,2.4vw,26px);line-height:1.5}
.legal-section h3{margin:22px 0 8px;font-size:17px;line-height:1.6}
.legal-section p{margin:0 0 12px}
.legal-section ul,.legal-section ol{margin:0 0 12px;padding-inline-start:22px}
.legal-section li{margin-bottom:8px}
.legal-section a,.legal-lead a{color:var(--gold);text-underline-offset:3px}
.legal-note{color:var(--muted);font-size:14px}
.legal-limit{margin:16px 0;padding:14px 18px;border:1px solid var(--line-strong);border-radius:14px;background:var(--surface)}
.legal-limit p:last-child,.legal-limit ul:last-child{margin-bottom:0}
.legal-quote{margin:12px 0 16px;padding:12px 18px;border-inline-start:3px solid var(--gold);border-radius:10px;background:var(--surface)}
.legal-quote blockquote,.legal-quote p{margin:0}
.legal-quote figcaption{margin-top:6px;color:var(--quiet);font-size:13px}
.legal-section .legal-cards{margin:0 0 12px;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.legal-cards>li{margin:0;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.legal-cards h3{margin:0 0 6px;font-size:16px}
.legal-cards p{margin:0 0 6px;color:var(--muted);font-size:14px}
.legal-cards p:last-child{margin-bottom:0}
.legal-cards .legal-tag{color:var(--quiet);font-size:13px}
.legal-facts{margin:0 0 12px;display:grid;grid-template-columns:minmax(150px,230px) minmax(0,1fr);border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}
.legal-facts dt,.legal-facts dd{margin:0;padding:12px 16px;border-top:1px solid var(--line)}
.legal-facts dt:first-of-type,.legal-facts dt:first-of-type+dd{border-top:0}
.legal-facts dt{color:var(--muted);font-size:14px;font-weight:800}
.legal-todo{padding:0 4px;border:1px dashed var(--gold);border-radius:6px;background:var(--gold-soft);color:var(--text);font-weight:800;-webkit-box-decoration-break:clone;box-decoration-break:clone}
@media(max-width:760px){.legal-main{width:min(100% - 24px,860px);padding-block:28px 60px}.legal-lead{font-size:16px}.legal-toc ol{columns:1}.legal-section .legal-cards{grid-template-columns:1fr}.legal-facts{grid-template-columns:1fr}.legal-facts dd{padding-top:0;border-top:0}}
