.knm-ribbon-container .span {
    margin-right: auto;
}

.productdetails-gallery__main-image {
    position: relative;
}
.knm_cuba_pos_container {
    position: absolute;
    z-index: 1;
    width: auto;
    display: flex;
    flex-direction: column;
}
.knm_cuba_pos_container .image-wrapper {
    display: flex;
    flex-direction: column;
}
.knm-ribbon-container .image-wrapper {
    overflow: visible!important;
}
.knm-ribbon-container .knm_cuba_pos_container > *:last-child {
    margin-bottom: 0!important;
}

.knm-ribbon-container .knm_cuba_pos_container > a {
    pointer-events: all;
}

.knm-ribbon-container .image-wrapper .overlay-img, .knm-ribbon-container .overlay-img  {
    position: relative!important;
}

.knm-ribbon-container .image-wrapper .overlay-img, .knm-ribbon-container .knm_cuba_pos_container .overlay-img  {
    position: relative!important;
    top: 0!important;
    left: 0!important;
    transform: none;
}
.knm-ribbon-container .knm_cuba_pos_container .overlay-img  {
    position: relative!important;
    top: 0!important;
    left: 0!important;
    transform: none;
}

.knm-ribbon-container {
    display: flex;
    position: absolute;
    top: 0;
    flex-direction: column;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.knm_cuba_pos_container, .knm_ribbon {
    position: absolute;
}

body[data-page="1"] .knm-ribbon-container {
    z-index: 701;
}

.knm-ribbon-container span, .knm-ribbon-container a {
    margin-right: auto;
    position: initial;
}

.knm-ribbon-container .knm_ribbon::before {
    border-right-color: inherit;
}

.knm-ribbon-container .knm_badge_image {
    transition: all 0.2s ease-in-out;
    left: -0.5rem;
    z-index: 2;
    max-width: 100%;
    margin-right: auto;
    width: auto;
}

#image_wrapper.fullscreen .knm-ribbon-container {
    display: none;
}

.productbox.productbox-hover:hover .knm-ribbon-container .knm_badge_image {
    left: -1.5rem;
    top: -0.5rem;
}

.knm-ribbon-container .knm_ribbon::before {
    border-right-color: inherit;
}

.knm-ribbon-container .overlay-img {
    position: relative;
    max-width: max-content;
}

.knm-ribbon-container .ribbon, .knm-ribbon-container .knm_badge_image {
    position: relative;
    top: 0;
}

.knm-ribbon-container .knm_badge_image {
    transition: all 0.2s ease-in-out;
    z-index: 2;
    max-width: 100%;
    margin-right: auto;
}

.knm-ribbon-container .knm_badge_image {
    position: relative;
}

#image_wrapper.fullscreen .knm-ribbon-container {
    display: none;
}


.knm-ribbon-container .knm_cuba_pos_0 {
    top: 0;
    left: 0;
}

.knm-ribbon-container .knm_cuba_pos_1 {
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.knm-ribbon-container .knm_cuba_pos_2 {
    top: 0;
    left: unset !important;
    right: 0;
}

.knm-ribbon-container .knm_cuba_pos_3 {
    top: 50% !important;
    left: 0;
    transform: translateY(-50%);
}

.knm-ribbon-container .knm_cuba_pos_3 .knm_cuba_pos_3 {
    transform: translateY(0);
}

.knm-ribbon-container .knm_cuba_pos_4 {
    top: 50% !important;
    left: unset !important;
    right: 0;
    transform: translateY(-50%);
}

.knm-ribbon-container .knm_cuba_pos_5 {
    height: fit-content;
    left: 0;
    top: unset !important;
    bottom: 0;
}

.knm-ribbon-container .knm_cuba_pos_6 {
    height: fit-content;
    left: 50%;
    transform: translateX(-50%);
    top: unset !important;
    bottom: 0;
}

.knm-ribbon-container .knm_cuba_pos_7 {
    height: fit-content;
    left: unset !important;
    right: 0;
    top: unset !important;
    bottom: 0;
}

.knm-ribbon-container .knm_cuba_pos_7 .ribbon, .knm-ribbon-container .knm_cuba_pos_2 .ribbon, .knm-ribbon-container .knm_cuba_pos_4 .ribbon {
    left: 0;
}
.knm_badge_w_link {
    pointer-events: all!important;
    cursor: pointer;
}