/* English text needs a compact hierarchy, not oversized Chinese-style headings.
   Scope: page intros and section headings only. Image/card geometry stays intact. */
html[lang="en"] .page-hero,
html[lang="en"] .subhero {
  padding-top: 52px;
  padding-bottom: 44px;
}
html[lang="en"] .page-hero h1,
html[lang="en"] .subhero h1 {
  font-size: clamp(30px, 2.7vw, 40px);
  max-width: 1050px;
  line-height: 1.16;
  letter-spacing: -.025em;
  text-wrap: balance;
}
html[lang="en"] .page-hero > .eyebrow,
html[lang="en"] .subhero > .eyebrow {
  margin: 0 0 12px;
}
html[lang="en"] .page-hero > p:not(.eyebrow),
html[lang="en"] .subhero > p:not(.eyebrow) {
  font-size: 16px;
  line-height: 1.65;
  margin-top: 16px;
  margin-bottom: 0;
}
html[lang="en"] .section-intro h2,
html[lang="en"] .showcase-intro h2,
html[lang="en"] .matrix-heading h2,
html[lang="en"] .solution-entry-head h2,
html[lang="en"] .capability h2 {
  font-size: clamp(26px, 2.6vw, 36px);
  line-height: 1.2;
  letter-spacing: -.02em;
}
html[lang="en"] .section-intro,
html[lang="en"] .showcase-intro,
html[lang="en"] .matrix-heading {
  margin-bottom: 26px;
}
/* Center the catalog entry's text group; preserve its existing grid span/size. */
html[lang="en"] .all-products-card {
  align-items: center;
  justify-content: center;
  text-align: center;
}
html[lang="en"] .all-products-card p {
  margin: 0 0 16px;
}
/* Pale submodule backgrounds need dark labels; keep lime on dark cards. */
html[lang="en"] .technique-solutions .eyebrow,
html[lang="en"] .workflow-production .eyebrow,
html[lang="en"] .workflow-map-section .eyebrow,
html[lang="en"] .service-points .eyebrow {
  color: var(--pine);
}
/* Wrap complete actions instead of crushing a long English label. */
html[lang="en"] .technique-solutions .module-action-row {
  flex-wrap: wrap;
  align-items: stretch;
}
html[lang="en"] .technique-solutions .module-action-row > a,
html[lang="en"] .technique-solutions .module-action-row > .module-inquiry-button {
  flex: 1 1 180px;
  min-width: 0;
  max-width: 100%;
  padding: 10px 16px;
  line-height: 1.3;
  overflow-wrap: break-word;
}
@media (max-width: 600px) {
  html[lang="en"] .page-hero,
  html[lang="en"] .subhero {
    padding-top: 32px;
    padding-bottom: 30px;
  }
  html[lang="en"] .page-hero h1,
  html[lang="en"] .subhero h1 {
    font-size: 30px;
    line-height: 1.18;
  }
}
