.sternholz-gaeste-widget .utilization-bar {
  font-weight: 600;
}

b, strong {
  font-weight: 600;
}


.dialog-lightbox-close-button {display:none;opacity:0;}

/* ==============================================
   GUT STERNHOLZ – BEITRÄGE UND JOBS
   ============================================== */

body:is(.single-post, .single-gs_job)
.elementor-widget-theme-post-content {
    font-family: 'GS Akkurat', Arial, sans-serif;
    font-size: 1.4rem;
    font-weight: 300;
    line-height: 1.65;
    overflow-wrap: break-word;
}

/* Absätze und Listen */
body:is(.single-post, .single-gs_job)
.elementor-widget-theme-post-content > p {
    font-size: inherit;
    line-height: 1.65;
    margin: 0 0 1.5rem !important;
    padding: 0;
}

body:is(.single-post, .single-gs_job)
.elementor-widget-theme-post-content > ul,
body:is(.single-post, .single-gs_job)
.elementor-widget-theme-post-content > ol {
    font-size: inherit;
    line-height: 1.6;
    margin: 0 0 2rem !important;
    padding-left: 1.7rem !important;
    list-style-position: outside;
}

body:is(.single-post, .single-gs_job)
.elementor-widget-theme-post-content > ul {
    list-style-type: disc;
}

body:is(.single-post, .single-gs_job)
.elementor-widget-theme-post-content > ol {
    list-style-type: decimal;
}

body:is(.single-post, .single-gs_job)
.elementor-widget-theme-post-content li {
    font-size: inherit;
    line-height: 1.6;
    margin: 0 0 0.65rem !important;
    padding-left: 0.15rem;
}

body:is(.single-post, .single-gs_job)
.elementor-widget-theme-post-content li:last-child {
    margin-bottom: 0 !important;
}

/* Fettgedruckte Zwischenüberschriften */
body:is(.single-post, .single-gs_job)
.elementor-widget-theme-post-content > p:has(> strong:only-child) {
    margin-top: 2.8rem !important;
    margin-bottom: 1rem !important;
    line-height: 1.4;
}

/* Reguläre Überschriften */
body:is(.single-post, .single-gs_job)
.elementor-widget-theme-post-content > :is(h2, h3, h4, h5, h6) {
    margin-top: 2.8rem !important;
    margin-bottom: 1rem !important;
    line-height: 1.3;
}

/* Fettschrift */
body:is(.single-post, .single-gs_job)
.elementor-widget-theme-post-content :is(strong, b) {
    font-weight: 700;
}

/* Bilder */
body:is(.single-post, .single-gs_job)
.elementor-widget-theme-post-content img {
    max-width: 100%;
    height: auto;
}

/* Letztes Element */
body:is(.single-post, .single-gs_job)
.elementor-widget-theme-post-content > :last-child {
    margin-bottom: 0 !important;
}

/* ==============================================
   TABLET
   ============================================== */

@media (max-width: 1024px) {

    body:is(.single-post, .single-gs_job)
    .elementor-widget-theme-post-content {
        font-size: 1.3rem;
        line-height: 1.6;
    }

    body:is(.single-post, .single-gs_job)
    .elementor-widget-theme-post-content > p:has(> strong:only-child),
    body:is(.single-post, .single-gs_job)
    .elementor-widget-theme-post-content > :is(h2, h3, h4, h5, h6) {
        margin-top: 2.3rem !important;
    }
}

/* ==============================================
   SMARTPHONE
   ============================================== */

