.elementor-2031 .elementor-element.elementor-element-9d95c12{--display:flex;--min-height:820px;--gap:240px 0px;--row-gap:240px;--column-gap:0px;--overlay-opacity:1;--margin-top:-95px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:180px;--padding-bottom:0px;--padding-left:40px;--padding-right:40px;}.elementor-2031 .elementor-element.elementor-element-9d95c12:not(.elementor-motion-effects-element-type-background), .elementor-2031 .elementor-element.elementor-element-9d95c12 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://demgro2.dysign.be/wp-content/uploads/2026/04/hero-background-image.webp");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-2031 .elementor-element.elementor-element-9d95c12::before, .elementor-2031 .elementor-element.elementor-element-9d95c12 > .elementor-background-video-container::before, .elementor-2031 .elementor-element.elementor-element-9d95c12 > .e-con-inner > .elementor-background-video-container::before, .elementor-2031 .elementor-element.elementor-element-9d95c12 > .elementor-background-slideshow::before, .elementor-2031 .elementor-element.elementor-element-9d95c12 > .e-con-inner > .elementor-background-slideshow::before, .elementor-2031 .elementor-element.elementor-element-9d95c12 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#00000066;--background-overlay:'';}.elementor-2031 .elementor-element.elementor-element-d1d0c30{width:var( --container-widget-width, 720px );max-width:720px;--container-widget-width:720px;--container-widget-flex-grow:0;}.elementor-2031 .elementor-element.elementor-element-d1d0c30 .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );color:var( --e-global-color-secondary );}.elementor-2031 .elementor-element.elementor-element-37adef1{width:var( --container-widget-width, 470px );max-width:470px;--container-widget-width:470px;--container-widget-flex-grow:0;text-align:end;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-secondary );}.elementor-2031 .elementor-element.elementor-element-37adef1.elementor-element{--align-self:flex-end;}.elementor-2031 .elementor-element.elementor-element-37adef1 p{margin-block-end:0px;}.elementor-2031 .elementor-element.elementor-element-3d55ef6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:40px;--padding-right:40px;}.elementor-2031 .elementor-element.elementor-element-a16a5c5{--display:flex;--gap:40px 0px;--row-gap:40px;--column-gap:0px;--overflow:hidden;--border-radius:8px 8px 8px 8px;box-shadow:0px 8px 8px -4px rgba(16, 24.000000000000014, 40, 0.0784313725490196);--margin-top:-180px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-2031 .elementor-element.elementor-element-a16a5c5:not(.elementor-motion-effects-element-type-background), .elementor-2031 .elementor-element.elementor-element-a16a5c5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#2278A4;}.elementor-2031 .elementor-element.elementor-element-6d268b6 .elementor-heading-title{font-family:"Conthrax", Sans-serif;font-size:32px;font-weight:700;text-transform:uppercase;line-height:40px;color:var( --e-global-color-secondary );}.elementor-2031 .elementor-element.elementor-element-44a254e{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;}.elementor-2031 .elementor-element.elementor-element-dead576{width:var( --container-widget-width, 360px );max-width:360px;--container-widget-width:360px;--container-widget-flex-grow:0;font-family:"Space Grotesk", Sans-serif;font-size:18px;font-weight:400;line-height:24px;color:var( --e-global-color-secondary );}.elementor-2031 .elementor-element.elementor-element-dead576 p{margin-block-end:0px;}.elementor-2031 .elementor-element.elementor-element-f59b3f2{width:var( --container-widget-width, 48px );max-width:48px;--container-widget-width:48px;--container-widget-flex-grow:0;}.elementor-2031 .elementor-element.elementor-element-f59b3f2 img{width:100%;max-width:100%;}.elementor-2031 .elementor-element.elementor-element-4ea5d40{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:40px;--padding-right:40px;}.elementor-2031 .elementor-element.elementor-element-a15bfe5{--e-image-carousel-slides-to-show:9;}.elementor-2031 .elementor-element.elementor-element-a15bfe5 .swiper-wrapper{display:flex;align-items:center;}.elementor-2031 .elementor-element.elementor-element-exp-el-wrap{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2031 .elementor-element.elementor-element-exp-el-accordion{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2031 .elementor-element.elementor-element-exp-el-item-1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2031 .elementor-element.elementor-element-exp-el-head-1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2031 .elementor-element.elementor-element-exp-el-item-2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2031 .elementor-element.elementor-element-exp-el-head-2{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2031 .elementor-element.elementor-element-exp-el-item-3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2031 .elementor-element.elementor-element-exp-el-head-3{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2031 .elementor-element.elementor-element-exp-el-item-4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2031 .elementor-element.elementor-element-exp-el-head-4{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-2031 .elementor-element.elementor-element-refs-loop-grid{--grid-columns:2;}@media(min-width:768px){.elementor-2031 .elementor-element.elementor-element-a16a5c5{--width:540px;}}@media(max-width:880px) and (min-width:768px){.elementor-2031 .elementor-element.elementor-element-a16a5c5{--width:400px;}}@media(max-width:1366px){.elementor-2031 .elementor-element.elementor-element-9d95c12{--padding-top:180px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2031 .elementor-element.elementor-element-d1d0c30 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-2031 .elementor-element.elementor-element-37adef1{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-2031 .elementor-element.elementor-element-3d55ef6{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2031 .elementor-element.elementor-element-4ea5d40{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(max-width:1200px){.elementor-2031 .elementor-element.elementor-element-9d95c12{--min-height:600px;--gap:150px 0px;--row-gap:150px;--column-gap:0px;}.elementor-2031 .elementor-element.elementor-element-d1d0c30{--container-widget-width:374px;--container-widget-flex-grow:0;width:var( --container-widget-width, 374px );max-width:374px;}.elementor-2031 .elementor-element.elementor-element-37adef1{--container-widget-width:420px;--container-widget-flex-grow:0;width:var( --container-widget-width, 420px );max-width:420px;}.elementor-2031 .elementor-element.elementor-element-a16a5c5{--margin-top:-140px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-2031 .elementor-element.elementor-element-dead576{font-size:16px;line-height:24px;}.elementor-2031 .elementor-element.elementor-element-a15bfe5{--e-image-carousel-slides-to-show:7;}}@media(max-width:1024px){.elementor-2031 .elementor-element.elementor-element-d1d0c30 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-2031 .elementor-element.elementor-element-37adef1{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-2031 .elementor-element.elementor-element-dead576{font-size:16px;line-height:24px;}.elementor-2031 .elementor-element.elementor-element-a15bfe5{--e-image-carousel-slides-to-show:6;}.elementor-2031 .elementor-element.elementor-element-refs-loop-grid{--grid-columns:2;}}@media(max-width:880px){.elementor-2031 .elementor-element.elementor-element-9d95c12{--min-height:500px;--padding-top:120px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2031 .elementor-element.elementor-element-37adef1{--container-widget-width:291px;--container-widget-flex-grow:0;width:var( --container-widget-width, 291px );max-width:291px;}.elementor-2031 .elementor-element.elementor-element-a16a5c5{--gap:20px 0px;--row-gap:20px;--column-gap:0px;--margin-top:-160px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2031 .elementor-element.elementor-element-a15bfe5{--e-image-carousel-slides-to-show:6;}}@media(max-width:767px){.elementor-2031 .elementor-element.elementor-element-d1d0c30 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-2031 .elementor-element.elementor-element-37adef1{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-2031 .elementor-element.elementor-element-3d55ef6{--margin-top:-50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2031 .elementor-element.elementor-element-a16a5c5{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2031 .elementor-element.elementor-element-6d268b6 .elementor-heading-title{font-size:26px;line-height:32px;}.elementor-2031 .elementor-element.elementor-element-44a254e{--flex-wrap:nowrap;}.elementor-2031 .elementor-element.elementor-element-a15bfe5{--e-image-carousel-slides-to-show:4;}.elementor-2031 .elementor-element.elementor-element-refs-loop-grid{--grid-columns:1;}}@media(max-width:1200px) and (min-width:768px){.elementor-2031 .elementor-element.elementor-element-a16a5c5{--width:450px;}}@media(min-width:2400px){.elementor-2031 .elementor-element.elementor-element-d1d0c30 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-2031 .elementor-element.elementor-element-37adef1{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}/* Start custom CSS for image-carousel, class: .elementor-element-a15bfe5 */.elementor-2031 .elementor-element.elementor-element-a15bfe5 img{
    width: 100px!important;
    height: 80px!important;
    object-fit: contain!important;
}/* End custom CSS */
/* Start custom CSS *//* === DEMGRO Home v2 — motion & hover === */

