/**
Theme Name: Ecofusion
Author: Webdude
Author URI: https://webdude.be
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ecofusion
Template: astra
*/

.elementor-kit-19 {
    --e-global-color-primary: #A877B2;
    --e-global-color-secondary: #382A72;
    --e-global-color-text: #000000;
    --e-global-color-accent: #F2EBF4;
    --e-global-color-419da0e: #A877B2;
    --e-global-color-a50a8f8: #382A72;
    --e-global-color-3cd047b: #6E9178;
    --e-global-color-c75ca0b: #497657;
    --e-global-color-a4af8eb: #EDF1EE;
    --e-global-color-0d1dead: #DCE3DD;
    --e-global-color-c527c2d: #D1D5DB;
    --e-global-color-55b7393: #F2EBF4;
}

* {
    --color-pink: var(--e-global-color-419da0e);
    --color-purple: var(--e-global-color-a50a8f8);
    --color-green: var(--e-global-color-3cd047b);
    --color-dark-green: var(--e-global-color-c75ca0b);
    --color-light-green: var(--e-global-color-0d1dead);
    --color-light-light-green: var(--e-global-color-a4af8eb);
    --color-light-light-purple: #EAE9F1;
    --color-light-pink: var(--e-global-color-55b7393);
    --breakpoint-tablet: 1024px;
    --breakpoint-mobile: 767px;
    --website-width: 1400px;
}


.grecaptcha-badge {
    visibility: hidden !important;
}



/* Global padding margin on boxed content */

/* page width for gutenberg */
[data-elementor-type="single-post"]:has(*[class^="wp-block"]) .econt {
    padding-left: 30px;
    padding-right: 30px;
    margin-bottom: 80px;
}

[data-elementor-type="single-post"]:has(*[class^="wp-block"]) .elementor-widget-theme-post-content {
    width: var(--website-width);
    margin: 0 auto;
    box-sizing: border-box;
}

@media (max-width: 1024px) {
    [data-elementor-type="single-post"]:has(*[class^="wp-block"]) .econt {
        margin-bottom: 60px;
    }
}

@media (max-width: 767px) {
    [data-elementor-type="single-post"]:has(*[class^="wp-block"]) .econt {
        padding-left: 20px;
        padding-right: 20px;
        margin-bottom: 40px;
    }
}

/* Desktop - large screens */


.e-con-boxed {
    --padding-left: 30px;
    --padding-right: 30px;
    padding-left: var(--padding-left, 30px);
    padding-right: var(--padding-right, 30px);

}

/* Tablet */
@media (max-width: 1024px) {
    .e-con-boxed {
        --padding-left: 30px;
        --padding-right: 30px;
        padding-left: var(--padding-left, 30px);
        padding-right: var(--padding-right, 30px);
    }
}

/* Mobile */
@media (max-width: 767px) {
    .e-con-boxed {
        --padding-left: 20px;
        --padding-right: 20px;
        padding-left: var(--padding-left, 20px);
        padding-right: var(--padding-right, 20px);
    }

    .no_padding_mobile {
        margin-left: -20px;
        margin-right: -20px;
        width: calc(100% + 40px);
        /* Expands the width to counter the parent's padding */
    }
}


/* Global margins on container, buttons, paragraphs */


.econt .e-parent,
.elementor-location-archive>.e-parent,
.elementor-location-archive>.elementor-section-wrap>.e-parent {
    --margin-bottom: 80px;
    margin-bottom: var(--margin-bottom, 80px);
}




/* Mobile */

@media (max-width: 1024px) {

    .econt .e-parent,
    .elementor-location-archive>.e-parent,
    .elementor-location-archive>.elementor-section-wrap>.e-parent {
        --margin-bottom: 60px;
        margin-bottom: var(--margin-bottom, 60px);
    }


}

@media (max-width: 767px) {

    .econt .e-parent,
    .elementor-location-archive>.e-parent,
    .elementor-location-archive>.elementor-section-wrap>.e-parent {
        --margin-bottom: 40px;
        margin-bottom: var(--margin-bottom, 40px);
    }
}


.econt .e-parent:has(.e-child + .e-child),
.elementor-location-archive>.e-parent:has(.e-child + .e-child),
.elementor-location-archive>.elementor-section-wrap>.e-parent:has(.e-child + .e-child) {
    --gap: 80px 80px;
    --row-gap: 80px;
    --column-gap: 80px;
}

/* disable on loops */

.econt .elementor-widget-loop-grid .e-parent {
    --margin-bottom: 0px;
    margin-bottom: var(--margin-bottom, 0px);
}

.econt .elementor-widget-loop-grid .e-parent:has(.e-child + .e-child) {
    --gap: 0px 0px;
    --row-gap: 0px;
    --column-gap: 0px;
}


.e-con>.e-con-inner {
    gap: var(--gap);
}


.e-con-boxed {
    --gap: inherit;
}


@media (max-width: 1024px) {

    .econt .e-parent:has(.e-child + .e-child),
    .elementor-location-archive>.e-parent:has(.e-child + .e-child),
    .elementor-location-archive>.elementor-section-wrap>.e-parent:has(.e-child + .e-child) {
        --gap: 60px 60px;
    }

}

@media (max-width: 767px) {

    .econt .e-parent:has(.e-child + .e-child),
    .elementor-location-archive>.e-parent:has(.e-child + .e-child),
    .elementor-location-archive>.elementor-section-wrap>.e-parent:has(.e-child + .e-child) {
        --gap: 40px 40px;
    }
}


.content-area .econt .elementor-widget-theme-post-content h1 {
    margin-top: 0;
    margin-bottom: 0;
}




.type-page .econt .elementor-widget-theme-post-content h2,
.type-page .econt .elementor-widget-theme-post-content h3 .type-page .econt .elementor-widget-theme-post-content h4,
.type-page .econt .elementor-widget-theme-post-content h5,
.type-page .econt .elementor-widget-theme-post-content h6,
.type-page .econt h2,
.type-page .econt h3,
.type-page .econt h4,
.type-page .econt h5,
.type-page .econt h6 {
    --margin-bottom: 10px;
    margin-bottom: var(--margin-bottom, 10px);
    --margin-top: 0px;
    margin-top: var(--margin-top, 0px);
}


.type-page p,
.type-page .elementor-widget-theme-post-content p {
    --margin-bottom: 0px;
    margin-bottom: var(--margin-bottom, 0px);
    --margin-top: 0px;
    margin-top: var(--margin-top, 0px);
}







/* LINKS */
.content-area p a,
.content-area ul a,
.content-area ol a,
.type-page .elementor-widget-text-editor a,
.type-post .elementor-widget-text-editor a {
    text-decoration: underline;
}


.elementor-widget .elementor-icon-list-item .elementor-icon-list-text a {
    display: inline;
}




