/* Dharti Group — privacy policy + terms of use
   Long text read by few, and read carefully. So: no head image, a narrow
   measure, numbered sections, and a contents list that stays in view on a
   wide screen and sits above the text on a narrow one.
   ============================================================ */

/* ---------- head ---------- */
.lg-head{ padding:0 var(--gutter); }
.lg-head__inner{
  max-width:64rem; margin:0 auto;
  padding-bottom:clamp(2rem,5vh,3rem); border-bottom:1px solid var(--line);
}
.lg-title{
  font-weight:500; font-size:clamp(2.2rem,6vw,3.8rem); line-height:1.04;
  letter-spacing:-.035em; margin:1rem 0 0; color:var(--bone);
}
.lg-updated{
  margin-top:1.3rem;
  font-size:.6rem; letter-spacing:.2em; text-transform:uppercase; color:var(--muted);
}

/* ---------- body ---------- */
.lg-body{ padding:clamp(2.5rem,6vh,4rem) var(--gutter) clamp(4.5rem,11vh,8rem); }
.lg-grid{
  max-width:64rem; margin:0 auto;
  display:grid; grid-template-columns:13rem minmax(0,1fr);
  gap:clamp(2rem,6vw,5rem); align-items:start;
}

/* contents */
.lg-toc{ position:sticky; top:7rem; }
.lg-toc__k{
  font-size:.58rem; letter-spacing:.24em; text-transform:uppercase; color:var(--muted);
  margin-bottom:1rem;
}
.lg-toc ol{ list-style:none; counter-reset:toc; display:flex; flex-direction:column; gap:.15rem; }
.lg-toc li{ counter-increment:toc; }
.lg-toc a{
  display:flex; gap:.7rem; padding:.3rem 0;
  font-size:.8rem; line-height:1.45; color:var(--bone-dim); transition:color .3s var(--ease);
}
.lg-toc a::before{
  content:counter(toc,decimal-leading-zero); flex:none; width:1.3rem;
  font-size:.62rem; line-height:2; color:var(--gold);
}
.lg-toc a:hover{ color:var(--gold-2); }

/* the text */
.lg-prose{ max-width:42rem; }
.lg-lede{ font-size:clamp(1.02rem,1.6vw,1.15rem); line-height:1.75; color:var(--bone); }
.lg-sec{ margin-top:clamp(2.4rem,5vh,3.2rem); scroll-margin-top:7rem; }
.lg-sec h2{
  display:flex; align-items:baseline; gap:.9rem;
  font-weight:500; font-size:clamp(1.1rem,1.8vw,1.3rem); letter-spacing:-.015em;
  color:var(--bone); margin-bottom:1rem;
}
.lg-num{ flex:none; font-size:.62rem; letter-spacing:.14em; color:var(--gold); }
.lg-sec p,
.lg-sec li{ font-size:.95rem; line-height:1.8; color:var(--bone-dim); }
.lg-sec p + p,
.lg-sec ul + p,
.lg-sec p + ul{ margin-top:.9rem; }
.lg-sec ul{ list-style:none; display:flex; flex-direction:column; gap:.45rem; }
.lg-sec li{ position:relative; padding-left:1.3rem; }
.lg-sec li::before{
  content:""; position:absolute; left:0; top:.9em; width:.6rem; height:1px; background:var(--gold);
}
.lg-sec strong{ font-weight:500; color:var(--bone); }
.lg-sec a{ color:var(--gold-2); border-bottom:1px solid rgba(198,161,91,.4); transition:color .3s; }
.lg-sec a:hover{ color:var(--gold); }

@media (max-width:860px){
  .lg-grid{ grid-template-columns:1fr; gap:2.4rem; }
  .lg-toc{ position:static; padding-bottom:2rem; border-bottom:1px solid var(--line); }
  .lg-toc ol{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.1rem 1.4rem; }
}
@media (max-width:520px){
  .lg-toc ol{ grid-template-columns:1fr; }
}
