/* Scope these additions to the shared catalog template; RT/TR keep their existing styles. */
.connected-product [hidden] { display: none !important; }
.connected-product .product-copy { min-width: 0; }
.connected-product .product-gallery-slides { position: absolute; inset: 0; min-height: 0; }
.connected-product .product-media-slide, .connected-product .connected-science-slide { min-height: 0; }
.connected-product .intro { white-space: pre-line; }
.connected-product .connected-formulation { margin: 0 0 16px; color: #285c8d; font-size: 12px; line-height: 1.6; }
.connected-product .connected-science-slide { display: grid; grid-template-rows: auto minmax(0,1fr); padding: 24px 28px 46px; gap: 12px; }
.connected-product .connected-science-title { margin: 0; color: #526273; font-size: 12px; line-height: 1.45; text-align: center; }
.connected-product .connected-science-title.coa-gallery-heading { color: #354253; font-size: clamp(12px,1.25vw,16px); font-weight: 500; letter-spacing: .08em; }
.connected-product .product-media-slide img.connected-science-image { width: 100%; height: 100%; min-height: 0; object-fit: contain; }
.connected-product .molecular-slide--structure .molecular-slide-image,
.connected-product .molecular-slide--sequence .molecular-slide-image { top: 27%; max-height: 62%; }
.connected-product .connected-attribution { display: grid; gap: 4px; margin: 0 0 16px; color: #526273; font-size: 10px; line-height: 1.375; }
.connected-product .connected-attribution strong { font-weight: 650; }
.connected-product .coa-certificate-meta div:first-child dd { white-space: normal; }
.connected-product .coa-certificate-metric dd { overflow-wrap: anywhere; }
.connected-product .coa-certificate-metrics > :last-child:nth-child(odd) { grid-column: 1 / -1; }
.connected-product .coa-certificate-screening-list > :only-child { grid-column: 1 / -1; min-height: 0; }
.connected-product .coa-certificate-screening-head { flex-wrap: wrap; }
.connected-product .coa-certificate-verify { max-width: 100%; padding-top: 10px; padding-bottom: 10px; line-height: 1.5; }
.connected-product .product-image-placeholder { display: grid; place-content: center; gap: 14px; text-align: center; color: #285c8d; }
.connected-product .media-error { padding: 20px; text-align: center; color: #526273; font-size: 12px; }
.connected-product .cart-button { display: block; width: 100%; visibility: visible; }
.connected-product .related-card { display: flex; flex-direction: column; }
.connected-product .related-photo { position: relative; width: 58%; height: auto; max-height: 95%; object-fit: contain; }
.connected-product .related-info { display: flex; flex: 1; flex-direction: column; padding: 18px 3px 4px; }
.connected-product .related-summary h3 { font-size: 17px; }
.connected-product .related-description { min-height: 0; margin: 0 0 16px; font-size: 11px; }
.connected-product .related-options { gap: 6px; }
.connected-product .related-option { min-height: 32px; padding: 0 6px; font-size: 11px; flex-basis: calc(50% - 3px); cursor: pointer; }
.connected-product .related-price { margin-top: auto; }
.connected-product .related-placeholder { position: relative; color: #285c8d; font-weight: 650; }
.connected-product .diagram-lightbox { width: 100vw !important; }
.connected-product .diagram-lightbox-region { max-height: 82vh; }
.connected-product .diagram-lightbox-image { max-height: 82vh; }
.connected-product [data-preview-caption] { position: absolute; bottom: 10px; left: 5%; width: 90%; margin: 0; font-size: 13px; text-align: center; }
@media (max-width: 700px) {
  .connected-product .molecular-slide--structure .molecular-slide-image,
  .connected-product .molecular-slide--sequence .molecular-slide-image { top: 24%; max-height: 64%; }
  .connected-product .connected-science-slide { padding: 18px 22px 44px; }
  .connected-product .connected-science-title { font-size: 10px; }
  .connected-product .coa-certificate-meta { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .connected-product .coa-certificate-screening-list { grid-template-columns: 1fr; }
  .connected-product .coa-certificate-screening-item { min-height: 0; }
  .connected-product .cart-button { min-height: 42px; font-size: 13px; }
  .connected-product .related-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
}
@media (prefers-reduced-motion: reduce) { .connected-product * { transition: none !important; } }
