/* =========================================================
   v88 — SCIENCE ENDING + PRINCIPAL H1 GLOBAL MASTER
   Science is the literal reference for:
   1) principal inner-page H1 line layout (Science/Clinical/Commercial)
   2) all page pre-footers
   3) all page footers
   Loaded last so legacy page-specific ending rules cannot drift.
   ========================================================= */

/* ---------------------------------------------------------
   1) PRINCIPAL H1 — literal Science desktop line system
   --------------------------------------------------------- */
@media (min-width:1024px) {
  html body.global-ending-v88.clinical-atlas-page .study-hero h1,
  html body.global-ending-v88.commercial-v82 .commercial-v82-hero h1 {
    display:flex !important;
    flex-direction:column !important;
    row-gap:.105em !important;
    max-width:720px !important;
    margin:0 !important;
    font-size:clamp(56px,5vw,82px) !important;
    font-weight:570 !important;
    line-height:.99 !important;
    letter-spacing:-.057em !important;
  }
  html body.global-ending-v88.clinical-atlas-page .study-hero h1 > span,
  html body.global-ending-v88.commercial-v82 .commercial-v82-hero h1 > span {
    display:block !important;
    width:auto !important;
    max-width:100% !important;
    margin:0 !important;
    line-height:.92 !important;
    white-space:nowrap !important;
  }
  html body.global-ending-v88.clinical-atlas-page .study-hero h1 > span:last-child,
  html body.global-ending-v88.commercial-v82 .commercial-v82-hero h1 > span:last-child {
    margin-top:.005em !important;
  }
}
@media (max-width:1023px) {
  html body.global-ending-v88.clinical-atlas-page .study-hero h1,
  html body.global-ending-v88.commercial-v82 .commercial-v82-hero h1 {
    display:flex !important;
    flex-direction:column !important;
    row-gap:.105em !important;
    max-width:720px !important;
    font-size:clamp(50px,8vw,72px) !important;
    font-weight:570 !important;
    line-height:1 !important;
    letter-spacing:-.057em !important;
  }
  html body.global-ending-v88.clinical-atlas-page .study-hero h1 > span,
  html body.global-ending-v88.commercial-v82 .commercial-v82-hero h1 > span {
    display:block !important;
    width:auto !important;
    max-width:100% !important;
    line-height:.92 !important;
    white-space:nowrap !important;
  }
}
@media (max-width:760px) {
  html body.global-ending-v88.clinical-atlas-page .study-hero h1,
  html body.global-ending-v88.commercial-v82 .commercial-v82-hero h1 {
    row-gap:.09em !important;
    font-size:clamp(43px,12vw,59px) !important;
    line-height:1.02 !important;
  }
  html body.global-ending-v88.clinical-atlas-page .study-hero h1 > span,
  html body.global-ending-v88.commercial-v82 .commercial-v82-hero h1 > span {
    width:auto !important;
    white-space:normal !important;
    line-height:.94 !important;
  }
}

/* ---------------------------------------------------------
   2) GLOBAL PRE-FOOTER — exact Science footprint and grid
   --------------------------------------------------------- */
