/*
Theme Name: Twenty Twenty-Four Child
Theme URI: https://example.com
Description: Child Theme von Twenty Twenty-Four
Author: websedit AG
Template: twentytwentyfour
Version: 1.0
*/

/* google-sans-flex-100 - latin */
@font-face {
    font-display: swap;
    font-family: 'Google Sans Flex';
    font-style: normal;
    font-weight: 100;
    src: url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-100.woff2') format('woff2'), iOS 10 + */ url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-100.ttf') format('truetype');
}

/* google-sans-flex-200 - latin */
@font-face {
    font-display: swap;
    font-family: 'Google Sans Flex';
    font-style: normal;
    font-weight: 200;
    src: url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-200.woff2') format('woff2'), iOS 10 + */ url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-200.ttf') format('truetype');
}

/* google-sans-flex-300 - latin */
@font-face {
    font-display: swap;
    font-family: 'Google Sans Flex';
    font-style: normal;
    font-weight: 300;
    src: url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-300.woff2') format('woff2'), iOS 10 + */ url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-300.ttf') format('truetype');
}

/* google-sans-flex-regular - latin */
@font-face {
    font-display: swap;
    font-family: 'Google Sans Flex';
    font-style: normal;
    font-weight: 400;
    src: url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-regular.woff2') format('woff2'), iOS 10 + */ url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-regular.ttf') format('truetype');
}

/* google-sans-flex-500 - latin */
@font-face {
    font-display: swap;
    font-family: 'Google Sans Flex';
    font-style: normal;
    font-weight: 500;
    src: url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-500.woff2') format('woff2'), iOS 10 + */ url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-500.ttf') format('truetype');
}

/* google-sans-flex-600 - latin */
@font-face {
    font-display: swap;
    font-family: 'Google Sans Flex';
    font-style: normal;
    font-weight: 600;
    src: url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-600.woff2') format('woff2'), iOS 10 + */ url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-600.ttf') format('truetype');
}

/* google-sans-flex-700 - latin */
@font-face {
    font-display: swap;
    font-family: 'Google Sans Flex';
    font-style: normal;
    font-weight: 700;
    src: url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-700.woff2') format('woff2'), iOS 10 + */ url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-700.ttf') format('truetype');
}

/* google-sans-flex-800 - latin */
@font-face {
    font-display: swap;
    font-family: 'Google Sans Flex';
    font-style: normal;
    font-weight: 800;
    src: url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-800.woff2') format('woff2'), iOS 10 + */ url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-800.ttf') format('truetype');
}

/* google-sans-flex-900 - latin */
@font-face {
    font-display: swap;
    font-family: 'Google Sans Flex';
    font-style: normal;
    font-weight: 900;
    src: url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-900.woff2') format('woff2'), iOS 10 + */ url('/wp-content/themes/twentytwentyfour-child/fonts/google-sans-flex-v16-latin-900.ttf') format('truetype');
}


:root {
    --color-default: #262626;
    --color-primary: #b21b1b;
    --color-secondary: #807c7c;
    --color-tertiary: #f2f2f2;
    --color-white: #fff;
    --color-bg-white: #fafafa;
    --color-input: #a6a6a6;

    --box-shadow: 0 10px 15px #0002;
    --box-radius: 16px;
    --box-boxed: 1px solid var(--color-default);
    --col-gap: 24px;
    --navi-gap: 40px;
    --max-width-default: 1656px;

    --font-family: 'Google Sans Flex';
    --font-size-default: 1.25rem;
    --font-size-h1: 4rem;
    --font-size-h2: 3rem;
    --font-size-h3: 2.25rem;
    --font-size-h4: 1.75rem;
    --font-size-h5: 1.5rem;
    --font-size-small: 1rem;
    --font-size-large: 1.75rem;
    --font-size-btn: 1.75rem;
}

*::placeholder {
    font-size: var(--font-size-small);
}

