/* IMS News Image-Slider - clean Owl integration */
.ims-news-slider {
    position: relative;
    width: 100%;
    min-width: 0;
    --ims-nav-y: 50%;
}

.ims-news-slider__heading { margin-bottom: 24px; }
.ims-news-slider__title > :first-child { margin-top: 0; }
.ims-news-slider__title > :last-child { margin-bottom: 0; }
.ims-news-slider__subheading { margin-top: 8px; }

.ims-news-slider__viewport {
    position: relative;
    width: 100%;
    min-width: 0;
    overflow: hidden;
}

/* Owl core, scoped so Aiero's generic slider initializer cannot target us. */
.ims-news-slider__carousel {
    position: relative;
    display: none;
    width: 100%;
    min-width: 0;
    -webkit-tap-highlight-color: transparent;
    z-index: 1;
}
.ims-news-slider__carousel.owl-loaded { display: block; }
.ims-news-slider__carousel.owl-loading { opacity: 0; display: block; }
.ims-news-slider__carousel.owl-hidden { opacity: 0; }
.ims-news-slider__carousel .owl-stage { position: relative; -ms-touch-action: pan-Y; touch-action: pan-y; }
.ims-news-slider__carousel .owl-stage::after { content: "."; display: block; clear: both; visibility: hidden; height: 0; line-height: 0; }
.ims-news-slider__carousel .owl-stage-outer { position: relative; overflow: hidden; width: 100%; transform: translate3d(0,0,0); }
.ims-news-slider__carousel .owl-item { position: relative; min-height: 1px; float: left; backface-visibility: hidden; -webkit-tap-highlight-color: transparent; }
.ims-news-slider__carousel .owl-item img { display: block; width: 100%; }

/* Fallback before Owl is available: only first slide is visible. */
.ims-news-slider__carousel:not(.owl-loaded) > .ims-news-slider__item { display: none; }
.ims-news-slider__carousel:not(.owl-loaded) > .ims-news-slider__item:first-child { display: block; }

.ims-news-slider__item { width: 100%; min-width: 0; }
.ims-news-slider__media {
    position: relative;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    background: rgba(255,255,255,.03);
}
.ims-news-slider__image {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    object-fit: cover;
}
.ims-news-slider--dynamic .ims-news-slider__image {
    height: auto !important;
    aspect-ratio: auto !important;
    object-fit: contain;
}
.ims-news-slider--fixed .ims-news-slider__image { object-fit: cover; }

.ims-news-slider__caption {
    margin-top: 10px;
    font-size: 12px;
    line-height: normal;
}

.ims-news-slider .owl-nav {
    position: absolute;
    left: 0;
    right: 0;
    top: var(--ims-nav-y);
    height: 0;
    margin: 0 !important;
    pointer-events: none;
    transform: translateY(-50%);
    z-index: 20;
}
.ims-news-slider .owl-nav button.owl-prev,
.ims-news-slider .owl-nav button.owl-next {
    position: absolute;
    top: 0;
    transform: translateY(-50%);
    width: 46px;
    height: 46px;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #fff !important;
    border-radius: 0;
    box-shadow: none !important;
    text-shadow: 0 1px 5px rgba(0,0,0,.45);
    line-height: 1 !important;
    pointer-events: auto;
    display: flex !important;
    align-items: center;
    justify-content: center;
    font-size: 34px !important;
    font-family: Arial, sans-serif !important;
}
.ims-news-slider .owl-nav button.owl-prev { left: 18px; }
.ims-news-slider .owl-nav button.owl-next { right: 18px; }
.ims-news-slider .owl-nav button::before,
.ims-news-slider .owl-nav button::after { content: none !important; display: none !important; }
.ims-news-slider .owl-nav.disabled { display: none; }