/* BUTTONS */

/* Apply styles in both live page and Elementor editor */
/* Rounded Icon Button CSS */
.elementor-button-rounded_icon_button a.elementor-button,
.rounded_icon_button a.elementor-button:hover,
.elementor-editor-active .rounded_icon_button a.elementor-button,
.elementor-editor-active .rounded_icon_button a.elementor-button:hover {
    background-color: transparent !important;
    padding: 0px !important;
    border-radius: 0 !important;
}

.elementor-button-rounded_icon_button .elementor-button-text,
.elementor-editor-active .elementor-button-rounded_icon_button .elementor-button-text {
    display: flex;
    justify-content: center;
    align-items: center;
}

.elementor-button-rounded_icon_button .elementor-button-icon,
.elementor-editor-active .elementor-button-rounded_icon_button .elementor-button-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #FFF;
    border: 1px solid var(--color-pink);
    transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out;
    padding: 21px;
    box-sizing: border-box;
}

.elementor-button-rounded_icon_button .elementor-button-icon svg,
.elementor-editor-active .elementor-button-rounded_icon_button .elementor-button-icon svg {
    width: 24px;
    height: 24px;
    fill: var(--color-pink);
    transition: fill 0.2s ease-in-out, transform 0.2s ease-in-out;
}

.elementor-button-rounded_icon_button:hover .elementor-button-icon,
.elementor-editor-active .elementor-button-rounded_icon_button:hover .elementor-button-icon {
    border-color: white;
    background-color: var(--color-pink);
    fill: white !important;
}

.elementor-button-rounded_icon_button:hover .elementor-button-icon svg,
.elementor-editor-active .elementor-button-rounded_icon_button:hover .elementor-button-icon svg {
    fill: white !important;
    transform: scale(1.05);
}

@media (max-width:1024px) {

    .elementor-button-rounded_icon_button .elementor-button-icon,
    .elementor-editor-active .elementor-button-rounded_icon_button .elementor-button-icon {
        width: 40px;
        height: 40px;
        padding: 0px;
    }

    .elementor-button-rounded_icon_button .elementor-button-icon svg,
    .elementor-editor-active .elementor-button-rounded_icon_button .elementor-button-icon svg {
        width: 12px;
        height: 12px;
        transition: fill 0.2s ease-in-out, transform 0.2s ease-in-out;
    }
}

/* Text Icon Button CSS (No Border or Background Color) */
.elementor-button-text_icon_button a.elementor-button,
.text_icon_button a.elementor-button:hover,
.elementor-editor-active .text_icon_button a.elementor-button,
.elementor-editor-active .text_icon_button a.elementor-button:hover {
    background-color: transparent !important;
    padding: 0px !important;
    border-radius: 0 !important;
}

.elementor-button-text_icon_button .elementor-button-text,
.elementor-editor-active .elementor-button-text_icon_button .elementor-button-text {
    display: flex;
    justify-content: center;
    align-items: center;
}

.elementor-button-text_icon_button .elementor-button-icon,
.elementor-editor-active .elementor-button-text_icon_button .elementor-button-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    /* No fixed width */
    height: auto;
    /* No fixed height */
    background-color: transparent;
    /* No background */
    border: none;
    /* No border */
    padding: 0;
    /* No padding */
    box-sizing: border-box;
}

.elementor-button-text_icon_button .elementor-button-icon svg,
.elementor-editor-active .elementor-button-text_icon_button .elementor-button-icon svg {
    width: 24px;
    height: 24px;
    transition: fill 0.2s ease-in-out, transform 0.2s ease-in-out;
}

.elementor-button-text_icon_button:hover .elementor-button-icon svg,
.elementor-editor-active .elementor-button-text_icon_button:hover .elementor-button-icon svg {
    transform: scale(1.05);
}

@media (max-width:1024px) {

    .elementor-button-text_icon_button .elementor-button-icon svg,
    .elementor-editor-active .elementor-button-text_icon_button .elementor-button-icon svg {
        width: 12px;
        height: 12px;
        transition: fill 0.2s ease-in-out, transform 0.2s ease-in-out;
    }
}


.fake-button {
    display: inline-block;
    color: #fff;
    font-size: 16px;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.3s ease;
    width: auto;
    /* Ensures the width is determined by content */
    max-width: none;

}

.fake-white {
    background-color: white;
}

.button.fake-button.small {
    padding: 10px 20px;
    width: auto;
    max-width: fit-content;
}

@media (max-width:1024px) {
    .button.fake-button.small {
        max-width: auto;
        width: 100%;
    }
}


/* close button popup */

.dialog-type-lightbox{
    z-index: 99999;
}

.elementor-popup-modal .dialog-close-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #FFF;
    border: 1px solid var(--color-pink);
    transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out;
    padding: 0px;
    box-sizing: border-box;
}

.elementor-popup-modal .dialog-close-button:hover {
    border-color: white;
    background-color: var(--color-pink);
}

.elementor-popup-modal .dialog-close-button svg {
    width: 24px;
    height: 24px;
    fill: var(--color-pink);
    transition: fill 0.2s ease-in-out, transform 0.2s ease-in-out;
}

.elementor-popup-modal .dialog-close-button:hover svg {
    fill: white;
    transform: scale(1.05);
}

@media (max-width:1024px) {

    .elementor-popup-modal .dialog-close-button {
        width: 40px;
        height: 40px;
        padding: 0px;
    }


    .elementor-popup-modal .dialog-close-button svg {
        width: 12px;
        height: 12px;
    }

}



/* Remove dotted lines around buttons */
a,
a:active,
a:focus,
.uael-menu-toggle,
.uael-menu-toggle:focus,
.uael-menu-toggle:active {
    outline: none !important;
    -moz-outline-style: none !important;
}


/* FORMS */

form span.disabled {
    text-decoration: line-through;
    opacity: 50%;
}

form.elementor-form textarea {
    border-radius: 20px !important;
}

.elementor-field-group .elementor-select-wrapper:before {
    right: 20px;
}

.elementor-select-wrapper .select-caret-down-wrapper {
    inset-inline-end: 20px;
}

form.elementor-form textarea,
form.elementor-form input,
form.elementor-form select {
    padding: 15px 30px !important;
}

form.elementor-form input[type="file"]::file-selector-button {
    padding: 13px 20px;
    border: 2px solid var(--color-green);
    background: 0 0;
    color: var(--color-green);
    padding: 13px 20px;
    border-radius: 50px;
    font-weight: 500 !important;
}

form.elementor-form input[type="file"]::file-selector-button:hover {
    cursor: pointer;
    background: var(--color-green);
    color: white;
    transition: all .3s;
}

form.elementor-form input[type="file"] {
    padding: 0 !important;
    font-weight: 500;
}

