@font-face {
  font-family: "Company Sans SC";
  src: url("../fonts/company-sans-sc.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Company Sans SC";
  src: url("../fonts/company-sans-sc-bold.woff2") format("woff2");
  font-style: normal;
  font-weight: 700 900;
  font-display: swap;
}

.company-preview {
  margin: 0;
  background: #fff;
}

.company-module {
  --module-blue: #0060ff;
  --module-ink: #102746;
  --module-muted: #7787a2;
  position: relative;
  isolation: isolate;
  box-sizing: border-box;
  color: var(--module-ink);
  font-family: "Company Sans SC", "Microsoft YaHei", "PingFang SC", sans-serif;
  -webkit-font-smoothing: antialiased;
  scroll-margin-top: var(--header-height, 0px);
}

.company-module *,
.company-module *::before,
.company-module *::after {
  box-sizing: border-box;
}

.company-module h2,
.company-module h3,
.company-module p,
.company-module figure {
  margin: 0;
}

.module-heading {
  position: relative;
  z-index: 2;
  padding-inline: 20px;
  text-align: center;
}

.module-kicker {
  color: #8d99b0;
  font-family: Arial, "Microsoft YaHei", sans-serif;
  font-size: 22px;
  font-weight: 500;
  line-height: 30px;
}

.company-module .module-title {
  margin: 9px 0 0;
  font-size: 56px;
  font-weight: 800;
  line-height: 70px;
  letter-spacing: 0;
}

.module-title span,
.about-lead span {
  color: var(--module-blue);
}

.module-title span.accent-orange {
  color: var(--orange) !important;
}

.module-heading-line {
  display: block;
  width: 38px;
  height: 2px;
  margin: 5px auto 8px;
  background: var(--module-blue);
}

.module-subtitle {
  color: var(--module-muted);
  font-size: 22px;
  line-height: 32px;
  letter-spacing: 0.25px;
}

.module-arrow {
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Images intentionally have no src. Add src="imga/your-file.jpg" in the HTML. */
.module-image-slot {
  position: relative;
  overflow: hidden;
  background: #f0f4f9;
}

.module-image-slot > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.module-image-slot > img:not([src]),
.module-image-slot > img[src=""] {
  display: none;
}

/* News reference: 1536px canvas, 50px outer margins, 746px / 646px columns. */
.company-news {
  padding: 30px 0 79px;
  background: radial-gradient(ellipse at 43% 40%, #fff 30%, #fafcfe 100%);
}

/* 首页「新闻资讯」区块：蓝色强调色改为橙色（仅首页，不含新闻列表页） */
.company-news.company-module--home {
  --module-blue: var(--orange);
}

/* 首页「新闻资讯」底色与产品中心等区块一致：纯黑 + 照片做背景（叠黑色蒙版压暗）。
   只作用于首页（news.html 的 .company-news 不带 company-module--home，不受影响）。
   需 !important 盖过 style.css 中共享深色主题的
   .company-module { background: var(--theme-dark) !important }。 */
.company-news.company-module--home {
  background:
    linear-gradient(rgba(0, 0, 0, 0.86), rgba(0, 0, 0, 0.86)),
    url("/assets/index/imga/new-banner-1.jpg") center / cover no-repeat,
    #000 !important;
}

.news-container {
  width: min(1436px, calc(100% - 100px));
  margin-inline: auto;
}

.news-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin: 45px 0 37px;
}

.news-tabs {
  display: flex;
  gap: 23px;
  min-width: 0;
}

.news-tab {
  display: inline-flex;
  min-width: 149px;
  min-height: 54px;
  align-items: center;
  justify-content: center;
  padding: 12px 26px;
  border-radius: 9px;
  color: #2b4164;
  background: #f0f3f8;
  font-size: 20px;
  line-height: 30px;
  white-space: nowrap;
}

.news-tab.is-active {
  color: #fff;
  background: var(--module-blue);
  font-weight: 700;
}

.news-more {
  display: inline-flex;
  min-width: 168px;
  min-height: 54px;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 25px;
  border: 1px solid var(--module-blue);
  border-radius: 10px;
  color: var(--module-blue);
  font-size: 19px;
  line-height: 28px;
}

.news-layout {
  display: grid;
  grid-template-columns: minmax(0, 746fr) minmax(0, 646fr);
  align-items: start;
  gap: 42px;
}

/* 选择器带 .company-news 以覆盖 news.css 里的 a.news-featured { display: block } */
.company-news a.news-featured {
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 12px 34px rgb(42 74 113 / 5%);
}

.news-featured-photo {
  flex: 0 0 auto;
  aspect-ratio: 746 / 393;
}

.news-featured-body {
  position: relative;
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 33px 31px 32px;
}

.news-category {
  position: absolute;
  top: -17px;
  left: 31px;
  padding: 6px 14px;
  border-radius: 5px;
  color: #fff;
  background: var(--module-blue);
  font-size: 16px;
  font-weight: 700;
  line-height: 22px;
}

.news-featured-meta {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
}

.news-featured-meta h3 {
  min-width: 0;
  font-size: 24px;
  font-weight: 700;
  line-height: 36px;
}

.news-date {
  flex: 0 0 auto;
  color: #94a1bb;
  font-family: Arial, sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  white-space: nowrap;
}

.company-module .news-featured-description {
  margin-top: 14px;
  color: var(--module-muted);
  font-size: 18px;
  line-height: 28px;
}

/* 首页「新闻资讯」：查看更多按钮移到卡片下方居中显示
   （原来在标题下方的工具条里，靠左且与卡片区脱节） */
.news-actions {
  margin-top: 34px;
  text-align: center;
}

/* 工具条在首页已移除，卡片区与标题之间补回间距 */
.company-news.company-module--home .news-layout {
  margin-top: 37px;
  /* 仅首页左右两栏等高：右侧列表更高时，左侧头条卡片自动拉伸与之底部对齐 */
  align-items: stretch;
}

/* 首页「新闻资讯」内容宽度与「工程案例」「产品中心」一致（1470px / 88%），
   让左侧大图的左边缘与其它区块对齐（原来用 1436px，比其它区块窄，左边缘差约 17px）。
   仅宽屏生效；窄屏仍沿用为右侧悬浮工具栏预留的边距，不做改动。 */
@media (min-width: 1451px) {
  .company-news.company-module--home .news-container {
    width: min(1470px, 88%);
  }
}

/* 首页「新闻资讯」标题加点橙色：标题里的强调词 + 标题下方短横线
   （样式与「工程案例」「售后服务与配件」保持一致；需 !important 盖过
   style.css 共享深色主题里已强制成浅灰/灰的同名规则） */
.company-news.company-module--home .module-title span {
  color: var(--orange) !important;
}

.company-news.company-module--home .module-heading-line {
  background: var(--orange) !important;
}

/* 首页「新闻资讯」底部按钮：与「工程案例」的「查看更多案例」按钮统一样式
   （浅灰底 #e8e8e8 + 深灰字 #4f4f4f + 灰描边 + 胶囊圆角，hover 反白） */
.company-news.company-module--home .news-actions .news-more {
  gap: 9px;
  min-width: 196px;
  min-height: 41px;
  padding: 8px 27px;
  border: 1px solid #9b9b9b !important;
  border-radius: 999px;
  color: #4f4f4f !important;
  background: #e8e8e8 !important;
  font: 600 15px/23px "Microsoft YaHei", "PingFang SC", sans-serif;
  transition: color 200ms ease, background 200ms ease;
}

.company-news.company-module--home .news-actions .news-more:hover,
.company-news.company-module--home .news-actions .news-more:focus-visible {
  color: #fff !important;
  background: #9b9b9b !important;
}

.company-news.company-module--home .news-actions .news-more svg {
  width: 17px;
  height: 17px;
  stroke-width: 1.6;
}

.news-detail-link {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  gap: 10px;
  /* 卡片被拉伸到与右侧列表等高时，"查看详情"贴到卡片底部 */
  margin-top: auto;
  padding-top: 20px;
  color: var(--module-blue);
  font-size: 17px;
  font-weight: 700;
  line-height: 28px;
}

.news-list {
  display: grid;
  min-width: 0;
}

.news-row {
  display: grid;
  grid-template-columns: 148px minmax(0, 1fr) 104px;
  align-items: start;
  column-gap: 24px;
  min-width: 0;
  min-height: 140px;
  margin-bottom: 18px;
  padding-bottom: 18px;
  border-bottom: 1px solid #e2e8f0;
}

.news-row:last-child {
  margin-bottom: 0;
}

.news-thumbnail {
  width: 148px;
  height: 121px;
  border-radius: 8px;
}

.news-row-copy {
  min-width: 0;
  padding-top: 13px;
}

/* 首页新闻列表：标题与摘要限制行数，避免英文/西语/俄语等较长文本
   把单行卡片撑高，导致整体布局与中文不一致（中文文本本身不会超过该行数） */
.news-row-copy h3 {
  display: -webkit-box;
  overflow: hidden;
  overflow-wrap: break-word;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  font-size: 18px;
  font-weight: 700;
  line-height: 28px;
}

.company-module .news-row-copy p {
  display: -webkit-box;
  overflow: hidden;
  overflow-wrap: break-word;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  margin-top: 10px;
  color: var(--module-muted);
  font-size: 16px;
  line-height: 27px;
}

.news-row-meta {
  display: flex;
  /* 日期与箭头作为一组，垂直居中于整条新闻卡片 */
  align-self: stretch;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  gap: 22px;
  /* 时间与箭头整体向左内收，与卡片右边缘留出间距 */
  padding-right: 10px;
}

.news-row-arrow {
  display: grid;
  width: 31px;
  height: 31px;
  place-items: center;
  border: 1px solid var(--module-blue);
  border-radius: 50%;
  color: var(--module-blue);
}

.news-row-arrow .module-arrow {
  width: 19px;
  height: 19px;
  stroke-width: 1.2;
}

.company-customers {
  padding: 36px 0 64px;
  background: linear-gradient(180deg, #fbfdff, #f5f9fd);
}

.customers-container {
  width: min(1436px, calc(100% - 100px));
  margin: 40px auto 0;
}

.customers-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
}

.customer-photo {
  min-width: 0;
  aspect-ratio: 4 / 3;
  border-radius: 10px;
  box-shadow: 0 6px 22px rgb(42 74 113 / 4%);
}

.customer-photo > img {
  object-fit: contain;
  object-position: center;
}

/* About reference: heading, editorial copy and full-bleed visual, four values. */
.company-about {
  --module-blue: var(--orange);
  padding: 30px 0 52px;
  /* 底色与首页「产品中心」一致：纯黑 + 深色矿山照片做背景（叠黑色蒙版压暗）。
     需 !important 才能盖过 style.css 中共享深色主题的
     .company-module { background: var(--theme-dark) !important }。 */
  background:
    linear-gradient(rgba(0, 0, 0, 0.86), rgba(0, 0, 0, 0.86)),
    url("/assets/index/imga/01.jpg") center / cover no-repeat,
    #000 !important;
}

.company-about .module-subtitle {
  font-size: 20px;
}

/* 左文右图：图片按原始比例自适应，不再拉伸铺满整段高度。 */
.about-stage {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 56px;
  align-items: center;
  width: min(1400px, calc(100% - 136px));
  margin: 29px auto 0;
}

.about-stage-inner {
  position: relative;
  z-index: 1;
  width: 100%;
}

.about-introduction {
  width: 100%;
}

.company-module .about-lead {
  font-size: 50px;
  font-weight: 800;
  line-height: 60px;
  letter-spacing: -1px;
}

.about-copy-rule {
  display: block;
  width: 36px;
  height: 2px;
  margin: 18px 0 20px;
  background: var(--module-blue);
}

.about-description {
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  max-width: 620px;
  overflow: hidden;
  color: #647590;
  font-size: 18px;
  line-height: 30px;
}

.about-statistics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin-top: 28px;
}

@media (min-width: 1451px) {
  .about-statistics {
    grid-template-columns: 164px 154px 153px minmax(0, 1fr);
  }
}

.about-stat-icon {
  display: block;
  width: 36px;
  height: 36px;
  color: var(--module-blue);
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.about-statistic strong {
  display: block;
  margin-top: 10px;
  font-family: Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
  line-height: 38px;
}

.about-statistic span {
  display: block;
  margin-top: 2px;
  color: #6f7e98;
  font-size: 14px;
  line-height: 22px;
  white-space: nowrap;
}

.about-more {
  display: inline-flex;
  min-width: 156px;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  gap: 13px;
  margin-top: 26px;
  padding: 9px 23px;
  border-radius: 5px;
  color: #fff;
  background: var(--module-blue);
  font-size: 17px;
  line-height: 26px;
}

.about-factory-photo {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  background: #edf3fa;
}

.about-factory-photo img {
  position: static;
  display: block;
  width: 100%;
  height: auto;
  object-position: center;
}

.about-video {
  position: absolute;
  z-index: 2;
  right: 26px;
  bottom: 18px;
  display: flex;
  width: 315px;
  min-height: 94px;
  align-items: center;
  gap: 18px;
  padding: 20px 24px;
  border: 1px solid rgb(255 255 255 / 22%);
  border-radius: 9px;
  color: white;
  background: rgb(25 34 42 / 80%);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.about-video-play {
  display: grid;
  width: 44px;
  height: 44px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  color: #28343d;
  background: #fff;
}

.about-video-play svg {
  width: 20px;
  height: 20px;
  margin-left: 3px;
  fill: currentColor;
}

.about-video-copy {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 2px;
}

.about-video-copy strong {
  font-size: 20px;
  font-weight: 700;
  line-height: 29px;
}

.about-video-copy small {
  color: #e0e5ec;
  font-size: 14px;
  line-height: 22px;
}

.about-values {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  width: min(1440px, calc(100% - 96px));
  margin: 32px auto 0;
}

.about-value {
  min-width: 0;
  min-height: 224px;
  padding: 27px 20px 28px;
  border-radius: 10px;
  background: linear-gradient(125deg, #f5f8fc, #f7f9fc);
  text-align: center;
}

.about-value-icon {
  display: block;
  width: 46px;
  height: 46px;
  margin: 0 auto 10px;
  color: var(--orange);
  fill: none;
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.about-value h3 {
  color: #000000 !important;
  font-size: 20px;
  font-weight: 700;
  line-height: 30px;
}

.about-value-rule {
  display: block;
  width: 34px;
  height: 1px;
  margin: 12px auto 14px;
  background: var(--orange);
}

.about-value p {
  color: #000000 !important;
  font-size: 17px;
  line-height: 27px;
}

@media (max-width: 1300px) {
  .customers-container {
    width: calc(100% - 64px);
  }

  .customers-grid {
    gap: 20px;
  }

  .news-container {
    width: calc(100% - 64px);
  }

  .news-tabs {
    gap: 16px;
  }

  .news-tab {
    min-width: 130px;
    font-size: 18px;
  }

  .news-layout {
    gap: 30px;
  }

  .news-featured-body {
    padding: 31px 24px 28px;
  }

  .news-category {
    left: 24px;
  }

  .news-featured-meta {
    align-items: flex-start;
    flex-direction: column;
    gap: 6px;
  }

  .news-featured-meta h3 {
    font-size: 22px;
    line-height: 32px;
  }

  .company-module .news-featured-description {
    font-size: 16px;
    line-height: 27px;
  }

  .news-row {
    grid-template-columns: 120px minmax(0, 1fr) 88px;
    gap: 16px;
    min-height: 131px;
  }

  .news-thumbnail {
    width: 120px;
    height: 108px;
  }

  .news-row-copy {
    padding-top: 2px;
  }

  .news-row-meta {
    padding-right: 8px;
  }

  .news-row-copy h3 {
    font-size: 16px;
    line-height: 25px;
  }

  .company-module .news-row-copy p {
    margin-top: 7px;
    font-size: 14px;
    line-height: 24px;
  }

  .news-date {
    font-size: 15px;
    line-height: 25px;
  }

  .about-stage {
    width: calc(100% - 80px);
    gap: 40px;
  }

  .company-module .about-lead {
    font-size: 42px;
    line-height: 54px;
  }

  .about-description {
    font-size: 16px;
    line-height: 29px;
  }

  .about-description br {
    display: none;
  }

  .about-statistics {
    gap: 12px;
  }

  .about-statistic span {
    font-size: 12px;
  }

  .about-values {
    width: calc(100% - 64px);
  }

  .about-value {
    padding-inline: 14px;
  }

  .about-value p {
    font-size: 15px;
  }
}

@media (max-width: 1024px) {
  .customers-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .customers-container {
    margin-top: 30px;
  }

  .company-customers {
    padding-bottom: 40px;
  }

  .company-news,
  .company-about {
    padding-top: 36px;
    padding-bottom: 40px;
  }

  .company-module .module-title {
    font-size: 48px;
    line-height: 62px;
  }

  .module-kicker {
    font-size: 18px;
    line-height: 27px;
  }

  .module-subtitle,
  .company-about .module-subtitle {
    font-size: 17px;
    line-height: 29px;
  }

  .news-toolbar {
    gap: 16px;
    margin: 32px 0 28px;
  }

  .news-tabs {
    gap: 10px;
  }

  .news-tab {
    min-width: 108px;
    min-height: 46px;
    padding: 8px 16px;
    font-size: 16px;
  }

  .news-more {
    min-width: 136px;
    min-height: 46px;
    padding: 8px 18px;
    font-size: 16px;
  }

  .news-layout {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .news-featured-meta {
    align-items: baseline;
    flex-direction: row;
    gap: 18px;
  }

  .news-list {
    padding-top: 0;
  }

  .news-row {
    grid-template-columns: 148px minmax(0, 1fr) 104px;
    column-gap: 24px;
    min-height: 140px;
  }

  .news-thumbnail {
    width: 148px;
    height: 121px;
  }

  .news-row-copy h3 {
    font-size: 18px;
    line-height: 28px;
  }

  .company-module .news-row-copy p {
    -webkit-line-clamp: 3;
    line-clamp: 3;
    margin-top: 10px;
    font-size: 16px;
    line-height: 27px;
  }

  .news-row-copy {
    padding-top: 10px;
  }

  .about-stage {
    grid-template-columns: minmax(0, 1fr);
    width: calc(100% - 64px);
    gap: 26px;
    margin-top: 32px;
  }

  .company-module .about-lead {
    font-size: 40px;
    line-height: 54px;
  }

  .about-description {
    max-width: 760px;
  }

  .about-statistics {
    max-width: 660px;
  }

  .about-statistic span {
    font-size: 14px;
  }

  .about-video {
    right: 24px;
    bottom: 18px;
  }

  .about-values {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 24px;
  }
}

@media (max-width: 600px) {
  .company-customers {
    padding: 28px 0 32px;
  }

  .customers-container {
    width: calc(100% - 32px);
    margin-top: 24px;
  }

  .customers-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .customer-photo {
    border-radius: 8px;
  }

  .company-news,
  .company-about {
    padding: 28px 0 32px;
  }

  .module-heading {
    padding-inline: 16px;
  }

  .module-kicker {
    font-size: 13px;
    line-height: 22px;
  }

  .company-module .module-title {
    margin-top: 6px;
    font-size: 36px;
    line-height: 49px;
  }

  .module-heading-line {
    width: 30px;
    margin: 6px auto 10px;
  }

  .module-subtitle,
  .company-about .module-subtitle {
    max-width: 330px;
    margin-inline: auto;
    font-size: 13px;
    line-height: 23px;
    letter-spacing: 0;
    text-wrap: balance;
  }

  .news-container {
    width: calc(100% - 32px);
  }

  .news-toolbar {
    flex-wrap: wrap;
    gap: 15px;
    margin: 26px 0 22px;
  }

  .news-tabs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 7px;
    width: 100%;
  }

  .news-tab {
    min-width: 0;
    min-height: 42px;
    padding: 8px 3px;
    border-radius: 6px;
    font-size: 13px;
    line-height: 24px;
  }

  .news-more {
    min-width: 115px;
    min-height: 40px;
    margin-left: auto;
    padding: 7px 14px;
    border-radius: 7px;
    font-size: 14px;
    line-height: 24px;
  }

  .news-more .module-arrow {
    width: 18px;
    height: 18px;
  }

  .news-layout {
    gap: 24px;
  }

  .news-featured-body {
    padding: 29px 18px 23px;
  }

  .news-category {
    left: 18px;
    top: -15px;
    padding: 5px 11px;
    font-size: 13px;
    line-height: 20px;
  }

  .news-featured-meta {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }

  .news-featured-meta h3 {
    font-size: 20px;
    line-height: 31px;
  }

  .news-date {
    font-size: 13px;
    line-height: 20px;
  }

  .company-module .news-featured-description {
    margin-top: 10px;
    font-size: 14px;
    line-height: 25px;
  }

  .news-actions {
    margin-top: 24px;
  }

  .company-news.company-module--home .news-layout {
    margin-top: 26px;
  }

  .news-detail-link {
    margin-top: 15px;
    font-size: 14px;
    line-height: 24px;
  }

  .news-row {
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 10px 14px;
    min-height: 0;
    margin-bottom: 18px;
    padding-bottom: 18px;
  }

  .news-thumbnail {
    width: 96px;
    height: 88px;
    margin-top: 3px;
    border-radius: 6px;
  }

  .news-row-copy {
    padding-top: 0;
  }

  .news-row-copy h3 {
    font-size: 16px;
    line-height: 25px;
    overflow-wrap: anywhere;
  }

  .company-module .news-row-copy p {
    margin-top: 7px;
    font-size: 13px;
    line-height: 23px;
  }

  .news-row-meta {
    grid-column: 2;
    align-self: auto;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-top: 0;
    padding-right: 0;
  }

  .news-row-arrow {
    width: 29px;
    height: 29px;
  }

  .about-stage {
    width: calc(100% - 40px);
    margin-top: 28px;
  }

  .company-module .about-lead {
    font-size: clamp(27px, 7.6vw, 36px);
    line-height: 1.4;
    letter-spacing: 0;
  }

  .about-copy-rule {
    width: 30px;
    margin: 15px 0 17px;
  }

  .about-description {
    font-size: 14px;
    line-height: 26px;
  }

  .about-statistics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 20px;
    margin-top: 25px;
  }

  .about-stat-icon {
    width: 32px;
    height: 32px;
  }

  .about-statistic strong {
    margin-top: 7px;
    font-size: 28px;
    line-height: 35px;
  }

  .about-statistic span {
    font-size: 12px;
    line-height: 20px;
    white-space: normal;
  }

  .about-more {
    min-width: 143px;
    margin-top: 25px;
    font-size: 15px;
  }

  .about-video {
    right: 16px;
    bottom: 16px;
    width: min(292px, calc(100% - 32px));
    min-height: 80px;
    gap: 14px;
    padding: 16px 18px;
  }

  .about-video-play {
    width: 40px;
    height: 40px;
  }

  .about-video-copy strong {
    font-size: 17px;
    line-height: 25px;
  }

  .about-video-copy small {
    font-size: 12px;
    line-height: 20px;
  }

  .about-values {
    width: calc(100% - 32px);
    gap: 12px;
    margin-top: 20px;
  }

  .about-value {
    min-height: 198px;
    padding: 22px 10px;
    border-radius: 8px;
  }

  .about-value-icon {
    width: 38px;
    height: 38px;
    margin-bottom: 8px;
  }

  .about-value h3 {
    font-size: 16px;
    line-height: 26px;
  }

  .about-value-rule {
    width: 28px;
    margin: 10px auto 12px;
  }

  .about-value p {
    font-size: 13px;
    line-height: 23px;
    overflow-wrap: anywhere;
  }
}

/* Leave room for the homepage's existing floating contact toolbar. */
@media (min-width: 601px) and (max-width: 1450px) {
  .company-module--home .customers-container,
  .company-module--home .news-container,
  .company-module--home .about-stage,
  .company-module--home .about-values {
    width: calc(100% - 124px);
    margin-left: 28px;
    margin-right: 96px;
  }
}

/* 首页「关于我们」整体放大：只调整尺寸与字号，配色、结构与左右留白不变 */
@media (min-width: 1121px) {
  /* 两侧留白与首页「产品中心」保持一致：
     同样的 max(3.5vw, 24px) 边距 + 1720px 宽度上限居中 */
  .company-about.company-module--home .about-stage,
  .company-about.company-module--home .about-values {
    width: min(1720px, calc(100% - 2 * max(3.5vw, 24px)));
    margin-left: auto;
    margin-right: auto;
  }

  /* 仅放大「关于我们」区块自身的标题，不影响其他区块 */
  .company-about.company-module--home .module-kicker {
    font-size: 24px;
    line-height: 32px;
  }

  .company-about.company-module--home .module-title {
    font-size: 64px;
    line-height: 80px;
  }

  .company-about.company-module--home .module-heading-line {
    width: 42px;
    height: 3px;
  }

  .company-about.company-module--home .module-subtitle {
    font-size: 22px;
    line-height: 34px;
  }

  .company-about.company-module--home .about-stage {
    margin-top: 38px;
  }

  .company-about.company-module--home .about-lead {
    font-size: 64px;
    line-height: 76px;
  }

  .company-about.company-module--home .about-copy-rule {
    margin: 22px 0 24px;
  }

  .company-about.company-module--home .about-description {
    max-width: 100%;
    font-size: 21px;
    line-height: 35px;
  }

  .company-about.company-module--home .about-statistics {
    gap: 22px;
    margin-top: 36px;
  }

  .company-about.company-module--home .about-stat-icon {
    width: 46px;
    height: 46px;
  }

  .company-about.company-module--home .about-statistic strong {
    font-size: 38px;
    line-height: 46px;
  }

  .company-about.company-module--home .about-statistic span {
    font-size: 16px;
    line-height: 25px;
  }

  .company-about.company-module--home .about-more {
    font-size: 19px;
    margin-top: 34px;
  }

  .company-about.company-module--home .about-video-copy strong {
    font-size: 19px;
  }

  .company-about.company-module--home .about-video-copy small {
    font-size: 15px;
  }

  .company-about.company-module--home .about-values {
    gap: 22px;
    margin-top: 42px;
  }

  .company-about.company-module--home .about-value {
    min-height: 292px;
    padding: 38px 26px 38px;
  }

  .company-about.company-module--home .about-value-icon {
    width: 64px;
    height: 64px;
    margin-bottom: 14px;
  }

  .company-about.company-module--home .about-value h3 {
    font-size: 25px;
    line-height: 36px;
  }

  .company-about.company-module--home .about-value p {
    font-size: 17px;
    line-height: 29px;
  }
}

/* 首页新闻卡片放大（仅桌面端，保持原有卡片样式与左右对齐关系） */
@media (min-width: 1121px) {
  /* 两侧留白与首页「产品中心」「关于我们」「工程案例」「售后服务与配件」一致：
     同样的 max(3.5vw, 24px) 边距 + 1720px 宽度上限居中 */
  .company-news.company-module--home .news-container {
    width: min(1720px, calc(100% - 2 * max(3.5vw, 24px)));
    margin-left: auto;
    margin-right: auto;
  }

  /* 仅放大「新闻资讯」区块自身的标题，不影响其他区块 */
  .company-news.company-module--home .module-kicker {
    font-size: 24px;
    line-height: 32px;
  }

  .company-news.company-module--home .module-title {
    font-size: 64px;
    line-height: 80px;
  }

  .company-news.company-module--home .module-heading-line {
    width: 42px;
    height: 3px;
  }

  .company-news.company-module--home .module-subtitle {
    font-size: 24px;
    line-height: 36px;
  }

  .company-news.company-module--home .news-layout {
    margin-top: 44px;
    gap: 52px;
  }

  /* 缩略图跟随卡片高度拉伸（原来固定 155px 高、卡片 180px 高，
     图片下方会露出 24px 行内边距，看起来像留空）。
     窄桌面（1121-1400px）列表栏放不下完整图片，这里先用铺满裁切；
     宽屏 1401px 以上改为完整显示，见文件末尾的 1401px 规则。 */
  .news-thumbnail {
    width: 190px;
    height: auto;
    align-self: stretch;
    border-radius: 12px;
  }

  .news-row {
    grid-template-columns: 190px minmax(0, 1fr) 124px;
    column-gap: 30px;
    min-height: 180px;
    margin-bottom: 24px;
    padding-bottom: 0;
  }

  .news-row-copy {
    padding-top: 16px;
    padding-bottom: 24px;
  }

  .news-row-copy h3 {
    font-size: 21px;
    line-height: 34px;
  }

  .company-module .news-row-copy p {
    font-size: 18px;
    line-height: 30px;
  }

  .news-row-meta {
    gap: 24px;
    padding-right: 12px;
  }

  .news-row-arrow {
    width: 36px;
    height: 36px;
  }

  .news-category {
    top: -19px;
    left: 40px;
    padding: 8px 16px;
    font-size: 18px;
    line-height: 24px;
  }

  .news-featured-meta h3 {
    font-size: 30px;
    line-height: 44px;
  }

  .news-date {
    font-size: 20px;
    line-height: 32px;
  }

  .company-module .news-featured-description {
    margin-top: 18px;
    font-size: 21px;
    line-height: 34px;
  }

  .news-detail-link {
    padding-top: 24px;
    font-size: 19px;
    line-height: 30px;
  }

  .news-featured-body {
    padding: 42px 40px 40px;
  }

  .news-actions {
    margin-top: 40px;
  }

  .company-news.company-module--home .news-actions .news-more {
    min-width: 220px;
    min-height: 46px;
    padding: 10px 30px;
    font-size: 17px;
    line-height: 26px;
  }

  /* 左侧头条随右侧列表等高拉伸时，多出的高度给图片，避免正文留大片空白 */
  .company-news.company-module--home .news-featured-photo {
    flex: 1 1 auto;
    min-height: 0;
  }

  .company-news.company-module--home .news-featured-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .company-news.company-module--home .news-featured-body {
    flex: 0 0 auto;
  }
}

/* 宽屏下新闻容器同步加宽，卡片随之变大（原最大 1436px） */
@media (min-width: 1451px) {
  .news-container {
    width: min(1600px, calc(100% - 100px));
  }
}

/* 宽屏（1401px 以上）：新闻缩略图完整显示（不裁切）且不留空。
   图片是 16:9，卡片高度 180px 对应的宽度正好是 320px，
   所以缩略图宽 320px + contain 时图片恰好铺满卡片左侧整高。
   同时把右栏固定为 690px，让文字列保持约 186px 的可读宽度；
   左侧头条大卡随之变窄（1440px 下约 682 → 582）。 */
@media (min-width: 1401px) {
  .company-news.company-module--home .news-layout {
    grid-template-columns: minmax(0, 1fr) 690px;
  }

  .company-news.company-module--home .news-thumbnail {
    width: 320px;
  }

  .company-news.company-module--home .news-thumbnail > img {
    object-fit: contain;
  }

  .company-news.company-module--home .news-row {
    grid-template-columns: 320px minmax(0, 1fr) 124px;
  }
}