html body.global-ending-v88 .global-prefooter-master-v88 {
  position:relative !important;
  isolation:isolate !important;
  width:100% !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !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;
}
html body.global-ending-v88 .global-prefooter-master-v88::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;
  pointer-events:none !important;
}
html body.global-ending-v88 .global-prefooter-master-v88 > .science-cta__grid {
  position:relative !important;
  z-index:1 !important;
  box-sizing:border-box !important;
  width:min(calc(100% - 64px),1280px) !important;
  max-width:1280px !important;
  min-height:390px !important;
  margin-inline:auto !important;
  padding:clamp(76px,8vw,108px) 0 !important;
  display:grid !important;
  grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr) minmax(280px,.8fr) !important;
  grid-template-areas:
    "eyebrow title copy"
    ". title action" !important;
  column-gap:clamp(50px,7vw,110px) !important;
  row-gap:30px !important;
  align-items:start !important;
}
html body.global-ending-v88 .global-prefooter-master-v88 .eyebrow {
  grid-area:eyebrow !important;
  margin:0 !important;
  padding:0 !important;
  color:#9e2437 !important;
  font-size:12px !important;
  font-weight:800 !important;
  line-height:1.2 !important;
  letter-spacing:.145em !important;
  text-transform:uppercase !important;
}
html body.global-ending-v88 .global-prefooter-master-v88 h2 {
  grid-area:title !important;
  align-self:start !important;
  max-width:13ch !important;
  margin:0 !important;
  padding:0 !important;
  color:#242124 !important;
  font-size:clamp(44px,4.8vw,70px) !important;
  font-weight:560 !important;
  line-height:.99 !important;
  letter-spacing:-.058em !important;
  text-transform:none !important;
}
html body.global-ending-v88 .global-prefooter-master-v88 .science-cta__grid > p:nth-of-type(2) {
  grid-area:copy !important;
  justify-self:start !important;
  max-width:34ch !important;
  margin:0 !important;
  padding:0 !important;
  color:#5a5652 !important;
  font-size:17px !important;
  font-weight:400 !important;
  line-height:1.6 !important;
  letter-spacing:normal !important;
  text-transform:none !important;
}
html body.global-ending-v88 .global-prefooter-master-v88 .button {
  grid-area:action !important;
  justify-self:start !important;
  align-self:start !important;
  box-sizing:border-box !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;
  width:max-content !important;
  max-width:100% !important;
  min-height:52px !important;
  margin:8px 0 0 !important;
  padding:0 25px !important;
  border:0 !important;
  border-radius:999px !important;
  background:#a61f35 !important;
  color:#fff !important;
  box-shadow:0 18px 42px rgba(166,31,53,.22) !important;
  font-size:14px !important;
  font-weight:760 !important;
  line-height:1 !important;
  letter-spacing:normal !important;
  text-decoration:none !important;
  text-transform:none !important;
  white-space:nowrap !important;
}
html body.global-ending-v88 .global-prefooter-master-v88 .button:hover {
  background:#b5253e !important;
  transform:translateY(-2px) !important;
}

@media (max-width:1100px) {
  html body.global-ending-v88 .global-prefooter-master-v88 > .science-cta__grid {
    width:min(calc(100% - 48px),1280px) !important;
    grid-template-columns:1fr 1fr !important;
    grid-template-areas:
      "eyebrow eyebrow"
      "title title"
      "copy action" !important;
    column-gap:34px !important;
  }
}
@media (max-width:760px) {
  html body.global-ending-v88 .global-prefooter-master-v88 > .science-cta__grid {
    width:min(calc(100% - 36px),1280px) !important;
    min-height:auto !important;
    padding:68px 0 !important;
    grid-template-columns:1fr !important;
    grid-template-areas:"eyebrow" "title" "copy" "action" !important;
    gap:23px !important;
  }
  html body.global-ending-v88 .global-prefooter-master-v88 h2 {
    max-width:13ch !important;
    font-size:clamp(40px,11vw,54px) !important;
  }
  html body.global-ending-v88 .global-prefooter-master-v88 .button {
    width:100% !important;
  }
}

/* ---------------------------------------------------------
   3) GLOBAL FOOTER — literal Science alignment/spacing master
   Footer markup is also copied from Science on every page.
   --------------------------------------------------------- */
