/* ========== Products Center ========== */
.pc-rows {
  padding: calc(80 * var(--px)) 0 calc(40 * var(--px));
  background: var(--bg-gray);
}
.pc-row {
  width: calc(1770 * var(--px));
  max-width: 100%;
  height: calc(480 * var(--px));
  background: #ffffff;
  border-radius: calc(16 * var(--px));
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  align-items: stretch;
  margin: 0 auto calc(50 * var(--px));
  overflow: hidden;
  box-sizing: border-box;
}
.pc-row:last-child {
  margin-bottom: 0;
}
.pc-row.is-reverse .pc-media {
  order: 2;
}
.pc-row.is-reverse .pc-content {
  order: 1;
}
.pc-media {
  overflow: hidden;
  background: var(--bg-gray);
  height: 100%;
}
.pc-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.pc-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: calc(48 * var(--px)) calc(56 * var(--px));
  padding-left: calc(100 * var(--px));
  box-sizing: border-box;
}
.pc-content h2 {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(22px, calc(32 * var(--px)));
  font-weight: 400; /* HarmonyOS_Sans_SC */
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #111111;
  line-height: 1.3;
  margin: 0 0 calc(20 * var(--px));
}
.pc-content ul {
  margin: 0 0 calc(28 * var(--px));
  padding: 0;
  list-style: none;
}
.pc-content li {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(13px, calc(15 * var(--px)));
  font-weight: 400; /* HarmonyOS_Sans_SC */
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #666666;
  line-height: calc(28 * var(--px));
  padding-left: calc(16 * var(--px));
  position: relative;
}
.pc-content li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: calc(3 * var(--px));
  height: calc(3 * var(--px));
  border-radius: 50%;
  background: #000000;
  transform: translateY(-50%);
}
.pc-link {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(14px, calc(16 * var(--px)));
  font-weight: 400; /* HarmonyOS_Sans_SC */
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #000f9e;
  line-height: calc(26 * var(--px));
  display: inline-flex;
  align-items: center;
  gap: calc(6 * var(--px));
}
.pc-link:hover {
  opacity: 0.75;
}

.pc-cta {
  background: var(--primary);
  color: #fff;
  padding: calc(72 * var(--px)) 0;
  margin-top: calc(50 * var(--px));
}
.pc-cta-inner {
  display: grid;
  grid-template-columns: 1fr calc(480 * var(--px));
  gap: calc(64 * var(--px));
  align-items: center;
}
.pc-cta-inner > div:first-child {
  padding-left: calc(100 * var(--px));
}
.pc-cta h2 {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(24px, calc(36 * var(--px)));
  font-weight: 500; /* HarmonyOS_Sans_SC_Medium */
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #ffffff;
  line-height: calc(48 * var(--px));
  margin: 0 0 calc(16 * var(--px));
}
.pc-cta p {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(13px, calc(15 * var(--px)));
  font-weight: 400; /* HarmonyOS_Sans_SC */
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #ffffff;
  line-height: calc(28 * var(--px));
  margin: 0 0 calc(28 * var(--px));
  max-width: calc(520 * var(--px));
}
.pc-cta-actions {
  display: flex;
  gap: calc(16 * var(--px));
  align-items: center;
}
.pc-cta-actions .btn {
  height: calc(52 * var(--px));
  min-height: calc(40 * var(--px));
  padding: 0 calc(28 * var(--px));
  border: none;
  border-radius: calc(26 * var(--px));
  background: #ffffff;
  color: #000000;
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(14px, calc(16 * var(--px)));
  font-weight: 500; /* HarmonyOS_Sans_SC_Medium */
  font-style: normal;
  text-transform: none;
  text-align: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}
.pc-cta-actions .btn:hover {
  background: #f5f7fa;
  color: #000000;
}
.pc-cta-actions a[href="contact.html"] {
  width: calc(153 * var(--px));
  padding: 0;
}
.pc-cta-actions a[href="support.html#form"] {
  width: calc(191 * var(--px));
  height: calc(60 * var(--px));
  padding: 0;
  background: #000f9e;
  border: calc(2 * var(--px)) solid #ffffff;
  border-radius: calc(26 * var(--px));
  color: #ffffff;
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(14px, calc(16 * var(--px)));
  font-weight: 500; /* HarmonyOS_Sans_SC_Medium */
  font-style: normal;
  text-transform: none;
  text-align: center;
  box-sizing: border-box;
}
.pc-cta-actions a[href="support.html#form"]:hover {
  background: #0018c4;
  color: #ffffff;
}
.pc-cta-visual {
  background: #fff;
  border-radius: calc(16 * var(--px));
  padding: calc(32 * var(--px));
  display: flex;
  align-items: center;
  justify-content: center;
}
.pc-cta-visual img {
  max-height: calc(280 * var(--px));
  object-fit: contain;
}