.ims-news-slider .owl-dots {
    text-align: center;
    -webkit-tap-highlight-color: transparent;
    margin: 37px -7px 0;
    line-height: 0;
}
.ims-news-slider .owl-dots.disabled { display: none; }
.ims-news-slider .owl-dot {
    display: inline-block;
    zoom: 1;
    margin: 7px !important;
    padding: 5px 0 !important;
    cursor: pointer;
    min-width: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: none !important;
    box-shadow: none !important;
}
.ims-news-slider .owl-dot::after { display: none !important; }
.ims-news-slider .owl-dot span {
    width: 35px;
    height: 6px;
    display: block;
    position: relative;
    margin: 0 !important;
    border: none;
    border-bottom: 2px solid rgba(255,255,255,.75);
    border-radius: 0;
    background: none !important;
    box-sizing: border-box;
    transition: border-color .3s, border-width .3s;
}
.ims-news-slider .owl-dot.active span {
    border-bottom-width: 6px;
    border-bottom-color: #fff;
}
@media only screen and (min-width: 576px) {
    .ims-news-slider .owl-dot span { width: 48px; }
}

.ims-news-slider__zoom {
    position: absolute;
    z-index: 15;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.85);
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: .82;
    transition: opacity .2s ease, transform .2s ease;
}
.ims-news-slider__zoom:hover { opacity: 1; transform: scale(1.06); }
.ims-news-slider__zoom svg { width: 22px; height: 22px; fill: currentColor; }
.ims-news-slider__zoom--top-left { top: 18px; left: 18px; }
.ims-news-slider__zoom--top-right { top: 18px; right: 18px; }
.ims-news-slider__zoom--bottom-left { bottom: 18px; left: 18px; }
.ims-news-slider__zoom--bottom-right { bottom: 18px; right: 18px; }
.ims-news-slider__zoom--center { top: 50%; left: 50%; transform: translate(-50%,-50%); }
.ims-news-slider__zoom--center:hover { transform: translate(-50%,-50%) scale(1.06); }

.ims-news-slider-lightbox {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 3vh 3vw;
    background: rgba(0,0,0,.92);
}
.ims-news-slider-lightbox.is-open { display: flex; }
.ims-news-slider-lightbox__image { max-width: 94vw; max-height: 92vh; width: auto; height: auto; object-fit: contain; }
.ims-news-slider-lightbox__close,
.ims-news-slider-lightbox__prev,
.ims-news-slider-lightbox__next {
    position: absolute;
    z-index: 2;
    border: 0;
    background: rgba(0,0,0,.35);
    color: #fff;
    cursor: pointer;
}
.ims-news-slider-lightbox__close { top: 18px; right: 18px; width: 48px; height: 48px; border-radius: 50%; font-size: 30px; }
.ims-news-slider-lightbox__prev,
.ims-news-slider-lightbox__next { top: 50%; transform: translateY(-50%); width: 54px; height: 72px; font-size: 38px; }
.ims-news-slider-lightbox__prev { left: 18px; }
.ims-news-slider-lightbox__next { right: 18px; }

@media (max-width: 767px) {
    .ims-news-slider .owl-nav button.owl-prev,
    .ims-news-slider .owl-nav button.owl-next { width: 40px; height: 40px; font-size: 28px !important; }
    .ims-news-slider .owl-nav button.owl-prev { left: 10px; }
    .ims-news-slider .owl-nav button.owl-next { right: 10px; }
    .ims-news-slider__zoom { width: 42px; height: 42px; }
}


/* Eigene Pointer-Navigation: horizontal ziehen/wischen ohne Owls passive Touch-Listener. */
.ims-news-slider__viewport {
    touch-action: pan-y;
    cursor: grab;
    user-select: none;
    -webkit-user-select: none;
}
.ims-news-slider__image {
    -webkit-user-drag: none;
    user-select: none;
    -webkit-user-select: none;
}
.ims-news-slider.is-pointer-dragging .ims-news-slider__viewport {
    cursor: grabbing;
}
.ims-news-slider .owl-nav,
.ims-news-slider .owl-dots {
    cursor: default;
}

/* Zoom-Schaltflaeche bleibt auch bei Slider-Interaktion anklickbar. */
.ims-news-slider__zoom,
.ims-news-slider__zoom:hover { cursor: pointer; }