.p-0 {
    padding: 0 !important;
}

.pb-0 {
    padding-bottom: 0 !important;
}

.pb-10 {
    padding-bottom: 10px !important;
}

.pb-20 {
    padding-bottom: 20px !important;
}

.pb-30 {
    padding-bottom: 30px !important;
}

.pb-40 {
    padding-bottom: 40px !important;
}

.pb-50 {
    padding-bottom: 50px !important;
}

.pb-60 {
    padding-bottom: 60px !important;
}

.pb-70 {
    padding-bottom: 70px !important;
}

.pb-80 {
    padding-bottom: 80px !important;
}

.pb-90 {
    padding-bottom: 90px !important;
}

.pb-100 {
    padding-bottom: 100px !important;
}

.pb-120 {
    padding-bottom: 120px !important;
}

.pt-0 {
    padding-top: 0 !important;
}

.pt-10 {
    padding-top: 10px !important;
}

.pt-20 {
    padding-top: 20px !important;
}

.pt-30 {
    padding-top: 30px !important;
}

.pt-40 {
    padding-top: 40px !important;
}

.pt-50 {
    padding-top: 50px !important;
}

.pt-60 {
    padding-top: 60px !important;
}

.pt-70 {
    padding-top: 70px !important;
}

.pt-80 {
    padding-top: 80px !important;
}

.pt-90 {
    padding-top: 90px !important;
}

.pt-100 {
    padding-top: 100px !important;
}

.pt-120 {
    padding-top: 120px !important;
}

@media screen and (min-width: 1280px) {
    .pr-col-1,
    .e-con.pr-col-1,
    .e-flex.pr-col-1 {
        padding-right: calc(100% / 12);
    }
}

/* Basics */
body {
    color: var(--color-default);
    font-size: var(--font-size-default);
}

h1, h2, h3, h4, h5, h6 {
    color: var(--color-default);
    margin: .25rem 0 .5rem;
    hyphens: auto;
}

h1 {
    font-weight: 500;
}

h2 {
    font-weight: 600;
}

h1 {
    font-size: var(--font-size-h1);
}

h2 {
    font-size: var(--font-size-h2);
    font-weight: 600;
}

h3 {
    font-size: var(--font-size-h3);
    font-weight: 600;
}

h4 {
    font-size: var(--font-size-h4);
    font-weight: 600;
    padding-bottom: 1rem;
    padding-top: 1rem;
}

h5 {
    font-size: var(--font-size-h5);
    font-weight: 500;
}

a {
    color: var(--color-primary);
    text-decoration: underline;
}

.btn {
    background: var(--color-primary);
    padding: .5em 1.25em;
    border-radius: 1.5em;
    color: var(--color-white);
    font-size: var(--font-size-btn);
}

.p-small {
    font-size: var(--font-size-small);
}

.p-large {
    font-size: var(--font-size-large);
}

.has-base-background-color {
    background-color: white;
}

.site-content > * {
    background-color: var(--color-bg-white);
}

.bg-color-white {
    background-color: var(--color-bg-white);
    color: var(--color-default);
}

.bg-color-primary {
    background-color: var(--color-primary);
    color: var(--color-white);
}

.bg-color-secondary {
    background-color: var(--color-secondary);
    color: var(--color-white);
}

.bg-color-tertiary {
    background-color: var(--color-tertiary);
    color: var(--color-default);
}

.e-con {
    --content-max-width: 520px;
}

@media screen and (max-width: 767px ) {
    .e-con {
        --content-max-width: 720px;
    }
}

@media screen and (max-width: 991px ) {
    .e-con {
        --content-max-width: 960px;
    }
}

@media screen and (max-width: 1279px ) {
    .e-con {
        --content-max-width: 1140px;
    }
}

@media screen and (max-width: 1519px ) {
    .e-con {
        --content-max-width: 1520px;
    }
}

@media screen and (min-width: 1656px ) {
    .e-con {
        --content-max-width: 1520px;
    }
}

