/* ========================================
   Spirit Coaching - energieinharmonie.eu
   Custom CSS v4.1 - Logo oben + Nav-Block rechts + Physio-Sidebar
   Stand: 2026-02-27
   ======================================== */

/* H1 Seitentitel überall größer */
.entry-content h1.wp-block-heading {
    font-size: 2.4em !important;
}

/* H2 überall zentriert */
.entry-content h2.wp-block-heading {
    text-align: center;
}

/* Font: Georgia (System-Font, kein Google Fonts nötig).
   Überschreibt Kadence CSS-Variablen direkt. */
:root {
    --global-body-font-family: Georgia, 'Times New Roman', serif;
    --global-heading-font-family: Georgia, 'Times New Roman', serif;
    --global-primary-nav-font-family: Georgia, 'Times New Roman', serif;
}
body, p, li, td, th, input, textarea, select, button,
h1, h2, h3, h4, h5, h6, .site-title, .entry-title, .nav-link, a {
    font-family: Georgia, 'Times New Roman', serif !important;
}

/* ── 1. GRUNDLEGENDE TYPOGRAFIE ── */
body,
p,
li,
td,
th,
input,
textarea,
select,
.entry-content,
.site-header,
.site-footer {
    color: #3D1A6E;
    line-height: 1.6;
}

p {
    margin-bottom: 0.6em;
}

h1, h2, h3, h4, h5, h6,
.entry-title,
.site-title {
    font-weight: 700;
    color: #2E0066;
    line-height: 1.3;
}

h1 { font-size: 2.2em; margin-bottom: 0.3em; margin-top: 0.4em; }
h2 { font-size: 2.2em; margin-bottom: 0.25em; margin-top: 0.35em; }
h3 { font-size: 1.5em; margin-bottom: 0.2em; margin-top: 0.3em; }
h4 { font-size: 1.3em; margin-bottom: 0.2em; margin-top: 0.25em; }
h5 { font-size: 1.1em; margin-bottom: 0.15em; margin-top: 0.2em; }
h6 { font-size: 1em; margin-bottom: 0.15em; margin-top: 0.2em; }

/* ── 2. HINTERGRUNDBILD ── */
body {
    background-image: url("/wp-content/uploads/bg-energie-harmonie.jpg") !important;
    background-repeat: repeat !important;
    background-attachment: fixed !important;
    background-size: auto !important;
    background-color: #F5D5A0 !important;
}

/* ── 3. CONTENT-WRAPPER: TRANSPARENT - Hintergrund voll sichtbar ── */
.site-container .site-inner,
.content-area,
.entry-content-wrap {
    background: transparent !important;
    border-radius: 8px;
    padding: 18px 35px;
    /* max-width und margin werden in Sektion 20 final gesetzt */
}

/* Seitenraender frei halten — Breite wird in Sektion 20 final gesetzt */
.site {
    background: transparent !important;
}

/* Kadence-Container/Wrapper/Rows: ALLE transparent
   WICHTIG: .wp-block-cover und seine Kinder sind AUSGENOMMEN!
   Das Cover-Overlay braucht seine Hintergrundfarbe fuer Textkontrast. */
.wp-block-kadence-rowlayout,
.wp-block-kadence-column,
.kt-row-layout-inner,
.kt-row-column-wrap,
.kadence-column,
.wp-block-group,
.wp-block-column,
.wp-block-columns,
.entry-content > .alignfull:not(.wp-block-cover),
.entry-content > .alignwide:not(.wp-block-cover),
.content-bg,
.content-container,
#inner-wrap,
.site-main,
.loop-entry,
.entry-content,
.entry {
    background: transparent !important;
    background-color: transparent !important;
}

/* ── 3a. COVER-BLOCK SCHUTZ ──
   Die obige Regel trifft auch .wp-block-group etc. INNERHALB des Cover-Blocks.
   Wir muessen das Overlay und den Cover selbst explizit schuetzen. */

/* Cover-Block Overlay: komplett transparent (Hintergrundbild soll durchscheinen) */
.wp-block-cover .wp-block-cover__background,
.wp-block-cover .has-background-dim,
.wp-block-cover .has-palette-1-background-color {
    opacity: 0 !important;
}

/* Cover-Block innere Container: transparent damit Overlay durchscheint */
.wp-block-cover .content-bg,
.wp-block-cover .wp-block-group,
.wp-block-cover .wp-block-column,
.wp-block-cover .wp-block-columns,
.wp-block-cover .wp-block-kadence-rowlayout,
.wp-block-cover .wp-block-kadence-column,
.wp-block-cover .kt-row-layout-inner,
.wp-block-cover .kt-row-column-wrap {
    background: transparent !important;
    background-color: transparent !important;
}

/* Cover-Block Text: Dunkelviolett mit starkem weissem Schatten fuer Kontrast */
.wp-block-cover h1,
.wp-block-cover h2,
.wp-block-cover h3,
.wp-block-cover h4 {
    color: #2E0066 !important;
    text-shadow: 0 0 12px rgba(255,255,255,0.95),
                 0 0 25px rgba(255,255,255,0.8),
                 1px 1px 4px rgba(255,255,255,0.9) !important;
}

.wp-block-cover p,
.wp-block-cover li,
.wp-block-cover .wp-block-cover__inner-container p {
    color: #3D1A6E !important;
    text-shadow: 0 0 10px rgba(255,255,255,0.95),
                 0 0 20px rgba(255,255,255,0.8),
                 1px 1px 3px rgba(255,255,255,0.9) !important;
}

/* Cover-Block Buttons: bleiben dunkelviolett mit weisser Schrift */
.wp-block-cover .wp-block-button__link {
    color: #fff !important;
    text-shadow: none !important;
}

/* ── 3b. TEXT-LESBARKEIT auf Hintergrundbild ── */
/* Leichter Schatten fuer dunklen Text auf buntem Hintergrund */
h1, h2, h3, h4, h5, h6,
.entry-title,
.site-title {
    text-shadow: 1px 1px 3px rgba(255, 255, 255, 0.8),
                 0 0 8px rgba(255, 255, 255, 0.5);
}

p, li, td, th,
.entry-content,
.entry-content p,
.entry-content li {
    text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.7),
                 0 0 6px rgba(255, 255, 255, 0.4);
}

/* ── 4. HEADER: NUR TITELLEISTE (Logo + Titel zentriert) ── */

#masthead,
.site-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 60px !important;
    max-height: 60px !important;
    z-index: 1000;
    background: #FDF8F0 !important;
    border-bottom: 2px solid #D4A574;
    overflow: hidden !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Kadence-Nav im Header KOMPLETT ausblenden */
.site-header-main-section-right,
.site-header .header-navigation,
.site-header .mobile-navigation,
.site-header .mobile-toggle-open-container,
.site-header .site-header-item-navgation-popup-toggle {
    display: none !important;
}

/* Logo + Titel: Logo links, Text rechts daneben, vertikal zentriert */
.site-header .site-branding,
.site-header .site-title-wrap {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}

/* Logo-Symbol: 40-45px */
.site-header .site-branding img,
.site-header .custom-logo {
    max-height: 40px !important;
    width: auto !important;
    flex-shrink: 0 !important;
}

/* Site-Title: lila, kompakte Schrift */
.site-title,
.site-title a {
    font-size: 1.0em !important;
    white-space: nowrap !important;
    color: #2E0066 !important;
    text-decoration: none !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
}

/* Sticky: max-height beibehalten */
.item-is-fixed,
.header-sticky-shrink,
#masthead.item-is-fixed {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 60px !important;
    max-height: 60px !important;
}

/* ── 5. EIGENE NAV-BAR (unterhalb Titelleiste, transparent, blauer Rahmen) ── */

#eih-nav-bar {
    position: fixed !important;
    top: 60px !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 999;
    background: #E8D1A8 !important;
    border: none !important;
    display: flex !important;
    justify-content: center !important;
    align-items: stretch !important;
    text-shadow: none !important;
    padding: 0 !important;
    margin-top: -2px !important;
}

/* Menue-Liste: horizontal */
#eih-nav-bar .eih-nav-menu {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    align-items: stretch !important;
}

