/* Legal document layouts. */
.legal-layout { align-items:start; }
.legal-document { max-width:900px; padding-bottom:70px; }
.legal-kicker { display:inline-block; color:var(--rose); font-size:11px; font-weight:900; letter-spacing:1.7px; text-transform:uppercase; }
.legal-meta { display:flex; flex-wrap:wrap; gap:8px; margin:18px 0 24px; color:var(--muted); font-size:12px; }
.legal-summary { margin:0 0 32px; padding:20px 22px; border:1px solid #efcdd6; border-radius:14px; background:linear-gradient(135deg,#fff8fa,#fff); }
.legal-summary > strong { display:block; color:var(--ink); font-size:12px; letter-spacing:.4px; text-transform:uppercase; }
.legal-summary p { margin:8px 0 5px; color:#493f47; font-size:15px; line-height:1.65; }
.legal-summary small { color:var(--muted); }
.legal-document section { scroll-margin-top:95px; }
.legal-document h2 { padding-top:8px; border-top:1px solid var(--line); }
.legal-document h3 { margin-bottom:4px; }
.legal-document ul { padding-left:22px; }
.legal-document li + li { margin-top:8px; }
.legal-document a { color:var(--rose); text-decoration:underline; text-underline-offset:3px; }
.legal-table-wrap { width:100%; margin:18px 0; overflow-x:auto; border:1px solid var(--line); border-radius:12px; }
.legal-table { width:100%; min-width:660px; border-collapse:collapse; font-size:13px; line-height:1.55; }
.legal-table th { padding:12px 14px; background:#fff3f6; color:var(--ink); text-align:left; vertical-align:top; }
.legal-table td { padding:13px 14px; border-top:1px solid var(--line); color:#574e56; vertical-align:top; }
.legal-callout { margin:22px 0; padding:17px 19px; border-left:4px solid var(--rose); border-radius:0 12px 12px 0; background:#fff6f8; }
.legal-callout p { margin:5px 0 0; font-size:14px; }
.legal-toc { max-height:calc(100vh - 125px); overflow:auto; padding-bottom:20px; }
.legal-toc a { line-height:1.35; }
.legal-toc-links { margin-top:20px; padding-top:12px; border-top:1px solid var(--line); }
.legal-toc-links a { color:var(--rose); font-weight:800; }
