.elementor-kit-6{--e-global-color-primary:#1B2428;--e-global-color-secondary:#556872;--e-global-color-text:#4F5F65;--e-global-color-accent:#556872;--e-global-color-rldeep:#2C3A40;--e-global-color-rlmist:#F3F6F7;--e-global-color-rlline:#DCE2E4;--e-global-color-rlwater:#9CC4CE;--e-global-color-rlwhite:#FFFFFF;--e-global-typography-primary-font-family:"halyard-display";--e-global-typography-primary-font-weight:300;--e-global-typography-secondary-font-family:"halyard-text";--e-global-typography-secondary-font-weight:500;--e-global-typography-text-font-family:"halyard-text";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"halyard-text";--e-global-typography-accent-font-weight:500;color:#4F5F65;font-family:"halyard-text", Sans-serif;font-size:17px;font-weight:400;line-height:1.65em;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#556872;font-family:"halyard-text", Sans-serif;font-size:16px;font-weight:500;line-height:1.2em;color:#FFFFFF;border-radius:0px 0px 0px 0px;padding:16px 24px 16px 24px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:#3E4F57;color:#FFFFFF;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:#3E4F57;}.elementor-kit-6 a:hover{color:#1B2428;}.elementor-kit-6 h1{color:#1B2428;font-family:"halyard-display", Sans-serif;font-size:clamp(40px, 5.6vw, 72px);font-weight:300;line-height:1.04em;letter-spacing:-0.03em;}.elementor-kit-6 h2{color:#1B2428;font-family:"halyard-display", Sans-serif;font-size:clamp(32px, 4vw, 48px);font-weight:300;line-height:1.08em;letter-spacing:-0.025em;}.elementor-kit-6 h3{color:#1B2428;font-family:"halyard-display", Sans-serif;font-size:clamp(20px, 1.8vw, 24px);font-weight:500;line-height:1.25em;letter-spacing:-0.01em;}.elementor-kit-6 h4{color:#1B2428;font-family:"halyard-display", Sans-serif;font-size:18px;font-weight:500;line-height:1.3em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1360px;}.e-con{--container-max-width:1360px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ---------- Openingsanimatie bovenaan de pagina (zonder JavaScript, direct zichtbaar) ---------- */
.rl-in{animation:rlUp .9s var(--rl-ease) both}
.rl-d1{animation-delay:.15s}.rl-d2{animation-delay:.3s}.rl-d3{animation-delay:.45s}
/* ==========================================================
   RecreaLab – site-stijl (Site-instellingen > Custom CSS)
   Kleuren komen uit de globale kleuren van Elementor.
   ========================================================== */
:root{
  --rl-ink:var(--e-global-color-primary,#1B2428);
  --rl-steel:var(--e-global-color-secondary,#556872);
  --rl-muted:var(--e-global-color-text,#4F5F65);
  --rl-deep:var(--e-global-color-rldeep,#2C3A40);
  --rl-mist:var(--e-global-color-rlmist,#F3F6F7);
  --rl-line:var(--e-global-color-rlline,#DCE2E4);
  --rl-water:var(--e-global-color-rlwater,#9CC4CE);
  --rl-ease:cubic-bezier(.22,.8,.2,1);
  --rl-hh:80px;
  --rl-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6'%3E%3Cpath d='M4 12h16M14 6l6 6-6 6'/%3E%3C/svg%3E");
}
html{scroll-behavior:smooth;scroll-padding-top:var(--rl-hh)}
body{padding-top:var(--rl-hh);-webkit-font-smoothing:antialiased}
body:has(.rl-split){padding-top:0}
:focus-visible{outline:2px solid var(--rl-steel);outline-offset:3px}
.rl-dark :focus-visible,.rl-split :focus-visible{outline-color:#fff}
.rl-sr{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;margin:0!important;padding:0!important}

/* ---------- Typografie-hulpjes ---------- */
.rl-label .elementor-heading-title{font-size:12px!important;font-weight:500!important;letter-spacing:.16em!important;text-transform:uppercase;line-height:1.4!important;color:var(--rl-steel)}
.rl-face-r-txt .rl-label .elementor-heading-title,.rl-label.rl-deep .elementor-heading-title{color:var(--rl-deep)}
.rl-xl .elementor-heading-title{font-size:clamp(40px,5.2vw,68px)!important;line-height:1.02!important;letter-spacing:-.03em!important;font-weight:300!important}
.rl-xxl .elementor-heading-title{font-size:clamp(40px,6vw,76px)!important;line-height:1.02!important;letter-spacing:-.035em!important;font-weight:300!important}
.rl-lead{font-size:clamp(17px,1.5vw,19px);line-height:1.65}
.rl-lead p:last-child,.elementor-widget-text-editor p:last-child{margin-bottom:0}
.rl-small{font-size:15px}
.rl-measure{max-width:640px}

/* ---------- Donkere secties ---------- */
.rl-dark{color:#E2ECEF}
.rl-dark .elementor-widget-heading .elementor-heading-title{color:#fff}
.rl-dark .rl-label .elementor-heading-title{color:var(--rl-water)}
.rl-dark .elementor-widget-text-editor{color:#E2ECEF}
.rl-dark a:not(.elementor-button){color:#fff}
.rl-steel-bg .rl-label .elementor-heading-title{color:#E2ECEF}

/* ---------- Knoppen ---------- */
.elementor-button{min-height:48px;display:inline-flex;align-items:center;transition:background-color .35s,color .35s,border-color .35s}
.rl-arrow .elementor-button-text{display:inline-flex;align-items:center}
.rl-arrow .elementor-button-text::after{content:"";width:18px;height:18px;margin-left:12px;flex:none;background:currentColor;-webkit-mask:var(--rl-arrow) center/contain no-repeat;mask:var(--rl-arrow) center/contain no-repeat;transition:transform .45s var(--rl-ease)}
.rl-arrow .elementor-button:hover .elementor-button-text::after,.rl-arrow .elementor-button:focus-visible .elementor-button-text::after{transform:translateX(6px)}
.rl-btn-ghost .elementor-button{background:transparent!important;border:1px solid currentColor;color:var(--rl-ink)!important}
.rl-btn-ghost .elementor-button:hover{background:var(--rl-ink)!important;color:#fff!important;border-color:var(--rl-ink)}
.rl-dark .rl-btn-ghost .elementor-button,.rl-split .rl-btn-ghost .elementor-button{color:#fff!important;border-color:rgba(255,255,255,.6)}
.rl-dark .rl-btn-ghost .elementor-button:hover{background:#fff!important;color:var(--rl-ink)!important}
.rl-btn-white .elementor-button{background:#fff!important;color:var(--rl-ink)!important}
.rl-btn-white .elementor-button:hover{background:var(--rl-mist)!important}
.rl-btn-deep .elementor-button{background:var(--rl-deep)!important}
.rl-btn-deep .elementor-button:hover{background:var(--rl-ink)!important}
.rl-btn-link .elementor-button{background:transparent!important;color:var(--rl-steel)!important;padding-left:0!important;padding-right:0!important}
.rl-btn-link .elementor-button:hover{color:var(--rl-ink)!important}

/* ---------- Header ---------- */
.rl-header{position:fixed!important;top:0;left:0;right:0;z-index:1000;background:#fff;border-bottom:1px solid transparent;transition:transform .5s var(--rl-ease),background-color .4s,border-color .4s;will-change:transform}
body.admin-bar .rl-header{top:32px}
@media (max-width:782px){body.admin-bar .rl-header{top:46px}}
body.rl-scrolled .rl-header{border-bottom-color:var(--rl-line)}
body.rl-hide .rl-header{transform:translateY(-110%)}
.rl-header .rl-logo img{width:44px;height:44px;display:block}
.rl-header .rl-phone .elementor-heading-title{font-size:15px;font-weight:400;color:var(--rl-ink)}
.rl-header .rl-phone a{color:inherit;text-decoration:none}
.rl-nav .elementor-nav-menu--main .elementor-item{font-size:15px;font-weight:400;color:var(--rl-ink);padding:12px 14px}
.rl-nav .elementor-nav-menu--main .rl-menu-contact{display:none}
.rl-nav .elementor-menu-toggle{width:48px;height:48px;border:1px solid var(--rl-line);background:transparent;color:var(--rl-ink)}
.rl-nav .elementor-nav-menu--dropdown{background:#fff;border-top:1px solid var(--rl-line)}
.rl-nav .elementor-nav-menu--dropdown .elementor-item{font-size:20px;font-weight:300;color:var(--rl-ink);padding:16px var(--rl-pad,20px);border-bottom:1px solid var(--rl-line)}
/* transparante header boven het splitscreen */
body:has(.rl-split):not(.rl-scrolled) .rl-header{background:transparent}
body:has(.rl-split):not(.rl-scrolled) .rl-header .rl-phone .elementor-heading-title,
body:has(.rl-split):not(.rl-scrolled) .rl-nav .elementor-nav-menu--main .elementor-item{color:#fff}
body:has(.rl-split):not(.rl-scrolled) .rl-nav .elementor-menu-toggle{color:#fff;border-color:rgba(255,255,255,.6)}
body:has(.rl-split):not(.rl-scrolled) .rl-header .rl-cta .elementor-button{background:#fff!important;color:var(--rl-ink)!important}

/* ---------- Switch Fonteinen | Recreatie ---------- */
.rl-switch{position:relative;border:1px solid var(--rl-line);padding:3px!important;flex-wrap:nowrap!important}
.rl-switch::before{content:"";position:absolute;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);background:var(--rl-steel);opacity:0;transform:translateX(0);transition:transform .55s var(--rl-ease),opacity .35s,background-color .45s;pointer-events:none}
.rl-switch>.elementor-widget-button{position:relative;z-index:1;flex:1 1 0!important;width:auto!important}
.rl-switch .elementor-button{width:100%;justify-content:center;min-height:42px;padding:10px 18px!important;font-size:14px!important;font-weight:500;background:transparent!important;color:var(--rl-ink)!important;transition:color .45s}
body.rl-face-f .rl-switch::before{opacity:1;transform:translateX(0);background:var(--rl-steel)}
body.rl-face-r .rl-switch::before{opacity:1;transform:translateX(100%);background:var(--rl-deep)}
body.rl-face-f .rl-sw-f .elementor-button,body.rl-face-r .rl-sw-r .elementor-button{color:#fff!important}
@media (hover:hover){
  .rl-switch:has(.rl-sw-f:hover)::before{opacity:1;transform:translateX(0);background:var(--rl-steel)}
  .rl-switch:has(.rl-sw-r:hover)::before{opacity:1;transform:translateX(100%);background:var(--rl-deep)}
  .rl-switch:has(.rl-sw-f:hover) .rl-sw-f .elementor-button,.rl-switch:has(.rl-sw-r:hover) .rl-sw-r .elementor-button{color:#fff!important}
  .rl-switch:has(.rl-sw-r:hover) .rl-sw-f .elementor-button,.rl-switch:has(.rl-sw-f:hover) .rl-sw-r .elementor-button{color:var(--rl-ink)!important}
}
body:has(.rl-split):not(.rl-scrolled) .rl-switch{border-color:rgba(255,255,255,.5)}
body:has(.rl-split):not(.rl-scrolled) .rl-switch .elementor-button{color:#fff!important}
@media (max-width:767px){
  .rl-switch .elementor-button{padding:8px 12px!important;font-size:13px!important;min-height:40px}
}

/* ---------- Splitscreen (home) ---------- */
.rl-split{height:100vh;height:100svh;min-height:640px;overflow:hidden;background:var(--rl-ink);flex-wrap:nowrap!important}
.rl-side{position:relative;flex:1 1 0!important;overflow:hidden;isolation:isolate;text-decoration:none;color:#fff;justify-content:flex-end!important;transition:flex-grow .9s var(--rl-ease)}
.rl-side+.rl-side{border-left:1px solid rgba(255,255,255,.18)}
.rl-side>.rl-side__bg{position:absolute!important;inset:0;z-index:-2;transition:transform 1.6s var(--rl-ease);will-change:transform}
.rl-side::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(18,26,29,.82) 0%,rgba(18,26,29,.42) 55%,rgba(18,26,29,.3) 100%);pointer-events:none}
.rl-side::after{content:"";position:absolute;inset:0;z-index:-1;background:rgba(18,26,29,.5);opacity:0;transition:opacity .8s;pointer-events:none}
.rl-side .elementor-heading-title{color:#fff}
.rl-side .rl-label .elementor-heading-title{color:#E2ECEF}
.rl-side .elementor-widget-text-editor{color:#F0F4F5}
.rl-chips ul,.rl-pills ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.rl-chips li{border:1px solid rgba(255,255,255,.55);padding:7px 12px;font-size:14px;line-height:1.3;color:#fff}
.rl-go .elementor-heading-title{display:inline-flex;align-items:center;gap:12px;font-size:16px!important;font-weight:500!important;line-height:1.2!important;letter-spacing:0!important;padding:15px 22px;min-height:48px;border:1px solid rgba(255,255,255,.6);color:#fff;transition:background-color .45s,color .45s}
.rl-go .elementor-heading-title::after{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:var(--rl-arrow) center/contain no-repeat;mask:var(--rl-arrow) center/contain no-repeat;transition:transform .45s var(--rl-ease)}
.rl-side:hover .rl-go .elementor-heading-title,.rl-side:focus-visible .rl-go .elementor-heading-title{background:#fff;color:var(--rl-ink)}
.rl-side:hover .rl-go .elementor-heading-title::after{transform:translateX(6px)}
@media (hover:hover) and (min-width:1025px){
  .rl-split:hover .rl-side{flex-grow:.72!important}
  .rl-split .rl-side:hover,.rl-split .rl-side:focus-visible{flex-grow:1.55!important}
  .rl-side:hover>.rl-side__bg,.rl-side:focus-visible>.rl-side__bg{transform:scale(1.1)}
  .rl-split:hover .rl-side:not(:hover)::after{opacity:1}
  .rl-more{opacity:0;transform:translateY(12px);transition:opacity .5s,transform .6s var(--rl-ease)}
  .rl-side:hover .rl-more,.rl-side:focus-visible .rl-more{opacity:1;transform:none}
}
@media (max-width:1024px){
  .rl-split{height:auto;min-height:0;flex-direction:column!important}
  .rl-side{min-height:min(76svh,560px)}
  .rl-side+.rl-side{border-left:0;border-top:1px solid rgba(255,255,255,.18)}
}

/* ---------- Dienstregels met kleurvlak ---------- */
.rl-row{position:relative;overflow:hidden;isolation:isolate;text-decoration:none;color:var(--rl-ink);border-bottom:1px solid var(--rl-line);min-height:64px;--c:var(--rl-steel)}
.rl-rows-r .rl-row{--c:var(--rl-deep)}
.rl-row::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--c);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--rl-ease)}
.rl-row::after{content:"";width:22px;height:22px;flex:none;background:currentColor;-webkit-mask:var(--rl-arrow) center/contain no-repeat;mask:var(--rl-arrow) center/contain no-repeat;transition:transform .5s var(--rl-ease)}
.rl-row .elementor-heading-title{font-size:clamp(17px,1.6vw,20px)!important;font-weight:400!important;letter-spacing:0!important;line-height:1.3!important;color:inherit!important;transition:transform .5s var(--rl-ease)}
.rl-row:hover,.rl-row:focus-visible{color:#fff}
.rl-row:hover::before,.rl-row:focus-visible::before{transform:scaleX(1)}
.rl-row:hover .elementor-heading-title{transform:translateX(8px)}
.rl-row:hover::after{transform:translateX(6px)}
.rl-rows-head{border-bottom:1px solid var(--rl-ink)}

/* ---------- Punten / stappen met groeiende lijn ---------- */
.rl-point{position:relative;border-top:1px solid var(--rl-line)}
.rl-point::before{content:"";position:absolute;left:0;top:-1px;height:2px;width:100%;background:var(--rl-steel);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--rl-ease)}
.rl-point:hover::before{transform:scaleX(1)}
.rl-dark .rl-point{border-top-color:rgba(255,255,255,.22)}
.rl-dark .rl-point::before{background:var(--rl-water)}
.rl-num .elementor-heading-title{font-size:40px!important;font-weight:300!important;line-height:1!important;color:#7D8D93!important;transition:color .5s}
.rl-point:hover .rl-num .elementor-heading-title{color:var(--rl-steel)!important}
.rl-dark .rl-point:hover .rl-num .elementor-heading-title{color:var(--rl-water)!important}

/* ---------- Kaarten ---------- */
.rl-tile{position:relative;background:#fff;border:1px solid var(--rl-line);transition:transform .5s var(--rl-ease),box-shadow .5s}
.rl-tile::after{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:var(--rl-steel);transform:scaleX(.12);transform-origin:left;transition:transform .6s var(--rl-ease)}
.rl-tile:hover{transform:translateY(-6px);box-shadow:0 22px 44px -24px rgba(27,36,40,.35)}
.rl-tile:hover::after{transform:scaleX(1)}

/* ---------- Diensten-raster recreatie (vulling van onder) ---------- */
.rl-grid-lines{gap:1px!important;background:var(--rl-line);border:1px solid var(--rl-line)}
.rl-svc{position:relative;overflow:hidden;isolation:isolate;background:#fff}
.rl-svc::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--rl-deep);transform:translateY(101%);transition:transform .6s var(--rl-ease)}
.rl-svc:hover::before{transform:none}
.rl-svc .elementor-heading-title,.rl-svc .elementor-widget-text-editor{transition:color .5s}
.rl-svc:hover .elementor-heading-title{color:#fff!important}
.rl-svc:hover .elementor-widget-text-editor{color:#E2ECEF}
.rl-svc ul{margin:0;padding:0;list-style:none;font-size:15px}
.rl-svc li{padding:4px 0}
.rl-svc li::before{content:"– ";color:#7D8D93}

/* ---------- Rasters (werken ook bij 'boxed' containers) ---------- */
.rl-grid-2:not(:has(>.e-con-inner)),.rl-grid-2>.e-con-inner,.rl-grid-3:not(:has(>.e-con-inner)),.rl-grid-3>.e-con-inner,.rl-grid-4:not(:has(>.e-con-inner)),.rl-grid-4>.e-con-inner{display:grid!important;gap:var(--row-gap,24px) var(--column-gap,24px);align-items:var(--align-items,stretch)}
.rl-grid-2:not(:has(>.e-con-inner)),.rl-grid-2>.e-con-inner{grid-template-columns:repeat(2,minmax(0,1fr))}
.rl-grid-3:not(:has(>.e-con-inner)),.rl-grid-3>.e-con-inner{grid-template-columns:repeat(3,minmax(0,1fr))}
.rl-grid-4:not(:has(>.e-con-inner)),.rl-grid-4>.e-con-inner{grid-template-columns:repeat(4,minmax(0,1fr))}
.rl-grid-lines{gap:1px!important}
@media (max-width:1024px){.rl-grid-3:not(:has(>.e-con-inner)),.rl-grid-3>.e-con-inner,.rl-grid-4:not(:has(>.e-con-inner)),.rl-grid-4>.e-con-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.rl-grid-2.rl-stack-t:not(:has(>.e-con-inner)),.rl-grid-2.rl-stack-t>.e-con-inner{grid-template-columns:minmax(0,1fr)}}
@media (max-width:767px){.rl-grid-2:not(:has(>.e-con-inner)),.rl-grid-2>.e-con-inner,.rl-grid-3:not(:has(>.e-con-inner)),.rl-grid-3>.e-con-inner,.rl-grid-4:not(:has(>.e-con-inner)),.rl-grid-4>.e-con-inner{grid-template-columns:minmax(0,1fr)}}

/* ---------- Foto's met zoom ---------- */
.rl-zoom{overflow:hidden}
.rl-zoom img{display:block;width:100%!important;height:var(--rl-img-h,clamp(280px,34vw,460px))!important;object-fit:cover;transition:transform 1.2s var(--rl-ease)}
.rl-zoom:hover img,a:hover .rl-zoom img{transform:scale(1.06)}
.rl-zoom.rl-img-hero{--rl-img-h:clamp(300px,40vw,580px)}
.rl-zoom.rl-img-sm{--rl-img-h:clamp(220px,22vw,280px)}

/* ---------- Projecttegels (donkere band) ---------- */
.rl-proj{position:relative;overflow:hidden;isolation:isolate;text-decoration:none;min-height:clamp(320px,34vw,440px);justify-content:flex-end!important}
.rl-proj>.rl-proj__bg{position:absolute!important;inset:0;z-index:-1;transition:transform 1.2s var(--rl-ease)}
.rl-proj:hover>.rl-proj__bg,.rl-proj:focus-visible>.rl-proj__bg{transform:scale(1.08)}
.rl-proj__cap{background:rgba(18,26,29,.74);transform:translateY(34px);transition:transform .6s var(--rl-ease),background-color .6s}
.rl-proj:hover .rl-proj__cap,.rl-proj:focus-visible .rl-proj__cap{transform:none;background:rgba(18,26,29,.88)}
.rl-proj__cap .elementor-heading-title{color:#fff}
.rl-proj__cap .rl-label .elementor-heading-title{color:#E2ECEF}
.rl-proj__more .elementor-heading-title{font-size:14px!important;font-weight:400!important;opacity:0;transition:opacity .5s .1s}
.rl-proj:hover .rl-proj__more .elementor-heading-title,.rl-proj:focus-visible .rl-proj__more .elementor-heading-title{opacity:1}
@media (hover:none){.rl-proj__cap{transform:none}.rl-proj__more .elementor-heading-title{opacity:1}}

/* ---------- Projectkaarten (projectenpagina) ---------- */
.rl-card{text-decoration:none}
.rl-card .rl-label .elementor-heading-title{color:var(--rl-steel)}
.rl-card.is-r .rl-label .elementor-heading-title{color:var(--rl-deep)}

/* ---------- Lijsten ---------- */
.rl-check ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--rl-line)}
.rl-check li{display:flex;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--rl-line);color:var(--rl-muted);transition:padding-left .4s var(--rl-ease),color .4s}
.rl-check li::before{content:"";flex:none;width:6px;height:6px;background:var(--rl-steel)}
.rl-check li:hover{padding-left:8px;color:var(--rl-ink)}
.rl-pills li{border:1px solid #9AABB1;padding:8px 14px;font-size:14px;color:var(--rl-deep);transition:background-color .3s,color .3s,border-color .3s}
.rl-pills li:hover{background:var(--rl-deep);color:#fff;border-color:var(--rl-deep)}
.rl-dark .rl-pills li{border-color:rgba(255,255,255,.45);color:#fff}
.rl-dark .rl-pills li:hover{background:#fff;color:var(--rl-ink)}

/* ---------- Contactregels ---------- */
.rl-contact-rows .rl-row{border-bottom-color:rgba(255,255,255,.45);color:#fff;--c:#fff}
.rl-contact-rows .rl-row:hover,.rl-contact-rows .rl-row:focus-visible{color:var(--rl-ink)}
.rl-contact-rows{border-top:1px solid rgba(255,255,255,.45)}

/* ---------- Formulieren ---------- */
.rl-form .elementor-field-group .elementor-field-label{font-size:14px;font-weight:500;color:var(--rl-ink);margin-bottom:6px}
.rl-form .elementor-field-group .elementor-field:not(.elementor-select-wrapper),.rl-form .elementor-field-group select,.rl-form .elementor-field-group textarea{border:0!important;border-bottom:1px solid #7D8D93!important;border-radius:0!important;background:transparent!important;padding:12px 0!important;min-height:48px;font-size:17px;color:var(--rl-ink);box-shadow:none!important;transition:border-color .3s}
.rl-form .elementor-field-group .elementor-field:focus{outline:none;border-bottom:2px solid var(--rl-ink)!important}
.rl-form .elementor-button{background:var(--rl-ink)!important;color:#fff!important;padding:16px 28px!important}
.rl-form .elementor-button:hover{background:var(--rl-steel)!important}
.rl-dark .rl-form .elementor-field-group .elementor-field-label,.rl-steel-bg .rl-form .elementor-field-group .elementor-field-label{color:#F0F4F5}
.rl-dark .rl-form .elementor-field-group .elementor-field,.rl-dark .rl-form select,.rl-dark .rl-form textarea{color:#fff!important;border-bottom-color:rgba(255,255,255,.7)!important}
.rl-dark .rl-form .elementor-field-group .elementor-field:focus{border-bottom-color:#fff!important}
.rl-dark .rl-form option{color:var(--rl-ink)}
.rl-dark .rl-form .elementor-button{background:#fff!important;color:var(--rl-ink)!important}
.rl-dark .rl-form .elementor-button:hover{background:var(--rl-mist)!important}
.rl-form .elementor-message{font-size:15px}
.rl-dark .rl-form .elementor-message{color:#fff}

/* ---------- Footer & mobiele belbalk ---------- */
.rl-footer a{color:#E2ECEF;text-decoration:none}
.rl-footer a:hover{color:#fff;text-decoration:underline}
.rl-footer .elementor-widget-text-editor{color:#B5C3C8;font-size:15px}
.rl-footer ul{list-style:none;margin:0;padding:0}
.rl-footer li{padding:5px 0}
.rl-mbar{display:none!important}
@media (max-width:767px){
  .rl-mbar{display:grid!important;grid-template-columns:1fr 1fr;position:fixed!important;left:0;right:0;bottom:0;z-index:999;background:#fff;border-top:1px solid var(--rl-line);padding-bottom:env(safe-area-inset-bottom)}
  .rl-mbar .elementor-button{width:100%;justify-content:center;min-height:56px;border-radius:0}
  .rl-footer{padding-bottom:96px!important}
}

/* ---------- Animaties: soepel & licht ---------- */
@keyframes rlUp{from{opacity:0;transform:translate3d(0,28px,0)}to{opacity:1;transform:none}}
.elementor-element.animated.fadeInUp{animation-name:rlUp;animation-timing-function:var(--rl-ease)}
.elementor-element.animated{animation-duration:.9s}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}
  .elementor-invisible{visibility:visible!important;opacity:1!important}
}


/* ---------- Koppen: vaste groottes per niveau (per widget aan te passen in Elementor) ---------- */
.elementor-widget-heading h1.elementor-heading-title{font-size:clamp(40px,5.6vw,72px);line-height:1.04;letter-spacing:-.03em;font-weight:300}
.elementor-widget-heading h2.elementor-heading-title{font-size:clamp(30px,3.8vw,48px);line-height:1.1;letter-spacing:-.025em;font-weight:300}
.elementor-widget-heading h3.elementor-heading-title{font-size:clamp(20px,1.8vw,24px);line-height:1.25;letter-spacing:-.01em;font-weight:500}
.elementor-widget-heading h4.elementor-heading-title{font-size:18px;line-height:1.3;font-weight:500}
.elementor-widget-heading p.elementor-heading-title,.elementor-widget-heading span.elementor-heading-title{line-height:1.4}
.rl-footer h3.elementor-heading-title{font-size:16px!important;font-weight:500!important;letter-spacing:0!important}
.elementor-button{white-space:nowrap}
/* ---------- Kleuren die altijd winnen van de standaard widgetkleuren ---------- */
.rl-label .elementor-heading-title{color:var(--rl-steel)!important}
.rl-label.rl-deep .elementor-heading-title,.rl-card.is-r .rl-label .elementor-heading-title{color:var(--rl-deep)!important}
.rl-dark .elementor-heading-title,.rl-side .elementor-heading-title,.rl-proj__cap .elementor-heading-title{color:#fff!important}
.rl-dark .rl-label .elementor-heading-title{color:var(--rl-water)!important}
.rl-steel-bg .rl-label .elementor-heading-title,.rl-side .rl-label .elementor-heading-title,.rl-proj__cap .rl-label .elementor-heading-title{color:#E2ECEF!important}
.rl-dark .elementor-widget-text-editor{color:#E2ECEF!important}
.rl-side .elementor-widget-text-editor{color:#F0F4F5!important}
.rl-side:hover .rl-go .elementor-heading-title,.rl-side:focus-visible .rl-go .elementor-heading-title{color:var(--rl-ink)!important}
.rl-dark .rl-row .elementor-heading-title,.rl-row .elementor-heading-title{color:inherit!important}
.rl-svc:hover .elementor-widget-text-editor{color:#E2ECEF!important}

/* ---------- Kleine correcties ---------- */
.rl-header .rl-logo{flex:0 0 auto!important;width:44px!important;max-width:44px!important}
.rl-header .rl-logo img{object-fit:contain}
.rl-footer p>a+a{margin-left:24px}
.rl-nav .elementor-menu-toggle svg{fill:currentColor;width:22px;height:22px}
.rl-nav .elementor-nav-menu--dropdown a.elementor-item{font-size:20px!important;font-weight:300!important;padding:16px 20px!important;color:var(--rl-ink)!important;background:#fff!important}
.rl-nav .elementor-nav-menu--dropdown a.elementor-item:hover,.rl-nav .elementor-nav-menu--dropdown a.elementor-item-active{background:var(--rl-mist)!important}

/* ---------- Adobe Fonts: Halyard ---------- */
.rl-label .elementor-heading-title,.rl-chips li,.rl-pills li{font-family:halyard-micro,halyard-text,sans-serif}
.rl-row .elementor-heading-title,.rl-go .elementor-heading-title,.elementor-button,.rl-nav .elementor-item,.rl-form{font-family:halyard-text,sans-serif}

/* ---------- Projecten: kaarten, filter, detailpagina ---------- */
.rl-zoom.rl-img-card{--rl-img-h:clamp(240px,22vw,320px)}
.rl-pcard{color:var(--rl-ink)}
.rl-pcard .rl-label .elementor-heading-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rl-pcard .elementor-heading-title{transition:color .3s}
.rl-pcard:hover h3.elementor-heading-title{color:var(--rl-steel)!important}
.rl-more-link .elementor-heading-title{display:inline-flex;align-items:center;gap:10px;font-size:15px!important;font-weight:500!important;color:var(--rl-steel)!important}
.rl-more-link .elementor-heading-title::after{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:var(--rl-arrow) center/contain no-repeat;mask:var(--rl-arrow) center/contain no-repeat;transition:transform .45s var(--rl-ease)}
.rl-pcard:hover .rl-more-link .elementor-heading-title::after{transform:translateX(6px)}
.rl-filter .e-filter{gap:8px!important;flex-wrap:wrap;--e-filter-items-gap:8px}
.rl-filter .e-filter-item{font-family:halyard-text,sans-serif;font-size:14px!important;font-weight:500!important;padding:10px 14px!important;min-height:44px;flex:0 0 auto!important;width:auto!important;border:1px solid var(--rl-line)!important;background:#fff!important;color:var(--rl-ink)!important;border-radius:0!important;transition:background-color .3s,color .3s,border-color .3s}
.rl-filter .e-filter-item:hover{border-color:var(--rl-ink)!important}
.rl-filter .e-filter-item[aria-pressed="true"]{background:var(--rl-steel)!important;border-color:var(--rl-steel)!important;color:#fff!important}
.rl-project-grid .e-loop-item{transition:opacity .4s}
.rl-back .elementor-button-text{flex-direction:row-reverse}
.rl-back .elementor-button-text::after{margin-left:0;margin-right:12px;transform:scaleX(-1)}
.rl-back .elementor-button:hover .elementor-button-text::after{transform:scaleX(-1) translateX(6px)}
.rl-story h3.elementor-heading-title{margin-top:12px}
.rl-facts{margin:0;display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.rl-facts dt{font-family:halyard-micro,halyard-text,sans-serif;font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--rl-steel);padding-top:18px}
.rl-facts dd{margin:6px 0 0;padding-bottom:18px;border-bottom:1px solid var(--rl-line);color:var(--rl-ink);font-size:16px}
.rl-facts dd:last-child{border-bottom:0;padding-bottom:0}
.rl-facts dt:first-child{padding-top:0}
.rl-facts-box{align-self:start}
.rl-gallery .e-gallery-item{overflow:hidden}
.rl-gallery .e-gallery-image{transition:transform 1.1s var(--rl-ease)!important}
.rl-gallery .e-gallery-item:hover .e-gallery-image{transform:scale(1.05)}
.rl-project-cta.rl-dark .elementor-widget-text-editor{max-width:560px}.rl-filter{width:100%}
.rl-filter .e-filter{justify-content:flex-start!important}
.elementor-widget-loop-grid .elementor-loop-container{grid-template-columns:repeat(var(--grid-columns,3),minmax(0,1fr))!important}
.elementor-widget-loop-grid .e-loop-item{min-width:0}

/* ---------- Hover: altijd witte tekst op gevulde blokken ---------- */
.rl-row{color:var(--rl-ink)!important}
.rl-row:hover,.rl-row:focus-visible{color:#fff!important}
.rl-contact-rows .rl-row{color:#fff!important}
.rl-contact-rows .rl-row:hover,.rl-contact-rows .rl-row:focus-visible{color:var(--rl-ink)!important}
.rl-svc:hover .elementor-heading-title,.rl-svc:hover .elementor-widget-text-editor,.rl-svc:hover p,.rl-svc:hover li{color:#fff!important}
.rl-svc:hover li::before{color:rgba(255,255,255,.7)}
.rl-svc::before{transition:transform .55s var(--rl-ease)}
.rl-pills li:hover{color:#fff!important}
.rl-dark .rl-pills li:hover{color:var(--rl-ink)!important}
.rl-filter .e-filter-item:hover{background:var(--rl-ink)!important;border-color:var(--rl-ink)!important;color:#fff!important}
.rl-filter .e-filter-item[aria-pressed="true"]:hover{background:var(--rl-steel)!important}
.rl-pcard,.rl-pcard:hover{color:var(--rl-ink)!important}
.rl-nav .elementor-nav-menu--main .elementor-item:hover,.rl-nav .elementor-nav-menu--main .elementor-item:focus,.rl-nav .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var(--rl-steel)!important}
body:has(.rl-split):not(.rl-scrolled) .rl-nav .elementor-nav-menu--main .elementor-item:hover,body:has(.rl-split):not(.rl-scrolled) .rl-nav .elementor-nav-menu--main .elementor-item:focus{color:#fff!important}
body:has(.rl-split):not(.rl-scrolled) .rl-nav .elementor-nav-menu--main .elementor-item::after{background-color:#fff!important}
.rl-header .rl-cta .elementor-button:hover{background:var(--rl-ink)!important;color:#fff!important}
body:has(.rl-split):not(.rl-scrolled) .rl-header .rl-cta .elementor-button:hover{background:var(--rl-mist)!important;color:var(--rl-ink)!important}

/* ---------- Switch: twee gelijke vakken, indicator blijft binnen het kader ---------- */
.rl-switch{display:inline-grid!important;grid-template-columns:1fr 1fr;width:auto!important;max-width:none!important;flex:0 0 auto!important;overflow:hidden;box-sizing:border-box}
.rl-switch>.elementor-widget-button{min-width:0;width:100%!important;flex:none!important}
.rl-switch::before{top:3px;bottom:3px;left:3px;width:calc((100% - 6px) / 2)}
.rl-switch .elementor-button{min-height:40px!important;padding:9px 20px!important}
@media (max-width:767px){.rl-switch .elementor-button{padding:8px 12px!important;min-height:38px!important}}
/* ---------- Projectfilter in twee niveaus ---------- */
.rl-filter .e-filter.rl-tiered{row-gap:12px!important}
.rl-filter .e-filter-item[hidden]{display:none!important}
.rl-filter .rl-filter-break{flex-basis:100%;height:0;display:none}
.rl-filter .rl-sub-label{display:none;align-self:center;margin-right:6px;font-family:halyard-micro,halyard-text,sans-serif;font-size:12px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--rl-muted)}
.rl-filter .rl-has-sub .rl-filter-break,.rl-filter .rl-has-sub .rl-sub-label{display:block}
.rl-filter .rl-f-parent,.rl-filter .rl-f-all{font-size:15px!important;padding:12px 20px!important;min-height:48px}
.rl-filter .rl-f-child{font-size:13px!important;padding:8px 14px!important;min-height:40px;background:var(--rl-mist)!important;border-color:var(--rl-mist)!important;animation:rlUp .45s var(--rl-ease) both}
.rl-filter .rl-f-child:hover{background:var(--rl-ink)!important;border-color:var(--rl-ink)!important;color:#fff!important}
.rl-filter .rl-f-recreatietechniek[aria-pressed="true"],.rl-filter .rl-f-in-recreatietechniek[aria-pressed="true"]{background:var(--rl-deep)!important;border-color:var(--rl-deep)!important;color:#fff!important}
.rl-filter .rl-f-parent.rl-f-open[aria-pressed="false"]{border-color:var(--rl-steel)!important;color:var(--rl-steel)!important;box-shadow:inset 0 -2px 0 var(--rl-steel)}
.rl-filter .rl-f-recreatietechniek.rl-f-open[aria-pressed="false"]{border-color:var(--rl-deep)!important;color:var(--rl-deep)!important;box-shadow:inset 0 -2px 0 var(--rl-deep)}
.rl-filter .rl-f-parent.rl-f-open[aria-pressed="false"]:hover{color:#fff!important}/* End custom CSS */