/* Words in space-separated scripts never split across lines; layouts adapt instead. */
/* Editorial roles are shared; product recordings and confirmed actions keep their scale. */
html:not([lang="zh-CN"]) {
  --site-type-title: 28px;
  --site-type-subtitle: 22px;
  --site-type-body: 16px;
  --site-type-support: 13px;
  --site-type-label: 14px;
}

html:not([lang="zh-CN"]) body main {
  font-size: var(--site-type-body);
  line-height: 1.75;
}

html:not([lang="zh-CN"]) body main :is(h1, h2, h3, h4, h5, h6) {
  letter-spacing: 0;
  text-wrap: pretty;
}

html:not([lang="zh-CN"]) body main h2,
html:not([lang="zh-CN"]) body .pd-hero h1 {
  line-height: 1.4;
}

html:not([lang="zh-CN"]) body main :is(.eyebrow, .mv-kicker) {
  font-size: var(--site-type-support);
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0;
}

html:not([lang="zh-CN"]) body main :is(
  .section-intro, .mv-lead, .pd-lede, .ws-description,
  .mv-chapter-copy > p:not(.mv-kicker), .pm-modules-head > p
) {
  font-size: var(--site-type-body);
  line-height: 1.75;
  max-width: 65ch;
}

html:not([lang="zh-CN"]) body main :is(.pd-card h3, .pm-module h4) {
  font-size: 18px;
  line-height: 1.5;
}

html:not([lang="zh-CN"]) body main :is(.pd-card p, .pd-steps span, .pm-module li) {
  font-size: var(--site-type-label);
  line-height: 1.75;
}

html:not([lang="zh-CN"]) body main :is(.pd-note, .pd-crumb, .pd-hero figcaption) {
  font-size: var(--site-type-support);
  line-height: 1.7;
}

/* Story navigation stays secondary to the scene and its concise editorial heading. */
html:not([lang="zh-CN"]) #workflow.ms-screen-story .section-heading {
  max-width: 760px;
  margin-bottom: 28px;
}

html:not([lang="zh-CN"]) #workflow.ms-screen-story .section-heading h2 {
  font-weight: var(--site-weight-title);
  line-height: 1.4;
  margin-bottom: 0;
}

html:not([lang="zh-CN"]) #workflow.ms-screen-story .section-heading > p {
  max-width: 66ch;
  margin-top: 12px;
  font-size: var(--site-type-body);
  font-weight: 400;
  line-height: 1.75;
  color: var(--muted);
}

html:not([lang="zh-CN"]) #workflow.ms-screen-story .mate-story-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 40px;
  align-items: center;
  gap: 16px;
  margin-top: 0;
  padding-block: 0 18px;
  border-bottom: 1px solid var(--line);
}

html:not([lang="zh-CN"]) #workflow.ms-screen-story .workflow-controls {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  width: 100%;
}

html:not([lang="zh-CN"]) #workflow.ms-screen-story .workflow-controls button[data-flow] {
  min-width: 0;
  min-height: 44px;
  height: 100%;
  padding: 10px 12px;
  font-size: var(--site-type-body);
  line-height: 1.5;
}

html:not([lang="zh-CN"]) #workflow.ms-screen-story .workflow-controls button strong {
  font-size: inherit;
  font-weight: 400;
  line-height: inherit;
  text-wrap: balance;
}

html:not([lang="zh-CN"])
  #workflow.ms-screen-story .workflow-controls button[aria-selected="true"] strong {
  font-weight: 500;
}

html:not([lang="zh-CN"]) #workflow.ms-screen-story .mate-stage.flow-detail {
  margin-top: 24px;
}

html:not([lang="zh-CN"]) #workflow.ms-screen-story .flow-story {
  margin-bottom: 20px;
  text-align: center;
}

html:not([lang="zh-CN"]) #workflow.ms-screen-story #flow-title {
  max-width: 64ch;
  margin-inline: auto;
  font-size: 20px !important;
  font-weight: var(--site-weight-subtitle);
  line-height: 1.5;
  text-align: center;
  text-wrap: pretty;
}

html:not([lang="zh-CN"]) #workflow.ms-screen-story .flow-story .approval-label {
  justify-content: flex-start;
  gap: 8px;
  margin-top: 8px;
  font-size: var(--site-type-support);
  font-weight: 400;
  line-height: 1.7;
  text-align: start;
  color: var(--muted);
}

