/* Terms page only. Shared header/footer/button/chip/card/eyebrow styles
   live in shared/css/components.css. This legal-page layout is shared in
   structure (not in code) with the Privacy page. */

.font-mono { font-family: var(--font-mono); }

.legal-page {
  padding-top: clamp(28px, 6vw, 72px);
  padding-bottom: clamp(64px, 10vw, 120px);
  display: flex;
  flex-direction: column;
  gap: clamp(32px, 5vw, 56px);
}

.legal-hero {
  display: flex;
  flex-direction: column;
  gap: 14px;
  max-width: 820px;
}

.legal-title {
  font-size: clamp(36px, 5.6vw, 72px);
  line-height: 1.02;
  letter-spacing: -0.025em;
  font-weight: 850;
  text-wrap: balance;
}

.legal-lead {
  font-size: 17px;
  line-height: 1.6;
  color: var(--muted);
}

/* ---- TL;DR cards ---- */

.legal-tldr {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
  gap: 12px;
}

.legal-tldr__card {
  border-radius: 22px;
  background: var(--surface);
  border: 1px solid var(--line);
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.legal-tldr__card--save {
  background: color-mix(in srgb, var(--save) 8%, var(--surface));
}

.legal-tldr__icon {
  font: 700 13px var(--font-mono);
  color: var(--save);
}

.legal-tldr__title {
  font-size: 17px;
  line-height: 1.35;
}

.legal-tldr__text {
  font-size: 14px;
  line-height: 1.6;
  color: var(--muted);
}

/* ---- Long-form sections ---- */

.legal-content {
  display: flex;
  flex-direction: column;
  gap: 28px;
  max-width: 760px;
}

.legal-section {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.legal-section__title {
  font-size: 22px;
  font-weight: 700;
  display: flex;
  gap: 12px;
  align-items: baseline;
}

.legal-section__num {
  font: 600 13px var(--font-mono);
  color: var(--brand);
}

.legal-section__text {
  font-size: 16px;
  line-height: 1.75;
  color: var(--ink);
  opacity: 0.88;
  text-wrap: pretty;
}

.legal-updated {
  font: 500 13px var(--font-mono);
  color: var(--muted);
}

/* ---- v2: dark hero band ---- */
.legal-page { padding-top: clamp(32px, 4vw, 56px); }