/* GLOBAAL: anchor color reset (geen browser-blauw op clickable cards) */
.elementor a, .elementor a:hover, .elementor a:visited, .elementor a:focus { color: inherit; text-decoration: none; }

/* Cards overlay — bottom-heavy gradient voor leesbaarheid */
.s-card-ov, .s-card-ov-infra, .s-card-ov-spoor, .s-card-ov-wagen, .s-card-ov-sign, .s-card-ov-extra,
.s-ref-ov, .s-ref-ov-nmbs, .s-ref-ov-roes, .s-ref-ov-kn {
  background: linear-gradient(to bottom, rgba(10,10,10,0) 0%, rgba(10,10,10,0.2) 45%, rgba(10,10,10,0.88) 100%) !important;
  transition: opacity 0.4s ease, background 0.4s ease;
}
.s-card:hover .s-card-ov,
.s-card-infra:hover .s-card-ov-infra,
.s-card-spoor:hover .s-card-ov-spoor,
.s-card-wagen:hover .s-card-ov-wagen,
.s-card-sign:hover .s-card-ov-sign,
.s-card-extra:hover .s-card-ov-extra,
.s-ref-card:hover .s-ref-ov,
.s-ref-card-nmbs:hover .s-ref-ov-nmbs,
.s-ref-card-roes:hover .s-ref-ov-roes,
.s-ref-card-kn:hover .s-ref-ov-kn {
  background: linear-gradient(to bottom, rgba(10,10,10,0) 0%, rgba(10,10,10,0.18) 45%, rgba(113,148,48,0.78) 100%) !important;
}