@media (max-width: 760px) {
  html:not([lang="zh-CN"]) #workflow.ms-screen-story .workflow-controls {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html:not([lang="zh-CN"]) #workflow.ms-screen-story .mate-story-toolbar {
    grid-template-columns: minmax(0, 1fr) 44px;
    gap: 8px;
  }

  html:not([lang="zh-CN"]) #workflow.ms-screen-story .workflow-controls button[data-flow] {
    padding-inline: 2px;
    font-size: var(--site-type-label);
  }

  html:not([lang="zh-CN"]) #workflow.ms-screen-story #flow-title {
    font-size: 18px !important;
  }

  html:not([lang="zh-CN"]) #workflow.ms-screen-story .mate-beats {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    min-height: 132px;
  }

  html:not([lang="zh-CN"]) #workflow.ms-scene-products .mate-beats > button.mate-beat {
    justify-content: flex-start;
    padding: 10px 8px !important;
    font-size: 12px !important;
    text-align: start;
    text-wrap: pretty;
  }

  html:not([lang="zh-CN"])
    #workflow.ms-scene-products .ms-scene-product .ms-output-lines {
    font-size: 12px;
    line-height: 1.65;
  }

  html:not([lang="zh-CN"]) #workflow.ms-screen-story .ms-output-line dt,
  html:not([lang="zh-CN"]) #workflow.ms-screen-story .ms-output-line dd {
    display: block;
  }

  html:not([lang="zh-CN"]) #workflow.ms-screen-story .ms-output-line dt {
    margin-block-end: 4px;
  }
}

/* Deployment descriptions and supporting facts use a compact shared hierarchy. */
#deployment .deployment-grid article {
  min-width: 0;
}

#deployment .deployment-grid article > p {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.75;
  margin-top: 16px;
  color: var(--ink);
  text-wrap: pretty;
}

#deployment .deployment-grid ul {
  display: grid;
  align-content: start;
  gap: 10px;
  margin-block: 24px 28px;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.75;
  color: var(--muted);
}

#deployment .deployment-grid li {
  position: relative;
  padding-inline-start: 12px;
  text-wrap: pretty;
}

#deployment .deployment-grid li::before {
  position: absolute;
  inset-inline-start: 0;
  margin: 0;
  color: var(--blue);
}

#deployment .deployment-grid .text-link {
  align-self: flex-end;
  margin-left: auto;
  margin-right: 0;
  letter-spacing: 0;
}

@media (min-width: 901px) and (max-width: 1100px) {
  #deployment .deployment-grid .text-link {
    padding-inline: 12px;
    max-width: 100%;
  }
}

@media (min-width: 901px) {
  #deployment .deployment-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #deployment .deployment-grid article > p {
    min-height: 3.5em;
  }
}

@media (min-width: 901px) and (max-width: 1100px) {
  #deployment .deployment-grid article > p {
    min-height: 5.25em;
  }
}

@media (max-width: 900px) {
  #deployment .deployment-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  #deployment .deployment-grid article {
    padding: 28px 0;
    border-inline: 0;
    border-bottom: 1px solid var(--line);
  }

  #deployment .deployment-grid article:first-child,
  #deployment .deployment-grid article:last-child {
    padding-inline: 0;
  }
}

/* The model introduction reads as one hierarchy rather than competing headlines. */
html:not([lang="zh-CN"]) #intelligence .mv-heading {
  margin-bottom: 24px;
}

html:not([lang="zh-CN"]) #intelligence .mv-lead,
html:not([lang="zh-CN"]) #intelligence .mv-chapter-copy > p:not(.mv-kicker),
html:not([lang="zh-CN"]) #products #product-description,
html:not([lang="zh-CN"]) #workflow #flow-description,
html:not([lang="zh-CN"]) body .pd-hero p.pd-lede {
  font-size: var(--site-type-body);
  line-height: 1.75;
  max-width: 65ch;
}

html:not([lang="zh-CN"]) #hero.lean-opening .hero-content h1 {
  width: min(540px, 52%);
  max-width: min(540px, 52%);
  font-size: 38px;
  line-height: 1.3;
  letter-spacing: 0;
}

/* Keep both claims in one reading column, clear of the portrait. */
html:not([lang="zh-CN"]) #hero.lean-opening .hero-content {
  justify-content: center;
  padding-block: 35px 130px;
}

html:not([lang="zh-CN"]) #hero.lean-opening .hero-content h1 > span {
  display: block;
  white-space: nowrap;
  text-wrap: nowrap;
}

html:not([lang="zh-CN"]) #hero.lean-opening .hero-content h1 > span + span {
  margin-top: 16px;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

html:not([lang="zh-CN"]) #hero.lean-opening .hero-actions {
  margin-top: 36px;
  gap: 16px 28px;
  flex-wrap: wrap;
  max-width: min(540px, 52%);
}

