header,
footer,
main,
section,
article {
    border-radius: 0 !important;
    overflow: hidden
}

header .wp-block-navigation-item.wp-block-navigation-link a {
    text-decoration: none;
    -webkit-text-decoration-color: #fff;
    text-decoration-color: #fff
}

header .wp-block-navigation-item.wp-block-navigation-link a:hover {
    -webkit-text-decoration-color: rgba(255, 255, 255, 0);
    text-decoration-color: rgba(255, 255, 255, 0)
}

@media screen and (orientation: landscape)and (max-height: 575px) {
    header .wp-block-navigation-item.wp-block-navigation-link a {
        font-size: 1.1rem
    }
}

header .header-content {
    height: var(--header-height);
    transition: var(--header-height-transition)
}

header .header-content .wp-block-column {
    display: flex;
    align-items: center;
    height: 100%
}

header .header-content .wp-block-column:first-child {
    justify-content: flex-start
}

header .header-content .wp-block-column:last-child {
    justify-content: flex-end
}

header .header-content .wp-block-column .wp-block-site-logo {
    display: flex;
    align-items: center;
    height: 100%
}

header .header-content .wp-block-column .wp-block-site-logo .custom-logo-link {
    display: flex;
    align-items: center;
    height: 100%
}

header .header-content .wp-block-column .wp-block-site-logo .custom-logo-link img {
    aspect-ratio: 2.51;
    width: auto;
    height: 60%;
    max-width: unset;
    min-height: unset;
    transition: all 150ms
}

p,
.wp-block-heading {
    -webkit-hyphens: auto;
    hyphens: auto;
    hyphenate-limit-chars: 10 4 4
}

* {
    -webkit-hyphens: auto;
    hyphens: auto;
    hyphenate-limit-chars: 10 4 4
}

.wp-block-heading strong {
    white-space: pre-line
}

.hero-slider-col-space-bottom {
    height: 2vmax !important
}

a {
    text-underline-offset: 4px;
    text-decoration-thickness: 1px !important
}

.wp-block-buttons .wp-block-button.line-before,
.wp-block-buttons .wp-block-button.line-after {
    --w: 2rem
}

.wp-block-buttons .wp-block-button.line-before .wp-block-button__link,
.wp-block-buttons .wp-block-button.line-after .wp-block-button__link {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    gap: 0;
    white-space: nowrap;
    transition: all 150ms ease-out
}

.wp-block-buttons .wp-block-button.line-before .wp-block-button__link span,
.wp-block-buttons .wp-block-button.line-after .wp-block-button__link span {
    white-space: nowrap !important
}

.wp-block-buttons .wp-block-button.line-before .wp-block-button__link:after,
.wp-block-buttons .wp-block-button.line-after .wp-block-button__link:after {
    content: "";
    position: absolute;
    display: block;
    width: .5rem;
    height: .5rem;
    border-top: 1px solid currentColor;
    border-left: 1px solid currentColor;
    opacity: 1;
    transform: rotate(-45deg);
    transition: inherit
}

@media(hover: hover) {

    .wp-block-buttons .wp-block-button.line-before .wp-block-button__link:after,
    .wp-block-buttons .wp-block-button.line-after .wp-block-button__link:after {
        width: 0;
        height: 0;
        opacity: 0
    }
}

.wp-block-buttons .wp-block-button.line-before .wp-block-button__link:before,
.wp-block-buttons .wp-block-button.line-after .wp-block-button__link:before {
    content: "";
    display: inline-block;
    width: var(--w);
    height: 1px;
    vertical-align: middle;
    background: currentColor;
    transition: inherit
}

.wp-block-buttons .wp-block-button.line-before .wp-block-button__link:before {
    margin-right: .5em
}

.wp-block-buttons .wp-block-button.line-after .wp-block-button__link {
    flex-direction: row-reverse
}

.wp-block-buttons .wp-block-button.line-after .wp-block-button__link:before {
    margin-left: .5em
}

.wp-block-buttons .wp-block-button.line-after .wp-block-button__link:after {
    transform: rotate(135deg)
}

.wp-block-buttons .wp-block-button>.wp-block-button__link>.icon {
    font-size: .75em;
    margin-right: .25em
}

