/* Shared layout for the public legal documents. Inline CSS is blocked by CSP. */
body.legal-document{background:#1b1b1b;color:#f5f5f5;font:16px/1.55 Inter,"Segoe UI",Arial,sans-serif}
body.legal-document::before{display:none}
body.legal-document .topline{background:#222;border-color:#303030}
body.legal-document header.head{position:relative;top:auto;z-index:30;width:min(1660px,calc(100% - 64px));height:auto;min-height:84px;padding:0;margin:0 auto;border:0;background:#1b1b1b;backdrop-filter:none}
body.legal-document .head .brand{color:#fff}
/* Keep the wordmark joined on legal pages; the shared header font can add a
   visible gap between the text node and the coloured span at some sizes. */
body.legal-document .brand{display:inline-flex;align-items:baseline;gap:0;white-space:nowrap;letter-spacing:-1.8px}
body.legal-document .brand span{display:inline-block;margin-left:-1.5px;letter-spacing:-1.8px}
body.legal-document .site-footer .brand{letter-spacing:-1.8px}
body.legal-document .site-footer .brand span{margin-left:-1.5px}
body.legal-document .head nav{color:#f5f5f5}
body.legal-document .head .actions{justify-content:flex-end}
body.legal-document .head .login{background:#f7f7f7;color:#191919}
body.legal-document .head .cta{background:#9cf875;color:#172016}
body.legal-document main.legal-page{display:block;width:min(1260px,calc(100% - 64px));max-width:none;margin:72px auto 88px;padding:0;background:none}
.legal-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:46px;align-items:start}
.legal-content{min-width:0}
.legal-content>h1{max-width:none;margin:0 0 12px;color:#f7f7f7;font-size:clamp(32px,3.3vw,44px);line-height:1.16;letter-spacing:-1.2px;font-weight:750}
.legal-content .legal-subtitle{margin:0 0 30px;color:#a7a7a7;font-size:16px}
.legal-content .legal-intro{padding:16px 20px;border:1px solid #3d3d3d;border-radius:12px;background:#272727;color:#cecece}
.legal-content article{color:#e1e1e1}
.legal-content article h2{max-width:none;margin:38px 0 15px;color:#f5f5f5;font-size:clamp(22px,2.1vw,29px);line-height:1.3;letter-spacing:-.35px}
.legal-content article p,.legal-content article li{font-size:16px;line-height:1.72;color:#d1d1d1}
.legal-content article p{margin:0 0 16px}
.legal-content article ul{margin:0 0 20px;padding-left:24px}
.legal-content article li{padding-left:4px;margin-bottom:6px}
.legal-content article a{color:#a3fb78;text-decoration:underline;text-underline-offset:3px}
.legal-content article a:hover,.legal-content article a:focus-visible{color:#cbffb6}
.legal-nav{position:sticky;top:24px;display:grid;gap:10px}
.legal-nav>a{display:block;padding:13px 15px;border:1px solid #343434;border-radius:12px;background:#262626;font-size:15px;font-weight:650;line-height:1.3;transition:background .18s,border-color .18s,color .18s}
.legal-nav>a:hover,.legal-nav>a:focus-visible{background:#303030;border-color:#88d96a;color:#a3fb78}
.legal-nav>a.current{border-color:#86d468;color:#a3fb78}
.legal-toc{padding:17px 15px;border:1px solid #3c3c3c;border-radius:16px;background:#242424}
.legal-toc strong{display:block;margin-bottom:11px;font-size:15px;color:#f6f6f6}
.legal-toc a{display:block;overflow:hidden;padding:7px 0;color:#d2d2d2;font-size:13px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap;transition:color .18s}
.legal-toc a:hover,.legal-toc a:focus-visible{color:#a3fb78}
body.legal-document footer.site-footer{border-top:1px solid #383838}
@media(max-width:900px){body.legal-document main.legal-page{margin-top:46px}.legal-grid{grid-template-columns:1fr;gap:28px}.legal-nav{position:static;grid-row:1;grid-template-columns:repeat(2,minmax(0,1fr))}.legal-toc{grid-column:1/-1}.legal-content{grid-row:2}}
@media(max-width:600px){body.legal-document header.head,body.legal-document main.legal-page{width:calc(100% - 32px)}body.legal-document header.head{padding-block:18px}.legal-nav{grid-template-columns:1fr}.legal-content>h1{font-size:32px}.legal-content article h2{font-size:23px}}
