/* Page styles (public/legal.php). */
    html{scroll-behavior:smooth;}
    body{font-family:var(--font-body);color:var(--white);background:var(--dark);overflow-x:hidden;}
    ::-webkit-scrollbar{width:5px;}
    ::-webkit-scrollbar-track{background:var(--dark);}
    ::-webkit-scrollbar-thumb{background:var(--primary);border-radius:10px;}


/* ── SIDE NAV ── */
.page-layout{max-width:1200px;margin:0 auto;padding:60px 48px;display:grid;grid-template-columns:240px 1fr;gap:60px;align-items:start;}
.side-nav{position:sticky;top:96px;}
.side-nav h4{font-size:var(--text-xs);font-weight:800;letter-spacing:4px;text-transform:uppercase;color:var(--text-muted);margin-bottom:20px;}
.side-nav a{
  display:flex;align-items:center;gap:10px;
  color:var(--text-muted);text-decoration:none;
  font-size:0.85rem;font-weight:600;padding:10px 14px;
  border-radius:8px;transition:all 0.25s;margin-bottom:4px;
  border-left:2px solid transparent;
}
.side-nav a:hover{color:var(--white);background:var(--primary-dim);border-left-color:var(--primary);}
.side-nav a.active{color:var(--primary);background:var(--primary-dim);border-left-color:var(--primary);}
.side-nav a i{width:16px;text-align:center;font-size:0.8rem;}
.side-nav-divider{height:1px;background:var(--border);margin:16px 0;}

/* ── CONTENT ── */
.legal-content{min-width:0;}
.legal-section{
  padding:48px;background:var(--dark2);border:1px solid var(--border);
  border-radius:20px;margin-bottom:32px;
  scroll-margin-top:100px;
}
.legal-section:last-child{margin-bottom:0;}
.section-badge{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--primary-dim);color:var(--primary);
  font-size:var(--text-xs);font-weight:800;letter-spacing:4px;
  text-transform:uppercase;padding:5px 14px;border-radius:4px;
  margin-bottom:16px;
}
.legal-section h2{
  font-family:var(--font-display);font-size:2.4rem;
  letter-spacing:2px;margin-bottom:8px;line-height:1;
}
.last-updated{font-size:0.75rem;color:var(--text-muted);margin-bottom:32px;display:block;}
.legal-section h3{font-size:1.05rem;font-weight:700;margin:28px 0 10px;color:var(--white);}
.legal-section h4{font-size:0.9rem;font-weight:700;margin:20px 0 8px;color:rgba(var(--white-rgb), 0.85);}
.legal-section p{font-size:0.9rem;color:var(--text-body);line-height:1.85;margin-bottom:14px;}
.legal-section ul,.legal-section ol{
  padding-left:0;margin-bottom:16px;
  list-style:none;
}
.legal-section ul li,.legal-section ol li{
  font-size:0.9rem;color:var(--text-body);line-height:1.75;
  padding:5px 0 5px 22px;position:relative;
}
.legal-section ul li::before{content:'–';position:absolute;left:0;color:var(--primary);font-weight:700;}
.legal-section ol{counter-reset:ol-counter;}
.legal-section ol li{counter-increment:ol-counter;}
.legal-section ol li::before{content:counter(ol-counter)'.';position:absolute;left:0;color:var(--primary);font-weight:700;font-size:0.82rem;}
.legal-section a{color:var(--primary);text-decoration:none;}
.legal-section a:hover{text-decoration:underline;}
.highlight-box{
  background:rgba(var(--primary-rgb), 0.06);border:1px solid rgba(var(--primary-rgb), 0.2);
  border-radius:10px;padding:18px 20px;margin:20px 0;
}
.highlight-box p{margin-bottom:0;font-size:0.85rem;}
.highlight-box strong{color:var(--primary);}
.contact-block{
  background:rgba(var(--white-rgb), 0.03);border:1px solid var(--border);
  border-radius:10px;padding:20px 24px;margin-top:16px;
}
.contact-block p{margin-bottom:4px;font-size:0.88rem;}
.divider{height:1px;background:var(--border);margin:24px 0;}

/* ── TOC PILLS (mobile) ── */
.toc-pills{display:none;gap:10px;flex-wrap:wrap;padding:24px 24px 0;}
.toc-pill{padding:8px 16px;background:var(--dark2);border:1px solid var(--border);border-radius:20px;color:var(--text-muted);text-decoration:none;font-size:0.78rem;font-weight:600;transition:all 0.3s;}
.toc-pill:hover{border-color:var(--primary);color:var(--primary);}

/* ── RESPONSIVE ── */
@media(max-width:900px){
  .page-layout{grid-template-columns:1fr;gap:0;padding:0;}
  .side-nav{display:none;}
  .toc-pills{display:flex;}
  .legal-content{padding:24px;}
  .legal-section{padding:32px 24px;}
}

/* ── Page elements ── */
@media (pointer: coarse) {
  .toc-pill { min-height:var(--tap); display:inline-flex; align-items:center; }
}
