/* ############################################# */
/* #    Banner                                 # */
/* ############################################# */

.banner {
    min-height: 500px;
    background: var(--primaryColor);
    color: var(--color-white);
    padding: 0;
    overflow: hidden;
}
    #banner {
        min-height: 500px;
        background-position: center !important;
        background-repeat: no-repeat !important;
        background-size: cover !important;
    }
        #banner .top-left {
            max-width: 60%;
            position: relative;
            top: 60px;
            padding-bottom: 60px;
        }
        #banner .top-right {
            max-width: 60%;
            position: relative;
            top: 60px;
            margin-left: auto;
            padding-bottom: 60px;
        }
        #banner .bottom-right {
            max-width: 60%;
            position: relative;
            top: 250px;
            margin-left: auto;
        }
        #banner .bottom-left {
            max-width: 60%;
            position: relative;
            top: 250px;
        }
        #banner .light {
            color: var(--color-white);
        }
        #banner .dark {
            color: var(--color-black);
        }
        #banner .layout {
            color: var(--primaryColor);
        }
            #banner span {
                font-size: calc(var(--font-size-header, --font-size-header-default) * 1.2); /* 36-48 */
                line-height: calc(var(--line-height-header, --line-height-header-default) * 1.2); /* 48-64.8 */
                font-weight: 700;
            }


/* ############################################# */
/* #    Divider                                # */
/* ############################################# */

.divider {
    background: var(--color-gray-lightest);
    border-top: solid 1px var(--color-gray-lighter);
    border-bottom: solid 1px var(--color-gray-lighter);
    margin: 20px 0;
    padding: 20px 0;
    text-align: center;
}


/* ############################################# */
/* #    Hero                                   # */
/* ############################################# */

.hero {
    display: grid;
    grid-template-columns: repeat(1, 2fr);
    gap: 25px 50px;
    padding: 25px 0;
    font-size: 16px;
}
    .hero-image {
        margin: 0 auto;
        padding: 25px 0 0 0;
        grid-row: 2 / 3;
    }
        .hero-image img {
            max-width: fit-content;
            width: 100%;
            height: auto;
        }
        .right.hero .hero-image img {
            float: right;
        }
    .hero-title {
        grid-row: 1 / 2;        
    }
        .hero h2 {
            font-size: calc(var(--font-size-header, --font-size-header-default) * 1); /* 30-40 */
            line-height: calc(var(--line-height-header, --line-height-header-default) * 0.9); /* 40-54 */
            font-weight: 700;
        }
    .hero-text {
        grid-row: 3 / 4;
    }
        .hero span:first-of-type {
            font-weight: 700;
            color: var(--text-color-dark);
        }
    /* Bildschirm größer 768px */
    @media (min-width: 768px) {
        .hero {
            grid-template-columns: repeat(2, 1fr);
            grid-template-rows: 0.5fr 1fr;
        }
            .hero-image {
                grid-column: 1 / 2;
                grid-row: 1 / 3;
                margin: initial;
            }
            .hero.right .hero-image {
                grid-column: 2 / 3;
            }
            .hero-title {
                grid-column: 2 / 3;
                grid-row: 1 / 2;
            }
            .hero.right .hero-title {
                grid-column: 1 / 2;
            }
            .hero-text {
                grid-column: 2 / 3;
                grid-row: 2 / 3;
                margin-top: -50px;
            }
            .hero.right .hero-text {
                grid-column: 1 / 2;
            }
    }


/* ############################################# */
/* #    Video                                  # */
/* ############################################# */

.video .vjs-poster {
    background-color: var(--color-white);
}

main.video .video > div {
    box-shadow: 0 0 3px 1px rgb(0 0 0 / 10%);
    margin-top: 25px;
}

.video-placeholder {
    background-color: var(--primaryColor);
    box-shadow: 0 0 3px 1px rgb(0 0 0 / 10%);
    margin-top: 25px;
    aspect-ratio: 16 / 8.58;
    display: flex;
    text-align: center;
    border: solid 2.7vw #fff;
}
    /* Bildschirm größer 1250px */
    @media (min-width: 1250px) {
        .video-placeholder {
            border: solid 34px #fff;
        }
    }
