/* Legal pages — readable, mobile-first, matches site palette */
:root{
  --white:#FFFFFF;
  --gray:#F4F4F4;
  --ink:#171A20;
  --muted:#5C5E62;
  --blue:#3E6AE1;
  --blue-hover:#3457B2;
  --pad:clamp(16px,4vw,40px);
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",Helvetica,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--white);
  color:var(--ink);
  font-family:var(--font);
  font-size:16px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--blue-hover);text-decoration:underline}

.legal-nav{
  position:sticky;top:0;z-index:10;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  height:52px;padding:0 var(--pad);
  background:rgba(255,255,255,.94);
  backdrop-filter:saturate(180%) blur(12px);
  -webkit-backdrop-filter:saturate(180%) blur(12px);
  border-bottom:1px solid #eee;
  font-size:13px;font-weight:500;letter-spacing:.04em;
}
.legal-nav .brand{color:var(--ink);text-decoration:none}
.legal-nav .brand:hover{text-decoration:none;opacity:.8}
.legal-nav .back{color:var(--muted);font-weight:400}
.legal-nav .links{display:flex;flex-wrap:wrap;gap:12px 18px;font-size:12px}
.legal-nav .links a{color:var(--muted)}
.legal-nav .links a:hover,.legal-nav .links a.is-current{color:var(--blue);text-decoration:none}

.legal-wrap{
  max-width:720px;
  margin:0 auto;
  padding:40px var(--pad) 64px;
}
.legal-wrap h1{
  font-size:clamp(26px,5vw,34px);
  font-weight:500;
  letter-spacing:-.01em;
  line-height:1.25;
  margin-bottom:8px;
}
.meta{
  color:var(--muted);
  font-size:14px;
  margin:16px 0 28px;
}
.placeholder-box{
  background:#FFF8E6;
  border:1px solid #F0D78C;
  border-radius:6px;
  padding:14px 16px;
  font-size:14px;
  line-height:1.55;
  margin:0 0 28px;
  color:var(--ink);
}
.placeholder-box code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:13px;
  background:rgba(0,0,0,.06);
  padding:1px 5px;
  border-radius:3px;
}

.legal-wrap h2{
  font-size:18px;
  font-weight:600;
  margin:32px 0 10px;
  letter-spacing:-.01em;
}
.legal-wrap h3{
  font-size:16px;
  font-weight:600;
  margin:20px 0 8px;
}
.legal-wrap p{margin:0 0 12px}
.legal-wrap ul,.legal-wrap ol{
  margin:0 0 14px;
  padding-left:1.35em;
}
.legal-wrap li{margin:0 0 6px}
.legal-wrap li::marker{color:var(--muted)}

.toc{
  background:var(--gray);
  border-radius:6px;
  padding:16px 18px;
  margin:0 0 28px;
  font-size:14px;
}
.toc strong{display:block;margin-bottom:8px;font-weight:500}
.toc ol{margin:0;padding-left:1.2em}
.toc li{margin:4px 0}
.toc a{color:var(--ink)}
.toc a:hover{color:var(--blue)}

.legal-footer{
  background:var(--gray);
  padding:28px var(--pad) 36px;
  text-align:center;
  font-size:12px;color:var(--muted);line-height:1.7;
}
.legal-footer a{color:var(--muted)}
.legal-footer a:hover{color:var(--blue)}
.legal-footer .sep{margin:0 6px;opacity:.5}
.legal-footer .note{margin-top:10px;max-width:520px;margin-left:auto;margin-right:auto;opacity:.85}

@media(max-width:560px){
  .legal-nav .links{display:none}
  .legal-wrap{padding-top:28px}
  body{font-size:17px}
}
