.hausmann-pin-host {
    position: relative;
}

.hausmann-pin {
    position: absolute;
    right: 12px;
    bottom: 12px;
    z-index: 4;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.92);
    color: #e60023;
    line-height: 1;
    cursor: pointer;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
}

.hausmann-pin .fab {
    font-size: 18px;
    line-height: 1;
    pointer-events: none;
}

.hausmann-pin:hover,
.hausmann-pin:focus-visible {
    background: #fff;
    outline: none;
}

@media (hover: hover) and (pointer: fine) {
    .hausmann-pin-host:hover > .hausmann-pin,
    .shop-product-image:hover > .hausmann-pin,
    .image-wrapper:hover > .hausmann-pin,
    .hausmann-featured-image:hover > .hausmann-pin,
    .carousel:hover > .hausmann-pin,
    .hausmann-pin:focus-visible {
        opacity: 1;
        pointer-events: auto;
    }
}

@media (hover: none), (pointer: coarse) {
    .hausmann-pin {
        opacity: 1;
        pointer-events: auto;
    }
}

.hausmann-featured-image > .hausmann-pin {
    right: 20px;
    bottom: 20px;
    z-index: 5;
}

#product-info-container > .row > .col-lg-5 {
    pointer-events: none;
}

.carousel > .hausmann-pin--carousel {
    right: 72px;
    bottom: 16px;
    z-index: 5;
}

@media (max-width: 991.98px) {
    .hausmann-featured-image > .hausmann-pin:not(.hausmann-pin--carousel) {
        display: none;
    }
}
