/*
 * KartonBoss Services – Startseite
 * Automatisch aus Elementor HTML Widgets ausgelagert.
 */


/* =========================================
   ELEMENTOR HTML WIDGET: d8c8e40
========================================= */

/* =========================================================
   BASIS
========================================================= */

.elementor .kbhero-final,
.kbhero-final {
    --e-global-color-primary: #35B642 !important;
    --e-global-color-secondary: #111111 !important;
    --e-global-color-text: #292929 !important;
    --e-global-color-accent: #35B642 !important;

    --kb-green: #35B642;
    --kb-green-dark: #238B30;
    --kb-black: #111111;
    --kb-muted: #666D66;
    --kb-border: #E2E8E1;

    position: relative !important;

    width: 100% !important;
    min-height: 800px !important;

    display: flex !important;
    align-items: center !important;

    overflow: hidden !important;

    background: #ffffff !important;

    font-family:
        "Inter",
        Arial,
        sans-serif !important;
}


.kbhero-final *,
.kbhero-final *::before,
.kbhero-final *::after {
    box-sizing: border-box !important;
}


.elementor .kbhero-final a,
.elementor .kbhero-final a:link,
.elementor .kbhero-final a:visited,
.elementor .kbhero-final a:hover,
.elementor .kbhero-final a:focus,
.elementor .kbhero-final a:active,
.kbhero-final a {
    text-decoration: none !important;
    outline: none !important;
}


/* =========================================================
   ACCESSIBILITY ONLY
========================================================= */

.kbhero-sr-only {
    position: absolute !important;

    width: 1px !important;
    height: 1px !important;

    padding: 0 !important;
    margin: -1px !important;

    overflow: hidden !important;

    clip: rect(0,0,0,0) !important;
    clip-path: inset(50%) !important;

    white-space: nowrap !important;

    border: 0 !important;
}


/* =========================================================
   VIDEO LAYER
========================================================= */

.kbhero-final__video-layer {
    position: absolute !important;

    z-index: 1 !important;

    inset: 0 !important;

    overflow: hidden !important;

    pointer-events: none !important;
}


/* =========================================================
   DESKTOP VIDEO
========================================================= */

.kbhero-final__video-wrap {
    position: absolute !important;

    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;

    width: 72% !important;

    overflow: hidden !important;

    -webkit-mask-image:
        linear-gradient(
            90deg,
            transparent 0%,
            rgba(0,0,0,.08) 6%,
            rgba(0,0,0,.28) 13%,
            rgba(0,0,0,.60) 21%,
            rgba(0,0,0,.88) 28%,
            #000 36%,
            #000 100%
        ) !important;

    mask-image:
        linear-gradient(
            90deg,
            transparent 0%,
            rgba(0,0,0,.08) 6%,
            rgba(0,0,0,.28) 13%,
            rgba(0,0,0,.60) 21%,
            rgba(0,0,0,.88) 28%,
            #000 36%,
            #000 100%
        ) !important;
}


.kbhero-final__video {
    position: absolute !important;

    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    display: block !important;

    object-fit: cover !important;
    object-position: center center !important;

    border: 0 !important;

    transform:
        scale(1.025) !important;
}


/* =========================================================
   VIDEO TINT
========================================================= */

.kbhero-final__video-tint {
    position: absolute !important;

    z-index: 2 !important;

    inset: 0 !important;

    pointer-events: none !important;

    background:
        linear-gradient(
            135deg,
            rgba(53,182,66,.01),
            rgba(35,139,48,.10)
        ),
        linear-gradient(
            180deg,
            transparent 48%,
            rgba(15,45,18,.09) 100%
        ) !important;
}


/* =========================================================
   WEISSER VERLAUF
========================================================= */

.kbhero-final__overlay {
    position: absolute !important;

    z-index: 3 !important;

    inset: 0 !important;

    pointer-events: none !important;

    background:
        linear-gradient(
            90deg,

            #ffffff 0%,
            #ffffff 29%,

            rgba(255,255,255,.995) 35%,
            rgba(255,255,255,.96) 42%,
            rgba(255,255,255,.85) 48%,
            rgba(255,255,255,.63) 55%,
            rgba(255,255,255,.36) 62%,
            rgba(255,255,255,.15) 69%,
            rgba(255,255,255,.04) 76%,

            transparent 85%
        ) !important;
}


/* =========================================================
   DEKO
========================================================= */

.kbhero-final::before {
    content: "" !important;

    position: absolute !important;

    z-index: 3 !important;

    width: 570px !important;
    height: 570px !important;

    left: -350px !important;
    top: -315px !important;

    border-radius: 50% !important;

    border:
        1px solid rgba(53,182,66,.13) !important;

    pointer-events: none !important;
}


.kbhero-final::after {
    content: "" !important;

    position: absolute !important;

    z-index: 4 !important;

    width: 120px !important;
    height: 120px !important;

    left: 2% !important;
    bottom: 35px !important;

    opacity: .14 !important;

    background-image:
        radial-gradient(
            circle,
            #35B642 1.3px,
            transparent 1.5px
        ) !important;

    background-size:
        13px 13px !important;

    pointer-events: none !important;
}


/* =========================================================
   INNER
========================================================= */

.kbhero-final__inner {
    position: relative !important;

    z-index: 6 !important;

    width:
        min(1350px, calc(100% - 64px)) !important;

    margin: 0 auto !important;

    padding:
        92px 0 !important;
}


.kbhero-final__content {
    position: relative !important;

    width: 100% !important;

    max-width: 735px !important;
}


/* =========================================================
   EYEBROW
========================================================= */

.kbhero-final__eyebrow {
    display: inline-flex !important;

    align-items: center !important;

    gap: 10px !important;

    margin-bottom:
        24px !important;

    padding:
        9px 14px !important;

    border:
        1px solid rgba(53,182,66,.20) !important;

    border-radius:
        999px !important;

    background:
        rgba(53,182,66,.065) !important;

    color:
        #238B30 !important;

    font-size:
        12px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    opacity: 0;

    animation:
        kbHeroFinalUp .65s ease forwards .08s !important;
}


.kbhero-final__eyebrow-dot {
    width: 8px !important;
    height: 8px !important;

    flex:
        0 0 8px !important;

    border-radius: 50% !important;

    background:
        #35B642 !important;

    box-shadow:
        0 0 0 5px rgba(53,182,66,.10) !important;
}


/* =========================================================
   H1
========================================================= */

.elementor .kbhero-final h1,
.kbhero-final h1 {
    max-width:
        725px !important;

    margin: 0 !important;
    padding: 0 !important;

    color:
        #111111 !important;

    font-family:
        "Inter",
        Arial,
        sans-serif !important;

    font-size:
        clamp(47px,4.4vw,66px) !important;

    line-height:
        1.01 !important;

    letter-spacing:
        -.052em !important;

    font-weight:
        600 !important;

    opacity: 0;

    animation:
        kbHeroFinalUp .75s ease forwards .16s !important;
}


.elementor .kbhero-final h1 span,
.kbhero-final h1 span {
    position: relative !important;

    display: inline-block !important;

    margin-top:
        6px !important;

    color:
        #35B642 !important;
}


.kbhero-final h1 span::after {
    content: "" !important;

    position: absolute !important;

    left: 2px !important;
    bottom: -12px !important;

    width: 100px !important;
    height: 4px !important;

    border-radius:
        20px !important;

    background:
        linear-gradient(
            90deg,
            #35B642,
            rgba(53,182,66,.10)
        ) !important;
}


/* =========================================================
   LEAD
========================================================= */

.elementor .kbhero-final
.kbhero-final__lead,
.kbhero-final
.kbhero-final__lead {
    max-width:
        685px !important;

    margin:
        36px 0 0 !important;

    color:
        #5E665E !important;

    font-size:
        17px !important;

    line-height:
        1.72 !important;

    font-weight:
        400 !important;

    opacity: 0;

    animation:
        kbHeroFinalUp .75s ease forwards .25s !important;
}


.kbhero-final__lead strong {
    color:
        #333933 !important;

    font-weight:
        550 !important;
}


/* =========================================================
   BUTTONS
========================================================= */

.kbhero-final__buttons {
    display: flex !important;

    align-items: center !important;

    flex-wrap: wrap !important;

    gap:
        12px !important;

    margin-top:
        32px !important;

    opacity: 0;

    animation:
        kbHeroFinalUp .75s ease forwards .34s !important;
}


.elementor .kbhero-final a.kbhero-btn,
.kbhero-final a.kbhero-btn {
    min-height:
        58px !important;

    display:
        inline-flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    gap:
        11px !important;

    padding:
        0 24px !important;

    border-radius:
        10px !important;

    font-size:
        14px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    transition:
        transform .25s ease,
        background .25s ease,
        border-color .25s ease,
        box-shadow .25s ease !important;
}


/* PRIMARY */

.elementor .kbhero-final
a.kbhero-btn--primary,
.elementor .kbhero-final
a.kbhero-btn--primary:visited,
.kbhero-final
a.kbhero-btn--primary {
    color:
        #ffffff !important;

    background:
        linear-gradient(
            135deg,
            #35B642,
            #2BA238
        ) !important;

    border:
        1px solid #35B642 !important;

    box-shadow:
        0 15px 32px rgba(35,139,48,.20) !important;
}


.elementor .kbhero-final
a.kbhero-btn--primary:hover,
.kbhero-final
a.kbhero-btn--primary:hover {
    color:
        #ffffff !important;

    background:
        #238B30 !important;

    border-color:
        #238B30 !important;

    transform:
        translateY(-3px) !important;

    box-shadow:
        0 20px 39px rgba(35,139,48,.26) !important;
}


.kbhero-btn--primary i {
    color:
        #ffffff !important;

    font-size:
        12px !important;
}


/* SECONDARY */

.elementor .kbhero-final
a.kbhero-btn--secondary,
.elementor .kbhero-final
a.kbhero-btn--secondary:visited,
.kbhero-final
a.kbhero-btn--secondary {
    color:
        #111111 !important;

    background:
        rgba(255,255,255,.94) !important;

    border:
        1px solid #DDE4DC !important;

    box-shadow:
        0 8px 22px rgba(30,60,32,.035) !important;
}


.elementor .kbhero-final
a.kbhero-btn--secondary:hover,
.kbhero-final
a.kbhero-btn--secondary:hover {
    color:
        #238B30 !important;

    background:
        #ffffff !important;

    border-color:
        rgba(53,182,66,.35) !important;

    transform:
        translateY(-3px) !important;
}


.kbhero-btn--secondary i {
    color:
        #238B30 !important;

    font-size:
        11px !important;
}


/* =========================================================
   INTERNE SEO-LINKS
========================================================= */

.kbhero-final__quicklinks {
    display: flex !important;

    align-items: center !important;

    flex-wrap: wrap !important;

    gap:
        7px 15px !important;

    margin-top:
        21px !important;

    opacity: 0;

    animation:
        kbHeroFinalUp .75s ease forwards .39s !important;
}


.kbhero-final__quicklinks-label {
    color:
        #858B85 !important;

    font-size:
        10.5px !important;

    font-weight:
        500 !important;
}


.elementor .kbhero-final
a.kbhero-final__quicklink,
.kbhero-final
a.kbhero-final__quicklink {
    position: relative !important;

    color:
        #515851 !important;

    font-size:
        11px !important;

    line-height:
        1.4 !important;

    font-weight:
        550 !important;

    transition:
        color .2s ease !important;
}


.elementor .kbhero-final
a.kbhero-final__quicklink:hover,
.kbhero-final
a.kbhero-final__quicklink:hover {
    color:
        #238B30 !important;
}


.kbhero-final__quicklink::after {
    content: "" !important;

    position: absolute !important;

    left: 0 !important;
    right: 0 !important;
    bottom: -3px !important;

    height: 1px !important;

    background:
        rgba(53,182,66,.40) !important;

    transform:
        scaleX(0) !important;

    transform-origin:
        left center !important;

    transition:
        transform .2s ease !important;
}


.kbhero-final__quicklink:hover::after {
    transform:
        scaleX(1) !important;
}


/* =========================================================
   TRUST
========================================================= */

.kbhero-final__trust {
    list-style: none !important;

    display: flex !important;

    align-items: center !important;

    flex-wrap: wrap !important;

    gap:
        14px 28px !important;

    max-width:
        710px !important;

    margin:
        31px 0 0 !important;

    padding:
        27px 0 0 !important;

    border-top:
        1px solid #E7EBE6 !important;

    opacity: 0;

    animation:
        kbHeroFinalUp .75s ease forwards .45s !important;
}


.kbhero-trust {
    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        10px !important;

    margin: 0 !important;

    color:
        #3C423C !important;

    font-size:
        13px !important;

    line-height:
        1.3 !important;

    font-weight:
        500 !important;
}


.kbhero-trust__icon {
    width:
        31px !important;

    height:
        31px !important;

    flex:
        0 0 31px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        9px !important;

    background:
        #EDF7EC !important;

    color:
        #238B30 !important;

    font-size:
        11px !important;
}


.kbhero-trust__icon i {
    color:
        #238B30 !important;
}


/* =========================================================
   ANIMATION
========================================================= */

