.inim-component.interactive-visual { background:rgb(var(--accent-dark)); }
.inim-component.interactive-visual .inim-component-wrapper { padding:2rem 0; max-width:var(--content-width); margin-right:0; }
.inim-component.interactive-visual .interactive-visual-wrapper { margin:0; padding:1.5rem 1rem 0; overflow: hidden; }
.inim-component.interactive-visual .interactive-visual-title { max-width: var(--layout-width); }
.inim-component.interactive-visual .gallery { display:flex; gap:1rem; margin-top:4.5rem; }
.inim-component.interactive-visual .gallery-item { width: 18rem; height:23rem; border-radius:10px; text-align: center; flex: 0 0 auto; background:transparent none center center no-repeat; background-size:cover; position:relative; }
.inim-component.interactive-visual .gallery-item .hotspot { position:absolute; width:0; height:0; }
.inim-component.interactive-visual .gallery-item .hotspot i { position:absolute;top:0;left:0; overflow:hidden; margin:-2rem 0 0 -2rem; background: rgb(var(--white) / .7); color:rgb(var(--accent)); box-shadow: 0 5px 10px 0 rgb(var(--black) / .25); padding:1rem; border-radius:4rem; font-size:2rem; cursor:pointer; }
.inim-component.interactive-visual .gallery-item .hotspot .hotspot-tooltip { display:none; position:absolute; z-index: 1000; width:16rem !important; height:0; padding:1.5rem; background: rgb(var(--white) / .7); box-shadow: 0 5px 10px 0 rgb(var(--black) / .25); border-radius:1rem; }
.inim-component.interactive-visual .gallery-item .hotspot .hotspot-label { font-family:var(--font-headings); font-size:1rem; line-height:1.5rem; font-weight:bold; color:rgb(var(--black)); text-align:left; width:100%; margin-bottom:1rem; }
.inim-component.interactive-visual .gallery-item .hotspot .inim-button { background-color: rgb(var(--accent)); }
.inim-component.interactive-visual .gallery-item .hotspot .inim-button span { color: rgb(var(--white)); }
.inim-component.interactive-visual .gallery-caption { display:none; }
.inim-component.interactive-visual .gallery-navigation { width:18rem; }
body.mobile .inim-component.interactive-visual .gallery-item .hotspot .hotspot-tooltip { border-radius: 1rem !important; }

@media (min-width: 768px) { 
    .inim-component.interactive-visual .inim-component-wrapper { margin-top:2rem; margin-bottom:2rem; }
    .inim-component.interactive-visual .gallery-item { width: 35rem; height:27rem; text-align: center; }
    .inim-component.interactive-visual .gallery-navigation { width:35rem; }
}

@media (min-width: 992px) {
    .inim-component.interactive-visual .inim-component-wrapper { padding-top:0; padding-bottom:0; }
    .inim-component.interactive-visual .interactive-visual-wrapper { padding:1.5rem 5rem 0rem 0rem; }
    .inim-component.interactive-visual .gallery-item { width:53rem; height:30rem; text-align: center; }
    .inim-component.interactive-visual .gallery-navigation { width:53rem; }
}

@media (min-width: 1441px) {
    .inim-component.interactive-visual .inim-component-wrapper { border: 0; padding-left:0; max-width: none; }
    .inim-component.interactive-visual .gallery-item { width:64rem; height:45rem; text-align: center; }
    .inim-component.interactive-visual .gallery-navigation { width:64rem; }
/*    .inim-component.interactive-visual .gallery-navigation { margin-left:calc((1280px - 12rem) / 2); }*/
}

/* infinite loop */
.inim-component.interactive-visual.infinite-loop { overflow:hidden; }
.inim-component.interactive-visual.infinite-loop .interactive-visual-wrapper { overflow:visible; }
.inim-component.interactive-visual.infinite-loop .interactive-visual-title { padding-bottom:2rem; }
.inim-component.interactive-visual.infinite-loop .inim-component-wrapper .navigation-arrows { gap:1.5rem; }
.inim-component.interactive-visual.infinite-loop .gallery-item:first-child { margin-left:-18.5rem; }

@media (min-width: 768px) {
    .inim-component.interactive-visual.infinite-loop .inim-component-wrapper .navigation-arrows { gap:2rem; }
    .inim-component.interactive-visual.infinite-loop .gallery-item:first-child { margin-left:-32.5rem; }
    .inim-component.interactive-visual.infinite-loop .inim-component-wrapper .navigation-arrows .nav-left { left:1rem; }
    .inim-component.interactive-visual.infinite-loop .inim-component-wrapper .navigation-arrows .nav-right { right:1rem; }
}

@media (min-width: 992px) {
    .inim-component.interactive-visual.infinite-loop .inim-component-wrapper { margin:0; padding-left:0; }
    .inim-component.interactive-visual.infinite-loop .interactive-visual-wrapper { padding:1.5rem 0 0rem; }
    .inim-component.interactive-visual.infinite-loop .interactive-visual-title { max-width: var(--content-width); padding-bottom:4rem; padding-left: 5rem; padding-right: 5rem; margin:0 auto; }
    .inim-component.interactive-visual.infinite-loop .inim-component-wrapper .navigation-arrows { gap:4rem; }
    .inim-component.interactive-visual.infinite-loop .gallery-item:first-child { margin-left:-52.78rem; }
    .inim-component.interactive-visual.infinite-loop .inim-component-wrapper .navigation-arrows .nav-left { left:0rem; }
    .inim-component.interactive-visual.infinite-loop .inim-component-wrapper .navigation-arrows .nav-right { right:0rem; }
}

@media (min-width: 1441px) {
    .inim-component.interactive-visual.infinite-loop .inim-component-wrapper { margin-left:0; }
    .inim-component.interactive-visual.infinite-loop .interactive-visual-wrapper { padding:1.5rem 5rem 0rem; }
    .inim-component.interactive-visual.infinite-loop .inim-component-wrapper .navigation-arrows { gap:5rem; }
    .inim-component.interactive-visual.infinite-loop .gallery-item:first-child { margin-left:-61.1rem; }
    .inim-component.interactive-visual.infinite-loop .inim-component-wrapper .navigation-arrows .nav-left { left:3rem; }
    .inim-component.interactive-visual.infinite-loop .inim-component-wrapper .navigation-arrows .nav-right { right:3rem; }
}
@media (min-width: 2000px) {
    .inim-component.interactive-visual.infinite-loop .gallery-item:first-child { margin-left:-130rem; }
}

/* overwrite per elementor */
body.elementor-preview .inim-component.interactive-visual .gallery { flex-direction: column; }
body.elementor-preview .inim-component.interactive-visual.infinite-loop .gallery-item:first-child { margin-left:0; }



.inim-component.interactive-visual .inim-component-wrapper { margin-right: -1rem; max-width:calc(100vw - 1rem); }

@media (min-width: 600px) {
    .inim-component.interactive-visual .inim-component-wrapper { margin-right: -1.5rem; max-width:calc(100vw - 1.5rem); }
}
@media (min-width: 840px) {
    .inim-component.interactive-visual .inim-component-wrapper { margin-right: -2rem; max-width:calc(100vw - 2rem); }
}
@media (min-width: 1200px) {
    .inim-component.interactive-visual .inim-component-wrapper { margin-right: -3rem; max-width:calc(100vw - 3rem); }
}