@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600&family=Poppins:wght@400;600&display=swap');

/* =========================
   BASIS
   ========================= */

body {
    font-family: 'Open Sans', sans-serif;
    font-size: 16px;
    line-height: 1.7;
    color: #4a4a4a;
}

p,
li {
    font-family: 'Open Sans', sans-serif;
    line-height: 1.7;
    letter-spacing: 0;
}

/* Überschriften */
h1, h2, h3, h4,
.entry-title,
.site-title {
    font-family: 'Poppins', sans-serif !important;
    color: #3f3a3a;
    line-height: 1.2;
    letter-spacing: 0;
}

h1,
.entry-title {
    font-size: 2.2rem;
    font-weight: 600;
    margin-bottom: 1.2rem;
}

h2 {
    font-size: 1.7rem;
    font-weight: 600;
    margin-top: 2rem;
    margin-bottom: 1rem;
}

h3 {
    font-size: 1.35rem;
    font-weight: 600;
    margin-top: 1.6rem;
    margin-bottom: 0.8rem;
}

/* =========================
   INHALTSBREITE
   ========================= */

.entry-content {
    max-width: 900px;
    margin: auto;
}

/* =========================
   ABSÄTZE / LISTEN
   ========================= */

p {
    margin-bottom: 1.15em;
}

ul, ol {
    padding-left: 1.4em;
    margin-bottom: 1.2em;
}

li {
    margin-bottom: 0.45em;
}

/* =========================
   BILDER
   ========================= */

.wp-block-image img,
.entry-content img {
    border-radius: 20px;
}

.wp-element-caption,
figcaption {
    font-size: 0.95rem;
    line-height: 1.5;
    color: #6d6d6d;
    text-align: center;
    margin-top: 10px;
    font-style: italic;
}

/* =========================
   NORMALE FARBIGE GRUPPEN
   ========================= */

.wp-block-group.has-background {
    padding: 24px 20px !important;
    border-radius: 16px;
    box-sizing: border-box;
}

/* =========================
   CTA-BLÖCKE
   Nur wenn du der Gruppe im Editor
   die CSS-Klasse "cta-block" gibst
   ========================= */

.cta-block {
    padding: 28px 24px !important;
    border-radius: 18px;
    text-align: center;
    box-sizing: border-box;
}

}

/* =========================
   TABELLEN
   ========================= */

table {
    width: 100%;
    border-collapse: collapse;
    table-layout: auto;
}

th, td {
    padding: 10px 12px;
    text-align: left;
    vertical-align: top;
    word-break: normal;
    overflow-wrap: normal;
    hyphens: none;
}

td:first-child,
th:first-child {
    min-width: 140px;
}

td:nth-child(2),
th:nth-child(2),
td:nth-child(3),
th:nth-child(3),
td:nth-child(4),
th:nth-child(4) {
    white-space: nowrap;
}

.wp-block-table {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.wp-block-table table {
    min-width: 600px;
}

/* =========================
   MOBILE
   ========================= */

@media (max-width: 767px) {
    body,
    p,
    li {
        font-size: 16.5px;
        line-height: 1.7;
    }

    h1,
    .entry-title {
        font-size: 2.1rem;
        line-height: 1.18;
    }

    h2 {
        font-size: 1.6rem;
    }

    h3 {
        font-size: 1.3rem;
    }

    .entry-content {
        max-width: 100%;
    }

    .wp-block-image img,
    .entry-content img {
        border-radius: 16px;
    }

    /* Nur CTA-Blöcke auf Mobile breiter */
    .cta-block {
        width: calc(100% + 32px) !important;
        max-width: calc(100% + 32px) !important;
        margin-left: -16px !important;
        margin-right: -16px !important;
        padding: 24px 18px !important;
        border-radius: 0 !important;
    }
}
/* Größere Überschriften nur in CTA-Blöcken */
.cta-block h2,
.cta-block h3,
.cta-block h4 {
    font-size: 1.5rem !important;
    line-height: 1.25;
    font-weight: 600;
}

@media (max-width: 767px) {
    .cta-block h2,
    .cta-block h3,
    .cta-block h4 {
        font-size: 1.55rem !important;
        line-height: 1.25;
    }
/* CTA Überschriften wirklich groß erzwingen */
.cta-block h2 {
    font-size: 1.8rem !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
}

@media (max-width: 767px) {
    .cta-block h2 {
        font-size: 1.7rem !important;
    }
}/* CTA Listen sauber zentrieren */
.cta-block ul {
    list-style: none;
    padding-left: 0;
    margin: 20px 0;
}

.cta-block ul li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 10px;
    text-align: left;
}

/* eigene Bullet Points */
.cta-block ul li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0;
    color: #2f2a2a;
    font-weight: bold;
}h3,
.wp-block-heading h3 {
    font-size: 1.4rem !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
}

.wp-block-image figcaption,
figure figcaption,
.wp-element-caption,
.wp-caption-text {
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: #787878 !important;
    text-align: center !important;
    margin-top: 10px !important;
    font-style: italic !important;
}