/* Nav-Links */
#eih-nav-bar .eih-nav-menu > li {
    position: relative;
    margin-left: -1px;
}

#eih-nav-bar .eih-nav-menu > li:first-child {
    margin-left: 0;
}

#eih-nav-bar .eih-nav-menu > li > a {
    display: flex !important;
    align-items: center !important;
    padding: 10px 20px !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: 15px !important;
    color: #2E0066 !important;
    background: transparent !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: background 0.2s ease, color 0.2s ease;
    border: 1px solid rgba(212, 165, 116, 0.25) !important;
    border-radius: 0 0 8px 8px !important;
    text-shadow: none !important;
}

#eih-nav-bar .eih-nav-menu > li > a:hover {
    background: rgba(46, 0, 102, 0.08) !important;
    color: #2E0066 !important;
}

/* Aktive Seite: gefüllter Hintergrund */
#eih-nav-bar .eih-nav-menu > li.current-menu-item > a,
#eih-nav-bar .eih-nav-menu > li.current_page_item > a,
#eih-nav-bar .eih-nav-menu > li.current-menu-ancestor > a {
    background: #2E0066 !important;
    color: #fff !important;
}

/* Dropdown */
#eih-nav-bar .eih-nav-menu > li > ul.sub-menu {
    display: none !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    min-width: 220px !important;
    background: #ffffff !important;
    border: 1px solid #2E0066 !important;
    border-top: none !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 4px 0 !important;
    z-index: 1001;
    box-shadow: 0 4px 12px rgba(46, 0, 102, 0.12);
}

#eih-nav-bar .eih-nav-menu > li:hover > ul.sub-menu {
    display: block !important;
}

#eih-nav-bar .eih-nav-menu .sub-menu > li > a {
    display: block !important;
    padding: 8px 18px !important;
    font-size: 14px !important;
    color: #3D1A6E !important;
    background: transparent !important;
    text-decoration: none !important;
    white-space: nowrap;
}

#eih-nav-bar .eih-nav-menu .sub-menu > li > a:hover {
    background: rgba(46, 0, 102, 0.08) !important;
}

/* Content: Platz für Titelleiste (60px) + Nav-Bar (~30px Overlap) */
body,
.site {
    margin-top: 38px !important;
    margin-right: 0 !important;
}

.site-footer {
    margin-right: 0 !important;
}

/* Header: kein text-shadow */
.site-header *,
.site-header a,
.site-header .site-title,
.site-header .site-title a {
    text-shadow: none !important;
}

/* ── 5a. PHYSIO-ANGEBOT BLOCK – ausgeblendet ── */
.eih-physio-nav-block {
    display: none !important;
}

/* ── 6. BUTTONS ── */
.wp-block-button__link,
.kb-button,
.entry-content .wp-block-button__link {
    background-color: #2E0066 !important;
    color: #fff !important;
    border-radius: 8px;
    padding: 12px 28px;
    font-weight: 600;
    font-size: 0.95em;
    transition: all 0.3s ease;
    border: none;
    text-decoration: none;
    text-shadow: none;
}

.wp-block-button__link:hover,
.kb-button:hover,
.entry-content .wp-block-button__link:hover {
    background-color: #5B21B6 !important;
    color: #fff !important;
}

/* CTA-Button Lavendel (Issue #3): Hero-CTA */
.wp-block-button.eih-cta-lavendel .wp-block-button__link {
    background-color: #2E0066 !important;
    color: #fff !important;
    border: none !important;
}

.wp-block-button.eih-cta-lavendel .wp-block-button__link:hover {
    background-color: #7C3AED !important;
    color: #fff !important;
}

/* ── 7. LINKS ── */
a:not(.wp-block-button__link) {
    color: #2E0066;
    transition: color 0.3s ease;
    text-decoration-color: #D4A574;
}

a:not(.wp-block-button__link):hover {
    color: #5B21B6;
}

/* ── 8. BLOCKQUOTES ── */
blockquote:not(.eih-segel-quote) {
    border-left: 4px solid #D4A574;
    font-style: italic;
    padding: 1em 1.5em;
    margin: 1.5em 0;
    background: rgba(255, 255, 255, 0.3);
    border-radius: 0 8px 8px 0;
    color: #3D1A6E;
}

blockquote p {
    margin-bottom: 0.5em;
}

/* ── 9. FOOTER ── */
.site-footer {
    border-top: 2px solid #D4A574;
    background: rgba(255, 255, 255, 0.95) !important;
    font-size: 0.9em;
}

/* Kadence Footer Widgets/Rows ebenfalls opak halten */
.site-footer .site-footer-wrap,
.site-footer .footer-widget-area,
.site-footer .site-footer-row-container-inner,
.footer-inner-wrap,
.eih-footer {
    background: rgba(255, 255, 255, 0.95) !important;
}

.site-footer a {
    color: #2E0066;
}

.site-footer a:hover {
    color: #5B21B6;
}

/* Footer-Text: kein text-shadow noetig (opaker Hintergrund) */
.site-footer,
.site-footer p,
.site-footer li,
.site-footer a,
.eih-footer,
.eih-footer p {
    text-shadow: none;
}

/* ── 10. HERO/COVER-BLOCK ── */
.wp-block-cover {
    border-radius: 8px;
    overflow: hidden;
}

/* ── 11. TABELLEN ── */
.wp-block-table table {
    border-collapse: collapse;
    width: 100%;
}

.wp-block-table td,
.wp-block-table th {
    padding: 10px 14px;
    border: 1px solid #D4A574;
}

.wp-block-table th {
    background: rgba(255, 255, 255, 0.15);
    font-weight: 700;
    color: #2E0066;
}

/* ── 12. BILDER ── */
.entry-content img {
    max-width: 100%;
    height: auto;
    border-radius: 6px;
}

/* ── 13. LISTEN ── */
.entry-content ul,
.entry-content ol {
    margin-bottom: 0.6em;
    padding-left: 1.5em;
}

.entry-content li {
    margin-bottom: 0.2em;
}

/* ── 14. COOKIE-BANNER FIX (GDPR Shield Plugin) ── */
.gdpr-shield-overlay,
.gdpr-shield-wrapper,
.gdpr-shield-container,
[class*="gdpr-shield"],
[class*="cookie-banner"],
[class*="cookie-consent"],
[id*="cookie-banner"],
[id*="cookie-consent"],
[id*="gdpr"] {
    position: fixed !important;
    bottom: 0 !important;
    top: auto !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-height: 200px !important;
    overflow-y: auto !important;
    transform: none !important;
    z-index: 99999 !important;
    background: rgba(255, 255, 255, 0.98) !important;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.15) !important;
    border-top: 2px solid #D4A574 !important;
    text-shadow: none;
}

/* Overlay-Hintergrund entfernen (kein Fullscreen-Dimmer) */
.gdpr-shield-overlay::before,
[class*="gdpr"]::before,
[class*="cookie"]::before {
    display: none !important;
}

/* ── 15. RESPONSIVE ── */

/* Tablet: Nav-Bar kleinere Schrift + Padding */
@media (max-width: 1200px) and (min-width: 1025px) {
    #eih-nav-bar .eih-nav-menu > li > a {
        padding: 10px 10px !important;
        font-size: 13px !important;
    }
}

/* ── RESPONSIVE: Unter 1024px - Mobile/Tablet Layout ── */
/* Hamburger-Menu ersetzt die horizontale Nav → siehe Abschnitt 18 */

@media (max-width: 1024px) {
    .site-container .site-inner,
    .content-area,
    .entry-content-wrap {
        padding: 18px 16px;
        border-radius: 0;
        margin: 0;
    }

    h1 { font-size: 1.7em; }
    h2 { font-size: 1.4em; }
    h3 { font-size: 1.2em; }

    body,
    p,
    li {
        font-size: 16px;
    }

    .site-title,
    .site-title a {
        font-size: 0.95em !important;
    }

    .site-header .site-branding img,
    .site-header .custom-logo,
    .header-logo img {
        max-height: 36px !important;
    }

    blockquote {
        padding: 0.8em 1em;
        margin: 1em 0;
    }
}

