.pageelement-contactbox .content-container {
    padding: 0;
    justify-content: flex-start;
    min-height: 400px;
    display: flex;
    flex-wrap: wrap;
    border-radius: 10px;
    overflow: hidden;
}

.pageelement-contactbox .contactbox-image {
    max-width: 700px;
    width: 100%;
    height: auto;
    position: relative;
    overflow: hidden;
}

.pageelement-contactbox .left-column.small .contactbox-image {
    box-sizing: border-box;
    max-width: 300px;
}

.pageelement-contactbox .text {
    margin-left: 0;
    padding: 30px 40px 20px 40px;
    width: 100%;
    overflow-wrap: break-word;
    word-break: break-word;
    word-wrap: break-word;
    overflow: hidden;
    font-size: 18px;
}

.pageelement-contactbox .contactbox-name {
    font-weight: 700;
}

.pageelement-contactbox .contactbox-position,
.pageelement-contactbox .contactbox-email {
    margin-bottom: 10px;
}

.pageelement-contactbox .contactbox-comment {
    white-space: pre-line;
}


.pageelement-contactbox .contactbox-telephone::before {
    content: "\f095";
    width: 25px;
    font-size: 18px;
    font-family: "Font Awesome 6 Pro", sans-serif;
    display: inline-block;
}

.pageelement-contactbox .contactbox-mobilephone::before {
    content: "\f3ce";
    width: 25px;
    font-size: 18px;
    font-family: "Font Awesome 6 Pro", sans-serif;
    display: inline-block;
}

.pageelement-contactbox .contactbox-email::before {
    content: "\f0e0";
    width: 25px;
    font-size: 18px;
    font-family: "Font Awesome 6 Pro", sans-serif;
    display: inline-block;
}

.pageelement-contactbox .contactbox-telefax::before {
    content: "\f1ac";
    width: 25px;
    font-size: 18px;
    font-family: "Font Awesome 6 Pro", sans-serif;
    display: inline-block;
}

.pageelement-contactbox a.contactbox-telephone,
.pageelement-contactbox a.contactbox-mobilephone,
.pageelement-contactbox a.contactbox-email,
.pageelement-contactbox a.contactbox-telefax {
    display: block;
    line-height: 28px;
    font-size: 18px;
}

.pageelement-contactbox .contactbox-button {
    background-color: #A11717;
    padding: 15px;
    max-width: 300px;
    min-height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    box-sizing: border-box;
    color: #fff;
    margin-top: 45px;
    font-size: 20px;
    font-weight: 700;
    border-radius: 10px;
}

.pageelement-contactbox .contactbox-copyright {
    font-size: 12px;
    margin-top: -30px;
    align-self: end;
    padding: 5px 5px 0 5px;
    z-index: 5;
    position: absolute;
    bottom: 0;
}

.pageelement-contactbox .left-column,
.pageelement-contactbox .right-column {
    width: 50%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    flex: 1;
}

.pageelement-contactbox .right-column {
    justify-content: flex-start;
}

.pageelement-contactbox .left-column.small {
    width: 25%;
    max-width: 300px;
}

.pageelement-contactbox .right-column.small {
    width: 75%;
}

.pageelement-contactbox .left-column img {
    width: 100%;
    max-width: 700px;
    max-height: 400px;
    object-fit: cover;
    height: auto;
}

.pageelement-contactbox .left-column.small .contactbox-image img {
    max-width: 300px;
}

.pageelement-contactbox .heading-container {
    width: 100%;
    max-width: 1400px;
    display: block;
    margin: 0 auto 20px;
    text-transform: uppercase;
}

.pageelement-contactbox .content-container.red .contactbox-telephone,
.pageelement-contactbox .content-container.red .contactbox-mobilephone,
.pageelement-contactbox .content-container.red .contactbox-telefax,
.pageelement-contactbox .content-container.red .contactbox-email,
.pageelement-contactbox .content-container.red .contactbox-telephone::before,
.pageelement-contactbox .content-container.red .contactbox-mobilephone::before,
.pageelement-contactbox .content-container.red .contactbox-telefax::before,
.pageelement-contactbox .content-container.red .contactbox-email::before {
    color: white;
}

.pageelement-contactbox .content-container.red .contactbox-button {
    background-color: #FFEFE0;
    color: black;
}



