.elementor-25 .elementor-element.elementor-element-9d6c8c4{--display:grid;--e-con-grid-template-columns:repeat(4, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:0px 0px;--row-gap:0px;--column-gap:0px;--grid-auto-flow:row;--padding-top:2em;--padding-bottom:2em;--padding-left:2em;--padding-right:2em;}.elementor-25 .elementor-element.elementor-element-de74d7a{--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;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );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 );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );}.elementor-25 .elementor-element.elementor-element-ece41ac{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-25 .elementor-element.elementor-element-ece41ac.elementor-element{--align-self:flex-end;}.elementor-25 .elementor-element.elementor-element-e1ed93b{--display:flex;}.elementor-widget-heading .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 );text-transform:var( --e-global-typography-primary-text-transform );font-style:var( --e-global-typography-primary-font-style );text-decoration:var( --e-global-typography-primary-text-decoration );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-primary );}.elementor-25 .elementor-element.elementor-element-72101e8{width:var( --container-widget-width, 50% );max-width:50%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0% 0% 0% 0%;--container-widget-width:50%;--container-widget-flex-grow:0;text-align:start;}.elementor-25 .elementor-element.elementor-element-72101e8.elementor-element{--align-self:flex-start;}.elementor-25 .elementor-element.elementor-element-72101e8 .elementor-heading-title{color:var( --e-global-color-secondary );}.elementor-25 .elementor-element.elementor-element-1db7ed6{--display:flex;}.elementor-25 .elementor-element.elementor-element-0d67efc{--display:flex;--justify-content:flex-start;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-25 .elementor-element.elementor-element-5b87587 .elementor-icon-wrapper{text-align:start;}.elementor-25 .elementor-element.elementor-element-5b87587 .elementor-icon{font-size:100%;}.elementor-25 .elementor-element.elementor-element-5b87587 .elementor-icon svg{height:100%;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-25 .elementor-element.elementor-element-9d6c8c4{--grid-auto-flow:row;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}}@media(min-width:768px){.elementor-25 .elementor-element.elementor-element-9d6c8c4{--width:100%;}}@media(max-width:767px){.elementor-25 .elementor-element.elementor-element-9d6c8c4{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-25 .elementor-element.elementor-element-72101e8.elementor-element{--align-self:center;}.elementor-25 .elementor-element.elementor-element-72101e8{text-align:center;}}/* Start custom CSS for container, class: .elementor-element-9d6c8c4 *//* ==========================================================
   DANIELA ZELLER – HEADER
   4 gleich breite Spalten
   Wortmarke mittig zum Kreis
   Titel unten bündig zur Wortmarke
   ========================================================== */


/* ----------------------------------------------------------
   HAUPTGRID
   ---------------------------------------------------------- */

.dz-header-grid {
    --dz-mark-size: clamp(52px, 4vw, 65px);
    --dz-logo-gap: clamp(12px, 1.2vw, 18px);

    /*
     * Nur für einen möglichen optischen Feinausgleich
     * des gesetzten Textes gegenüber dem SVG.
     */
    --dz-title-shift: 2px;

    display: grid !important;

    grid-template-columns:
        repeat(4, minmax(0, 1fr)) !important;

    /*
     * Die mittlere Zeile wird durch die Wortmarke bestimmt.
     * Oben und unten bleibt jeweils gleich viel Platz.
     */
    grid-template-rows:
        minmax(0, 1fr)
        auto
        minmax(0, 1fr) !important;

    column-gap: 0 !important;
    row-gap: 0 !important;

    align-items: stretch !important;

    width: 100% !important;
    max-width: none !important;

    /*
     * Der Inhaltsbereich ist mindestens so hoch wie der Kreis.
     */
    min-height: var(--dz-mark-size);

    padding-top: clamp(20px, 2vw, 30px);
    padding-bottom: clamp(20px, 2vw, 30px);
}


/* ----------------------------------------------------------
   ELEMENTOR-ZWISCHENCONTAINER AUFLÖSEN
   ---------------------------------------------------------- */

/*
 * Elementor setzt um Logo und Titel zusätzliche Boxen.
 * display: contents sorgt dafür, dass Kreis, Wortmarke und
 * Titel direkt am gemeinsamen Hauptgrid teilnehmen.
 */

.dz-header-logo,
.dz-header-logo > .e-con-inner,
.dz-header-title,
.dz-header-title > .e-con-inner {
    display: contents !important;
}


/* ----------------------------------------------------------
   KREIS
   Erste Spalte, über alle drei Zeilen
   ---------------------------------------------------------- */

.dz-brand__mark {
    grid-column: 1 !important;
    grid-row: 1 / 4 !important;

    align-self: center !important;
    justify-self: start !important;

    position: static !important;
    transform: none !important;

    width: var(--dz-mark-size) !important;
    height: var(--dz-mark-size) !important;

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

    line-height: 0 !important;
}


.dz-brand__mark .elementor-widget-container {
    width: 100% !important;
    height: 100% !important;

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

    line-height: 0 !important;
}


.dz-brand__mark img {
    display: block !important;

    width: var(--dz-mark-size) !important;
    height: var(--dz-mark-size) !important;

    max-width: none !important;

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


/* ----------------------------------------------------------
   WORTMARKE
   Erste Spalte, mittlere Grid-Zeile
   ---------------------------------------------------------- */

.dz-brand__wordmark {
    grid-column: 1 !important;
    grid-row: 2 !important;

    align-self: end !important;
    justify-self: start !important;

    position: static !important;
    transform: none !important;

    width: auto !important;

    max-width: calc(
        100% - var(--dz-mark-size) - var(--dz-logo-gap)
    ) !important;

    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;

    margin-left: calc(
        var(--dz-mark-size) + var(--dz-logo-gap)
    ) !important;

    padding: 0 !important;

    line-height: 0 !important;
}


.dz-brand__wordmark .elementor-widget-container {
    width: auto !important;
    max-width: 100% !important;

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

    line-height: 0 !important;
}


.dz-brand__wordmark img {
    display: block !important;

    width: clamp(180px, 19vw, 300px) !important;
    max-width: 100% !important;
    height: auto !important;

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


/* ----------------------------------------------------------
   TITEL
   Zweite Spalte, dieselbe mittlere Grid-Zeile
   ---------------------------------------------------------- */

.dz-header-title .elementor-widget {
    grid-column: 2 !important;
    grid-row: 2 !important;

    align-self: end !important;
    justify-self: start !important;

    position: relative !important;
    top: var(--dz-title-shift);

    width: auto !important;
    height: auto !important;

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


.dz-header-title .elementor-widget-container {
    width: auto !important;
    height: auto !important;

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


.dz-header-title .elementor-heading-title {
    display: block !important;

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

    font-size: clamp(13px, 1.3vw, 18px);
    line-height: 1 !important;

    white-space: nowrap;
}


/* ----------------------------------------------------------
   DRITTE SPALTE: LEER
   ---------------------------------------------------------- */

.dz-header-spacer {
    grid-column: 3 !important;
    grid-row: 1 / 4 !important;

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

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


.dz-header-spacer > .e-con-inner {
    width: 100% !important;
    max-width: none !important;

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


/* ----------------------------------------------------------
   VIERTE SPALTE: MENÜ
   ---------------------------------------------------------- */

.dz-header-menu {
    grid-column: 4 !important;
    grid-row: 1 / 4 !important;

    align-self: center !important;

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

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


.dz-header-menu > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;

    align-items: center !important;
    justify-content: flex-start !important;

    width: 100% !important;
    max-width: none !important;

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


.dz-header-menu .elementor-widget {
    width: auto !important;

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


/* ----------------------------------------------------------
   MOBILE
   ---------------------------------------------------------- */

@media (max-width: 767px) {

    .dz-header-grid {
        --dz-mark-size: 44px;
        --dz-logo-gap: 10px;

        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        grid-template-rows: auto auto !important;

        align-items: center !important;

        row-gap: 14px !important;
        column-gap: 16px !important;

        padding-top: 18px;
        padding-bottom: 18px;
    }


    /* Kreis: erste Zeile links */

    .dz-brand__mark {
        grid-column: 1 !important;
        grid-row: 1 !important;

        align-self: center !important;
        justify-self: start !important;
    }


    /* Wortmarke: ebenfalls erste Zeile links */

    .dz-brand__wordmark {
        grid-column: 1 !important;
        grid-row: 1 !important;

        align-self: center !important;
        justify-self: start !important;

        margin-left: calc(
            var(--dz-mark-size) + var(--dz-logo-gap)
        ) !important;
    }

    .dz-brand__wordmark img {
        width: clamp(140px, 45vw, 220px) !important;
    }


    /* Menü: erste Zeile rechts */

    .dz-header-menu {
        grid-column: 2 !important;
        grid-row: 1 !important;

        align-self: center !important;
        justify-self: end !important;

        width: auto !important;
    }

    .dz-header-menu > .e-con-inner {
        justify-content: flex-end !important;
    }


    /* Überschrift: zweite Zeile über die volle Breite */

    .dz-header-title .elementor-widget {
        display: block !important;

        grid-column: 1 / -1 !important;
        grid-row: 2 !important;

        align-self: start !important;
        justify-self: stretch !important;

        position: static !important;
        top: auto !important;

        width: 100% !important;
        max-width: none !important;

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

    .dz-header-title .elementor-widget-container {
        width: 100% !important;
    }

    .dz-header-title .elementor-heading-title {
        width: 100% !important;

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

        white-space: normal !important;
        text-align: left !important;
    }


    /* Leere Desktop-Spalte ausblenden */

    .dz-header-spacer {
        display: none !important;
    }
}/* End custom CSS */