/* Custom packaging continuation, 2026-09-10. Candidate artwork, not user-locked.
   Deliberately scoped: existing homepage/product icons and layouts stay intact. */
.custom-packaging-page .custom-service-icon,
.custom-packaging-page .custom-material-icon,
.custom-packaging-page .custom-workflow-icon {
  display: block;
  flex: none;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.custom-packaging-page .custom-service-icon {
  width: 31px;
  height: 31px;
  stroke-width: 1.75;
}

.custom-packaging-page .custom-service-icon[viewBox="0 0 64 64"] {
  stroke-width: 3.5;
}

/* Keep the reused 20.5-unit box artwork optically equal to the 32-unit set. */
.custom-packaging-page .custom-service-icon[data-custom-icon="service-retail"] {
  stroke-width: 1.12;
}

.custom-packaging-page .icon-box:has(.custom-service-icon) {
  color: #1c6a3a;
  border-radius: 50%;
}

.custom-packaging-page .feature-card:hover .icon-box:has(.custom-service-icon) {
  color: #fff;
}

.custom-packaging-page .feature-card:hover img.custom-service-icon {
  filter: brightness(0) invert(1);
}

.custom-packaging-page .custom-workflow-icon {
  width: 41px;
  height: 41px;
  stroke-width: 1.65;
}

.custom-packaging-page .custom-workflow-icon[viewBox="0 0 64 64"] {
  stroke-width: 3.3;
}

.custom-packaging-page .custom-material-icon {
  width: 29px;
  height: 29px;
  stroke-width: 1.65;
}

.custom-packaging-page .eco-material-icon:has(.custom-material-icon) {
  color: #1c6a3a;
  border-radius: 50%;
}

.custom-packaging-page .custom-print-preview {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 96px;
}

.custom-packaging-page .custom-print-preview-icon {
  display: block;
  width: 80px;
  height: 80px;
  filter: brightness(0) invert(1);
  opacity: .9;
}

.custom-packaging-page .custom-contact-icon {
  display: inline-block;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  vertical-align: middle;
}

.custom-packaging-page .footer-contact-item > span:has(.custom-contact-icon) {
  display: inline-flex;
  align-items: center;
  color: rgba(255, 255, 255, .65);
}