.video-placeholder span {
    color: var(--color-white);
    display: block;
    margin: auto;
    padding: 16px;
}
.video-placeholder span h2 {
    color: var(--color-white);
}


/* ############################################# */
/* #    Slider                                 # */
/* ############################################# */

.dce .slider {
    margin: 20px 25px 45px 25px;
}

.slick-prev:before, .slick-next:before {
    color: var(--primaryColor);
}

.slick-slide {
    margin: 0 10px;
    /* background: #f1f1f1;
    border: solid 1px #ccc; */
}

.slick-slide.frame {
    margin: 0 10px;
}

.slick-prev::before {
    font-family: "Font Awesome 6 Free";
    content: "\f359";
    font-weight: 900;
}

.slick-next::before {
    font-family: "Font Awesome 6 Free";
    content: "\f35a";
    font-weight: 900;
}


/* ############################################# */
/* #    Tabs [Accordion]                       # */
/* ############################################# */

.dce .tabs {
    margin: 20px 0;
}
.tabs {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.tabs > label {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    display: block;
    padding: 1rem 2rem;
    margin-right: 0.2rem;
    cursor: pointer;
    background: var(--color-gray-lighter);
    -webkit-transition: background ease 0.2s;
    transition: background ease 0.2s;
}
.tabs .tab {
    -webkit-box-ordinal-group: 100;
    -webkit-order: 99;
    -ms-flex-order: 99;
    order: 99;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    width: 100%;
    display: none;
    padding: 1rem;
    background: var(--color-gray-lightest);
}
.tabs > input[type="radio"] {
    position: absolute;
    opacity: 0;
}
.tabs > input[type="radio"]:checked + label { 
    background: var(--color-gray-light);
}
.tabs > input[type="radio"]:checked + label + .tab { 
    display: block;
}
/* Bildschirm kleiner 768px */
@media (max-width: 768px) {
    .tabs .tab, 
    .tabs > label {
        -webkit-box-ordinal-group: NaN;
        -webkit-order: initial;
        -ms-flex-order: initial;
        order: initial;
    }
    .tabs > label {
        width: 100%;
        margin-right: 0;
        margin-top: 0;
    }
    .tabs > label::after {
        font-family: "Font Awesome 6 Free";
        content: "\f0d7";
        font-weight: 900;
        font-size: 16px;
        color: var(--color-gray-dark);
        padding-right: 5px;
        position: relative;
        top: 1px;
        float: right;
    }
    .tabs > input[type="radio"]:checked + label::after  { 
        content: "";
    }
}


/* ############################################# */
/* #    Accordion                              # */
/* ############################################# */

.dce .accordion {
    margin: 20px 0;
}
.accordion {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
    .accordion > label {
        -webkit-box-ordinal-group: NaN;
        -webkit-order: initial;
        -ms-flex-order: initial;
        order: initial;
        width: 100%;
        display: block;
        padding: 15px;
        cursor: pointer;
        background: var(--color-gray-lighter);
        -webkit-transition: background ease 0.2s;
        transition: background ease 0.2s;
    }
        .accordion > label::after {
            font-family: "Font Awesome 6 Free";
            content: "\f0d7";
            font-weight: 900;
            font-size: 16px;
            color: var(--color-gray-dark);
            padding-right: 5px;
            position: relative;
            top: 1px;
            float: right;
        }
    .accordion .panel {
        -webkit-box-ordinal-group: NaN;
        -webkit-order: initial;
        -ms-flex-order: initial;
        order: initial;
        -webkit-box-flex: 1;
        -webkit-flex-grow: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
        width: 100%;
        display: none;
        padding: 1rem;
    }
    .accordion > input[type="checkbox"],
    .accordion > input[type="radio"] {
        /* position: absolute; */
        opacity: 0;
    }
    .accordion > input[type="checkbox"]:checked + label{
        background: var(--primaryColor);
        color: var(--color-white);
    }
    .accordion > input[type="radio"]:checked + label  { 
        background: var(--primaryColor);
        color: var(--color-white);
        cursor: initial;
    }
        .accordion > input[type="checkbox"]:checked + label::after {
            content: "\f00d";
            color: var(--color-white);
        }
        .accordion > input[type="radio"]:checked + label::after  { 
            content: "";
        }
    .accordion > input[type="checkbox"]:checked + label + .panel,
    .accordion > input[type="radio"]:checked + label + .panel  { 
        display: block;
    }


/* ############################################# */
/* #    Kundenliste                            # */
/* ############################################# */

.customer-wrp-top {
    margin: 0 0 30px 0;
    padding: 10px 0;
    box-shadow: rgba(50, 50, 93, 0.15) 0px 2px 5px -2px, rgba(0, 0, 0, 0.15) 0px 1px 3px -1px;
}
.customer-wrp-middle {
    margin: 30px 0;
    padding: 10px 0;
    box-shadow: rgba(50, 50, 93, 0.15) 0px 0px 5px 0px, rgba(0, 0, 0, 0.15) 0px 1px 3px -1px;
}
.customer-wrp-bottom {
    margin: 35px 0 -40px 0;
    padding: 10px 0;
    box-shadow: rgba(50, 50, 93, 0.15) 0px -2px 5px -2px, rgba(0, 0, 0, 0.15) 0px 1px 3px -1px;
}
    .customer-ref {
        display: grid;
        /* grid-template-columns: repeat(7, 1fr); */
        grid-template-columns: 300px 1fr 1fr 1fr 1fr 1fr 1fr;
    }
        .customer-def {
            grid-column: 1/2;
            margin: 0;
            padding: 6px 0 0 0;
            background-color: var(--color-white);
            min-width: 300px;
        }
            .customer-def span {
                display: block;
                padding: 10px 0 15px 0;
                font-size: 20px;
                font-weight: 600;
            }
        .customer-ref .slider{
            grid-column: 2/8;
            margin: 0 0 0 15px;
        }
            .customer-ref .slider .slick-slide {
                background: none;
                border: none;
                border-right: solid 1px var(--color-gray-lighter);
                margin: 0;
            }
            .customer-ref .slider .slick-slide:last-of-type {
                border-right: none;
            }
            .customer-ref .slider .slick-slide > div:first-child {
                border-bottom: solid 1px var(--color-gray-lighter);
            }
        .customer-ref .slider .slick-prev {
            width: 15px;
            height: 120px;
            background-color: var(--color-gray-lightest);
            left: -15px;
            border-radius: 5px 0 0 5px;
        }
            .customer-ref .slider .slick-prev::before {
                content: '\f053';
                font-size: 12px;
                color: var(--color-gray-light);
                opacity: 1;
                padding: 0 0 0 2px;
            }
        .customer-ref .slider .slick-next {
            width: 15px;
            height: 120px;
            background-color: var(--color-gray-lightest);
            right: -14px;
            border-radius: 0 5px 5px 0;
        }
            .customer-ref .slider .slick-next::before {
                content: '\f054';
                font-size: 12px;
                color: var(--color-gray-light);
                opacity: 1;
                padding: 0 0 0 2px;
            }

        .customer-logo {
            display: grid !important;
            min-height: 60px;
            align-content: center;
            justify-content: center;
            background-color: var(--color-white);
        }
        .customer-logo a {
            display: grid;
        }
            .customer-logo img {
                -webkit-filter: grayscale(1) contrast(0) brightness(1.5); /* Google Chrome, Safari 6+ & Opera 15+ */
                filter: grayscale(1) contrast(0) brightness(1.5); /* Microsoft Edge and Firefox 35+ */
                width: auto;
                max-width: 132px;
                max-height: 32px;
            }
            .customer-logo img:hover {
                -webkit-filter: none;
                filter: none;
            }
/* Bildschirm kleiner 1199px */
@media (max-width: 1199px) {
    .customer-ref .slider{
        margin: 0 15px;
    }
}

/* Bildschirm kleiner 680px */
@media (max-width: 680px) {
    .customer-wrp-top,
    .customer-wrp-middle,
    .customer-wrp-bottom {
        padding: 10px 0 20px 0;
    }
        .customer-def {
            text-align: center;
            padding: 6px 0 20px 0;
            grid-column: 1/8;
            grid-row: 1;
            min-width: 100%;
        }
            .customer-def span{
                padding: 8px 0;
            }
        .customer-ref .slider{
            grid-column: 1/8;
            grid-row: 2;
        } 
}
/* Bildschirm kleiner 320px */
@media (max-width: 320px) {
    .customer-ref {
        display: block;
    }
}

    /* Kundenliste - Modal */
    .modal {
        display: none;
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        align-items: center;
        justify-content: center;
        background: rgba(0,0,0,0.7);
        z-index: 66;
        opacity: 0;
    }
        .modal__content {
            position: relative;
            width: 350px;
            max-width: 90%;
            max-height: calc(100vh - 55px);
            overflow-y: auto;
            background: #f9f9f9;
            padding: 35px 35px 20px 35px;
        }
            .modal__content .wrp {
                width: 100%;
                border-bottom: solid 1px var(--color-gray-lighter);
                padding: 40px 35px 35px 35px;
                margin: -35px -35px 0px -35px;
                background: #fff;
                text-align: center;
            }
                .modal__content .wrp img {
                    max-width: 100%;
                }
            .modal__content span {
                font-size: 20px;
                font-weight: 600;
                display: block;
                margin: 15px 0 0 0;
            }
            .modal__content .modal__link {
                float: right;
                color: var(--primaryColor);
                text-decoration: none;
                font-size: 12px;
            }
                .modal__content .modal__link::before {
                    font-family: "Font Awesome 6 Free";
                    font-weight: 600;
                    font-size: 10px;
                    color: var(--primaryColor);
                    content: "\f35d";
                    position: relative;
                    top: 0px;
                    left: -4px;
                }
        .modal__close {
            background: url(../Icons/close.svg) no-repeat scroll 0 0 transparent;
            width: 16px;
            height: 16px;
            margin: 0;
            padding: 0;
            border: none;
            cursor: pointer;
            position: absolute;
            right: 20px;
            top: 20px;
        }
    /* Kundenliste - Modal */


/* ############################################# */
/* #    Testimonial                            # */
/* ############################################# */

.tst {
    display: grid;
    grid-template-columns: 175px 1fr;
    margin: 35px 0 64px 0;
}
.tst-image {
    width: 175px;
    height: 175px;
    border-radius: 50% 50% 0 50%;
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;

}
.tst-text {
    margin: 0; 
    padding: 0 0 0 50px;
    display: block;
    position: relative;
}
    .tst-text::before {
        font-family: "Font Awesome 6 Free";
        font-weight: 600;
        font-size: 78px;
        color: var(--color-gray-lighter);
        content: "\f10d";
        position: absolute;
        top: 0px;
        left: -34px;
        z-index: -1;
    }
    .tst-text p {
        display: inline;
        font-size: calc(var(--font-size-header, --font-size-header-default) * 0.6); /* ??? 21-28 */
        line-height: calc(var(--line-height-header, --line-height-header-default) * 0.6); /* ??? 28-37.8 */
        margin: 12px 0 22px 0;
        padding-bottom: 40px;
    }
        .tst-text p::after {
            font-family: "Font Awesome 6 Free";
            font-weight: 600;
            font-size: 28px;
            color: var(--color-gray-lighter);
            content: "\f10e";
            position: relative;
            bottom: -10px;
            right: -6px;
        }
    .tst-name {
        position: relative;
        left: 0px;
        bottom: -10px;
    }
/* Bildschirm kleiner 768px */
@media (max-width: 768px) {
    .tst {
        grid-template-columns: 1fr;
        margin: 35px 0 50px 0;
    }
        .tst-image {
            margin: 0 auto 30px auto;
        }
        .tst-text {
            padding: 0;
        }
            .tst-text::before {
                left: 0;
                top: -42px;
            }
}


/* ############################################# */
/* #    Preisliste                             # */
/* ############################################# */

.dce .pricelist {
    margin: 20px 0;
}
.pricelist {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: center;
}
.pricelist > label {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    display: block;
    padding: 20px 30px;
    margin: 0 0 35px 0;
    cursor: pointer;
    background: var(--color-gray-lighter);
    -webkit-transition: background ease 0.2s;
    transition: background ease 0.2s;
}
    .pricelist > label:first-of-type {
        border-radius: 40px 0 0 40px;
        border: solid 8px #fff;
        border-right: 0;
        -webkit-box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.08), 30px 20px 31px 3px rgba(0, 0, 0, 0.09), 0px 8px 20px 7px rgba(0, 0, 0, 0.02);
        -moz-box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.08), 30px 20px 31px 3px rgba(0, 0, 0, 0.09), 0px 8px 20px 7px rgba(0, 0, 0, 0.02);
        box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.08), 30px 20px 31px 3px rgba(0, 0, 0, 0.09), 0px 8px 20px 7px rgba(0, 0, 0, 0.02);
    }
    .pricelist > label:last-of-type {
        border-radius: 0 40px 40px 0;
        border: solid 8px #fff;
        -webkit-box-shadow: 5px 10px 13px -6px rgba(0, 0, 0, 0.08), 30px 20px 31px 3px rgba(0, 0, 0, 0.09), 5px 8px 20px 7px rgba(0, 0, 0, 0.02);
        -moz-box-shadow: 5px 10px 13px -6px rgba(0, 0, 0, 0.08), 30px 20px 31px 3px rgba(0, 0, 0, 0.09), 5px 8px 20px 7px rgba(0, 0, 0, 0.02);
        box-shadow: 5px 10px 13px -6px rgba(0, 0, 0, 0.08), 30px 20px 31px 3px rgba(0, 0, 0, 0.09), 5px 8px 20px 7px rgba(0, 0, 0, 0.02);
    }