.wp-block-buttons .wp-block-button>.wp-block-button__link>span {
    white-space: pre-line
}

@media screen and (max-width: 575px) {
    .wp-block-buttons .wp-block-button .wp-block-button__link {
        padding-left: 1em;
        padding-right: 1em
    }
}

@media screen and (min-width: 993px) {
    .wp-block-buttons .wp-block-button:hover .wp-block-button__link:after {
        width: .5rem;
        height: .5rem;
        opacity: 1
    }

    .wp-block-buttons .wp-block-button:hover .wp-block-button__link:before {
        width: calc(var(--w)*2)
    }
}

.wp-block-group {
    max-width: 100%
}

.wp-block-group:has(>p.has-text-align-right) {
    text-align: right
}

.wp-lightbox-overlay.zoom {
    background: rgba(0, 0, 0, .5)
}

.wp-lightbox-overlay button {
    display: none !important
}

.wp-lightbox-container img {
    cursor: nesw-resize
}

.lightbox-trigger {
    display: none !important
}

@media screen and (max-width: 550px) {
    .wp-block-cover.cover-wolf-scholtes img {
        -o-object-position: 65%;
        object-position: 65%;
        height: 80%;
        top: 25%
    }
}

@media screen and (min-width: 576px)and (max-width: 992px) {
    .wp-block-cover.cover-wolf-scholtes img {
        -o-object-position: 65% 50%;
        object-position: 65% 50%;
        transform: translateY(25%)
    }
}

.wp-block-group.widthx1 {
    width: 75%;
    max-width: unset;
    pointer-events: fill;
    z-index: 9
}

.wp-block-group.widthx2 {
    width: 150%;
    max-width: unset;
    pointer-events: fill;
    z-index: 9
}

.wp-block-group.widthx3 {
    width: 225%;
    max-width: unset;
    pointer-events: fill;
    z-index: 9
}

.wp-block-group.widthx4 {
    width: 300%;
    max-width: unset;
    pointer-events: fill;
    z-index: 9
}

.wp-block-group.widthx5 {
    width: 375%;
    max-width: unset;
    pointer-events: fill;
    z-index: 9
}

.wp-block-group.widthx6 {
    width: 450%;
    max-width: unset;
    pointer-events: fill;
    z-index: 9
}

.wp-block-group.widthx7 {
    width: 525%;
    max-width: unset;
    pointer-events: fill;
    z-index: 9
}

.wp-block-group.widthx8 {
    width: 600%;
    max-width: unset;
    pointer-events: fill;
    z-index: 9
}

.wp-block-group.widthx9 {
    width: 675%;
    max-width: unset;
    pointer-events: fill;
    z-index: 9
}

.wp-block-group.widthx10 {
    width: 750%;
    max-width: unset;
    pointer-events: fill;
    z-index: 9
}

.wp-block-group.widthx11 {
    width: 825%;
    max-width: unset;
    pointer-events: fill;
    z-index: 9
}

.wp-block-group.widthx12 {
    width: 900%;
    max-width: unset;
    pointer-events: fill;
    z-index: 9
}

.overlap-top-30 {
    margin-top: calc(var(--wp--preset--spacing--30)*-1) !important
}

.overlap-bottom-30 {
    margin-bottom: calc(var(--wp--preset--spacing--30)*-1) !important
}

.overlap-left-30 {
    margin-left: calc(var(--wp--preset--spacing--30)*-1) !important
}

.overlap-right-30 {
    margin-right: calc(var(--wp--preset--spacing--30)*-1) !important
}

.overlap-top-40 {
    margin-top: calc(var(--wp--preset--spacing--40)*-1) !important
}

.overlap-bottom-40 {
    margin-bottom: calc(var(--wp--preset--spacing--40)*-1) !important
}

.overlap-left-40 {
    margin-left: calc(var(--wp--preset--spacing--40)*-1) !important
}

.overlap-right-40 {
    margin-right: calc(var(--wp--preset--spacing--40)*-1) !important
}

.overlap-top-50 {
    margin-top: calc(var(--wp--preset--spacing--50)*-1) !important
}