form.elementor-form h2,
form.elementor-form h3 {
    margin-bottom: 0;
}


/* RADIO BUTTONS */

form.elementor-form .elementor-field-type-radio label,
form.elementor-form .elementor-field-type-checkbox label {
    font-size: 18px;
    font-weight: 300;
    cursor: pointer;
    margin-left: 8px;
    vertical-align: middle;
}

form.elementor-form .elementor-field-type-radio input[type="radio"] {
    cursor: pointer;
    width: 20px;
    height: 20px;
    margin-right: 10px;
    vertical-align: middle;
    background-color: #fff;
    border: 1px solid #bbb;
    border-radius: 50%;
    appearance: none;
    -webkit-appearance: none;
    position: relative;
    outline: none;
    padding: 0 !important;
    display: inline-block;
    /* Ensures it's treated as a box */
    box-sizing: border-box;
    line-height: 0;
    /* Avoid font-size bleeding in mobile Safari */
    /* Ensure no padding inside the radio button */
}

form.elementor-form .elementor-field-type-checkbox input[type="checkbox"] {
    cursor: pointer;
    width: 20px;
    height: 20px;
    margin-right: 10px;
    vertical-align: middle;
    background-color: #fff;
    border: 1px solid #bbb;
    appearance: none;
    position: relative;
    outline: none;
    padding: 0 !important;
    flex-shrink: 0;
}


form.elementor-form .elementor-field-type-radio input[type="radio"]:checked {
    background-color: white;
    border-color: lightgrey;
}

form.elementor-form .elementor-field-type-checkbox input[type="checkbox"]:checked {
    background-color: white;
    border-color: lightgrey;
}

form.elementor-form .elementor-field-type-radio input[type="radio"]:checked::before {
    content: "";
    display: block;
    width: 13px;
    height: 13px;
    background-color: #bbb;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

form.elementor-form .elementor-field-type-checkbox input[type="checkbox"]:checked::before {
    content: "";
    display: block;
    width: 13px;
    height: 13px;
    background-color: #bbb;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

form.elementor-form .elementor-field-type-radio .elementor-field-option {
    flex: 1 1 calc(33.33% - 10px);
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

form.elementor-form .elementor-field-type-checkbox .elementor-field-option {
    flex: 1 1 calc(19% - 10px);
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

#offerte_form .elementor-field-type-checkbox .elementor-field-subgroup,
#acties_form .elementor-field-type-checkbox .elementor-field-subgroup {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    /* use gap instead of margins */
    justify-content: flex-start;
}

/* Each option: fixed column width, no grow */
#offerte_form .elementor-field-type-checkbox .elementor-field-option,
#acties_form .elementor-field-type-checkbox .elementor-field-option {
    flex: 0 0 calc(25% - 10px);
    /* 4 per row, won't grow on shorter rows */
    max-width: calc(25% - 10px);
}

form.elementor-form .elementor-field-type-checkbox.elementor-field-group-warmtepomp_type .elementor-field-option {
    flex: 1 1 calc(33.33% - 10px);
    display: flex;
    align-items: center;
    margin-bottom: 10px;

}



/* Style the radio button container */
form.elementor-form .elementor-field-type-radio .elementor-field-subgroup {
    display: block;
    column-count: 2;
    column-gap: 20px;
    width: 100%;
}

/* Style each radio button option */
form.elementor-form .elementor-field-type-radio .elementor-field-option {
    display: block;
    margin-bottom: 10px;
}

/* extra */

form.elementor-form .elementor-field-type-radio .elementor-field-subgroup.elementor-subgroup-inline {
    display: flex;
    width: 100%;
    flex-grow: 1;
    justify-content: space-between;
    flex-wrap: wrap;
}




/* checkbox */

form.elementor-form .elementor-field-type-checkbox .elementor-field-subgroup.elementor-subgroup-inline {
    display: flex;
    width: 100%;
    flex-grow: 1;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
}

.checkbox-column-2 form.elementor-form .elementor-field-type-checkbox .elementor-field-subgroup {
    width: 100%;
    display: block;
    column-count: 2;
}

.checkbox-column-2 form.elementor-form .elementor-field-type-checkbox .elementor-field-option {
    margin-bottom: 20px;
}

.elementor-field-group-warmtepomp_type,
#type_warmtepomp_label {
    display: none;
}

.elementor form a {
    text-decoration: underline;
}


/* afspraak showroom forms */

#afspraak_showroom .e-form__buttons__wrapper__button-next {
    position: relative;
    padding-right: 50px;
    font-size: 16px;
    font-weight: 500;
}

#afspraak_showroom .e-form__buttons__wrapper__button-next::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    width: 15px;
    height: 15px;
    background-image: url('/wp-content/themes/ecofusion/assets/img/arrow-right.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    filter: brightness(0) invert(1);
}

#afspraak_showroom .e-form__buttons__wrapper__button-previous {
    position: relative;
    padding-left: 50px;
    font-size: 16px;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
}

#afspraak_showroom .e-form__buttons__wrapper__button-previous::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 15px;
    transform: translateY(-50%) rotate(180deg);
    width: 15px;
    height: 15px;
    background-image: url('/wp-content/themes/ecofusion/assets/img/arrow-right.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    filter: brightness(0) invert(1);
}

#afspraak_showroom .elementor-field-type-radio .elementor-field-subgroup.elementor-subgroup-inline {
    display: flex;
    gap: 10px;
    /* Optional spacing between items */
    align-items: center;
    justify-content: flex-start;
}

#afspraak_showroom .elementor-field-type-radio .elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option {
    flex: 1 1 auto;
    /* Ensure items only take up as much space as needed */
}


.afspraak-container:hover,
.afspraak-container:hover>* {
    cursor: pointer;
}

.fake-button-button {
    border-radius: 50px 50px 50px 50px;
    padding: 20px 30px 20px 30px;
    font-size: 18px;
    font-weight: 500;
}

@media (max-width: 1024px) {

    form.elementor-form textarea,
    form.elementor-form input,
    form.elementor-form select {
        padding: 15px 25px !important;
    }

    .fake-button-button {
        padding: 10px 15px 10px 15px;
    }

    /* Each option: fixed column width, no grow */
    #offerte_form .elementor-field-type-checkbox .elementor-field-option,
    #acties_form .elementor-field-type-checkbox .elementor-field-option {
        flex: 0 0 calc(33% - 10px);
        /* 4 per row, won't grow on shorter rows */
        max-width: calc(33% - 10px);
    }
}


