/* VAJGRT LABS — legal document pages (/legal/privacy/, /legal/terms/).
   Presentation only: site chrome comes from suite.css, tokens inherit the
   Suite palette. Linked per-page so Terms keeps its current look until it
   gets the same treatment. */

.legal-main { padding: 34px 0 72px; }
.legal-shell { max-width: 760px; margin: 0 auto; }

/* top row: back control + breadcrumb context */
.legal-topbar {
  display: flex; justify-content: space-between; align-items: center;
  gap: 14px; flex-wrap: wrap; margin: 0 0 22px;
}
.legal-back {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: 14.5px; font-weight: 700; color: var(--vl-blue);
  background: var(--vl-surface); border: 1px solid var(--vl-blue-line);
  border-radius: 999px; padding: 9px 18px;
  transition: border-color .12s, background .12s;
}
.legal-back:hover { border-color: var(--vl-blue); background: var(--vl-blue-tint); }
.legal-back .arr { font-weight: 800; }
.legal-crumbs { font-size: 13px; color: var(--vl-muted); display: flex; gap: 8px; align-items: center; }
.legal-crumbs a { color: var(--vl-muted); font-weight: 600; }
.legal-crumbs a:hover { color: var(--vl-blue); }
.legal-crumbs [aria-current] { color: var(--vl-ink-2); font-weight: 650; }

/* the document card */
.legal-doc {
  background: var(--vl-surface); border: 1px solid var(--vl-line);
  border-radius: var(--vl-radius); padding: 46px 50px;
  box-shadow: 0 14px 40px rgba(20, 24, 29, .05);
}
@media (max-width: 720px) { .legal-doc { padding: 30px 22px; } }
.legal-doc-head { border-bottom: 2px solid var(--vl-ink); padding-bottom: 20px; margin-bottom: 26px; }
.legal-doc h1 {
  font-size: 36px; font-weight: 800; letter-spacing: -.025em;
  line-height: 1.12; margin: 0 0 10px; color: var(--vl-ink);
}
@media (max-width: 720px) { .legal-doc h1 { font-size: 29px; } }
.legal-updated { margin: 0; font-size: 14px; color: var(--vl-muted); }
.legal-doc p, .legal-doc li { font-size: 16px; line-height: 1.75; color: var(--vl-body); }
.legal-doc p { margin: 0 0 14px; }
.legal-doc strong { color: var(--vl-ink); }
.legal-doc a { color: var(--vl-blue); font-weight: 600; }

/* sections: heading + subtle divider rhythm */
.legal-sec { border-top: 1px solid var(--vl-line); margin-top: 30px; padding-top: 28px; }
.legal-sec h2 {
  font-size: 20px; font-weight: 800; letter-spacing: -.015em;
  margin: 0 0 12px; color: var(--vl-ink);
}
.legal-sec ul { margin: 0; padding-left: 22px; display: grid; gap: 10px; }
.legal-sec p:last-child, .legal-sec ul:last-child { margin-bottom: 0; }

/* contact section rendered as a quiet card */
.legal-sec-contact {
  background: var(--vl-blue-tint); border: 1px solid var(--vl-blue-line);
  border-radius: 14px; padding: 24px 26px;
}
.legal-sec-contact h2 { margin-bottom: 6px; }

/* bottom row repeats the way back */
.legal-bottombar {
  display: flex; justify-content: space-between; align-items: center;
  gap: 14px; flex-wrap: wrap; margin-top: 24px;
}
