/* AVP v5.75 — Related products only.
   Catalogue retains its independent 5-column layout (catalogue-cards-v574.css).
   Keep the entire source image visible: NO cover, cropping, or forced zoom. */
body.app-shell.page-products .avp-product-v566 .avp-product-related-v566 {
  min-width: 0;
  padding: clamp(18px, 2vw, 30px);
}
body.app-shell.page-products .avp-product-v566 .avp-product-related-v566 > header {
  gap: 18px;
  margin-bottom: 22px;
}
body.app-shell.page-products .avp-product-v566 .avp-product-related-v566 > header p {
  margin: 6px 0 0;
  color: #526b5f;
  font-size: 15px;
  line-height: 1.45;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(14px, 1.5vw, 24px) !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  margin: 0 !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 > .catalogue-card-v11 {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: none !important;
  overflow: hidden !important;
  border: 1px solid #dce8e0 !important;
  border-radius: 17px !important;
  background: #fff !important;
  box-shadow: 0 6px 22px rgba(17, 66, 42, .06) !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 > .catalogue-card-v11:hover {
  border-color: #adcdb9 !important;
  box-shadow: 0 12px 28px rgba(17, 66, 42, .105) !important;
}
/* Separate, generous photograph stage. Every pixel of the source fits inside. */
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-photo-v11 {
  display: flex !important;
  position: relative !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  height: clamp(240px, 19vw, 322px) !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 20px 18px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  background: #fff !important;
  border: 0 !important;
  border-bottom: 1px solid #e7eee9 !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-photo-v11 > img {
  display: block !important;
  position: static !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: 50% 50% !important;
  transform: none !important;
  filter: none !important;
  border-radius: 0 !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-photo-v11:hover > img {
  transform: none !important;
}
/* Single, readable position label; never repeat it inside the text area. */
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-side-photo-v573 {
  position: absolute !important;
  top: 13px !important;
  left: 13px !important;
  z-index: 3 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 1px !important;
  align-items: flex-start !important;
  padding: 7px 11px !important;
  border: 1px solid #bfdbca !important;
  border-radius: 9px !important;
  background: rgba(245, 253, 248, .97) !important;
  color: #164f34 !important;
  line-height: 1.2 !important;
  pointer-events: none !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-side-photo-v573 small {
  font-size: 9px !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
  color: #5b7866 !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-side-photo-v573 strong {
  font-size: 19px !important;
  font-weight: 850 !important;
  color: #114b31 !important;
  letter-spacing: .015em !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .availability-chip {
  top: 13px !important;
  right: 13px !important;
  z-index: 3 !important;
  padding: 6px 9px !important;
  font-size: 10px !important;
}
/* More breathing room for the product details and clickable controls. */
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-body-v11 {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  padding: 19px 19px 20px !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-part-number strong {
  font-size: 20px !important;
  overflow-wrap: anywhere !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-title-v11 {
  font-size: 16px !important;
  line-height: 1.45 !important;
  min-height: 67px !important;
  max-height: none !important;
  -webkit-line-clamp: 3 !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-minimum-order-v574 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 6px 12px !important;
  margin: 11px 0 7px !important;
  padding: 10px 12px !important;
  border: 1px solid #d6e9dc !important;
  background: #f3faf5 !important;
  border-radius: 10px !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-minimum-order-v574 span {
  font-size: 11px !important;
  font-weight: 750 !important;
  color: #477b5d !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-minimum-order-v574 strong {
  font-size: 16px !important;
  font-weight: 850 !important;
  color: #125636 !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-fit-v11 {
  font-size: 13px !important;
  line-height: 1.45 !important;
  margin: 8px 0 !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-price-row {
  gap: 9px !important;
  margin-top: auto !important;
  padding-top: 15px !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-price-row strong {
  font-size: 25px !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-price-row .catalogue-view-link {
  font-size: 13px !important;
  white-space: nowrap !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-add-v11 {
  margin-top: 14px !important;
  padding-top: 13px !important;
}
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-add-v11 input,
body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-add-v11 button {
  height: 44px !important;
  min-height: 44px !important;
  font-size: 14px !important;
}
/* Size steps are applied only to related products, never to the five-card catalogue. */
@media (max-width: 1399px) {
  body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 1099px) {
  body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-photo-v11 {
    height: 300px !important;
  }
}
@media (max-width: 649px) {
  body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  body.app-shell.page-products .avp-product-v566 #avpRelatedGridV575 .catalogue-photo-v11 {
    height: 280px !important;
  }
  body.app-shell.page-products .avp-product-v566 .avp-product-related-v566 {
    padding: 15px !important;
  }
}
