:root{ --ink:#0a0a0a; --soft:#5f5f5f; --line:#e6e6e6; --surface:#f3f3f3; }
*,*::before,*::after{ box-sizing:border-box; margin:0; }
body{ font-family:"Onest",system-ui,sans-serif; color:var(--ink); background:#fff; line-height:1.65; -webkit-font-smoothing:antialiased; }
a{ color:inherit; }
:focus-visible{ outline:2px solid #8a8a8a; outline-offset:2px; }
.legal-top{ background:var(--ink); color:#fff; padding:1.25rem 1.5rem; display:flex; justify-content:space-between; align-items:center; gap:1rem; }
.legal-brand{ display:flex; align-items:center; gap:.5rem; font-weight:500; text-transform:uppercase; letter-spacing:.2em; text-decoration:none; font-size:.95rem; }
.legal-brand svg{ width:1.25rem; height:1.25rem; fill:none; stroke:currentColor; stroke-width:1.8; }
.legal-brand .thin{ opacity:.55; }
.legal-back{ font-size:.8rem; text-transform:uppercase; letter-spacing:.05em; text-underline-offset:.25rem; }
.legal{ max-width:46rem; margin:0 auto; padding:3.5rem 1.5rem 4rem; }
.legal h1{ font-size:clamp(2.2rem,6vw,3.5rem); font-weight:500; line-height:1; letter-spacing:-.02em; }
.legal .updated{ color:var(--soft); font-size:.85rem; margin-top:.75rem; }
.legal h2{ font-size:1.25rem; font-weight:500; margin-top:2.5rem; }
.legal p, .legal li{ margin-top:.75rem; color:#262626; }
.legal ul{ padding-left:1.25rem; }
.legal table{ width:100%; border-collapse:collapse; margin-top:1rem; font-size:.95rem; }
.legal th, .legal td{ text-align:left; padding:.6rem .75rem; border-bottom:1px solid var(--line); vertical-align:top; }
.legal th{ width:35%; font-weight:500; background:var(--surface); }
.pending{ background:#fff3c4; padding:0 .3rem; border-radius:.25rem; }
.legal-foot{ border-top:1px solid var(--line); padding:1.5rem; font-size:.85rem; color:var(--soft); display:flex; flex-wrap:wrap; gap:1.25rem; justify-content:center; }
