.elementor-8 .elementor-element.elementor-element-67b5df8{--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;--gap:150px 150px;--row-gap:150px;--column-gap:150px;--padding-top:150px;--padding-bottom:150px;--padding-left:20px;--padding-right:20px;}.elementor-8 .elementor-element.elementor-element-1f9cd48{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:100px 100px;--row-gap:100px;--column-gap:100px;}.elementor-8 .elementor-element.elementor-element-1f9cd48.e-con{--align-self:center;}.elementor-8 .elementor-element.elementor-element-79b378f .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-secondary );}.elementor-8 .elementor-element.elementor-element-fd8818f{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:100px 100px;--row-gap:100px;--column-gap:100px;}.elementor-8 .elementor-element.elementor-element-fd8818f.e-con{--align-self:center;}.elementor-8 .elementor-element.elementor-element-d31b359{width:var( --container-widget-width, calc(50% - 50px) );max-width:calc(50% - 50px);--container-widget-width:calc(50% - 50px);--container-widget-flex-grow:0;}.elementor-8 .elementor-element.elementor-element-d31b359:not( .elementor-widget-image ), .elementor-8 .elementor-element.elementor-element-d31b359.elementor-widget-image img{-webkit-mask-image:url( https://www.stadtwerke-weiden.de/wp-content/uploads/2026/09/image-mask-5.svg );-webkit-mask-size:contain;-webkit-mask-position:center center;-webkit-mask-repeat:no-repeat;}.elementor-8 .elementor-element.elementor-element-3e1d78e{--display:flex;}.elementor-8 .elementor-element.elementor-element-6baeacf .elementor-cta .elementor-cta__bg, .elementor-8 .elementor-element.elementor-element-6baeacf .elementor-cta .elementor-cta__bg-overlay{transition-duration:1500ms;}.elementor-8 .elementor-element.elementor-element-6baeacf{width:var( --container-widget-width, 765px );max-width:765px;--container-widget-width:765px;--container-widget-flex-grow:0;}.elementor-8 .elementor-element.elementor-element-6baeacf .elementor-cta__content{text-align:start;padding:0px 0px 0px 0px;background-color:var( --e-global-color-transparent );}.elementor-8 .elementor-element.elementor-element-6baeacf .elementor-cta__title{font-family:var( --e-global-typography-od2xcdl-font-family ), Sans-serif;font-size:var( --e-global-typography-od2xcdl-font-size );font-weight:var( --e-global-typography-od2xcdl-font-weight );line-height:var( --e-global-typography-od2xcdl-line-height );color:var( --e-global-color-secondary );}.elementor-8 .elementor-element.elementor-element-6baeacf .elementor-cta__description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-8 .elementor-element.elementor-element-9e7cf28{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:100px 100px;--row-gap:100px;--column-gap:100px;}.elementor-8 .elementor-element.elementor-element-9e7cf28.e-con{--align-self:center;}.elementor-8 .elementor-element.elementor-element-c07d0bf{width:100%;max-width:100%;}.elementor-8 .elementor-element.elementor-element-545e4b8{--display:flex;}.elementor-8 .elementor-element.elementor-element-c471c2f{--display:flex;}@media(max-width:1200px){.elementor-8 .elementor-element.elementor-element-79b378f .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-8 .elementor-element.elementor-element-6baeacf{width:var( --container-widget-width, 765px );max-width:765px;--container-widget-width:765px;--container-widget-flex-grow:0;}.elementor-8 .elementor-element.elementor-element-6baeacf .elementor-cta__title{font-size:var( --e-global-typography-od2xcdl-font-size );line-height:var( --e-global-typography-od2xcdl-line-height );}.elementor-8 .elementor-element.elementor-element-6baeacf .elementor-cta__description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-8 .elementor-element.elementor-element-32127b1 img{height:50px;}}@media(max-width:1024px){.elementor-8 .elementor-element.elementor-element-67b5df8{--gap:100px 100px;--row-gap:100px;--column-gap:100px;--padding-top:60px;--padding-bottom:60px;--padding-left:20px;--padding-right:20px;}.elementor-8 .elementor-element.elementor-element-1f9cd48{--gap:50px 50px;--row-gap:50px;--column-gap:50px;}.elementor-8 .elementor-element.elementor-element-79b378f .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-8 .elementor-element.elementor-element-fd8818f{--gap:50px 50px;--row-gap:50px;--column-gap:50px;}.elementor-8 .elementor-element.elementor-element-d31b359{--container-widget-width:calc(50% - 25px);--container-widget-flex-grow:0;width:var( --container-widget-width, calc(50% - 25px) );max-width:calc(50% - 25px);}.elementor-8 .elementor-element.elementor-element-6baeacf{width:100%;max-width:100%;}.elementor-8 .elementor-element.elementor-element-6baeacf .elementor-cta__title{font-size:var( --e-global-typography-od2xcdl-font-size );line-height:var( --e-global-typography-od2xcdl-line-height );}.elementor-8 .elementor-element.elementor-element-6baeacf .elementor-cta__description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-8 .elementor-element.elementor-element-9e7cf28{--gap:50px 50px;--row-gap:50px;--column-gap:50px;}}@media(max-width:767px){.elementor-8 .elementor-element.elementor-element-67b5df8{--gap:60px 60px;--row-gap:60px;--column-gap:60px;}.elementor-8 .elementor-element.elementor-element-1f9cd48{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-8 .elementor-element.elementor-element-79b378f .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-8 .elementor-element.elementor-element-fd8818f{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-8 .elementor-element.elementor-element-d31b359{width:100%;max-width:100%;}.elementor-8 .elementor-element.elementor-element-3e1d78e{--width:100%;}.elementor-8 .elementor-element.elementor-element-6baeacf{width:100%;max-width:100%;}.elementor-8 .elementor-element.elementor-element-6baeacf .elementor-cta__content{text-align:center;}.elementor-8 .elementor-element.elementor-element-6baeacf .elementor-cta__title{font-size:var( --e-global-typography-od2xcdl-font-size );line-height:var( --e-global-typography-od2xcdl-line-height );}.elementor-8 .elementor-element.elementor-element-6baeacf .elementor-cta__description{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-8 .elementor-element.elementor-element-9e7cf28{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-8 .elementor-element.elementor-element-c07d0bf{text-align:center;}}@media(min-width:768px){.elementor-8 .elementor-element.elementor-element-1f9cd48{--width:1100px;}.elementor-8 .elementor-element.elementor-element-fd8818f{--width:1100px;}.elementor-8 .elementor-element.elementor-element-3e1d78e{--width:calc(50% - 50px);}.elementor-8 .elementor-element.elementor-element-9e7cf28{--width:1100px;}}@media(max-width:1200px) and (min-width:768px){.elementor-8 .elementor-element.elementor-element-1f9cd48{--width:100%;}.elementor-8 .elementor-element.elementor-element-fd8818f{--width:100%;}.elementor-8 .elementor-element.elementor-element-9e7cf28{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-8 .elementor-element.elementor-element-1f9cd48{--width:100%;}.elementor-8 .elementor-element.elementor-element-fd8818f{--width:100%;}.elementor-8 .elementor-element.elementor-element-3e1d78e{--width:calc(50% - 25px);}.elementor-8 .elementor-element.elementor-element-9e7cf28{--width:100%;}}/* Start custom CSS for image, class: .elementor-element-d31b359 *//* ==========================================================================
   Was dich erwartet  |  Bild mit SVG-Maske (image-mask-1.svg)
   --------------------------------------------------------------------------
   Ziel: Die Maske ist auf JEDEM Breakpoint exakt so breit wie das Bild,
   die Hoehe ergibt sich automatisch aus dem Seitenverhaeltnis der Maske.

   Maskengeometrie (image-mask-1.svg):
     viewBox .................... 0 0 427.347 498.846
     Seitenverhaeltnis .......... 427.347 : 498.846
     -> Hoehe = Breite x 1,16736

   Die Breite kommt weiterhin komplett aus Elementor (Erweitert > Breite):
     Desktop  calc(50% - 50px)   (50 % der 1100px-Reihe minus halber Gap = 500px)
     Tablet   calc(50% - 25px)
     Mobile   100 %
   Hier wird nur das Seitenverhaeltnis der Bildbox auf das Maskenverhaeltnis
   gelegt und die Maske mit 100% 100% darueber gezogen. Ergebnis: kein
   Leerrand, kein Versatz, keine feste Hoehe mehr noetig - die Hoehe rechnet
   der Browser bei jeder Breite selbst aus (500px Breite -> 583,7px Hoehe).

   Dieses CSS liegt bereits im Widget: Erweitert > Benutzerdefiniertes CSS.
   Die festen Bildhoehen (Desktop 450px, Tablet calc(100vw * 0.5),
   Mobile calc(100vw * 1)) wurden in dieser Vorlage entfernt.
   ========================================================================== */

.elementor-8 .elementor-element.elementor-element-d31b359 {
    /* image-mask-1.svg als Data-URI (unabhaengig von Mediathek + Domain,
       preserveAspectRatio='none' = die Maske fuellt die Box immer exakt aus).
       Alternative, falls die Maske spaeter in Elementor getauscht wird:
       --wde-maske: url("https://www.stadtwerke-weiden.de/wp-content/uploads/2026/08/image-mask-1.svg"); */
    --wde-maske: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 427.347 498.846' preserveAspectRatio='none'%3E%3Cpath fill='%23000' d='M113.616,2.911-52.236,85.773c-13.778,6.883-22.116,18.79-22.116,31.582V297.627c0,20.7,21.438,37.469,47.882,37.469H20.213c26.446,0,47.882,16.776,47.882,37.469V458.4c0,20.693,21.438,37.469,47.882,37.469H305.113c26.444,0,47.882-16.776,47.882-37.471V117.346c0-12.786-8.333-24.691-22.1-31.576L165.161,2.917a59.327,59.327,0,0,0-51.545-.006' transform='translate(74.352 2.976)'/%3E%3C/svg%3E");

    /* Seitenverhaeltnis der Maske: Breite / Hoehe */
    --wde-ratio: 427.347 / 498.846;
}

/* --------------------------------------------------------------------------
   Elementor legt die Maske bei Bild-Widgets direkt auf das <img>
   (generierter Selektor: ....elementor-widget-image img mit -webkit-mask-size:
   contain). Deshalb hier derselbe Selektor mit gleicher Spezifitaet - das
   Custom CSS wird spaeter ausgegeben und gewinnt damit sauber.
   -------------------------------------------------------------------------- */
.elementor-8 .elementor-element.elementor-element-d31b359.elementor-widget-image img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;                        /* hebt die festen Hoehen auf */
    aspect-ratio: var(--wde-ratio);      /* Hoehe = Breite x 1,16736 */

    /* Bild fuellt die Maskenflaeche formatfuellend, ohne Verzerrung.
       Elementor blendet diese beiden Optionen aus, sobald keine feste Hoehe
       gesetzt ist - deshalb stehen sie hier. Bildausschnitt ueber
       object-position steuern (z. B. "center top"). */
    object-fit: cover;
    object-position: center center;

    -webkit-mask-image: var(--wde-maske);
            mask-image: var(--wde-maske);
    -webkit-mask-size: 100% 100%;        /* Breite = Bildbreite, Hoehe = Boxhoehe */
            mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center center;
            mask-position: center center;
}/* End custom CSS */
/* Start custom CSS for call-to-action, class: .elementor-element-6baeacf */.elementor-8 .elementor-element.elementor-element-6baeacf .elementor-cta__title span {color:var(--e-global-color-primary)}

.elementor-8 .elementor-element.elementor-element-6baeacf .elementor-cta__description b {font-weight:600!important;}

.elementor-8 .elementor-element.elementor-element-6baeacf a {
    color: var(--e-global-color-text);
    text-decoration: none;
    transition: all 0.3s ease;
}

.elementor-8 .elementor-element.elementor-element-6baeacf a:hover {
    color: var(--e-global-color-secondary);
    text-decoration: underline;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-c07d0bf */.elementor-8 .elementor-element.elementor-element-c07d0bf b {
    color:var(--e-global-color-secondary);
}

.elementor-8 .elementor-element.elementor-element-c07d0bf a {
    color: var(--e-global-color-text);
    text-decoration: none;
    transition: all 0.3s ease;
}

.elementor-8 .elementor-element.elementor-element-c07d0bf a:hover {
    color: var(--e-global-color-secondary);
    text-decoration: underline;
}/* End custom CSS */