/* ================= LEGAL PAGES (Privacy Policy / Terms of Use) ================= */

.legal-page{ background:var(--bg); }

/* ---- Hero ---- */
.lg-hero{
  background:
    radial-gradient(1100px 480px at 15% -10%, rgba(247,179,29,.10), transparent 60%),
    linear-gradient(180deg, #17150f 0%, var(--bg) 100%);
  border-bottom:1px solid var(--line);
  padding:132px 0 52px;
}
.lg-hero__inner{
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 40px;
}
.lg-eyebrow{
  font-family:var(--sans);
  font-weight:600;
  font-size:.78rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--gold);
  margin:0 0 14px;
}
.lg-hero__title{
  font-family:var(--serif);
  font-weight:700;
  font-size:clamp(2.1rem, 4vw, 3.1rem);
  color:var(--white);
  margin:0 0 14px;
  line-height:1.1;
}
.lg-hero__updated{
  font-family:var(--sans);
  font-size:.95rem;
  color:var(--muted);
  margin:0;
}

/* ---- Body layout ---- */
.lg-body{ padding:56px 0 120px; }
.lg-body__inner{
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 40px;
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:56px;
  align-items:start;
}

/* ---- TOC sidebar ---- */
.lg-toc{ position:sticky; top:104px; }
.lg-toc__card{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:14px;
  padding:22px 20px;
  max-height:calc(100vh - 148px);
  overflow-y:auto;
}
.lg-toc__label{
  font-family:var(--sans);
  font-weight:600;
  font-size:.72rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted-2);
  margin:0 0 12px;
}
.lg-toc__list{
  list-style:none;
  margin:0;
  padding:0;
  counter-reset:lg-toc;
}
.lg-toc__list li{ margin:0; }
.lg-toc__list a{
  counter-increment:lg-toc;
  display:block;
  font-family:var(--sans);
  font-size:.86rem;
  line-height:1.4;
  color:var(--muted);
  text-decoration:none;
  padding:7px 0;
  border-bottom:1px solid rgba(255,255,255,.05);
  transition:color .18s;
}
.lg-toc__list li:last-child a{ border-bottom:none; }
.lg-toc__list a:hover{ color:var(--gold); }

/* ---- Article ---- */
.lg-article{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:16px;
  padding:48px 56px 56px;
  max-width:820px;
}
.lg-article h2{
  font-family:var(--serif);
  font-weight:700;
  font-size:1.36rem;
  color:var(--white);
  letter-spacing:.01em;
  margin:44px 0 16px;
  padding-top:20px;
  border-top:1px solid var(--line);
  scroll-margin-top:104px;
}
.lg-article h2:first-child{ margin-top:0; padding-top:0; border-top:none; }
.lg-article h3{
  font-family:var(--sans);
  font-weight:600;
  font-size:1.06rem;
  color:var(--gold-2);
  margin:26px 0 10px;
}
.lg-article h4{
  font-family:var(--sans);
  font-weight:600;
  font-size:.94rem;
  color:var(--cream);
  margin:20px 0 8px;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.lg-article p{
  font-family:var(--sans);
  font-weight:300;
  font-size:.98rem;
  line-height:1.75;
  color:var(--muted);
  margin:0 0 14px;
}
.lg-article ul{
  margin:0 0 16px;
  padding:0 0 0 4px;
  list-style:none;
}
.lg-article ul li{
  position:relative;
  font-family:var(--sans);
  font-weight:300;
  font-size:.98rem;
  line-height:1.7;
  color:var(--muted);
  padding:0 0 9px 22px;
}
.lg-article ul li::before{
  content:"";
  position:absolute;
  left:2px;
  top:.68em;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--gold);
}
.lg-article a{ color:var(--gold-2); }

/* ---- Responsive ---- */
@media (max-width: 980px){
  .lg-body__inner{ grid-template-columns:1fr; gap:32px; }
  .lg-toc{ position:static; order:2; }
  .lg-toc__card{ max-height:none; }
  .lg-article{ order:1; padding:36px 28px 40px; }
}
@media (max-width: 560px){
  .lg-hero{ padding:112px 0 40px; }
  .lg-hero__inner, .lg-body__inner{ padding:0 20px; }
  .lg-article{ padding:28px 20px 32px; }
  .lg-article h2{ font-size:1.18rem; }
}