.overlap-bottom-50 {
    margin-bottom: calc(var(--wp--preset--spacing--50)*-1) !important
}

.overlap-left-50 {
    margin-left: calc(var(--wp--preset--spacing--50)*-1) !important
}

.overlap-right-50 {
    margin-right: calc(var(--wp--preset--spacing--50)*-1) !important
}

.overlap-top-60 {
    margin-top: calc(var(--wp--preset--spacing--60)*-1) !important
}

.overlap-bottom-60 {
    margin-bottom: calc(var(--wp--preset--spacing--60)*-1) !important
}

.overlap-left-60 {
    margin-left: calc(var(--wp--preset--spacing--60)*-1) !important
}

.overlap-right-60 {
    margin-right: calc(var(--wp--preset--spacing--60)*-1) !important
}

.overlap-top-70 {
    margin-top: calc(var(--wp--preset--spacing--70)*-1) !important
}

.overlap-bottom-70 {
    margin-bottom: calc(var(--wp--preset--spacing--70)*-1) !important
}

.overlap-left-70 {
    margin-left: calc(var(--wp--preset--spacing--70)*-1) !important
}

.overlap-right-70 {
    margin-right: calc(var(--wp--preset--spacing--70)*-1) !important
}

.beratungstermin-textbox * {
    z-index: 2
}

.beratungstermin-textbox::after {
    content: "";
    position: absolute;
    display: block;
    left: 100% !important;
    top: 50% !important;
    width: 5rem;
    height: 5rem;
    transform: translate(calc(-50% - 2rem), -50%) rotate(45deg) !important;
    z-index: 1;
    border-radius: inherit;
    background: inherit
}

@media screen and (max-width: 550px) {
    .beratungstermin-textbox::after {
        left: 50% !important;
        top: 100% !important;
        transform: translate(-50%, calc(-50% - 2rem)) rotate(45deg) !important
    }
}

.beratungstermin-phone .wp-block-cover {
    isolation: isolate;
    aspect-ratio: unset !important
}

.beratungstermin-phone .wp-block-cover * {
    color: #fff
}

.vcard-grid .vcard-tile-4 * {
    pointer-events: none
}

.vcard-grid .vcard-tile-4>* {
    position: absolute;
    right: -5%;
    bottom: 0;
    width: 200%;
    height: auto;
    max-width: unset;
    aspect-ratio: 1;
    z-index: 8
}

.vcard-grid .vcard-tile-3 {
    z-index: 9
}

.vcard-grid .vcard-tile-1 .wp-block-group,
.vcard-grid .vcard-tile-3 .wp-block-group {
    display: grid;
    align-items: center;
    justify-content: center
}

.vcard-grid .vcard-tile-1 .wp-block-group .wp-block-buttons .wp-block-button .wp-element-button,
.vcard-grid .vcard-tile-3 .wp-block-group .wp-block-buttons .wp-block-button .wp-element-button {
    font-size: 35px
}

.wp-block-group.visitenkarte.visitenkarte.visitenkarte {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin: 0 !important
}

@media screen and (max-width: 575px) {
    .wp-block-group.visitenkarte.visitenkarte.visitenkarte {
        max-width: unset
    }
}

.wp-block-group.visitenkarte.visitenkarte.visitenkarte .vcard-grid.vcard-grid.vcard-grid.vcard-grid {
    width: 100%;
    margin: 0
}

@media screen and (max-width: 575px) {
    .wp-block-group.visitenkarte.visitenkarte.visitenkarte .vcard-grid.vcard-grid.vcard-grid.vcard-grid {
        max-width: unset
    }
}

.wp-block-group.visitenkarte.visitenkarte.visitenkarte .vcard-grid.vcard-grid.vcard-grid.vcard-grid .vcard-tile-4 .wp-block-group {
    right: 0%;
    width: 200%
}

.wp-block-group.visitenkarte.visitenkarte.visitenkarte .vcard-grid.vcard-grid.vcard-grid.vcard-grid+.vcard-text {
    width: 100%;
    display: flex;
    flex-direction: column;
    margin: 0;
    gap: .15em
}

