/* ============================================================
   Tektome — Legal documents (Privacy Policy, Terms & Conditions).
   Long-form text page: 720px column, mono eyebrow, Light display
   title, numbered sections. Light mode, brand tokens only.
   ============================================================ */

.legal-page { flex: 1; background: var(--color-draft-white); font-family: var(--font-sans); color: var(--fg-primary); }

.legal-hero {
  background:
    radial-gradient(120% 90% at 50% -10%, var(--purple-50) 0%, rgba(236, 236, 252, 0) 60%),
    var(--color-draft-white);
  padding: clamp(56px, 8vw, 100px) 0 clamp(28px, 4vw, 48px);
}
.legal-inner { max-width: 720px; margin: 0 auto; padding: 0 40px; }

.legal-eyebrow { font-family: var(--font-mono); font-size: 12px; font-weight: var(--fw-semibold); letter-spacing: 0.18em; text-transform: uppercase; color: var(--color-arch-purple); margin: 0 0 16px; }
.legal-title { font-family: var(--font-display); font-weight: var(--fw-light); font-size: clamp(34px, 5vw, 56px); line-height: 1.05; letter-spacing: -0.02em; color: var(--color-data-black); margin: 0; }
.legal-meta { font-family: var(--font-mono); font-size: 12px; letter-spacing: 0.04em; color: var(--fg-tertiary); margin: 18px 0 0; }
.legal-placeholder {
  display: inline-block; margin: 22px 0 0; padding: 12px 16px;
  background: var(--purple-50); border-radius: var(--radius-md);
  font-size: 13px; line-height: 1.5; color: var(--purple-800);
}

.legal-body { padding: clamp(36px, 5vw, 56px) 0 clamp(64px, 8vw, 104px); }
.legal-lede { font-size: 18px; line-height: 1.7; color: var(--fg-secondary); margin: 0 0 36px; text-wrap: pretty; }

.legal-sec { margin: 0 0 36px; }
.legal-sec:last-child { margin-bottom: 0; }
.legal-sec__num { font-family: var(--font-mono); font-size: 12px; font-weight: var(--fw-semibold); letter-spacing: 0.14em; color: var(--color-arch-purple); display: block; margin: 0 0 6px; }
.legal-sec h2 { font-size: clamp(20px, 2.4vw, 26px); font-weight: var(--fw-semibold); letter-spacing: -0.01em; color: var(--color-data-black); margin: 0 0 14px; }
.legal-sec h3 { font-size: 16px; font-weight: var(--fw-semibold); color: var(--color-data-black); margin: 22px 0 8px; }
.legal-sec p { font-size: 15.5px; line-height: 1.75; color: var(--fg-secondary); margin: 0 0 14px; text-wrap: pretty; }
.legal-sec p:last-child { margin-bottom: 0; }
.legal-sec a { color: var(--color-arch-purple); text-decoration: none; border-bottom: 1px solid var(--purple-200); }
.legal-sec a:hover { border-bottom-color: var(--color-arch-purple); }
.legal-sec ul { margin: 0 0 14px; padding: 0; list-style: none; }
.legal-sec li { position: relative; font-size: 15.5px; line-height: 1.7; color: var(--fg-secondary); padding: 0 0 0 22px; margin: 0 0 9px; text-wrap: pretty; }
.legal-sec li::before { content: ""; position: absolute; left: 4px; top: 11px; width: 5px; height: 5px; border-radius: 50%; background: var(--color-arch-purple); }
.legal-sec li strong { color: var(--color-data-black); font-weight: var(--fw-semibold); }

.legal-divider { height: 1px; background: var(--border-subtle); border: 0; margin: 0 0 36px; }
