/* NEXTZHEN Product subpages (shared) */



.product-hero .company-hero__media {

  background-image: url("/assets/images/product/product-hero.png");

  background-position: center center;

}



.product-nav .company-nav__inner {
  width: min(100%, 1400px);
}

.product-nav__tabs {

  grid-template-columns: repeat(4, minmax(0, 1fr));

  max-width: min(100%, 1260px);

  width: 100%;

}



.product-nav__tabs .company-nav__tab {

  width: 100%;

  min-height: 40px;

  height: 100%;

  padding-inline: clamp(10px, 1.2vw, 18px);

  white-space: normal;

  overflow-wrap: normal;

  word-break: normal;

  hyphens: none;

}



.product-body {

  background-color: #ffffff;

  overflow-x: clip;

}



.product-divider-wrap {

  background: #ffffff;

  padding: 0 24px;

}



.product-divider {

  width: 100%;

  max-width: 1290px;

  height: 0;

  margin: 0 auto;

  border: 0;

  border-top: 1px solid #e1e1e1;

}



.product-sections {

  display: flex;

  flex-direction: column;

  align-items: center;

  gap: clamp(56px, 4.17vw, 80px);

  padding: clamp(64px, 5.21vw, 100px) 24px clamp(72px, 6.25vw, 120px);

  background: #ffffff;

}



.product-container {

  width: 100%;

  max-width: 1290px;

  margin: 0 auto;

}



.product-container--stack {

  display: flex;

  flex-direction: column;

  gap: clamp(40px, 2.6vw, 56px);

}



.product-block {

  display: flex;

  flex-direction: column;

  align-items: center;

  gap: 20px;

  width: 100%;

}



.product-block--stretch {

  align-items: stretch;

}



.product-label {

  margin: 0;

  color: #2563eb;

  font-family: "Montserrat", Arial, sans-serif;

  font-size: clamp(21px, 1.15vw, 25px);

  font-weight: 700;

  line-height: 1.3;

  letter-spacing: 0.08em;

  text-transform: uppercase;

}



.product-applications {

  width: 100%;

  padding: 28px 32px;

  border: 1px solid #e5e7eb;

  border-radius: 10px;

  background: #ffffff;

  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);

}



.product-applications--rounded-lg {

  border-radius: 12px;

}



.product-applications__text {

  margin: 0;

  color: #374151;

  font-family: "Inter", Arial, sans-serif;

  font-size: clamp(19px, 0.94vw, 21px);

  font-weight: 400;

  line-height: 1.75;

  text-align: center;

}



.product-applications-list {

  display: flex;

  flex-direction: column;

  width: 100%;

}



.product-applications-row {

  display: flex;

  align-items: flex-start;

  gap: 16px;

  padding: 16px 0;

  border-bottom: 1px solid #e5e7eb;

}



.product-applications-row:last-child {

  border-bottom: 0;

}



.product-applications-row__number {

  display: inline-flex;

  flex: 0 0 28px;

  align-items: center;

  justify-content: center;

  width: 28px;

  height: 28px;

  border-radius: 14px;

  background: #eef2ff;

  color: #2563eb;

  font-family: "Montserrat", Arial, sans-serif;

  font-size: 15px;

  font-weight: 700;

  line-height: 1;

}



.product-applications-row__content {

  display: flex;

  flex: 1;

  flex-direction: column;

  gap: 4px;

  min-width: 0;

}



.product-applications-row__title {

  margin: 0;

  color: #1d1d1d;

  font-family: "Montserrat", Arial, sans-serif;

  font-size: 19px;

  font-weight: 700;

  line-height: 1.4;

}



.product-applications-row__text {

  margin: 0;

  color: #374151;

  font-family: "Inter", Arial, sans-serif;

  font-size: 19px;

  font-weight: 400;

  line-height: 1.6;

}



.product-advantage-grid {

  display: grid;

  grid-template-columns: repeat(4, minmax(0, 1fr));

  gap: 20px;

  width: 100%;

}