@media (max-width: 768px) {

    form.elementor-form .elementor-field-type-radio .elementor-field-subgroup {
        column-count: 1;
    }

    form.elementor-form .elementor-field-type-radio .elementor-field-option {
        flex: auto;
    }

    form.elementor-form .elementor-field-type-radio .elementor-field-subgroup.elementor-subgroup-inline {
        gap: 10px;
    }

    .checkbox-column-2 form.elementor-form .elementor-field-type-checkbox .elementor-field-subgroup {
        width: 100%;
        display: block;
        column-count: 1;
    }

    form.elementor-form .elementor-field-type-checkbox.elementor-field-group-warmtepomp_type .elementor-field-option {
        flex: 1 1 calc(100% - 10px);
        display: flex;
        align-items: center;
        margin-bottom: 10px;

    }

    #afspraak_showroom .e-form__buttons__wrapper {
        flex-basis: 100%;
        flex-grow: 0;
        width: 100%;
    }

    #afspraak_showroom .elementor-field-type-submit {
        order: 1;
    }

    #afspraak_showroom .elementor-field-type-previous {
        order: 2;
    }

    /* Each option: fixed column width, no grow */
    #offerte_form .elementor-field-type-checkbox .elementor-field-option,
    #acties_form .elementor-field-type-checkbox .elementor-field-option {
        flex: 0 0 calc(50% - 10px);
        /* 4 per row, won't grow on shorter rows */
        max-width: calc(50% - 10px);
    }

}







.disabled-look {
    background-color: #cccccc;
    /* Light grey to indicate disabled */
    cursor: not-allowed;
    /* Change cursor to indicate button is not clickable */
    opacity: 0.6;
    /* Reduce opacity to give a disabled effect */
    pointer-events: none;
    /* Prevent any further interaction */
}

.elementor-field-type-nonce {
    display: none;
}


/* Google autocomplete */
/* Google Places Autocomplete styling override */


/* HEADER */

header .menu_desktop ul .sub-menu {
    padding: 25px 0px;
}

.header-post-count {
    font-weight: 700;
    letter-spacing: .01em;
    margin: 0;
    border: 0;
    height: 16px;
    /* Matches the line-height for vertical centering */
    min-width: 16px;
    /* Ensures the element is at least 16px wide */
    padding: 0;
    /* Remove horizontal padding to ensure centering */
    display: inline-flex;
    /* Use inline-flex to easily center text */
    align-items: center;
    /* Vertically center the text */
    justify-content: center;
    /* Horizontally center the text */
    border-radius: 50%;
    /* Make the background circular */
    background: var(--e-global-color-c75ca0b);
    /* Default background color */
    color: #fff;
    font-size: 11px;
    line-height: 16px;
    /* Matches height for text alignment */
    text-align: center;
    /* Center text horizontally */
    margin-left: 3px;
    transform: translateY(-3px);
    /* Adjust if necessary */
    transition: background 0.3s ease;
    /* Smooth transition for background color change */
}


/* Change background color on hover of the parent <a> */
.elementor-icon-list-item a:hover .vacatures-post-count {
    background: var(--e-global-color-419da0e);
}


/* img as dropdown icon in menu */

.uael-menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.uael-menu-toggle .fa {
    display: none;
    /* Hide the original icon */
}

.uael-menu-toggle::before {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    background: url('/wp-content/themes/ecofusion/assets/img/arrow-right-purple.svg') no-repeat center center;
    background-size: contain;
    transition: transform 0.3s ease;
}

.menu_desktop .uael-menu-toggle::before {
    /* Ensure the SVG scales correctly */
    transform: rotate(90deg);
}

/* Rotate arrow to point right when hovering over the menu item */
.menu_desktop .menu-item:hover .uael-menu-toggle::before,
.menu_desktop .menu-item:hover .sub-menu:hover .uael-menu-toggle::before {
    transform: rotate(-90deg);
    /* Rotate to point right */
}

/* Ensure the rotation is applied when hovering over sub-menu */
.menu_desktop .menu-item:hover .sub-menu {
    display: block;
    /* Ensure sub-menu is displayed */
}

.hamburger_menu .elementor-icon-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}

header .off_canvas .sub-menu a {
    padding-left: 0 !important;
}

header .off_canvas .sub-menu.sub-menu-open {
    padding: 15px 0px;
}

header .off_canvas .uael-menu-toggle::before {
    transform: rotate(0deg);
}

header .off_canvas .menu-active .uael-menu-toggle::before {
    transform: rotate(90deg);
    /* Rotate to point right */
}

.e-off-canvas__main,
.e-off-canvas__content {
    z-index: 100;
}

#ast-scroll-top {
    z-index: 90;
}


.mijn_ecofusion_link>a {
    position: relative;
}

/* icons on links */

header .menu-item>a>i {
    margin-right: 5px;
    font-size: 12px;
}












/* FOOTER */

footer {
    overflow: hidden !important;
}

.footer_spinner_wrapper {
    padding-top: 125px;
}

.footer_spinner {
    position: absolute;
    top: 0;
    /* Position it at the top of its container */
    right: -125px;
    /* Align it to the right */
    width: 250px;
    /* Set the width of the image */
    height: 250px;
    /* Set the height of the image */
    background: url('/wp-content/themes/ecofusion/assets/img/emblem_pink.svg') no-repeat center center;
    background-size: contain;
    /* Ensure the image fits within the given dimensions */
    transform-origin: center;
    /* Set the rotation axis to the center of the element */
    animation: spin 60s linear infinite;
    /* Rotate continuously */
    z-index: 100;
    /* Ensure it appears above other content */
    overflow: hidden;

}



@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}





/* .social_icons_footer,
.social_icons_footer .elementor-widget-container,
footer .elementor-widget-social-icons,
footer .elementor-widget-social-icons .elementor-widget-container {
    width: 100%;
}

.social_icons_footer .elementor-social-icons-wrapper,
footer .elementor-widget-social-icons .elementor-social-icons-wrapper {
    display: flex !important;
    justify-content: space-between !important;

} */

footer .elementor-heading-title small {
    font-size: 16px;
    font-weight: 400;
}

/* reviews shortcode */

.reviews-container {
    padding: 25px 0px 75px 0px;
    text-align: center;
}

.reviews-container a,
.reviews-container a:hover {

    color: #FFFFFF;
    font-family: var(--e-global-typography-3e76dc7-font-family), Sans-serif;
    font-size: var(--e-global-typography-3e76dc7-font-size);
    font-weight: var(--e-global-typography-3e76dc7-font-weight);
    line-height: var(--e-global-typography-3e76dc7-line-height);
    letter-spacing: var(--e-global-typography-3e76dc7-letter-spacing);

}

.reviews-container .review-sub-title {
    font-size: calc(var(--e-global-typography-3e76dc7-font-size) * 0.65);
    font-weight: 400;
}

.stars {
    display: flex;
    justify-content: center;
    margin: 10px 0;
}

.score {
    font-size: 18px;
    font-weight: bold;
}