.pricelist .tab {
    -webkit-box-ordinal-group: 100;
    -webkit-order: 99;
    -ms-flex-order: 99;
    order: 99;
    -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    width: 100%;
    display: none;
}
.pricelist > input[type="radio"] {
    position: absolute;
    opacity: 0;
}
.pricelist > input[type="radio"]:checked + label { 
    background: var(--primaryColor);
    color: var(--color-white);
}
.pricelist > input[type="radio"]:checked + label + .tab { 
    display: block;
}
/* Bildschirm kleiner 768px */
@media (max-width: 768px) {
/* 
    .pricelist .tab, 
    .pricelist > label {
        -webkit-box-ordinal-group: NaN;
        -webkit-order: initial;
        -ms-flex-order: initial;
        order: initial;
    }
    .pricelist > label {
        width: 100%;
        margin-right: 0;
        margin-top: 0;
    }
    .pricelist > label::after {
        font-family: "Font Awesome 6 Free";
        content: "\f0d7";
        font-weight: 900;
        font-size: 16px;
        color: var(--color-gray-dark);
        padding-right: 5px;
        position: relative;
        top: 1px;
        float: right;
    }
    .pricelist > input[type="radio"]:checked + label::after  { 
        content: "";
    } 
*/
}

/*
.pricelist .accordion .panel {
    padding: 20px 0;
    background-color: var(--color-white);
}
*/

