/*.dk-hero_subpages{
    position: relative;
    overflow: hidden;
    margin: 16px;
    min-height: 220px;
}

.dk-hero_subpages::before{
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--hero-img);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 78% 50%;
    transform: none;
    filter: none;
}

.dk-hero_subpages::after{
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg,
        rgba(0,0,0,.58) 0%,
        rgba(0,0,0,.34) 42%,
        rgba(0,0,0,.12) 68%,
        rgba(0,0,0,0) 100%);
}

.dk-hero_subpages__inner{
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    min-height: 220px;
    padding: 22px 18px;
}

.dk-hero_subpages__title{
    margin: 0;
    color: #fff;
    font-size: clamp(26px, 4.6vw, 42px);
    line-height: 1.08;
    letter-spacing: .1px;
    font-weight: 850;
    max-width: 16ch;
    text-wrap: balance;
}

@media (min-width: 900px){
    .dk-hero_subpages{
        margin: 18px auto;
        max-width: 1200px;
        min-height: 240px;
        border-radius: 18px;
    }

    .dk-hero_subpages::before{
        background-position: 76% 60%;
    }

    .dk-hero_subpages__inner{
        min-height: 240px;
        padding: 28px 28px;
    }

    .dk-hero_subpages__title{
        max-width: 18ch;
    }
}

@media (max-width: 899px){
    .dk-hero_subpages{
        min-height: 210px;
    }

    .dk-hero_subpages::before{
        background-position: 80% 50%;
    }

    .dk-hero_subpages__inner{
        min-height: 210px;
    }

    .dk-hero_subpages__title{
        max-width: 15ch;
    }
}

@media (max-width: 577px){
    .dk-hero_subpages{
        min-height: 190px;
        border-radius: 12px;
    }

    .dk-hero_subpages::before{
        background-position: 84% 50%;
    }

    .dk-hero_subpages::after{
        background:
            linear-gradient(90deg,
            rgba(0,0,0,.64) 0%,
            rgba(0,0,0,.40) 48%,
            rgba(0,0,0,.16) 72%,
            rgba(0,0,0,0) 100%);
    }

    .dk-hero_subpages__inner{
        min-height: 190px;
        padding: 18px 16px;
    }

    .dk-hero_subpages__title{
        font-size: clamp(22px, 7vw, 30px);
        line-height: 1.1;
        max-width: 13ch;
    }
}

neu
.dk-hero_bg {
    position: absolute;
    inset: 0;
    display: block;
}
.dk-hero_bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 78% 50%;
}
@media (min-width: 900px) {
    .dk-hero_bg img { object-position: 76% 58%; }
}
@media (max-width: 577px) {
    .dk-hero_bg img { object-position: 84% 50%; }
}*/


.dk-hero_subpages{
    position: relative;
    overflow: hidden;
    margin: 16px;
    min-height: 220px;

    /* Standard: mittlere Bildgröße */
    --hero-img: var(--hero-img-md);
}

.dk-hero_subpages::before{
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--hero-img);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 78% 50%;
    transform: none;
    filter: none;
}

.dk-hero_subpages::after{
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(0,0,0,.58) 0%,
            rgba(0,0,0,.34) 42%,
            rgba(0,0,0,.12) 68%,
            rgba(0,0,0,0) 100%
        );
}

.dk-hero_subpages__inner{
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    min-height: 220px;
    padding: 22px 18px;
}

.dk-hero_subpages__title{
    margin: 0;
    color: #fff;
    font-size: clamp(26px, 4.6vw, 42px);
    line-height: 1.08;
    letter-spacing: .1px;
    font-weight: 850;
    max-width: 16ch;
    text-wrap: balance;
}

@media (min-width: 900px){
    .dk-hero_subpages{
        margin: 18px auto;
        max-width: 1200px;
        min-height: 240px;
        --hero-img: var(--hero-img-lg);
    }

    .dk-hero_subpages::before{
        background-position: 76% 60%;
    }

    .dk-hero_subpages__inner{
        min-height: 240px;
        padding: 28px 28px;
    }

    .dk-hero_subpages__title{
        max-width: 18ch;
    }
}