@media only screen and (max-width: 1400px) {
    .pageelement-contactbox .content-container {
        padding: 20px;
    }

    .pageelement-contactbox .heading-container {
        padding-left: 20px;
    }

    .pageelement-contactbox .left-column.small .contactbox-image {
        border-radius: 10px;
        overflow: hidden;
    }
}

@media only screen and (max-width: 600px) {
    .pageelement-contactbox .content-container {
        flex-flow: column;
    }

    .contactbox .left-column, .contactbox .right-column {
        width: 100%;
    }

    .pageelement-contactbox .text {
        padding: 30px 0 0 0;
    }

    .pageelement-contactbox .contactbox-button {
        margin: 20px 0 0 0;
    }

    .pageelement-contactbox .left-column.small {
        min-width: 300px;
        margin: auto;
    }
}

@media screen and (max-width: 400px) {
    .pageelement-contactbox .contactbox-button {
        max-width: 250px;
        font-size: 16px;
    }

    .pageelement-contactbox .contactbox-copyright {
        margin-top: 0;
    }

    .pageelement-contactbox.text {
        margin-left: 10px;
        padding-left: 10px;
        padding-right: 15px;
    }

    .pageelement-contactbox .left-column.small, .contactbox .right-column.small {
        width: 100% !important;
    }

    .pageelement-contactbox .content-container {
        align-items: center;
    }

    .pageelement-contactbox .left-column.small {
        min-width: unset;
        width: 100%;
    }
}/*****************************************************************
**** Text-image-main
******************************************************************/
.pageelement-text-image.highlighted {
    background: #FFFAD5;
    padding: 50px 0;
}

.pageelement-text-image .content-container {
    padding: unset;
}

.pageelement-text-image .wrapper {
    overflow-wrap: anywhere;
    width: 100%;
    display: flex;
    flex-direction: column;
    margin: 0 auto;
}

.pageelement-text-image .text {
    max-width: 1000px;
    margin-top: 15px;
}

.pageelement-text-image .wrapper.none {
    background: none;
}

.pageelement-text-image .wrapper .column {
    display: flex;
    gap: 60px;
    width: 100%;
}

.pageelement-text-image .width_100 {
    width: 100%;
}

.pageelement-text-image .wrapper .column.width_75 {
    width: calc(75% - 15px);
}

.pageelement-text-image .wrapper .column.width_50 {
    width: calc(50% - 10px);
}

.pageelement-text-image .wrapper .column.width_25 {
    width: calc(25% - 45px);
}

.pageelement-text-image .wrapper .column .cell {
    display: flex;
    flex-flow: column;
}

.pageelement-text-image .wrapper .column .cell.width_25 {
    width: calc(25% - 45px);
}

.pageelement-text-image .wrapper .column .cell.width_50 {
    width: calc(50% - 30px);
}

.pageelement-text-image .wrapper .column .cell.width_75 {
    width: calc(75% - 15px);
}

.pageelement-text-image .wrapper .column .cell.center_text h3 {
    text-align: center;
}

.pageelement-text-image .wrapper .column.center_text .cell.width_75,
.pageelement-text-image .wrapper .column.center_text .cell.width_50 {
    margin-left: auto;
    margin-right: auto;
}

.pageelement-text-image .wrapper .column.center_text .cell.width_25.empty {
    width: 0px;
    margin-right: -60px;
}

.pageelement-text-image .wrapper .column .cell .image {
    position: relative;
    border-radius: 10px;
    overflow: hidden;
}

.pageelement-text-image .wrapper .column .cell .image .ai-mark {
    position: absolute;
    bottom: 20px;
    right: 10px;
}

.pageelement-text-image .wrapper .column .cell .image .ai-mark:before {
    content: '';
    background: url(/_images/ai-mark.svg) no-repeat;
    height: 25px;
    width: 25px;
    display: block;
    opacity: .4;
}

.pageelement-text-image .imagecolumn {
    display: inline-block;
}

.pageelement-text-image .textcolumn {
    display: inline-block;
}

.pageelement-text-image .wrapper.left {
    justify-content: flex-start;
}

.pageelement-text-image .wrapper.middle {
    justify-content: center;
}

.pageelement-text-image .wrapper.right {
    justify-content: flex-end;
}

.pageelement-text-image .wrapper.text-image {
    gap: 60px;
}

.pageelement-text-image .wrapper.text-image .pageelement-canvas {
    gap: 60px;
}

