/* Produkt Kacheln */
.elementor-loop-container ins,
ul.products ins {
	text-decoration: none;
}
.elementor-loop-container del,
ul.products del {
	font-size: 18px;
}

/* Zusatzinfos unter dem Preis in Produktkarten: Der Elementor-Loop wird auch
   auf der Startseite eingesetzt, daher gehören diese Regeln nicht in die CSS
   Datei der Einzelproduktseite. */
.sapura-product-card-price-meta {
	clear: both;
	color: #4b4a49;
	display: grid;
	font-size: 12px !important;
	gap: 2px;
	line-height: 1.4 !important;
	margin-top: 6px;
}

.sapura-product-card-tax-info,
.sapura-product-card-unit-price {
	display: block !important;
	font-size: 12px !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	white-space: normal !important;
}

.sapura-product-card-unit-price .price.price-unit {
	color: inherit !important;
	font-size: inherit !important;
	line-height: inherit !important;
	margin: 0 !important;
}

.sapura-product-card-unit-price .price.price-unit *,
.sapura-product-card-unit-price .woocommerce-Price-amount,
.sapura-product-card-unit-price .woocommerce-Price-currencySymbol,
.sapura-product-card-unit-price .unit,
.sapura-product-card-unit-price .unit-base,
.sapura-product-card-unit-price del,
.sapura-product-card-unit-price ins {
	font-size: 12px !important;
	font-weight: inherit !important;
	line-height: 1.4 !important;
}

.sapura-product-card-unit-price .price.price-unit::before {
	content: none;
}

/* Sale unit prices in product cards are rendered outside the normal Woo
   price widget. The native strike falls below the compact text here, so use
   a precise, centred line only for the crossed-out card value. */
.sapura-product-card-unit-price del {
	display: inline-block;
	position: relative;
	text-decoration: none !important;
}

.sapura-product-card-unit-price del::after {
	border-top: 1px solid currentColor;
	content: "";
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.sapura-product-unit-suffix {
	white-space: nowrap;
}

/* Produktbild in allen Elementor-Produktkarten: Das Originalbild bleibt
   unverändert. Eine zweite, geclippte Bildebene übernimmt nur den Zoom. */
.e-loop-item.product .elementor-element-1317565 {
	overflow: hidden;
	background-position: center;
	position: relative;
}

.e-loop-item.product .elementor-element-1317565::before {
	background-image: inherit;
	background-position: inherit;
	background-repeat: inherit;
	background-size: inherit;
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	transform: scale(1);
	transition: transform .35s cubic-bezier(.2, .65, .3, 1);
	will-change: transform;
}

.e-loop-item.product:hover .elementor-element-1317565::before,
.e-loop-item.product:focus-within .elementor-element-1317565::before {
	transform: scale(1.05);
}

@media (prefers-reduced-motion: reduce) {
	.e-loop-item.product .elementor-element-1317565::before {
		transition: none;
	}
}


/* =========================================
   Produkt-Sterne im Loop – final sauber
   ========================================= */

.loop-rating {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 6px 0 10px;
}

/* Stern-Wrapper */
.loop-rating .star-rating {
    position: relative;
    display: inline-block;
    font-family: "star";
    font-size: 1em;
    width: 5.4em;
    height: 1em;
    line-height: 1;
}

/* Graue Sterne 
.loop-rating .star-rating::before {
    content: "★★★★★";
    color: #d0d0d0;
    position: absolute;
    left: 0;
    top: 0;
}*/
/* Leere Sterne (Outline) */
.loop-rating .star-rating::before {
    content: "★★★★★";
    color: transparent;
    -webkit-text-stroke: 1px #f2b01e; /* Umrandung */
    text-stroke: 1px #f2b01e;
}


/* Gelbe Sterne (gefüllt) */
.loop-rating .star-rating span {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    overflow: hidden;
}

/* Gelbe Sterne zeichnen */
.loop-rating .star-rating span::before {
    content: "★★★★★";
    color: #f1c40f;
    position: absolute;
    left: 0;
    top: 0;
}

.loop-rating .star-rating span {
    color: transparent!important;
}


/* Bewertungsanzahl */
.loop-rating-count {
    font-size: 0.85em;
    color: #555;
    line-height: 1;
}
