﻿
.sbr-prod-detail__badges {
    list-style-type: none;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 0;
}

    .sbr-prod-detail__badges li {
        background: var(--sbr-brand-green-100);
        border-radius: var(--sbr-radius-4);
        padding: .25rem .75rem;
        font-size: .875rem;
        font-weight: 500;
        display: inline-flex;
        align-items: center;
        gap: .25rem;
    }

        .sbr-prod-detail__badges li:before {
            content: '';
            display: inline-block; /* Enables sizing */
            background-image: url('https://via.placeholder.com/150');
            background-size: contain; /* Scale the image proportionally */
            background-repeat: no-repeat;
            background-position: center;
            width: 1.25rem; /* Restrict the width */
            aspect-ratio: 1/1; /* Maintain the aspect ratio */
            margin-right: 10px; /* Add spacing between the image and text */
        }

        .sbr-prod-detail__badges li.elearning:before {
            background-image: url('/uploads/images/delivery-elearning.png');
        }

        .sbr-prod-detail__badges li.classroom:before {
            background-image: url('/uploads/images/delivery-classroom.png');
        }

        .sbr-prod-detail__badges li.vilt:before {
            background-image: url('/uploads/images/delivery-virtual.png');
        }

        .sbr-prod-detail__badges li.blended:before {
            background-image: url('/uploads/images/delivery-blended.png');
        }

.sbr-prod-detail__locator-form {
    border: 1px solid var(--sbr-neutral-gray-250);
    border-radius: var(--sbr-radius-8);
    padding: 1rem;
    margin-bottom: 3rem;
}

.sbr-prod-detail__locator-form-fields {
    display: flex;
    gap: 1rem;
    align-items: center;
    justify-content: flex-start;
}

.sbr-prod-detail__locator-radius {
    margin-right: auto;
}

.sbr-prod-detail__locator-clear {
    display: none;
}

.sbr-prod-detail__locator-result-hidden {
    display: none;
}

.sbr-prod-detail__images {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all ease-in-out 3s;
}

.sbr-prod-detail__equip-cert {
    display: flex;
    gap: 3rem;
    align-items: center;
    justify-content: flex-start;
}

    .sbr-prod-detail__equip-cert > div {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: .5rem;
    }

    .sbr-prod-detail__equip-cert img {
        width: 3rem;
    }

.sbr-prod-detail .sbr-promo-price {
    padding: .5rem;
    font-weight: 600;
    border: 1px solid var(--sbr-neutral-gray-250);
}

    .sbr-prod-detail .sbr-promo-price > div {
        display: flex;
        align-items: center;
        gap: .5rem;
    }

    .sbr-prod-detail .sbr-promo-price .price {
        margin-left: auto;
    }

.sbr-prod-detail .sbr-promo-price__retail .price {
    text-decoration: line-through;
}

.sbr-prod-detail table.sbr-volume-discounts__table {
    border-collapse: collapse;
    width: 100%;
    border: 1px solid var(--sbr-neutral-gray-250);
}

    .sbr-prod-detail table.sbr-volume-discounts__table :is(th,td) {
        border: 1px solid var(--sbr-neutral-gray-250);
        padding: .5rem;
    }

    .sbr-prod-detail table.sbr-volume-discounts__table thead th {
        background: var(--sbr-neutral-gray-400);
    }


.sbr-prod-detail table.lc-productoptionstable {
    border-collapse: separate; /* collapse prevents vorder-radius from working */
    width: 100%;
    border: 1px solid var(--sbr-neutral-gray-250);
    border-radius: var(--sbr-radius-8);
}

    .sbr-prod-detail table.lc-productoptionstable :is(th,td) {
        text-align: left;
        padding: .5rem;
    }

    .sbr-prod-detail table.lc-productoptionstable th {
        background: transparent;
        color: var(--sbr-text-color);
    }

    .sbr-prod-detail table.lc-productoptionstable tr:first-child th {
        border-bottom: 1px solid var(--sbr-neutral-gray-250);
    }


.sbr-prod-detail .lc-productoptionsdiv {
    container: prod-options / inline-size;
}

@container prod-options (max-width: 875px) {
    .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable,
    .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable :is(thead, th, td, tr) {
        display: block;
        width: 100%;
    }

        .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable tbody {
            display: flex;
            flex-direction: column;
            gap: 1rem;
            padding: 1rem;
        }

        .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable tr:first-child {
            display: none;
        }


        .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable tr[data-location] {
            border: solid 1px var(--sbr-neutral-gray-250);
            border-radius: var(--sbr-radius-4);
            padding: .5rem;
            display: grid;
            gap: .5rem;
            grid-template-columns: 1fr 1fr 1fr;
            grid-template-areas:
                "date date date"
                "delivery delivery delivery"
                "addr addr addr"
                "city state zip"
                "price price price";
        }

        .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable td:nth-child(1) {
            grid-area: date
        }

        .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable td:nth-child(2) {
            grid-area: delivery
        }

        .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable td:nth-child(3) {
            grid-area: addr
        }

        .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable td:nth-child(4) {
            grid-area: city
        }

        .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable td:nth-child(5) {
            grid-area: state
        }

        .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable td:nth-child(6) {
            grid-area: zip
        }

        .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable td:nth-child(7) {
            grid-area: price
        }

        .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable td {
            padding: 0;
        }

            .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable td[data-label]::before {
                content: attr(data-label);
                display: block;
                font-weight: 600;
                border-bottom: solid 1px var(--sbr-neutral-gray-100);
            }

            .sbr-prod-detail .lc-productoptionsdiv table.lc-productoptionstable td:empty {
                display: none;
            }
}

.sbr-prod-detail div:has(> .lc-CartQuantity) {
    display: flex;
    gap: 1rem;
    align-items: center;
    justify-content: end;
}

.sbr-prod-detail div:is(.lc-CartQuantity,.lc-CartSubmit) {
    float: none;
    width: auto;
}

.sbr-prod-detail .lc-CartQuantity {
    display: flex;
    gap: .5rem;
    border: 1px solid var(--sbr-neutral-gray-250);
    border-radius: var(--sbr-radius-4);
    align-items: center;
    padding: 0 .75rem;
}

    .sbr-prod-detail .lc-CartQuantity label.lc-inlinelabel {
        position: unset;
        font-size: unset;
        padding: unset !important;
        line-height: unset !important;
        margin: unset !important;
    }

    .sbr-prod-detail .lc-CartQuantity input[type="text"].lc-inlineinput {
        position: unset;
        border: none;
        padding: unset !important;
        text-align: right;
        padding: 0 .75rem !important;
    }

.sbr-prod-detail .lc-Price {
    font-size: 1.1rem;
    font-weight: 500;
}

    .sbr-prod-detail .lc-Price p {
        color: var(--sbr-text-color);
        margin: 0;
    }

button[disabled], input[disabled] {
    cursor: not-allowed;
    background: var(--sbr-neutral-gray-100) !important;
    color: var(--sbr-neutral-gray-500) !important;
}

.sbr-prod-detail--single-price div:has(> .lc-CartQuantity) {
    justify-content: flex-start;
}
