:root{
  --paper:#F5F2E8;
  --sticky:#FBF9EF;
  --ink:#26262B;
  --iris:#6C3FA8;
  --iris-press:#4B2D7F;
  --grey:#8B8A85;
  --dark:#2B2C30;
  --ridge:#C9C0A8;
  --cardline:#D6CCAB;
  --softline:#B5AC8F;
  --shade:#E4DEC7;
  --muted:#55534E;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:#F5F2E8;
  color:#26262B;
  font-family:"Segoe UI",system-ui,Roboto,-apple-system,sans-serif;
  font-size:16px;
  line-height:1.7;
  overflow-x:hidden;
}
a{color:#4B2D7F}
p{margin:0 0 18px}
h1,h2{margin:0;line-height:1.2}
strong{color:#26262B}

/* scope isolation: keep every content section see-through so the page band owns the surface */
.legal-page .legal-content section{
  background:transparent !important;
}

/* ============ LEGAL HEADER ============ */
.legal-head{
  background:#6C3FA8;
  color:#FBF9EF;
  padding:46px 24px 34px;
}
.legal-head h1{
  font-size:clamp(1.9rem,4.6vw,3rem);
  color:#FFFFFF;
  max-width:900px;
  margin:0 auto;
}
.legal-home{
  display:inline-block;
  color:#FBF9EF;
  font-weight:800;
  letter-spacing:.05em;
  margin:0 auto 18px;
  max-width:900px;
  text-align:left;
  text-decoration:none;
  background:#4B2D7F;
  padding:8px 14px;
  border-radius:3px;
}
.legal-home:hover{color:#FFFFFF}
.legal-update{
  margin:14px 0 0;
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
  color:#F5F2E8;
  font-size:.95rem;
  text-align:left;
}

/* ============ TOC ============ */
.legal-toc{
  max-width:880px;
  margin:0 auto;
  padding:38px 24px 10px;
}
.legal-toc h2{
  font-size:1.6rem;
  color:#26262B;
  margin:0 0 6px;
}
.legal-toc::before{
  content:"";
  display:block;
  height:6px;
  width:64px;
  background:#6C3FA8;
  border-radius:0 6px 6px 0;
  margin:0 0 18px;
}
.legal-toc ol{
  list-style:none;
  margin:14px 0 0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:8px 18px;
  counter-reset:legcount;
}
.legal-toc li{counter-increment:legcount;background:#FBF9EF;border:1px solid #D6CCAB;border-radius:4px}
.legal-toc li::before{
  content:counter(legcount);
  background:#6C3FA8;color:#FBF9EF;
  font-weight:800;font-size:.72rem;
  padding:2px 7px;margin-right:10px;border-radius:2px;
}
.legal-toc a{color:#26262B;font-weight:600;text-decoration:none;display:inline-block;padding:9px 12px 9px 0}
.legal-toc a:hover{color:#6C3FA8}

/* ============ CONTENT SECTIONS ============ */
.legal-content{
  max-width:880px;
  margin:0 auto;
  padding:0 24px 26px;
}
.legal-sec{
  border-bottom:1px dashed #B5AC8F;
  padding:30px 0 8px;
}
.legal-sec h2{
  font-size:1.45rem;
  color:#4B2D7F;
  margin:0 0 12px;
  display:flex;
  align-items:baseline;
  gap:2px;
}
.legal-sec h3{margin:20px 0 6px;font-size:1.1rem;color:#26262B}
.legal-sec p{max-width:820px}
.legal-sec ul{margin:0 0 16px;padding-left:22px;list-style:disc}
.legal-sec li{margin:0 0 8px}
.legal-sec code{background:#E4DEC7;border-radius:3px;padding:1px 7px;font-family:ui-monospace,Consolas,monospace;font-size:.92em;color:#4B2D7F}

/* ============ BACK LINK + FOOTER ============ */
.legal-back{text-align:center;margin:34px 0 0}
.legal-back a{
  display:inline-block;
  background:#4B2D7F;
  color:#FBF9EF;
  font-weight:800;
  text-decoration:none;
  padding:13px 22px;
  border-radius:4px;
  box-shadow:0 5px 0 #3B2470;
}
.legal-back a:hover{background:#6C3FA8}
.legal-foot{
  background:#2B2C30;
  color:#CEC7AD;
  padding:34px 24px;
  text-align:center;
}
.legal-foot p{margin:0 0 6px;color:#CEC7AD}
.legal-foot p:last-child{color:#6C3FA8}

@media (max-width:680px){
  .legal-toc ol{grid-template-columns:1fr}
}
