/* Showcase Slider 1.0.0 — scoped to classic Elementor sections. */
.showcase-slider { --ss-top:0px; --ss-header-offset:0px; --ss-bg:#111114; --ss-accent:#d90a2c; --ss-duration:350ms; --ss-ease:cubic-bezier(.645,.045,.355,1); position:relative; background:var(--ss-bg); color:#fff; padding:0!important; }
.showcase-slider, .showcase-slider * { box-sizing:border-box; }
.showcase-slider > .elementor-container { max-width:none!important; }
.showcase-slider > .elementor-container > .elementor-column { width:100%; }
.showcase-slider > .elementor-container > .elementor-column > .elementor-widget-wrap,
.showcase-slider > .elementor-container > .elementor-column > .elementor-column-wrap > .elementor-widget-wrap { display:block; padding:0!important; }
.showcase-slider .ss-slide { position:relative; margin:0!important; padding:0!important; width:100%; background:var(--ss-bg); overflow:hidden; isolation:isolate; min-height:650px; }
.showcase-slider .ss-slide > .elementor-container { min-height:inherit; height:100%; max-width:none!important; }
.showcase-slider .ss-copy { width:100%!important; position:static; }
.showcase-slider .ss-copy > .elementor-widget-wrap,
.showcase-slider .ss-copy > .elementor-column-wrap > .elementor-widget-wrap { display:block; position:static; padding:110px 5.45%!important; }
.showcase-slider .ss-copy .elementor-widget:not(.ss-image) { position:relative; z-index:3; max-width:640px; width:54%; margin:0 0 20px; }
.showcase-slider .ss-image.elementor-widget { position:absolute!important; z-index:0; left:13.6%; right:5.2%; top:4.3%; bottom:6.3%; width:auto!important; max-width:none!important; height:auto; margin:0!important; background:#24313a; }
.showcase-slider .ss-image .elementor-widget-container { height:100%; width:100%; }
.showcase-slider .ss-image img { width:100%; height:100%; max-width:none; object-fit:cover; border-radius:0; display:block; }
.showcase-slider .ss-image::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(17,17,20,.72),rgba(17,17,20,.05) 65%); pointer-events:none; }
.showcase-slider .ss-slide::after { content:""; position:absolute; inset:0 48% 25% 5%; background-image:radial-gradient(circle,rgba(255,255,255,.17) .8px,transparent 1px); background-size:20px 20px; z-index:1; pointer-events:none; mask-image:linear-gradient(#000,transparent); }
.showcase-slider .ss-meta { color:#c1c1c4; font-size:15px; line-height:1.5; font-weight:600; }
.showcase-slider .ss-title .elementor-heading-title { color:#fff; font-size:clamp(32px,5vw,72px); font-weight:700; line-height:1.04; letter-spacing:-.045em; margin:0; }
.showcase-slider .ss-description { color:#c1c1c4; font-size:16px; line-height:1.7; }
.showcase-slider .ss-description p, .showcase-slider .ss-meta p { margin:0; }
.showcase-slider .ss-play .elementor-button { display:inline-block; width:56px; height:56px; border:2px solid #c1c1c4; border-radius:50%; padding:0; background:transparent; color:#fff; line-height:52px; text-align:center; }
.showcase-slider .ss-play .elementor-button-content-wrapper { display:block; }
.showcase-slider .ss-play .elementor-button-text { display:block; padding-left:3px; }
.showcase-slider .ss-cta .elementor-button { background:transparent; color:#c1c1c4; padding:0; border:0; border-radius:0; font-weight:700; font-size:15px; line-height:1.6; }
.showcase-slider .ss-cta .elementor-button::after { content:'⟶'; margin-left:12px; font-size:23px; vertical-align:middle; }
.showcase-slider a { text-decoration:none; }
.showcase-slider .elementor-button:hover { color:#fff; }
.showcase-slider :focus-visible { outline:2px solid var(--ss-accent); outline-offset:5px; }
.showcase-slider .ss-runtime { height:0; margin:0!important; overflow:hidden; }
.showcase-slider .ss-decor { position:absolute; z-index:0; top:32%; left:2%; font-size:16vw; font-weight:800; letter-spacing:-.06em; color:rgba(255,255,255,.025); white-space:nowrap; pointer-events:none; }
/* The tall section supplies finite scroll space; only its own stage sticks. */
.showcase-slider.ss-ready { height:var(--ss-total); overflow:visible!important; }
.showcase-slider.ss-ready > .elementor-container { position:sticky; top:var(--ss-top); height:var(--ss-height); min-height:0; overflow:hidden; }
.showcase-slider.ss-ready > .elementor-container > .elementor-column,
.showcase-slider.ss-ready > .elementor-container > .elementor-column > .elementor-widget-wrap,
.showcase-slider.ss-ready > .elementor-container > .elementor-column > .elementor-column-wrap,
.showcase-slider.ss-ready > .elementor-container > .elementor-column > .elementor-column-wrap > .elementor-widget-wrap { height:100%; }
.showcase-slider.ss-ready .ss-slide { position:absolute; inset:0; min-height:0; height:100%; z-index:1; visibility:hidden; pointer-events:none; }
.showcase-slider.ss-ready .ss-slide.ss-active { visibility:visible; z-index:3; pointer-events:auto; }
.showcase-slider.ss-ready .ss-slide .ss-image { transform:scale(.9); transition:transform var(--ss-duration) var(--ss-ease); }
.showcase-slider.ss-ready .ss-slide.ss-active .ss-image { transform:scale(1); }
.showcase-slider.ss-ready .ss-copy > .elementor-widget-wrap,
.showcase-slider.ss-ready .ss-copy > .elementor-column-wrap > .elementor-widget-wrap { position:relative; top:50%; transform:translateY(-50%); padding:0 5.45%!important; }
/* Keep image positioned against the full-height column instead of the text. */
.showcase-slider.ss-ready .ss-copy { position:relative; }
.showcase-slider.ss-ready .ss-copy > .elementor-widget-wrap,
.showcase-slider.ss-ready .ss-copy > .elementor-column-wrap > .elementor-widget-wrap { position:static; transform:none; padding:0!important; }
.showcase-slider.ss-ready .ss-copy .ss-content { position:absolute; top:50%; left:5.45%; right:5.45%; transform:translateY(-50%); z-index:3; }
.showcase-slider.ss-ready .ss-copy .ss-content > .elementor-widget { width:54%; max-width:640px; margin-bottom:20px; }
.showcase-slider.ss-ready .ss-copy .ss-content > .elementor-widget:last-child { margin-bottom:0; }
.showcase-slider.ss-ready .ss-slide.ss-active .ss-content > .elementor-widget { animation:ss-rise var(--ss-duration) ease both; animation-delay:var(--ss-delay,50ms); }
@keyframes ss-rise { from { opacity:0; transform:translateY(3.25rem); } to { opacity:1; transform:translateY(0); } }
.showcase-slider .ss-nav { position:absolute; right:1%; top:50%; transform:translateY(-50%); z-index:5; }
.showcase-slider .ss-nav button { display:block; padding:7px 4px; min-width:32px; min-height:40px; color:#aaa; font:600 11px/1.2 sans-serif; cursor:pointer; border:0; background:transparent; }
.showcase-slider .ss-nav button[aria-current=true] { color:var(--ss-accent); }
.showcase-slider .ss-nav button[aria-current=true]::before { content:'•'; margin-right:3px; }
.showcase-slider .ss-arrows { position:absolute; right:5.2%; bottom:1.2%; z-index:5; }
.showcase-slider .ss-arrows button { color:#ccc; border:0; background:transparent; padding:4px 10px; min-height:32px; cursor:pointer; font-size:22px; }
.showcase-slider .ss-arrows button:disabled { opacity:.25; cursor:default; }
.showcase-slider .ss-status { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.showcase-slider .ss-progress { position:absolute; bottom:0; left:0; height:2px; z-index:6; background:var(--ss-accent); transition:width var(--ss-duration) var(--ss-ease); }
.showcase-slider .ss-off, .showcase-slider .ss-hide-play .ss-play, .showcase-slider.ss-hide-play .ss-play,
.showcase-slider.ss-hide-meta .ss-meta, .showcase-slider.ss-hide-title .ss-title,
.showcase-slider.ss-hide-description .ss-description, .showcase-slider.ss-hide-cta .ss-cta,
.showcase-slider.ss-hide-nav .ss-nav, .showcase-slider.ss-hide-nav .ss-arrows,
.showcase-slider.ss-hide-dots .ss-slide::after, .showcase-slider.ss-hide-decor .ss-decor { display:none!important; }
.ss-modal { position:fixed; inset:0; z-index:999999; background:rgba(0,0,0,.9); display:flex; align-items:center; justify-content:center; padding:64px 20px; }
.ss-modal[hidden] { display:none; }
.ss-modal iframe, .ss-modal video { width:min(1100px,92vw); height:min(619px,75vh); border:0; background:#000; }
.ss-modal button { position:absolute; right:24px; top:16px; width:44px; height:44px; font-size:30px; color:#fff; background:transparent; border:1px solid #aaa; cursor:pointer; }
@media(max-width:1024px) {
 .showcase-slider .ss-copy .elementor-widget:not(.ss-image), .showcase-slider.ss-ready .ss-copy .ss-content > .elementor-widget { width:76%; }
 .showcase-slider .ss-title .elementor-heading-title { font-size:clamp(32px,6vw,62px); }
}
@media(max-width:767px) {
 .showcase-slider .ss-slide { min-height:620px; }
 .showcase-slider .ss-image.elementor-widget { left:6%; right:6%; top:5%; bottom:8%; }
 .showcase-slider .ss-image::after { background:linear-gradient(90deg,rgba(17,17,20,.85),rgba(17,17,20,.25)); }
 .showcase-slider .ss-copy .elementor-widget:not(.ss-image), .showcase-slider.ss-ready .ss-copy .ss-content > .elementor-widget { width:92%; }
 .showcase-slider .ss-title .elementor-heading-title { font-size:clamp(30px,8.2vw,44px); }
 .showcase-slider .ss-description { font-size:14px; line-height:1.6; }
 .showcase-slider .ss-meta { font-size:12px; }
 .showcase-slider.ss-ready .ss-copy .ss-content { left:8%; right:8%; }
 .showcase-slider .ss-copy > .elementor-widget-wrap { padding:80px 8%!important; }
 .showcase-slider .ss-nav { right:0; }
 .showcase-slider .ss-nav button { min-width:22px; padding:8px 0; font-size:10px; }
 .showcase-slider .ss-decor { display:none; }
}
@media(prefers-reduced-motion:reduce) { .showcase-slider * { animation-duration:1ms!important; animation-delay:0ms!important; transition-duration:1ms!important; } }
/* Editor: all native widgets remain in their original Elementor tree. */
.elementor-editor-active .showcase-slider .ss-runtime { height:auto; min-height:28px; color:#aaa; font:12px sans-serif; }
.elementor-editor-active .showcase-slider .ss-runtime::before { content:'Sliderfuncties — laten staan. Bekijk de beweging via Voorbeeld.'; }