html:not([lang="zh-CN"]) #hero.lean-opening .journey-role-links {
  margin-top: 28px;
  gap: 12px 28px;
  max-width: min(540px, 52%);
}

@media (max-width: 1100px) and (min-width: 601px) {
  html:not([lang="zh-CN"]) #hero.lean-opening .hero-content h1,
  html:not([lang="zh-CN"]) #hero.lean-opening .hero-actions,
  html:not([lang="zh-CN"]) #hero.lean-opening .journey-role-links {
    max-width: 50%;
  }

  html:not([lang="zh-CN"]) #hero.lean-opening .hero-content h1 {
    width: 50%;
  }
}

@media (max-width: 600px) {
  html:not([lang="zh-CN"]) #hero.lean-opening .hero-content {
    padding-block: 32px 36px;
  }

  html:not([lang="zh-CN"]) #hero.lean-opening .hero-content h1,
  html:not([lang="zh-CN"]) #hero.lean-opening .hero-actions,
  html:not([lang="zh-CN"]) #hero.lean-opening .journey-role-links {
    max-width: 100%;
  }

  html:not([lang="zh-CN"]) #hero.lean-opening .hero-content h1 > span + span {
    margin-top: 12px;
  }

  html:not([lang="zh-CN"]) #hero.lean-opening .hero-content h1 {
    width: 100%;
  }

  html:not([lang="zh-CN"]) #hero.lean-opening .hero-actions {
    margin-top: 28px;
    display: flex;
    align-items: center;
    gap: 12px 24px;
  }

  html:not([lang="zh-CN"]) body #hero.lean-opening .hero-actions .button,
  html:not([lang="zh-CN"]) body #hero.lean-opening .hero-actions .hero-link {
    width: auto;
    min-height: 44px;
    padding: 0 0 4px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--line) !important;
    border-radius: 0;
    color: var(--navy) !important;
    font-size: 16px !important;
    justify-content: flex-start;
  }

  html:not([lang="zh-CN"]) #hero.lean-opening .journey-role-links {
    margin-top: 22px;
  }
}

html:not([lang="zh-CN"]) #intelligence .mv-family li,
html:not([lang="zh-CN"]) #intelligence .mv-family p {
  font-size: var(--site-type-label);
}

/* A full-width legend precedes four equal model tiles; it is not a fifth tile. */
html:not([lang="zh-CN"]) #lean-model-benchmark .lb-models legend {
  float: none;
  grid-column: 1 / -1;
  margin-bottom: 4px;
  font-size: var(--site-type-support);
}

html:not([lang="zh-CN"]) #lean-model-benchmark h4 {
  font-size: 20px;
  line-height: 1.45;
}

html:not([lang="zh-CN"]) #lean-model-benchmark .lb-scope {
  font-size: var(--site-type-support);
}

html:not([lang="zh-CN"]) #lean-model-benchmark .lb-model-choice {
  grid-template-columns: 16px minmax(0, 1fr);
  gap: 8px;
  padding: 14px;
  border-radius: 8px;
}

html:not([lang="zh-CN"]) #lean-model-benchmark .lb-model-choice > span:not(.lb-overall) {
  display: block;
  grid-column: 2;
  grid-row: 1;
}

html:not([lang="zh-CN"]) #lean-model-benchmark .lb-model-choice input {
  grid-column: 1;
  grid-row: 1;
}

html:not([lang="zh-CN"]) #lean-model-benchmark .lb-model-choice strong {
  font-size: var(--site-type-support);
  font-weight: 500;
  line-height: 1.5;
}

html:not([lang="zh-CN"]) #lean-model-benchmark .lb-model-choice small {
  font-size: 12px !important;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
}

html:not([lang="zh-CN"]) #lean-model-benchmark .lb-model-choice .lb-overall {
  grid-column: 2;
  grid-row: 2;
  justify-self: end;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.25;
}

html:not([lang="zh-CN"]) #lean-model-benchmark .lb-tabs {
  flex-wrap: wrap;
}

html:not([lang="zh-CN"]) #lean-model-benchmark .lb-tabs button {
  font-size: var(--site-type-label);
  font-weight: 400;
}

html:not([lang="zh-CN"]) #lean-model-benchmark .lb-values caption {
  font-size: var(--site-type-label);
  font-weight: 500;
}

html:not([lang="zh-CN"]) #lean-model-benchmark .lb-values tbody td {
  font-weight: 500;
}