.wp-block-group.visitenkarte.visitenkarte.visitenkarte .vcard-grid.vcard-grid.vcard-grid.vcard-grid+.vcard-text p {
    -webkit-hyphens: none;
    hyphens: none
}

form input,
form textarea {
    font-family: var(--wp--preset--font-family--outfit);
    border-radius: 4px
}

form .wp-block-column:has(textarea) .wp-block-group,
form .wp-block-column:has(textarea) .wp-block-gutena-field-group,
form .wp-block-column:has(textarea) .wp-block-gutena-form-field,
form .wp-block-column:has(textarea) textarea {
    height: 100%
}

form .wp-block-ensch-form-input:has(input[type=checkbox]) {
    margin-top: .25rem
}

table td,
table th,
table td>*,
table th>* {
    text-align: center
}

body.logged-in .wp-block-group:has(>.hinweis),
body.block-editor-iframe__body .wp-block-group:has(>.hinweis) {
    --c: white;
    --bg: magenta
}

body.logged-in .wp-block-group:has(>.hinweis):before,
body.block-editor-iframe__body .wp-block-group:has(>.hinweis):before {
    content: "";
    position: absolute;
    left: -0.5rem;
    top: -0.5rem;
    width: 0;
    height: calc(100% + 1rem);
    background: var(--bg);
    opacity: 0;
    transition: all 300ms ease
}

body.logged-in .wp-block-group:has(>.hinweis):after,
body.block-editor-iframe__body .wp-block-group:has(>.hinweis):after {
    content: "*";
    position: absolute;
    left: -0.5rem;
    top: -0.5rem;
    color: var(--bg)
}

body.logged-in .wp-block-group:has(>.hinweis)>.hinweis,
body.block-editor-iframe__body .wp-block-group:has(>.hinweis)>.hinweis {
    position: absolute;
    top: -0.5rem;
    left: -0.5rem;
    transform: translate(0, -100%) scaleX(0);
    transform-origin: bottom left;
    transition: all 300ms ease
}

body.logged-in .wp-block-group:has(>.hinweis)>.hinweis p,
body.block-editor-iframe__body .wp-block-group:has(>.hinweis)>.hinweis p {
    padding: .25rem .5rem;
    color: var(--c) !important;
    background: var(--bg) !important
}

body.logged-in .wp-block-group:has(>.hinweis):hover>.hinweis,
body.logged-in .wp-block-group:has(>.hinweis):has(>.hinweis *:focus)>.hinweis,
body.block-editor-iframe__body .wp-block-group:has(>.hinweis):hover>.hinweis,
body.block-editor-iframe__body .wp-block-group:has(>.hinweis):has(>.hinweis *:focus)>.hinweis {
    transform: translate(0, -100%) scaleX(1)
}

body.logged-in .wp-block-group:has(>.hinweis):hover:before,
body.logged-in .wp-block-group:has(>.hinweis):has(>.hinweis *:focus):before,
body.block-editor-iframe__body .wp-block-group:has(>.hinweis):hover:before,
body.block-editor-iframe__body .wp-block-group:has(>.hinweis):has(>.hinweis *:focus):before {
    width: calc(100% + 1rem);
    height: calc(100% + 1rem);
    opacity: .2
}

strong {
    font-weight: 900
}

@media screen and (max-width: 575px) {
    .phone-stack {
        flex-direction: column !important;
        flex-wrap: nowrap !important
    }

    .phone-stack:not([class*=is-content-justification-]) {
        align-items: flex-start !important
    }
}

.hero-slide-grid {
    display: grid;
    grid-template-areas: ". . ." "title visual text" ". visual .";
    grid-template-columns: 25% 50% 25%;
    grid-template-rows: 1.5rem calc(100% - 3rem) 3rem;
    width: 100%
}

.hero-slide-grid .wp-block-group {
    max-width: unset
}

.hero-slide-grid>.wp-block-group {
    width: 100%
}

.hero-slide-grid>.wp-block-group:has(.is-selected) {
    z-index: 3
}

.hero-slide-grid>.wp-block-group.title {
    grid-area: title;
    z-index: 2
}

.hero-slide-grid>.wp-block-group.title .wp-block-heading {
    white-space: pre
}