html body.global-ending-v88 .site-footer.global-footer-v269 {
  box-sizing:border-box !important;
  width:100% !important;
  margin:0 !important;
  padding:42px 0 16px !important;
  background:linear-gradient(180deg,#161518 0%,#121114 100%) !important;
  border:0 !important;
  border-top:1px solid rgba(230,184,111,.15) !important;
  color:#fff !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 > .shell {
  box-sizing:border-box !important;
  width:min(calc(100% - 64px),1280px) !important;
  max-width:1280px !important;
  margin-inline:auto !important;
  padding:0 !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-main {
  display:grid !important;
  grid-template-columns:minmax(310px,1.28fr) minmax(130px,.62fr) minmax(175px,.75fr) minmax(180px,.7fr) !important;
  column-gap:clamp(34px,4vw,58px) !important;
  row-gap:22px !important;
  align-items:start !important;
  margin:0 !important;
  padding:0 0 30px !important;
  border:0 !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-brand,
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-column {
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  align-self:start !important;
  justify-self:stretch !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-brand__intro,
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-brand__details {
  margin-left:0 !important;
  margin-right:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  align-items:flex-start !important;
  text-align:left !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-brand__intro img {
  display:block !important;
  width:190px !important;
  height:auto !important;
  margin:0 !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-brand__intro p {
  max-width:38ch !important;
  margin:14px 0 0 !important;
  color:rgba(247,242,236,.84) !important;
  font-size:.875rem !important;
  font-weight:400 !important;
  line-height:1.48 !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-brand__details {
  display:flex !important;
  flex-direction:column !important;
  gap:14px !important;
  margin-top:0 !important;
  padding-top:16px !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-proof-list {
  display:grid !important;
  grid-template-columns:repeat(2,max-content) !important;
  gap:6px 22px !important;
  justify-content:start !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-proof-list li {
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 !important;
  padding:0 !important;
  color:rgba(247,242,236,.80) !important;
  font-size:.8125rem !important;
  font-weight:400 !important;
  line-height:1.35 !important;
  white-space:nowrap !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-proof-list li::before {
  content:"" !important;
  position:static !important;
  flex:0 0 4px !important;
  width:4px !important;
  height:4px !important;
  margin:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:#d97885 !important;
  transform:none !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .social-links {
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .social-links a {
  display:grid !important;
  place-items:center !important;
  width:34px !important;
  height:34px !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid rgba(247,242,236,.28) !important;
  border-radius:50% !important;
  background:transparent !important;
  color:rgba(247,242,236,.86) !important;
  font-size:.72rem !important;
  font-weight:400 !important;
  line-height:1 !important;
  text-decoration:none !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-column {
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-column h3,
html body.global-ending-v88 .site-footer.global-footer-v269 .office-grid h3 {
  margin:0 0 18px !important;
  padding:0 !important;
  color:#e2b16d !important;
  font-size:.72rem !important;
  font-weight:760 !important;
  line-height:1.2 !important;
  letter-spacing:.13em !important;
  text-transform:uppercase !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-column > a,
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-contact > a {
  margin:0 0 11px !important;
  padding:0 !important;
  color:rgba(247,242,236,.82) !important;
  font-size:.9rem !important;
  font-weight:400 !important;
  line-height:1.45 !important;
  letter-spacing:normal !important;
  text-decoration:none !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-contact > span {
  margin:0 0 7px !important;
  padding:0 !important;
  color:rgba(247,242,236,.62) !important;
  font-size:.65rem !important;
  font-weight:720 !important;
  line-height:1.2 !important;
  letter-spacing:.11em !important;
  text-transform:uppercase !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-contact > span:not(:first-of-type) {
  margin-top:16px !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .office-grid {
  position:relative !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  align-items:stretch !important;
  gap:0 !important;
  margin:22px 0 0 !important;
  padding:0 !important;
  border-top:1px solid rgba(247,242,236,.09) !important;
  border-bottom:1px solid rgba(247,242,236,.09) !important;
  background-image:linear-gradient(to right,transparent calc(50% - .5px),rgba(247,242,236,.13) calc(50% - .5px),rgba(247,242,236,.13) calc(50% + .5px),transparent calc(50% + .5px)) !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:100% 100% !important;
  overflow:hidden !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .office-grid::before,
html body.global-ending-v88 .site-footer.global-footer-v269 .office-grid::after {
  content:none !important;
  display:none !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .office-grid article,
html body.global-ending-v88 .site-footer.global-footer-v269 .office-grid article + article {
  min-height:0 !important;
  height:auto !important;
  margin:0 !important;
  border:0 !important;
  padding:24px 30px 24px 0 !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .office-grid article + article {
  padding-left:30px !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .office-grid p {
  margin:0 !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-disclaimer {
  margin:0 !important;
  padding-top:16px !important;
}
html body.global-ending-v88 .site-footer.global-footer-v269 .footer-bottom {
  margin:0 !important;
  padding:12px 0 0 !important;
}

@media (max-width:1100px) {
  html body.global-ending-v88 .site-footer.global-footer-v269 > .shell {
    width:min(calc(100% - 48px),1280px) !important;
  }
  html body.global-ending-v88 .site-footer.global-footer-v269 .footer-main {
    grid-template-columns:minmax(280px,1.25fr) repeat(3,minmax(135px,.72fr)) !important;
    gap:30px !important;
  }
}
@media (max-width:760px) {
  html body.global-ending-v88 .site-footer.global-footer-v269 {
    padding:38px 0 14px !important;
  }
  html body.global-ending-v88 .site-footer.global-footer-v269 > .shell {
    width:min(calc(100% - 36px),1280px) !important;
  }
  html body.global-ending-v88 .site-footer.global-footer-v269 .footer-main {
    grid-template-columns:1fr 1fr !important;
    gap:28px 22px !important;
    padding:0 0 30px !important;
  }
  html body.global-ending-v88 .site-footer.global-footer-v269 .footer-brand,
  html body.global-ending-v88 .site-footer.global-footer-v269 .footer-contact {
    grid-column:1 / -1 !important;
  }
  html body.global-ending-v88 .site-footer.global-footer-v269 .office-grid {
    grid-template-columns:1fr !important;
    background-image:none !important;
  }
  html body.global-ending-v88 .site-footer.global-footer-v269 .office-grid article,
  html body.global-ending-v88 .site-footer.global-footer-v269 .office-grid article + article {
    padding:22px 0 !important;
  }
  html body.global-ending-v88 .site-footer.global-footer-v269 .office-grid article + article {
    border-top:1px solid rgba(247,242,236,.09) !important;
  }
  html body.global-ending-v88 .site-footer.global-footer-v269 .footer-bottom {
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }
}

/* Desktop footprint lock: every pre-footer occupies the same Science-master depth. */
@media (min-width:1101px) {
  html body.global-ending-v88 .global-prefooter-master-v88 > .science-cta__grid {
    height:390px !important;
    min-height:390px !important;
    padding-top:76px !important;
    padding-bottom:76px !important;
  }
}

/* Final principal H1 lock: one literal selector set governs Science, Clinical and Commercial. */
@media (min-width:1024px) {
  html body.global-ending-v88.science-v65 .science-hero h1,
  html body.global-ending-v88.clinical-atlas-page .study-hero h1,
  html body.global-ending-v88.commercial-v82 .commercial-v82-hero h1 {
    display:flex !important;
    flex-direction:column !important;
    row-gap:.105em !important;
    max-width:720px !important;
    margin:0 !important;
    font-size:clamp(56px,5vw,82px) !important;
    font-weight:570 !important;
    line-height:.99 !important;
    letter-spacing:-.057em !important;
  }
  html body.global-ending-v88.science-v65 .science-hero h1 > span,
  html body.global-ending-v88.clinical-atlas-page .study-hero h1 > span,
  html body.global-ending-v88.commercial-v82 .commercial-v82-hero h1 > span {
    display:block !important;
    width:auto !important;
    max-width:100% !important;
    margin:0 !important;
    line-height:.92 !important;
    white-space:nowrap !important;
  }
  html body.global-ending-v88.science-v65 .science-hero h1 > span:last-child,
  html body.global-ending-v88.clinical-atlas-page .study-hero h1 > span:last-child,
  html body.global-ending-v88.commercial-v82 .commercial-v82-hero h1 > span:last-child {
    margin-top:.005em !important;
  }
}
@media (max-width:1023px) {
  html body.global-ending-v88.science-v65 .science-hero h1,
  html body.global-ending-v88.clinical-atlas-page .study-hero h1,
  html body.global-ending-v88.commercial-v82 .commercial-v82-hero h1 {
    display:flex !important;
    flex-direction:column !important;
    row-gap:.105em !important;
    max-width:720px !important;
    font-size:clamp(50px,8vw,72px) !important;
    font-weight:570 !important;
    line-height:1 !important;
    letter-spacing:-.057em !important;
  }
  html body.global-ending-v88.science-v65 .science-hero h1 > span,
  html body.global-ending-v88.clinical-atlas-page .study-hero h1 > span,
  html body.global-ending-v88.commercial-v82 .commercial-v82-hero h1 > span {
    display:block !important;
    width:auto !important;
    max-width:100% !important;
    line-height:.92 !important;
    white-space:nowrap !important;
  }
}
@media (max-width:760px) {
  html body.global-ending-v88.science-v65 .science-hero h1,
  html body.global-ending-v88.clinical-atlas-page .study-hero h1,
  html body.global-ending-v88.commercial-v82 .commercial-v82-hero h1 {
    row-gap:.09em !important;
    font-size:clamp(43px,12vw,59px) !important;
    line-height:1.02 !important;
  }
  html body.global-ending-v88.science-v65 .science-hero h1 > span,
  html body.global-ending-v88.clinical-atlas-page .study-hero h1 > span,
  html body.global-ending-v88.commercial-v82 .commercial-v82-hero h1 > span {
    width:auto !important;
    white-space:normal !important;
    line-height:.94 !important;
  }
}