.star {
    width: 24px;
    height: 24px;
    display: inline-block;
    margin-right: 2px;
    fill: #FFD700;
    /* Gold color */
}

.star.empty {
    fill: none;
    stroke: #FFD700;
    /* Gold color */
}

.star.full {
    fill: #FFD700;
    /* Gold color */
}

.star.half {
    fill: #FFD700;
    /* Gold color */
    clip-path: inset(0 50% 0 0);
}


/* splitting the menu in two */

/* Basic styles for the menu */
.elementor-nav-menu__container {
    display: block;
    grid-template-columns: repeat(2, 1fr);
    /* Two equal columns */
}

.elementor-nav-menu__container ul {
    column-count: 2;
    /* Split the list into two columns */
    column-gap: auto;
    /* Automatically distribute space between columns */
    width: 100%;
    /* Ensure the <ul> takes the full width of its container */
    list-style: none;
    /* Remove default list styling */
    padding: 0;
    margin: 0;

}

.elementor-nav-menu__container li {
    break-inside: avoid;
    /* Prevent items from breaking across columns */
}


/* Ensure the menu displays in columns only on desktop screens */
@media (max-width: 1024px) {

    /* Adjust breakpoint as needed */
    .splitted_footer_menu .elementor-nav-menu--main ul {
        column-gap: 100px;
    }
}





/* BLOG */

@media (min-width:767px) {
    .blog_overview_item {
        height: 100%;
    }
}

.ecofusion_automated_contrast .blog_overview_item {
    background-color: white !important;
}

.blog_overview_item_img {
    position: relative;
    /* Ensure the parent element is positioned */
}

.eco_divider .elementor-divider-separator {
    border-radius: 5px;
}

.blog_overview_item_above {
    height: 100%;
}

.overview_item_no_button {
    position: absolute;
    z-index: 1;
    /* Ensure it appears above other elements */
    display: inline;
}

.overview_item_no_button.cultuur {
    display: inline-flex;
    width: auto;
    align-items: center;
    /* Aligns text and icon vertically centered */
    position: absolute;
    z-index: 1;
    /* Ensure it appears above other elements */
    transform: translateY(-50%);
    gap: 20px;
    top: 50%;
    right: -30px;
}

.overview_item_no_button.cultuur .heading,
.overview_item_no_button.cultuur .image {
    display: inline-flex;
    align-items: center;
}

.overview_item_no_button.cultuur .image {
    width: 60px;
    height: 60px;
}

.overview_item_no_button svg {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #FFF;
    border: 1px solid var(--color-pink);
    transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out;
    padding: 21px;
    /* Adjust padding to center the smaller icon */
}

.blog_overview_item:hover .overview_item_no_button svg,
.vacature_overview_item:hover .overview_item_no_button svg,
.evenementen_overview_item:hover .overview_item_no_button svg {
    background-color: var(--color-pink);
    /* Background changes to pink on hover */
    border-color: #FFF;
    /* Border changes to white on hover */
}

.vacature_overview_item:hover .heading .elementor-heading-title {
    color: var(--color-purple) !important;
    transition: all 0.2s ease-in-out, border-color 0.2s ease-in-out;
}

.overview_item_no_button svg path {
    width: 18px;
    /* Icon size */
    height: 18px;
    /* Icon size */
    transition: fill 0.1s ease-in-out, stroke 0.1s ease-in-out;
    /* Faster transition for icon color */
    fill: var(--color-pink);

}

.blog_overview_item:hover .overview_item_no_button svg path,
.vacature_overview_item:hover .overview_item_no_button svg path,
.evenementen_overview_item:hover .overview_item_no_button svg path {
    fill: #FFF;
    /* Changes the arrow color to white on hover */
}




@media (max-width:1024px) {

    .overview_item_no_button svg {
        width: 40px;
        height: 40px;
        padding: 12px;
    }

    .overview_item_no_button svg path {
        width: 12px;
    }

    .overview_item_no_button.cultuur {
        right: -20px;
    }

    .overview_item_no_button.cultuur .image {
        width: 40px;
        height: 40px;
    }

}

@media (max-width:1024px) {
    .overview_item_no_button.cultuur .heading {
        display: none;
    }
}

/* Blog detail */


div.type-post .wp-block-heading {
    margin-top: 0;
}

