/* ============================================================================
   Privacy Policy — page-specific CSS
   Measured off reference/spec/privacy-policy.{desktop,mobile}.json.

   Desktop line grid: body copy runs on an exact 18px line advance with the
   first line's text box at y=283. Blocks are one blank line apart (18px),
   except the gap between the first list and "We collect your personal
   information in order to:" which is two blank lines (36px).
   ========================================================================== */

.page-privacy-policy .pp {
  /* live: title text box at y=169 (main starts at 119), copy ends at y=571,
     footer starts at y=614 */
  padding: 50px 40px 43px;
}

.page-privacy-policy .pp-title {
  /* 48px arialroundedmtbold, rgb(56,56,56), centred — .h-display already */
  margin: 0;
}

.page-privacy-policy .pp-body {
  /* title box 169..224, first copy line at 283 */
  margin-top: 59px;
  font-size: 16px;
  line-height: 18px;
  color: var(--body-text);
}

.page-privacy-policy .pp-body p,
.page-privacy-policy .pp-body li {
  font-size: 16px;
  line-height: 18px;
}

.page-privacy-policy .pp-body .body-list {
  margin: 18px 0;
  padding-left: 32px;
}

/* two blank lines above "We collect your personal information in order to:" */
.page-privacy-policy .pp-body .pp-gap { margin-top: 36px; }

/* ---------------------------------------------------------------------------
   Shared-footer corrections (same set p-about-us.css needs — see the report:
   these belong in site.css, but shared files are off-limits mid-flight).
   ------------------------------------------------------------------------- */

/* Live footer nav row sits one pixel higher than the shared 37px margin puts
   it; everything below it (CTA, rule, legal block) rides along. */
.page-privacy-policy .footer-nav-wrap { margin-top: 36px; }

/* The live footer caret occupies ~20px of layout width (TESTIMONIALS span is
   143px, its text 123px); the shared caret is 19px, so the centred nav row
   lands a pixel to the right of the live one. */
.page-privacy-policy .footer-nav .nav__caret { margin-left: 12px; }

/* Live "Let's talk!" sits one pixel lower inside its 49px line box. */
.page-privacy-policy .footer-title { position: relative; top: 1px; }

/* The live divider is a 1px rule at the top of a 3px box. The shared rule is a
   3px border one pixel lower, which also makes the page 1px taller than live. */
.page-privacy-policy .footer-rule {
  margin-top: 43px;
  border-top-width: 1px;
  height: 2px;
}

/* ...and the legal block takes the pixel back so it lands where live has it. */
.page-privacy-policy .footer-legal { padding-top: 36px; }

/* Live CTA: 374x47 gold button with a 3px black border and a soft drop shadow. */
.page-privacy-policy .footer-cta {
  border: 3px solid #000;
  box-shadow: 0 0 12px rgba(0, 0, 0, .35);
}

/* Live copyright reads "© 2026 All Rights Reserved"; the shared markup puts the
   year and the sentence in separate flex items, which drops the space. */
.page-privacy-policy .footer-legal__year { padding-right: 3.9px; }

/* Live social glyphs are 28px of ink in a 43x48 tap area, sitting 4px above the
   box centre; the shared 24px SVGs render 20px of ink, centred. The live mobile
   tap area is smaller (35x40), so this stays a desktop correction. */
@media (min-width: 768px) {
  .page-privacy-policy .footer-social svg {
    width: 34px; height: 34px;
    position: relative; top: -4px;
  }
}

/* ---------------------------------------------------------------------------
   Mobile — same content, 14px copy on a 16px line advance, 15px side padding.
   Live: title text box y=25, first copy line y=119, copy ends y=487,
   footer starts y=528.
   ------------------------------------------------------------------------- */
@media (max-width: 767px) {
  .page-privacy-policy .pp { padding: 25px 15px 41px; }

  .page-privacy-policy .pp-title {
    font-size: 36px;
    text-align: left;
  }

  .page-privacy-policy .pp-body {
    margin-top: 52px;
    font-size: 14px;
    line-height: 16px;
  }

  .page-privacy-policy .pp-body p,
  .page-privacy-policy .pp-body li {
    font-size: 14px;
    line-height: 16px;
  }

  .page-privacy-policy .pp-body .body-list {
    margin: 16px 0;
    padding-left: 28px;
  }

  .page-privacy-policy .pp-body .pp-gap { margin-top: 32px; }

  /* The shared mobile bar's three columns come to 100.001% of the row once the
     percentages are resolved against a 360px content box, so the phone column
     wraps to a second line and the header renders 125px tall against a 75px
     spacer — 50px of this page's h1 ends up underneath it. Locking the row to
     one line restores the intended 75px header. (Shared-system bug: reported,
     not edited.) */
  .page-privacy-policy .mobilebar .cols { flex-wrap: nowrap; }

  /* The shared mobile footer un-hides the nav's sub-menus and lays them out
     beside their parent link, which pushes the document out to 478px wide.
     The live mobile footer keeps them hidden, exactly as it does on desktop
     (every sub-item is visible:false in both specs). */
  .page-privacy-policy .footer-nav .nav__sub { display: none; }
  .page-privacy-policy .footer-nav > li { flex-wrap: wrap; justify-content: center; }
}