.wp-block-site-title a {
    color: var(--color-primary);
}

.elementor:has(.e-con-full) {
    width: 100%;
    margin: 0 !important;
    max-width: unset;
}

.e-con-full .metaslider {
    min-height: calc(100vh - 100px - 8px);
}

.e-con-full .metaslider .slides {
    margin: 0;
    padding: 0;
    font-size: var(--font-size-large);
}

.e-con-full .metaslider .slides .ms-image {
    position: relative;
    display: flex !important;
    width: 100%;
    flex-wrap: wrap;
    min-height: 100vh;
}

.e-con-full .metaslider .slides .ms-image > * {
    border: none;
    border-radius: 0;
    box-shadow: none;
    height: 100%;
    width: 100%;
    position: absolute;
    object-fit: cover;
}

.e-con-full .metaslider .slides .caption-wrap {
    align-content: center;
    background: none transparent;
    /*display: block;*/
    left: 0;
    margin-left: calc(50% - var(--content-width) / 2);
    max-width: calc(100% / 12 * 8 - 2rem);
    opacity: 1;
    padding: 1rem var(--col-gap);
    position: relative;
    width: 100%;
    z-index: 1000;
    top: 0;
    height: auto;

    display: flex;
    flex-direction: column;
    min-height: 80vh;

}

.e-con-full .metaslider .slides .caption-wrap * {
    hyphens: auto;
    opacity: 1;
}

.e-con-full .metaslider .slides .caption-wrap h1 {
    color: var(--color-white);
    font-size: var(--font-size-h1);
}

.e-con-full .metaslider .slider-text {
    color: var(--color-white);
    padding-bottom: 2rem;
}

.e-con-full .metaslider .slider-text-block.first {
    margin-bottom: auto;
    margin-top: auto;
}

.e-con-full .metaslider .slider-text-block.first .p-large {
    display: none;
}

.e-con-full .metaslider .slider-text.first {
    max-width: 66.666%;
    margin-top: auto;
    margin-bottom: auto;

    h1 {
        hyphens: none;
    }
}

.e-con-full .metaslider .slides .caption-wrap .caption {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.e-con-full .metaslider .slides .caption-wrap .slider-text .d-flex {
    border-radius: 2rem;
    color: var(--color-default);
    display: inline-flex;
    flex-wrap: wrap;
    gap: 0 2rem;
    padding: 1rem 1.5rem;
}

.contact-links a,
.e-con-full .metaslider .slides .caption-wrap .slider-text .d-flex a {
    color: var(--color-default);
}

.e-con-full .metaslider .slider-text .d-flex .flex-auto:first-of-type {
    flex: 0 0 100%;
}

.elementor-element.e-con.contact-links .elementor-widget-icon-list .elementor-icon-list-item:has(div.we-radius) {
    display: inline-flex;
    border-radius: calc(.5rem + 1.25rem);
    border: var(--box-boxed);
    overflow: hidden;
    padding: .5rem 1.5rem .5rem .5rem;
}

.elementor-element.e-con.contact-links .elementor-widget-icon-list .elementor-icon-list-item:has(div.we-radius) .elementor-icon-list-icon {
    height: 32px;
}

.elementor-element.e-con.contact-links .elementor-widget-icon-list .elementor-icon-list-item:has(div.we-radius) .elementor-icon-list-icon svg {
    height: 32px;
}

.contact-links .elementor-icon-list-item:has(.elementor-icon-list-icon div.we-radius) * {
    padding-bottom: .5rem;
    padding-top: .5rem;
}

.contact-links .elementor-icon-list-item .elementor-icon-list-icon:has(div.we-radius) {
    width: calc(34px + 1em);
}

.contact-links .elementor-icon-list-item:has(div.we-radius) .elementor-icon-list-text {
    margin-left: -6px;
    padding: 0;
}

.contact-links .elementor-icon-list-item .we-radius {
    display: flex;
    padding: 0 0 0 .125em;
    gap: 1rem;
}

.e-con-full .metaslider .slider-text .d-flex .flex-auto {
    align-self: center;
    display: flex;
    flex: 0 0 calc(100% / 3 - 1.5rem);
    white-space: nowrap;
}

.e-con-full .metaslider .slider-text .d-flex .flex-auto:not(:first-child) {
    font-size: 1rem;
}

.e-con-full .metaslider .slider-text .d-flex .flex-auto:last-child {
    padding-right: 3rem;
}

.e-con-full .metaslider .slider-text .icon {
    float: left;
    height: auto;
    padding-right: 1rem;
    width: 3.25rem;
}


.elementor-element.e-flex.e-con-boxed.we-bild-rechts-rand > .e-con-inner > .elementor-element:last-child {
    width: 50vw;
    overflow: visible;
    position: absolute;
    right: 0;
    padding-right: 0;

    * {
        padding-right: 0;
        right: 0;
        left: 0;
        width: 50vw;
        position: absolute;
    }

    img {
        max-height: unset;
        width: auto;
        object-fit: cover;
        object-position: left;

    }

}

#header #headerimg > * {
    position: absolute;
    z-index: 10;
}