div.type-post h1.wp-block-heading::after {
    content: '';
    display: block;
    width: 70px;
    height: 5px;
    /* You can adjust the height as needed */
    margin: 0 auto;
    margin-left: 0;
    background-color: var(--color-pink, #BBBBBB);
    /* Default to #BBBBBB if --divider-color is not set */
    border-radius: 5px;
    /* Optional, adds rounded corners */
    margin: 15px 0px;
}

div.type-post p {
    margin-bottom: 3em;
}


div.type-post .wp-block-columns {
    margin-bottom: 4.5em;
    gap: 3em;
}

/* elementor type blog post */



div.type-post .blog_detail .elementor-heading-title {
    margin: 0;
}

div.type-post [data-elementor-type="wp-post"] p {
    --margin-bottom: 0px;
    margin-bottom: var(--margin-bottom, 0px);
    --margin-top: 0px;
    margin-top: var(--margin-top, 0px);
}

/* EVENEMENTEN */

.evenementen_overview_item:hover {
    color: initial;
}



/* =========================================
   Event badge (no grid, right-aligned)
   ========================================= */

/* Badge base */
.event-date {
    /* scoped vars */
    --event-badge-padding: 0.8rem 0.8rem;
    --event-badge-radius: 0;
    /* square corners */
    --event-badge-bg: var(--color-purple);
    /* solid purple */
    --event-badge-fg: #fff;
    --event-day-size: 1.6rem;
    --event-month-size: .9rem;
    --event-gap: .25rem;

    display: inline-block;
    /* shrink to content */
    padding: var(--event-badge-padding);
    background: var(--event-badge-bg);
    color: var(--event-badge-fg);
    border-radius: var(--event-badge-radius);
    box-sizing: border-box;
    line-height: 1.1;
    vertical-align: top;
    overflow: hidden;
    /* keep content inside */
    /* right align in the badge */
    font-variant-numeric: tabular-nums;
}

/* ---------- Row 1: days (inline) ---------- */
.event-date .event-day,
.event-date .event-day-start,
.event-date .event-day-sep,
.event-date .event-day-end {
    display: inline;
    /* single inline row */
    font-weight: 800;
    font-size: var(--event-day-size);
    white-space: nowrap;
    /* keep "26–28" together */
}

.event-date .event-day-sep {
    margin: 0 .12em;
}

/* ---------- Row 2 (single / same-month): month on its own line ---------- */
.event-date .event-month {
    display: block;
    /* second row */
    margin-top: var(--event-gap);
    font-size: var(--event-month-size);
    text-transform: uppercase;
    letter-spacing: .03em;
    white-space: nowrap;
}

/* Small default gap if you ever output month-start/end without the 2-line logic */
.event-date .event-month-start,
.event-date .event-month-end {
    margin-top: var(--event-gap);
    font-size: var(--event-month-size);
    text-transform: uppercase;
    letter-spacing: .03em;
    white-space: nowrap;
}

/* ============================================================
   DIFFERENT MONTHS (two-line inline layout, no wrappers/grids)
   HTML:
   <span class="event-date">
     <span class="event-day-start">26</span> <span class="event-month-start">AUG</span>
     <span class="event-day-sep">–</span>
     <span class="event-day-end">1</span> <span class="event-month-end">SEPT</span>
   </span>
   Result:
     line 1: 26 AUG –
     line 2: 1 SEPT
   ============================================================ */

/* Hide the original dash; we will re-insert it after start month with a newline */
.event-date:has(.event-month-start):has(.event-month-end) .event-day-sep {
    display: none;
}

/* After start month: add en dash + newline to force second line */
.event-date:has(.event-month-start):has(.event-month-end) .event-month-start::after {
    content: " \2013\A";
    /* " –\n" */
    white-space: pre;
    /* honor the newline */
}

/* Put end day on line 2 and keep end month on the same line */
.event-date:has(.event-month-start):has(.event-month-end) .event-day-end {
    display: inline-block;
    /* begins new inline box (line 2 after \A) */
    padding-top: var(--event-gap);
    /* vertical gap between lines */
}

/* Tidy months in the two-line variant (no extra top margin) */
.event-date:has(.event-month-start):has(.event-month-end) .event-month-start,
.event-date:has(.event-month-start):has(.event-month-end) .event-month-end {
    margin-top: 0;
    font-size: var(--event-month-size);
    text-transform: uppercase;
    letter-spacing: .03em;
    white-space: nowrap;
}

/* In the two-month case, hide the single-month node if present */
.event-date:has(.event-month-start):has(.event-month-end) .event-month {
    display: none;
}



/* acties detail*/
/* elementor type acties post */


div .acties_detail .elementor-heading-title {
    margin: 0;
}

div .acties_detail div[data-elementor-post-type="acties"] p {
    --margin-bottom: 0px;
    margin-bottom: var(--margin-bottom, 0px);
    --margin-top: 0px;
    margin-top: var(--margin-top, 0px);
}

/* gutenberg acties */

/*fix for png on gutenberg pages */
.ast-article-single figure,
.ast-article-single img:not(figure img) {
    -webkit-box-shadow: none;
    box-shadow: none;
}


div.elementor-location-single.type-acties .wp-block-heading {
    margin-top: 0;
}

div.elementor-location-single.type-acties h1.wp-block-heading::after {
    content: '';
    display: block;
    width: 70px;
    height: 5px;
    margin: 0 auto;
    margin-left: 0;
    background-color: var(--color-pink, #BBBBBB);
    border-radius: 5px;
    margin: 15px 0px;
}

div.elementor-location-single.type-acties p {
    margin-bottom: 3em;
}


div.elementor-location-single.type-acties .wp-block-columns {
    margin-bottom: 4.5em;
    gap: 3em;
}






/* pagination */

/* Pagination container */
.eco_pagination .elementor-pagination {
    padding-top: 40px;
    /* Add top padding to the pagination */
    display: flex;
    justify-content: center;
    /* Center the pagination links */
    align-items: center;
    gap: 30px;
    /* Add 30px space between pagination items */
}

.eco_pagination .elementor-pagination .prev,
.eco_pagination .elementor-pagination .next {
    position: relative;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #FFF;
    border: 1px solid var(--color-pink);
    transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0;
    /* ✅ Hides text more reliably */
    overflow: hidden;
}

.eco_pagination .elementor-pagination .prev:not([href]),
.eco_pagination .elementor-pagination .next:not([href]) {
    display: none;
}

/* Show arrows via ::after (less affected by parent text styles) */
.eco_pagination .elementor-pagination .prev::after,
.eco_pagination .elementor-pagination .next::after {
    content: '';
    display: block;
    width: 18px;
    height: 18px;
    background-color: var(--color-pink);
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center;
    mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 17.5 17.42"><path d="M8.44,.12c.1-.08,.22-.12,.35-.12s.23,.04,.31,.12l8.24,8.28c.1,.08,.16,.18,.16,.31s-.05,.23-.16,.31l-8.24,8.28c-.08,.08-.18,.12-.31,.12s-.25-.04-.35-.12l-.27-.31c-.08-.08-.12-.18-.12-.31s.04-.25,.12-.35l6.99-6.95H.47c-.13,0-.24-.05-.33-.14s-.14-.2-.14-.33v-.39c0-.13,.05-.24,.14-.33s.2-.14,.33-.14H15.16L8.16,1.09c-.08-.1-.12-.22-.12-.35s.04-.23,.12-.31l.27-.31Z" /></svg>');
}

/* Rotate for previous arrow */
.eco_pagination .elementor-pagination .prev::after {
    transform: rotate(180deg);
}

/* Hover effect */
.eco_pagination .elementor-pagination .prev:hover,
.eco_pagination .elementor-pagination .next:hover {
    background-color: var(--color-pink);
    border-color: #FFF;
}

.eco_pagination .elementor-pagination .prev:hover::after,
.eco_pagination .elementor-pagination .next:hover::after {
    background-color: #FFF;
}

/* Responsive sizes */
@media (max-width: 1024px) {

    .eco_pagination .elementor-pagination .prev,
    .eco_pagination .elementor-pagination .next {
        width: 40px;
        height: 40px;
    }

    .eco_pagination .elementor-pagination .prev::after,
    .eco_pagination .elementor-pagination .next::after {
        width: 12px;
        height: 12px;
    }
}

/* Taxonomy filter */

.e-filter-item[data-filter="uncategorized"] {
    display: none;

}

/* Arrow on taxonomy filter */

/* Scroll indication */
.e-filter::after,
.wpc-filters-scroll-container::after {
    content: '';
    position: absolute;
    top: 50%;
    right: -15px;
    width: 15px;
    height: 15px;
    background: url('/wp-content/themes/ecofusion/assets/img/arrow-right.svg') no-repeat center;
    background-size: contain;
    filter: invert(17%) sepia(63%) saturate(4189%) hue-rotate(231deg) brightness(94%) contrast(101%);
    /* Set arrow color to #382a72 */
    animation: blink 3s ease-in-out 5;
    pointer-events: none;
    transform: translateY(-50%);
    opacity: 0;
}

@keyframes blink {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0;
    }
}

/* Hide scroll indication when not on mobile */
@media (min-width: 768px) {

    .e-filter::after,
    .wpc-filters-scroll-container::after {
        display: none;
    }

}

/* Realisaties */


/*Klantencases */

.single-realisaties p:not(:last-child) {
    margin-bottom: 2rem;
}

.single-realisaties h3 {
    margin-top: 3rem;
}
@media (max-width: 767px) {
    .single-realisaties h3 {
        margin-top: 1.5rem;
    }
}

.case-video,
.case-video .elementor-widget-video,
.case-video .elementor-widget-container,
.case-video .elementor-video {
    border-radius: 1rem;
}

.wf-badge {
    display: inline-flex;
    align-items: center;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .08);
    line-height: 14px;
    width: fit-content;
}