@media (max-width: 480px) {
    .site-container .site-inner,
    .content-area,
    .entry-content-wrap {
        padding: 14px 12px;
    }

    h1 { font-size: 1.5em; }
    h2 { font-size: 1.25em; }

    .wp-block-button__link,
    .kb-button {
        padding: 10px 20px;
        font-size: 0.9em;
    }

    /* Logo-Text auf kleinen Screens ggf. abschneiden */
    .site-title,
    .site-title a {
        font-size: 0.85em !important;
        max-width: 200px;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

/* ── 16. KADENCE-SPEZIFISCHE KORREKTUREN ── */

/* Header-Row: kein Padding-Overwrite */
.site-header .site-header-row-container-inner {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Kadence Separator Farbe anpassen */
hr,
.wp-block-separator {
    border-color: #D4A574;
    opacity: 0.6;
}

/* Kadence Spacer sichtbar lassen */
.wp-block-kadence-spacer .kt-divider {
    border-color: #D4A574;
}

/* ── 17. NAV-BAR SCROLLBAR (Mobile Horizontal-Scroll) ── */
.site-header .header-navigation::-webkit-scrollbar {
    height: 3px;
}

.site-header .header-navigation::-webkit-scrollbar-track {
    background: transparent;
}

.site-header .header-navigation::-webkit-scrollbar-thumb {
    background: rgba(46, 0, 102, 0.3);
    border-radius: 2px;
}

/* Firefox */
.site-header .header-navigation {
    scrollbar-width: thin;
    scrollbar-color: rgba(46, 0, 102, 0.3) transparent;
}

/* ── 18. MOBILE HAMBURGER-MENU ── */

/* Toggle-Button: auf Desktop versteckt */
#eih-mobile-toggle {
    display: none;
}

/* Close-Button: auf Desktop versteckt */
#eih-mobile-close {
    display: none;
}

@media (max-width: 1024px) {
    /* Nav-Bar auf Mobile/Tablet ausblenden (wird zum Overlay) */
    #eih-nav-bar {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        height: 100vh !important;
        background: #ffffff !important;
        z-index: 10000 !important;
        display: none !important;
        flex-direction: column !important;
        justify-content: flex-start !important;
        align-items: center !important;
        padding-top: 70px !important;
        overflow-y: auto !important;
    }

    /* Overlay sichtbar wenn offen */
    #eih-nav-bar.eih-mobile-open {
        display: flex !important;
    }

    /* Menu-Liste vertikal */
    #eih-nav-bar .eih-nav-menu {
        flex-direction: column !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        width: 100% !important;
        padding: 0 !important;
    }

    /* Nav-Links: volle Breite, zentriert, groesser */
    #eih-nav-bar .eih-nav-menu > li {
        width: 100% !important;
        text-align: center !important;
        border-bottom: 1px solid rgba(46, 0, 102, 0.15);
    }

    #eih-nav-bar .eih-nav-menu > li > a {
        color: #2E0066 !important;
        font-size: 18px !important;
        padding: 14px 20px !important;
        justify-content: center !important;
        background: transparent !important;
        display: block !important;
        width: 100% !important;
    }

    #eih-nav-bar .eih-nav-menu > li > a:hover {
        background: rgba(46, 0, 102, 0.08) !important;
        color: #2E0066 !important;
    }

    /* Aktive Seite im Mobile-Overlay */
    #eih-nav-bar .eih-nav-menu > li.current-menu-item > a,
    #eih-nav-bar .eih-nav-menu > li.current_page_item > a,
    #eih-nav-bar .eih-nav-menu > li.current-menu-ancestor > a {
        background: #2E0066 !important;
        color: #fff !important;
    }

    /* Sub-Menus auf Mobile anzeigen (eingerueckt) */
    #eih-nav-bar .eih-nav-menu > li > ul.sub-menu {
        display: block !important;
        position: static !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
    }

    #eih-nav-bar .eih-nav-menu .sub-menu > li > a {
        color: rgba(46, 0, 102, 0.75) !important;
        font-size: 15px !important;
        padding: 10px 20px !important;
        text-align: center !important;
    }

    #eih-nav-bar .eih-nav-menu .sub-menu > li > a:hover {
        color: #2E0066 !important;
        background: rgba(46, 0, 102, 0.08) !important;
    }

    /* Hamburger-Button sichtbar */
    #eih-mobile-toggle {
        display: flex !important;
        align-items: center;
        justify-content: center;
        position: fixed !important;
        top: 12px !important;
        right: 14px !important;
        z-index: 1001 !important;
        width: 38px !important;
        height: 38px !important;
        background: #E8D1A8 !important;
        color: #2E0066 !important;
        border: 1px solid rgba(46, 0, 102, 0.3) !important;
        border-radius: 6px !important;
        font-size: 22px !important;
        line-height: 1 !important;
        cursor: pointer !important;
        padding: 0 !important;
        font-family: Georgia, serif !important;
        text-shadow: none !important;
    }

    #eih-mobile-toggle:hover {
        background: #D4A574 !important;
    }

    /* Close-Button im Overlay */
    #eih-mobile-close {
        display: flex !important;
        align-items: center;
        justify-content: center;
        position: absolute !important;
        top: 14px !important;
        right: 14px !important;
        width: 40px !important;
        height: 40px !important;
        background: transparent !important;
        color: #2E0066 !important;
        border: 1px solid rgba(46, 0, 102, 0.3) !important;
        border-radius: 6px !important;
        font-size: 26px !important;
        line-height: 1 !important;
        cursor: pointer !important;
        padding: 0 !important;
        z-index: 10001 !important;
    }

    #eih-mobile-close:hover {
        background: rgba(46, 0, 102, 0.1) !important;
        color: #2E0066 !important;
    }

    /* Content braucht nur Header-Hoehe (keine Nav-Bar mehr sichtbar) */
    body,
    .site {
        margin-top: 65px !important;
    }
}

/* Print-Styles */
@media print {
    body {
        background: #fff !important;
        color: #000 !important;
        margin-right: 0 !important;
        margin-top: 0 !important;
    }
    .site-header,
    .site-footer,
    [class*="cookie"],
    [class*="gdpr"] {
        display: none !important;
    }
    .site,
    .site-footer {
        margin-right: 0 !important;
        margin-top: 0 !important;
    }
    .site-container .site-inner,
    .content-area,
    .entry-content-wrap {
        background: transparent;
        max-width: 100%;
    }
    /* Kein text-shadow im Druck */
    * {
        text-shadow: none !important;
    }
}

