/* Shared featured-product rotators, tiles and grids. Tenant CSS loads afterward. */
featured-rotator .price-string { display: flex; flex-direction: column; }
featured-rotator .price-string.exVatFirst { flex-direction: column-reverse; }
featured-rotator .product[data-finished-loading="true"] .price-info .ellipsis { display: none; }
featured-rotator .productRotator .loading-element {
    min-height: 480px;
}
featured-rotator .carousel__slide {
    padding: 10px 12px;
}
featured-rotator .carousel__next {
    right: 0;
}
featured-rotator .carousel__prev {
    left: 0;
}
featured-rotator .carousel__next,
featured-rotator .carousel__prev {
    display: flex !important;
    justify-content: center;
    align-items: center;
    width: 36px;
    height: 36px;
    border-radius: 18px;
    padding: 0;
    box-shadow: 0 2px 5px rgba(0,0,0,0.15);
    background: #fff;
    color: #333;
    font-size: 18px;
}
featured-rotator .product-grid {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(auto-fit, minmax(225px, 1fr));
}
featured-rotator .product-grid .product:first-child {
    grid-column-end: span 2;
    grid-row: span 2 / auto;
}
featured-rotator .product-grid .product {
    position: relative;
    padding: 0;
}
featured-rotator .product-grid .product .product_text,
featured-rotator .product-grid .product .quick-add {
    display: none !important;
}
featured-rotator .product-grid .product .product_price {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    text-align: right;
    align-items: end;
    justify-content: end;
    margin: 0;
    padding: 28px 12px 8px 12px;
    background: linear-gradient(180deg,transparent,#ffffffd9 60%);
}
featured-rotator .product-grid .product .product_imgLink,
featured-rotator .product-grid .product .product_imgLink img {
        height: 100% !important;
    max-height: initial;
    object-fit: contain;
}
featured-rotator .product-grid .product .in-other-baskets {
    z-index: 1;
    bottom: 64px;
    right: 0;
    left: auto;
    border-radius: 12px 0px  0px 12px;
}
featured-rotator .max-width-350 {
    max-width: 350px;
}
featured-rotator .product-tiles img {
    height: 100px !important;
    width: 100%;
    object-fit: contain;
}
featured-rotator .product-tiles p {
    height: 3em;
    line-height: 1.5em;
/*    overflow-y: hidden;*/
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
