/* vb-page-legal.v1.css - shared stylesheet for the two legal text pages
   (/privacy-policy/ and /terms-of-service/). css/vb-chrome.v1.css (header,
   footer, .vb-hero) is linked separately and nothing chrome-related is
   duplicated here. Base font families come from the inline #vb-crit block
   (Open Sans body, Montserrat headings), as on every other hand-built page.
   Tokens match the rest of main-site: navy #0F1E2E, gold #BFA15A, sand #F5F4F2. */

/* The theme reset lines every hand-built page still needs (hello-elementor reset.css). */
html { line-height: 1.15; -webkit-text-size-adjust: 100%; }
*, ::after, ::before { box-sizing: border-box; }
body { margin: 0; background-color: #fff; color: #333; }
img { border-style: none; height: auto; max-width: 100%; }
.screen-reader-text { clip: rect(1px, 1px, 1px, 1px); height: 1px; overflow: hidden; width: 1px; position: absolute !important; overflow-wrap: normal !important; }
.screen-reader-text:focus { background-color: rgb(238, 238, 238); clip-path: none; color: rgb(51, 51, 51); display: block; font-size: 1rem; height: auto; left: 5px; line-height: normal; padding: 12px 24px; text-decoration: none; top: 5px; width: auto; z-index: 100000; clip: auto !important; }

/* The article. Scoped under .vb-legal so nothing here reaches the header or footer. */
.vb-legal {
  --navy: #0F1E2E;
  --gold: #BFA15A;
  --ink: #2B3238;
  --muted: #5C6672;
  --line: #E4E2DE;
  --sand: #F5F4F2;
  display: block;
  background: #fff;
  color: var(--ink);
  font-family: "Open Sans", "Open Sans Fallback", system-ui, -apple-system, "Segoe UI", sans-serif;
}
.vb-legal__inner { max-width: 820px; margin: 0 auto; padding: 44px 20px 64px; }
.vb-legal__inner h2 {
  margin: 30px 0 10px;
  color: var(--navy);
  font-family: "Montserrat", "Montserrat Fallback", system-ui, -apple-system, "Segoe UI", sans-serif;
  font-size: 22px; font-weight: 800; line-height: 1.3;
}
.vb-legal__inner h2:first-child { margin-top: 0; }
.vb-legal__inner p { margin: 0 0 14px; font-size: 16px; line-height: 1.72; color: var(--ink); }
.vb-legal__inner ul { margin: 0 0 14px; padding: 0 0 0 22px; }
.vb-legal__inner li { margin: 0 0 8px; font-size: 16px; line-height: 1.68; color: var(--ink); }
.vb-legal__inner li:last-child { margin-bottom: 0; }
.vb-legal__inner a { color: #1C4E7A; text-decoration: underline; text-underline-offset: 2px; overflow-wrap: anywhere; }
.vb-legal__inner a:hover { color: var(--navy); }
/* The effective-date / last-updated line: a quiet sand strip with the gold rule the site uses for callouts. */
.vb-legal__inner p.vb-legal__date {
  margin: 0 0 28px;
  padding: 12px 16px;
  background: var(--sand);
  border-left: 4px solid var(--gold);
  border-radius: 8px;
  color: var(--navy);
  font-size: 15px; font-weight: 600; line-height: 1.5;
}
.vb-legal__inner p.vb-legal__date:last-child { margin: 28px 0 0; }

@media (max-width: 640px) {
  .vb-legal__inner { padding: 32px 16px 48px; }
  .vb-legal__inner h2 { font-size: 19px; margin-top: 26px; }
}
