/* Always-visible wishlist controls, independent of carousel hover states. */
body .products .products-img { position: relative; }
body .products .products-img .product-card-wishlist {
    position: absolute; inset-block-start: 10px; inset-inline-end: 10px; z-index: 8;
    display: inline-flex; align-items: center; justify-content: center;
    width: 44px; height: 44px; min-height: 44px; padding: 9px;
    border: 1px solid #d3dcd6; border-radius: 50%; background: #fff; color: #26392d;
    box-shadow: 0 2px 8px #152a1920; cursor: pointer;
}
body .product-card-wishlist svg { fill: none; stroke: currentColor; stroke-width: 1.8; }
body .product-card-wishlist.is-active, body .product-card-wishlist.active { color: #c33251; }
body .product-card-wishlist.is-active svg, body .product-card-wishlist.active svg { fill: currentColor; }
body .product-card-wishlist:focus-visible { outline: 3px solid #216e43; outline-offset: 3px; }
body .product-card-wishlist:disabled { opacity: .6; cursor: wait; }
@media (max-width: 767px) {
    body .detail-page--marketplace > section:first-of-type > .container { padding-inline: 12px; }
    body .detail-page--marketplace .product-detail-gallery { width: calc(100% + 24px); max-width: none; margin-inline: -12px; }
    body .detail-page--marketplace .main-img-slider,
    body .detail-page--marketplace .main-img-slider a { min-height: clamp(380px, 105vw, 650px); }
    body .detail-page--marketplace .main-img-slider img { width: 100%; height: clamp(380px, 105vw, 650px); object-fit: contain; aspect-ratio: auto; }
    body .detail-page--restaurant .main-img-slider img { object-fit: cover; }
}
