.product-media,.compare-card__media,.product-thumb .image{position:relative}
.product-label-media{position:relative;display:inline-block;max-width:100%;vertical-align:middle}
.product-labels{box-sizing:border-box;display:flex;flex-wrap:wrap;gap:6px;text-align:left}
.product-labels--overlay{position:absolute;top:12px;left:12px;right:auto;z-index:2;flex-direction:column;align-items:flex-start;max-width:calc(100% - 74px);pointer-events:none}
.product-labels--overlay.position_upright{left:auto;right:58px;align-items:flex-end;text-align:right}
.product-labels .product-label{display:block;box-sizing:border-box;max-width:100%;padding:5px 9px;background:#222;color:#fff;font-size:12px;font-weight:600;line-height:1.3;overflow-wrap:anywhere}
.product-labels--inline{margin:10px 0 18px;align-items:flex-start}
.product-labels--inline .product-label{font-size:13px}
@media(max-width:767px){.product-labels--overlay{top:8px;left:8px;max-width:calc(100% - 60px);gap:4px}.product-labels--overlay.position_upright{left:auto;right:48px}.product-labels .product-label{padding:4px 6px;font-size:11px}.product-labels--inline .product-label{font-size:12px}}
.product-label-media .product-labels--overlay{top:2px;left:2px;right:auto;max-width:calc(100% - 4px);gap:2px}
.product-label-media .product-labels--overlay.position_upright{left:auto;right:2px}
.product-label-media .product-label{padding:1px 2px;font-size:9px}

/* Tempo placement only: all label colors remain controlled by Labels admin settings. */
.product-page .product-gallery__viewport,.tempo-string-image{position:relative}