.hero-slide-grid>.wp-block-group.title .wp-block-heading sup {
    font-size: .35em;
    line-height: 1;
    font-weight: normal;
    vertical-align: baseline
}

.hero-slide-grid>.wp-block-group.visual {
    grid-area: visual
}

.hero-slide-grid>.wp-block-group.visual .wp-block-cover {
    aspect-ratio: 1;
    width: calc(100% - 2rem);
    height: auto;
    min-height: unset;
    overflow: visible
}

.hero-slide-grid>.wp-block-group.visual .wp-block-cover .rabatt {
    isolation: isolate;
    z-index: 9999
}

.hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-top-right .rabatt {
    transform: translate(2.5rem, -1.5rem) rotate(5deg)
}

.hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-bottom-right .rabatt {
    transform: translate(2.5rem, 1.5rem) rotate(5deg)
}

.hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-top-left .rabatt {
    transform: translate(-2.5rem, -1.5rem) rotate(-5deg)
}

.hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-bottom-left .rabatt {
    transform: translate(-2.5rem, 1.5rem) rotate(-5deg)
}

.hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-top-center .rabatt {
    transform: translate(0, -1.5rem) rotate(5deg)
}

.hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-bottom-center .rabatt {
    transform: translate(0, 1.5rem) rotate(5deg)
}

.hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-center-right .rabatt {
    transform: translate(2.5rem, 0) rotate(5deg)
}

.hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-center-left .rabatt {
    transform: translate(-2.5rem, 0) rotate(-5deg)
}

.hero-slide-grid>.wp-block-group.text {
    grid-area: text;
    padding-left: 1rem
}

@media(orientation: portrait) {
    .hero-slide-grid {
        display: grid;
        grid-template-areas: "." "visual" "title" "text" ".";
        grid-template-columns: 100%;
        grid-template-rows: 1rem auto 1rem auto 3rem
    }

    .hero-slide-grid>.wp-block-group.title {
        grid-area: title
    }

    .hero-slide-grid>.wp-block-group.title .wp-block-group {
        width: -webkit-fill-available;
        width: -moz-available;
        width: fill-available
    }

    .hero-slide-grid>.wp-block-group.visual {
        grid-area: visual
    }

    .hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-top-right .rabatt {
        transform: translate(2rem, -1rem) rotate(5deg)
    }

    .hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-bottom-right .rabatt {
        transform: translate(2rem, 1rem) rotate(5deg)
    }

    .hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-top-left .rabatt {
        transform: translate(-2rem, -1rem) rotate(-5deg)
    }

    .hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-bottom-left .rabatt {
        transform: translate(-2rem, 1rem) rotate(-5deg)
    }

    .hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-top-center .rabatt {
        transform: translate(0, -1rem) rotate(5deg)
    }

    .hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-bottom-center .rabatt {
        transform: translate(0, 1rem) rotate(5deg)
    }

    .hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-center-right .rabatt {
        transform: translate(2rem, 0) rotate(5deg)
    }

    .hero-slide-grid>.wp-block-group.visual .wp-block-cover.is-position-center-left .rabatt {
        transform: translate(-2rem, 0) rotate(-5deg)
    }

    .hero-slide-grid>.wp-block-group.text {
        grid-area: text;
        padding-left: 0;
        padding-top: 1rem
    }
}

.footer-sitemap-grid.footer-sitemap-grid.footer-sitemap-grid {
    display: grid;
    grid-template-columns: 6fr 5fr 5fr 6fr 4fr
}

@media screen and (min-width: 576px)and (max-width: 992px) {
    .footer-sitemap-grid.footer-sitemap-grid.footer-sitemap-grid {
        grid-template-columns: 7fr 5fr 5fr
    }
}

@media screen and (max-width: 575px) {
    .footer-sitemap-grid.footer-sitemap-grid.footer-sitemap-grid {
        grid-template-columns: 1fr
    }
}

.footer-sitemap-grid.footer-sitemap-grid.footer-sitemap-grid .wp-block-column {
    width: 100%;
    flex: 0 0 100%
}

.beratungstermin-pattern-section {
    margin: auto !important
}

.margin-align div div p,
.margin-align div div h3 {
    margin: unset !important
}