@media (max-width: 899px){
    .dk-hero_subpages{
        min-height: 210px;
        --hero-img: var(--hero-img-md);
    }

    .dk-hero_subpages::before{
        background-position: 80% 50%;
    }

    .dk-hero_subpages__inner{
        min-height: 210px;
    }

    .dk-hero_subpages__title{
        max-width: 15ch;
    }
}

@media (max-width: 577px){
    .dk-hero_subpages{
        min-height: 190px;
        --hero-img: var(--hero-img-sm);
    }

    .dk-hero_subpages::before{
        background-position: 84% 50%;
    }

    .dk-hero_subpages::after{
        background:
            linear-gradient(
                90deg,
                rgba(0,0,0,.64) 0%,
                rgba(0,0,0,.40) 48%,
                rgba(0,0,0,.16) 72%,
                rgba(0,0,0,0) 100%
            );
    }

    .dk-hero_subpages__inner{
        min-height: 190px;
        padding: 18px 16px;
    }

    .dk-hero_subpages__title{
        font-size: clamp(22px, 7vw, 30px);
        line-height: 1.1;
        max-width: 13ch;
    }
}


.dk-compare{
    display:block;
}

.dk-compare__seo{
    padding: 18px 16px 8px;
    /*max-width: 1100px;*/
    margin: 0 auto;
}

.dk-compare__seo h1{
    margin: 14px 0 10px;
    font-size: clamp(28px, 6vw, 44px);
    line-height: 1.05;
    letter-spacing: -0.02em;
}

.dk-compare__seo p{
    margin: 0;
    color: var(--dk-muted);
    font-size: 18px;
    line-height: 1.5;
    /*max-width: 60ch;*/
}

.dk-compare__cta .dk-card{
    padding: 18px;
    border: 2px solid var(--dk-green);
}


.dk-compare__cta .dk-btn{
    width: 100%;
    justify-content: center;
}


.dk-compare__seo,
.dk-compare__seoLinks,
.dk-compare__faq, .dk-compare__faq .dk-compare {
    margin-top: 48px;
    padding: 18px 16px 8px;
}

.dk-seo-h2 {
    font-size: 1.6rem;
    line-height: 1.25;
    color: #339900;
}

.dk-seo-h3,
.dk-sectionSubTitle {
    margin: 18px 0 8px;
    font-size: 1.15rem;
    line-height: 1.3;
}

.dk-seo-p {
    margin: 0 0 18px;
    line-height: 1.7;
}



.dk-seoLinksBox {
    padding: 16px 18px;
    border: 1px solid #e6e6e6;
    border-radius: 14px;
    background: #fafafa;
}

.dk-compare__seoLinksContent a {
    display: inline-block;
    margin: 4px 0;
    text-decoration: none;
}

.dk-faqAccordion {
    margin-top: 12px;
}

.dk-faqItem {
    border: 1px solid #e7e7e7;
    border-radius: 14px;
    background: #fff;
    margin-bottom: 12px;
    overflow: hidden;
}

.dk-faqQuestion {
    cursor: pointer;
    list-style: none;
    padding: 16px 18px;
    font-weight: 600;
    position: relative;
}

.dk-faqQuestion::-webkit-details-marker {
    display: none;
}

.dk-faqQuestion::after {
    content: "+";
    position: absolute;
    right: 18px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.2rem;
    line-height: 1;
}

.dk-faqItem[open] .dk-faqQuestion::after {
    content: "–";
}

.dk-faqAnswer {
    padding: 0 18px 16px;
}

.dk-faqAnswer p {
    margin: 0;
    line-height: 1.7;
}

.dk-compare__seoLinksContent {
    display: grid;
    gap: 6px;
}

@media (max-width: 768px) {
    .dk-seo-h2 {
        font-size: 1.35rem;
    }

    .dk-seo-h3,
    .dk-sectionSubTitle {
        font-size: 1.05rem;
    }

    .dk-seoLinksBox {
        padding: 14px 14px;
    }

    .dk-faqQuestion {
        padding: 14px 16px;
    }

    .dk-faqAnswer {
        padding: 0 16px 14px;
    }
}

