/* A denser desktop presentation: keep the hero impactful, compact the rest. */
@media (min-width: 901px) {
  /* Keep the complete opening banner visible at normal desktop zoom. */
  .hero { min-height: min(760px, 100svh); height: 100svh; }

  .section { padding-block: 108px; }
  .sectors { padding: 105px 0 110px; }
  .footprint { padding-bottom: 108px; }
  .products-section { padding-top: 108px; }
  .manufacturing { padding-block: 108px; }
  .quality-section { padding-top: 108px; }
  .facility-gallery { padding-top: 108px; }
  .customers { padding: 102px 0 108px; }
  .people { padding-block: 108px; }
  .careers { padding-block: 5.7rem; }
  .contact { padding-block: 106px; }

  .statement h2,
  .section-heading h2 { font-size: clamp(36px, 3.8vw, 54px); }
  .quality-copy h2,
  .contact-copy h2 { font-size: clamp(36px, 3.8vw, 53px); }
  .careers-copy h2 { font-size: clamp(2.4rem, 4vw, 4.2rem); }

  .stat-strip { margin-top: 70px; }
  .sector-heading,
  .manufacturing-heading { margin-bottom: 42px; }
  .products-heading,
  .gallery-heading,
  .leadership-heading,
  .people-heading,
  .customers-heading { margin-bottom: 38px; }

  .sector-card { min-height: 284px; }
  .product-card { min-height: 220px; }
  .facility-card { height: 235px; }
  .customer-card { min-height: 142px; }
  .people-image { height: 150px; }
  .people-copy { min-height: 102px; }
  .footprint-grid { grid-template-columns: .78fr 1.22fr; min-height: 480px; }
  .footprint-image { min-height: 410px; margin: 34px 0 34px 34px; }
  .footprint-copy { padding: 56px 64px; }
  .capability-image { height: 470px; }
  .quality-gallery { height: 450px; }
  .leader-image { height: 335px; }
}

@media (max-width: 900px) {
  /* Avoid clipping the opening screen in smaller browser windows. */
  .hero { min-height: min(690px, 100svh); height: 100svh; }
}

/* Keep key sections compact on narrow desktop and tablet screens. */
@media (min-width: 641px) and (max-width: 900px) {
  .statement { padding-top: 72px; }
  .statement-layout { grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 4%; }
  .statement-copy { padding-bottom: 0; }
  .statement-copy p { font-size: 14px; line-height: 1.6; }

  .manufacturing { padding: 72px 0 78px; }
  .manufacturing .section-marker { margin-bottom: 26px; }
  .manufacturing-heading { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 5%; margin-bottom: 24px; }
  .manufacturing-heading > p { margin-top: 0; }
  .capability-marquee { margin-bottom: 28px; }
  .capability-layout { grid-template-columns: minmax(0, 1.04fr) minmax(0, .96fr); gap: 4%; align-items: start; }
  .capability-image { height: 380px; }
  .capability-list article { grid-template-columns: 33px 1fr; gap: 8px; padding: 12px 0; }
  .capability-list h3 { font-size: 14px; }
  .capability-list p { font-size: 11px; line-height: 1.45; }
}