/* ── 19. ACCESSIBILITY ── */
html { scroll-behavior: smooth; }
::selection { background: #2E0066; color: #fff; }
:focus-visible { outline: 2px solid #D4A574; outline-offset: 2px; }

/* ── 20. LAYOUT-FIXES (19.03.2026, v2 Achilles) ── */

/*
 * PROBLEM-ANALYSE:
 * Kadence setzt .site-container { max-width: var(--global-content-width) } = 1290px
 * und .content-width-narrow .site-container { max-width: var(--global-content-narrow-width) } = 842px
 * #wrapper.site.wp-site-blocks ist der aeusserste Container.
 * Footer sitzt INNERHALB von #wrapper und erbt dessen Begrenzung.
 *
 * LOESUNG:
 * 1. #wrapper = 100% Breite (kein Limit)
 * 2. .site-container = zentriert mit margin: 0 auto
 * 3. Footer = Breakout aus Parent auf 100vw
 */

/* A) Aeusserster Wrapper: volle Breite, KEINE Begrenzung */
#wrapper,
#wrapper.site,
#wrapper.site.wp-site-blocks,
div#wrapper,
div#wrapper.site,
body #wrapper,
body .site {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow-x: hidden !important;
}

/* B) Site-Container: zentriert (Kadence setzt max-width via CSS-Variable) */
.site-container {
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
}

/* C) Content-Bereiche: zentriert, max 960px */
.site-container .site-inner,
.content-area,
.entry-content-wrap,
.content-wrap,
.site-main,
#primary {
    max-width: 960px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    width: 100% !important;
}

/* D) Footer: Breakout aus #wrapper auf volle Viewport-Breite */
.eih-footer {
    width: 100vw !important;
    max-width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    box-sizing: border-box !important;
}

.eih-footer .eih-footer-inner {
    max-width: 900px !important;
    margin: 0 auto 16px !important;
    width: 100% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
}

.eih-footer .eih-footer-bottom {
    max-width: 960px !important;
    margin: 0 auto !important;
}

.eih-footer-col--contact {
    text-align: center !important;
    padding-top: 12px !important;
}

/* E) Bilder auf Startseite gleich hoch */
.wp-block-columns .wp-block-image img {
    height: 400px !important;
    object-fit: cover !important;
    width: 100% !important;
}

/* F) Angebotskarten: Titel umbrechen erlauben, gleiche Höhe */
.wp-block-columns .wp-block-column h2,
.wp-block-columns .wp-block-column h3 {
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: auto !important;
    font-size: 1.2em !important;
    min-height: 2.8em;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* H) Mobile: Bilder auto-Hoehe */
@media (max-width: 1024px) {
    .wp-block-columns .wp-block-image img {
        height: auto !important;
        max-height: 350px !important;
    }
}

/* ── 20. MOBILE-FIXES (2026-03-20) ── */

/* --- Fix 1: Header Logo-Text mehrzeilig umbrechen statt abschneiden --- */
@media (max-width: 480px) {
    .site-title,
    .site-title a {
        white-space: normal !important;
        max-width: 100% !important;
        overflow: visible !important;
        text-overflow: unset !important;
        line-height: 1.3 !important;
    }
}

/* --- Fix 2: Service-Kacheln untereinander auf Mobile --- */
@media (max-width: 768px) {
    .wp-block-columns {
        flex-direction: column !important;
        flex-wrap: nowrap !important;
    }

    .wp-block-columns > .wp-block-column {
        flex-basis: 100% !important;
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

/* --- Fix 3: Angebotskarten-Titel lesbar auf Mobile --- */
@media (max-width: 768px) {
    .wp-block-columns .wp-block-column h2,
    .wp-block-columns .wp-block-column h3,
    .wp-block-column h2:has(+ p),
    .wp-block-column h3:has(+ p) {
        font-size: 1.3em !important;
    }
}

/* --- Fix 4: CTA-Buttons besserer Kontrast auf hellem Hintergrund --- */
.wp-block-button.eih-cta-lavendel .wp-block-button__link {
    background-color: #2E0066 !important;
    color: #fff !important;
    border: 2px solid #D4A574 !important;
}

.wp-block-button.eih-cta-lavendel .wp-block-button__link:hover {
    background-color: #5B21B6 !important;
    color: #fff !important;
    border-color: #5B21B6 !important;
}

/* Allgemeine Buttons: subtiler Schatten fuer bessere Sichtbarkeit */
.wp-block-button__link,
.kb-button,
.entry-content .wp-block-button__link {
    box-shadow: 0 2px 8px rgba(46, 0, 102, 0.25) !important;
}

/* --- Fix 5: Alpha-Synapsen Scheiben-Bilder groesser auf Mobile --- */
@media (max-width: 768px) {
    .wp-block-image img[src*="scheibe"],
    .wp-block-image img[src*="Scheibe"],
    .wp-block-image img[src*="alpha"],
    .wp-block-image img[src*="Alpha"],
    .wp-block-image .wp-image-alpha,
    /* Fallback: alle runden Bilder in Columns */
    .wp-block-columns .wp-block-image img {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
    }
}

/* --- Fix 6: Footer-Text groesser auf Mobile --- */
@media (max-width: 768px) {
    .site-footer,
    .site-footer p,
    .site-footer li,
    .site-footer a,
    .eih-footer,
    .eih-footer p,
    .eih-footer a {
        font-size: 14px !important;
    }
}

/* --- Fix 7: Spirit Coaching kompaktere Abstaende auf Mobile --- */
@media (max-width: 768px) {
    .entry-content > .wp-block-group,
    .entry-content > .wp-block-cover,
    .entry-content > .wp-block-columns,
    .entry-content > .wp-block-media-text,
    .entry-content > section,
    .entry-content > .alignfull,
    .entry-content > .alignwide {
        margin-top: 0.7rem !important;
        margin-bottom: 0.7rem !important;
    }

    .entry-content > .wp-block-group > .wp-block-group__inner-container,
    .entry-content .wp-block-cover__inner-container {
        padding-top: 1.5rem !important;
        padding-bottom: 1.5rem !important;
    }
}

/* ==========================================================================
   Startseiten-Zitat (.eih-segel-quote)
   ========================================================================== */

.eih-segel-quote {
    border: none !important;
    border-left: none !important;
    background: none !important;
    position: relative;
    max-width: 700px;
    margin: 1.2em auto 0.8em;
    padding: 2em 2.5em 2em 2.75em !important;
}

/* Großes „ oben links */
.eih-segel-quote::before {
    content: "\201E" !important;
    font-family: Georgia, serif !important;
    font-size: 7.5em !important;
    color: #2E0066 !important;
    opacity: 0.5 !important;
    position: absolute !important;
    top: -0.35em !important;
    left: -0.05em !important;
    line-height: 1 !important;
    pointer-events: none !important;
    z-index: -1 !important;
}

/* Keine Zierlinie unten */
.eih-segel-quote::after {
    content: none !important;
}

/* Text */
.eih-segel-quote p {
    font-family: Georgia, serif !important;
    font-style: italic !important;
    font-size: 1.5em !important;
    line-height: 1.4 !important;
    color: #3D1A6E !important;
    text-align: center;
    margin: 0;
}

/* Keine Pseudo-Element-Anführungszeichen am Text */
.eih-segel-quote p::before,
.eih-segel-quote p::after {
    content: none !important;
}

/* ==========================================================================
   Angebotskarten: Buttons auf gleicher Höhe (Flexbox)
   - wp:columns mit den 3 Angeboten (Spirit/ASP/Online)
   - Struktur: .wp-block-column > .wp-block-group > .wp-block-buttons
   ========================================================================== */

.wp-block-columns.alignwide > .wp-block-column {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.wp-block-columns.alignwide > .wp-block-column > .wp-block-group {
    display: flex;
    flex-direction: column;
    flex: 1;
    height: 100%;
    justify-content: space-between;
}

.wp-block-columns.alignwide > .wp-block-column > .wp-block-group > .wp-block-buttons {
    display: flex;
    margin-top: auto;
    padding-bottom: 2px;
    justify-content: center;
    text-align: center;
}

.wp-block-columns.alignwide .wp-block-buttons {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
}

.entry-content .wp-block-buttons {
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
}

/* Angebotskarten: Alle 3 Spalten gleich hoch */
.wp-block-columns.alignwide {
    align-items: stretch !important;
}

.wp-block-columns.alignwide > .wp-block-column {
    flex: 1 1 0% !important;
    min-height: 100%;
}

/* ==========================================================================
   WPForms Kontaktformular Styling
   Design-System: Georgia, #3D1A6E Text, #2E0066 Headlines, #D4A574 Gold
   ========================================================================== */

/* Labels */
.wpforms-container .wpforms-field-label,
.wpforms-container label {
    color: #2E0066 !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-weight: bold !important;
}

/* Input-Felder und Textarea */
.wpforms-container input[type="text"],
.wpforms-container input[type="email"],
.wpforms-container input[type="tel"],
.wpforms-container input[type="url"],
.wpforms-container input[type="number"],
.wpforms-container textarea,
.wpforms-container select {
    border-radius: 8px !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    color: #3D1A6E !important;
    border: 1px solid rgba(46, 0, 102, 0.15) !important;
    background-color: #fff !important;
    padding: 10px 14px !important;
    transition: border-color 0.3s ease !important;
}

/* Focus-State: Gold-Akzent */
.wpforms-container input[type="text"]:focus,
.wpforms-container input[type="email"]:focus,
.wpforms-container input[type="tel"]:focus,
.wpforms-container input[type="url"]:focus,
.wpforms-container input[type="number"]:focus,
.wpforms-container textarea:focus,
.wpforms-container select:focus {
    border-color: #D4A574 !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(212, 165, 116, 0.2) !important;
}

/* Placeholder */
.wpforms-container input::placeholder,
.wpforms-container textarea::placeholder {
    color: rgba(61, 26, 110, 0.5) !important;
    font-family: Georgia, 'Times New Roman', serif !important;
}

/* Submit-Button: Outline-Style passend zum Site-Design */
.wpforms-container .wpforms-submit,
.wpforms-container button[type="submit"] {
    background: transparent !important;
    color: #fff !important;
    border: 2px solid #fff !important;
    border-radius: 8px !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: 1rem !important;
    padding: 12px 32px !important;
    cursor: pointer !important;
    transition: background 0.3s ease !important;
    letter-spacing: 0.5px !important;
}

.wpforms-container .wpforms-submit:hover,
.wpforms-container button[type="submit"]:hover {
    background: rgba(255, 255, 255, 0.2) !important;
}

/* ==========================================================================
   Aufzählungspunkte: Logo als Bullet-Symbol
   Ersetzt Standard-Bullets durch das EiH-Logo
   ========================================================================== */

.entry-content ul:not(.eih-nav-menu) li,
.wp-block-list li {
    list-style: none !important;
    padding-left: 28px !important;
    position: relative !important;
}

.entry-content ul:not(.eih-nav-menu) li::before,
.wp-block-list li::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 4px !important;
    width: 18px !important;
    height: 18px !important;
    background: url('/wp-content/uploads/2026/02/header-logo.png') center/contain no-repeat !important;
}

/* ==========================================================================
   KONTAKTSEITE: Kachel, WPForms Fixes
   ========================================================================== */

/* WPForms: Abstand zwischen Feldern verringern */
div.wpforms-container-full .wpforms-form .wpforms-field {
    margin-bottom: 8px !important;
    padding: 0 !important;
}

/* Kachel um Kontaktdaten + Formular — backdrop-filter für Sichtbarkeit */
.page-id-12 .entry-content > .wp-block-group {
    background: rgba(255,255,255,0.25) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 16px rgba(46,0,102,0.06) !important;
}

/* WPForms: Logo-Bullets bei Checkboxen ausblenden
   Spezifität muss höher sein als .entry-content ul:not(.eih-nav-menu) li::before */
.entry-content .wpforms-field-checkbox ul li::before,
.entry-content ul.wpforms-field-required li::before,
.wpforms-container .wpforms-field-checkbox li::before {
    display: none !important;
    content: none !important;
    background: none !important;
    background-image: none !important;
    width: 0 !important;
    height: 0 !important;
}

.entry-content .wpforms-field-checkbox ul li,
.entry-content ul.wpforms-field-required li,
.wpforms-container .wpforms-field-checkbox li {
    list-style: none !important;
    padding-left: 0 !important;
}

/* Checkbox-Label: normales Gewicht (nicht fett) */
.wpforms-container .wpforms-field-checkbox label.wpforms-field-label-inline,
.entry-content .wpforms-field-checkbox .wpforms-field-label-inline {
    font-weight: 400 !important;
    font-style: normal !important;
}

/* Submit-Button: CSS-Variablen auf :root UND Container überschreiben */
:root {
    --wpforms-button-background-color: #2E0066;
    --wpforms-button-background-color-alt: #2E0066;
    --wpforms-button-border-color: #2E0066;
    --wpforms-button-text-color: #fff;
    --wpforms-button-border-radius: 8px;
    --wpforms-button-border-style: none;
}

div.wpforms-container-full {
    --wpforms-button-background-color: #2E0066;
    --wpforms-button-background-color-alt: #2E0066;
    --wpforms-button-border-color: #2E0066;
    --wpforms-button-text-color: #fff;
    --wpforms-button-border-radius: 8px;
    --wpforms-button-border-style: none;
}

/* Submit-Button: Direkte Styles als Fallback (höchste Spezifität) */
.page-id-12 div.wpforms-container-full .wpforms-form button[type=submit],
.page-id-12 div.wpforms-container-full .wpforms-form button.wpforms-submit,
div.wpforms-container-full .wpforms-form button[type=submit],
div.wpforms-container-full .wpforms-form button.wpforms-submit {
    background-color: #2E0066 !important;
    background: #2E0066 !important;
    color: #fff !important;
    border-radius: 8px !important;
    border: 2px solid #fff !important;
    font-weight: 600 !important;
    opacity: 1 !important;
    padding: 12px 28px !important;
}

.page-id-12 div.wpforms-container-full .wpforms-form button[type=submit]:hover,
.page-id-12 div.wpforms-container-full .wpforms-form button.wpforms-submit:hover,
div.wpforms-container-full .wpforms-form button[type=submit]:hover,
div.wpforms-container-full .wpforms-form button.wpforms-submit:hover {
    background-color: #8B5CF6 !important;
    background: #8B5CF6 !important;
}

/* ── IMPULSBUCH-SEITE (page-id-11) ── */

/* Bilder: abgerundete Ecken + subtiler Schatten */
.page-id-11 .wp-block-image img {
    border-radius: 12px !important;
    box-shadow: 0 4px 20px rgba(46,0,102,0.08) !important;
}

/* Stimmungstrenner: Fenster-Bild */
.eih-mood-image img {
    width: 100% !important;
    max-height: 300px !important;
    object-fit: cover !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 20px rgba(46,0,102,0.08) !important;
}

/* Notizbuch-Bild zentriert begrenzen */
.page-id-11 .aligncenter.size-large {
    max-width: 500px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Mobile: Spalten stapeln */
@media (max-width: 768px) {
    .page-id-11 .wp-block-columns {
        flex-direction: column !important;
    }
    .page-id-11 .wp-block-column {
        flex-basis: 100% !important;
    }
}

/* ============================================
   Über mich (page-id-7) — Freigestelltes Bild
   ============================================ */

/* Freigestelltes Branka-Bild */
.page-id-7 .branka-freigestellt {
    margin-top: -20px !important;
    max-width: 320px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.page-id-7 .branka-freigestellt img {
    border-radius: 0 !important;
    box-shadow: none !important;
    border: none !important;
    background: transparent !important;
}

/* Mobile: Spalten stapeln, Bild zentriert */
@media (max-width: 768px) {
    .page-id-7 .wp-block-columns {
        flex-direction: column !important;
    }
    .page-id-7 .wp-block-column {
        flex-basis: 100% !important;
    }
    .page-id-7 .branka-freigestellt {
        margin-top: 0 !important;
        max-width: 260px !important;
    }
}

/* ==========================================================================
   BLOCKQUOTE STYLING (global)
   Große Anführungszeichen „ oben und " unten
   ========================================================================== */

.entry-content .wp-block-quote {
    border: none !important;
    border-left: none !important;
    background: none !important;
    padding: 2em 2.5em 2em 2.75em !important;
    margin: 2.5em 0 !important;
    position: relative !important;
}

/* Öffnendes „ — oben links */
.entry-content .wp-block-quote::before {
    content: "\201E" !important;
    font-family: Georgia, serif !important;
    font-size: 7.5em !important;
    color: #2E0066 !important;
    opacity: 0.5 !important;
    position: absolute !important;
    top: -0.35em !important;
    left: -0.05em !important;
    line-height: 1 !important;
    pointer-events: none !important;
    z-index: -1 !important;
}

.entry-content .wp-block-quote p {
    font-family: Georgia, serif !important;
    font-size: 1.5em !important;
    line-height: 1.4 !important;
    color: #3D1A6E !important;
    font-style: italic !important;
}

.entry-content .wp-block-quote cite {
    display: block !important;
    margin-top: 0.75em !important;
    font-size: 0.85em !important;
    color: #2E0066 !important;
    font-style: normal !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
}

@media (max-width: 767px) {
    .entry-content .wp-block-quote {
        padding: 1.5em 2em !important;
    }
    .entry-content .wp-block-quote::before {
        font-size: 5em !important;
    }
}

/* ==========================================================================
   PREISKACHELN (Spirit Coaching + Alpha-Synapsen)
   ========================================================================== */
.eih-price-card {
    background: rgba(255, 255, 255, 0.35) !important;
    border: 1px solid rgba(212, 165, 116, 0.25) !important;
    border-radius: 12px !important;
    padding: 2em 1.5em !important;
    text-align: center !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.eih-price-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(46, 0, 102, 0.08);
}

.eih-price-featured {
    border-top: 3px solid #D4A574 !important;
    background: rgba(255, 255, 255, 0.45) !important;
}

.eih-price-label {
    display: block;
    font-family: Georgia, serif;
    font-size: 1.15em;
    color: #2E0066;
    font-weight: bold;
    margin-bottom: 0.5em;
}

.eih-price-duration {
    display: block;
    font-size: 0.9em;
    color: #7C6B99;
    margin-bottom: 0.75em;
}

.eih-price-amount {
    display: block;
    font-family: Georgia, serif;
    font-size: 1.6em;
    color: #D4A574;
    font-weight: bold;
}

/* ==========================================================================
   BLOG — Übersicht & Einzelbeitrag
   Stand: 2026-04-04
   Farben: Lila #2E0066/#3D1A6E, Gold #D4A574, transparent wie restliche Seite
   ========================================================================== */

/* ── Blog-Übersicht: Beitrags-Grid ── */
.blog .site-main,
.archive .site-main {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

/* 2-spaltiges Grid für Blog-Übersicht */
.blog .content-area .loop-entry-wrapper,
.blog .content-area .post-loop-wrap,
.archive .content-area .loop-entry-wrapper,
.archive .content-area .post-loop-wrap {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
}

/* Kadence Post-Loop als Card */
.blog .content-area .entry,
.archive .content-area .entry,
.post-loop-wrap .entry,
.kadence-blog-grid .entry {
    background: rgba(255, 255, 255, 0.35) !important;
    border: 1px solid rgba(212, 165, 116, 0.25);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(46, 0, 102, 0.06);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    margin-bottom: 0;
}

/* Kadence .loop-entry ebenfalls als Card (wenn Theme das nutzt) */
.blog .loop-entry,
.archive .loop-entry {
    background: rgba(255, 255, 255, 0.35) !important;
    border: 1px solid rgba(212, 165, 116, 0.25);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(46, 0, 102, 0.06);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.blog .content-area .entry:hover,
.archive .content-area .entry:hover,
.post-loop-wrap .entry:hover,
.kadence-blog-grid .entry:hover,
.blog .loop-entry:hover,
.archive .loop-entry:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 28px rgba(46, 0, 102, 0.12);
}

/* Hover: Titel wird Lila */
.blog .content-area .entry:hover .entry-title a,
.archive .content-area .entry:hover .entry-title a,
.blog .loop-entry:hover .entry-title a,
.archive .loop-entry:hover .entry-title a {
    color: #3D1A6E;
}

/* Beitragsbild oben in der Karte */
.blog .entry-thumbnail,
.archive .entry-thumbnail,
.post-loop-wrap .entry-thumbnail {
    margin: 0;
}

.blog .entry-thumbnail img,
.archive .entry-thumbnail img,
.post-loop-wrap .entry-thumbnail img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
    border-radius: 0;
}

/* Karten-Inhalt: Padding */
.blog .entry-content-wrap,
.archive .entry-content-wrap,
.post-loop-wrap .entry-content-wrap {
    padding: 1.4rem 1.6rem 1.6rem !important;
    background: transparent !important;
}

/* Beitragstitel in der Übersicht */
.blog .entry-title,
.archive .entry-title,
.post-loop-wrap .entry-title {
    font-family: Georgia, serif;
    font-size: 1.35em;
    color: #2E0066;
    margin-bottom: 0.4em;
    margin-top: 0.2em;
    line-height: 1.3;
}

.blog .entry-title a,
.archive .entry-title a,
.post-loop-wrap .entry-title a {
    color: #2E0066;
    text-decoration: none;
    transition: color 0.2s ease;
}

.blog .entry-title a:hover,
.archive .entry-title a:hover,
.post-loop-wrap .entry-title a:hover {
    color: #3D1A6E;
}

/* Auszug: max 3 Zeilen mit Ellipsis */
.blog .entry-summary,
.archive .entry-summary,
.post-loop-wrap .entry-summary,
.blog .entry-summary p,
.archive .entry-summary p,
.post-loop-wrap .entry-summary p {
    color: #3D1A6E;
    font-size: 0.95em;
    line-height: 1.7;
    margin-bottom: 1rem;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Weiterlesen-Link: Gold, kein Button */
.blog .read-more-link,
.archive .read-more-link,
.post-loop-wrap .read-more-link,
.blog .more-link,
.archive .more-link {
    display: inline-block;
    font-family: Georgia, serif;
    font-size: 0.9em;
    color: #D4A574;
    border-bottom: 1px solid rgba(212, 165, 116, 0.4);
    text-decoration: none;
    padding-bottom: 1px;
    background: none !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-radius: 0 !important;
    padding-top: 0;
    padding-left: 0;
    padding-right: 0;
    transition: color 0.2s ease, border-color 0.2s ease;
}

.blog .read-more-link:hover,
.archive .read-more-link:hover,
.post-loop-wrap .read-more-link:hover,
.blog .more-link:hover,
.archive .more-link:hover {
    color: #2E0066;
    border-bottom-color: #2E0066;
}

/* Metadaten: Datum, Kategorie */
.blog .entry-meta,
.archive .entry-meta,
.post-loop-wrap .entry-meta {
    font-size: 0.82em;
    color: #7C6B99;
    margin-bottom: 0.6rem;
}

.blog .entry-meta a,
.archive .entry-meta a,
.post-loop-wrap .entry-meta a {
    color: #7C6B99;
    text-decoration: none;
}

.blog .entry-meta a:hover,
.archive .entry-meta a:hover,
.post-loop-wrap .entry-meta a:hover {
    color: #D4A574;
}

/* Trennlinie zwischen Kategorien/Tags und Datum */
.entry-meta .sep {
    color: rgba(212, 165, 116, 0.5);
    margin: 0 0.3em;
}

/* Kategorie-Badge: Lavendel-Hintergrund */
.entry-meta .cat-links a {
    background: rgba(61, 26, 110, 0.10);
    border-radius: 4px;
    padding: 0.15em 0.5em;
    font-size: 0.88em;
    color: #2E0066 !important;
    letter-spacing: 0.02em;
}

/* ── Einzelbeitrag ── */
.single .site-main {
    max-width: 680px;
    margin: 0 auto;
    padding: 0 1.5rem;
}

/* Sidebar ausblenden auf Einzelbeiträgen */
.single .site-main + aside,
.single #secondary,
.single .widget-area,
.single .sidebar {
    display: none !important;
}
.single .has-sidebar .content-area,
.single .has-sidebar .site-main {
    width: 100% !important;
    max-width: 680px !important;
    float: none !important;
    margin: 0 auto !important;
}

/* Artikel-Wrapper */
.single .entry {
    background: rgba(255, 255, 255, 0.42) !important;
    border-radius: 12px;
    padding: 2.5rem 2.8rem;
    border: 1px solid rgba(212, 165, 116, 0.2);
}

/* Beitragsbild im Einzelbeitrag */
.single .entry-thumbnail {
    margin: -2.5rem -2.8rem 2rem;
}

.single .entry-thumbnail img {
    width: 100%;
    max-height: 400px;
    object-fit: cover;
    border-radius: 12px 12px 0 0;
    display: block;
}

/* Titel im Einzelbeitrag */
.single .entry-title {
    font-size: 2em;
    color: #2E0066;
    margin-bottom: 0.3em;
    line-height: 1.25;
}

/* Goldene Trennlinie nach Titel */
.single .entry-header::after {
    content: '';
    display: block;
    width: 60px;
    height: 2px;
    background: #D4A574;
    margin: 0.8em 0 1.2em;
    border-radius: 2px;
}

/* Content im Einzelbeitrag: 18px, Georgia, line-height 1.8 */
.single .entry-content {
    font-size: 18px;
    line-height: 1.8;
    color: #3D1A6E;
}

.single .entry-content p {
    margin-bottom: 1.5em;
}

/* H2 im Artikel: Lila, großzügiger Abstand oben */
.single .entry-content h2 {
    font-size: 24px;
    color: #3D1A6E;
    margin-top: 48px;
    margin-bottom: 0.5em;
    line-height: 1.3;
}

/* H3 im Artikel */
.single .entry-content h3 {
    font-size: 20px;
    color: #2E0066;
    margin-top: 36px;
    margin-bottom: 0.4em;
}

/* Blockquotes: goldener linker Rand, italic, etwas größer */
.single .entry-content blockquote:not(.eih-segel-quote) {
    border-left: 3px solid #D4A574;
    margin: 1.8em 0 1.8em 0.5em;
    padding: 0.8em 1.4em;
    font-style: italic;
    font-size: 22px;
    line-height: 1.6;
    color: #3D1A6E;
    background: rgba(212, 165, 116, 0.06);
    border-radius: 0 8px 8px 0;
}

.single .entry-content blockquote p {
    margin-bottom: 0.5em;
}

.single .entry-content blockquote p:last-child {
    margin-bottom: 0;
}

/* Links im Artikel: Gold, hover unterstrichen */
.single .entry-content a {
    color: #D4A574;
    text-decoration: none;
    border-bottom: 1px solid rgba(212, 165, 116, 0.3);
    transition: color 0.2s ease, border-color 0.2s ease;
}

.single .entry-content a:hover {
    color: #2E0066;
    border-bottom-color: #2E0066;
    text-decoration: none;
}

/* Listen im Artikel */
.single .entry-content ul,
.single .entry-content ol {
    margin-bottom: 1.5em;
    padding-left: 1.3em;
}

.single .entry-content li {
    margin-bottom: 0.4em;
}

/* Brankas Logo als Trenner zwischen Sektionen */
.single .entry-content hr {
    border: none;
    text-align: center;
    margin: 2.5em auto;
    height: auto;
    background: transparent;
}

.single .entry-content hr::after {
    content: '';
    display: inline-block;
    width: 40px;
    height: 40px;
    background-image: url('/wp-content/uploads/2026/02/header-logo.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0.35;
}

/* Tags am Ende */
.single .entry-footer {
    margin-top: 2rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(212, 165, 116, 0.25);
    font-size: 0.85em;
    color: #7C6B99;
}

.single .entry-footer a {
    color: #7C6B99;
    text-decoration: none;
}

.single .entry-footer a:hover {
    color: #D4A574;
}

/* ── Autorin-Box ── */
.single .author-box,
.single .post-author-box {
    background: rgba(255, 255, 255, 0.45);
    border: 1px solid rgba(212, 165, 116, 0.25);
    border-left: 3px solid #D4A574;
    border-radius: 10px;
    padding: 1.5rem 1.8rem;
    margin-top: 2.5rem;
    display: flex;
    gap: 1.4rem;
    align-items: flex-start;
}

.single .author-box-avatar img,
.single .post-author-box .author-avatar img {
    border-radius: 50%;
    width: 80px;
    height: 80px;
    object-fit: cover;
    border: 2px solid rgba(212, 165, 116, 0.4);
    flex-shrink: 0;
}

.single .author-box-text h4,
.single .post-author-box .author-name {
    font-family: Georgia, serif;
    font-size: 1.05em;
    color: #2E0066;
    margin: 0 0 0.15em;
    font-weight: 700;
}

/* Untertitel "Spirit Coach & Autorin" */
.single .author-box-text h4 + p::first-line,
.single .post-author-box .author-title {
    font-size: 0.85em;
    color: #7C6B99;
    font-style: italic;
}

.single .author-box-text p,
.single .post-author-box .author-description {
    font-size: 0.9em;
    color: #3D1A6E;
    margin: 0;
    line-height: 1.6;
}

/* ── Verwandte Artikel: "Das könnte dich auch berühren" ── */
.eih-related-posts {
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid rgba(212, 165, 116, 0.2);
}

.eih-related-posts h3,
.eih-related-posts .related-title {
    font-family: Georgia, serif;
    font-size: 1.3em;
    color: #2E0066;
    margin-bottom: 1.2rem;
    text-align: center;
}

.eih-related-posts .related-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.eih-related-posts .related-card {
    background: rgba(255, 255, 255, 0.32);
    border: 1px solid rgba(212, 165, 116, 0.2);
    border-radius: 10px;
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.eih-related-posts .related-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(46, 0, 102, 0.08);
}

.eih-related-posts .related-card img {
    width: 100%;
    height: 140px;
    object-fit: cover;
    display: block;
}

.eih-related-posts .related-card-body {
    padding: 0.9rem 1rem;
}

.eih-related-posts .related-card-body h4 {
    font-family: Georgia, serif;
    font-size: 0.95em;
    color: #2E0066;
    margin: 0 0 0.3em;
    line-height: 1.3;
}

.eih-related-posts .related-card-body h4 a {
    color: #2E0066;
    text-decoration: none;
}

.eih-related-posts .related-card-body h4 a:hover {
    color: #3D1A6E;
}

.eih-related-posts .related-card-body .related-excerpt {
    font-size: 0.82em;
    color: #3D1A6E;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* ── Pagination ── */
.blog .pagination,
.archive .pagination,
.navigation.pagination {
    text-align: center;
    margin: 2.5rem 0;
}

.blog .pagination .page-numbers,
.archive .pagination .page-numbers,
.navigation.pagination .page-numbers {
    display: inline-block;
    padding: 0.4em 0.9em;
    margin: 0 0.2em;
    border-radius: 6px;
    font-family: Georgia, serif;
    font-size: 0.95em;
    color: #2E0066;
    border: 1px solid rgba(212, 165, 116, 0.35);
    background: rgba(255, 255, 255, 0.30);
    text-decoration: none;
    transition: all 0.2s ease;
}

.blog .pagination .page-numbers:hover,
.archive .pagination .page-numbers:hover,
.navigation.pagination .page-numbers:hover,
.blog .pagination .page-numbers.current,
.archive .pagination .page-numbers.current,
.navigation.pagination .page-numbers.current {
    background: rgba(46, 0, 102, 0.12);
    border-color: #D4A574;
    color: #2E0066;
}

/* ── Responsive: Mobile (max 768px) ── */
@media (max-width: 768px) {

    /* Blog-Grid: 1-spaltig */
    .blog .content-area .loop-entry-wrapper,
    .blog .content-area .post-loop-wrap,
    .archive .content-area .loop-entry-wrapper,
    .archive .content-area .post-loop-wrap {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    /* Artikel: kompakteres Padding */
    .single .entry {
        padding: 1.5rem 1rem;
    }

    .single .entry-thumbnail {
        margin: -1.5rem -1rem 1.5rem;
    }

    .single .entry-title {
        font-size: 1.5em;
    }

    /* Artikel-Schrift: 17px, seitlich 16px Padding */
    .single .site-main {
        padding: 0 16px;
    }

    .single .entry-content {
        font-size: 17px;
    }

    .single .entry-content h2 {
        font-size: 21px;
        margin-top: 36px;
    }

    .single .entry-content blockquote {
        font-size: 19px;
        margin-left: 0;
        padding: 0.6em 1em;
    }

    /* Autorin-Box: Foto zentriert über Text */
    .single .author-box,
    .single .post-author-box {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 0.8rem;
        padding: 1.2rem 1rem;
    }

    /* Verwandte Artikel: gestapelt */
    .eih-related-posts .related-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .eih-related-posts .related-card img {
        height: 160px;
    }
}

/* ── BLOG-INTRO-BEREICH (/blog/) ── */
.eih-blog-intro {
    max-width: 680px;
    margin: 0 auto 2rem;
    padding: 2rem;
    background: rgba(255, 255, 255, 0.3);
    border-radius: 12px;
    text-align: center;
}

.eih-blog-intro__logo {
    display: block;
    width: 60px;
    height: 60px;
    object-fit: contain;
    margin: 0 auto 1.2rem;
}

.eih-blog-intro__headline {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(1.5rem, 3vw, 2rem);
    color: #3D1A6E;
    margin: 0 0 0.8rem;
    line-height: 1.3;
}

.eih-blog-intro__text {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 1rem;
    line-height: 1.7;
    color: #444;
    margin: 0;
}

@media (max-width: 600px) {
    .eih-blog-intro {
        padding: 1.4rem 1rem;
        margin-bottom: 1.5rem;
    }

    .eih-blog-intro__headline {
        font-size: 1.35rem;
    }
}
}

/* ==========================================================================
   FIX: Angebots-Kacheln — Überschriften umbrechen
   ========================================================================== */
.entry-content .wp-block-columns.alignwide > .wp-block-column > h3 {
    word-break: break-word;
    hyphens: auto;
    font-size: 1.3em !important;
    min-height: 2.6em;
}

/* ==========================================================================
   FIX: Preiskacheln — dezente Cards mit Hover
   ========================================================================== */
.entry-content .wp-block-columns.alignwide .wp-block-group[style*="border-radius:12px"] {
    background: rgba(255, 255, 255, 0.35) !important;
    border: 1px solid rgba(212, 165, 116, 0.3) !important;
    border-radius: 12px !important;
    box-shadow: 0 2px 12px rgba(46, 0, 102, 0.05);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.entry-content .wp-block-columns.alignwide .wp-block-group[style*="border-radius:12px"]:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(46, 0, 102, 0.1);
}

/* Preiskarten mit border-radius:8px (Gutenberg-Blocks "Deine Investition") */
.entry-content .wp-block-group[style*="border-radius:8px"] {
    background: rgba(255, 255, 255, 0.35) !important;
    border: 1px solid rgba(46, 0, 102, 0.15) !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 12px rgba(46, 0, 102, 0.05);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.entry-content .wp-block-group[style*="border-radius:8px"]:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(46, 0, 102, 0.1);
}

/* Abstände innerhalb der Preiskarten reduzieren */
.entry-content .wp-block-group[style*="border-radius:8px"] {
    padding: 6px 8px !important;
}
.entry-content .wp-block-group[style*="border-radius:8px"] p {
    margin-top: 0.15em !important;
    margin-bottom: 0.15em !important;
}

/* Feine Trennlinien zwischen den Zeilen */
.entry-content .wp-block-group[style*="border-radius:8px"] p:not(:last-child) {
    border-bottom: 1px solid rgba(46, 0, 102, 0.1);
    padding-bottom: 0.2em;
}

/* Hinweis: Preise (160 €, 135 € ...) haben bereits inline font-size:0.85em —
   keine Extra-Regel nötig. Frühere "p strong"-Regel entfernt, weil sie
   fälschlich den Kontakt-Strong "Energie in Harmonie" geschrumpft hat. */

/* ==========================================================================
   SCROLL-ANIMATIONEN — Sanftes Fade-in von unten
   Stand: 2026-04-05
   ========================================================================== */

.eih-animate {
    opacity: 0;
    transform: translateY(22px);
    transition: opacity 0.65s ease, transform 0.65s ease;
}

.eih-animate.eih-visible {
    opacity: 1;
    transform: translateY(0);
}

/* CTA-Block etwas langsamer */
.eih-cta-block.eih-animate {
    transition: opacity 0.8s ease, transform 0.8s ease;
}

/* Gestaffelte Verzögerung für Columns-Kinder */
.eih-animate .wp-block-column:nth-child(1) { transition-delay: 0s; }
.eih-animate .wp-block-column:nth-child(2) { transition-delay: 0.1s; }
.eih-animate .wp-block-column:nth-child(3) { transition-delay: 0.2s; }

/* Kein Flackern bei reduzierter Bewegung */
@media (prefers-reduced-motion: reduce) {
    .eih-animate {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

/* ── 4er-Columns als 2x2 Grid (z.B. Online-Coaching Kacheln) ── */
.wp-block-columns:has(.wp-block-column:nth-child(4)) {
    flex-wrap: wrap !important;
}
.wp-block-columns:has(.wp-block-column:nth-child(4)) > .wp-block-column {
    flex-basis: calc(50% - 1em) !important;
    flex-grow: 0 !important;
}

/* ==========================================================================
   MOBILE RESPONSIVE FIXES (max-width: 767px)
   ========================================================================== */
@media (max-width: 767px) {

    /* Mehr Seitenrand auf Mobile */
    .entry-content {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    /* Überschriften kleiner (Alpha-Synapsen etc.) */
    .entry-content h1.wp-block-heading {
        font-size: 1.8em !important;
    }

    /* 3er-Kacheln (Spirit/Alpha/Online): 1 Spalte statt 3 */
    .wp-block-columns.alignwide {
        flex-direction: column !important;
    }
    .wp-block-columns.alignwide > .wp-block-column {
        flex-basis: 100% !important;
        max-width: 100% !important;
    }

    /* AUSNAHME: Preiskacheln bleiben 2-spaltig */
    .wp-block-columns.alignwide:has(.wp-block-group[style*="border-radius"]) {
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }
    .wp-block-columns.alignwide:has(.wp-block-group[style*="border-radius"]) > .wp-block-column {
        flex-basis: calc(50% - 4px) !important;
        max-width: calc(50% - 4px) !important;
    }

    /* Stadtteil-Kacheln: 2 Spalten statt 3 */
    div[style*="grid-template-columns"] {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    /* Float-Bild (Siemersscher Hof): Kein Float auf Mobile */
    img[style*="float:right"] {
        float: none !important;
        display: block !important;
        margin: 16px auto !important;
        max-width: 80% !important;
    }

    /* Blockquote Anführungszeichen kleiner */
    .entry-content .wp-block-quote::before {
        font-size: 5em !important;
    }

    /* Mobile Hamburger-Menü: Weißer Hintergrund */
    .mobile-navigation-wrap,
    .mobile-toggle-open .mobile-navigation-wrap,
    #mobile-drawer,
    #mobile-drawer .drawer-inner {
        background: #fff !important;
    }

    /* Mobile Nav-Items: Keine goldenen Borders */
    #eih-nav-bar .eih-nav-menu > li > a,
    .mobile-navigation .menu-item a {
        border: none !important;
        border-bottom: 1px solid rgba(46,0,102,0.08) !important;
        border-radius: 0 !important;
    }

    /* Footer Adressblock zentrieren */
    .site-footer,
    .site-footer .footer-widget-area,
    .site-footer .widget,
    .site-footer .widget_text,
    .site-footer p {
        text-align: center !important;
    }

    /* Kontakt-Seite: Logo und Kontaktdaten zentrieren */
    .page-id-12 .wp-block-group[style*="border-radius"] .wp-block-column {
        text-align: center !important;
    }
    .page-id-12 .wp-block-group[style*="border-radius"] .wp-block-column img {
        display: block !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* ── 25. DESKTOP-NAV: FESTE CREME-FARBE (nicht transparent) ──
   Überschreibt Kadence "Transparent Header" und stellt sicher, dass
   Titelleiste + Nav-Bar auf Desktop immer warmes Creme haben,
   auch im gescrollten/sticky Zustand. NUR Desktop (>= 1025px). */
@media (min-width: 1025px) {
    /* Kadence Transparent-Header-Klassen + eigene Titelleiste */
    body.transparent-header #masthead,
    body.transparent-header .site-header,
    body .site-header.site-header-transparent,
    #masthead,
    .site-header,
    #masthead.item-is-fixed,
    .site-header.item-is-fixed,
    #masthead.site-header-sticky,
    .site-header-row-container.site-header-focus-item,
    .site-header-main-section-left-wrap,
    .site-header-main-section-center-wrap,
    .site-header-main-section-right-wrap {
        background: #F5D5A0 !important;
        background-color: #F5D5A0 !important;
    }

    /* Eigene Nav-Bar — nahtlos zum Body-Hintergrund */
    #eih-nav-bar {
        background: #F5D5A0 !important;
        background-color: #F5D5A0 !important;
    }
}
