:root{
  --paper:#F4F3F0; --surface:#FFFFFF; --sand:#E8E4DB;
  --ink:#121213; --ink-2:#3B3C3E; --mute:#8B8A86; --hair:#DFDCD4;
  --accent:#4E6E5D;
}
*{ margin:0; padding:0; box-sizing:border-box; }
body{ background:var(--paper); color:var(--ink);
      font-family:'Inter Tight',system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
      font-size:17px; line-height:1.68; -webkit-font-smoothing:antialiased; }
h1,h2,h3{ font-family:'Bricolage Grotesque','Inter Tight','Helvetica Neue',Arial,sans-serif;
          font-weight:600; letter-spacing:-.035em; line-height:1.02; }
a{ color:var(--ink); text-decoration:underline; text-underline-offset:3px; text-decoration-color:var(--hair); }
a:hover{ text-decoration-color:var(--ink); }
img,svg{ display:block; max-width:100%; }
:focus-visible{ outline:2px solid var(--accent); outline-offset:3px; }
::selection{ background:var(--ink); color:var(--paper); }

.wrap{ max-width:820px; margin:0 auto; padding:0 clamp(20px,5vw,32px); }

.legal-head{ padding:22px 0; border-bottom:1px solid var(--hair); }
.legal-head .wrap{ display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.legal-head svg{ height:40px; width:auto; color:var(--ink); }
.legal-head a{ text-decoration:none; }
.legal-head a.back{ font-size:11.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--mute); }
.legal-head a.back:hover{ color:var(--ink); }

main{ padding:clamp(50px,8vw,90px) 0 clamp(70px,9vw,110px); }
main h1{ font-size:clamp(38px,6.5vw,68px); margin-bottom:10px; }
main .lead{ font-size:11.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--mute); margin-bottom:44px; }
main h2{ font-size:24px; margin:40px 0 10px; }
main h3{ font-size:19px; margin:24px 0 6px; }
main p{ margin-bottom:12px; color:var(--ink-2); }
main ul, main ol{ margin:0 0 14px 20px; color:var(--ink-2); }
main li{ margin-bottom:6px; }
main address{ font-style:normal; margin-bottom:12px; color:var(--ink-2); }

.note{ background:var(--surface); border:1px solid var(--hair); border-left:2px solid var(--accent);
       padding:18px 20px; margin:28px 0; font-size:15px; color:var(--ink-2); }
.note strong{ color:var(--ink); }
.fill{ background:var(--sand); padding:1px 7px; font-size:.95em; color:var(--ink); }

footer{ border-top:1px solid var(--hair); padding:28px 0; font-size:13.5px; color:var(--mute); }
footer .wrap{ display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; }
footer a{ margin-left:22px; text-decoration:none; color:var(--mute); }
footer a:hover{ color:var(--ink); }
