.awcf-loop-items{position:relative;&.awcf-loading {
        min-height: 300px;

        &::after {
            content: '';
            position: absolute;
            inset: 0;
            background: rgba(255, 255, 255, 0.8);
            z-index: 10;
        }

        &::before {
            content: '';
            position: absolute;
            top: 120px;
            left: 50%;
            transform: translateX(-50%);
            width: 40px;
            height: 40px;
            border: 4px solid #eee;
            border-top-color: #885f83;
            border-radius: 50%;
            z-index: 11;
            animation: awcf-spin 0.7s linear infinite;
        }
    }

    & p {
        padding: 0;
        margin: 0;
    }

    & .awcf-loop-items-content {
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        flex-direction: row;
        align-content: flex-start;
        justify-content: flex-start;
        align-items: stretch;

        & .awcf-loop-item {
            display: flex;
            position: relative;
            width: calc(33% - 11px);
            box-sizing: border-box;
            flex-direction: column;
            flex-wrap: nowrap;
            justify-content: space-between;
            align-items: center;
            overflow: hidden;
            border: 1px solid #2A2F35;
            transition: all 0.3s ease-in-out;
            border-radius: 0;
            background: #fff;
            color: #000;
            cursor: pointer;

            & .awcf-loop-item-header {
                padding: 10px 10px 0 10px;
                margin: 0;
                color: #000;
                width: 100%;

                & img,
                & .awcf-no-img {
                    height: 175px;
                    object-fit: contain;
                    width: 100%;
                }

                & .awcf-loop-item-content {
                    padding: 10px;
                    margin: 0;
                    font-size: 20px;
                    font-family: inherit;
                    font-weight: 500;
                    line-height: 1.125;
                    width: 100%;
                    text-align: center;
                    color: #2B358A;

                    & p {
                        font-size: 13px;
                        font-weight: normal;
                        margin: 0;
                        padding: 0;
                        width: 100%;
                    }
                }
            }

            /* De footer vult de resterende tegelhoogte en duwt de knoppen omlaag,
               zodat de prijs bij élk product direct onder de titel staat. Zonder
               dit zakt de prijs bij simpele producten mee naar de knop: de tegel
               is space-between, de footer wordt dus onderaan geplakt, en die is
               daar korter omdat de variatie-select ontbreekt. */
            & .awcf-loop-item-footer {
                padding: 10px;
                margin: 0;
                width: 100%;
                display: flex;
                flex-direction: column;
                flex: 1 1 auto;

                & .awcf-loop-item-footer-price {
                    text-align: center;
                    font-weight: bold;
                    font-size: 15px;
                    line-height: 1em;
                    margin-bottom: 15px;
                }

                & .awcf-loop-item-footer-buttons {
                    margin-top: auto;
                }
            }

            &:hover {
                border: 1px solid #2A2F35;
            }
        }

        /* Onder ~966px passen 3 kolommen niet meer -> 2 kolommen. In deze range
           blijven de knoppen NAAST elkaar (aantal | toevoegen | info) en houdt de
           "Selecteer een optie"-select z'n volle breedte (plugin-default). */
        @media(max-width: 966px) {
            & .awcf-loop-item {
                width: calc(50% - 10px);

                & .awcf-loop-item-content {
                    font-size: 14px !important;
                    padding: 5px 0 0 0 !important;

                    & p {
                        display: none;
                    }
                }

                /* Prijs mobiel 14px + gecentreerd. */
                & .awcf-loop-item-footer-price {
                    font-size: 14px !important;
                    text-align: center;
                }
            }
        }

        /* Onder 660px: tegels blijven 2-koloms (2 producten naast elkaar, ook op
           mobiel), maar de velden binnen de tegel gaan onder elkaar (select, aantal,
           toevoegen, info), elk full width van de tegel. align-items:stretch i.p.v.
           flex-start, anders kromp het knoppenblok tot ~184px i.p.v. de volle
           tegelbreedte. (Tegelbreedte 50% blijft uit het ≤966px-blok.) */
        @media(max-width: 660px) {
            & .awcf-loop-item {
                & .awcf-loop-item-footer {
                    padding: 10px;
                    margin: 0;
                    width: 100%;
                    display: flex;
                    flex-direction: column;
                    flex-wrap: nowrap;
                    justify-content: flex-start;
                    align-items: stretch;

                    & .awcf-loop-item-footer-price {
                        text-align: center;
                    }

                    & .awcf-loop-item-footer-buttons {
                        width: 100%;

                        & form {
                            width: 100%;

                            & .aw-qty-btn-wrapper {
                                display: flex;
                                flex-direction: column;
                                flex-wrap: nowrap;
                                justify-content: flex-start;
                                align-items: stretch;
                                gap: 10px;
                                width: 100%;
                            }

                            & .aw-qty-btn-wrapper-left,
                            & .aw-qty-btn-wrapper-right,
                            & .aw-view-product-btn {
                                width: 100%;
                                min-width: 0;

                                .button,
                                button,
                                a {
                                    width: 100%;
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}@keyframes awcf-spin {
    to {
        transform: translateX(-50%) rotate(360deg);
    }
}.awcf-loop-items .awcf-loop-item-badge{position:absolute;top:10px;left:10px;z-index:2;padding:3px 9px;border-radius:2px;background:#2b358a;color:#fff;font-size:12px;font-weight:700;line-height:1.4;text-transform:uppercase;letter-spacing:.02em;pointer-events:none}.awcf-loop-items .awcf-loop-item-footer-price .screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.awcf-loop-items .awcf-loop-item-footer-price del{margin-right:5px;color:#6b7280;font-weight:400;text-decoration:line-through}.awcf-loop-items .awcf-loop-item-footer-price ins{color:#2b358a;text-decoration:none}.awcf-loop-items .awcf-loop-item-title{display:block;width:100%;text-align:center!important;font-size:17px;color:#2b358a}.awcf-loop-items .awcf-loop-item-content p{display:none!important}.aw-add-to-cart-btn,.aw-qty-btn-wrapper-right button,.aw-qty-btn-wrapper-right .aw-view-cart-btn,.aw-view-product-btn,.view-cart-button{background-color:#2b358a!important;border-color:#2b358a!important;color:#fff!important;border-radius:0!important}.aw-qty-btn-wrapper-right .aw-notify-btn{background-color:#fff!important;border:1px solid #2b358a!important;color:#2b358a!important;border-radius:0!important}.aw-qty-btn-wrapper-right .aw-notify-btn:hover,.aw-qty-btn-wrapper-right .aw-notify-btn:focus{background-color:#2b358a!important;border-color:#2b358a!important;color:#fff!important}.aw-add-to-cart-btn:hover:not(:disabled):not(.aw-error-state),
.aw-qty-btn-wrapper-right button:hover:not(:disabled):not(.aw-error-state),
.aw-qty-btn-wrapper-right .aw-view-cart-btn:hover,
.aw-view-product-btn:hover,
.view-cart-button:hover {background-color:#fff!important;border-color:#2b358a!important;color:#2b358a!important}.aw-view-cart-btn{font-size:13px!important}.aw-view-product-btn:hover svg,.aw-view-product-btn:hover svg path{fill:#2b358a!important}.aw-qty-btn-wrapper-left input,.aw-product-form select{border-radius:0!important}.aw-product-form label:not(.screen-reader-text) {display:none!important}