.product-advantage-card {

  display: flex;

  flex-direction: column;

  gap: 12px;

  min-width: 0;

  padding: 24px;

  border: 1px solid #e5e7eb;

  border-radius: 10px;

  background: #ffffff;

  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);

}



.product-advantage-card--rounded-lg {

  border-radius: 12px;

}



.product-advantage-card__icon {

  display: inline-flex;

  align-items: center;

  justify-content: center;

  width: 40px;

  height: 40px;

  border-radius: 20px;

  background: #eef2ff;

}



.product-advantage-card__icon--alt {

  background: #e9f0ff;

}



.product-advantage-card__icon-image {

  display: block;

  width: 20px;

  height: 20px;

}



.product-advantage-card__title {

  margin: 0;

  color: #1d1d1d;

  font-family: "Montserrat", Arial, sans-serif;

  font-size: 21px;

  font-weight: 700;

  line-height: 1.55;

}



.product-advantage-card__text {

  margin: 0;

  color: #6b7280;

  font-family: "Inter", Arial, sans-serif;

  font-size: 16px;

  font-weight: 400;

  line-height: 1.6;

}



.product-section-title {

  margin: 0;

  color: #1d1d1d;

  font-family: "Montserrat", Arial, sans-serif;

  font-size: clamp(25px, 1.35vw, 29px);

  font-weight: 700;

  line-height: 1.3;

  text-align: center;

}



.product-section-header {

  display: flex;

  justify-content: center;

  width: 100%;

}



.product-card-grid {

  display: grid;

  grid-template-columns: repeat(2, minmax(0, 1fr));

  gap: 24px;

  width: 100%;

}



.product-card {

  display: flex;

  flex-direction: column;

  min-width: 0;

  overflow: hidden;

  border: 1px solid #e5e7eb;

  border-radius: 10px;

  background: #ffffff;

  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04), 0 12px 32px -8px rgba(0, 0, 0, 0.06);

}



.product-card--rounded-lg {

  border-radius: 16px;

}



.product-card__media {

  display: flex;

  align-items: center;

  justify-content: center;

  overflow: hidden;

  background: #f3f4f6;

}



.product-card__media--polish {

  height: clamp(240px, 23.5vw, 452px);

  min-height: clamp(240px, 23.5vw, 452px);

}



.product-card__media--glass {

  height: clamp(220px, 28vw, 331px);

  min-height: clamp(220px, 28vw, 331px);

}



.product-card__media--full {

  min-height: clamp(220px, 31vw, 595px);

}



.product-card__media--lineup {

  height: clamp(220px, 21vw, 402px);

  min-height: clamp(220px, 21vw, 402px);

}



.product-card__image {

  display: block;

  width: 100%;

  height: 100%;

  object-fit: cover;

}



.product-card__body {

  display: flex;

  flex-direction: column;

  align-items: center;

  gap: 8px;

  flex: 1;               /* fill remaining card height so bg covers full text block */

  padding: 30px 24px;

  background: #f6f6f6;

  text-align: center;

}



.product-card__body--lineup {

  gap: 10px;

}



.product-card__title {

  margin: 0;

  color: #1d1d1d;

  font-family: "Montserrat", Arial, sans-serif;

  font-size: clamp(21px, 1.04vw, 23px);

  font-weight: 700;

  line-height: 1.4;

}



.product-card__title--sm {

  font-size: 21px;

}



.product-card__title-medium {

  font-weight: 500;

}



.product-card__text {

  margin: 0;

  color: #6b7280;

  font-family: "Inter", Arial, sans-serif;

  font-size: 16px;

  font-weight: 400;

  line-height: 1.6;

}



.product-card__text--md {

  font-size: 17px;

  line-height: 1.6;

}



.product-tag {

  display: inline-flex;

  align-items: center;

  padding: 4px 10px;

  border-radius: 999px;

  background: #e9f0ff;

  color: #2563eb;

  font-family: "Inter", Arial, sans-serif;

  font-size: 14px;

  font-weight: 600;

  line-height: 1.3;

}



