/* legal pages — extends landing-v5.css */
body.legal,.legal{background:var(--bone)}
.lhero{padding:74px 0 54px;position:relative;overflow:hidden}
.lhero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--lineD) 1px,transparent 1px),linear-gradient(90deg,var(--lineD) 1px,transparent 1px);background-size:74px 74px;opacity:.4;mask-image:radial-gradient(ellipse 70% 80% at 30% 40%,#000,transparent 78%);pointer-events:none}
.lhero .wrap{position:relative;z-index:2}
.lhero h1{font-size:clamp(38px,5vw,62px);font-weight:800;margin:20px 0 0}
.lhero p{font-size:17px;color:var(--dim);max-width:560px;margin:20px 0 0;text-wrap:pretty}
.lmeta{display:flex;gap:26px;flex-wrap:wrap;margin-top:28px;font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--faint);letter-spacing:.04em}
.lmeta b{color:var(--dim);font-weight:400}
.lbody{display:grid;grid-template-columns:236px 1fr;gap:64px;align-items:start;padding:70px 30px 110px}
.toc{position:sticky;top:96px}
.toc h5{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--faint);margin:0 0 14px;font-weight:500}
.toc a{display:block;font-size:14px;color:var(--muted);padding:6px 0 6px 14px;border-left:2px solid var(--line);transition:color .18s,border-color .18s}
.toc a:hover{color:var(--text);border-color:var(--em)}
.doc{max-width:680px}
.doc section{padding:0;scroll-margin-top:100px}
.doc section+section{margin-top:52px}
.doc h2{font-size:26px;letter-spacing:-.03em;margin:0 0 16px;display:flex;gap:14px;align-items:baseline}
.doc h2 i{font-family:'IBM Plex Mono',monospace;font-style:normal;font-size:13px;font-weight:500;color:var(--em2);letter-spacing:0}
.doc h3{font-size:17px;letter-spacing:-.02em;margin:26px 0 10px}
.doc p{font-size:16px;color:var(--muted);margin:0 0 14px;line-height:1.65;text-wrap:pretty}
.doc ul{margin:0 0 14px;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.doc ul li{font-size:15.5px;color:var(--muted);line-height:1.6;padding-left:20px;position:relative}
.doc ul li::before{content:"";position:absolute;left:2px;top:10px;width:6px;height:6px;border-radius:2px;background:var(--mint);transform:rotate(45deg)}
.doc strong{color:var(--text);font-weight:600}
.doc a{text-decoration:underline;text-underline-offset:2px}
.note{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:24px 26px;margin:0 0 30px}
.note p:last-child{margin-bottom:0}
.note .lab{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--em);margin-bottom:10px}
.tbl{width:100%;border-collapse:collapse;margin:4px 0 16px;font-size:14.5px}
.tbl th{text-align:left;font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);font-weight:500;padding:0 14px 10px 0;border-bottom:1px solid var(--line)}
.tbl td{padding:13px 14px 13px 0;border-bottom:1px solid var(--line);color:var(--muted);vertical-align:top;line-height:1.5}
.tbl td:first-child{color:var(--text);font-weight:600;width:34%}
.lcta{background:var(--ink);color:var(--cream);border-radius:28px;padding:44px;margin-top:60px;display:flex;justify-content:space-between;align-items:center;gap:28px;flex-wrap:wrap}
.lcta h3{font-size:24px;margin:0}
.lcta p{font-size:15px;color:var(--dim);margin:8px 0 0}
@media(max-width:900px){.lbody{grid-template-columns:1fr;gap:36px;padding:44px 30px 80px}.toc{position:static}.toc a{display:inline-block;border-left:none;border-bottom:2px solid var(--line);padding:6px 14px 6px 0;margin-right:6px}}
@media print{nav,.toc,.lcta,footer .fcols{display:none}body.legal{background:#fff}.lhero{background:#fff;color:#000;padding:0 0 24px}.lhero::after{display:none}.lhero h1,.lhero p{color:#000}.lbody{grid-template-columns:1fr;padding:0!important}.doc{max-width:none}}
