
/* =========================================================
   v75 GLOBAL ENDING + NAV TYPOGRAPHY MASTER
   - Science/Home warm pre-footer background on every page
   - one identical footer-top-to-content distance everywhere
   - stronger main navigation typography balanced with Contact
   ========================================================= */

/* ---------------------------------------------------------
   1) MAIN NAV TYPOGRAPHY
   Same family/character as Contact; nav remains slightly
   quieter so the CTA still reads as the primary action.
   --------------------------------------------------------- */
html body.global-ending-v75 .site-header .primary-nav {
  font-size: 15px !important;
  font-weight: 620 !important;
  letter-spacing: -0.01em !important;
}

html body.global-ending-v75 .site-header .primary-nav > a {
  font: inherit !important;
  line-height: 1.1 !important;
}

html body.global-ending-v75 .site-header .primary-nav > a.nav-contact {
  font-size: 16px !important;
  font-weight: 660 !important;
  letter-spacing: -0.015em !important;
}

/* Keep the mobile menu intentionally larger for touch/readability. */
@media (max-width:1020px) {
  html body.global-ending-v75 .site-header .primary-nav,
  html body.global-ending-v75 .site-header .primary-nav > a,
  html body.global-ending-v75 .site-header .primary-nav > a.nav-contact {
    font-size:17px !important;
  }
  html body.global-ending-v75 .site-header .primary-nav > a {
    font-weight:690 !important;
  }
  html body.global-ending-v75 .site-header .primary-nav > a.nav-contact {
    font-weight:700 !important;
  }
}

/* ---------------------------------------------------------
   2) GLOBAL PRE-FOOTER BACKGROUND
   Exact Science/Home closing colour treatment on every page.
   Page-specific copy/layout is preserved; only the shared
   surface/transition is standardised.
   --------------------------------------------------------- */
html body.global-ending-v75 .global-prefooter-v260 {
  position: relative !important;
  isolation: isolate !important;
  background: linear-gradient(180deg,#f7f2ec 0%,#f1e9e0 100%) !important;
  color:#252428 !important;
  border-top:1px solid rgba(143,29,44,.10) !important;
  border-bottom:0 !important;
  box-shadow:none !important;
  overflow:hidden !important;
}

html body.global-ending-v75 .global-prefooter-v260::before {
  content:"" !important;
  position:absolute !important;
  z-index:0 !important;
  inset:0 !important;
  display:block !important;
  opacity:1 !important;
  background:
    radial-gradient(circle at 14% 30%,rgba(143,29,44,.07),transparent 24%),
    linear-gradient(90deg,rgba(143,29,44,.14),rgba(143,29,44,0) 18%) !important;
  background-size:auto !important;
  mask-image:none !important;
  -webkit-mask-image:none !important;
  pointer-events:none !important;
}

html body.global-ending-v75 .global-prefooter-v260 > * {
  position:relative !important;
  z-index:1 !important;
}

/* ---------------------------------------------------------
   3) GLOBAL FOOTER TOP PADDING
   The distance from the dark footer's top edge to the first
   logo/column row is one invariant on every desktop page.
   Old page-specific footer padding cannot compress it.
   --------------------------------------------------------- */
html body.global-ending-v75 .site-footer.global-footer-v269 {
  box-sizing:border-box !important;
  margin:0 !important;
  padding:42px 0 16px !important;
}

html body.global-ending-v75 .site-footer.global-footer-v269 > .shell {
  padding-top:0 !important;
}

html body.global-ending-v75 .site-footer.global-footer-v269 .footer-main {
  margin:0 !important;
  padding:0 0 8px !important;
  align-items:start !important;
}

/* Force every first-row item to share the exact same top origin. */
html body.global-ending-v75 .site-footer.global-footer-v269 .footer-brand,
html body.global-ending-v75 .site-footer.global-footer-v269 .footer-column {
  margin-top:0 !important;
  padding-top:0 !important;
  align-self:start !important;
}

html body.global-ending-v75 .site-footer.global-footer-v269 .footer-brand__intro,
html body.global-ending-v75 .site-footer.global-footer-v269 .footer-brand__intro img,
html body.global-ending-v75 .site-footer.global-footer-v269 .footer-column > h3 {
  margin-top:0 !important;
}

/* Responsive value changes consistently for every page, never page-by-page. */
@media (max-width:1020px) {
  html body.global-ending-v75 .site-footer.global-footer-v269 {
    padding-top:36px !important;
  }
}

@media (max-width:760px) {
  html body.global-ending-v75 .site-footer.global-footer-v269 {
    padding:30px 0 14px !important;
  }
  html body.global-ending-v75 .site-footer.global-footer-v269 .footer-main {
    padding-top:0 !important;
  }
}
