.sb-steps button > span:first-child {
  font-family: Figtree, system-ui, sans-serif !important;
}

#npi-check {
  --practice-field-background: #f8f6f2;
  --practice-field-border: #e7e2da;
}

/* Research: keep the audience heading close to the preceding example card on phones. */
@media (max-width: 767px) {
  [data-screen-label="Clinical"] [data-screen-label="02 Outcomes"] > section {
    padding-bottom: 24px !important;
  }

  [data-screen-label="Clinical"] [data-screen-label="05 CTA"] {
    padding-top: 24px !important;
  }

  [data-screen-label="Clinical"] [data-screen-label="02 Outcomes"] h2 {
    font-size: 2rem !important;
    line-height: 1.08 !important;
  }

  .research-academic-continuation {
    display: block;
  }

  .research-rigor-break {
    display: none;
  }

  [data-screen-label="Practice"] h1 {
    font-size: 2.4rem !important;
  }

  [data-screen-label="Practice"] [data-hero-sec] {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }

  [data-screen-label="Practice"] [data-hero-sec] > div {
    width: 100%;
    min-width: 0;
  }

  [data-screen-label="Practice"] [data-hero-sec] h1 > span {
    white-space: normal !important;
  }

  [data-screen-label="Website v6"] [data-screen-label="04 How it works"] > section {
    padding-bottom: 24px !important;
  }
  [data-screen-label="Website v6"] [data-screen-label="04 How it works"] h2 {
    width: 100%;
    max-width: none;
    text-wrap: wrap !important;
  }
  [data-screen-label="Website v6"] [data-screen-label="02 Outcomes"] > section {
    padding-top: 40px !important;
  }
}

[data-screen-label="Practice"] .sb-step-examples > div:first-child {
  align-self: center;
}

[data-screen-label="Clinical"] [data-screen-label="02 Outcomes"] section > div:has(> p):has(> div) {
  margin-top: 70px !important;
}

[data-screen-label="Newsroom"] [data-hero-sec] {
  align-items: start !important;
}

@media (min-width: 768px) {
  [data-screen-label="Clinical"] [data-hero-sec] p {
    max-width: 620px !important;
  }
}

@media (min-width: 1200px) {
  [data-screen-label="Practice"] [data-screen-label="04 How it works"] section > div:first-child {
    max-width: none !important;
  }
}

@media (max-width: 1199px) {
  [data-screen-label="Practice"] [data-screen-label="02 Capability showcase"] section > div:has(> div > img) > ul {
    flex: none !important;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }

  [data-screen-label="02 Capability showcase"] img {
    object-fit: contain !important;
  }

  [data-screen-label="Practice"] [data-screen-label="02 Capability showcase"] img {
    height: auto !important;
    bottom: auto !important;
    object-position: center top !important;
  }

  [data-screen-label="02 Capability showcase"] section > div:has(> div > img) {
    flex-direction: column !important;
    gap: 32px !important;
  }

  [data-screen-label="02 Capability showcase"] section > div:has(> div > img) > div {
    flex: none !important;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  [data-screen-label="Newsroom"] [data-hero-sec] {
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr) !important;
    column-gap: 32px !important;
  }

  [data-screen-label="Newsroom"] [data-hero-sec] > div {
    min-width: 0;
  }

  [data-screen-label="Newsroom"] [data-hero-sec] > div:last-child img {
    max-width: 100%;
    object-fit: contain;
  }

  footer > div > div[style*="grid-template-columns"] {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 24px !important;
  }

  footer > div > div[style*="grid-template-columns"] > div {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  footer > div > div[style*="grid-template-columns"] > div:last-child > div {
    flex-wrap: wrap;
    gap: 8px !important;
  }

  footer > div > div[style*="grid-template-columns"] > div:last-child img {
    max-width: 100%;
    height: auto !important;
  }

  [data-screen-label="01 Instead of and Get"] h2,
  [data-screen-label="Practice"] [data-screen-label="03 Instead of and Get"] h2 {
    font-size: clamp(2rem, 3.4vw, 2.9rem) !important;
  }

  [data-screen-label="01 Instead of and Get"] [style*="grid-template-columns"],
  [data-screen-label="03 Instead of and Get"] [style*="grid-template-columns"],
  [data-screen-label="Clinical"] [data-screen-label="02 Outcomes"] section > div[style*="grid-template-columns"] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
/* About hero: tighter space under the photo on phones */
@media (max-width: 767px) {
  section[style*="padding:88px clamp(24px, 3.9vw, 56px) 96px"] {
    padding-bottom: 40px !important;
  }
}

/* About exec team: three columns on desktop/tablet; two on phones */
@media (min-width: 768px) {
  [data-screen-label="03 Executive team"] section > div[style*="flex-wrap:wrap"] {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 260px)) !important;
    gap: 32px 24px !important;
  }
  [data-screen-label="03 Executive team"] section > div[style*="flex-wrap:wrap"] > a {
    min-width: 0 !important;
  }
}

@media (max-width: 767px) {
  [data-screen-label="03 Executive team"] section > div[style*="flex-wrap:wrap"] {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px 16px !important;
  }
  [data-screen-label="03 Executive team"] section > div[style*="flex-wrap:wrap"] > a {
    min-width: 0 !important;
  }
}

/* Newsroom hero: on phones, start the dot pattern below the Press & Media / Studies tabs. */
@media (max-width: 767px) {
  [data-screen-label="Newsroom"] div:has(> [data-hero-sec]) > div[style*="dots-research"] {
    background-position: center 270px !important;
  }
}

/* Newsroom hero: 32px less space below the featured card on phones. */
@media (max-width: 767px) {
  [data-screen-label="Newsroom"] [data-hero-sec] { padding-bottom: 88px !important; }
}

/* Newsroom closing CTA: equal space above and below the card on phones. */
@media (max-width: 767px) {
  [data-screen-label="Newsroom"] [data-screen-label="05 CTA"] { padding-bottom: 56px !important; }
}
