.rgss-slider{
    --rgss-gap:14px;
    --rgss-slide-width:320px;
    --rgss-edge-padding:0px;
    --rgss-arrow-size:56px;
    --rgss-icon-size:22px;
    --rgss-arrow-radius:50%;
    --rgss-arrow-gap:10px;
    --rgss-arrow-top:0px;
    --rgss-arrow-right:0px;
    --rgss-side-offset:14px;
    --rgss-disabled-opacity:.35;
    --rgss-arrow-color:#0b2d5c;
    --rgss-arrow-hover-color:#0b2d5c;
    --rgss-arrow-bg:#fff;
    --rgss-arrow-bg-hover:#f5f5f5;
    --rgss-arrow-border:#e1e4e8;
    --rgss-arrow-border-hover:#cfd5dc;
    position:relative;
    width:100%;
    max-width:none;
    box-sizing:border-box;
    outline:none;
}
.rgss-slider *{box-sizing:border-box}
.rgss-width-viewport{
    width:100vw;
    max-width:100vw;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
}
.rgss-width-overflow-right{
    /* JS berekent exact de ruimte vanaf de slider tot de rechter viewport-rand.
       Dit werkt ook wanneer de slider in de meest rechtse Elementor-kolom staat. */
    width:var(--rgss-overflow-right-width, 100%);
    max-width:none;
}
/* Alleen voor voorouders die de off-canvas slider daadwerkelijk afknippen.
   De klasse wordt dynamisch door slider.js toegevoegd. */
.rgss-overflow-host{
    overflow-x:visible!important;
    overflow:visible!important;
}
.rgss-viewport{
    width:100%;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x mandatory;
    scroll-behavior:auto;
    overscroll-behavior-x:contain;
    padding-left:var(--rgss-edge-padding);
    padding-right:var(--rgss-edge-padding);
    scrollbar-width:none;
    cursor:grab;
}
.rgss-viewport::-webkit-scrollbar{display:none}
.rgss-show-scrollbar .rgss-viewport{scrollbar-width:auto}
.rgss-show-scrollbar .rgss-viewport::-webkit-scrollbar{display:block;height:8px}
.rgss-no-touch .rgss-viewport{touch-action:pan-y}
.rgss-track{
    display:flex;
    flex-wrap:nowrap;
    align-items:flex-start;
    gap:var(--rgss-gap);
    width:max-content;
    min-width:100%;
}
.rgss-equal-height .rgss-track{align-items:stretch}
.rgss-slide{
    flex:0 0 var(--rgss-slide-width);
    width:var(--rgss-slide-width);
    min-width:0;
    scroll-snap-align:start;
    position:relative;
}
.rgss-equal-height .rgss-slide{display:flex}
.rgss-equal-height .rgss-slide > *{width:100%}
.rgss-viewport.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.rgss-viewport.is-dragging *{user-select:none}

.rgss-nav{
    display:flex;
    align-items:center;
    gap:var(--rgss-arrow-gap);
    z-index:12;
}
.rgss-arrows-top-right .rgss-nav{
    justify-content:flex-end;
    margin:0 var(--rgss-arrow-right) 24px 0;
    transform:translateY(var(--rgss-arrow-top));
}
.rgss-arrows-bottom-right .rgss-nav{
    position:absolute;
    right:var(--rgss-arrow-right);
    bottom:calc(-1 * var(--rgss-arrow-top));
    transform:translateY(100%);
}
.rgss-arrow{
    appearance:none;
    -webkit-appearance:none;
    width:var(--rgss-arrow-size);
    height:var(--rgss-arrow-size);
    min-width:var(--rgss-arrow-size);
    border:1px solid var(--rgss-arrow-border);
    border-radius:var(--rgss-arrow-radius);
    background:var(--rgss-arrow-bg);
    color:var(--rgss-arrow-color);
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0;
    margin:0;
    cursor:pointer;
    line-height:1;
    transition:background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease,transform .2s ease;
    z-index:12;
}
.rgss-arrow:hover,
.rgss-arrow:focus-visible{
    color:var(--rgss-arrow-hover-color);
    background:var(--rgss-arrow-bg-hover);
    border-color:var(--rgss-arrow-border-hover);
}
.rgss-arrow:active{transform:scale(.97)}
.rgss-arrow:disabled{opacity:var(--rgss-disabled-opacity);cursor:default;pointer-events:none}
.rgss-arrow-icon{
    width:var(--rgss-icon-size);
    height:var(--rgss-icon-size);
    display:flex;
    align-items:center;
    justify-content:center;
}
.rgss-arrow-icon svg,
.rgss-arrow-icon img{
    display:block;
    width:100%;
    height:100%;
}
.rgss-arrow-icon img{object-fit:contain}
.rgss-style-thin .rgss-arrow-icon svg path{stroke-width:1.25}
.rgss-style-thick .rgss-arrow-icon svg path{stroke-width:2.6}
.rgss-style-chevron .rgss-arrow-icon svg path{stroke-width:1.8}

.rgss-arrows-middle-sides .rgss-side-prev,
.rgss-arrows-middle-sides .rgss-side-next{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
}
.rgss-arrows-middle-sides .rgss-side-prev{left:var(--rgss-side-offset)}
.rgss-arrows-middle-sides .rgss-side-next{right:var(--rgss-side-offset)}
.rgss-arrows-middle-sides .rgss-side-prev:active,
.rgss-arrows-middle-sides .rgss-side-next:active{transform:translateY(-50%) scale(.97)}

.rgss-admin-message{
    padding:14px 16px;
    border:1px dashed #c6cbd1;
    background:#fff;
    font-size:14px;
}

@media (max-width:767px){
    .rgss-hide-arrows-mobile .rgss-arrow,
    .rgss-hide-arrows-mobile .rgss-nav{display:none!important}
    .rgss-arrows-top-right .rgss-nav{margin-bottom:14px}
}