#header #headerimg > * > * {
    color: var(--color-primary);
    text-decoration: none;
}

header,
.site-header {
    height: 100px;
    border-bottom: 8px solid var(--color-primary);

    .e-con {
        display: block;
        height: 100%;
        margin: 0;
        padding: 0;
    }

    .container {
        margin: 0 auto;
        max-width: calc(var(--content-width) - var(--col-gap) * 2);
        padding: 0 var(--col-gap);
        position: relative;
        display: flex;
        width: 100%;
        flex-wrap: wrap;
        align-items: center;
        height: 100px;

        > *:not(.main-navigation ) {
            flex: auto;
        }
    }

    .site-logo {
        /*        position: absolute; */

        * {
            color: var(--color-primary);
            text-decoration: none;
        }

        .logo-title {
            font-size: 1.875rem;
            font-weight: 500;
        }

        .logo-slogan {
            font-size: 1.125rem;
            font-weight: 300;
        }
    }
    @media screen and (max-width: 480px) {
        .site-logo {
            transform: scale(.8);
            transform-origin: left center;
            .logo-title {
                line-height: 1.2em;
            }
        }
    }

}

.site-header .main-navigation .menu {
    list-style: none;
    padding: 0;
    margin-right: 1rem;
}

.site-header .main-navigation .menu li a {
    text-decoration: none;
}

.site-header .main-navigation .menu li a[href*='kontakt'],
.site-header .main-navigation .menu li:last-child a {
    background: var(--color-primary);
    padding: .5em 1.5em;
    border-radius: 1.5em;
    color: var(--color-white);
    font-size: var(--font-size-default);
}


@media screen and (min-width: 992px) {
    .nav-hamburger {
        display: none;
    }

    .site-header .main-navigation {
        flex: auto;
    }

    .site-header .main-navigation .menu {
        display: flex;
        flex-wrap: wrap;
        gap: 1.25em;
        float: right;
    }

    .site-header .main-navigation .menu li {
        flex: 0 0 auto;
    }

    .cols-6 {
        max-width: 75%;
    }
}

@media screen and (min-width: 1280px) {
    .site-header .main-navigation .menu {
        gap: 2.5em;
    }

    .cols-6 {
        max-width: 50%;
    }
}

.we-cols-center,
.e-con.we-cols-center,
.e-flex.we-cols-center {
    margin-left: auto;
    margin-right: auto;
}

.we-cols-left {
    margin-left: 0;
    margin-right: auto;
}

.we-cols-right {
    margin-left: auto;
    margin-right: 0;
}

.we-shadow,
.e-con .we-shadow {
    box-shadow: var(--box-shadow);
}