.single-realisaties .elementor-widget-text-editor ul li {
    margin-bottom: 0.75em;
}
.single-realisaties .elementor-widget-text-editor ul li:last-child {
    margin-bottom: 0;
}

/* single realisaties table */

.single-realisaties-table table {
    width: 100%;
    background: white;
    border-radius: 1rem;
    border: 0;
    overflow: hidden;
    box-shadow:
        0 20px 25px -5px rgba(0, 0, 0, 0.1),
        0 8px 10px -6px rgba(0, 0, 0, 0.1);

}

.single-realisaties-table table thead {
    background-color: rgb(239, 239, 239);
    text-transform: uppercase;
    color: rgb(99, 99, 99);
    font-size: 14px;
    font-weight: 700;
    text-align: left;
}

.single-realisaties-table table,
.single-realisaties-table table th,
.single-realisaties-table table td {
  border: none;
}

.single-realisaties-table table tbody {
    font-size: 16px;
}

.single-realisaties-table table thead th {
    padding: 12px 24px;
    font-weight: 700;
}

.single-realisaties-table table tbody td {
    padding: 18px 24px;
    vertical-align: top;
}

/* single realisaties table – mobile */
@keyframes scroll-hint-pulse {
    0%, 100% { opacity: 1; transform: translateY(-0%) scale(1); }
    50% { opacity: 0.7; transform: translateY(-50%) scale(1.15); }
}
@media (max-width: 767px) {
    .single-realisaties-table {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        position: relative;
    }
    .single-realisaties-table table {
        min-width: 480px;
        box-shadow: none;
    }
    /* scroll hint: fixed to right edge of screen (container) */

    .single-realisaties-table::before {
        content: '→';
        position: sticky;
        float: right;
        right: 0;
        margin-right: -40px;
        margin-top: 20px;
        transform: translateY(-50%);
        width: 28px;
        height: 28px;
        border-radius: 50%;
        background: rgba(0, 0, 0, 0.08);
        color: rgba(0, 0, 0, 0.55);
        font-size: 14px;
        font-weight: 700;
        text-align: center;
        line-height: 28px;
        pointer-events: none;
        animation: scroll-hint-pulse 0.6s ease-in-out 3;
    }
    .single-realisaties-table table thead th {
        padding: 10px 14px;
        font-size: 12px;
    }
    .single-realisaties-table table tbody td {
        padding: 12px 14px;
        font-size: 14px;
    }
}


/* end single realisaties */

@media (max-width: 768px) {

    .post-type-archive-realisaties .site-content .realisatie_filters ul.wpc-filters-ul-list.wpc-filters-labels {
        max-height: unset;
        flex-wrap: nowrap;
        overflow: auto;
        scrollbar-width: none;
        gap: 20px;
    }

    


}

@media (max-width: 1024px) {

    .post-type-archive-realisaties .site-content .realisatie_filters .wpc-filters-widget-wrapper{
        flex-wrap: wrap!important;
        justify-content: flex-end;
        gap: 20px!important;
    }

}

/* filter everything pro filters */
.post-type-archive-realisaties .site-content .realisatie_filters .wpc-filters-section {
  
    width: auto!important;
    max-width: 100%!important;
    margin: 0;
    
}

.post-type-archive-realisaties .site-content .realisatie_filters .wpc-filters-widget-wrapper {
    display: flex;
    flex-wrap: nowrap;
}

.post-type-archive-realisaties .site-content .realisatie_filters .wpc-filters-widget-wrapper .wpc-filters-labels{
    display: flex;
    flex-wrap: nowrap!important;
}

.wpc-filter-layout-dropdown .select2-container--default .select2-selection--single .select2-selection__arrow{
    background-color: transparent!important;
}



.post-type-archive-realisaties .site-content .realisatie_filters .wpc-filters-section.wpc-filter-layout-dropdown {
    width: auto!important;
    
}

.post-type-archive-realisaties .site-content .realisatie_filters .widget-title.wpc-filter-title {
    display: none;  
}

.post-type-archive-realisaties .site-content .realisatie_filters .wpc-filters-widget-wrapper{
    display: flex;
    gap: 40px;
    flex-wrap: nowrap;
}


.post-type-archive-realisaties .site-content .realisatie_filters .wpc-filters-ul-list {
    display: flex;
    flex-wrap: nowrap;
    gap: 20px;
}

.post-type-archive-realisaties .site-content .realisatie_filters .wpc-filters-ul-list label {
    border-radius: 50px;
    border: 0;
    margin: 0;
    padding: 0;
}

.post-type-archive-realisaties .site-content .realisatie_filters .wpc-filters-ul-list label .wpc-filter-label-wrapper {
    border-radius: 50px;
    border: 0;
    background-color: var(--color-light-pink);
    font-family: "Ubuntu", Sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 17px;
    padding: 13px 20px 13px 20px;
}

.post-type-archive-realisaties .site-content .realisatie_filters .wpc-filters-ul-list label:hover .wpc-filter-label-wrapper {
    background-color: var(--color-light-green);
    color: var(--color-purple);
}

.post-type-archive-realisaties .site-content .realisatie_filters .wpc-filters-ul-list input:checked+label .wpc-filter-label-wrapper {
    background-color: var(--color-light-light-green);
}



.post-type-archive-realisaties .site-content .realisatie_filters .wpc-filters-ul-list label .wpc-filter-label-wrapper a {
    margin: 0;
    padding: 0;
    font-weight: 500;
}

.post-type-archive-realisaties .site-content .realisatie_filters .wpc-filters-ul-list label:hover .wpc-filter-label-wrapper a {
    color: var(--color-purple);
}

.post-type-archive-realisaties .site-content .realisatie_filters .wpc-filters-ul-list input:checked+label .wpc-filter-label-wrapper a {
    color: var(--color-purple);
}


/* EcoFusion BlockQuote */