.pricelist .ce-table thead tr th {
    min-width: 100px;
}
.pricelist .ce-table thead tr th:first-of-type {
    min-width: 175px;
}
.pricelist .ce-table tbody tr td {
    text-align: end;
}
.pricelist .ce-table tbody tr td:first-of-type {
    text-align: start;
}
/* Tabellen Layout 1 - FaciPlan Update/Upgrade */
.pricelist .frame-layout-1 .ce-table thead tr th:nth-child(2) {
    min-width: 175px;
}
.pricelist .frame-layout-1 .ce-table tbody tr td:nth-child(2) {
    text-align: start;
}

/* Tabellen für Preisliste */
.pricelist .ce-table tbody td .btn-primary {
    font-size: 12px;
    font-weight: 500;
    padding: 5px 8px;
}



/* ############################################# */
/* #    Preisbox                             # */
/* ############################################# */

.pricebox {
    border: solid 1px #f1f1f1;
    background-color: #ffffff;
    border-radius: 10px;
    padding: 0 0 30px 0;
    margin: 0 0 30px 0 !important;
    -webkit-box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.08), 0px 20px 31px 3px rgba(0, 0, 0, 0.09), 0px 8px 20px 7px rgba(0, 0, 0, 0.02);
    -moz-box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.08), 0px 20px 31px 3px rgba(0, 0, 0, 0.09), 0px 8px 20px 7px rgba(0, 0, 0, 0.02);
    box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.08), 0px 20px 31px 3px rgba(0, 0, 0, 0.09), 0px 8px 20px 7px rgba(0, 0, 0, 0.02);
}
    .pricebox:hover {
        -webkit-box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.1), 0px 20px 31px 3px rgba(0, 0, 0, 0.11), 0px 8px 20px 7px rgba(0, 0, 0, 0.04);
        -moz-box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.1), 0px 20px 31px 3px rgba(0, 0, 0, 0.11), 0px 8px 20px 7px rgba(0, 0, 0, 0.04);
        box-shadow: 0px 10px 13px -6px rgba(0, 0, 0, 0.1), 0px 20px 31px 3px rgba(0, 0, 0, 0.11), 0px 8px 20px 7px rgba(0, 0, 0, 0.04);
    }