.we-radius,
.e-con .we-radius {
    border-radius: var(--box-radius);
    overflow: hidden;
}

.e-con-boxed.e-flex {
    padding-left: var(--col-gap);
    padding-right: var(--col-gap);
}

.e-con-boxed.e-flex .e-con-inner {
    gap: var(--col-gap);
}

.e-con-boxed.e-flex .we-radius.we-shadow {
    padding: 0;
}

.e-con-boxed.e-flex .we-radius.we-shadow .elementor-element.elementor-widget-image {
    padding: 0;
}

.e-con-boxed.e-flex .we-radius.we-shadow .elementor-element.elementor-widget-text-editor {
    padding: 1.25rem 2.25rem 2.25rem;
}

.e-con-boxed.e-flex .we-radius.we-shadow .elementor-element.elementor-widget-text-editor > *:last-child {
    margin-bottom: 0;
}

.e-con {
    & .elementor-button {
        align-items: center;
        background: var(--color-primary);
        border-radius: 1.5em;
        color: var(--color-white);
        display: inline-flex;
        font-size: var(--font-size-default);
        justify-content: center;
        margin: 02.25rem;
        padding: .5em 1.5em;
    }

    & .fullwidth .elementor-button {
        margin: 0;
        width: calc(100% - 5rem) !important;
    }

    & .btn-arrow-right {
        & .elementor-button::after {
            content: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' height='24px' viewBox='0 -960 960 960' width='24px' fill='%23ffffff'%3E%3Cpath d='M647-440H160v-80h487L423-744l57-56 320 320-320 320-57-56 224-224Z'/%3E%3C/svg%3E");
            padding-left: .5rem;
        }
    }
}

.textmedia-with-button .we-shadow.we-radius {
    position: relative;
}

.textmedia-with-button .we-shadow.we-radius > div:not(.elementor-widget-image) {
    padding: 0 0 5rem 0;
    height: 100%;
}

.textmedia-with-button .we-shadow.we-radius > div:not(.elementor-widget-image) .elementor-widget-button {
    bottom: 0;
    position: absolute;
    width: 100%
}

.elementor-element.e-con.we-contact {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    border: 1px solid var(--color-default);
    padding: 1.25rem;
    --border-radius: 1rem;
}

.elementor-element.e-con.we-contact h3 {
    margin: 0;
}

.elementor-element.e-con.we-contact > * {
    flex: 0 0 100%;
    max-width: 100%;

}

@media screen and (min-width: 576px) {
    .elementor-element.e-con.we-contact > .elementor-widget.elementor-widget-image {
        max-width: calc(100% / 3);
    }

    .elementor-element.e-con.we-contact > .elementor-widget.elementor-widget-image + .e-child {
        max-width: calc(100% / 3 * 2 - 2rem);
    }
}


.elementor-icon i,
.elementor-icon svg {
    height: 100% !important;
    max-height: 100px;
    width: auto !important;
}


.elementor-element.e-con .elementor-widget-icon-list .elementor-icon-list-item {
    padding-bottom: .5em;
    gap: 1em;
    align-items: start;
}

.elementor-element.e-con.testimonials-item .elementor-widget-icon-list .elementor-icon-list-item {
    gap: 0;
}

.elementor-element.e-con.testimonials-item .elementor-widget-icon-list .elementor-icon-list-item .elementor-icon-list-icon {
    width: auto;
}

.elementor-element.e-con.testimonials-item .elementor-widget-icon-list .elementor-icon-list-item svg {
    margin: 0;
}

.elementor-element.e-con .elementor-widget-icon-list .elementor-icon-list-item:last-child {
    padding-bottom: 0;
}

.elementor-element.e-con .elementor-icon-list-icon {
    height: 40px;
    width: 44px;
    padding-right: 1px;
}

.elementor-element.e-con .elementor-icon-list-icon svg {
    height: 40px;
    width: 40px;
}