@media (max-width: 1100px) {
  html:not([lang="zh-CN"]) {
    --site-type-title: 26px;
    --site-type-subtitle: 20px;
  }

  html:not([lang="zh-CN"]) #hero.lean-opening .hero-content h1 {
    font-size: 32px;
  }
}

@media (max-width: 760px) {
  html:not([lang="zh-CN"]) #intelligence .mv-performance-heading {
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
  }
}

@media (max-width: 600px) {
  html:not([lang="zh-CN"]) {
    --site-type-title: 23px;
    --site-type-subtitle: 19px;
  }

  html:not([lang="zh-CN"]) #lean-model-benchmark .lb-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  html:not([lang="zh-CN"]) #hero.lean-opening .hero-content h1 {
    font-size: 27px;
  }
}

@media (max-width: 380px) {
  html:not([lang="zh-CN"]) #hero.lean-opening .hero-content h1 {
    font-size: 25px;
  }
}

@media (max-width: 540px) {
  html:not([lang="zh-CN"]) #lean-model-benchmark .lb-models {
    grid-template-columns: minmax(0, 1fr);
  }

  html:not([lang="zh-CN"]) #lean-model-benchmark .lb-model-choice {
    grid-template-columns: 16px minmax(0, 1fr) auto;
    align-items: center;
  }

  html:not([lang="zh-CN"]) #lean-model-benchmark .lb-model-choice .lb-overall {
    grid-column: 3;
    grid-row: 1;
    font-size: 22px;
  }
}

html:not([lang="zh-CN"]) body *,
html:not([lang="zh-CN"]) body *::before,
html:not([lang="zh-CN"]) body *::after {
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: manual !important;
}

/* Korean keeps each word together; unspaced text such as Chinese names may still wrap. */
html[lang="ko"] body * {
  word-break: keep-all !important;
  overflow-wrap: anywhere !important;
}

/* Desktop navigation keeps each label intact and compact. */
@media (min-width: 1101px) {
  html:not([lang="zh-CN"]) .header #nav {
    gap: 22px;
  }

  html:not([lang="zh-CN"]) .header #nav > a,
  html:not([lang="zh-CN"]) .header #nav .nav-flyout-trigger {
    font-size: 0.875rem;
    line-height: 1.4;
  }
}

/* Hospital names sit below the emblem on narrower case cards. */
@media (min-width: 701px) and (max-width: 1100px) {
  html:not([lang="zh-CN"]) #customers .story-card-identity {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  html:not([lang="zh-CN"]) #customers .story-card-identity p {
    font-size: 0.8125rem;
    min-height: calc(1.6em * 4);
    align-items: flex-start;
  }
}

/* Platform steps use fewer, wider columns when labels are long. */
@media (max-width: 1100px) {
  html:not([lang="zh-CN"]) .lean-platform-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 860px) {
  html:not([lang="zh-CN"]) .lean-platform-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* ClinMate scene tabs use two columns on phones for longer labels. */
@media (max-width: 760px) {
  html:not([lang="zh-CN"]):not([lang="ja"]):not([lang="ko"]) #products .cx-tab {
    flex-basis: calc((100% - 6px) / 2);
    width: calc((100% - 6px) / 2);
    font-size: calc(0.8125rem - 2px);
  }
}

/* Case topics may wrap on narrower cards while keeping one shared row height. */
@media (max-width: 1100px) {
  html:not([lang="zh-CN"]) #customers .impact-press-card h3 {
    white-space: normal;
    min-height: calc(1.65em * 2);
  }
}

/* Long compound labels get a slightly smaller size on small phones. */
@media (max-width: 420px) {
  html:is([lang="de"], [lang="fr"], [lang="es"], [lang="en"]) #workflow .workspace-name,
  html:is([lang="de"], [lang="fr"], [lang="es"], [lang="en"]) #products .workspace-name {
    font-size: 10px !important;
  }

  html:is([lang="de"], [lang="fr"], [lang="es"], [lang="en"]) #workflow.ms-screen-story .mate-beat {
    font-size: 0.65rem !important;
    padding-inline: 1px !important;
  }

  html:is([lang="de"], [lang="fr"], [lang="es"], [lang="en"]) .lb-model-choice small {
    font-size: 9.5px !important;
    letter-spacing: -0.01em;
  }
}

@media (max-width: 760px) {
  html:not([lang="zh-CN"]) #workflow.ms-screen-story .mate-visual .mate-relay-node .workspace-name {
    max-width: 104px;
  }
}

/* Footer lines stay within the page width on phones. */
@media (max-width: 1100px) {
  .footer-bottom > * {
    min-width: 0;
    max-width: 100%;
  }

  .footer-bottom > span:last-of-type {
    white-space: normal;
  }
}