/* ========== Product List ========== */
.product-list-hero .page-hero-eyebrow {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(14px, calc(18 * var(--px)));
  font-weight: 500; /* HarmonyOS_Sans_SC_Medium */
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #ffffff;
  opacity: 1;
  margin: 0 0 calc(12 * var(--px));
  line-height: 1.4;
}
.product-list-hero .page-hero-title {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(32px, calc(60 * var(--px)));
  font-weight: 500; /* HarmonyOS_Sans_SC_Medium */
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #ffffff;
  line-height: 1.2;
  margin: 0;
  position: relative;
  z-index: 2; /* 压在英文之上 */
}
.product-list-hero .page-hero-en {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(28px, calc(50 * var(--px)));
  font-weight: 900; /* HarmonyOS_Sans_SC_Black */
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #ffffff;
  -webkit-text-stroke: calc(1 * var(--px)) #ffffff;
  text-stroke: calc(1 * var(--px)) #ffffff;
  letter-spacing: 0;
  line-height: normal;
  height: calc(45 * var(--px));
  display: flex;
  align-items: center;
  opacity: 0.3;
  position: relative;
  z-index: 1;
  margin: calc(-20 * var(--px)) 0 calc(48 * var(--px));
}
.product-list-hero .page-hero-desc {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(14px, calc(16 * var(--px)));
  font-weight: 400; /* HarmonyOS_Sans_SC */
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #ffffff;
  line-height: calc(30 * var(--px));
  max-width: calc(900 * var(--px));
  margin: 0;
}
.product-list-section {
  background: var(--bg-gray);
  padding: calc(48 * var(--px)) 0 calc(80 * var(--px));
}
.product-grid {
  display: flex;
  flex-wrap: wrap;
  gap: calc(30 * var(--px)); /* 4×420 + 3×30 = 1770 */
}

/* ========== Product Detail ========== */
.page-product-detail {
  background: #fafafc;
}
.page-product-detail .site-footer {
  background: #ffffff;
}
.pd-main {
  padding: calc(40 * var(--px)) 0 calc(80 * var(--px));
  background: #fafafc;
}
.pd-hero-block {
  width: calc(1770 * var(--px));
  max-width: 100%;
  height: calc(870 * var(--px));
  background: #ffffff;
  display: grid;
  /* 左：43 边距 + 800 图；右：文案区 */
  grid-template-columns: calc((43 + 800) * var(--px)) 1fr;
  gap: calc(115 * var(--px)); /* 文字区距详情图 */
  align-items: start;
  margin: 0 auto calc(80 * var(--px));
  padding: 0;
  box-sizing: border-box;
  border-radius: 0;
  overflow: hidden;
}
.pd-gallery {
  width: calc(800 * var(--px));
  height: calc(800 * var(--px));
  margin: calc(35 * var(--px)) 0 calc(36 * var(--px)) calc(43 * var(--px));
  background: transparent;
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: calc(16 * var(--px));
  padding: 0;
  border: none;
  box-sizing: border-box;
}
.pd-gallery img {
  width: auto;
  height: 100%;
  max-width: 48%;
  object-fit: contain;
}
.pd-info {
  padding: calc(56 * var(--px)) calc(56 * var(--px)) calc(56 * var(--px)) 0;
  box-sizing: border-box;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.page-hero-eyebrow {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(14px, calc(16 * var(--px)));
  font-weight: 400;
  color: #ffffff;
  opacity: 0.9;
  margin-bottom: calc(12 * var(--px));
}
.pd-info h1 {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(24px, calc(36 * var(--px)));
  font-weight: 500; /* HarmonyOS_Sans_SC_Medium */
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #111111;
  line-height: 1.3;
  margin: 0 0 calc(12 * var(--px));
}
.pd-model {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(14px, calc(16 * var(--px)));
  font-weight: 400; /* HarmonyOS_Sans_SC */
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #666666;
  line-height: calc(28 * var(--px));
  margin: 0 0 calc(24 * var(--px));
}
.pd-info p {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(14px, calc(16 * var(--px)));
  font-weight: 400; /* HarmonyOS_Sans_SC */
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #111111;
  line-height: calc(26 * var(--px));
  margin: 0 0 calc(12 * var(--px));
}
.pd-info ul {
  margin: calc(16 * var(--px)) 0 calc(32 * var(--px));
}
.pd-info li {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(14px, calc(16 * var(--px)));
  font-weight: 400;
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #111111;
  line-height: calc(26 * var(--px));
  padding-left: calc(14 * var(--px));
  position: relative;
}
.pd-info li::before {
  content: "·";
  position: absolute;
  left: 0;
  color: var(--primary);
  font-weight: 700;
}
.pd-actions {
  display: flex;
  gap: calc(16 * var(--px));
  flex-wrap: wrap;
  align-items: center;
}
.pd-btn-contact {
  width: calc(140 * var(--px));
  height: calc(48 * var(--px));
  min-width: calc(120 * var(--px));
  min-height: calc(40 * var(--px));
  padding: 0;
  background: #000f9e;
  border-radius: calc(24 * var(--px));
  border: none;
  color: #ffffff;
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(14px, calc(16 * var(--px)));
  font-weight: 500; /* HarmonyOS_Sans_SC_Medium */
  font-style: normal;
  text-transform: none;
  text-align: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(6 * var(--px));
  box-sizing: border-box;
}
.pd-btn-contact:hover {
  background: #0018c4;
  color: #ffffff;
}
.pd-btn-phone {
  width: calc(14 * var(--px));
  height: calc(14 * var(--px));
  object-fit: contain;
  display: block;
  /* phone-fill.png 为白色图标 */
  filter: none;
}
.pd-btn-manual {
  width: calc(170 * var(--px));
  height: calc(48 * var(--px));
  min-width: calc(140 * var(--px));
  min-height: calc(40 * var(--px));
  padding: 0 calc(12 * var(--px));
  background: #ffffff;
  border-radius: calc(4 * var(--px));
  border: none;
  color: #333333;
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(13px, calc(15 * var(--px)));
  font-weight: 500; /* HarmonyOS_Sans_SC_Medium */
  font-style: normal;
  text-transform: none;
  text-align: left;
  line-height: calc(32 * var(--px));
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: calc(6 * var(--px));
  box-sizing: border-box;
}
.pd-btn-manual:hover {
  background: #f5f7fa;
  color: #333333;
}
.pd-btn-pdf {
  width: calc(16 * var(--px));
  height: calc(16 * var(--px));
  object-fit: contain;
  display: block;
  flex-shrink: 0;
}
.pd-related-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: calc(48 * var(--px));
}
.pd-related .section-title {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(28px, calc(40 * var(--px)));
  font-weight: 500; /* HarmonyOS_Sans_SC_Medium，同首页 */
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #111111;
  line-height: 1.3;
  margin: 0;
}
.pd-related .section-more {
  font-family: "HarmonyOS Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;
  font-size: max(13px, calc(16 * var(--px)));
  font-weight: 400;
  font-style: normal;
  text-transform: none;
  text-align: left;
  color: #000f9e;
  line-height: calc(26 * var(--px));
  display: inline-flex;
  align-items: center;
  gap: calc(6 * var(--px));
}
.pd-related .section-more svg {
  width: calc(14 * var(--px));
  height: calc(14 * var(--px));
  transform: rotate(-45deg);
  transform-origin: center;
  flex-shrink: 0;
}