.elementor-element.e-grid {
    gap: var(--col-gap);
    justify-content: center;
}

.e-flex .elementor-element.e-con.cols-md-6,
.e-flex .elementor-element.e-con.cols-md-3,
.e-flex .elementor-element.e-con.cols-lg-6,
.e-flex .elementor-element.e-con.cols-lg-3 {
    --display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.e-flex .elementor-element.e-grid.cols-md-6 > .e-con.e-child,
.e-flex .elementor-element.e-grid.cols-lg-3 > .e-con.e-child {
    max-width: 100%;
}

@media screen and (min-width: 768px) {
    .e-flex .elementor-element.e-grid.cols-md-6 > .e-con.e-child {
        max-width: calc(50% - 2rem);
    }

    .e-con-full .metaslider .slider-text-block.first .p-large {
        display: block;
    }
}

@media screen and (min-width: 992px) {
    .e-flex .elementor-element.e-grid.cols-lg-3 > .e-con.e-child {
        max-width: calc(25% - 2rem);
    }
}

.testimonials,
.elementor-element.testimonials {
    font-size: var(--font-size-default);
    --align-items: start;

}

.testimonials-item,
.elementor-element.testimonials-item {
    border-radius: var(--box-radius);
    border: 1px solid var(--color-default);
    padding: 2.25rem;
}

.ul-flex ul {
    display: flex;
    flex-wrap: wrap;
}


/* ACCORDION */
.e-n-accordion .e-n-accordion-item {
    background: #fff;
    border-radius: 1rem;
    overflow: hidden;
    color: var(--color-default);
    --n-accordion-title-font-size: var(--font-size-default);

    * {
        padding: 0;
    }
}

.e-n-accordion .e-n-accordion-item .e-n-accordion-item-title {
    padding: 0;
}

.e-n-accordion .e-n-accordion-item > *,
.e-n-accordion .e-n-accordion-item .e-n-accordion-item-title {
    align-items: start;
    border: none;
    color: var(--color-default);
}

.elementor-widget-n-accordion .e-n-accordion-item-title-header {
    order: 1 !important;
}

.elementor-widget-n-accordion .e-n-accordion-item-title-icon {
    order: 2 !important;
    position: absolute !important;
    right: 1.25rem;
    padding-top: 1.25rem;
}

.e-n-accordion .e-n-accordion-item .e-n-accordion-item-title .e-n-accordion-item-title-text {
    padding: 1.25rem 2.5rem;
}

.e-n-accordion .e-n-accordion-item .e-n-accordion-item-title + * {
    padding: 0 2.5rem 1.25rem;

    p {
        margin: 0;
    }
}

.e-n-accordion .e-n-accordion-item .e-n-accordion-item-title[aria-expanded='true'] {
    .e-n-accordion-item-title-text {
        color: var(--color-primary);
    }
}

.e-n-accordion .e-n-accordion-item:not(:last-child) {
    --n-accordion-item-title-space-between: .5rem;
}

.e-n-accordion .e-closed,
.e-n-accordion .e-opened {
    svg {
        display: none
    }
}

.e-n-accordion .e-n-accordion-item-title-icon .e-closed::after {
    content: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='31.5' y='31.5' width='31' height='31' rx='15.5' transform='rotate(180 31.5 31.5)' stroke='%23A6A6A6'/%3E%3Cmask id='mask0_4044_3783' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='4' y='4' width='24' height='24'%3E%3Crect x='4.00001' y='4' width='24' height='24' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_4044_3783)'%3E%3Cpath d='M16 19.4L10 13.4L11.4 12L16 16.6L20.6 12L22 13.4L16 19.4Z' fill='%23262626'/%3E%3C/g%3E%3C/svg%3E%0A");
}