/*.dk-btn{
    width: 100%;
    border-radius: 999px !important;
    padding: 14px 18px !important;
    font-weight: 800 !important;
    font-size: 18px !important;
}*/

.dk-btn--primary{
    background: var(--dk-green, #339900) !important;
    border: 1px solid var(--dk-green, #339900) !important;
}

.dk-btn--primary .ui-button-text{
    color:#fff !important;
}

.dk-compare .inputFelderTable {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 14px; /* Abstand zwischen "Zeilen-Cards" */
}

.dk-compare .inputFelderRow {
    background: #fff;
}

.dk-compare .inputFelderSubTitel,
.dk-compare .inputSubTitel {
    font-size: 18px;
    line-height: 1.35;
    color: #555;
    margin: 0 0 16px;
}

.dk-compare .inputFelderSectionTitel,
.dk-compare h2.inputSection,
.dk-compare .sectionTitle {
    font-size: 28px;
    font-weight: 800;
    margin: 26px 0 14px;
}

.dk-compare .inputFelderHinweis,
.dk-compare .inputHinweis {
    font-size: 14px;
    color: #777;
    margin-top: 8px;
}

.dk-compare .ui-inputfield,
.dk-compare .ui-inputtext,
.dk-compare .ui-selectonemenu .ui-selectonemenu-label,
.dk-compare .ui-selectonemenu,
.dk-compare .ui-spinner-input {
    width: 100%;
    font-size: 18px;
    border-radius: 14px;
    border: 2px solid #e6e6e6;
    background: #fff;
    box-shadow: none;
}

.dk-compare .ui-inputfield:focus,
.dk-compare .ui-inputtext:focus,
.dk-compare .ui-selectonemenu.ui-state-focus {
    border-color: #2f8f00;
    outline: none;
}


.dk-compare .ui-selectonemenu-trigger {
    width: 46px;
    border-left: none;
}

.dk-compare .ui-selectonemenu-trigger .ui-icon {
    margin-top: 10px;
}


.dk-compare .ui-radiobutton-box,
.dk-compare .ui-chkbox-box {
    width: 26px;
    height: 26px;
    border-radius: 999px;
    border: 2px solid #cfcfcf;
}

.dk-compare .ui-radiobutton-box.ui-state-active,
.dk-compare .ui-chkbox-box.ui-state-active {
    border-color: #2f8f00;
    background: #2f8f00;
}

.dk-compare .ui-slider {
    height: 14px;
    border-radius: 999px;
    background: #efefef;
    border: none;
}

.dk-compare .ui-slider .ui-slider-range {
    border-radius: 999px;
    background: #2f8f00;
}

.dk-compare .ui-slider .ui-slider-handle {
    width: 34px;
    height: 34px;
    top: -10px;
    border-radius: 12px;
    border: 2px solid #2f8f00;
    background: #fff;
}


.dk-compare .inputFelder .ui-inputfield,
.dk-compare .inputFelder .ui-inputtext {
    width: 100% !important;
}


.dk-provider-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    width: 90%;
    margin: 0 auto;
}

.dk-provider-card {
    background: #fff;
    border: 1px solid #e6e6e6;
    border-radius: 18px;
    padding: 24px 18px;
    text-align: center;
    box-shadow: 0 8px 24px rgba(0,0,0,.04);
}


@media (max-width: 900px) {

    .dk-provider-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .dk-provider-grid {
        grid-template-columns: 1fr;
    }
}

.dk-compare .inputFelderZellen {
    padding: 16px;
    border: 1px solid #e8e8e8;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(0,0,0,.06);
}

.dk-compare .inputFelderTitel,
.dk-compare .inputTitel,
.dk-compare .simpleTableTitel {
    font-size: 32px;
    line-height: 1.08;
    font-weight: 800;
    margin: 14px 0 6px;
}

.dk-compare .inputFelderLabel,
.dk-compare .inputLabel {
    display: block;
    font-size: 18px;
    font-weight: 700;
    color: #2f8f00; /* dk-grün */
    margin: 0 0 10px;
}



.dk-calcProto.dk-compare .inputFelderLabel,
.dk-calcProto.dk-compare .inputLabel {
    color: #000;
}