@media (max-width: 1200px) {
  .product-card {
    width: calc(50% - 15 * var(--px));
    height: auto;
  }
  .product-card-img,
  .product-card-body {
    width: 100%;
  }
  .product-card-img {
    height: auto;
    aspect-ratio: 1;
  }
  .product-card-body {
    height: auto;
    min-height: calc(140 * var(--px));
  }
  .pc-cta-inner,
  .pd-hero-block {
    grid-template-columns: 1fr;
  }
  .pd-hero-block {
    height: auto;
    grid-template-columns: 1fr;
    padding: calc(24 * var(--px));
  }
  .pd-gallery {
    width: 100%;
    height: auto;
    aspect-ratio: 1;
    margin: 0 auto calc(24 * var(--px));
  }
  .pd-gallery img {
    max-width: 45%;
    max-height: 100%;
  }
  .pd-info {
    padding: 0;
    height: auto;
  }
}
@media (max-width: 1024px) {
  .pc-rows {
    padding: 40px 0 24px;
  }
  .pc-row {
    width: 100%;
    height: auto;
    grid-template-columns: 1fr;
    margin-bottom: 24px;
    border-radius: 12px;
  }
  .pc-row.is-reverse .pc-media,
  .pc-row.is-reverse .pc-content {
    order: initial;
  }
  .pc-media {
    width: 100%;
    height: 220px;
  }
  .pc-content {
    padding: 24px 20px;
  }
  .pc-content h2 {
    font-size: 22px;
    margin-bottom: 14px;
  }
  .pc-content li {
    font-size: 14px;
    line-height: 1.7;
    padding-left: 14px;
  }
  .pc-cta {
    padding: 40px 0;
    margin-top: 24px;
  }
  .pc-cta-inner {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .pc-cta-inner > div:first-child {
    padding-left: 0;
  }
  .pc-cta h2 {
    font-size: 24px;
  }
  .pc-cta-visual {
    width: 100%;
  }
  .pc-cta-visual img {
    width: 100%;
    height: auto;
  }
  .product-card {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .pd-related-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 28px;
  }
  .pd-related .section-title {
    font-size: 24px;
  }
  .pd-related .section-more {
    white-space: nowrap;
  }
  .product-list-hero .page-hero-title {
    font-size: 28px;
  }
  .product-list-hero .page-hero-en {
    height: auto;
    margin: 8px 0 20px;
    font-size: 18px;
    -webkit-text-stroke: 0;
    text-stroke: 0;
  }
  .product-list-hero .page-hero-desc {
    font-size: 14px;
    line-height: 1.65;
    max-width: none;
  }
}
