.legal-page{
  padding:120px 24px 80px;
  background:var(--color-bg);
  min-height:100vh;
}

.legal-container{
  max-width:860px;
  margin:0 auto;
}

.legal-page h1{
  font-size:2.5rem;
  color:var(--color-dark);
  margin-bottom:8px;
}

.legal-page .last-updated{
  color:var(--color-text-muted);
  font-size:0.925rem;
  margin-bottom:36px;
}

.legal-page .intro-text{
  font-size:1.05rem;
  color:var(--color-text);
  line-height:1.75;
  margin-bottom:42px;
}

.legal-toc{
  background:var(--color-card);
  border:1px solid var(--color-border);
  border-radius:12px;
  padding:28px 30px;
  margin-bottom:44px;
}

.legal-toc h2{
  font-size:1.15rem;
  color:var(--color-dark);
  margin-bottom:16px;
}

.legal-toc ol{
  list-style-position:inside;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px 24px;
}

.legal-toc ol li{
  font-size:0.925rem;
}

.legal-toc ol li a{
  color:var(--color-text-muted);
  transition:color .2s;
}

.legal-toc ol li a:hover{color:var(--color-jade-dark)}

.legal-section{
  margin-bottom:44px;
  scroll-margin-top:90px;
}

.legal-section h2{
  font-size:1.35rem;
  color:var(--color-dark);
  margin-bottom:14px;
  padding-bottom:10px;
  border-bottom:2px solid var(--color-jade);
  display:inline-block;
}

.legal-section p{
  color:var(--color-text);
  line-height:1.78;
  margin-bottom:14px;
}

.legal-section ul,
.legal-section ol{
  margin-left:24px;
  margin-bottom:14px;
}

.legal-section ul li,
.legal-section ol li{
  margin-bottom:8px;
  line-height:1.7;
  color:var(--color-text);
}

.legal-section strong{
  color:var(--color-dark);
}

.legal-footer{
  margin-top:56px;
  padding-top:28px;
  border-top:1px solid var(--color-border);
  text-align:center;
}

.legal-footer p{
  color:var(--color-text-muted);
  font-size:0.925rem;
  margin-bottom:10px;
}

.legal-footer a{
  color:var(--color-jade-dark);
  font-weight:600;
}

.legal-footer a:hover{color:var(--color-violet-dark)}

@media(max-width:768px){
  .legal-page h1{font-size:1.85rem}
  .legal-toc ol{grid-template-columns:1fr}
  .legal-section h2{font-size:1.15rem}
  .legal-page{padding:110px 20px 60px}
}
