/* Container and list */
.splide__container {
    box-sizing: border-box;
    position: relative;
}

.splide__list {
    backface-visibility: hidden;
    display: flex;
    height: 100%;
    margin: 0 !important;
    padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
    display: block;
}

/* Pagination */
.splide__pagination {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0;
    pointer-events: none;
}

.splide__pagination li {
    display: inline-block;
    line-height: 1;
    list-style-type: none;
    margin: 0;
    pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
    display: none;
}

/* Progress Bar */
.splide__progress__bar {
    width: 0;
}

/* Splide Visibility */
.splide {
    position: relative;
    visibility: hidden;
}

.splide.is-initialized,
.splide.is-rendered {
    visibility: visible;
}

/* Slides */
.splide__slide {
    backface-visibility: hidden;
    box-sizing: border-box;
    flex-shrink: 0;
    list-style-type: none !important;
    margin: 0;
    position: relative;
}

.splide__slide img {
    vertical-align: bottom;
}

/* Spinner */
.splide__spinner {
    animation: splide-loading 1s linear infinite;
    border: 2px solid #999;
    border-left-color: transparent;
    border-radius: 50%;
    height: 20px;
    width: 20px;
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

/* Screen Reader */
.splide__sr {
    clip: rect(0 0 0 0);
    border: 0;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/* Toggle Controls */
.splide__toggle.is-active .splide__toggle__play,
.splide__toggle__pause {
    display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
    display: inline;
}

/* Track */
.splide__track {
    overflow: hidden;
    position: relative;
    z-index: 0;
}

@keyframes splide-loading {
    0% {
        transform: rotate(0);
    }
    to {
        transform: rotate(1turn);
    }
}

.splide__track--draggable {
    user-select: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -ms-user-select: none;
}

/* Track - Fade Effect */
.splide__track--fade > .splide__list > .splide__slide {
    margin: 0 !important;
    opacity: 0;
    z-index: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active {
    opacity: 1;
    z-index: 1;
}

/* RTL Support */
.splide--rtl {
    direction: rtl;
}

/* Arrows */
.splide__arrow {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    height: 2em;
    justify-content: center;
    opacity: 0.7;
    padding: 0;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 2em;
    z-index: 1;
}

.splide__arrow svg {
    fill: var(--magenta);
    height: 1.5em;
    width: 1.5em;
}

.splide__arrow:hover:not(:disabled) {
    opacity: 0.9;
}

.splide__arrow:disabled {
    opacity: 0.3;
}

.splide__arrow:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: 3px;
}

.splide__arrow--prev {
    left: 1em;
}

.splide__arrow--prev svg {
    transform: scaleX(-1);
}

.splide__arrow--next {
    right: 1em;
}

.splide.is-focus-in .splide__arrow:focus {
    outline: 3px solid #0bf;
    outline-offset: 3px;
}

/* Pagination */
.splide__pagination {
    bottom: 0.5em;
    left: 0;
    padding: 0 1em;
    position: absolute;
    right: 0;
    z-index: 1;
}

.splide__pagination__page {
    background: var(--magenta);
    border: 0;
    border-radius: 50%;
    display: inline-block;
    height: 8px;
    margin: 3px;
    opacity: 0.7;
    padding: 0;
    position: relative;
    transition: transform 0.2s linear;
    width: 8px;
}

.splide__pagination__page.is-active {
    background: white;
    transform: scale(1.5);
    z-index: 1;
}

.splide__pagination__page:hover {
    cursor: pointer;
    opacity: 0.9;
}

.splide__pagination__page:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: 3px;
}

.splide.is-focus-in .splide__pagination__page:focus {
    outline: 3px solid #0bf;
    outline-offset: 3px;
}

/* Progress Bar */
.splide__progress__bar {
    background: #ccc;
    height: 3px;
}

/* Slide Highlighting */
.splide__slide {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.splide__slide:focus {
    outline: 0;
}

@supports (outline-offset: -3px) {
    .splide__slide:focus-visible {
        outline: 3px solid #0bf;
        outline-offset: -3px;
    }
}

@media screen and (-ms-high-contrast: none) {
    .splide__slide:focus-visible {
        border: 3px solid #0bf;
    }
}

/* Toggle Visibility */
.splide__toggle {
    cursor: pointer;
}

.splide__toggle:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: 3px;
}

.splide.is-focus-in .splide__toggle:focus {
    outline: 3px solid #0bf;
    outline-offset: 3px;
}

/* Navigation Slide */
.splide__track--nav > .splide__list > .splide__slide {
    border: 3px solid transparent;
    cursor: pointer;
}

.splide__track--nav > .splide__list > .splide__slide.is-active {
    border: 3px solid #000;
}

/* Arrows - RTL */
.splide__arrows--rtl .splide__arrow--prev {
    left: auto;
    right: 1em;
}

.splide__arrows--rtl .splide__arrow--prev svg {
    transform: scaleX(1);
}

.splide__arrows--rtl .splide__arrow--next {
    left: 1em;
    right: auto;
}

.splide__arrows--rtl .splide__arrow--next svg {
    transform: scaleX(-1);
}

/* Arrows - TTB (top to bottom) */
.splide__arrows--ttb .splide__arrow {
    left: 50%;
    transform: translate(-50%);
}

.splide__arrows--ttb .splide__arrow--prev {
    top: 1em;
}

.splide__arrows--ttb .splide__arrow--prev svg {
    transform: rotate(-90deg);
}

.splide__arrows--ttb .splide__arrow--next {
    bottom: 1em;
    top: auto;
}

.splide__arrows--ttb .splide__arrow--next svg {
    transform: rotate(90deg);
}

/* Pagination - TTB */
.splide__pagination--ttb {
    bottom: 0;
    display: flex;
    flex-direction: column;
    left: auto;
    padding: 1em 0;
    right: 0.5em;
    top: 0;
}

/* ################################################################################## */

.splide__pagination__page {
    opacity: 1;
}

.splide__arrow {
    opacity: 1;
    width: 4.5em; height: 4.5em;
    cursor: pointer;
}
/* whithout ::before, .splide__arrow--prev does not correctly rotate */
.splide__arrow::before {
    content: ""; 
    position: absolute;
    top: 50%; left: 50%; 
    width: 70%; height: 70%;
    background-image: url('/files/theme/layout/ic-arrow-magenta.png');
    background-size: cover;
    background-position: center; 
    background-repeat: no-repeat;
}
.splide__arrow--prev::before {
    transform: translate(-50%, -50%) rotate(180deg);
}
.splide__arrow--next::before {
    transform: translate(-50%, -50%);
}
.splide__arrow:hover::before {
    background-repeat: no-repeat;
    background-image: url('/files/theme/layout/ic-arrow-white.png');
}
.splide__arrow:active::before {
    background-image: url('/files/theme/layout/ic-arrow-magentadark.png');
}


@media screen and (max-width:864px) {
    .splide__arrow {
        width: 3em; height: 3em;
    }
}