.pricebox-name {
    font-size: 22px;
    line-height: normal;
    text-align: center;
    padding: 20px 10px;
    color: var(--color-white);
    background: var(--primaryColor);
    border-radius: 10px 10px 0 0;
}
.pricebox-logo {
    text-align: center;
    margin: 30px 20px;
}
    .pricebox-logo img {
        max-width: 100%;
        max-height: 75px;
    }
.pricebox-price {
    font-size: 14px;
    text-align: center;
    margin: 20px 0 30px 0; 
}
    .pricebox-price span {
        font-size: 52px;
        font-weight: 900;
        line-height: normal;
    }
    .pricebox-price span .note {
        font-size: 16px;
        position: relative;
        top: -28px;
        left: 3px;
    }



.pricebox .features .feature-yes,
.pricebox .features .feature-no,
.pricebox .features .feature-part {
    border-top: solid 2px var(--color-gray-lighter);
    padding: 5px 20px 5px 35px;
}
    .pricebox .features .feature-yes:before,
    .pricebox .features .feature-no:before,
    .pricebox .features .feature-part:before {
        font-family: "Font Awesome 6 Free";
        font-weight: 100;
        font-size: 20px;
        position: relative;
        bottom: -2px;
        right: 10px;
    }
    .pricebox .features .feature-yes:before {
        content: "\f058";
        color: var(--color-limegreen);
    }
    .pricebox .features .feature-no:before {
        content: "\f057";
        color: var(--color-gray-light);
        opacity: 0.5;
    }
    .pricebox .features .feature-part:before {
        content: "\f192";
        color: var(--color-gray-light);
        opacity: 0.8;
    }