/* DNA letters: defaultmatig dim, hover light up + groen accent */
.s-dna-letter, .s-dna-letter-e, .s-dna-letter-m, .s-dna-letter-g, .s-dna-letter-r, .s-dna-letter-o { transition: background-color 0.3s ease; }
.s-dna-l, .s-dna-l-e, .s-dna-l-m, .s-dna-l-g, .s-dna-l-r, .s-dna-l-o { transition: color 0.35s ease, transform 0.35s cubic-bezier(0.16, 1, 0.3, 1); }
.s-dna-t, .s-dna-t-e, .s-dna-t-m, .s-dna-t-g, .s-dna-t-r, .s-dna-t-o,
.s-dna-p, .s-dna-p-e, .s-dna-p-m, .s-dna-p-g, .s-dna-p-r, .s-dna-p-o { opacity: 0.28; transition: opacity 0.45s ease; }
.s-dna-letter:hover .s-dna-t, .s-dna-letter:hover .s-dna-p,
.s-dna-letter-e:hover .s-dna-t-e, .s-dna-letter-e:hover .s-dna-p-e,
.s-dna-letter-m:hover .s-dna-t-m, .s-dna-letter-m:hover .s-dna-p-m,
.s-dna-letter-g:hover .s-dna-t-g, .s-dna-letter-g:hover .s-dna-p-g,
.s-dna-letter-r:hover .s-dna-t-r, .s-dna-letter-r:hover .s-dna-p-r,
.s-dna-letter-o:hover .s-dna-t-o, .s-dna-letter-o:hover .s-dna-p-o { opacity: 1; }
.s-dna-letter:hover .s-dna-l, .s-dna-letter-e:hover .s-dna-l-e, .s-dna-letter-m:hover .s-dna-l-m, .s-dna-letter-g:hover .s-dna-l-g, .s-dna-letter-r:hover .s-dna-l-r, .s-dna-letter-o:hover .s-dna-l-o { color: #719430; transform: translateY(-4px); }
.s-dna-letters:hover .s-dna-letter:not(:hover) .s-dna-l,
.s-dna-letters:hover .s-dna-letter-e:not(:hover) .s-dna-l-e,
.s-dna-letters:hover .s-dna-letter-m:not(:hover) .s-dna-l-m,
.s-dna-letters:hover .s-dna-letter-g:not(:hover) .s-dna-l-g,
.s-dna-letters:hover .s-dna-letter-r:not(:hover) .s-dna-l-r,
.s-dna-letters:hover .s-dna-letter-o:not(:hover) .s-dna-l-o { color: #0A0A0A22; }
@media (max-width: 767px) {
  .s-dna-t, .s-dna-t-e, .s-dna-t-m, .s-dna-t-g, .s-dna-t-r, .s-dna-t-o,
  .s-dna-p, .s-dna-p-e, .s-dna-p-m, .s-dna-p-g, .s-dna-p-r, .s-dna-p-o { opacity: 1; }
  .s-dna-letters:hover .s-dna-letter:not(:hover) .s-dna-l,
  .s-dna-letters:hover .s-dna-letter-e:not(:hover) .s-dna-l-e,
  .s-dna-letters:hover .s-dna-letter-m:not(:hover) .s-dna-l-m,
  .s-dna-letters:hover .s-dna-letter-g:not(:hover) .s-dna-l-g,
  .s-dna-letters:hover .s-dna-letter-r:not(:hover) .s-dna-l-r,
  .s-dna-letters:hover .s-dna-letter-o:not(:hover) .s-dna-l-o { color: #0A0A0A; }
}

/* Hero ken-burns */
.s-hero-bg img { transition: transform 8s cubic-bezier(0.22, 1, 0.36, 1); will-change: transform; }
.s-hero:hover .s-hero-bg img { transform: scale(1.06); }

/* Activiteiten card image zoom on hover */
.s-card .s-card-img img, .s-card-infra .s-card-img-infra img,
.s-card-spoor .s-card-img-spoor img, .s-card-wagen .s-card-img-wagen img,
.s-card-sign .s-card-img-sign img, .s-card-extra .s-card-img-extra img,
.s-ref-card .s-ref-img img, .s-ref-card-nmbs .s-ref-img-nmbs img,
.s-ref-card-roes .s-ref-img-roes img, .s-ref-card-kn .s-ref-img-kn img {
  transition: transform 0.85s cubic-bezier(0.16, 1, 0.3, 1);
}
.s-card:hover .s-card-img img,
.s-card-infra:hover .s-card-img-infra img,
.s-card-spoor:hover .s-card-img-spoor img,
.s-card-wagen:hover .s-card-img-wagen img,
.s-card-sign:hover .s-card-img-sign img,
.s-card-extra:hover .s-card-img-extra img,
.s-ref-card:hover .s-ref-img img,
.s-ref-card-nmbs:hover .s-ref-img-nmbs img,
.s-ref-card-roes:hover .s-ref-img-roes img,
.s-ref-card-kn:hover .s-ref-img-kn img { transform: scale(1.06); }

/* Refs arrow circle: hover — fill groen */
.s-ref-arrow, .s-ref-arrow-nmbs, .s-ref-arrow-roes, .s-ref-arrow-kn {
  transition: background-color 0.3s ease, border-color 0.3s ease, transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}
.s-ref-card:hover .s-ref-arrow,
.s-ref-card-nmbs:hover .s-ref-arrow-nmbs,
.s-ref-card-roes:hover .s-ref-arrow-roes,
.s-ref-card-kn:hover .s-ref-arrow-kn {
  background-color: #719430;
  border-color: #719430;
  transform: translateX(6px);
}

/* Story image gentle ken-burns on hover */
.s-story-img img { transition: transform 1.2s cubic-bezier(0.22, 1, 0.36, 1); }
.s-story-visual:hover .s-story-img img { transform: scale(1.05); }

/* Smooth transitions op alle buttons */
.s-hero-cta-primary, .s-hero-cta-secondary, .s-expertise-cta, .s-refs-cta, .s-certs-cta, .s-cta-btn-primary, .s-cta-btn-secondary, .s-story-cta { transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease, transform 0.25s ease; }/* End custom CSS */