/* PAXTON Stage 1 extension: typography and content density
   Reduces oversized body slogans, avoids excessive wrapping, and shortens vertical rhythm.
   Homepage hero remains unchanged. */

/* Shared heading behavior outside the homepage hero */
main section:not(.hero-editorial) h2,
main section:not(.hero-editorial) h3 {
  text-wrap: balance;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

/* General editorial density */
.editorial-section,
.method-section,
.system-pair,
.integration-section,
.installation-section,
.corporate-section,
.products-line-section,
.news-index,
.news-article {
  padding-top: 64px !important;
  padding-bottom: 68px !important;
}

.editorial-page main section:not(.hero-editorial):not(.about-intro-hero):not(.page-header):not(.news-page-header):not(.news-article-header):not(.product-hero):not(.ts-hero) h2 {
  max-width: 28ch;
  font-size: clamp(30px, 2.7vw, 42px);
  line-height: 1.1;
  letter-spacing: -.006em;
  text-transform: none;
}

.editorial-page main section:not(.hero-editorial) h3 {
  line-height: 1.12;
  text-transform: none;
}

.section-intro,
.method-head,
.installation-head,
.category-heading {
  margin-bottom: 30px !important;
}

.section-intro {
  grid-template-columns: 160px minmax(0, 1fr) !important;
  gap: 34px !important;
}
.section-intro h2,
.method-head h2,
.system-pair-head h2,
.integration-copy h2,
.installation-head h2,
.category-heading h2 {
  max-width: 26ch !important;
}

/* Homepage body, not the homepage hero */
.capability-feature-v3 {
  padding-top: 60px !important;
  padding-bottom: 64px !important;
}
.capability-feature-v3 .capability-heading {
  grid-template-columns: 150px minmax(0, 760px) !important;
  gap: 34px !important;
  margin-bottom: 26px !important;
}
.capability-feature-v3 .capability-heading h2,
.destination-head h2,
.cta-band h2 {
  max-width: 28ch !important;
  font-size: clamp(30px, 2.7vw, 42px) !important;
  line-height: 1.1 !important;
  text-transform: none !important;
}
/* Homepage updates heading has its own stable scale */
.home-updates-head h2 {
  max-width: 28ch !important;
  font-size: clamp(32px, 2.9vw, 44px) !important;
  line-height: 1.06 !important;
  text-transform: none !important;
}

.capability-panel-v3 {
  min-height: 360px !important;
}
.capability-panel-v3 figure img {
  min-height: 360px !important;
}
.capability-directory-v3 a {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}
.capability-directory-v3 strong {
  max-width: 30ch !important;
  font-size: clamp(20px, 1.7vw, 25px) !important;
}
.destination-section {
  padding-top: 64px !important;
  padding-bottom: 68px !important;
}
.destination-head {
  grid-template-columns: 160px minmax(0, 1fr) !important;
  gap: 34px !important;
  margin-bottom: 28px !important;
}
.destination-split,
.equipment-index,
.production-visual {
  min-height: 440px !important;
}
.equipment-index h3,
.production-copy h3 {
  max-width: 18ch !important;
  font-size: clamp(30px, 2.6vw, 40px) !important;
  line-height: 1.08 !important;
  text-transform: none !important;
}
.home-updates {
  padding-top: 54px !important;
  padding-bottom: 58px !important;
}
.cta-band {
  padding-top: 50px !important;
  padding-bottom: 50px !important;
}

/* About Us: slogan becomes supporting editorial copy, not the page's main visual */
.about-profile-section {
  padding-top: 66px !important;
  padding-bottom: 72px !important;
}
.about-profile-grid {
  grid-template-columns: minmax(360px, .37fr) minmax(0, .63fr) !important;
  gap: 50px !important;
}
.about-statement h2 {
  max-width: 19ch !important;
  margin-top: 15px !important;
  font-size: clamp(34px, 3vw, 42px) !important;
  line-height: 1.1 !important;
  text-transform: none !important;
}
.about-narrative {
  max-width: 780px !important;
  padding-top: 4px !important;
}
.about-narrative p {
  margin-bottom: 20px !important;
  font-size: 16px !important;
  line-height: 1.72 !important;
}
.about-history-section,
.about-network-section {
  padding-top: 64px !important;
  padding-bottom: 70px !important;
}
.about-history-head,
.about-network-head {
  grid-template-columns: 160px minmax(0, 1fr) !important;
  gap: 34px !important;
  margin-bottom: 38px !important;
}
.about-history-head h2,
.about-network-head h2 {
  max-width: 28ch !important;
  font-size: clamp(32px, 2.8vw, 42px) !important;
  line-height: 1.1 !important;
  text-transform: none !important;
}
.about-history-line {
  gap: 28px !important;
  padding-top: 26px !important;
}
.history-point::before {
  top: -31px !important;
}
.history-point strong {
  font-size: clamp(40px, 3.7vw, 54px) !important;
}
.history-point h3 {
  margin-top: 16px !important;
  font-size: 21px !important;
}
.about-network-grid {
  gap: 34px !important;
}
.network-item h3 {
  margin-top: 13px !important;
  margin-bottom: 12px !important;
  font-size: clamp(25px, 2.1vw, 32px) !important;
}
.network-item p {
  line-height: 1.65 !important;
}
.corporate-page .cta-band h2 {
  max-width: 30ch !important;
}

/* Products */
.products-line-section {
  padding-top: 58px !important;
  padding-bottom: 62px !important;
}
.products-line-grid {
  grid-template-columns: minmax(300px, .34fr) minmax(0, .66fr) !important;
  gap: 50px !important;
}
.products-line-copy h2 {
  max-width: 24ch !important;
  font-size: clamp(32px, 2.8vw, 42px) !important;
  line-height: 1.1 !important;
}
.products-line-media {
  min-height: 340px !important;
}
.category-block + .category-block {
  margin-top: 72px !important;
}
.category-heading {
  grid-template-columns: 90px minmax(0, 1fr) minmax(230px, 390px) !important;
  gap: 26px !important;
  padding-bottom: 20px !important;
}
.category-heading h2 {
  font-size: clamp(30px, 2.6vw, 40px) !important;
}

/* Automatic feeding & weighing */
.story-split {
  min-height: 460px !important;
}
.story-copy {
  padding-top: 46px !important;
  padding-bottom: 46px !important;
}
.story-copy h2,
.method-head h2,
.system-pair-head h2,
.integration-copy h2,
.installation-head h2,
.diagnostics-copy h2,
.product-cta h2 {
  max-width: 27ch !important;
  font-size: clamp(30px, 2.7vw, 42px) !important;
  line-height: 1.1 !important;
}
.story-media {
  min-height: 460px !important;
}
.method-section,
.system-pair,
.integration-section,
.installation-section {
  padding-top: 64px !important;
  padding-bottom: 68px !important;
}
.method-head {
  grid-template-columns: minmax(0, .58fr) minmax(300px, .42fr) !important;
  gap: 48px !important;
}
.system-pair-head {
  margin-bottom: 32px !important;
}
.integration-layout {
  grid-template-columns: minmax(300px, .40fr) minmax(0, .60fr) !important;
  gap: 48px !important;
}
.installation-grid {
  grid-template-rows: 280px 280px !important;
}
.diagnostics-copy {
  padding-top: 58px !important;
  padding-bottom: 60px !important;
}
.product-cta {
  padding-top: 54px !important;
  padding-bottom: 54px !important;
}

/* Technical Services */
.technical-v4 .ts-service-row {
  padding-top: 56px !important;
  padding-bottom: 56px !important;
  gap: 52px !important;
}
.technical-v4 .ts-service-copy h2,
.technical-v4 .ts-additional-head h2,
.technical-v4 .ts-cta-panel h2 {
  max-width: 26ch !important;
  font-size: clamp(30px, 2.7vw, 42px) !important;
  line-height: 1.1 !important;
}
.technical-v4 .ts-service-media {
  aspect-ratio: 16 / 9 !important;
}
.technical-v4 .ts-additional {
  padding-top: 56px !important;
  padding-bottom: 60px !important;
}
.technical-v4 .ts-additional-head {
  grid-template-columns: 150px minmax(0, 760px) !important;
  gap: 34px !important;
  margin-bottom: 28px !important;
}
.technical-v4 .ts-cta-wrap {
  padding-top: 38px !important;
  padding-bottom: 42px !important;
}
.technical-v4 .ts-cta-panel {
  min-height: 0 !important;
  padding: 30px 36px !important;
}

/* Legacy equipment and production-line pages */
.unified-legacy-page section,
.unified-legacy-page section.section-tight {
  padding-top: 52px !important;
  padding-bottom: 56px !important;
}
.unified-legacy-page .section-head {
  max-width: 86ch !important;
  margin-bottom: 26px !important;
}
.unified-legacy-page .section-head h2 {
  max-width: 28ch !important;
  font-size: clamp(28px, 2.5vw, 38px) !important;
  line-height: 1.1 !important;
  text-transform: none !important;
}

/* Contact */
.contact-layout {
  gap: 54px !important;
}
.contact-sidebar h2 {
  max-width: 24ch !important;
  font-size: clamp(30px, 2.7vw, 40px) !important;
  line-height: 1.1 !important;
}

/* News */
.news-index {
  padding-top: 56px !important;
  padding-bottom: 64px !important;
}
.news-index-head h2 {
  max-width: 24ch !important;
  font-size: clamp(30px, 2.6vw, 40px) !important;
  line-height: 1.1 !important;
}
.news-card h3 {
  font-size: clamp(24px, 2.1vw, 32px) !important;
  line-height: 1.12 !important;
}
.news-article {
  padding-top: 48px !important;
  padding-bottom: 68px !important;
}

@media (max-width: 980px) {
  .about-profile-grid,
  .about-history-head,
  .about-network-head,
  .section-intro,
  .capability-feature-v3 .capability-heading,
  .destination-head,
  .products-line-grid,
  .method-head,
  .integration-layout,
  .technical-v4 .ts-additional-head {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .products-line-grid,
  .integration-layout {
    gap: 36px !important;
  }

  .method-head {
    gap: 18px !important;
  }
  .about-statement h2,
  .about-history-head h2,
  .about-network-head h2,
  .editorial-page main section:not(.hero-editorial) h2 {
    max-width: 28ch !important;
  }
  .category-heading {
    grid-template-columns: 72px minmax(0, 1fr) !important;
  }
  .category-heading p {
    grid-column: 2 !important;
  }
}

@media (max-width: 760px) {
  .editorial-section,
  .method-section,
  .system-pair,
  .integration-section,
  .installation-section,
  .corporate-section,
  .about-profile-section,
  .about-history-section,
  .about-network-section,
  .products-line-section,
  .news-index,
  .news-article {
    padding-top: 48px !important;
    padding-bottom: 52px !important;
  }
  .editorial-page main section:not(.hero-editorial) h2,
  .about-statement h2,
  .about-history-head h2,
  .about-network-head h2,
  .products-line-copy h2,
  .technical-v4 .ts-service-copy h2,
  .technical-v4 .ts-additional-head h2,
  .technical-v4 .ts-cta-panel h2,
  .product-cta h2 {
    max-width: none !important;
    font-size: clamp(28px, 8vw, 36px) !important;
    line-height: 1.12 !important;
    text-wrap: balance !important;
  }
  .about-narrative p {
    font-size: 15px !important;
  }
  .installation-grid {
    grid-template-rows: 360px 240px 240px !important;
  }
  .about-history-line {
    grid-template-columns: 1fr !important;
    gap: 26px !important;
    border-top: 0 !important;
    padding-top: 0 !important;
  }
  .history-point {
    display: grid !important;
    grid-template-columns: 76px minmax(0, 1fr) !important;
    gap: 18px !important;
    padding-top: 20px !important;
    border-top: 1px solid var(--line) !important;
  }
  .history-point::before {
    display: none !important;
  }
  .history-point strong {
    font-size: 38px !important;
  }
  .history-point h3 {
    margin-top: 2px !important;
  }
  .category-heading {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  .category-heading p {
    grid-column: auto !important;
  }
  .destination-split,
  .equipment-index,
  .production-visual {
    min-height: 0 !important;
  }
  .equipment-index {
    padding: 34px 26px !important;
  }
  .production-visual {
    min-height: 390px !important;
  }
}

/* Stage 2 mobile update heading */
@media (max-width: 680px) {
  .home-updates-head h2 {
    font-size: 30px !important;
    line-height: 1.08 !important;
  }
}
