/* Fallbacks when Elementor post-CSS or JS is unavailable */
.elementor-invisible {
    visibility: visible !important;
    opacity: 1 !important;
    animation: none !important;
}

.elementor-icon-list-items {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Homepage hero: titel boven kolommen */
.elementor-1319 .elementor-element.elementor-element-3924f1f {
    --flex-direction: column !important;
    --padding-bottom: 100px !important;
    padding-bottom: 100px !important;
}

.elementor-1319 .elementor-element.elementor-element-3924f1f > .e-con-inner {
    flex-direction: column !important;
    align-items: stretch !important;
}

.elementor-1319 .elementor-element.elementor-element-a5fa17f {
    --width: 100% !important;
    width: 100% !important;
    flex: 0 0 auto !important;
    margin-top: -100px;
    margin-bottom: 16px;
    text-align: center;
}

.elementor-1319 .elementor-element.elementor-element-c558840 {
    align-items: center;
}

.elementor-1319 .elementor-element.elementor-element-057b3e3,
.elementor-1319 .elementor-element.elementor-element-73f1989 {
    text-align: center;
    width: 100%;
}

.elementor-1319 .elementor-element.elementor-element-73f1989 > .elementor-widget-container {
    margin: 10px 0 0 0 !important;
}

.elementor-1319 .elementor-element.elementor-element-d581f6a {
    --width: 100% !important;
    width: 100% !important;
    flex: 1 1 auto !important;
    padding-bottom: 0;
}

.elementor-1319 .elementor-element.elementor-element-c558840,
.elementor-1319 .elementor-element.elementor-element-c558840.elementor-sticky--active {
    position: static !important;
    top: auto !important;
    transform: none !important;
    width: auto !important;
}

/* Voorkom scroll-glitch in cards-sectie (sticky spacer / motion transforms) */
.elementor-1319 .elementor-element.elementor-element-3924f1f .sticky-spacer {
    display: none !important;
    height: 0 !important;
}

.elementor-1319 .elementor-element.elementor-element-3924f1f {
    position: relative;
    z-index: 1;
}

.elementor-1319 .elementor-element.elementor-element-d581f6a,
.elementor-1319 .elementor-element.elementor-element-d581f6a .elementor-element {
    transform: none !important;
}

.elementor-1319 .elementor-element.elementor-element-d581f6a .elementor-widget-image a {
    display: block;
    line-height: 0;
}

.elementor-1319 .elementor-element.elementor-element-d581f6a .elementor-widget-image a img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    display: block;
}

/* Cards: 400px afbeelding, label + hover zoals Elementor-bedoeling */
.elementor-1319 .elementor-element.elementor-element-4d1dcb7,
.elementor-1319 .elementor-element.elementor-element-bd8d6f9,
.elementor-1319 .elementor-element.elementor-element-0037f8e,
.elementor-1319 .elementor-element.elementor-element-1cf6473,
.elementor-1319 .elementor-element.elementor-element-76b5927,
.elementor-1319 .elementor-element.elementor-element-815f3cd {
    --min-height: 460px !important;
    min-height: 460px !important;
}

/* Quote + Mari-Mae sectie */
.elementor-1319 .elementor-element.elementor-element-7a76a87 {
    --min-height: auto !important;
    min-height: auto !important;
    --padding-top: 0 !important;
    padding-top: 0 !important;
    --padding-bottom: 48px !important;
    padding-bottom: 48px !important;
}

.elementor-1319 .elementor-element.elementor-element-2b59d5c {
    --margin-top: -170px !important;
    margin-top: -170px !important;
    position: relative;
    z-index: 2;
}

/* Quote-kaart op mobiel: meer lucht rond de tekst */
@media (max-width: 767px) {
    .elementor-1319 .elementor-element.elementor-element-2b59d5c {
        --width: calc(100% - 32px) !important;
        width: calc(100% - 32px) !important;
        --border-radius: 28px !important;
        border-radius: 28px !important;
    }

    .elementor-1319 .elementor-element.elementor-element-2112a86 > .elementor-widget-container {
        margin: 0 !important;
        padding: 40px 24px 36px !important;
    }

    .elementor-1319 .scroll-words-block {
        font-size: 24px;
        line-height: 1.35;
        text-wrap: balance;
    }

    .elementor-1319 .elementor-element.elementor-element-80e0d45 {
        --spacer-size: 24px;
    }
}

/* Sectie "dit doen we iedere dag" + patroon door achter CTA */
.elementor-1319 .elementor-element.elementor-element-8109f3c {
    --padding-top: 48px !important;
    padding-top: 48px !important;
    --padding-bottom: 100px !important;
    padding-bottom: 100px !important;
    position: relative;
    z-index: 1;
}

