/* Related products v3.19.64 — complete desktop row, responsive without a blank slot. */
body.single-product .related.products,
body.single-product .upsells.products {
    overflow: visible !important;
}

body.single-product .related.products > h2,
body.single-product .upsells.products > h2 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px !important;
    font-weight: 800 !important;
    letter-spacing: -.015em;
}
body.single-product .related.products > h2::after,
body.single-product .upsells.products > h2::after {
    content: "";
    height: 1px;
    flex: 1 1 auto;
    background: linear-gradient(90deg, rgba(220,38,38,.22), rgba(148,163,184,.12), transparent);
}

body.single-product .related.products .products,
body.single-product .related.products .row {
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 14px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}
body.single-product .upsells.products .products,
body.single-product .upsells.products .row {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)) !important;
    gap: 14px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}
body.single-product .related.products .product,
body.single-product .related.products .product-small,
body.single-product .upsells.products .product,
body.single-product .upsells.products .product-small,
body.single-product .related.products .col,
body.single-product .upsells.products .col {
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

@media (max-width: 1279px) and (min-width: 850px) {
    body.single-product .related.products .products,
    body.single-product .related.products .row {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 849px) {
    body.single-product .related.products,
    body.single-product .upsells.products {
        padding: 12px !important;
    }
    body.single-product .related.products .products,
    body.single-product .related.products .row,
    body.single-product .upsells.products .products,
    body.single-product .upsells.products .row {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }
}