.e-n-accordion .e-n-accordion-item-title-icon .e-opened::after {
    content: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0.5' y='0.5' width='31' height='31' rx='15.5' stroke='%23B31B1B'/%3E%3Cmask id='mask0_4044_3774' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='4' y='4' width='24' height='24'%3E%3Crect x='28' y='28' width='24' height='24' transform='rotate(180 28 28)' fill='%23D9D9D9'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_4044_3774)'%3E%3Cpath d='M16 12.6L22 18.6L20.6 20L16 15.4L11.4 20L10 18.6L16 12.6Z' fill='%23B31B1B'/%3E%3C/g%3E%3C/svg%3E%0A");
}

.we-shadow.box-radius {
    padding: 2.25rem;
}

.e-con.form-container {
    padding: 2.25rem;

    .e-con {
        padding: 0;
    }
}

.e-con.form-container.we-radius.we-shadow {
    padding: 2.25rem;
    background-color: var(--color-white);
}


.wpcf7-form {
    margin-bottom: 0;
}

.wpcf7 label {
    margin-bottom: .5rem;
}

.wpcf7 input,
.wpcf7 select,
.wpcf7 textarea {
    padding: .5rem .75rem;
    margin-bottom: 1rem;
    border: 1px solid var(--color-input);
    border-radius: 1.25rem;
    font-family: var(--font-family);
    font-size: var(--font-size-small);
    width: 100%;

}

.wpcf7 .wpcf7-not-valid-tip {
    margin-top: -.5rem;
}

.wpcf7 input[type="file"] {
    align-content: center;
    cursor: pointer;
    color: var(--color-default);
    font-size: var(--font-size-default);
    border: none;
    height: 100%;
}

.wpcf7 span[data-name="your-images"] {
    display: block;
    width: 100%;
    height: 100px;
    border: 2px solid black;
    border-radius: 1.5rem;
}

.wpcf7 input.wpcf7-submit {
    background: var(--color-primary) url("data:image/svg+xml,%3Csvg width='21' height='17' viewBox='0 0 21 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 16.9167V0L20.0801 8.45833L0 16.9167ZM1.75 14.2917L15.575 8.45833L1.75 2.625V6.93263L8.07683 8.45833L1.75 9.98404V14.2917Z' fill='white'/%3E%3C/svg%3E%0A") no-repeat;
    background-position: 63% center;
    border: none;
    color: var(--color-white);
    cursor: pointer;
    padding: 1rem 1rem 1rem .5rem;
}

.wpcf7 input.wpcf7-submit {
}

.wpcf7 p:has(.wpcf7-spinner) {
    margin-bottom: 0;
}


.site-content #footer {
    color: var(--color-white);
    background-color: var(--color-default);

    & .wp-block-group {
        color: var(--color-white);
        margin: 0 auto;
        max-width: var(--max-width-default);

        a {
            color: var(--color-white);
        }

        & .wp-block-columns {
            display: flex;
            flex-wrap: wrap;

            .logo-title {
                font-size: 3.125rem;
            }

            .logo-slogan {
                font-size: 1.625rem;
            }
        }

        .wp-block-column {
            padding-bottom: 0;
            padding-top: 0;

            p {
                margin: 0 0 1rem;
            }
        }

        .wp-block-column.col-left {
            flex: 0 0 calc(100% / 12 * 5 + (100% / 12 / 2));
            padding-right: calc(100% / 12 / 2);
        }

        .wp-block-column.col-middle {
            display: none;
        }

        .wp-block-column.col-right {
            flex: 0 0 calc(100% / 12 * 7 - (100% / 12));
            padding-left: calc(100% / 12 / 2 - 2px);
            border-left: 2px solid var(--color-white);

            strong {
                font-size: var(--font-size-h5);
            }

            .d-flex {
                --display: flex;
                flex-wrap: wrap;
                justify-content: space-between;

                > * {
                    flex: 0 0 auto;
                }
            }

            ul {
                list-style: none;
                padding-left: 0;
            }
        }
    }
}