.pricebox-content table tr td:first-of-type {
    padding: 10px 10px 10px 25px;
}
.pricebox-content table tr td:last-of-type {
    padding: 10px 25px 10px 10px;
    text-align: end;
}
.pricebox .btn {
    display: inline-block;
    margin: 20px 20px 0 20px;
    text-decoration: none;
    text-align: center;
    min-width: initial;
    width: calc(100% - 60px);
}
.pricebox-remarks {
    font-size: 12px;
    line-height: 14px;
    padding: 0 20px;
    position: relative;
    top: 15px;
    display: flex;
}
    .pricebox-remarks span:last-of-type {
        padding-left: 5px;
    }
        .pricebox-remarks p {
            margin: 0;
        }
        .pricebox-remarks ul {
            margin: 0 0 0 10px;
            padding: 0;
        }
            .pricebox-remarks ul li {
                margin: 0 0 0 -15px;
                padding: 0 0 0 5px;
            }
            .pricebox-remarks ul li::marker {
                content: '*';
            }

/* Highlight */
.pricebox-highlight {
    margin: -10px !important;
    border: solid 1px #ccc;
    -webkit-box-shadow: 0px 10px 13px -6px rgb(0 0 0 / 26%), 0px 20px 31px 3px rgb(0 0 0 / 42%), 0px 8px 20px 7px rgb(0 0 0 / 2%);
    -moz-box-shadow: 0px 10px 13px -6px rgb(0 0 0 / 26%), 0px 20px 31px 3px rgb(0 0 0 / 42%), 0px 8px 20px 7px rgb(0 0 0 / 2%);
    box-shadow: 0px 10px 13px -6px rgb(0 0 0 / 26%), 0px 20px 31px 3px rgb(0 0 0 / 42%), 0px 8px 20px 7px rgb(0 0 0 / 2%);
}
    .pricebox-highlight:hover {
        -webkit-box-shadow: 0px 10px 13px -6px rgb(0 0 0 / 29%), 0px 20px 31px 3px rgb(0 0 0 / 44%), 0px 8px 20px 7px rgb(0 0 0 / 4%);
        -moz-box-shadow: 0px 10px 13px -6px rgb(0 0 0 / 29%), 0px 20px 31px 3px rgb(0 0 0 / 44%), 0px 8px 20px 7px rgb(0 0 0 / 4%);
        box-shadow: 0px 10px 13px -6px rgb(0 0 0 / 29%), 0px 20px 31px 3px rgb(0 0 0 / 44%), 0px 8px 20px 7px rgb(0 0 0 / 4%);
    }
    .pricebox-highlight .pricebox-name {
        padding: 25px 5px;
        margin: -1px;
        position: relative;
        border: solid 1px var(--primaryColor-dark);
        font-weight: 700;
    }

