/* ==========================================================================
   CITYSCAPE REAL ESTATE — LEGAL (PRIVACY & TERMS) STYLES
   Editorial document scale, sticky TOC navigation, reading indicator, clause hierarchy.
   ========================================================================== */

/* Table of contents sidebar */
nav[data-toc] {
  padding: 16px 20px 24px;
  background: rgba(236, 230, 219, 0.45);
  border: 1px solid var(--line);
  border-radius: 6px;
  backdrop-filter: blur(8px);
}
nav[data-toc] > span:first-child {
  font-family: var(--font-sans);
  font-size: var(--fs-eyebrow);
  font-weight: 600;
  letter-spacing: var(--ls-eyebrow);
  text-transform: uppercase;
  color: var(--gold-deep);
  margin-bottom: 6px;
  display: block;
}
nav[data-toc] a {
  display: flex !important;
  gap: 12px !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  font-weight: 400 !important;
  color: rgba(10, 10, 10, 0.72) !important;
  padding: 4px 0 !important;
  transition: color var(--dur-fast) ease, transform var(--dur-fast) ease !important;
}
nav[data-toc] a:hover {
  color: var(--gold-deep) !important;
  transform: translateX(4px) !important;
}
nav[data-toc] a[aria-current="true"] {
  color: var(--gold-deep) !important;
  font-weight: 600 !important;
  transform: translateX(8px) !important;
}
nav[data-toc] a span:first-child {
  color: var(--gold-deep) !important;
  font-weight: 600 !important;
  font-variant-numeric: tabular-nums !important;
}

/* Legal article styling */
article section {
  border-top: 1px solid var(--line) !important;
  padding-top: 4vh !important;
}
article h2 {
  font-family: var(--font-display) !important;
  font-weight: 500 !important;
  font-size: var(--fs-h2-doc) !important;
  letter-spacing: -0.015em !important;
  line-height: 1.15 !important;
  color: var(--ink) !important;
}
article p {
  color: rgba(10, 10, 10, 0.82) !important;
  font-size: var(--fs-body) !important;
  line-height: var(--lh-body) !important;
}
article ul li {
  color: rgba(10, 10, 10, 0.82) !important;
  font-size: var(--fs-body) !important;
  line-height: var(--lh-body) !important;
}

/* Mobile responsive adjustments */
@media (max-width: 900px) {
  nav[data-toc] {
    position: static !important;
    flex: 1 1 100% !important;
    max-height: 240px !important;
    overflow-y: auto !important;
  }
}