@keyframes kbHeroFinalUp {

    from {
        opacity: 0;

        transform:
            translateY(22px);
    }

    to {
        opacity: 1;

        transform:
            translateY(0);
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1050px) {

    .kbhero-final {
        min-height:
            720px !important;
    }


    .kbhero-final__inner {
        width:
            min(100% - 44px,900px) !important;

        padding:
            75px 0 !important;
    }


    .kbhero-final__content {
        max-width:
            600px !important;
    }


    .kbhero-final__video-wrap {
        width:
            64% !important;
    }


    .kbhero-final__overlay {
        background:
            linear-gradient(
                90deg,

                #ffffff 0%,
                #ffffff 38%,

                rgba(255,255,255,.98) 44%,
                rgba(255,255,255,.85) 52%,
                rgba(255,255,255,.52) 62%,
                rgba(255,255,255,.19) 73%,

                transparent 88%
            ) !important;
    }


    .elementor .kbhero-final h1,
    .kbhero-final h1 {
        font-size:
            clamp(40px,5vw,54px) !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .elementor .kbhero-final,
    .kbhero-final {
        position:
            relative !important;

        width:
            100% !important;

        min-height:
            805px !important;

        display:
            flex !important;

        align-items:
            center !important;

        overflow:
            hidden !important;

        background:
            #ffffff !important;
    }


    /* VIDEO KOMPLETT */

    .kbhero-final__video-layer {
        position:
            absolute !important;

        z-index:
            1 !important;

        inset:
            0 !important;

        width:
            100% !important;

        height:
            100% !important;

        display:
            block !important;

        overflow:
            hidden !important;
    }


    .kbhero-final__video-wrap {
        position:
            absolute !important;

        inset:
            0 !important;

        width:
            100% !important;

        height:
            100% !important;

        display:
            block !important;

        overflow:
            hidden !important;

        -webkit-mask-image:
            none !important;

        mask-image:
            none !important;
    }


    .kbhero-final__video {
        position:
            absolute !important;

        inset:
            0 !important;

        width:
            100% !important;

        height:
            100% !important;

        display:
            block !important;

        object-fit:
            cover !important;

        object-position:
            64% center !important;

        opacity:
            1 !important;

        filter:
            saturate(.82)
            contrast(.94)
            brightness(1.02) !important;

        transform:
            scale(1.04) !important;
    }


    /* TINT */

    .kbhero-final__video-tint {
        position:
            absolute !important;

        z-index:
            2 !important;

        inset:
            0 !important;

        background:
            linear-gradient(
                145deg,
                rgba(53,182,66,.06) 0%,
                rgba(35,139,48,.02) 52%,
                rgba(19,61,25,.08) 100%
            ) !important;
    }


    /* OVERLAY */

    .kbhero-final__overlay {
        position:
            absolute !important;

        z-index:
            3 !important;

        inset:
            0 !important;

        background:

            linear-gradient(
                180deg,

                rgba(255,255,255,.89) 0%,
                rgba(255,255,255,.84) 17%,
                rgba(255,255,255,.79) 37%,
                rgba(255,255,255,.74) 57%,
                rgba(255,255,255,.80) 76%,
                rgba(255,255,255,.92) 100%
            ),

            linear-gradient(
                90deg,

                rgba(255,255,255,.91) 0%,
                rgba(255,255,255,.76) 55%,
                rgba(255,255,255,.56) 100%
            ) !important;
    }


    /* CONTENT */

    .kbhero-final__inner {
        position:
            relative !important;

        z-index:
            7 !important;

        width:
            calc(100% - 32px) !important;

        max-width:
            none !important;

        margin:
            0 auto !important;

        padding:
            56px 0 53px !important;
    }


    .kbhero-final__content {
        position:
            relative !important;

        width:
            100% !important;

        max-width:
            none !important;
    }


    /* EYEBROW */

    .kbhero-final__eyebrow {
        max-width:
            100% !important;

        margin-bottom:
            21px !important;

        padding:
            8px 11px !important;

        background:
            rgba(255,255,255,.74) !important;

        border:
            1px solid rgba(53,182,66,.25) !important;

        backdrop-filter:
            blur(8px) !important;

        -webkit-backdrop-filter:
            blur(8px) !important;

        font-size:
            10px !important;

        line-height:
            1.35 !important;

        white-space:
            normal !important;
    }


    /* H1 */

    .elementor .kbhero-final h1,
    .kbhero-final h1 {
        width:
            100% !important;

        max-width:
            none !important;

        margin:
            0 !important;

        color:
            #111111 !important;

        font-size:
            clamp(37px,9.5vw,47px) !important;

        line-height:
            1.03 !important;

        letter-spacing:
            -.045em !important;

        text-shadow:
            0 1px 12px rgba(255,255,255,.30) !important;
    }


    .elementor .kbhero-final h1 span,
    .kbhero-final h1 span {
        display:
            inline !important;

        margin-top:
            0 !important;

        color:
            #2CAF39 !important;
    }


    .kbhero-final h1 span::after {
        display:
            none !important;
    }


    /* TEXT */

    .elementor .kbhero-final
    .kbhero-final__lead,
    .kbhero-final
    .kbhero-final__lead {
        width:
            100% !important;

        max-width:
            none !important;

        margin-top:
            23px !important;

        color:
            #444B44 !important;

        font-size:
            15px !important;

        line-height:
            1.65 !important;

        text-shadow:
            0 1px 10px rgba(255,255,255,.40) !important;
    }


    /* BUTTONS */

    .kbhero-final__buttons {
        width:
            100% !important;

        display:
            grid !important;

        grid-template-columns:
            1fr !important;

        gap:
            10px !important;

        margin-top:
            26px !important;
    }


    .elementor .kbhero-final
    a.kbhero-btn,
    .kbhero-final
    a.kbhero-btn {
        width:
            100% !important;

        min-height:
            58px !important;

        padding:
            0 18px !important;

        font-size:
            13.5px !important;
    }


    .elementor .kbhero-final
    a.kbhero-btn--secondary,
    .kbhero-final
    a.kbhero-btn--secondary {
        background:
            rgba(255,255,255,.84) !important;

        backdrop-filter:
            blur(9px) !important;

        -webkit-backdrop-filter:
            blur(9px) !important;
    }


    /* QUICKLINKS */

    .kbhero-final__quicklinks {
        gap:
            7px 12px !important;

        margin-top:
            18px !important;
    }


    .kbhero-final__quicklinks-label {
        width:
            100% !important;

        margin-bottom:
            1px !important;
    }


    .elementor .kbhero-final
    a.kbhero-final__quicklink,
    .kbhero-final
    a.kbhero-final__quicklink {
        color:
            #3D453D !important;

        font-size:
            11px !important;
    }


    /* TRUST */

    .kbhero-final__trust {
        width:
            100% !important;

        max-width:
            none !important;

        display:
            grid !important;

        grid-template-columns:
            1fr !important;

        gap:
            8px !important;

        margin-top:
            24px !important;

        padding-top:
            20px !important;

        border-top:
            1px solid rgba(53,182,66,.16) !important;
    }


    .kbhero-trust {
        width:
            100% !important;

        min-height:
            46px !important;

        padding:
            7px 11px !important;

        border:
            1px solid rgba(255,255,255,.70) !important;

        border-radius:
            10px !important;

        background:
            rgba(255,255,255,.64) !important;

        backdrop-filter:
            blur(9px) !important;

        -webkit-backdrop-filter:
            blur(9px) !important;

        color:
            #333A33 !important;

        font-size:
            12.5px !important;

        box-shadow:
            0 7px 20px rgba(30,60,32,.035) !important;
    }


    .kbhero-trust__icon {
        background:
            rgba(232,247,231,.90) !important;
    }


    .kbhero-final::before,
    .kbhero-final::after {
        display:
            none !important;
    }

}


/* =========================================================
   KLEINE HANDYS
========================================================= */

@media (max-width: 420px) {

    .kbhero-final {
        min-height:
            795px !important;
    }


    .kbhero-final__inner {
        width:
            calc(100% - 28px) !important;

        padding:
            46px 0 45px !important;
    }


    .elementor .kbhero-final h1,
    .kbhero-final h1 {
        font-size:
            37px !important;
    }


    .kbhero-final__video {
        object-position:
            61% center !important;
    }


    .kbhero-final__overlay {
        background:

            linear-gradient(
                180deg,

                rgba(255,255,255,.90) 0%,
                rgba(255,255,255,.85) 25%,
                rgba(255,255,255,.77) 53%,
                rgba(255,255,255,.83) 76%,
                rgba(255,255,255,.93) 100%
            ),

            linear-gradient(
                90deg,
                rgba(255,255,255,.90),
                rgba(255,255,255,.61)
            ) !important;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .kbhero-final *,
    .kbhero-final *::before,
    .kbhero-final *::after {
        animation:
            none !important;

        transition:
            none !important;
    }


    .kbhero-final__eyebrow,
    .kbhero-final h1,
    .kbhero-final__lead,
    .kbhero-final__buttons,
    .kbhero-final__quicklinks,
    .kbhero-final__trust {
        opacity:
            1 !important;

        transform:
            none !important;
    }

}


/* =========================================
   ELEMENTOR HTML WIDGET: f9f71ff
========================================= */

/* =========================================================
   BASIS / ELEMENTOR RESET
========================================================= */

.elementor .kb2-services,
.kb2-services {
    --e-global-color-primary: #35B642 !important;
    --e-global-color-secondary: #111111 !important;
    --e-global-color-text: #292929 !important;
    --e-global-color-accent: #35B642 !important;

    --kb2-green: #35B642;
    --kb2-green-dark: #238B30;
    --kb2-black: #111111;
    --kb2-text: #262C26;
    --kb2-muted: #687068;
    --kb2-border: #E3E8E2;
    --kb2-light: #F3F8F2;
    --kb2-white: #FFFFFF;

    position: relative !important;

    width: 100% !important;

    padding:
        110px 0 !important;

    overflow: hidden !important;

    background:
        radial-gradient(
            circle at 94% 9%,
            rgba(53,182,66,.055),
            transparent 25%
        ),
        #FFFFFF !important;

    color:
        var(--kb2-text) !important;

    font-family:
        "Inter",
        Arial,
        sans-serif !important;
}


.kb2-services *,
.kb2-services *::before,
.kb2-services *::after {
    box-sizing:
        border-box !important;
}


.elementor .kb2-services a,
.elementor .kb2-services a:link,
.elementor .kb2-services a:visited,
.elementor .kb2-services a:hover,
.elementor .kb2-services a:focus,
.elementor .kb2-services a:active,
.kb2-services a {
    text-decoration:
        none !important;

    outline:
        none !important;
}


/* =========================================================
   INNER – 1350PX
========================================================= */

.kb2-services__inner {
    position:
        relative !important;

    z-index:
        2 !important;

    width:
        min(1350px, calc(100% - 64px)) !important;

    margin:
        0 auto !important;
}


/* =========================================================
   DEKO
========================================================= */

.kb2-services__shape {
    position:
        absolute !important;

    width:
        430px !important;

    height:
        430px !important;

    left:
        -290px !important;

    bottom:
        -120px !important;

    border-radius:
        50% !important;

    border:
        1px solid rgba(53,182,66,.09) !important;

    pointer-events:
        none !important;
}


/* =========================================================
   HEADER
========================================================= */

.kb2-services__head {
    display:
        grid !important;

    grid-template-columns:
        minmax(0,.96fr)
        minmax(0,1.04fr) !important;

    align-items:
        end !important;

    gap:
        72px !important;

    margin-bottom:
        49px !important;
}


/* =========================================================
   EYEBROW
========================================================= */

.kb2-services__eyebrow {
    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        10px !important;

    margin-bottom:
        17px !important;

    color:
        var(--kb2-green-dark) !important;

    font-size:
        12px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    letter-spacing:
        .075em !important;

    text-transform:
        uppercase !important;
}


.kb2-services__eyebrow::before {
    content:
        "" !important;

    width:
        29px !important;

    height:
        2px !important;

    flex:
        0 0 29px !important;

    border-radius:
        20px !important;

    background:
        var(--kb2-green) !important;
}


/* =========================================================
   H2
========================================================= */

.elementor .kb2-services h2,
.kb2-services h2 {
    max-width:
        650px !important;

    margin:
        0 !important;

    padding:
        0 !important;

    color:
        var(--kb2-black) !important;

    font-size:
        clamp(39px,3.9vw,55px) !important;

    line-height:
        1.055 !important;

    letter-spacing:
        -.045em !important;

    font-weight:
        600 !important;
}


.elementor .kb2-services h2 span,
.kb2-services h2 span {
    color:
        var(--kb2-green) !important;
}


/* =========================================================
   INTRO
========================================================= */

.kb2-services__intro {
    max-width:
        575px !important;

    justify-self:
        end !important;
}


.kb2-services__intro p {
    margin:
        0 !important;

    color:
        var(--kb2-muted) !important;

    font-size:
        16.5px !important;

    line-height:
        1.72 !important;

    font-weight:
        400 !important;
}


.kb2-services__intro strong {
    color:
        #363D36 !important;

    font-weight:
        550 !important;
}


.kb2-services__intro-line {
    width:
        100% !important;

    height:
        1px !important;

    margin-top:
        22px !important;

    background:
        var(--kb2-border) !important;
}


/* =========================================================
   SERVICE LIST
========================================================= */

.kb2-services__grid {
    list-style:
        none !important;

    display:
        grid !important;

    grid-template-columns:
        repeat(4,minmax(0,1fr)) !important;

    gap:
        16px !important;

    margin:
        0 !important;

    padding:
        0 !important;
}


/* =========================================================
   SERVICE CARD
========================================================= */

.kb2-card {
    position:
        relative !important;

    min-width:
        0 !important;

    min-height:
        340px !important;

    margin:
        0 !important;

    padding:
        0 !important;

    overflow:
        hidden !important;

    border:
        1px solid var(--kb2-border) !important;

    border-radius:
        15px !important;

    background:
        var(--kb2-white) !important;

    box-shadow:
        0 9px 30px rgba(25,58,29,.025) !important;

    transition:
        transform .34s cubic-bezier(.2,.75,.3,1),
        box-shadow .34s ease,
        border-color .34s ease !important;
}


.kb2-card::before {
    content:
        "" !important;

    position:
        absolute !important;

    z-index:
        0 !important;

    width:
        155px !important;

    height:
        155px !important;

    right:
        -85px !important;

    top:
        -85px !important;

    border-radius:
        50% !important;

    background:
        rgba(53,182,66,.05) !important;

    transition:
        transform .45s ease,
        background .35s ease !important;

    pointer-events:
        none !important;
}


.kb2-card:hover {
    transform:
        translateY(-7px) !important;

    border-color:
        rgba(53,182,66,.34) !important;

    box-shadow:
        0 24px 55px rgba(24,52,27,.09) !important;
}


.kb2-card:hover::before {
    transform:
        scale(1.7) !important;

    background:
        rgba(53,182,66,.08) !important;
}


/* =========================================================
   FULL CARD LINK
========================================================= */

.elementor .kb2-services
a.kb2-card__linkwrap,
.elementor .kb2-services
a.kb2-card__linkwrap:visited,
.kb2-services
a.kb2-card__linkwrap {
    position:
        relative !important;

    z-index:
        2 !important;

    width:
        100% !important;

    min-height:
        338px !important;

    height:
        100% !important;

    display:
        flex !important;

    flex-direction:
        column !important;

    padding:
        27px !important;

    color:
        inherit !important;

    background:
        transparent !important;
}


/* =========================================================
   CARD TOP
========================================================= */

.kb2-card__top {
    display:
        flex !important;

    align-items:
        flex-start !important;

    justify-content:
        space-between !important;

    gap:
        18px !important;

    margin-bottom:
        37px !important;
}


/* =========================================================
   ICON
========================================================= */

.kb2-card__icon {
    width:
        52px !important;

    height:
        52px !important;

    flex:
        0 0 52px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        11px !important;

    background:
        var(--kb2-light) !important;

    color:
        var(--kb2-green-dark) !important;

    font-size:
        19px !important;

    transition:
        background .3s ease,
        color .3s ease,
        transform .3s ease !important;
}


.kb2-card__icon i {
    color:
        inherit !important;
}


.kb2-card:hover
.kb2-card__icon {
    color:
        #ffffff !important;

    background:
        var(--kb2-green) !important;

    transform:
        translateY(-2px) !important;
}


/* =========================================================
   NUMBER
========================================================= */

.kb2-card__number {
    padding-top:
        3px !important;

    color:
        #AEB4AE !important;

    font-size:
        11px !important;

    line-height:
        1 !important;

    font-weight:
        550 !important;

    letter-spacing:
        .09em !important;
}


/* =========================================================
   CARD H3
========================================================= */

.elementor .kb2-services
.kb2-card h3,
.kb2-services
.kb2-card h3 {
    margin:
        0 0 12px !important;

    padding:
        0 !important;

    color:
        var(--kb2-black) !important;

    font-size:
        21px !important;

    line-height:
        1.24 !important;

    letter-spacing:
        -.022em !important;

    font-weight:
        600 !important;
}


/* =========================================================
   CARD TEXT
========================================================= */

.kb2-card__description {
    margin:
        0 !important;

    color:
        var(--kb2-muted) !important;

    font-size:
        13.5px !important;

    line-height:
        1.65 !important;
}


/* =========================================================
   LINK UNTEN
========================================================= */

.kb2-card__bottom {
    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        space-between !important;

    gap:
        15px !important;

    margin-top:
        auto !important;

    padding-top:
        27px !important;
}


/* BESCHREIBENDER ANKERTEXT */

.kb2-card__anchor {
    color:
        var(--kb2-black) !important;

    font-size:
        12.5px !important;

    line-height:
        1.3 !important;

    font-weight:
        600 !important;

    transition:
        color .25s ease !important;
}


.kb2-card:hover
.kb2-card__anchor {
    color:
        var(--kb2-green-dark) !important;
}


/* ARROW */

.kb2-card__arrow {
    width:
        35px !important;

    height:
        35px !important;

    flex:
        0 0 35px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border:
        1px solid #DFE3DE !important;

    border-radius:
        50% !important;

    color:
        var(--kb2-black) !important;

    background:
        #ffffff !important;

    font-size:
        10px !important;

    transition:
        background .3s ease,
        color .3s ease,
        border-color .3s ease,
        transform .3s ease !important;
}


.kb2-card__arrow i {
    color:
        inherit !important;
}


.kb2-card:hover
.kb2-card__arrow {
    color:
        #ffffff !important;

    background:
        var(--kb2-green) !important;

    border-color:
        var(--kb2-green) !important;

    transform:
        translateX(2px) !important;
}


/* =========================================================
   PROGRESSIVE ANIMATION

   OHNE JS:
   Inhalt bleibt sichtbar.

   ERST wenn JS .kb2-ready setzt,
   werden die Elemente vorbereitet.
========================================================= */

@media (prefers-reduced-motion: no-preference) {

    .kb2-services.kb2-ready
    .kb2-card,
    .kb2-services.kb2-ready
    .kb2-special,
    .kb2-services.kb2-ready
    .kb2-cta {
        opacity:
            0 !important;

        transform:
            translateY(27px) !important;
    }


    .kb2-services.kb2-ready
    .kb2-card.kb2-visible,
    .kb2-services.kb2-ready
    .kb2-special.kb2-visible,
    .kb2-services.kb2-ready
    .kb2-cta.kb2-visible {
        opacity:
            1 !important;

        transform:
            translateY(0) !important;
    }


    .kb2-services.kb2-ready
    .kb2-card {
        transition:
            opacity .65s ease,
            transform .65s cubic-bezier(.2,.75,.3,1),
            box-shadow .34s ease,
            border-color .34s ease !important;
    }


    .kb2-services.kb2-ready
    .kb2-card:nth-child(1) {
        transition-delay:
            .03s !important;
    }


    .kb2-services.kb2-ready
    .kb2-card:nth-child(2) {
        transition-delay:
            .09s !important;
    }


    .kb2-services.kb2-ready
    .kb2-card:nth-child(3) {
        transition-delay:
            .15s !important;
    }


    .kb2-services.kb2-ready
    .kb2-card:nth-child(4) {
        transition-delay:
            .21s !important;
    }


    .kb2-services.kb2-ready
    .kb2-special,
    .kb2-services.kb2-ready
    .kb2-cta {
        transition:
            opacity .7s ease,
            transform .7s cubic-bezier(.2,.75,.3,1) !important;
    }

}


/* =========================================================
   SPEZIALTRANSPORT
========================================================= */

.kb2-special {
    position:
        relative !important;

    overflow:
        hidden !important;

    display:
        grid !important;

    grid-template-columns:
        auto minmax(0,1fr) auto !important;

    align-items:
        center !important;

    gap:
        26px !important;

    margin-top:
        16px !important;

    padding:
        27px 30px !important;

    border-radius:
        15px !important;

    background:
        #111111 !important;

    color:
        #ffffff !important;
}


.kb2-special::after {
    content:
        "" !important;

    position:
        absolute !important;

    width:
        320px !important;

    height:
        320px !important;

    right:
        -120px !important;

    top:
        -200px !important;

    border-radius:
        50% !important;

    border:
        45px solid rgba(53,182,66,.11) !important;

    pointer-events:
        none !important;
}


/* ICON */

.kb2-special__icon {
    position:
        relative !important;

    z-index:
        2 !important;

    width:
        57px !important;

    height:
        57px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        12px !important;

    color:
        #ffffff !important;

    background:
        var(--kb2-green) !important;

    font-size:
        20px !important;
}


.kb2-special__icon i {
    color:
        #ffffff !important;
}


/* TEXT */

.kb2-special__text {
    position:
        relative !important;

    z-index:
        2 !important;

    min-width:
        0 !important;
}


.kb2-special__label {
    display:
        block !important;

    margin-bottom:
        7px !important;

    color:
        #75DA7F !important;

    font-size:
        10.5px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    text-transform:
        uppercase !important;

    letter-spacing:
        .09em !important;
}


.elementor .kb2-services
.kb2-special h3,
.kb2-services
.kb2-special h3 {
    margin:
        0 0 5px !important;

    padding:
        0 !important;

    color:
        #ffffff !important;

    font-size:
        19px !important;

    line-height:
        1.3 !important;

    font-weight:
        550 !important;

    letter-spacing:
        -.015em !important;
}


.kb2-special p {
    margin:
        0 !important;

    color:
        rgba(255,255,255,.68) !important;

    font-size:
        13px !important;

    line-height:
        1.58 !important;
}


/* BUTTON */

.elementor .kb2-services
a.kb2-special__button,
.elementor .kb2-services
a.kb2-special__button:visited,
.kb2-services
a.kb2-special__button {
    position:
        relative !important;

    z-index:
        2 !important;

    min-height:
        49px !important;

    display:
        inline-flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    gap:
        9px !important;

    padding:
        0 20px !important;

    border:
        1px solid #ffffff !important;

    border-radius:
        8px !important;

    color:
        #111111 !important;

    background:
        #ffffff !important;

    font-size:
        12.5px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    white-space:
        nowrap !important;

    transition:
        transform .25s ease,
        background .25s ease !important;
}


.elementor .kb2-services
a.kb2-special__button:hover,
.kb2-services
a.kb2-special__button:hover {
    color:
        #111111 !important;

    background:
        #F1F1F1 !important;

    transform:
        translateY(-2px) !important;
}


.kb2-special__button i {
    color:
        #238B30 !important;

    font-size:
        10px !important;
}


/* =========================================================
   CTA UNTEN
========================================================= */

.kb2-cta {
    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        space-between !important;

    gap:
        30px !important;

    margin-top:
        39px !important;

    padding-top:
        31px !important;

    border-top:
        1px solid var(--kb2-border) !important;
}


.kb2-cta__text {
    display:
        flex !important;

    align-items:
        center !important;

    gap:
        12px !important;

    color:
        #545C54 !important;

    font-size:
        13.5px !important;

    line-height:
        1.5 !important;
}


.kb2-cta__check {
    width:
        30px !important;

    height:
        30px !important;

    flex:
        0 0 30px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        50% !important;

    background:
        rgba(53,182,66,.10) !important;

    color:
        var(--kb2-green-dark) !important;

    font-size:
        10px !important;
}


.kb2-cta__check i {
    color:
        var(--kb2-green-dark) !important;
}


/* CTA LINK */

.elementor .kb2-services
a.kb2-cta__button,
.elementor .kb2-services
a.kb2-cta__button:visited,
.kb2-services
a.kb2-cta__button {
    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        10px !important;

    color:
        var(--kb2-green-dark) !important;

    font-size:
        13.5px !important;

    font-weight:
        600 !important;

    white-space:
        nowrap !important;
}


.kb2-cta__button i {
    color:
        var(--kb2-green-dark) !important;

    font-size:
        11px !important;

    transition:
        transform .25s ease !important;
}


.kb2-cta__button:hover i {
    transform:
        translateX(4px) !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1050px) {

    .kb2-services {
        padding:
            90px 0 !important;
    }


    .kb2-services__inner {
        width:
            min(100% - 44px,900px) !important;
    }


    .kb2-services__head {
        gap:
            40px !important;
    }


    .kb2-services__grid {
        grid-template-columns:
            repeat(2,minmax(0,1fr)) !important;
    }


    .kb2-card,
    .elementor .kb2-services
    a.kb2-card__linkwrap,
    .kb2-services
    a.kb2-card__linkwrap {
        min-height:
            310px !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .kb2-services {
        padding:
            72px 0 !important;
    }


    .kb2-services__inner {
        width:
            calc(100% - 32px) !important;
    }


    /* HEAD */

    .kb2-services__head {
        grid-template-columns:
            1fr !important;

        gap:
            22px !important;

        margin-bottom:
            35px !important;
    }


    .kb2-services__eyebrow {
        margin-bottom:
            14px !important;

        font-size:
            10.5px !important;
    }


    .elementor .kb2-services h2,
    .kb2-services h2 {
        font-size:
            clamp(35px,9.7vw,46px) !important;

        line-height:
            1.07 !important;
    }


    .kb2-services__intro {
        max-width:
            none !important;

        justify-self:
            stretch !important;
    }


    .kb2-services__intro p {
        font-size:
            15px !important;

        line-height:
            1.65 !important;
    }


    /* CARDS */

    .kb2-services__grid {
        grid-template-columns:
            1fr !important;

        gap:
            12px !important;
    }


    .kb2-card,
    .elementor .kb2-services
    a.kb2-card__linkwrap,
    .kb2-services
    a.kb2-card__linkwrap {
        min-height:
            280px !important;
    }


    .elementor .kb2-services
    a.kb2-card__linkwrap,
    .kb2-services
    a.kb2-card__linkwrap {
        padding:
            23px !important;
    }


    .kb2-card__top {
        margin-bottom:
            30px !important;
    }


    .kb2-card__icon {
        width:
            48px !important;

        height:
            48px !important;

        flex-basis:
            48px !important;

        font-size:
            17px !important;
    }


    .elementor .kb2-services
    .kb2-card h3,
    .kb2-services
    .kb2-card h3 {
        font-size:
            20px !important;
    }


    /* SPECIAL */

    .kb2-special {
        grid-template-columns:
            auto minmax(0,1fr) !important;

        gap:
            17px !important;

        margin-top:
            12px !important;

        padding:
            23px !important;
    }


    .kb2-special__icon {
        align-self:
            start !important;

        width:
            50px !important;

        height:
            50px !important;
    }


    .elementor .kb2-services
    a.kb2-special__button,
    .kb2-services
    a.kb2-special__button {
        grid-column:
            1 / -1 !important;

        width:
            100% !important;

        margin-top:
            3px !important;
    }


    /* CTA */

    .kb2-cta {
        align-items:
            flex-start !important;

        flex-direction:
            column !important;

        gap:
            19px !important;

        margin-top:
            29px !important;

        padding-top:
            25px !important;
    }


    .kb2-cta__text {
        align-items:
            flex-start !important;
    }


    .elementor .kb2-services
    a.kb2-cta__button,
    .kb2-services
    a.kb2-cta__button {
        min-height:
            46px !important;
    }


    .kb2-services__shape {
        display:
            none !important;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .kb2-card,
    .kb2-special,
    .kb2-cta {
        opacity:
            1 !important;

        transform:
            none !important;

        transition:
            none !important;
    }

}


/* =========================================
   ELEMENTOR HTML WIDGET: 0b49c7e
========================================= */

/* =========================================================
   BASIS
========================================================= */

.elementor .kb3-section,
.kb3-section {
    --e-global-color-primary: #35B642 !important;
    --e-global-color-secondary: #111111 !important;
    --e-global-color-text: #292929 !important;
    --e-global-color-accent: #35B642 !important;

    --green: #35B642;
    --green-dark: #238B30;
    --black: #111111;
    --text: #292929;
    --muted: #687068;
    --border: #DFE5DF;
    --soft: #EDF7EC;

    position: relative !important;

    width: 100% !important;

    overflow: hidden !important;

    background:
        linear-gradient(
            90deg,
            #F7F9F6 0%,
            #F7F9F6 42%,
            #FFFFFF 42%,
            #FFFFFF 100%
        ) !important;

    font-family:
        "Inter",
        Arial,
        sans-serif !important;
}


.kb3-section *,
.kb3-section *::before,
.kb3-section *::after {
    box-sizing:
        border-box !important;
}


.elementor .kb3-section a,
.elementor .kb3-section a:link,
.elementor .kb3-section a:visited,
.elementor .kb3-section a:hover,
.elementor .kb3-section a:focus,
.elementor .kb3-section a:active,
.kb3-section a {
    text-decoration:
        none !important;

    outline:
        none !important;
}


/* =========================================================
   INNER
========================================================= */

.kb3-inner {
    position: relative !important;

    z-index: 2 !important;

    width:
        min(1350px, calc(100% - 64px)) !important;

    min-height:
        790px !important;

    margin:
        0 auto !important;

    display:
        grid !important;

    grid-template-columns:
        45% 55% !important;

    align-items:
        center !important;
}


/* =========================================================
   MEDIA COLUMN
========================================================= */

.kb3-media-column {
    position: relative !important;

    min-width: 0 !important;

    display: flex !important;

    align-items:
        center !important;

    justify-content:
        flex-start !important;

    padding:
        70px 55px 70px 0 !important;
}


/* GRÜNER RAHMEN */

.kb3-media-column::before {
    content: "" !important;

    position: absolute !important;

    width:
        calc(100% - 70px) !important;

    height:
        calc(100% - 185px) !important;

    left:
        20px !important;

    top:
        112px !important;

    border:
        2px solid rgba(53,182,66,.30) !important;

    transform:
        translate(20px,20px) !important;

    pointer-events:
        none !important;
}


/* =========================================================
   FIGURE / VIDEO
========================================================= */

.kb3-media {
    position: relative !important;

    z-index: 2 !important;

    width: 100% !important;

    height:
        620px !important;

    margin:
        0 !important;

    overflow:
        hidden !important;

    border:
        8px solid #FFFFFF !important;

    background:
        #111111 !important;

    box-shadow:
        0 22px 60px rgba(18,45,21,.12),
        0 4px 12px rgba(0,0,0,.05) !important;

    transition:
        opacity .9s ease,
        transform .9s cubic-bezier(.2,.75,.3,1) !important;
}


/* =========================================================
   VIDEO
========================================================= */

.kb3-video {
    position: absolute !important;

    inset:
        0 !important;

    width:
        100% !important;

    height:
        100% !important;

    display:
        block !important;

    object-fit:
        cover !important;

    object-position:
        center center !important;

    border:
        0 !important;

    pointer-events:
        none !important;

    transform:
        scale(1.025) !important;

    animation:
        kbVideoMove
        15s
        ease-in-out
        infinite
        alternate !important;
}


@keyframes kbVideoMove {

    from {
        transform:
            scale(1.025);
    }

    to {
        transform:
            scale(1.07);
    }

}


/* FILM LOOK */

.kb3-media::after {
    content: "" !important;

    position: absolute !important;

    z-index: 2 !important;

    inset:
        0 !important;

    background:
        linear-gradient(
            180deg,
            rgba(0,0,0,.01) 0%,
            rgba(0,0,0,.025) 54%,
            rgba(0,0,0,.18) 100%
        ) !important;

    pointer-events:
        none !important;
}


/* =========================================================
   VIDEO CAPTION
========================================================= */

.kb3-media-label {
    position: absolute !important;

    z-index: 5 !important;

    left:
        22px !important;

    bottom:
        22px !important;

    display:
        flex !important;

    align-items:
        center !important;

    gap:
        12px !important;

    margin:
        0 !important;

    padding:
        12px 16px !important;

    background:
        rgba(255,255,255,.95) !important;

    box-shadow:
        0 7px 24px rgba(0,0,0,.10) !important;

    backdrop-filter:
        blur(8px) !important;

    -webkit-backdrop-filter:
        blur(8px) !important;
}


.kb3-media-label-icon {
    width:
        36px !important;

    height:
        36px !important;

    flex:
        0 0 36px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        8px !important;

    color:
        #FFFFFF !important;

    background:
        var(--green) !important;

    font-size:
        13px !important;
}


.kb3-media-label-icon i {
    color:
        #FFFFFF !important;
}


.kb3-media-label-text {
    display:
        flex !important;

    flex-direction:
        column !important;

    gap:
        3px !important;
}


.kb3-media-label-text strong {
    color:
        #111111 !important;

    font-size:
        12px !important;

    line-height:
        1.2 !important;

    font-weight:
        600 !important;
}


.kb3-media-label-text span {
    color:
        #717871 !important;

    font-size:
        10.5px !important;

    line-height:
        1.3 !important;
}


/* =========================================================
   DEKO DOTS
========================================================= */

.kb3-media-dots {
    position: absolute !important;

    z-index: 1 !important;

    width:
        105px !important;

    height:
        105px !important;

    left:
        -28px !important;

    bottom:
        38px !important;

    opacity:
        .4 !important;

    background-image:
        radial-gradient(
            circle,
            rgba(53,182,66,.65) 1.3px,
            transparent 1.5px
        ) !important;

    background-size:
        13px 13px !important;

    pointer-events:
        none !important;
}


/* =========================================================
   CONTENT
========================================================= */

.kb3-content {
    min-width:
        0 !important;

    padding:
        80px 0 80px 65px !important;

    transition:
        opacity .85s ease,
        transform .85s cubic-bezier(.2,.75,.3,1) !important;
}


/* =========================================================
   EYEBROW
========================================================= */

.kb3-eyebrow {
    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        10px !important;

    margin-bottom:
        18px !important;

    color:
        var(--green-dark) !important;

    font-size:
        12px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    letter-spacing:
        .08em !important;

    text-transform:
        uppercase !important;
}


.kb3-eyebrow::before {
    content:
        "" !important;

    width:
        29px !important;

    height:
        2px !important;

    flex:
        0 0 29px !important;

    background:
        var(--green) !important;
}


/* =========================================================
   H2
========================================================= */

.elementor .kb3-section h2,
.kb3-section h2 {
    max-width:
        700px !important;

    margin:
        0 !important;

    padding:
        0 !important;

    color:
        var(--black) !important;

    font-family:
        "Inter",
        Arial,
        sans-serif !important;

    font-size:
        clamp(40px,4vw,56px) !important;

    line-height:
        1.055 !important;

    letter-spacing:
        -.045em !important;

    font-weight:
        600 !important;
}


.elementor .kb3-section h2 span,
.kb3-section h2 span {
    color:
        var(--green) !important;
}


/* =========================================================
   LEAD
========================================================= */

.kb3-lead {
    max-width:
        655px !important;

    margin:
        22px 0 0 !important;

    color:
        var(--muted) !important;

    font-size:
        15.5px !important;

    line-height:
        1.72 !important;
}


.kb3-lead strong {
    color:
        #343B34 !important;

    font-weight:
        550 !important;
}


/* =========================================================
   FAKTEN
========================================================= */

.kb3-facts {
    list-style:
        none !important;

    display:
        flex !important;

    align-items:
        center !important;

    flex-wrap:
        wrap !important;

    gap:
        8px !important;

    margin:
        24px 0 0 !important;

    padding:
        0 !important;
}


.kb3-fact {
    min-height:
        34px !important;

    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        7px !important;

    padding:
        0 11px !important;

    border:
        1px solid rgba(53,182,66,.14) !important;

    border-radius:
        8px !important;

    color:
        #505850 !important;

    background:
        #F5F9F4 !important;

    font-size:
        10.5px !important;

    line-height:
        1.2 !important;

    font-weight:
        550 !important;
}


.kb3-fact i {
    color:
        var(--green-dark) !important;

    font-size:
        9px !important;
}


/* =========================================================
   BENEFITS LIST
========================================================= */

.kb3-benefits {
    list-style:
        none !important;

    display:
        grid !important;

    grid-template-columns:
        repeat(2,minmax(0,1fr)) !important;

    gap:
        13px !important;

    margin:
        31px 0 0 !important;

    padding:
        0 !important;
}


/* =========================================================
   BENEFIT
========================================================= */

.kb3-benefit {
    position:
        relative !important;

    min-width:
        0 !important;

    min-height:
        163px !important;

    margin:
        0 !important;

    padding:
        21px !important;

    overflow:
        hidden !important;

    border:
        1px solid var(--border) !important;

    border-radius:
        12px !important;

    background:
        #FFFFFF !important;

    box-shadow:
        0 8px 25px rgba(27,68,32,.025) !important;

    transition:
        opacity .6s ease,
        transform .6s ease,
        border-color .25s ease,
        box-shadow .25s ease !important;
}


.kb3-benefit:hover {
    border-color:
        rgba(53,182,66,.35) !important;

    box-shadow:
        0 12px 35px rgba(27,68,32,.07) !important;
}


/* KLEINE GRÜNE ECKE */

.kb3-benefit::after {
    content: "" !important;

    position: absolute !important;

    right:
        0 !important;

    top:
        0 !important;

    width:
        35px !important;

    height:
        3px !important;

    background:
        var(--green) !important;

    opacity:
        .65 !important;
}


/* =========================================================
   BENEFIT HEADER
========================================================= */

.kb3-benefit-head {
    display:
        flex !important;

    align-items:
        center !important;

    gap:
        11px !important;

    margin-bottom:
        13px !important;
}


.kb3-benefit-icon {
    width:
        39px !important;

    height:
        39px !important;

    flex:
        0 0 39px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        9px !important;

    color:
        var(--green-dark) !important;

    background:
        #EDF7EC !important;

    font-size:
        14px !important;

    transition:
        background .25s ease,
        color .25s ease,
        transform .25s ease !important;
}


.kb3-benefit-icon i {
    color:
        inherit !important;
}


.kb3-benefit:hover
.kb3-benefit-icon {
    color:
        #FFFFFF !important;

    background:
        var(--green) !important;

    transform:
        translateY(-2px) !important;
}


.elementor .kb3-section
.kb3-benefit h3,
.kb3-section
.kb3-benefit h3 {
    margin:
        0 !important;

    padding:
        0 !important;

    color:
        #111111 !important;

    font-size:
        15.5px !important;

    line-height:
        1.3 !important;

    font-weight:
        600 !important;
}


.elementor .kb3-section
.kb3-benefit p,
.kb3-section
.kb3-benefit p {
    margin:
        0 !important;

    color:
        var(--muted) !important;

    font-size:
        12.2px !important;

    line-height:
        1.62 !important;
}


/* =========================================================
   PROGRESSIVE ENTRANCE ANIMATION

   Standardmäßig ALLES sichtbar.
   Nur bei JS + Motion werden Elemente zunächst ausgeblendet.
========================================================= */

@media (prefers-reduced-motion: no-preference) {

    .kb3-section.kb3-ready
    .kb3-media,
    .kb3-section.kb3-ready
    .kb3-content,
    .kb3-section.kb3-ready
    .kb3-benefit {
        opacity:
            0 !important;
    }


    .kb3-section.kb3-ready
    .kb3-media {
        transform:
            translateX(-25px) !important;
    }


    .kb3-section.kb3-ready
    .kb3-content {
        transform:
            translateY(25px) !important;
    }


    .kb3-section.kb3-ready
    .kb3-benefit {
        transform:
            translateY(18px) !important;
    }


    .kb3-section.kb3-ready
    .kb3-media.kb3-visible,
    .kb3-section.kb3-ready
    .kb3-content.kb3-visible,
    .kb3-section.kb3-ready
    .kb3-benefit.kb3-visible {
        opacity:
            1 !important;

        transform:
            none !important;
    }


    .kb3-section.kb3-ready
    .kb3-benefit:nth-child(2) {
        transition-delay:
            .06s !important;
    }


    .kb3-section.kb3-ready
    .kb3-benefit:nth-child(3) {
        transition-delay:
            .12s !important;
    }


    .kb3-section.kb3-ready
    .kb3-benefit:nth-child(4) {
        transition-delay:
            .18s !important;
    }

}


/* =========================================================
   BUTTONS
========================================================= */

.kb3-buttons {
    display:
        flex !important;

    align-items:
        center !important;

    flex-wrap:
        wrap !important;

    gap:
        12px !important;

    margin-top:
        30px !important;
}


.elementor .kb3-section a.kb3-btn,
.elementor .kb3-section a.kb3-btn:visited,
.kb3-section a.kb3-btn {
    min-height:
        51px !important;

    display:
        inline-flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    gap:
        9px !important;

    padding:
        0 20px !important;

    border-radius:
        9px !important;

    font-size:
        13px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    transition:
        background .25s ease,
        color .25s ease,
        border-color .25s ease,
        transform .25s ease !important;
}


/* PRIMARY */

.elementor .kb3-section
a.kb3-btn-green,
.elementor .kb3-section
a.kb3-btn-green:visited,
.kb3-section
a.kb3-btn-green {
    color:
        #FFFFFF !important;

    background:
        var(--green) !important;

    border:
        1px solid var(--green) !important;

    box-shadow:
        0 9px 22px rgba(35,139,48,.16) !important;
}


.elementor .kb3-section
a.kb3-btn-green:hover,
.kb3-section
a.kb3-btn-green:hover {
    color:
        #FFFFFF !important;

    background:
        var(--green-dark) !important;

    border-color:
        var(--green-dark) !important;

    transform:
        translateY(-2px) !important;
}


/* SECONDARY */

.elementor .kb3-section
a.kb3-btn-plain,
.elementor .kb3-section
a.kb3-btn-plain:visited,
.kb3-section
a.kb3-btn-plain {
    color:
        #111111 !important;

    background:
        transparent !important;

    border:
        1px solid transparent !important;
}


.elementor .kb3-section
a.kb3-btn-plain:hover,
.kb3-section
a.kb3-btn-plain:hover {
    color:
        var(--green-dark) !important;

    transform:
        translateX(3px) !important;
}


.kb3-btn i {
    color:
        inherit !important;

    font-size:
        10px !important;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1100px) {

    .kb3-inner {
        width:
            min(100% - 44px,950px) !important;

        grid-template-columns:
            43% 57% !important;
    }


    .kb3-media-column {
        padding-right:
            35px !important;
    }


    .kb3-media {
        height:
            570px !important;
    }


    .kb3-content {
        padding-left:
            42px !important;
    }


    .kb3-benefits {
        grid-template-columns:
            1fr !important;
    }


    .kb3-benefit {
        min-height:
            0 !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .kb3-section {
        background:
            #FFFFFF !important;
    }


    .kb3-inner {
        width:
            calc(100% - 32px) !important;

        min-height:
            0 !important;

        display:
            block !important;

        padding-top:
            38px !important;
    }


    /* MEDIA */

    .kb3-media-column {
        width:
            100% !important;

        padding:
            0 12px 0 0 !important;
    }


    .kb3-media-column::before {
        width:
            calc(100% - 18px) !important;

        height:
            calc(100% - 15px) !important;

        left:
            13px !important;

        top:
            12px !important;

        transform:
            translate(10px,10px) !important;
    }


    .kb3-media {
        height:
            430px !important;

        border-width:
            6px !important;
    }


    .kb3-media-dots {
        display:
            none !important;
    }


    /* CONTENT */

    .kb3-content {
        padding:
            68px 0 70px !important;
    }


    .kb3-eyebrow {
        font-size:
            10.5px !important;
    }


    .elementor .kb3-section h2,
    .kb3-section h2 {
        font-size:
            clamp(35px,10vw,46px) !important;
    }


    .kb3-lead {
        font-size:
            15px !important;
    }


    /* FACTS */

    .kb3-facts {
        display:
            grid !important;

        grid-template-columns:
            1fr 1fr !important;

        gap:
            7px !important;
    }


    .kb3-fact {
        justify-content:
            flex-start !important;

        min-width:
            0 !important;
    }


    /* BENEFITS */

    .kb3-benefits {
        grid-template-columns:
            1fr !important;

        margin-top:
            28px !important;
    }


    .kb3-benefit {
        min-height:
            0 !important;

        padding:
            19px !important;
    }


    /* BUTTONS */

    .kb3-buttons {
        display:
            grid !important;

        grid-template-columns:
            1fr !important;

        margin-top:
            27px !important;
    }


    .elementor .kb3-section
    a.kb3-btn,
    .kb3-section
    a.kb3-btn {
        width:
            100% !important;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 450px) {

    .kb3-media {
        height:
            360px !important;
    }


    .kb3-facts {
        grid-template-columns:
            1fr !important;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .kb3-video {
        animation:
            none !important;

        transform:
            scale(1.025) !important;
    }


    .kb3-media,
    .kb3-content,
    .kb3-benefit {
        opacity:
            1 !important;

        transform:
            none !important;

        transition:
            none !important;
    }

}



.elementor .kb3-section a.kb3-origin-link,
.elementor .kb3-section a.kb3-origin-link:visited,
.kb3-section a.kb3-origin-link {
    color: #238B30 !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(35,139,48,.28) !important;
}

.elementor .kb3-section a.kb3-origin-link:hover,
.kb3-section a.kb3-origin-link:hover {
    color: #35B642 !important;
    border-bottom-color: #35B642 !important;
}


/* =========================================
   ELEMENTOR HTML WIDGET: 4f54b26
========================================= */

/* =========================================================
   BASIS
========================================================= */

.elementor .kb4-process,
.kb4-process {
    --e-global-color-primary: #35B642 !important;
    --e-global-color-secondary: #111111 !important;
    --e-global-color-text: #2B2B2B !important;
    --e-global-color-accent: #35B642 !important;

    --kb4-green: #35B642;
    --kb4-green-dark: #238B30;
    --kb4-black: #111111;
    --kb4-text: #2B2B2B;
    --kb4-muted: #687068;
    --kb4-light: #F5F8F4;
    --kb4-light-green: #EEF7ED;
    --kb4-border: #E2E8E1;
    --kb4-white: #FFFFFF;

    position: relative !important;

    width: 100% !important;

    padding:
        120px 0 !important;

    overflow:
        hidden !important;

    background:
        radial-gradient(
            circle at 8% 15%,
            rgba(53,182,66,.08),
            transparent 28%
        ),
        radial-gradient(
            circle at 93% 84%,
            rgba(53,182,66,.06),
            transparent 25%
        ),
        #F8FAF7 !important;

    color:
        var(--kb4-text) !important;

    font-family:
        "Inter",
        Arial,
        sans-serif !important;
}


.kb4-process *,
.kb4-process *::before,
.kb4-process *::after {
    box-sizing:
        border-box !important;
}


.elementor .kb4-process a,
.elementor .kb4-process a:link,
.elementor .kb4-process a:visited,
.elementor .kb4-process a:hover,
.elementor .kb4-process a:focus,
.elementor .kb4-process a:active,
.kb4-process a {
    text-decoration:
        none !important;

    outline:
        none !important;
}


/* =========================================================
   INNER
========================================================= */

.kb4-process__inner {
    position:
        relative !important;

    z-index:
        3 !important;

    width:
        min(1350px, calc(100% - 64px)) !important;

    margin:
        0 auto !important;

    display:
        grid !important;

    grid-template-columns:
        minmax(340px,.78fr)
        minmax(0,1.22fr) !important;

    gap:
        90px !important;

    align-items:
        start !important;
}


/* =========================================================
   DEKORATION
========================================================= */

.kb4-process::before {
    content:
        "" !important;

    position:
        absolute !important;

    width:
        520px !important;

    height:
        520px !important;

    left:
        -320px !important;

    top:
        -270px !important;

    border-radius:
        50% !important;

    border:
        1px solid rgba(53,182,66,.12) !important;

    pointer-events:
        none !important;
}


.kb4-process::after {
    content:
        "" !important;

    position:
        absolute !important;

    width:
        420px !important;

    height:
        420px !important;

    right:
        -270px !important;

    bottom:
        -250px !important;

    border-radius:
        50% !important;

    border:
        70px solid rgba(53,182,66,.035) !important;

    pointer-events:
        none !important;
}


/* =========================================================
   LINKE SEITE / STICKY
========================================================= */

.kb4-intro {
    position:
        sticky !important;

    top:
        105px !important;

    align-self:
        start !important;

    transition:
        opacity .8s ease,
        transform .8s cubic-bezier(.2,.75,.3,1) !important;
}


/* WP ADMINBAR */

body.admin-bar
.kb4-intro {
    top:
        137px !important;
}


/* =========================================================
   EYEBROW
========================================================= */

.kb4-eyebrow {
    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        10px !important;

    margin-bottom:
        19px !important;

    color:
        var(--kb4-green-dark) !important;

    font-size:
        12px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    text-transform:
        uppercase !important;

    letter-spacing:
        .09em !important;
}


.kb4-eyebrow::before {
    content:
        "" !important;

    width:
        28px !important;

    height:
        2px !important;

    flex:
        0 0 28px !important;

    border-radius:
        20px !important;

    background:
        var(--kb4-green) !important;
}


/* =========================================================
   H2
========================================================= */

.elementor .kb4-process
.kb4-intro h2,
.kb4-process
.kb4-intro h2 {
    max-width:
        520px !important;

    margin:
        0 !important;

    padding:
        0 !important;

    color:
        var(--kb4-black) !important;

    font-family:
        "Inter",
        Arial,
        sans-serif !important;

    font-size:
        clamp(39px,4vw,56px) !important;

    line-height:
        1.055 !important;

    letter-spacing:
        -.045em !important;

    font-weight:
        600 !important;
}


.elementor .kb4-process
.kb4-intro h2 span,
.kb4-process
.kb4-intro h2 span {
    color:
        var(--kb4-green) !important;
}


/* =========================================================
   INTRO TEXT
========================================================= */

.kb4-intro__text {
    max-width:
        485px !important;

    margin:
        23px 0 0 !important;

    color:
        var(--kb4-muted) !important;

    font-size:
        15.5px !important;

    line-height:
        1.72 !important;
}


.kb4-intro__text strong {
    color:
        #343B34 !important;

    font-weight:
        550 !important;
}


/* =========================================================
   HINWEISBOX
========================================================= */

.kb4-note {
    position:
        relative !important;

    max-width:
        500px !important;

    margin-top:
        34px !important;

    padding:
        20px 20px 20px 67px !important;

    border:
        1px solid rgba(53,182,66,.18) !important;

    border-radius:
        13px !important;

    background:
        rgba(255,255,255,.88) !important;

    box-shadow:
        0 12px 35px rgba(28,67,32,.055) !important;
}


.kb4-note__icon {
    position:
        absolute !important;

    left:
        18px !important;

    top:
        18px !important;

    width:
        34px !important;

    height:
        34px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        8px !important;

    color:
        #FFFFFF !important;

    background:
        var(--kb4-green) !important;

    font-size:
        14px !important;
}


.kb4-note__icon i {
    color:
        #FFFFFF !important;
}


.kb4-note strong {
    display:
        block !important;

    margin-bottom:
        5px !important;

    color:
        var(--kb4-black) !important;

    font-size:
        13.5px !important;

    line-height:
        1.4 !important;

    font-weight:
        600 !important;
}


.kb4-note p {
    margin:
        0 !important;

    color:
        var(--kb4-muted) !important;

    font-size:
        11.8px !important;

    line-height:
        1.58 !important;
}


/* =========================================================
   BUTTON
========================================================= */

.elementor .kb4-process
a.kb4-intro__button,
.elementor .kb4-process
a.kb4-intro__button:visited,
.kb4-process
a.kb4-intro__button {
    min-height:
        54px !important;

    display:
        inline-flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    gap:
        11px !important;

    margin-top:
        27px !important;

    padding:
        0 23px !important;

    border:
        1px solid #35B642 !important;

    border-radius:
        8px !important;

    color:
        #FFFFFF !important;

    background:
        #35B642 !important;

    font-size:
        14px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    box-shadow:
        0 13px 30px rgba(35,139,48,.17) !important;

    transition:
        background .25s ease,
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease !important;
}


.elementor .kb4-process
a.kb4-intro__button:hover,
.kb4-process
a.kb4-intro__button:hover {
    color:
        #FFFFFF !important;

    background:
        #238B30 !important;

    border-color:
        #238B30 !important;

    transform:
        translateY(-2px) !important;

    box-shadow:
        0 17px 36px rgba(35,139,48,.22) !important;
}


.kb4-intro__button i {
    color:
        #FFFFFF !important;

    font-size:
        12px !important;

    transition:
        transform .25s ease !important;
}


.kb4-intro__button:hover i {
    transform:
        translateX(3px) !important;
}


/* =========================================================
   SCHRITTE / ORDERED LIST
========================================================= */

.kb4-steps {
    position:
        relative !important;

    list-style:
        none !important;

    margin:
        0 !important;

    padding:
        0 !important;
}


.kb4-steps::before {
    content:
        "" !important;

    position:
        absolute !important;

    top:
        62px !important;

    bottom:
        62px !important;

    left:
        31px !important;

    width:
        1px !important;

    background:
        linear-gradient(
            to bottom,
            rgba(53,182,66,.75),
            rgba(53,182,66,.08)
        ) !important;
}


/* =========================================================
   EIN SCHRITT
========================================================= */

.kb4-step {
    position:
        relative !important;

    display:
        grid !important;

    grid-template-columns:
        64px minmax(0,1fr) !important;

    gap:
        23px !important;

    margin:
        0 0 15px !important;

    padding:
        27px 29px !important;

    border:
        1px solid var(--kb4-border) !important;

    border-radius:
        14px !important;

    background:
        rgba(255,255,255,.93) !important;

    box-shadow:
        0 10px 30px rgba(29,58,31,.04) !important;

    transition:
        opacity .65s ease,
        transform .65s cubic-bezier(.2,.75,.3,1),
        border-color .3s ease,
        box-shadow .3s ease,
        background .3s ease !important;
}


.kb4-step:last-child {
    margin-bottom:
        0 !important;
}


.kb4-step:hover {
    transform:
        translateY(-3px) !important;

    border-color:
        rgba(53,182,66,.30) !important;

    background:
        #FFFFFF !important;

    box-shadow:
        0 20px 46px rgba(29,72,34,.085) !important;
}


/* =========================================================
   ICON
========================================================= */

.kb4-step__number {
    position:
        relative !important;

    z-index:
        2 !important;

    width:
        64px !important;

    height:
        64px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border:
        1px solid rgba(53,182,66,.15) !important;

    border-radius:
        13px !important;

    color:
        var(--kb4-green-dark) !important;

    background:
        var(--kb4-light-green) !important;

    font-size:
        22px !important;

    transition:
        background .3s ease,
        color .3s ease,
        border-color .3s ease,
        transform .3s ease !important;
}


.kb4-step__number i {
    color:
        inherit !important;
}


.kb4-step:hover
.kb4-step__number {
    color:
        #FFFFFF !important;

    background:
        var(--kb4-green) !important;

    border-color:
        var(--kb4-green) !important;

    transform:
        scale(1.04) !important;
}


/* =========================================================
   STEP CONTENT
========================================================= */

.kb4-step__content {
    min-width:
        0 !important;

    padding-top:
        1px !important;
}


.kb4-step__top {
    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        space-between !important;

    gap:
        20px !important;

    margin-bottom:
        9px !important;
}


.kb4-step__index {
    color:
        var(--kb4-green-dark) !important;

    font-size:
        10.5px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    letter-spacing:
        .10em !important;

    text-transform:
        uppercase !important;
}


.kb4-step__badge {
    flex:
        0 0 auto !important;

    padding:
        6px 9px !important;

    border:
        1px solid rgba(53,182,66,.15) !important;

    border-radius:
        50px !important;

    color:
        var(--kb4-green-dark) !important;

    background:
        rgba(53,182,66,.07) !important;

    font-size:
        9.5px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    white-space:
        nowrap !important;
}


/* =========================================================
   STEP H3
========================================================= */

.elementor .kb4-process
.kb4-step h3,
.kb4-process
.kb4-step h3 {
    margin:
        0 0 8px !important;

    padding:
        0 !important;

    color:
        var(--kb4-black) !important;

    font-size:
        20px !important;

    line-height:
        1.3 !important;

    letter-spacing:
        -.02em !important;

    font-weight:
        600 !important;
}


/* =========================================================
   STEP TEXT
========================================================= */

.elementor .kb4-process
.kb4-step p,
.kb4-process
.kb4-step p {
    max-width:
        660px !important;

    margin:
        0 !important;

    color:
        var(--kb4-muted) !important;

    font-size:
        13.5px !important;

    line-height:
        1.66 !important;
}


/* =========================================================
   PROGRESSIVE ANIMATION

   STANDARD:
   ALLES SICHTBAR

   NUR bei JS + erlaubter Bewegung:
   Elemente zunächst unsichtbar.
========================================================= */

@media (prefers-reduced-motion: no-preference) {

    .kb4-process.kb4-ready
    .kb4-intro,
    .kb4-process.kb4-ready
    .kb4-step {
        opacity:
            0 !important;
    }


    .kb4-process.kb4-ready
    .kb4-intro {
        transform:
            translateY(28px) !important;
    }


    .kb4-process.kb4-ready
    .kb4-step {
        transform:
            translateX(30px) !important;
    }


    .kb4-process.kb4-ready
    .kb4-intro.kb4-visible,
    .kb4-process.kb4-ready
    .kb4-step.kb4-visible {
        opacity:
            1 !important;

        transform:
            none !important;
    }


    .kb4-process.kb4-ready
    .kb4-step:nth-child(2) {
        transition-delay:
            .07s !important;
    }


    .kb4-process.kb4-ready
    .kb4-step:nth-child(3) {
        transition-delay:
            .14s !important;
    }


    .kb4-process.kb4-ready
    .kb4-step:nth-child(4) {
        transition-delay:
            .21s !important;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1050px) {

    .kb4-process {
        padding:
            95px 0 !important;
    }


    .kb4-process__inner {
        width:
            min(100% - 44px,900px) !important;

        grid-template-columns:
            minmax(290px,.72fr)
            minmax(0,1.28fr) !important;

        gap:
            50px !important;
    }


    .kb4-intro {
        top:
            90px !important;
    }


    body.admin-bar
    .kb4-intro {
        top:
            122px !important;
    }


    .kb4-step {
        grid-template-columns:
            55px minmax(0,1fr) !important;

        gap:
            18px !important;

        padding:
            23px !important;
    }


    .kb4-step__number {
        width:
            55px !important;

        height:
            55px !important;

        font-size:
            19px !important;
    }


    .kb4-steps::before {
        left:
            27px !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .kb4-process {
        padding:
            74px 0 !important;
    }


    .kb4-process__inner {
        width:
            calc(100% - 32px) !important;

        grid-template-columns:
            1fr !important;

        gap:
            42px !important;
    }


    /* STICKY AUS */

    .kb4-intro,
    body.admin-bar
    .kb4-intro {
        position:
            relative !important;

        top:
            auto !important;
    }


    .kb4-eyebrow {
        font-size:
            10.5px !important;
    }


    .elementor .kb4-process
    .kb4-intro h2,
    .kb4-process
    .kb4-intro h2 {
        font-size:
            clamp(36px,10vw,47px) !important;
    }


    .kb4-intro__text {
        margin-top:
            19px !important;

        font-size:
            15px !important;

        line-height:
            1.67 !important;
    }


    .kb4-note {
        margin-top:
            27px !important;
    }


    .elementor .kb4-process
    a.kb4-intro__button,
    .kb4-process
    a.kb4-intro__button {
        width:
            100% !important;
    }


    /* STEPS */

    .kb4-steps::before {
        display:
            none !important;
    }


    .kb4-step {
        grid-template-columns:
            48px minmax(0,1fr) !important;

        gap:
            15px !important;

        margin-bottom:
            11px !important;

        padding:
            20px 18px !important;
    }


    .kb4-step__number {
        width:
            48px !important;

        height:
            48px !important;

        border-radius:
            10px !important;

        font-size:
            17px !important;
    }


    .kb4-step__top {
        align-items:
            flex-start !important;

        flex-direction:
            column !important;

        gap:
            7px !important;
    }


    .elementor .kb4-process
    .kb4-step h3,
    .kb4-process
    .kb4-step h3 {
        font-size:
            18px !important;
    }


    .elementor .kb4-process
    .kb4-step p,
    .kb4-process
    .kb4-step p {
        font-size:
            12.8px !important;
    }


    .kb4-process::after {
        display:
            none !important;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 420px) {

    .kb4-step {
        grid-template-columns:
            1fr !important;
    }


    .kb4-step__number {
        width:
            46px !important;

        height:
            46px !important;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .kb4-intro,
    .kb4-step {
        opacity:
            1 !important;

        transform:
            none !important;

        transition:
            none !important;
    }

}


/* =========================================
   ELEMENTOR HTML WIDGET: 4473170
========================================= */

/* =========================================================
   BASIS
========================================================= */

.elementor .kb5-reviews,
.kb5-reviews {
    --e-global-color-primary: #35B642 !important;
    --e-global-color-secondary: #111111 !important;
    --e-global-color-text: #292929 !important;
    --e-global-color-accent: #35B642 !important;

    --kb5-green: #35B642;
    --kb5-green-dark: #238B30;
    --kb5-black: #111111;
    --kb5-text: #292929;
    --kb5-muted: #6D746D;
    --kb5-light: #F5F8F4;
    --kb5-border: #E4E9E3;
    --kb5-white: #FFFFFF;

    position: relative !important;

    width: 100% !important;

    padding:
        115px 0 !important;

    overflow:
        hidden !important;

    background:
        radial-gradient(
            circle at 92% 8%,
            rgba(53,182,66,.07),
            transparent 27%
        ),
        #FFFFFF !important;

    color:
        var(--kb5-text) !important;

    font-family:
        "Inter",
        Arial,
        sans-serif !important;
}


.kb5-reviews *,
.kb5-reviews *::before,
.kb5-reviews *::after {
    box-sizing:
        border-box !important;
}


.elementor .kb5-reviews a,
.elementor .kb5-reviews a:link,
.elementor .kb5-reviews a:visited,
.elementor .kb5-reviews a:hover,
.elementor .kb5-reviews a:focus,
.elementor .kb5-reviews a:active,
.kb5-reviews a {
    text-decoration:
        none !important;

    outline:
        none !important;
}


/* =========================================================
   INNER
========================================================= */

.kb5-reviews__inner {
    position: relative !important;

    z-index:
        3 !important;

    width:
        min(1350px, calc(100% - 64px)) !important;

    margin:
        0 auto !important;
}


/* =========================================================
   DEKO
========================================================= */

.kb5-reviews::before {
    content:
        "" !important;

    position:
        absolute !important;

    width:
        520px !important;

    height:
        520px !important;

    right:
        -370px !important;

    top:
        -290px !important;

    border-radius:
        50% !important;

    border:
        85px solid rgba(53,182,66,.035) !important;

    pointer-events:
        none !important;
}


.kb5-reviews::after {
    content:
        "" !important;

    position:
        absolute !important;

    width:
        115px !important;

    height:
        115px !important;

    left:
        4% !important;

    bottom:
        42px !important;

    opacity:
        .18 !important;

    background-image:
        radial-gradient(
            circle,
            #35B642 1.3px,
            transparent 1.5px
        ) !important;

    background-size:
        13px 13px !important;

    pointer-events:
        none !important;
}


/* =========================================================
   HEADER
========================================================= */

.kb5-head {
    display:
        grid !important;

    grid-template-columns:
        minmax(0,1fr)
        minmax(360px,.82fr) !important;

    gap:
        70px !important;

    align-items:
        end !important;

    margin-bottom:
        46px !important;

    transition:
        opacity .8s ease,
        transform .8s cubic-bezier(.2,.75,.3,1) !important;
}


/* =========================================================
   EYEBROW
========================================================= */

.kb5-eyebrow {
    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        10px !important;

    margin-bottom:
        18px !important;

    color:
        #238B30 !important;

    font-size:
        12px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    text-transform:
        uppercase !important;

    letter-spacing:
        .09em !important;
}


.kb5-eyebrow::before {
    content:
        "" !important;

    width:
        28px !important;

    height:
        2px !important;

    flex:
        0 0 28px !important;

    border-radius:
        20px !important;

    background:
        #35B642 !important;
}


/* =========================================================
   H2
========================================================= */

.elementor .kb5-reviews
.kb5-head h2,
.kb5-reviews
.kb5-head h2 {
    max-width:
        740px !important;

    margin:
        0 !important;

    padding:
        0 !important;

    color:
        #111111 !important;

    font-family:
        "Inter",
        Arial,
        sans-serif !important;

    font-size:
        clamp(39px,4vw,55px) !important;

    line-height:
        1.055 !important;

    letter-spacing:
        -.043em !important;

    font-weight:
        600 !important;
}


.elementor .kb5-reviews
.kb5-head h2 span,
.kb5-reviews
.kb5-head h2 span {
    color:
        #35B642 !important;
}


/* =========================================================
   HEADER RIGHT
========================================================= */

.kb5-head__right {
    max-width:
        535px !important;

    justify-self:
        end !important;
}


.elementor .kb5-reviews
.kb5-head__right p,
.kb5-reviews
.kb5-head__right p {
    margin:
        0 !important;

    color:
        #6D746D !important;

    font-size:
        15.5px !important;

    line-height:
        1.72 !important;
}


.kb5-head__right strong {
    color:
        #343B34 !important;

    font-weight:
        550 !important;
}


/* =========================================================
   GOOGLE INFO
========================================================= */

.kb5-google-line {
    display:
        flex !important;

    align-items:
        center !important;

    gap:
        12px !important;

    margin-top:
        21px !important;

    padding-top:
        18px !important;

    border-top:
        1px solid #E4E9E3 !important;
}


.kb5-google-icon {
    width:
        38px !important;

    height:
        38px !important;

    flex:
        0 0 38px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        9px !important;

    color:
        #238B30 !important;

    background:
        #EDF7EC !important;

    font-size:
        14px !important;
}


.kb5-google-icon i {
    color:
        #238B30 !important;
}


.kb5-google-copy {
    min-width:
        0 !important;
}


.kb5-google-copy strong {
    display:
        block !important;

    color:
        #111111 !important;

    font-size:
        12px !important;

    line-height:
        1.3 !important;

    font-weight:
        600 !important;
}


.kb5-google-copy span {
    display:
        block !important;

    margin-top:
        3px !important;

    color:
        #868C86 !important;

    font-size:
        10.5px !important;

    line-height:
        1.4 !important;
}


/* =========================================================
   TRUSTINDEX WRAPPER
========================================================= */

.kb5-trustindex {
    position:
        relative !important;

    width:
        100% !important;

    padding:
        34px !important;

    overflow:
        hidden !important;

    border:
        1px solid #E2E8E1 !important;

    border-radius:
        18px !important;

    background:
        linear-gradient(
            135deg,
            #F8FAF7 0%,
            #FFFFFF 100%
        ) !important;

    box-shadow:
        0 18px 48px rgba(28,66,32,.055) !important;

    transition:
        opacity .8s ease,
        transform .8s cubic-bezier(.2,.75,.3,1) !important;
}


.kb5-trustindex::before {
    content:
        "" !important;

    position:
        absolute !important;

    width:
        230px !important;

    height:
        230px !important;

    right:
        -145px !important;

    top:
        -150px !important;

    border-radius:
        50% !important;

    background:
        rgba(53,182,66,.045) !important;

    pointer-events:
        none !important;
}


/* =========================================================
   TRUSTINDEX RESET
========================================================= */

.elementor .kb5-trustindex a,
.elementor .kb5-trustindex a:link,
.elementor .kb5-trustindex a:visited,
.kb5-trustindex a,
.kb5-trustindex a:link,
.kb5-trustindex a:visited {
    color:
        #238B30 !important;
}


.elementor .kb5-trustindex a:hover,
.elementor .kb5-trustindex a:focus,
.elementor .kb5-trustindex a:active,
.kb5-trustindex a:hover,
.kb5-trustindex a:focus,
.kb5-trustindex a:active {
    color:
        #35B642 !important;
}


/* ELEMENTOR / TRUSTINDEX BUTTONS ETC. */

.kb5-trustindex button,
.kb5-trustindex [role="button"] {
    accent-color:
        #35B642 !important;
}


/* =========================================================
   CONTEXT INFO
========================================================= */

.kb5-context {
    display:
        grid !important;

    grid-template-columns:
        repeat(3,minmax(0,1fr)) !important;

    gap:
        10px !important;

    margin-top:
        17px !important;
}


.kb5-context__item {
    min-width:
        0 !important;

    display:
        flex !important;

    align-items:
        center !important;

    gap:
        9px !important;

    padding:
        12px 13px !important;

    border:
        1px solid #E5EAE4 !important;

    border-radius:
        10px !important;

    background:
        rgba(255,255,255,.78) !important;

    color:
        #555D55 !important;

    font-size:
        10.5px !important;

    line-height:
        1.4 !important;
}


.kb5-context__icon {
    width:
        29px !important;

    height:
        29px !important;

    flex:
        0 0 29px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        7px !important;

    color:
        #238B30 !important;

    background:
        #EDF7EC !important;

    font-size:
        9px !important;
}


.kb5-context__icon i {
    color:
        #238B30 !important;
}


/* =========================================================
   BOTTOM
========================================================= */

.kb5-bottom {
    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        space-between !important;

    gap:
        30px !important;

    margin-top:
        33px !important;

    padding-top:
        28px !important;

    border-top:
        1px solid #E4E9E3 !important;

    transition:
        opacity .7s ease,
        transform .7s ease !important;
}


.kb5-bottom__left {
    display:
        flex !important;

    align-items:
        center !important;

    gap:
        12px !important;

    max-width:
        680px !important;

    color:
        #6D746D !important;

    font-size:
        12.5px !important;

    line-height:
        1.5 !important;
}


.kb5-bottom__check {
    width:
        31px !important;

    height:
        31px !important;

    flex:
        0 0 31px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        50% !important;

    color:
        #238B30 !important;

    background:
        rgba(53,182,66,.10) !important;

    font-size:
        11px !important;
}


.kb5-bottom__check i {
    color:
        #238B30 !important;
}


/* =========================================================
   CTA
========================================================= */

.elementor .kb5-reviews
a.kb5-btn,
.elementor .kb5-reviews
a.kb5-btn:link,
.elementor .kb5-reviews
a.kb5-btn:visited,
.kb5-reviews
a.kb5-btn {
    min-height:
        52px !important;

    display:
        inline-flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    gap:
        9px !important;

    padding:
        0 21px !important;

    border:
        1px solid #35B642 !important;

    border-radius:
        8px !important;

    color:
        #FFFFFF !important;

    background:
        #35B642 !important;

    font-size:
        13px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    white-space:
        nowrap !important;

    box-shadow:
        0 11px 25px rgba(35,139,48,.15) !important;

    transition:
        background .25s ease,
        border-color .25s ease,
        transform .25s ease,
        box-shadow .25s ease !important;
}


.elementor .kb5-reviews
a.kb5-btn:hover,
.kb5-reviews
a.kb5-btn:hover {
    color:
        #FFFFFF !important;

    background:
        #238B30 !important;

    border-color:
        #238B30 !important;

    transform:
        translateY(-2px) !important;

    box-shadow:
        0 15px 31px rgba(35,139,48,.21) !important;
}


.kb5-btn i {
    color:
        #FFFFFF !important;

    font-size:
        11px !important;

    transition:
        transform .25s ease !important;
}


.kb5-btn:hover i {
    transform:
        translateX(3px) !important;
}


/* =========================================================
   PROGRESSIVE ANIMATION

   Inhalt standardmäßig sichtbar.
========================================================= */

@media (prefers-reduced-motion: no-preference) {

    .kb5-reviews.kb5-ready
    .kb5-head,
    .kb5-reviews.kb5-ready
    .kb5-trustindex,
    .kb5-reviews.kb5-ready
    .kb5-bottom {
        opacity:
            0 !important;

        transform:
            translateY(24px) !important;
    }


    .kb5-reviews.kb5-ready
    .kb5-head.kb5-visible,
    .kb5-reviews.kb5-ready
    .kb5-trustindex.kb5-visible,
    .kb5-reviews.kb5-ready
    .kb5-bottom.kb5-visible {
        opacity:
            1 !important;

        transform:
            none !important;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1000px) {

    .elementor .kb5-reviews,
    .kb5-reviews {
        padding:
            95px 0 !important;
    }


    .kb5-reviews__inner {
        width:
            min(100% - 44px,900px) !important;
    }


    .kb5-head {
        gap:
            40px !important;
    }


    .kb5-context {
        grid-template-columns:
            1fr 1fr !important;
    }


    .kb5-context__item:last-child {
        grid-column:
            1 / -1 !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .elementor .kb5-reviews,
    .kb5-reviews {
        padding:
            74px 0 !important;
    }


    .kb5-reviews__inner {
        width:
            calc(100% - 32px) !important;
    }


    .kb5-head {
        grid-template-columns:
            1fr !important;

        gap:
            21px !important;

        margin-bottom:
            31px !important;
    }


    .elementor .kb5-reviews
    .kb5-head h2,
    .kb5-reviews
    .kb5-head h2 {
        font-size:
            clamp(36px,10vw,47px) !important;
    }


    .kb5-head__right {
        max-width:
            none !important;

        justify-self:
            stretch !important;
    }


    .elementor .kb5-reviews
    .kb5-head__right p,
    .kb5-reviews
    .kb5-head__right p {
        font-size:
            15px !important;

        line-height:
            1.65 !important;
    }


    .kb5-trustindex {
        padding:
            18px !important;

        border-radius:
            14px !important;
    }


    .kb5-context {
        grid-template-columns:
            1fr !important;
    }


    .kb5-context__item:last-child {
        grid-column:
            auto !important;
    }


    .kb5-bottom {
        align-items:
            flex-start !important;

        flex-direction:
            column !important;

        gap:
            20px !important;

        margin-top:
            28px !important;
    }


    .kb5-bottom__left {
        align-items:
            flex-start !important;
    }


    .elementor .kb5-reviews
    a.kb5-btn,
    .kb5-reviews
    a.kb5-btn {
        width:
            100% !important;
    }


    .kb5-reviews::after {
        display:
            none !important;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .kb5-head,
    .kb5-trustindex,
    .kb5-bottom {
        opacity:
            1 !important;

        transform:
            none !important;

        transition:
            none !important;
    }

}


/* =========================================
   ELEMENTOR HTML WIDGET: 113d386
========================================= */

/* =========================================================
   BASIS / ELEMENTOR RESET
========================================================= */

.elementor .kb6-faq,
.kb6-faq {
    --e-global-color-primary: #35B642 !important;
    --e-global-color-secondary: #111111 !important;
    --e-global-color-text: #292929 !important;
    --e-global-color-accent: #35B642 !important;

    --kb6-green: #35B642;
    --kb6-green-dark: #238B30;
    --kb6-black: #111111;
    --kb6-text: #292929;
    --kb6-muted: #6B726B;
    --kb6-light: #F5F8F4;
    --kb6-light-green: #EDF7EC;
    --kb6-border: #E2E8E1;
    --kb6-white: #FFFFFF;

    position: relative !important;

    width: 100% !important;
    max-width: 100% !important;

    padding:
        120px 0 !important;

    overflow-x:
        clip !important;

    overflow-y:
        visible !important;

    background:
        radial-gradient(
            circle at 92% 10%,
            rgba(53,182,66,.07),
            transparent 26%
        ),
        radial-gradient(
            circle at 5% 90%,
            rgba(53,182,66,.05),
            transparent 24%
        ),
        #FFFFFF !important;

    color:
        var(--kb6-text) !important;

    font-family:
        "Inter",
        Arial,
        sans-serif !important;
}


.kb6-faq *,
.kb6-faq *::before,
.kb6-faq *::after {
    box-sizing:
        border-box !important;
}


.elementor .kb6-faq a,
.elementor .kb6-faq a:link,
.elementor .kb6-faq a:visited,
.elementor .kb6-faq a:hover,
.elementor .kb6-faq a:focus,
.elementor .kb6-faq a:active,
.kb6-faq a {
    text-decoration:
        none !important;

    outline:
        none !important;
}


/* =========================================================
   INNER
========================================================= */

.kb6-faq__inner {
    position:
        relative !important;

    z-index:
        3 !important;

    width:
        min(1350px, calc(100% - 64px)) !important;

    margin:
        0 auto !important;

    display:
        grid !important;

    grid-template-columns:
        minmax(330px,.74fr)
        minmax(0,1.26fr) !important;

    gap:
        90px !important;

    align-items:
        start !important;
}


/* GRID OVERFLOW SCHUTZ */

.kb6-faq__intro,
.kb6-faq__right,
.kb6-faq__list,
.kb6-item,
.kb6-question,
.kb6-question__text,
.kb6-answer,
.kb6-answer__inner {
    min-width:
        0 !important;
}


/* =========================================================
   DEKO
========================================================= */

.kb6-faq::before {
    content:
        "" !important;

    position:
        absolute !important;

    width:
        450px !important;

    height:
        450px !important;

    left:
        -320px !important;

    top:
        110px !important;

    border-radius:
        50% !important;

    border:
        1px solid rgba(53,182,66,.11) !important;

    pointer-events:
        none !important;
}


.kb6-faq::after {
    content:
        "" !important;

    position:
        absolute !important;

    width:
        120px !important;

    height:
        120px !important;

    right:
        3% !important;

    bottom:
        45px !important;

    opacity:
        .18 !important;

    background-image:
        radial-gradient(
            circle,
            #35B642 1.4px,
            transparent 1.6px
        ) !important;

    background-size:
        13px 13px !important;

    pointer-events:
        none !important;
}


/* =========================================================
   LINKE SEITE
========================================================= */

.kb6-faq__intro {
    position:
        sticky !important;

    top:
        105px !important;

    align-self:
        start !important;

    transition:
        opacity .8s ease,
        transform .8s cubic-bezier(.2,.75,.3,1) !important;
}


/* WP ADMINBAR */

body.admin-bar
.kb6-faq__intro {
    top:
        137px !important;
}


/* =========================================================
   EYEBROW
========================================================= */

.kb6-eyebrow {
    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        10px !important;

    margin:
        0 0 18px !important;

    color:
        var(--kb6-green-dark) !important;

    font-size:
        12px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    text-transform:
        uppercase !important;

    letter-spacing:
        .09em !important;
}


.kb6-eyebrow::before {
    content:
        "" !important;

    width:
        28px !important;

    height:
        2px !important;

    flex:
        0 0 28px !important;

    border-radius:
        20px !important;

    background:
        var(--kb6-green) !important;
}


/* =========================================================
   H2
========================================================= */

.elementor .kb6-faq
.kb6-faq__intro h2,
.kb6-faq
.kb6-faq__intro h2 {
    max-width:
        520px !important;

    margin:
        0 !important;

    padding:
        0 !important;

    color:
        var(--kb6-black) !important;

    font-size:
        clamp(39px,4vw,55px) !important;

    line-height:
        1.055 !important;

    letter-spacing:
        -.045em !important;

    font-weight:
        600 !important;
}


.elementor .kb6-faq
.kb6-faq__intro h2 span,
.kb6-faq
.kb6-faq__intro h2 span {
    color:
        var(--kb6-green) !important;
}


/* =========================================================
   INTRO
========================================================= */

.kb6-faq__intro-text {
    max-width:
        480px !important;

    margin:
        23px 0 0 !important;

    color:
        var(--kb6-muted) !important;

    font-size:
        15.5px !important;

    line-height:
        1.72 !important;
}


.kb6-faq__intro-text strong {
    color:
        #343B34 !important;

    font-weight:
        550 !important;
}


/* =========================================================
   LOCAL INFO
========================================================= */

.kb6-local {
    display:
        flex !important;

    align-items:
        center !important;

    gap:
        10px !important;

    max-width:
        480px !important;

    margin-top:
        23px !important;

    padding:
        13px 14px !important;

    border:
        1px solid rgba(53,182,66,.15) !important;

    border-radius:
        10px !important;

    background:
        #F6FAF5 !important;

    color:
        #525A52 !important;

    font-size:
        11px !important;

    line-height:
        1.45 !important;
}


.kb6-local__icon {
    width:
        31px !important;

    height:
        31px !important;

    flex:
        0 0 31px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        8px !important;

    color:
        var(--kb6-green-dark) !important;

    background:
        #FFFFFF !important;

    font-size:
        10px !important;
}


.kb6-local__icon i {
    color:
        inherit !important;
}


/* =========================================================
   KONTAKTBOX
========================================================= */

.kb6-contact {
    position:
        relative !important;

    width:
        100% !important;

    max-width:
        500px !important;

    margin-top:
        30px !important;

    padding:
        25px !important;

    overflow:
        hidden !important;

    border:
        1px solid rgba(53,182,66,.19) !important;

    border-radius:
        16px !important;

    background:
        linear-gradient(
            135deg,
            rgba(53,182,66,.09),
            rgba(53,182,66,.025)
        ) !important;
}


.kb6-contact::after {
    content:
        "?" !important;

    position:
        absolute !important;

    right:
        -7px !important;

    bottom:
        -42px !important;

    color:
        rgba(53,182,66,.075) !important;

    font-size:
        170px !important;

    line-height:
        1 !important;

    font-weight:
        700 !important;

    pointer-events:
        none !important;
}


.kb6-contact__icon {
    position:
        relative !important;

    z-index:
        2 !important;

    width:
        44px !important;

    height:
        44px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    margin-bottom:
        17px !important;

    border-radius:
        11px !important;

    background:
        var(--kb6-green) !important;

    color:
        #FFFFFF !important;

    font-size:
        17px !important;
}


.kb6-contact__icon i {
    color:
        #FFFFFF !important;
}


.elementor .kb6-faq
.kb6-contact strong,
.kb6-faq
.kb6-contact strong {
    position:
        relative !important;

    z-index:
        2 !important;

    display:
        block !important;

    margin:
        0 0 7px !important;

    color:
        var(--kb6-black) !important;

    font-size:
        16px !important;

    line-height:
        1.4 !important;

    font-weight:
        600 !important;
}


.elementor .kb6-faq
.kb6-contact p,
.kb6-faq
.kb6-contact p {
    position:
        relative !important;

    z-index:
        2 !important;

    margin:
        0 !important;

    color:
        var(--kb6-muted) !important;

    font-size:
        13px !important;

    line-height:
        1.65 !important;
}


/* =========================================================
   KONTAKT CTA
========================================================= */

.elementor .kb6-faq
a.kb6-contact__button,
.elementor .kb6-faq
a.kb6-contact__button:link,
.elementor .kb6-faq
a.kb6-contact__button:visited,
.kb6-faq
a.kb6-contact__button {
    position:
        relative !important;

    z-index:
        2 !important;

    min-height:
        51px !important;

    display:
        inline-flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    gap:
        10px !important;

    margin-top:
        20px !important;

    padding:
        0 19px !important;

    border:
        1px solid var(--kb6-green) !important;

    border-radius:
        9px !important;

    color:
        #FFFFFF !important;

    background:
        var(--kb6-green) !important;

    font-size:
        13px !important;

    line-height:
        1.2 !important;

    font-weight:
        600 !important;

    box-shadow:
        0 10px 24px rgba(35,139,48,.16) !important;

    transition:
        background .25s ease,
        border-color .25s ease,
        transform .25s ease !important;
}


.elementor .kb6-faq
a.kb6-contact__button:hover,
.kb6-faq
a.kb6-contact__button:hover {
    color:
        #FFFFFF !important;

    background:
        var(--kb6-green-dark) !important;

    border-color:
        var(--kb6-green-dark) !important;

    transform:
        translateY(-2px) !important;
}


.kb6-contact__button i {
    color:
        #FFFFFF !important;

    font-size:
        10px !important;
}


/* =========================================================
   FAQ RIGHT
========================================================= */

.kb6-faq__right {
    width:
        100% !important;

    max-width:
        100% !important;
}


/* =========================================================
   FAQ LIST
========================================================= */

.kb6-faq__list {
    width:
        100% !important;

    max-width:
        100% !important;

    display:
        flex !important;

    flex-direction:
        column !important;

    gap:
        11px !important;
}


/* =========================================================
   DETAILS ITEM
========================================================= */

.kb6-item {
    position:
        relative !important;

    width:
        100% !important;

    max-width:
        100% !important;

    margin:
        0 !important;

    overflow:
        hidden !important;

    border:
        1px solid var(--kb6-border) !important;

    border-radius:
        14px !important;

    background:
        #FFFFFF !important;

    box-shadow:
        0 8px 25px rgba(29,61,32,.035) !important;

    transition:
        opacity .65s ease,
        transform .65s cubic-bezier(.2,.75,.3,1),
        border-color .3s ease,
        box-shadow .3s ease !important;
}


.kb6-item:hover,
.kb6-item[open] {
    border-color:
        rgba(53,182,66,.35) !important;

    box-shadow:
        0 17px 40px rgba(28,66,32,.065) !important;
}


/* STANDARD MARKER AUS */

.kb6-item > summary {
    list-style:
        none !important;
}


.kb6-item > summary::-webkit-details-marker {
    display:
        none !important;
}


.kb6-item > summary::marker {
    display:
        none !important;

    content:
        "" !important;
}


/* =========================================================
   SUMMARY / QUESTION
========================================================= */

.kb6-question {
    position:
        relative !important;

    width:
        100% !important;

    max-width:
        100% !important;

    min-width:
        0 !important;

    min-height:
        82px !important;

    display:
        grid !important;

    grid-template-columns:
        46px minmax(0,1fr) 38px !important;

    align-items:
        center !important;

    gap:
        17px !important;

    margin:
        0 !important;

    padding:
        17px 20px !important;

    color:
        var(--kb6-black) !important;

    background:
        transparent !important;

    cursor:
        pointer !important;

    user-select:
        none !important;

    -webkit-user-select:
        none !important;
}


.kb6-question:focus-visible {
    outline:
        2px solid rgba(53,182,66,.50) !important;

    outline-offset:
        -3px !important;
}


/* =========================================================
   QUESTION ICON
========================================================= */

.kb6-question__icon {
    width:
        46px !important;

    height:
        46px !important;

    flex:
        0 0 46px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        11px !important;

    color:
        var(--kb6-green-dark) !important;

    background:
        var(--kb6-light-green) !important;

    font-size:
        16px !important;

    transition:
        background .25s ease,
        color .25s ease !important;
}


.kb6-question__icon i {
    color:
        inherit !important;
}


.kb6-item[open]
.kb6-question__icon {
    color:
        #FFFFFF !important;

    background:
        var(--kb6-green) !important;
}


/* =========================================================
   QUESTION TEXT
========================================================= */

.kb6-question__text {
    display:
        block !important;

    width:
        100% !important;

    max-width:
        100% !important;

    min-width:
        0 !important;

    color:
        var(--kb6-black) !important;

    font-size:
        15.5px !important;

    line-height:
        1.42 !important;

    font-weight:
        600 !important;

    white-space:
        normal !important;

    overflow-wrap:
        anywhere !important;

    word-break:
        normal !important;
}


/* =========================================================
   PLUS
========================================================= */

.kb6-question__toggle {
    width:
        36px !important;

    height:
        36px !important;

    flex:
        0 0 36px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    justify-self:
        end !important;

    border-radius:
        50% !important;

    color:
        var(--kb6-black) !important;

    background:
        #F3F5F3 !important;

    font-size:
        12px !important;

    transition:
        transform .3s ease,
        background .3s ease,
        color .3s ease !important;
}


.kb6-question__toggle i {
    color:
        inherit !important;
}


.kb6-item[open]
.kb6-question__toggle {
    color:
        #FFFFFF !important;

    background:
        var(--kb6-green) !important;

    transform:
        rotate(45deg) !important;
}


/* =========================================================
   ANSWER
========================================================= */

.kb6-answer {
    width:
        100% !important;

    max-width:
        100% !important;

    min-width:
        0 !important;

    padding:
        0 20px 25px 83px !important;

    color:
        var(--kb6-muted) !important;

    font-size:
        13.5px !important;

    line-height:
        1.72 !important;

    overflow-wrap:
        anywhere !important;
}


.elementor .kb6-faq
.kb6-answer p,
.kb6-faq
.kb6-answer p {
    width:
        100% !important;

    max-width:
        100% !important;

    margin:
        0 !important;

    color:
        var(--kb6-muted) !important;

    font-size:
        13.5px !important;

    line-height:
        1.72 !important;

    white-space:
        normal !important;

    overflow-wrap:
        anywhere !important;
}


.elementor .kb6-faq
.kb6-answer strong,
.kb6-faq
.kb6-answer strong {
    color:
        var(--kb6-black) !important;

    font-weight:
        600 !important;
}


/* =========================================================
   ANSWER LINKS
========================================================= */

.elementor .kb6-faq
.kb6-answer a,
.elementor .kb6-faq
.kb6-answer a:visited,
.kb6-faq
.kb6-answer a {
    color:
        var(--kb6-green-dark) !important;

    font-weight:
        600 !important;

    border-bottom:
        1px solid rgba(35,139,48,.24) !important;

    transition:
        color .2s ease,
        border-color .2s ease !important;
}


.elementor .kb6-faq
.kb6-answer a:hover,
.kb6-faq
.kb6-answer a:hover {
    color:
        var(--kb6-green) !important;

    border-color:
        var(--kb6-green) !important;
}


/* =========================================================
   BOTTOM
========================================================= */

.kb6-bottom {
    width:
        100% !important;

    max-width:
        100% !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        space-between !important;

    gap:
        25px !important;

    margin-top:
        29px !important;

    padding:
        20px 22px !important;

    border-radius:
        13px !important;

    background:
        var(--kb6-light) !important;

    transition:
        opacity .65s ease,
        transform .65s ease !important;
}


.kb6-bottom__text {
    min-width:
        0 !important;

    display:
        flex !important;

    align-items:
        center !important;

    gap:
        13px !important;
}


.kb6-bottom__icon {
    width:
        36px !important;

    height:
        36px !important;

    flex:
        0 0 36px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        9px !important;

    color:
        var(--kb6-green-dark) !important;

    background:
        #FFFFFF !important;

    font-size:
        11px !important;
}


.kb6-bottom__icon i {
    color:
        inherit !important;
}


.kb6-bottom__text span {
    min-width:
        0 !important;

    color:
        var(--kb6-muted) !important;

    font-size:
        12.5px !important;

    line-height:
        1.5 !important;
}


.elementor .kb6-faq
a.kb6-bottom__link,
.elementor .kb6-faq
a.kb6-bottom__link:visited,
.kb6-faq
a.kb6-bottom__link {
    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        8px !important;

    color:
        var(--kb6-green-dark) !important;

    font-size:
        12.5px !important;

    font-weight:
        600 !important;

    white-space:
        nowrap !important;
}


.kb6-bottom__link i {
    color:
        inherit !important;

    font-size:
        10px !important;

    transition:
        transform .25s ease !important;
}


.kb6-bottom__link:hover i {
    transform:
        translateX(3px) !important;
}


/* =========================================================
   PROGRESSIVE ENTRANCE ANIMATION

   Ohne JS bleibt ALLES sichtbar.
========================================================= */

@media (prefers-reduced-motion: no-preference) {

    .kb6-faq.kb6-ready
    .kb6-faq__intro,
    .kb6-faq.kb6-ready
    .kb6-item,
    .kb6-faq.kb6-ready
    .kb6-bottom {
        opacity:
            0 !important;

        transform:
            translateY(22px) !important;
    }


    .kb6-faq.kb6-ready
    .kb6-faq__intro.kb6-visible,
    .kb6-faq.kb6-ready
    .kb6-item.kb6-visible,
    .kb6-faq.kb6-ready
    .kb6-bottom.kb6-visible {
        opacity:
            1 !important;

        transform:
            none !important;
    }


    .kb6-faq.kb6-ready
    .kb6-item:nth-child(2) {
        transition-delay:
            .04s !important;
    }


    .kb6-faq.kb6-ready
    .kb6-item:nth-child(3) {
        transition-delay:
            .08s !important;
    }


    .kb6-faq.kb6-ready
    .kb6-item:nth-child(4) {
        transition-delay:
            .12s !important;
    }


    .kb6-faq.kb6-ready
    .kb6-item:nth-child(5) {
        transition-delay:
            .16s !important;
    }


    .kb6-faq.kb6-ready
    .kb6-item:nth-child(6) {
        transition-delay:
            .20s !important;
    }


    .kb6-faq.kb6-ready
    .kb6-item:nth-child(7) {
        transition-delay:
            .24s !important;
    }


    .kb6-faq.kb6-ready
    .kb6-item:nth-child(8) {
        transition-delay:
            .28s !important;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1050px) {

    .elementor .kb6-faq,
    .kb6-faq {
        padding:
            95px 0 !important;
    }


    .kb6-faq__inner {
        width:
            min(100% - 44px,900px) !important;

        grid-template-columns:
            minmax(275px,.68fr)
            minmax(0,1.32fr) !important;

        gap:
            50px !important;
    }


    .kb6-faq__intro {
        top:
            90px !important;
    }


    body.admin-bar
    .kb6-faq__intro {
        top:
            122px !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    html,
    body {
        max-width:
            100% !important;

        overflow-x:
            hidden !important;
    }


    .elementor .kb6-faq,
    .kb6-faq {
        width:
            100% !important;

        max-width:
            100% !important;

        padding:
            64px 0 !important;

        overflow-x:
            hidden !important;
    }


    .kb6-faq__inner {
        width:
            calc(100% - 28px) !important;

        max-width:
            calc(100% - 28px) !important;

        margin:
            0 auto !important;

        display:
            block !important;

        min-width:
            0 !important;
    }


    /* INTRO */

    .kb6-faq__intro,
    body.admin-bar
    .kb6-faq__intro {
        position:
            relative !important;

        top:
            auto !important;

        width:
            100% !important;

        max-width:
            100% !important;
    }


    .kb6-eyebrow {
        font-size:
            10.5px !important;
    }


    .elementor .kb6-faq
    .kb6-faq__intro h2,
    .kb6-faq
    .kb6-faq__intro h2 {
        width:
            100% !important;

        max-width:
            100% !important;

        font-size:
            clamp(34px,9vw,44px) !important;

        line-height:
            1.07 !important;
    }


    .kb6-faq__intro-text {
        width:
            100% !important;

        max-width:
            100% !important;

        margin-top:
            18px !important;

        font-size:
            15px !important;

        line-height:
            1.65 !important;
    }


    /* LOCAL */

    .kb6-local {
        width:
            100% !important;

        max-width:
            100% !important;
    }


    /* CONTACT */

    .kb6-contact {
        width:
            100% !important;

        max-width:
            100% !important;

        margin-top:
            27px !important;

        padding:
            22px !important;

        border-radius:
            14px !important;
    }


    .kb6-contact::after {
        right:
            -22px !important;

        bottom:
            -48px !important;

        font-size:
            145px !important;
    }


    .elementor .kb6-faq
    a.kb6-contact__button,
    .kb6-faq
    a.kb6-contact__button {
        width:
            100% !important;

        max-width:
            100% !important;

        min-height:
            53px !important;

        padding:
            10px 14px !important;

        white-space:
            normal !important;

        text-align:
            center !important;
    }


    /* RIGHT */

    .kb6-faq__right {
        width:
            100% !important;

        max-width:
            100% !important;

        min-width:
            0 !important;

        margin-top:
            38px !important;
    }


    .kb6-faq__list {
        width:
            100% !important;

        max-width:
            100% !important;

        min-width:
            0 !important;

        gap:
            10px !important;
    }


    /* ITEM */

    .kb6-item {
        width:
            100% !important;

        max-width:
            100% !important;

        min-width:
            0 !important;

        border-radius:
            12px !important;
    }


    /* QUESTION */

    .kb6-question {
        width:
            100% !important;

        max-width:
            100% !important;

        min-width:
            0 !important;

        min-height:
            72px !important;

        grid-template-columns:
            42px minmax(0,1fr) 32px !important;

        gap:
            11px !important;

        padding:
            14px !important;

        overflow:
            hidden !important;
    }


    .kb6-question__icon {
        width:
            42px !important;

        height:
            42px !important;

        flex-basis:
            42px !important;

        border-radius:
            10px !important;

        font-size:
            15px !important;
    }


    .kb6-question__text {
        width:
            100% !important;

        max-width:
            100% !important;

        min-width:
            0 !important;

        padding:
            0 !important;

        font-size:
            13.5px !important;

        line-height:
            1.42 !important;

        white-space:
            normal !important;

        overflow-wrap:
            anywhere !important;
    }


    .kb6-question__toggle {
        width:
            32px !important;

        height:
            32px !important;

        flex-basis:
            32px !important;

        justify-self:
            end !important;

        font-size:
            11px !important;
    }


    /* ANSWER
       weniger Einzug als Desktop
    */

    .kb6-answer {
        width:
            100% !important;

        max-width:
            100% !important;

        min-width:
            0 !important;

        padding:
            3px 16px 20px 67px !important;

        font-size:
            13px !important;

        line-height:
            1.67 !important;

        overflow-wrap:
            anywhere !important;
    }


    .elementor .kb6-faq
    .kb6-answer p,
    .kb6-faq
    .kb6-answer p {
        font-size:
            13px !important;

        line-height:
            1.67 !important;
    }


    /* BOTTOM */

    .kb6-bottom {
        width:
            100% !important;

        max-width:
            100% !important;

        min-width:
            0 !important;

        align-items:
            flex-start !important;

        flex-direction:
            column !important;

        gap:
            15px !important;

        margin-top:
            20px !important;

        padding:
            17px !important;
    }


    .kb6-bottom__text {
        width:
            100% !important;
    }


    .elementor .kb6-faq
    a.kb6-bottom__link,
    .kb6-faq
    a.kb6-bottom__link {
        white-space:
            normal !important;
    }


    .kb6-faq::after {
        display:
            none !important;
    }

}


/* =========================================================
   SEHR KLEINE HANDYS
========================================================= */

@media (max-width: 420px) {

    .kb6-faq__inner {
        width:
            calc(100% - 24px) !important;

        max-width:
            calc(100% - 24px) !important;
    }


    .kb6-question {
        grid-template-columns:
            40px minmax(0,1fr) 30px !important;

        gap:
            9px !important;

        padding:
            12px !important;
    }


    .kb6-question__icon {
        width:
            40px !important;

        height:
            40px !important;
    }


    .kb6-question__toggle {
        width:
            30px !important;

        height:
            30px !important;
    }


    .kb6-question__text {
        font-size:
            13px !important;
    }


    .kb6-answer {
        padding:
            2px 14px 18px 61px !important;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .kb6-faq__intro,
    .kb6-item,
    .kb6-bottom {
        opacity:
            1 !important;

        transform:
            none !important;

        transition:
            none !important;
    }

}


/* =========================================
   ELEMENTOR HTML WIDGET: a1ca8e1
========================================= */

/* =========================================================
   BASIS
========================================================= */

.elementor .kb7-final,
.kb7-final {
    --e-global-color-primary: #35B642 !important;
    --e-global-color-secondary: #111111 !important;
    --e-global-color-text: #292929 !important;
    --e-global-color-accent: #35B642 !important;

    --kb-green: #35B642;
    --kb-green-dark: #238B30;
    --kb-black: #111111;
    --kb-muted: #6F756F;
    --kb-white: #FFFFFF;
    --kb-border: #DFE7DE;

    position: relative !important;

    width: 100vw !important;
    max-width: 100vw !important;

    margin-left:
        calc(50% - 50vw) !important;

    margin-right:
        calc(50% - 50vw) !important;

    overflow:
        hidden !important;

    background:
        linear-gradient(
            120deg,
            #238B30 0%,
            #35B642 48%,
            #3DBD49 100%
        ) !important;

    font-family:
        "Inter",
        Arial,
        sans-serif !important;
}


.kb7-final *,
.kb7-final *::before,
.kb7-final *::after {
    box-sizing:
        border-box !important;
}


.elementor .kb7-final a,
.elementor .kb7-final a:link,
.elementor .kb7-final a:visited,
.elementor .kb7-final a:hover,
.elementor .kb7-final a:focus,
.elementor .kb7-final a:active,
.kb7-final a {
    text-decoration:
        none !important;

    outline:
        none !important;
}


/* =========================================================
   FOTO
   dekorativ, deshalb kein SEO-alt nötig
========================================================= */

.kb7-final__photo {
    position: absolute !important;

    z-index: 1 !important;

    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;

    width:
        55% !important;

    background-image:
        linear-gradient(
            90deg,
            rgba(53,182,66,1) 0%,
            rgba(53,182,66,.78) 24%,
            rgba(35,139,48,.32) 70%,
            rgba(35,139,48,.24) 100%
        ),
        url('/wp-content/uploads/2026/09/12386-1.jpg') !important;

    background-size:
        cover !important;

    background-position:
        center center !important;

    background-repeat:
        no-repeat !important;

    opacity:
        .42 !important;

    pointer-events:
        none !important;
}


/* =========================================================
   DEKO
========================================================= */

.kb7-final::before {
    content: "" !important;

    position: absolute !important;

    z-index: 2 !important;

    width:
        580px !important;

    height:
        580px !important;

    right:
        -260px !important;

    top:
        -360px !important;

    border-radius:
        50% !important;

    border:
        90px solid rgba(255,255,255,.065) !important;

    pointer-events:
        none !important;
}


.kb7-final::after {
    content: "" !important;

    position: absolute !important;

    z-index: 2 !important;

    width:
        300px !important;

    height:
        300px !important;

    left:
        -170px !important;

    bottom:
        -230px !important;

    border-radius:
        50% !important;

    border:
        1px solid rgba(255,255,255,.18) !important;

    pointer-events:
        none !important;
}


/* =========================================================
   INNER
========================================================= */

.kb7-final__inner {
    position: relative !important;

    z-index:
        5 !important;

    width:
        min(1350px, calc(100% - 64px)) !important;

    margin:
        0 auto !important;

    padding:
        64px 0 !important;

    display:
        grid !important;

    grid-template-columns:
        minmax(0,1.08fr)
        minmax(470px,.92fr) !important;

    align-items:
        center !important;

    gap:
        85px !important;
}


/* =========================================================
   CONTENT
========================================================= */

.kb7-final__content {
    position: relative !important;

    z-index:
        3 !important;

    min-width:
        0 !important;

    transition:
        opacity .8s ease,
        transform .8s cubic-bezier(.2,.75,.3,1) !important;
}


/* =========================================================
   EYEBROW
========================================================= */

.kb7-final__eyebrow {
    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        10px !important;

    margin-bottom:
        18px !important;

    color:
        rgba(255,255,255,.94) !important;

    font-size:
        11.5px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    letter-spacing:
        .09em !important;

    text-transform:
        uppercase !important;
}


.kb7-final__eyebrow::before {
    content:
        "" !important;

    width:
        28px !important;

    height:
        2px !important;

    flex:
        0 0 28px !important;

    border-radius:
        20px !important;

    background:
        #FFFFFF !important;
}


/* =========================================================
   H2
========================================================= */

.elementor .kb7-final
.kb7-final__content h2,
.kb7-final
.kb7-final__content h2 {
    max-width:
        720px !important;

    margin:
        0 !important;

    padding:
        0 !important;

    color:
        #FFFFFF !important;

    font-size:
        clamp(35px,3.3vw,48px) !important;

    line-height:
        1.07 !important;

    letter-spacing:
        -.04em !important;

    font-weight:
        600 !important;
}


.elementor .kb7-final
.kb7-final__content h2 span,
.kb7-final
.kb7-final__content h2 span {
    color:
        #E6F9E8 !important;
}


/* =========================================================
   LEAD
========================================================= */

.elementor .kb7-final
.kb7-final__lead,
.kb7-final
.kb7-final__lead {
    max-width:
        690px !important;

    margin:
        21px 0 0 !important;

    color:
        rgba(255,255,255,.88) !important;

    font-size:
        15.5px !important;

    line-height:
        1.72 !important;

    font-weight:
        400 !important;
}


.kb7-final__lead strong {
    color:
        #FFFFFF !important;

    font-weight:
        600 !important;
}


/* =========================================================
   TRUST
========================================================= */

.kb7-final__trust {
    list-style:
        none !important;

    display:
        flex !important;

    align-items:
        center !important;

    flex-wrap:
        wrap !important;

    gap:
        15px 27px !important;

    margin:
        31px 0 0 !important;

    padding:
        0 !important;
}


.kb7-final__trust-item {
    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        11px !important;

    margin:
        0 !important;

    color:
        #FFFFFF !important;

    font-size:
        14.5px !important;

    line-height:
        1.35 !important;

    font-weight:
        550 !important;
}


.kb7-final__trust-icon {
    width:
        31px !important;

    height:
        31px !important;

    flex:
        0 0 31px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border:
        1px solid rgba(255,255,255,.14) !important;

    border-radius:
        50% !important;

    color:
        #FFFFFF !important;

    background:
        rgba(255,255,255,.18) !important;

    font-size:
        11px !important;

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.12) !important;
}


.kb7-final__trust-icon i {
    color:
        #FFFFFF !important;
}


/* =========================================================
   LOCAL / SERVICE LINE
========================================================= */

.kb7-final__area {
    display:
        flex !important;

    align-items:
        center !important;

    flex-wrap:
        wrap !important;

    gap:
        8px 15px !important;

    margin-top:
        25px !important;

    padding-top:
        23px !important;

    border-top:
        1px solid rgba(255,255,255,.20) !important;
}


.kb7-final__area-label {
    display:
        inline-flex !important;

    align-items:
        center !important;

    gap:
        8px !important;

    color:
        rgba(255,255,255,.94) !important;

    font-size:
        11px !important;

    font-weight:
        600 !important;
}


.kb7-final__area-label i {
    color:
        #FFFFFF !important;
}


.kb7-final__area-text {
    color:
        rgba(255,255,255,.78) !important;

    font-size:
        10.5px !important;

    line-height:
        1.4 !important;
}


/* =========================================================
   ACTION CARD
========================================================= */

.kb7-final__action {
    position: relative !important;

    z-index:
        5 !important;

    min-width:
        0 !important;

    padding:
        32px !important;

    border:
        1px solid rgba(255,255,255,.75) !important;

    border-radius:
        20px !important;

    background:
        rgba(255,255,255,.975) !important;

    box-shadow:
        0 30px 70px rgba(15,74,24,.22) !important;

    backdrop-filter:
        blur(8px) !important;

    -webkit-backdrop-filter:
        blur(8px) !important;

    transition:
        opacity .8s ease .08s,
        transform .8s cubic-bezier(.2,.75,.3,1) .08s !important;
}


/* =========================================================
   ACTION HEADER
========================================================= */

.kb7-final__action-head {
    display:
        flex !important;

    align-items:
        center !important;

    gap:
        15px !important;

    margin-bottom:
        24px !important;
}


.kb7-final__action-icon {
    width:
        52px !important;

    height:
        52px !important;

    flex:
        0 0 52px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        13px !important;

    color:
        #FFFFFF !important;

    background:
        linear-gradient(
            135deg,
            #35B642,
            #238B30
        ) !important;

    box-shadow:
        0 9px 20px rgba(35,139,48,.20) !important;

    font-size:
        19px !important;
}


.kb7-final__action-icon i {
    color:
        #FFFFFF !important;
}


.kb7-final__action-label {
    display:
        block !important;

    margin-bottom:
        5px !important;

    color:
        var(--kb-green-dark) !important;

    font-size:
        10px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    letter-spacing:
        .08em !important;

    text-transform:
        uppercase !important;
}


.elementor .kb7-final
.kb7-final__action h3,
.kb7-final
.kb7-final__action h3 {
    margin:
        0 !important;

    padding:
        0 !important;

    color:
        #111111 !important;

    font-size:
        21px !important;

    line-height:
        1.3 !important;

    font-weight:
        600 !important;
}


/* =========================================================
   CTA BUTTON
========================================================= */

.elementor .kb7-final
a.kb7-final__button,
.elementor .kb7-final
a.kb7-final__button:link,
.elementor .kb7-final
a.kb7-final__button:visited,
.kb7-final
a.kb7-final__button {
    width:
        100% !important;

    min-height:
        60px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        space-between !important;

    gap:
        15px !important;

    padding:
        0 21px !important;

    border:
        1px solid var(--kb-green) !important;

    border-radius:
        11px !important;

    color:
        #FFFFFF !important;

    background:
        linear-gradient(
            135deg,
            #35B642,
            #2DA53A
        ) !important;

    font-size:
        14px !important;

    line-height:
        1 !important;

    font-weight:
        600 !important;

    box-shadow:
        0 12px 26px rgba(35,139,48,.19) !important;

    transition:
        transform .25s ease,
        background .25s ease,
        box-shadow .25s ease !important;
}


.elementor .kb7-final
a.kb7-final__button:hover,
.kb7-final
a.kb7-final__button:hover {
    color:
        #FFFFFF !important;

    background:
        var(--kb-green-dark) !important;

    transform:
        translateY(-2px) !important;

    box-shadow:
        0 16px 32px rgba(35,139,48,.25) !important;
}


.kb7-final__button i {
    color:
        #FFFFFF !important;

    font-size:
        13px !important;

    transition:
        transform .25s ease !important;
}


.kb7-final__button:hover i {
    transform:
        translateX(3px) !important;
}


/* =========================================================
   TRENNER
========================================================= */

.kb7-final__or {
    display:
        flex !important;

    align-items:
        center !important;

    gap:
        13px !important;

    margin:
        20px 0 16px !important;

    color:
        #858B85 !important;

    font-size:
        10px !important;

    line-height:
        1 !important;

    font-weight:
        500 !important;

    letter-spacing:
        .06em !important;

    text-transform:
        uppercase !important;
}


.kb7-final__or::before,
.kb7-final__or::after {
    content:
        "" !important;

    flex:
        1 !important;

    height:
        1px !important;

    background:
        #DFE5DE !important;
}


/* =========================================================
   CONTACT GRID
========================================================= */

.kb7-final__contacts {
    display:
        grid !important;

    grid-template-columns:
        repeat(2,minmax(0,1fr)) !important;

    gap:
        11px !important;
}


/* =========================================================
   PHONE
========================================================= */

.elementor .kb7-final
a.kb7-phone,
.elementor .kb7-final
a.kb7-phone:visited,
.kb7-final
a.kb7-phone {
    min-width:
        0 !important;

    min-height:
        78px !important;

    display:
        grid !important;

    grid-template-columns:
        42px minmax(0,1fr) !important;

    align-items:
        center !important;

    gap:
        12px !important;

    padding:
        12px 14px !important;

    border:
        1px solid #DCE5DB !important;

    border-radius:
        11px !important;

    color:
        #111111 !important;

    background:
        #F7FAF6 !important;

    transition:
        border-color .25s ease,
        background .25s ease,
        transform .25s ease,
        box-shadow .25s ease !important;
}


.elementor .kb7-final
a.kb7-phone:hover,
.kb7-final
a.kb7-phone:hover {
    color:
        #111111 !important;

    border-color:
        rgba(53,182,66,.40) !important;

    background:
        #EEF8ED !important;

    transform:
        translateY(-2px) !important;

    box-shadow:
        0 10px 24px rgba(27,72,32,.07) !important;
}


.kb7-phone__icon {
    width:
        42px !important;

    height:
        42px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        10px !important;

    color:
        var(--kb-green-dark) !important;

    background:
        #E8F5E7 !important;

    font-size:
        14px !important;
}


.kb7-phone__icon i {
    color:
        inherit !important;
}


.kb7-phone__label {
    display:
        block !important;

    margin-bottom:
        5px !important;

    color:
        #777D77 !important;

    font-size:
        10px !important;

    line-height:
        1.2 !important;

    font-weight:
        500 !important;
}


.kb7-phone__number {
    display:
        block !important;

    min-width:
        0 !important;

    color:
        #111111 !important;

    font-size:
        13.5px !important;

    line-height:
        1.25 !important;

    font-weight:
        600 !important;

    white-space:
        nowrap !important;
}


/* =========================================================
   EMAIL
========================================================= */

.elementor .kb7-final
a.kb7-mail,
.elementor .kb7-final
a.kb7-mail:visited,
.kb7-final
a.kb7-mail {
    grid-column:
        1 / -1 !important;

    min-width:
        0 !important;

    min-height:
        58px !important;

    display:
        flex !important;

    align-items:
        center !important;

    gap:
        12px !important;

    padding:
        0 14px !important;

    border:
        1px solid #DCE5DB !important;

    border-radius:
        11px !important;

    color:
        #111111 !important;

    background:
        #F7FAF6 !important;

    font-size:
        12.5px !important;

    line-height:
        1.3 !important;

    font-weight:
        600 !important;

    overflow-wrap:
        anywhere !important;

    transition:
        border-color .25s ease,
        background .25s ease,
        transform .25s ease !important;
}


.elementor .kb7-final
a.kb7-mail:hover,
.kb7-final
a.kb7-mail:hover {
    color:
        #111111 !important;

    border-color:
        rgba(53,182,66,.40) !important;

    background:
        #EEF8ED !important;

    transform:
        translateY(-2px) !important;
}


.kb7-mail__icon {
    width:
        36px !important;

    height:
        36px !important;

    flex:
        0 0 36px !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    border-radius:
        9px !important;

    color:
        var(--kb-green-dark) !important;

    background:
        #E8F5E7 !important;

    font-size:
        12px !important;
}


.kb7-mail__icon i {
    color:
        inherit !important;
}


/* =========================================================
   NOTE
========================================================= */

.kb7-final__note {
    display:
        flex !important;

    align-items:
        flex-start !important;

    gap:
        10px !important;

    margin-top:
        17px !important;

    padding-top:
        16px !important;

    border-top:
        1px solid #E0E6DF !important;

    color:
        #696F69 !important;

    font-size:
        11px !important;

    line-height:
        1.6 !important;
}


.kb7-final__note i {
    margin-top:
        3px !important;

    color:
        var(--kb-green) !important;

    font-size:
        11px !important;
}


/* =========================================================
   BUSINESS IDENTITY
========================================================= */

.kb7-final__identity {
    display:
        flex !important;

    align-items:
        center !important;

    gap:
        8px !important;

    margin-top:
        15px !important;

    color:
        #8A908A !important;

    font-size:
        9.5px !important;

    line-height:
        1.4 !important;
}


.kb7-final__identity i {
    color:
        var(--kb-green-dark) !important;

    font-size:
        8px !important;
}


/* =========================================================
   PROGRESSIVE ANIMATION
========================================================= */

@media (prefers-reduced-motion: no-preference) {

    .kb7-final.kb7-ready
    .kb7-final__content,
    .kb7-final.kb7-ready
    .kb7-final__action {
        opacity:
            0 !important;
    }


    .kb7-final.kb7-ready
    .kb7-final__content {
        transform:
            translateX(-28px) !important;
    }


    .kb7-final.kb7-ready
    .kb7-final__action {
        transform:
            translateX(30px) !important;
    }


    .kb7-final.kb7-ready
    .kb7-final__content.kb7-visible,
    .kb7-final.kb7-ready
    .kb7-final__action.kb7-visible {
        opacity:
            1 !important;

        transform:
            none !important;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1050px) {

    .kb7-final__inner {
        width:
            min(100% - 44px,900px) !important;

        grid-template-columns:
            1fr 1fr !important;

        gap:
            42px !important;

        padding:
            55px 0 !important;
    }


    .elementor .kb7-final
    .kb7-final__content h2,
    .kb7-final
    .kb7-final__content h2 {
        font-size:
            clamp(34px,4vw,43px) !important;
    }


    .kb7-final__trust-item {
        font-size:
            13.5px !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .kb7-final__inner {
        width:
            calc(100% - 32px) !important;

        grid-template-columns:
            1fr !important;

        gap:
            38px !important;

        padding:
            52px 0 !important;
    }


    .kb7-final__photo {
        width:
            100% !important;

        opacity:
            .24 !important;
    }


    .elementor .kb7-final
    .kb7-final__content h2,
    .kb7-final
    .kb7-final__content h2 {
        font-size:
            clamp(32px,8vw,40px) !important;

        line-height:
            1.08 !important;
    }


    .elementor .kb7-final
    .kb7-final__lead,
    .kb7-final
    .kb7-final__lead {
        font-size:
            15px !important;
    }


    .kb7-final__trust {
        display:
            grid !important;

        grid-template-columns:
            1fr !important;

        gap:
            12px !important;

        margin-top:
            27px !important;
    }


    .kb7-final__trust-item {
        width:
            100% !important;

        font-size:
            14.5px !important;
    }


    .kb7-final__area {
        align-items:
            flex-start !important;
    }


    .kb7-final__area-label {
        width:
            100% !important;
    }


    .kb7-final__action {
        padding:
            24px !important;

        border-radius:
            16px !important;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 520px) {

    .kb7-final__contacts {
        grid-template-columns:
            1fr !important;
    }


    .kb7-mail {
        grid-column:
            auto !important;
    }


    .kb7-phone__number {
        white-space:
            normal !important;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .kb7-final__content,
    .kb7-final__action {
        opacity:
            1 !important;

        transform:
            none !important;

        transition:
            none !important;
    }

}

/* =========================================================
   YOAST / SEMANTIK FEINSCHLIFF
========================================================= */

.elementor .kb6-faq h3.kb6-question__text,
.kb6-faq h3.kb6-question__text {
    margin: 0 !important;
    padding: 0 !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    color: #111111 !important;

    font-family:
        "Inter",
        Arial,
        sans-serif !important;

    font-size: 16px !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;

    letter-spacing: normal !important;

    white-space: normal !important;
    overflow-wrap: anywhere !important;
}


.kb3-origin-note {
    margin:
        14px 0 0 !important;

    color:
        #707570 !important;

    font-size:
        13px !important;

    line-height:
        1.6 !important;
}


.elementor .kb3-origin-note a,
.elementor .kb3-origin-note a:visited,
.kb3-origin-note a {
    color:
        #238B30 !important;

    font-weight:
        600 !important;

    text-decoration:
        none !important;

    border-bottom:
        1px solid rgba(35,139,48,.28) !important;
}


.elementor .kb3-origin-note a:hover,
.kb3-origin-note a:hover {
    color:
        #35B642 !important;

    border-color:
        #35B642 !important;
}


/*
 * Das Bild ist reguläres Fallback innerhalb des Videos.
 * Es wird nur dargestellt, wenn <video> nicht unterstützt wird.
 */

.kb3-video-fallback {
    width:
        100% !important;

    height:
        auto !important;

    display:
        block !important;
}


@media (max-width: 767px) {

    .elementor .kb6-faq h3.kb6-question__text,
    .kb6-faq h3.kb6-question__text {
        font-size:
            13.5px !important;

        line-height:
            1.42 !important;
    }

}



/* KB-YOAST-FAQ-H3 */

.elementor .kb6-faq h3.kb6-question__text,
.kb6-faq h3.kb6-question__text {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #111111 !important;

    font-family:
        "Inter",
        Arial,
        sans-serif !important;

    font-size: 16px !important;
    line-height: 1.4 !important;
    font-weight: 600 !important;

    letter-spacing: normal !important;
    text-transform: none !important;

    white-space: normal !important;
    overflow-wrap: anywhere !important;
}


@media (max-width:767px) {

    .elementor .kb6-faq h3.kb6-question__text,
    .kb6-faq h3.kb6-question__text {
        font-size: 13.5px !important;
        line-height: 1.42 !important;
    }

}



/* =========================================================
   KB6 TOPIC HEADING
========================================================= */

.elementor .kb6-faq .kb6-topic-heading,
.kb6-faq .kb6-topic-heading {

    width:
        100% !important;

    margin:
        22px 0 5px !important;

    padding:
        7px 3px 3px !important;

    color:
        #238B30 !important;

    font-family:
        "Inter",
        Arial,
        sans-serif !important;

    font-size:
        12px !important;

    line-height:
        1.4 !important;

    font-weight:
        600 !important;

    letter-spacing:
        .055em !important;

    text-transform:
        uppercase !important;
}


@media (max-width:767px) {

    .elementor .kb6-faq .kb6-topic-heading,
    .kb6-faq .kb6-topic-heading {

        margin-top:
            19px !important;

        font-size:
            10.5px !important;
    }

}