/* Bildschirm kleiner 1000px */
@media (max-width: 1000px) {
    .pricelist .tab .multicol-x > div:last-of-type {
        order: -1;
    }    
    .pricelist .tab .multicol-x div:first-of-type {
        order: 3;
    }
    .features {
        display: none;
    }
    .pricebox-highlight {
        border: solid 1px #f1f1f1;
        margin: 0 0 30px 0 !important;
        -webkit-box-shadow: 0px 10px 13px -6px rgb(0 0 0 / 8%), 0px 20px 31px 3px rgb(0 0 0 / 9%), 0px 8px 20px 7px rgb(0 0 0 / 2%);
        -moz-box-shadow: 0px 10px 13px -6px rgb(0 0 0 / 8%), 0px 20px 31px 3px rgb(0 0 0 / 9%), 0px 8px 20px 7px rgb(0 0 0 / 2%);
        box-shadow: 0px 10px 13px -6px rgb(0 0 0 / 8%), 0px 20px 31px 3px rgb(0 0 0 / 9%), 0px 8px 20px 7px rgb(0 0 0 / 2%);
    }
        .pricebox-highlight .pricebox-name{
            padding: 20px 10px;
        }
}

/* ##### 2/3/4/5 Spalten Container ##### */
.pricelist .multicol-x {
    grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
}

/* ### 2 Spalten Container (33/66) ### */
.pricelist .multicol-33-66 {
    grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
}
    /* Bildschirm größer 999px */
    @media (min-width: 999px) {
        .pricelist .multicol-33-66 {
            grid-template-columns: minmax(220px, calc(33% - 13px)) minmax(220px, calc(66% + 13px));
        }
    }


/* ############################################# */
/* #    Download Link                          # */
/* ############################################# */

.download-link {
    padding: 0 0 5px 0;
    font-size: 15px;
    font-weight: 600;
    color: var(--color-gray-light);
}
    .download-link img {
        width: 24px;
        height: 24px;
        position: relative;
        top: 6px;
    }
    .download-link a {
        color: var(--primaryColor);
        text-decoration: none;
        padding: 0 5px 0 5px;
    }


/* ############################################# */
/* #    Inline Fußnote                         # */
/* ############################################# */

.inline-footnote {
    font-size: 11px;
    font-weight: 500;
    background: var(--color-gray-lightest);
    margin: 15px 0 15px 0px;
    padding: 15px;
}
    .inline-footnote b {
        font-size: 12px;
        line-height: 14px;
        display: block;
        padding: 0 0 5px 0;
    }
    .inline-footnote ul {
        margin: 0;
        padding: 0 0 0 15px;
    }
        .inline-footnote ul li {
            line-height: 16px;
        }