.legal-layout{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:3rem;align-items:start}.legal-toc{position:sticky;top:calc(var(--header-h) + 16px);border-right:1px solid var(--line-strong);padding-right:1.5rem}.legal-toc h2{font-size:1.5rem;margin-bottom:.8rem;padding-bottom:.8rem;border-bottom:1px solid var(--brass)}.legal-toc ul{list-style:none;margin:0;padding:0}.legal-toc li{margin:0;border-bottom:1px solid var(--line)}.legal-toc button{display:block;width:100%;min-height:44px;padding:.5rem .6rem;border:0;background:none;text-align:left;color:var(--ink);font:500 1.05rem/1.25 var(--serif);cursor:pointer;border-radius:2px}.legal-toc button:hover,.legal-toc button[aria-current=true]{background:var(--olive-tint);color:var(--olive-dark)}.legal-body{max-width:46rem;counter-reset:legal}.legal-meta{margin:0 0 1.5rem;padding:.8rem 1rem;border:1px solid var(--line-strong);background:var(--paper);border-radius:var(--radius);font-size:.95rem;color:var(--ink-soft)}.legal-section{padding-top:.25rem;margin-bottom:1.75rem;scroll-margin-top:calc(var(--header-h) + 16px)}.legal-section h2{display:flex;align-items:baseline;gap:.8rem;margin:0 0 .8rem;padding-bottom:.5rem;border-bottom:1px solid var(--line-strong);font-size:clamp(1.5rem,2.6vw,1.9rem)}.legal-numbered .legal-section h2:before{counter-increment:legal;content:counter(legal) ".";color:var(--brass);flex:none}.legal-section:focus{outline:none}.legal-section:focus-visible{outline:3px solid #1d5fbf;outline-offset:6px}.legal-section ul{margin-bottom:1em}.legal-links{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1rem;margin-top:2.5rem;padding-top:1.25rem;border-top:1px solid var(--line-strong)}.legal-links em{font:italic 500 1.15rem var(--serif);color:var(--ink-soft)}@media(max-width:960px){.legal-layout{grid-template-columns:minmax(0,1fr);gap:1.5rem}.legal-toc{position:static;border-right:0;padding-right:0}.legal-toc ul{display:flex;flex-wrap:wrap;gap:.5rem}.legal-toc li{border:0}.legal-toc button{border:1px solid var(--line-strong);background:var(--paper);width:auto;padding:.4rem .9rem}}
