/* Lanco Link legal pages (/privacy, /terms). Loads after preset.css.
   The :root block repeats the slot values from index.html, which come from
   00-company/brand/design-tokens.md. Change them there and here together. */
:root {
  --ink: #0E1730;
  --body: #46536E;
  --muted: #64708A;
  --accent: #EA580C;
  --accent-top: #EE6118;
  --accent-ink: #C2410C;
  --accent-tint: #FDEEE7;
  --accent-rgb: 234, 88, 12;
  --second: #2563EB;
  --second-rgb: 37, 99, 235;
  --third: #15803D;
  --ground: #F7F8FC;
  --neutral-tint: #F1F2F5;
  --white: #FFFFFF;
  --display: "Sofia Sans Condensed", "Arial Narrow", sans-serif;
  --wordmark: "Figtree", Arial, sans-serif;
}

/* Shared chrome, matching the index.html overrides */
.brand { white-space: nowrap; }
.nav .brand, .foot .brand { font-family: var(--wordmark); }
@media (max-width: 420px) { .nav .brand { font-size: 22px; } .nav { padding-left: 18px; } .btn-nav { padding: 12px 16px; } .btn-nav span { display: none; } }
@media (max-width: 374px) { .nav .brand { font-size: 20px; } }
.foot .cols { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 24px; align-items: flex-start; }
.foot p { margin: 8px 0 0; }
.foot { padding-bottom: 48px; }
.foot .brand a { color: inherit; text-decoration: none; }
.foot-legal a { color: var(--body); font-weight: 600; }
.foot-legal a:hover, .foot-legal a[aria-current] { color: var(--ink); }

/* Page header */
.legal-head { padding: 72px 0 28px; }
.legal-head h1 { font-size: 64px; line-height: .96; }
.legal-head .effective { margin: 14px 0 0; font-size: 15px; font-weight: 600; color: var(--muted); }
@media (max-width: 799px) { .legal-head { padding: 48px 0 20px; } .legal-head h1 { font-size: 40px; } }

/* The document */
.legal-body { padding: 0 0 88px; }
.legal {
  background: var(--white);
  border: 1px solid rgba(var(--shadow-rgb), .07);
  border-radius: var(--radius-card);
  box-shadow: 0 12px 40px rgba(var(--shadow-rgb), .06);
  padding: 48px 56px;
  font-size: 17px; line-height: 1.7;
  overflow-wrap: break-word;
}
@media (max-width: 799px) { .legal { padding: 28px 20px; font-size: 16px; } .legal-body { padding-bottom: 60px; } }
.legal h2 {
  font-size: 30px; line-height: 1.02;
  margin: 44px 0 14px; padding-top: 28px;
  border-top: 1px solid var(--neutral-tint);
  scroll-margin-top: 104px;
}
.legal > h2:first-child, .legal > p:first-child + h2 { margin-top: 8px; }
@media (max-width: 799px) { .legal h2 { font-size: 26px; margin-top: 32px; padding-top: 22px; } }
.legal p { margin: 0 0 1em; }
.legal ul { margin: 0 0 1.1em; padding-left: 1.25em; }
.legal li { margin: 0 0 .45em; padding-left: .2em; }
.legal li::marker { color: var(--accent-ink); }
.legal strong { color: var(--ink); font-weight: 700; }
.legal a { color: var(--accent-ink); font-weight: 600; }
.legal .callout {
  background: var(--accent-tint); border-radius: var(--radius-row);
  padding: 20px 24px; margin: 0 0 1.2em;
}
.legal .callout ul { margin: 0; }
.legal address { font-style: normal; }