@media (max-width: 767px) {

   body:is(.single-post, .single-gs_job)
    .elementor-widget-theme-post-content {
        font-size: 1.125rem;
        line-height: 1.6;
    }

    body:is(.single-post, .single-gs_job)
    .elementor-widget-theme-post-content > p {
        margin-bottom: 1.3rem !important;
    }

    body:is(.single-post, .single-gs_job)
    .elementor-widget-theme-post-content > ul,
    body:is(.single-post, .single-gs_job)
    .elementor-widget-theme-post-content > ol {
        padding-left: 1.4rem !important;
        margin-bottom: 1.5rem !important;
    }

    body:is(.single-post, .single-gs_job)
    .elementor-widget-theme-post-content li {
        margin-bottom: 0.6rem !important;
    }

    body:is(.single-post, .single-gs_job)
    .elementor-widget-theme-post-content > p:has(> strong:only-child),
    body:is(.single-post, .single-gs_job)
    .elementor-widget-theme-post-content > :is(h2, h3, h4, h5, h6) {
        margin-top: 2rem !important;
        margin-bottom: 0.85rem !important;
    }
}

/* ==============================================
   GUT STERNHOLZ – FAQ SMARTPHONE
   ============================================== */

@media (max-width: 767px) {

    /* Kategorie-Überschriften */
    .elementor-widget-gs_faq
    .gs-faq-list
    .gs-faq-cat > button.gs-faq-trigger {
        font-size: 1rem !important;
        line-height: 1.3 !important;
    }

    /* Fragen */
    .elementor-widget-gs_faq
    .gs-faq-question {
        font-size: 1.125rem !important;
        line-height: 1.4 !important;
    }

    /* Antworten */
    .elementor-widget-gs_faq
    .gs-faq-answer {
        font-size: 1rem !important;
        line-height: 1.6 !important;
    }

}


/* ==============================================
   GUT STERNHOLZ – BARRIEREFREIHEIT
   Responsive Tabelle
   ============================================== */

/* DESKTOP UND TABLET */

.gs-barrierefreiheit-tabelle {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
}

.gs-barrierefreiheit-tabelle table {
    width: 100%;
    border-collapse: collapse;
}

.gs-barrierefreiheit-tabelle th,
.gs-barrierefreiheit-tabelle td {
    padding: 14px;
    border: 1px solid #d5dfe2;
    text-align: left;
    vertical-align: top;
    overflow-wrap: anywhere;
}

.gs-barrierefreiheit-tabelle thead th {
    background: #f3f5f5;
    color: #315d68;
    font-weight: 700;
}

.gs-barrierefreiheit-tabelle tbody th {
    font-weight: 600;
}


/* ==============================================
   SMARTPHONE – KARTENANSICHT
   ============================================== */

@media (max-width: 767px) {

    .gs-barrierefreiheit-tabelle {
        overflow: visible;
    }

    .gs-barrierefreiheit-tabelle table,
    .gs-barrierefreiheit-tabelle tbody {
        display: block;
        width: 100%;
    }

    /* Tabellenkopf visuell ausblenden */
    .gs-barrierefreiheit-tabelle thead {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
        border: 0;
    }

    /* Jede Tabellenzeile als Karte */
    .gs-barrierefreiheit-tabelle tbody tr {
        display: block;
        margin-bottom: 20px;
        padding: 18px;
        border: 1px solid #d5dfe2;
        border-radius: 6px;
        background: #ffffff;
    }

    /* Kartenüberschrift */
    .gs-barrierefreiheit-tabelle tbody th {
        display: block;
        width: 100%;
        padding: 0 0 14px !important;
        border: none !important;
        color: #315d68;
        font-size: 1.15rem;
        font-weight: 700;
        line-height: 1.4;
        text-align: left;
    }

    /* Karteninhalte */
    .gs-barrierefreiheit-tabelle tbody td {
        display: block;
        width: 100%;
        padding: 12px 0 !important;
        border: none !important;
        border-top: 1px solid #e5e5e5 !important;
        font-size: 1rem;
        line-height: 1.5;
        text-align: left;
        overflow-wrap: anywhere;
    }

    /* Beschriftungen */
    .gs-barrierefreiheit-tabelle tbody td::before {
        content: attr(data-label) !important;
        display: block !important;
        margin-bottom: 8px;
        color: #315d68;
        font-size: 0.95rem;
        font-weight: 700;
        line-height: 1.4;
        text-align: left;
    }

    .gs-barrierefreiheit-tabelle tbody td:last-child {
        padding-bottom: 0 !important;
    }
}
