/* =========================================================
   HUWGA - LEGAL PAGES
   Section-neutral styling for privacy, cookie and terms
   pages, which sit at the root of the site.
   ========================================================= */

.lg-body{
  background:var(--co-base);
  color:var(--co-ink);
  font-family:'Jost', sans-serif;
  font-weight:300;
}
.lg-body h1,.lg-body h2,.lg-body h3{
  font-family:'Space Grotesk', sans-serif;
  font-weight:600;
  letter-spacing:-0.01em;
  color:var(--co-ink);
}

/* ---------- nav ---------- */
.lg-nav{
  position:sticky;
  top:0;
  z-index:200;
  background:rgba(241,240,236,0.94);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(27,29,31,0.1);
  transition:box-shadow .3s var(--ease);
}
.lg-nav.is-scrolled{ box-shadow:0 12px 28px -20px rgba(0,0,0,.45); }
.lg-nav__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:20px 0;
}
.lg-nav__links{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.lg-nav__links a{
  font-size:0.7rem;
  font-weight:400;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--co-steel);
  border:1px solid var(--co-steel);
  border-radius:var(--radius-sm);
  padding:8px 14px;
  white-space:nowrap;
  transition:background .3s var(--ease), color .3s var(--ease);
}
.lg-nav__links a:hover,
.lg-nav__links a.is-active{ background:var(--co-steel); color:#fff; }

/* ---------- header band ---------- */
.lg-head{
  background:var(--co-graphite);
  color:#fff;
  padding:72px 0 60px;
}
.lg-head h1{
  color:#fff;
  font-size:clamp(1.9rem, 4vw, 2.9rem);
  margin:0 0 12px;
}
.lg-head__eyebrow{
  display:inline-block;
  font-size:0.7rem;
  letter-spacing:0.24em;
  text-transform:uppercase;
  opacity:.6;
  margin-bottom:16px;
}
.lg-head__meta{
  font-size:0.88rem;
  opacity:.66;
  margin:0;
}

/* ---------- body ---------- */
.lg-main{ padding:64px 0 88px; }

.lg-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:48px;
}
@media (min-width:992px){
  .lg-layout{ grid-template-columns:240px 1fr; gap:64px; align-items:start; }
}

.lg-toc{
  position:sticky;
  top:104px;
  font-size:0.9rem;
}
.lg-toc h2{
  font-family:'Jost', sans-serif;
  font-size:0.72rem;
  letter-spacing:0.18em;
  text-transform:uppercase;
  font-weight:500;
  opacity:.55;
  margin:0 0 14px;
}
.lg-toc ol{
  list-style:none;
  margin:0;padding:0;
  counter-reset:toc;
  display:flex;
  flex-direction:column;
  gap:9px;
}
.lg-toc li{ counter-increment:toc; }
.lg-toc a{
  opacity:.72;
  line-height:1.45;
  display:block;
  transition:opacity .25s var(--ease);
}
.lg-toc a::before{
  content:counter(toc) '. ';
  opacity:.5;
}
.lg-toc a:hover{ opacity:1; }

.lg-content{ max-width:74ch; }
.lg-content h2{
  font-size:1.25rem;
  margin:46px 0 14px;
  scroll-margin-top:110px;
}
.lg-content h2:first-child{ margin-top:0; }
.lg-content h3{
  font-size:1.02rem;
  margin:28px 0 10px;
}
.lg-content p,
.lg-content li{
  font-size:1rem;
  line-height:1.8;
  opacity:.86;
}
.lg-content p{ margin:0 0 16px; }
.lg-content ul{
  list-style:disc;
  padding-left:22px;
  margin:0 0 18px;
}
.lg-content li{ margin-bottom:8px; }
.lg-content a{
  color:var(--co-amber-dk);
  text-decoration:underline;
}
.lg-content a:hover{ color:var(--co-amber); }

/* editorial placeholder flag, delete once real copy lands */
.lg-draft{
  display:flex;
  align-items:flex-start;
  gap:14px;
  background:#FFF4E5;
  border:1px solid #E9C68C;
  border-radius:var(--radius-sm);
  padding:18px 22px;
  margin:0 0 40px;
}
.lg-draft i{ color:#B4741C; margin-top:4px; flex-shrink:0; }
.lg-draft p{
  margin:0;
  font-size:0.92rem;
  line-height:1.7;
  color:#6E4A0F;
  opacity:1;
}

/* cookie table */
.lg-table-wrap{ overflow-x:auto; margin:0 0 24px; }
.lg-table{
  width:100%;
  min-width:560px;
  border-collapse:collapse;
  font-size:0.92rem;
}
.lg-table th,
.lg-table td{
  text-align:left;
  padding:12px 14px;
  border-bottom:1px solid rgba(27,29,31,.12);
  vertical-align:top;
  line-height:1.6;
}
.lg-table th{
  font-family:'Jost', sans-serif;
  font-weight:500;
  font-size:0.74rem;
  letter-spacing:0.12em;
  text-transform:uppercase;
  opacity:.6;
}
.lg-table td{ opacity:.86; }

.lg-cta{
  margin-top:48px;
  padding:26px 28px;
  border-radius:var(--radius-md);
  background:var(--co-white);
  border:1px solid rgba(27,29,31,.1);
}
.lg-cta h2{ margin-top:0; font-size:1.1rem; }
.lg-cta p:last-child{ margin-bottom:0; }

.lg-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:0.78rem;
  letter-spacing:0.12em;
  text-transform:uppercase;
  font-weight:500;
  padding:12px 22px;
  border-radius:var(--radius-sm);
  border:1px solid var(--co-graphite);
  background:var(--co-graphite);
  color:#fff;
  transition:background .25s var(--ease);
}
.lg-btn:hover{ background:#3A3F43; }