.pageelement-text-image .background-full-width {
    width: 100% !important;
    overflow: visible !important;
}

.pageelement-text-image .background-adjusted-width {
    max-width: 1400px !important;
    overflow: visible !important;
    margin: 0 auto;
}

.pageelement-text-image .heading {
    display: block;
    margin-bottom: 20px;
}

.pageelement-text-image .heading h2 {
    text-transform: uppercase;
}

.pageelement-text-image .heading.center_text {
    text-align: center;
}

.pageelement-text-image .heading.center_text {
    text-align: center;
}

.pageelement-text-image .column.center_text h3 {
    text-align: center;
}

.pageelement-text-image .content-container {
    display: inline-block !important;
    width: 100%;
    box-sizing: border-box;
}

.pageelement-text-image .wrapper.background-adjusted-width .content-container {
    padding: 50px;
}

.pageelement-text-image .pageelement-canvas {
    display: flex;
}

.pageelement-text-image .wrapper.background-adjusted-width .column .cell.width_25 {
    width: calc(25% - 45px);
}

.pageelement-text-image .wrapper .content-container .texteditor h2 {
    color: #383833;
}

.pageelement-text-image .wrapper .content-container .texteditor a {
    color: #383833;
    text-decoration: underline;
    text-decoration-color: #FFEFE0;
    text-decoration-thickness: 1px;
}

.pageelement-text-image .text.center_text {
    text-align: center;
}

.pageelement-text-image .text.center_text ol {
    display: flex;
    flex-flow: column;
    align-items: center;
}

@media only screen and (max-width: 1450px) {
    .text-image .wrapper .column.width_75,
    .text-image .wrapper .column.width_25,
    .text-image .wrapper .column .cell.width_75,
    .text-image .wrapper .column .cell.width_25 {
        width: calc(50% - 10px);
    }

    .pageelement-text-image .content-container {
        padding: 30px 20px;
    }

}

@media screen and (min-width: 1400px) {
    .pageelement-text-image .pageelement-canvas {
        padding: 0 !Important;
    }
}

@media only screen and (max-width: 1024px) {
    .pageelement-text-image .wrapper .column.width_100:has(.special-case) {
        flex-wrap: wrap;
    }

    .pageelement-text-image,
    .pageelement-text-image .pageelement-canvas {
        flex-flow: column;
        gap: 30px;
    }

    .pageelement-text-image .wrapper.text-image .pageelement-canvas {
        gap: 30px;
    }

    .text-image .wrapper .column.width_25,
    .text-image .wrapper .column.width_50,
    .text-image .wrapper .column.width_75,
    .text-image .wrapper .column .cell.width_25,
    .text-image .wrapper .column .cell.width_50,
    .text-image .wrapper .column .cell.width_75 {
        width: 100%;
    }

    .pageelement-text-image .pageelement-canvas {
        flex-wrap: wrap;
    }

    .text-image .wrapper .column .cell.empty {
        display: none;
    }

    .pageelement-text-image .wrapper .column.center_text .cell.width_25.empty {
        margin-right: unset;
    }
}

.pageelement-text-image .copyright {
    font-size: 12px;
    margin-top: -23px;
    align-self: end;
    padding: 5px 5px 0 5px;
    z-index: 5;
}

@media only screen and (max-width: 520px) {
    .pageelement-text-image .wrapper .content-container,
    .pageelement-text-image .wrapper.background-adjusted-width .content-container {
        padding: 20px;
    }
}

.pageelement-text-image .wrapper.red h3,
.pageelement-text-image .wrapper.red h2,
.pageelement-text-image .wrapper.red .text li,
.pageelement-text-image .wrapper.red .text p,
.pageelement-text-image .wrapper.red strong,
.pageelement-text-image .wrapper.red .text a {
    color: #383833;
}

.pageelement-text-image .wrapper.none strong {
    color: #383833;
}

.pageelement-text-image .wrapper.none .text a {
    color: #383833;
    font-weight: 600;
}

.pageelement-text-image .wrapper.none.red h3,
.pageelement-text-image .wrapper.none.light-yellow h3 {
    color: #383833;
}

.pageelement-text-image .wrapper.none.red .text li, .pageelement-text-image .wrapper.none.red .text p, .pageelement-text-image .wrapper.none.light-yellow .text li, .pageelement-text-image .wrapper.none.light-yellow .text p {
    color: #383833;
}

