/* ============================================================
   LEGAL PAGES - terms.html + privacy-policy.html

   Content pages, not marketing pages: no photo hero, no reveal
   animation, no CTA band. Just a readable document column on the
   house black/gold surface, with a sticky contents rail on desktop.

   Everything here is built from the tokens in colors_and_type.css
   (--gold, --gold-line, --black-deep, --black-lift, --white-80,
   --white-70, --font-display, --font-body), so the page follows the
   brand with no colour decisions of its own.
   ============================================================ */

/* ---------- header band ---------- */
.lg-head{border-bottom:1px solid var(--gold-line);background:var(--black-deep);padding:clamp(96px,13vh,150px) 0 clamp(38px,6vh,60px);}
.lg-head__eyebrow{margin-bottom:22px;}
.lg-head__title{font-family:var(--font-display);font-size:clamp(42px,6.4vw,92px);line-height:0.92;letter-spacing:-0.012em;text-transform:uppercase;}
.lg-head__sub{margin-top:22px;max-width:60ch;font-size:clamp(16px,1.3vw,19px);line-height:1.6;color:var(--white-80);}
.lg-head__meta{margin-top:26px;display:flex;flex-wrap:wrap;gap:10px 26px;font-size:12px;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:var(--white-70);}
.lg-head__meta b{color:var(--gold);font-weight:600;}

/* ---------- layout ---------- */
.lg-body{padding:clamp(48px,8vh,88px) 0 clamp(72px,12vh,130px);}
.lg-grid{display:grid;grid-template-columns:236px minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:start;}

/* contents rail */
.lg-toc{position:sticky;top:104px;}
.lg-toc__h{font-size:11px;font-weight:700;letter-spacing:0.26em;text-transform:uppercase;color:var(--gold);padding-bottom:12px;border-bottom:1px solid var(--gold-line);}
.lg-toc ol{list-style:none;margin:0;padding:14px 0 0;counter-reset:toc;}
.lg-toc li{counter-increment:toc;}
.lg-toc a{display:block;padding:7px 0;font-size:13.5px;line-height:1.35;color:var(--white-70);transition:color .16s,padding-left .18s;}
.lg-toc a::before{content:counter(toc) ". ";color:var(--gold);opacity:.65;}
.lg-toc a:hover{color:var(--gold);padding-left:5px;}

/* ---------- document ---------- */
.lg-doc{max-width:72ch;}
.lg-doc section{padding-top:44px;scroll-margin-top:104px;}
.lg-doc section:first-child{padding-top:0;}
.lg-doc h2{font-family:var(--font-display);font-size:clamp(24px,2.6vw,34px);line-height:1;text-transform:uppercase;letter-spacing:0.004em;padding-bottom:14px;border-bottom:1px solid var(--gold-line);}
.lg-doc h3{font-family:var(--font-body);font-size:15px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--gold);margin:32px 0 0;}
.lg-doc p{margin:16px 0 0;color:var(--white-80);line-height:1.68;}
.lg-doc p strong{color:var(--white);font-weight:600;}
.lg-doc a:not(.btn){color:var(--gold);border-bottom:1px solid var(--gold-line);transition:border-color .16s;}
.lg-doc a:not(.btn):hover{border-bottom-color:var(--gold);}
.lg-doc ul{margin:16px 0 0;padding-left:0;list-style:none;}
.lg-doc li{position:relative;padding-left:22px;margin-top:10px;color:var(--white-80);line-height:1.62;}
.lg-doc li::before{content:'';position:absolute;left:2px;top:11px;width:7px;height:1px;background:var(--gold);}
.lg-doc li strong{color:var(--white);font-weight:600;}

/* status line for a fact read off the live page at runtime */
.lg-live{margin-top:18px;font-size:13px;letter-spacing:0.04em;color:var(--white-70);}
.lg-live b{color:var(--gold);font-weight:600;font-variant-numeric:tabular-nums;}

/* closing line of the document */
.lg-end{margin-top:52px;padding-top:26px;border-top:1px solid var(--gold-line);font-size:13.5px;color:var(--white-70);line-height:1.7;}

/* ---------- responsive ---------- */
@media (max-width:1000px){
  .lg-grid{grid-template-columns:1fr;gap:34px;}
  .lg-toc{position:static;}
  .lg-toc ol{columns:2;column-gap:26px;}
}
@media (max-width:640px){
  .lg-head{padding-top:clamp(80px,11vh,110px);}
  .lg-head__meta{gap:8px 18px;font-size:11px;letter-spacing:0.12em;}
  .lg-toc ol{columns:1;}
  .lg-doc section{padding-top:36px;}
}