.product-lineup-grid {

  display: grid;

  grid-template-columns: repeat(2, minmax(0, 1fr));

  gap: 24px;

  width: 100%;

}



.product-table-scroll {

  width: 100%;

  max-width: 100%;

  overflow-x: auto;

  overflow-y: hidden;

  overscroll-behavior-inline: contain;

  -webkit-overflow-scrolling: touch;

  scrollbar-color: #9ca3af #eef1f5;

}



.product-table {

  width: 100%;

  min-width: 720px;

  border-collapse: collapse;

  border: 1px solid #e5e7eb;

  border-radius: 10px;

  background: #ffffff;

  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);

  overflow: hidden;

}



.product-table--spec {

  min-width: 860px;

}



.product-table--rd {

  min-width: 900px;

}



.product-table thead th {

  padding: 20px 24px;

  border-bottom: 1px solid rgba(255, 255, 255, 0.12);

  background: #001750;

  color: #ffffff;

  font-family: "Montserrat", Arial, sans-serif;

  font-size: 15px;

  font-weight: 700;

  line-height: 1.3;

  letter-spacing: 0.06em;

  text-align: left;

  text-transform: uppercase;

  vertical-align: middle;

}



.product-table thead th.product-table__th--muted {

  color: #9ca3af;

}



.product-table tbody td,

.product-table tbody th {

  padding: 18px 24px;

  border-top: 1px solid #e5e7eb;

  color: #374151;

  font-family: "Inter", Arial, sans-serif;

  font-size: 19px;

  font-weight: 400;

  line-height: 1.6;

  text-align: left;

  vertical-align: middle;

}



.product-table tbody th {

  width: 260px;

  min-width: 200px;

  color: #374151;

  font-weight: 600;

  background: #f9fafb;

}



.product-table tbody tr.product-table__row--highlight th,

.product-table tbody tr.product-table__row--highlight td {

  background: #eef2ff;

}



.product-table tbody tr.product-table__row--highlight + tr.product-table__row--highlight th,

.product-table tbody tr.product-table__row--highlight + tr.product-table__row--highlight td {

  border-top: 1px solid #ced9ff;

}



.product-table__cell--shared {

  border-left: 1px solid #e5e7eb;

}



.product-table--rd tbody td.product-table__no {

  width: 70px;

  min-width: 70px;

  color: #2563eb;

  font-weight: 700;

  text-align: center;

  vertical-align: middle;

}



.product-table--rd tbody td.product-table__image {

  width: 160px;

  min-width: 160px;

  text-align: center;

  vertical-align: middle;

}



.product-table--rd tbody td.product-table__name {

  width: 460px;

  min-width: 280px;

  vertical-align: middle;

}



.product-table--rd tbody td.product-table__purpose {

  min-width: 240px;

  vertical-align: middle;

}



.product-table--rd tbody tr:nth-child(even) td,

.product-table--rd tbody tr:nth-child(even) th {

  background: #f9fafb;

}



.product-table__thumb {

  display: block;

  width: 80px;

  height: 56px;

  margin: 0 auto;

  border-radius: 6px;

  object-fit: cover;

}



.product-table__product-name {

  margin: 0;

  color: #1d1d1d;

  font-family: "Inter", Arial, sans-serif;

  font-size: 19px;

  font-weight: 600;

  line-height: 1.7;

}



.product-table__product-meta {

  margin: 4px 0 0;

  color: #9ca3af;

  font-family: "Inter", Arial, sans-serif;

  font-size: 17px;

  font-weight: 400;

  line-height: 1.4;

}



.product-label,

.product-applications__text,

.product-advantage-card__title,

.product-advantage-card__text,

.product-section-title,

.product-card__title,

.product-card__text,

.product-applications-row__title,

.product-applications-row__text,

.product-table thead th,

.product-table tbody td,

.product-table tbody th,

.product-table__product-name,