.elementor-1319 .elementor-element.elementor-element-57c393b {
    --margin-top: -80px !important;
    margin-top: -80px !important;
    position: relative;
    z-index: 2;
    --padding-top: 20px !important;
    padding-top: 20px !important;
    background-color: transparent !important;
    background-image: linear-gradient(180deg, transparent 50%, #000000 50%) !important;
}

.elementor-1319 .elementor-element.elementor-element-57c393b:not(.elementor-motion-effects-element-type-background),
.elementor-1319 .elementor-element.elementor-element-57c393b > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: transparent !important;
    background-image: linear-gradient(180deg, transparent 50%, #000000 50%) !important;
}

/* Formulier-sectie: zelfde achtergrond als Mari-Mae blok (homepage) */
.elementor-element.elementor-element-ec27660:not(.elementor-motion-effects-element-type-background),
.elementor-element.elementor-element-ec27660 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: #000000 !important;
    background-image: url("/assets/images/uploads/2025/07/Roze-swirl-scaled.webp") !important;
    background-position: 90% 0% !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
}

.elementor-element.elementor-element-ec27660::before,
.elementor-element.elementor-element-ec27660 > .elementor-background-video-container::before,
.elementor-element.elementor-element-ec27660 > .e-con-inner > .elementor-background-video-container::before,
.elementor-element.elementor-element-ec27660 > .elementor-background-slideshow::before,
.elementor-element.elementor-element-ec27660 > .e-con-inner > .elementor-background-slideshow::before,
.elementor-element.elementor-element-ec27660 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
    background-color: transparent !important;
    background-image: linear-gradient(180deg, #000000 11%, #00000000 100%) !important;
}

/* CTA-strip zonder service-formulier: zwarte achtergrond (overloop footer), geen swirl/extra hoogte */
body:not(:has(.ad25-service-form)) .elementor-element.elementor-element-1b962eb {
    --min-height: auto !important;
    min-height: auto !important;
    --padding-top: 0 !important;
    padding-top: 0 !important;
    --padding-bottom: 0 !important;
    padding-bottom: 0 !important;
}

body:not(:has(.ad25-service-form)) .elementor-element.elementor-element-1b962eb:not(.elementor-motion-effects-element-type-background),
body:not(:has(.ad25-service-form)) .elementor-element.elementor-element-1b962eb > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: #000000 !important;
    background-image: none !important;
}

body:not(:has(.ad25-service-form)) .elementor-element.elementor-element-1b962eb::before,
body:not(:has(.ad25-service-form)) .elementor-element.elementor-element-1b962eb > .elementor-background-video-container::before,
body:not(:has(.ad25-service-form)) .elementor-element.elementor-element-1b962eb > .e-con-inner > .elementor-background-video-container::before,
body:not(:has(.ad25-service-form)) .elementor-element.elementor-element-1b962eb > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
    background-color: transparent !important;
    background-image: linear-gradient(180deg, #000000 11%, #00000000 100%) !important;
}

body:not(:has(.ad25-service-form)) .elementor-element.elementor-element-1b962eb .elementor-element-ae289f2 {
    --margin-top: -60px !important;
    margin-top: -60px !important;
    --margin-bottom: 0 !important;
    margin-bottom: 0 !important;
}

@media (max-width: 1024px) {
    .elementor-element.elementor-element-ec27660:not(.elementor-motion-effects-element-type-background),
    .elementor-element.elementor-element-ec27660 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
        background-position: 0% 0% !important;
    }
}

@media (min-width: 1367px) {
    .elementor-element.elementor-element-ec27660:not(.elementor-motion-effects-element-type-background),
    .elementor-element.elementor-element-ec27660 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
        background-attachment: fixed !important;
    }
}

/* Bodytekst homepage: Maven Pro */
.home p,
.home span,
.elementor-page-1319 p,
.elementor-page-1319 span {
    font-family: "Maven Pro", sans-serif !important;
}

/* Navigatie & koppen: Montserrat behouden */
.elementor-location-header p,
.elementor-location-header span,
.scroll-words-block,
.scroll-words-block span,
h1 span,
h2 span,
h3 span,
h4 span,
h5 span,
h6 span {
    font-family: inherit !important;
}

/* Muurstickers: vloersticker-afbeelding iets hoger in kader */
.elementor-1815 .elementor-element.elementor-element-733c778 img {
    object-position: center 62% !important;
}

/* Dienstpagina-hero op mobiel: compacter, titel dichter onder de navigatie, geen schuine divider */
@media (max-width: 767px) {
    #content .elementor-element.elementor-element-9886931 {
        --min-height: 360px !important;
        min-height: 360px !important;
        --padding-top: 48px !important;
        --padding-bottom: 36px !important;
        --padding-left: 20px !important;
        --padding-right: 20px !important;
    }

    #content .elementor-element.elementor-element-9886931 .elementor-shape-bottom {
        display: none;
    }

    /* CTA-balk onderaan dienstpagina's: geen lege zwarte strook eronder */
    #content .elementor-element.elementor-element-1b962eb {
        --min-height: 0px !important;
        min-height: 0 !important;
    }

    #content .elementor-element.elementor-element-9886931 .elementor-widget-breadcrumbs,
    #content .elementor-element.elementor-element-9886931 .elementor-widget-breadcrumbs > .elementor-widget-container {
        margin-bottom: 0 !important;
    }
}