.elementor-widget-blockquote.elementor-blockquote--skin-ecofusion_blockquote .elementor-blockquote__content::before,
.elementor-widget-blockquote.elementor-blockquote--skin-ecofusion_blockquote .elementor-blockquote__content::after {
    content: '';
    display: block;
    background-image:
        url('/wp-content/themes/ecofusion/assets/img/quote_line.svg'),
        url('/wp-content/themes/ecofusion/assets/img/quote_line.svg');
    background-size: contain;
    background-repeat: no-repeat;
    height: 40px;
    /* Adjust height for two lines */
    z-index: 10;
}





.elementor-widget-blockquote.elementor-blockquote--skin-ecofusion_blockquote .elementor-blockquote__content::before {
    width: 100%;
    background-position: center left 0px, center left 15px;
    /* Position one on the left, one on the right */
    margin-bottom: 10px;
}

.elementor-widget-blockquote.elementor-blockquote--skin-ecofusion_blockquote .elementor-blockquote__content:after {
    width: 100%;
    background-position: center right, center right 15px;
    margin-top: 10px;
}

.elementor-widget-blockquote.smaller_quotes.elementor-blockquote--skin-ecofusion_blockquote .elementor-blockquote__content::before,
.elementor-widget-blockquote.smaller_quotes.elementor-blockquote--skin-ecofusion_blockquote .elementor-blockquote__content::after {
    height: 20px;
}

.elementor-widget-blockquote.smaller_quotes.elementor-blockquote--skin-ecofusion_blockquote .elementor-blockquote__content::before {
    background-position: center left, center left 7px;
}

.elementor-widget-blockquote.smaller_quotes.elementor-blockquote--skin-ecofusion_blockquote .elementor-blockquote__content::after {
    background-position: center right, center right 7px;
}




@media (min-width: 1025px) {

    .elementor-widget-blockquote.elementor-blockquote--skin-ecofusion_blockquote .elementor-blockquote__content::before {
        position: absolute;
        top: -40px;
        left: -40px;
    }

    .elementor-widget-blockquote.elementor-blockquote--skin-ecofusion_blockquote .elementor-blockquote__content::after {
        position: absolute;
        bottom: -20px;
        right: -20px;
    }

    .elementor-widget-blockquote.smaller_quotes.elementor-blockquote--skin-ecofusion_blockquote .elementor-blockquote__content::before {
        position: absolute;
        top: -20px;
        left: -20px;
    }

    .elementor-widget-blockquote.smaller_quotes.elementor-blockquote--skin-ecofusion_blockquote .elementor-blockquote__content::after {
        position: absolute;
        bottom: 0px;
        right: -10px;
    }

}


/* VACATURES */



.vacature_overview_item_button .elementor-icon-list-icon svg {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #FFF;
    border: 1px solid var(--color-pink);
    padding: 21px;
    /* Adjust padding to center the smaller icon */
    transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out !important;

}

.vacature_overview_item_button .elementor-icon-list-icon svg path {
    width: 18px;
    /* Icon size */
    height: 18px;
    /* Icon size */
    transition: fill 0.1s ease-in-out, stroke 0.1s ease-in-out;
    /* Faster transition for icon color */
    fill: var(--color-pink);
}

.vacature_overview_item:hover .vacature_overview_item_button .elementor-icon-list-icon svg {
    background-color: var(--color-pink);
    /* Background changes to pink on hover */
    border-color: #FFF;
    /* Border changes to white on hover */
}

.vacature_overview_item:hover .vacature_overview_item_button .elementor-icon-list-text {
    color: var(--color-purple) !important;
}

.vacature_overview_item:hover .vacature_overview_item_button .elementor-icon-list-icon svg path {
    fill: #FFF;
    /* Changes the arrow color to white on hover */
}


@media (max-width:1024px) {


    .vacature_overview_item_button .elementor-icon-list-icon svg {
        width: 40px;
        height: 40px;
        padding: 12px;
    }

    .vacature_overview_item_button .elementor-icon-list-icon svg path {
        width: 12px;
    }

}


.type-page .vacature_overview_item_cultuur h1,
.type-page .vacature_overview_item_cultuur h2,
.type-page .vacature_overview_item_cultuur h3,
.type-page .vacature_overview_item_cultuur h4,
.type-page .vacature_overview_item_cultuur h5,
.type-page .vacature_overview_item_cultuur h6 {
    margin: 0;
    padding: 0;
}


/* Aircotool banner */



.aircotool.person_container {
    position: absolute;

}



.aircotool.person_container .person img {
    position: absolute;
    z-index: 50;
    bottom: 0;
    left: 100px;

}

.aircotool.aircotool.person_container .rad {
    position: absolute;
    z-index: 5;
    bottom: 0;

}

.aircotool .pijl {
    position: absolute;
    z-index: 9;
    right: 30px;
    top: 100px;
}

.aircotool .naam {
    position: absolute;
    position: absolute;
    z-index: 10;
    right: -20px;
    top: 50px;
}


/* FAQ video */

.elementor .faq_video iframe {
    margin-top: 20px;
}

/* Contact page */

.content-area .adres_block p,
.content-area .adres_block a {
    text-decoration: none;
    color: white;
}

.contact_ecowatje {
    position: absolute;
    right: -60px;
    bottom: -160px;
}


@media (max-width:1300px) {

    .contact_ecowatje {
        width: 60%;
        right: -60px;
        bottom: -120px;
    }


}


/* over ons team */
.ecofusion_team_carousel .swiper-pagination-progressbar.swiper-pagination-horizontal {
    bottom: -20px;
    top: unset;
}

.ecofusion_team_carousel .swiper-pagination-progressbar {
    background-color: var(--color-light-pink);
}

.ecofusion_team_carousel .elementor-swiper-button-prev svg {
    transform: rotate(180deg);
}

.elementor-element .ecofusion_team_carousel .elementor-swiper-button-prev svg,
.elementor-element .ecofusion_team_carousel .elementor-swiper-button-next svg {
    width: 16px;
    height: 16px;
}


/* disable acties infoavond form line through */

/* #infoavond_digitale_meter label[for="form-field-infosessie-0"],
#infoavond_digitale_meter label[for="form-field-infosessie-2"],
#infoavond_digitale_meter label[for="form-field-infosessie-1"] {
    text-decoration: line-through;
    opacity: 50%;
} */


/* advies layout start */

@media (max-width: 768px) {


    .advies-layout .breadcrumbs_wrapper {
        display: none;
    }

    .advies-layout h1 {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .advies-layout h1 {
        font-size: 5.5vw;

    }

    .advies-layout form.elementor-form textarea,
    .advies-layout form.elementor-form input {
        padding: 5px 25px !important;
        font-size: 16px;
    }

    .advies-layout form.elementor-form textarea {
        padding: 10px 25px !important;
    }

    .advies-layout .elementor-field-textual.elementor-size-lg {
        min-height: auto;
    }

    .advies-layout p {
        line-height: 1.8;
    }

}

/* advies layout end */