.product-table__product-meta {

  overflow-wrap: normal;

  word-break: normal;

  hyphens: none;

}



@media (max-width: 1199px) {

  .product-advantage-grid {

    grid-template-columns: repeat(2, minmax(0, 1fr));

  }



  .product-advantage-card {

    height: auto;

  }



  .product-card__media--polish {

    height: clamp(220px, 34vw, 360px);

    min-height: clamp(220px, 34vw, 360px);

  }



  .product-card__media--glass {

    height: clamp(220px, 34vw, 360px);

    min-height: clamp(220px, 34vw, 360px);

  }



  .product-card__media--lineup {

    height: clamp(220px, 34vw, 360px);

    min-height: clamp(220px, 34vw, 360px);

  }



  .product-card__media--full {

    min-height: clamp(220px, 34vw, 360px);

  }



  .product-table tbody td,

  .product-table tbody th,

  .product-table thead th {

    padding: 16px 18px;

    font-size: 18px;

  }

}



@media (max-width: 899px) {

  .product-card__media--full {

    min-height: 0;

    height: auto;

  }



  .product-card__media--full .product-card__image {

    height: auto;

    object-fit: contain;

  }



  .product-card-grid,

  .product-lineup-grid {

    grid-template-columns: minmax(0, 1fr);

  }



  .product-applications {

    padding: 24px 20px;

  }



  .product-table--spec {

    min-width: 820px;

  }



  .product-table--rd {

    min-width: 880px;

  }

}



@media (max-width: 599px) {

  .product-sections {

    padding: 48px 20px 72px;

    gap: 48px;

  }



  .product-advantage-grid {

    grid-template-columns: minmax(0, 1fr);

  }



  .product-applications-row {

    flex-direction: row;

    align-items: flex-start;

  }



  .product-table tbody td,

  .product-table tbody th,

  .product-table thead th {

    padding: 14px 16px;

    font-size: 17px;

  }



  .product-table--spec {

    min-width: 760px;

  }



  .product-table--rd {

    min-width: 840px;

  }

}



@media (prefers-reduced-motion: reduce) {

  .product-table-scroll {

    scroll-behavior: auto;

  }

}



/* Product pages — centered Applications / Key Advantages labels */

#product-grinding-polishing-wheel .product-block--stretch > .product-label,

#product-vacuum-pad-gripper .product-block--stretch > .product-label,

#product-scratch-free-handling-cap .product-block--stretch > .product-label,

#product-refractory-forming-processing .product-block--stretch > .product-label {

  align-self: center;

  width: 100%;

  text-align: center;

}



/* Equal-height paired product card media (no flex letterboxing) */

#product-grinding-polishing-wheel .product-card-grid,

#product-vacuum-pad-gripper .product-card-grid,

#product-refractory-forming-processing .product-lineup-grid {

  align-items: stretch;

}



#product-grinding-polishing-wheel .product-card-grid .product-card__media--polish,

#product-vacuum-pad-gripper .product-card-grid .product-card__media--glass,

#product-refractory-forming-processing .product-lineup-grid .product-card__media--lineup {

  display: block;

  flex-shrink: 0;

  line-height: 0;

}



#product-grinding-polishing-wheel .product-card-grid .product-card__media--polish .product-card__image,

#product-vacuum-pad-gripper .product-card-grid .product-card__media--glass .product-card__image,

#product-refractory-forming-processing .product-lineup-grid .product-card__media--lineup .product-card__image {

  width: 100%;

  height: 100%;

  object-fit: cover;

}



/* Polishing Wheel — spec & R&D tables: light left/right frame (incl. horizontal scroll) */

#product-grinding-polishing-wheel .product-table-scroll {

  box-sizing: border-box;

  border-left: 1px solid #e5e7eb;

  border-right: 1px solid #e5e7eb;

  border-radius: 10px;

  background-color: #ffffff;

}



#product-grinding-polishing-wheel .product-table-scroll > .product-table {

  border-left: none;

  border-right: none;

  border-radius: 0;

}


