@font-face{
  font-family:'Work Sans';
  font-style:normal; font-weight:100 900; font-display:swap;
  src:url('../assets/fonts/WorkSans.woff2') format('woff2');
}
@font-face{
  font-family:'Source Serif 4';
  font-style:normal; font-weight:100 900; font-display:swap;
  src:url('../assets/fonts/SourceSerif4-Roman.woff2') format('woff2');
}
@font-face{
  font-family:'Source Serif 4';
  font-style:italic; font-weight:100 900; font-display:swap;
  src:url('../assets/fonts/SourceSerif4-Italic.woff2') format('woff2');
}

:root{
  --cream:#F3EBDD; --cream-deep:#ECE1CD;
  --graphite:#3B352E; --graphite-soft:#554E43;
  --amber:#C98A4E; --amber-deep:#A8703A; --muted:#8C7C68;
  --line:rgba(59,53,46,0.14);
  --serif:'Source Serif 4', Georgia, serif;
  --sans:'Work Sans', -apple-system, sans-serif;
}

*,*::before,*::after{ box-sizing:border-box; }
html,body{ margin:0; padding:0; }
body{
  background:var(--cream); color:var(--graphite);
  font-family:var(--serif); font-size:17px; line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
.wrap{ max-width:720px; margin:0 auto; padding:0 28px; }

header.legal-head{
  padding:56px 0 40px 0; border-bottom:1px solid var(--line); margin-bottom:48px;
}
.back{
  font-family:var(--sans); font-size:13.5px; font-weight:500;
  color:var(--amber-deep); text-decoration:none;
  display:inline-flex; align-items:center; gap:8px; margin-bottom:28px;
}
.back:hover{ color:var(--graphite); }
h1{
  font-family:var(--sans); font-weight:700; font-size:clamp(28px,4.5vw,40px);
  line-height:1.1; margin:0 0 12px 0; text-wrap:balance;
}
.updated{
  font-family:var(--sans); font-size:13px; color:var(--muted); margin:0;
}

main{ padding-bottom:80px; }
h2{
  font-family:var(--sans); font-weight:700; font-size:20px;
  margin:44px 0 14px 0; text-wrap:balance;
}
p{ margin:0 0 18px 0; max-width:66ch; }
ul{ margin:0 0 18px 0; padding-left:22px; }
li{ margin-bottom:10px; max-width:64ch; }
strong{ font-weight:700; }
a{ color:var(--amber-deep); }

.callout{
  background:var(--cream-deep); border-left:3px solid var(--amber);
  border-radius:4px; padding:22px 26px; margin:28px 0;
}
.callout p:last-child{ margin-bottom:0; }
.callout .label{
  font-family:var(--sans); font-size:11.5px; font-weight:600;
  letter-spacing:0.16em; text-transform:uppercase; color:var(--amber-deep);
  margin-bottom:10px;
}

footer.legal-foot{
  border-top:1px solid var(--line); padding:28px 0 60px 0;
  font-family:var(--sans); font-size:13px; color:var(--muted);
  display:flex; gap:24px; flex-wrap:wrap;
}
footer.legal-foot a{ color:var(--muted); text-decoration:none; }
footer.legal-foot a:hover{ color:var(--graphite); }

.todo{
  background:#FBEAD6; border:1px dashed var(--amber-deep);
  border-radius:4px; padding:14px 18px; margin:22px 0;
  font-family:var(--sans); font-size:13.5px; color:var(--amber-deep);
}