#cmplz-document p, #cmplz-document li, #cmplz-document td, .editor-styles-wrapper .cmplz-unlinked-mode p, .editor-styles-wrapper .cmplz-unlinked-mode li, .editor-styles-wrapper .cmplz-unlinked-mode td {
    font-size: var(--font-size-default);
}


/*@media screen and (max-width: 767px) {*/
/*    .elementor-element.e-flex.e-con-boxed.we-bild-rechts-rand > .e-con-inner > .elementor-element:last-child {*/
/*        display: none;*/
/*    }*/
/*}*/
@media screen and (max-width: 575px) {
    .wpcf7 input.wpcf7-submit {
        background-position: 83% center;
    }

    .e-con-full .metaslider .slider-text.first p {
        max-width: 100%;
    }
}

@media screen and (min-width: 576px) and (max-width: 767px) {
    .wpcf7 input.wpcf7-submit {
        background-position: 68% center;
    }

    .e-con-full .metaslider .slider-text.first p {
        max-width: 75%;
    }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
    .wpcf7 input.wpcf7-submit {
        background-position: 80% center;
    }

    .e-con-full .metaslider .slider-text.first p {
        max-width: 66.666666%;
    }
}

@media screen and (min-width: 992px) and (max-width: 1279px) {
    .wpcf7 input.wpcf7-submit {
        background-position: 80% center;
    }

    .e-con-full .metaslider .slider-text.first p {
        max-width: 66.66666%;
    }
}


@media screen and (max-width: 767px) {
    .e-con-full .metaslider .slider-text.first h1 {
        hyphens: auto;
    }

    .textmedia-with-button .we-shadow.we-radius > div:not(.elementor-widget-image) {
        height: auto;
    }
}

@media screen and (max-width: 991px) {
    .site-content {
        position: relative;
        z-index: 50;
    }

    .main-navigation {
        height: 0;
        padding: 0;
        position: absolute;
        right: 0;
        width: 100%;
        top: 0;
        z-index: 100;
    }

    .main-navigation:has(.nav-hamburger.open) {
        background: var(--color-white);
        height: calc(100vh - 100px);
        margin-top: 100px;
    }

    .nav-hamburger {
        float: right;
        border: none;
        background: no-repeat;
        font-size: 2rem;
        color: var(--color-primary);
        padding: 1rem;
        line-height: 1em;
        margin-right: 0;
        margin-top: var(--col-gap);
    }

    .nav-hamburger + .menu {
        display: none;
        line-height: 2em;
        padding: var(--col-gap);
        font-size: 1.5rem;

        .
    }

    .nav-hamburger + .menu .menu-item:last-of-type {
        margin-top: var(--col-gap);
    }

    .nav-hamburger + .menu .menu-item:last-of-type a,
    .nav-hamburger + .menu .menu-item:last-of-type a[href*='kontakt'] {
        font-size: 1.5rem;
    }

    .nav-hamburger.open {
        margin-top: calc(var(--col-gap) - 100px);
    }

    .nav-hamburger.open + .menu {
        display: block;
        line-height: 2em;
        padding: var(--col-gap);
    }


    .e-con-full .metaslider .slides .caption-wrap {
        display: flex;
        flex-direction: column;
        min-height: 80vh;
    }

    .e-con-full .metaslider .slides .caption-wrap,
    .e-con-full .metaslider .slider-text.first {
        max-width: 100%;
    }
}

@media screen and (max-width: 1139px) {
    body {
        --font-size-h1: 3rem;
        --font-size-h2: 2.5rem;
        --font-size-h3: 2rem;
        --font-size-h4: 1.5rem;
        --font-size-h5: 1.25rem;
        --font-size-default: 1rem;
        --font-size-btn: 1rem;
    }

    .e-con-full .metaslider .slider-text.first {
        max-width: 100%;
    }
}

@media screen and (max-width: 1279px) {
    .e-con-full .metaslider .slider-text .d-flex .flex-auto {
        flex: 0 0 auto;
    }

}