:root { --ink:#06140b; --forest:#155c2c; --lime:#c9f53f; --paper:#fbf9f6; --text:#203127; --muted:#5c685f; --line:#dce1d9; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--text); font-family:"Inter Tight",Arial,sans-serif; font-size:16px; line-height:1.65; }
a { color:var(--forest); }
a:focus-visible { outline:2px solid var(--forest); outline-offset:3px; border-radius:3px; }
.skip { position:absolute; left:1rem; top:-4rem; z-index:10; padding:.65rem .9rem; background:var(--forest); color:#fff; text-decoration:none; }
.skip:focus { top:1rem; }
.legal-nav { border-bottom:1px solid var(--line); background:#fff; }
.legal-nav__inner { display:flex; align-items:center; justify-content:space-between; gap:1rem; max-width:1120px; min-height:70px; margin:auto; padding:1rem 1.5rem; }
.legal-brand img { display:block; width:150px; height:auto; }
.legal-nav__inner > a:last-child { font-size:.9rem; font-weight:700; text-decoration:none; }
.legal { width:min(100% - 2.5rem, 760px); margin:0 auto; padding:clamp(3.5rem,8vw,6rem) 0 5rem; }
.eyebrow { margin:0 0 .8rem; color:var(--forest); font-size:.75rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
h1,h2 { color:var(--ink); line-height:1.1; }
h1 { margin:0; font-size:clamp(2.8rem,7vw,4.8rem); letter-spacing:-.055em; }
h2 { margin:2.75rem 0 .7rem; font-size:1.35rem; }
p,li { max-width:72ch; }
.updated { margin:1rem 0 2.5rem; color:var(--muted); font-size:.92rem; }
.intro { margin:0; color:#35463b; font-size:1.18rem; }
ul { padding-left:1.25rem; }
.note { margin-top:2.75rem; padding:1.15rem 1.25rem; border:1px solid var(--line); border-radius:.7rem; background:#fff; color:var(--muted); font-size:.9rem; }
.legal-footer { padding:2rem 1.5rem 3rem; border-top:1px solid var(--line); color:var(--muted); font-size:.85rem; text-align:center; }
.legal-footer p { margin:.25rem auto; }
.legal-footer a { margin:0 .45rem; }
@media (max-width:600px) { .legal-nav__inner { min-height:64px; padding-inline:1rem; } .legal-brand img { width:135px; } .legal { width:min(100% - 2rem,760px); padding-top:3.25rem; } h2 { margin-top:2.25rem; } }
