.elementor-18 .elementor-element.elementor-element-41315c4{--display:flex;--min-height:470px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-end;--overlay-opacity:1;border-style:solid;--border-style:solid;border-width:0px 0px 5px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:5px;--border-left-width:0px;border-color:var( --e-global-color-accent );--border-color:var( --e-global-color-accent );--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-18 .elementor-element.elementor-element-41315c4:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-41315c4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://dachfaktor.matthias-biller.de/wp-content/uploads/2026/09/roofer-installing-solar-panels-on-tiled-roof-2026-03-24-07-08-58-utc-scaled.webp");background-position:center center;background-size:cover;}.elementor-18 .elementor-element.elementor-element-41315c4::before, .elementor-18 .elementor-element.elementor-element-41315c4 > .elementor-background-video-container::before, .elementor-18 .elementor-element.elementor-element-41315c4 > .e-con-inner > .elementor-background-video-container::before, .elementor-18 .elementor-element.elementor-element-41315c4 > .elementor-background-slideshow::before, .elementor-18 .elementor-element.elementor-element-41315c4 > .e-con-inner > .elementor-background-slideshow::before, .elementor-18 .elementor-element.elementor-element-41315c4 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-18 .elementor-element.elementor-element-f041d0b{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-18 .elementor-element.elementor-element-f041d0b.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-18 .elementor-element.elementor-element-cd0363d{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-18 .elementor-element.elementor-element-0213584 .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:14px;font-weight:500;color:var( --e-global-color-e0ced01 );}.elementor-18 .elementor-element.elementor-element-3e55a23 .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:50px;font-weight:900;color:var( --e-global-color-e0ced01 );}.elementor-18 .elementor-element.elementor-element-9700cf0{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-18 .elementor-element.elementor-element-3192ac5{font-family:"Inter", Sans-serif;font-size:20px;font-weight:400;color:var( --e-global-color-f70c144 );}.elementor-18 .elementor-element.elementor-element-b1d713c{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-18 .elementor-element.elementor-element-51524f6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-18 .elementor-element.elementor-element-51524f6:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-51524f6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-047291c );}.elementor-18 .elementor-element.elementor-element-a17410b{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--flex-wrap:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-18 .elementor-element.elementor-element-da26826{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-18 .elementor-element.elementor-element-da26826.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-18 .elementor-element.elementor-element-9794bb0 .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:12px;font-weight:600;text-transform:uppercase;}.elementor-18 .elementor-element.elementor-element-8bb35dc .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:40px;font-weight:800;}.elementor-18 .elementor-element.elementor-element-7a301d5{--display:flex;}.elementor-18 .elementor-element.elementor-element-7a301d5.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-18 .elementor-element.elementor-element-4dfe2eb{font-family:"Roboto", Sans-serif;font-size:15px;font-weight:500;}.elementor-18 .elementor-element.elementor-element-89b4f00{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-gallery .elementor-gallery-item__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-gallery .elementor-gallery-item__description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-gallery{--galleries-title-color-normal:var( --e-global-color-primary );--galleries-title-color-hover:var( --e-global-color-secondary );--galleries-pointer-bg-color-hover:var( --e-global-color-accent );--gallery-title-color-active:var( --e-global-color-secondary );--galleries-pointer-bg-color-active:var( --e-global-color-accent );}.elementor-widget-gallery .elementor-gallery-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-18 .elementor-element.elementor-element-5149214 .e-gallery-item:hover .elementor-gallery-item__overlay, .elementor-18 .elementor-element.elementor-element-5149214 .e-gallery-item:focus .elementor-gallery-item__overlay{background-color:rgba(0,0,0,0.5);}.elementor-18 .elementor-element.elementor-element-5149214{--image-transition-duration:800ms;--overlay-transition-duration:800ms;--content-text-align:center;--content-padding:20px;--content-transition-duration:800ms;--content-transition-delay:800ms;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-18 .elementor-element.elementor-element-b1d713c{--grid-auto-flow:row;}.elementor-18 .elementor-element.elementor-element-9794bb0{text-align:center;}.elementor-18 .elementor-element.elementor-element-8bb35dc{text-align:center;}.elementor-18 .elementor-element.elementor-element-4dfe2eb{text-align:center;}.elementor-18 .elementor-element.elementor-element-89b4f00{--e-con-grid-template-columns:repeat(2, 1fr);--grid-auto-flow:row;}}@media(min-width:768px){.elementor-18 .elementor-element.elementor-element-f041d0b{--width:63%;}.elementor-18 .elementor-element.elementor-element-da26826{--width:48%;}.elementor-18 .elementor-element.elementor-element-7a301d5{--width:48%;}}@media(max-width:1024px) and (min-width:768px){.elementor-18 .elementor-element.elementor-element-f041d0b{--width:100%;}.elementor-18 .elementor-element.elementor-element-da26826{--width:100%;}.elementor-18 .elementor-element.elementor-element-7a301d5{--width:100%;}}@media(max-width:767px){.elementor-18 .elementor-element.elementor-element-41315c4{--min-height:373px;--padding-top:60px;--padding-bottom:30px;--padding-left:20px;--padding-right:20px;}.elementor-18 .elementor-element.elementor-element-0213584{text-align:center;}.elementor-18 .elementor-element.elementor-element-3e55a23{text-align:center;}.elementor-18 .elementor-element.elementor-element-3e55a23 .elementor-heading-title{font-size:35px;}.elementor-18 .elementor-element.elementor-element-3192ac5{text-align:center;}.elementor-18 .elementor-element.elementor-element-b1d713c{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-18 .elementor-element.elementor-element-51524f6{--padding-top:60px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-18 .elementor-element.elementor-element-8bb35dc .elementor-heading-title{font-size:35px;}.elementor-18 .elementor-element.elementor-element-89b4f00{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for heading, class: .elementor-element-0213584 *//* glass badge */
.elementor-18 .elementor-element.elementor-element-0213584 .elementor-heading-title{
    position: relative;
    display: inline-block;
    padding: 8px 26px 8px 36px !important;

    border-radius: 100px;
    border: 1px solid rgba(255,255,255,.35);

    background: rgba(255,255,255,.18);
    backdrop-filter: blur(30px);
    -webkit-backdrop-filter: blur(8px);

    letter-spacing: .4px;
}

/* main dot */
.elementor-18 .elementor-element.elementor-element-0213584 .elementor-heading-title:before{
    content: "";
    position: absolute;
    left: 18px;
    top: 50%;
    width: 8px;
    height: 8px;
    background: #d7322e;
    border-radius: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

/* pulse ring */
.elementor-18 .elementor-element.elementor-element-0213584 .elementor-heading-title:after{
    content: "";
    position: absolute;
    left: 18px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #d7322e;
    transform: translateY(-50%);
    animation: pulseDot 1.8s infinite;
    z-index: 1;
}

/* animation */
@keyframes pulseDot{
    0%{
        transform: translateY(-50%) scale(1);
        opacity: .7;
    }
    70%{
        transform: translateY(-50%) scale(2.8);
        opacity: 0;
    }
    100%{
        opacity: 0;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-41315c4 */.elementor-18 .elementor-element.elementor-element-41315c4{
    position: relative;
    overflow: hidden;
}

/* Hero Overlay */
.elementor-18 .elementor-element.elementor-element-41315c4::before{
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;

    background: linear-gradient(
        90deg,
        rgba(10, 15, 20, 0.95) 0%,
        rgba(10, 15, 20, 0.88) 35%,
        rgba(10, 15, 20, 0.65) 55%,
        rgba(10, 15, 20, 0.25) 78%,
        rgba(10, 15, 20, 0.08) 100%
    );
}

/* Keep content above overlay */
.elementor-18 .elementor-element.elementor-element-41315c4 > .e-con-inner,
.elementor-18 .elementor-element.elementor-element-41315c4 > .elementor-container,
.elementor-18 .elementor-element.elementor-element-41315c4 > .elementor-widget-wrap,
.elementor-18 .elementor-element.elementor-element-41315c4 > *{
    position: relative;
    z-index: 2;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9794bb0 *//* badge */
.elementor-18 .elementor-element.elementor-element-9794bb0 .elementor-heading-title{
    position: relative;
    display: inline-block;
    padding: 8px 26px 8px 36px !important;

    border-radius: 100px;

    /* fake blur look */
    background: linear-gradient(
        180deg,
        rgba(255,255,255,0.95) 0%,
        rgba(248,250,252,0.85) 100%
    );

    border: 1px solid rgba(0,0,0,.08);

    box-shadow:
        0 10px 25px rgba(0,0,0,.06),   /* soft outer shadow */
        inset 0 1px 0 rgba(255,255,255,.9); /* inner light */

    color: #111;
    letter-spacing: .3px;
}

/* solid dot */
.elementor-18 .elementor-element.elementor-element-9794bb0 .elementor-heading-title:before{
    content: "";
    position: absolute;
    left: 18px;
    top: 50%;
    width: 8px;
    height: 8px;
    background: #d7322e;
    border-radius: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

/* pulse ring */
.elementor-18 .elementor-element.elementor-element-9794bb0 .elementor-heading-title:after{
    content: "";
    position: absolute;
    left: 18px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #d7322e;
    transform: translateY(-50%);
    animation: pulseDot 1.8s infinite;
    z-index: 1;
}

/* pulse animation */
@keyframes pulseDot{
    0%{
        transform: translateY(-50%) scale(1);
        opacity: .6;
    }
    70%{
        transform: translateY(-50%) scale(3);
        opacity: 0;
    }
    100%{
        opacity: 0;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-51524f6 */.elementor-18 .elementor-element.elementor-element-51524f6{
    --tw-bg-opacity: 1;
    background-color: rgb(244 245 246 / var(--tw-bg-opacity, 1));
}/* End custom CSS */