/* Gesamter Bereich */
.book-hero {
    position: relative;
    padding: 6rem 1.5rem 5rem;      /* Höhe nach oben/unten, Werte anpassen */
    background-image: url("/assets/images/site-header.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: visible;              /* oder Zeile ganz weglassen */
}

/* Zentrierter, begrenzter Inhalt */
.book-hero__inner {
    max-width: 1120px;
    margin: 0 auto;
    margin-left: 800px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.0rem;
}

.book-hero__text {
    position: relative;
    z-index: 1;
    flex: 1 1 0;
    max-width: 520px;
     padding: 24px 28px;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.book-hero__text::before {
    content: "";
    position: absolute;
    top: -20px;
    left: -2rem;        /* weiter links greifen – einstellbar */
    right: -2rem;       /* optional nach rechts erweitern */
    bottom: -25px;
    background: rgb(238, 248, 246);   /* Abdunklung – Wert nach Geschmack */
    backdrop-filter: brightness(0.8); /* optional stärkere Abdunklung */
    border-radius: 44px;             /* optional weiche Kante */
    border: 7.5px solid #8bcfb9; /* RAHMEN */
    z-index: -1;
}

.book-hero__text h1 {
    font-size: 1.9rem;
    line-height: 1.2;
    margin: 0 0 0.75rem;
    font-weight: 200;
}

.book-hero__subtitle {
    font-size: 1.1rem;
    margin: 0 0 1.25rem;
    opacity: 0.9;
}

.book-hero__teaser {
    font-size: 1.2rem;
    line-height: 1.6;
    margin: 0 0 1.75rem;
    max-width: 38rem; /* nicht zu breit für Lesbarkeit */
}
.book-hero__text h1,
.book-hero__text .book-hero__subtitle,
.book-hero__text .book-hero__teaser {
    color: #0f172a !important;
}
/* CTA-Button */
.book-hero__cta {
    display: inline-block;
    padding: 0.8rem 1.6rem;
    border-radius: 999px;
    background: #0f766e;
    color: #ffffff;
    font-size: 0.95rem;
    font-weight: 500;
    text-decoration: none;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.18);
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.book-hero__cta:hover {
    background: #115e59;
    transform: translateY(-1px);
    box-shadow: 0 14px 32px rgba(0, 0, 0, 0.2);
}

/* Desktop-Bildspalte */
.book-hero__image {
    flex: 0 0 320px;
    display: flex;
    justify-content: center;
}

.book-hero__image img {
    width: 100%;
    max-width: 340px;
    height: auto;
    display: block;
    border-radius: 10px;
    box-shadow:
        0 18px 45px rgba(0, 0, 0, 0.35),
        0 0 0 1px rgba(15, 23, 42, 0.05);
    transform: translateY(0);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.book-hero__image img:hover {
    transform: translateY(-4px);
    box-shadow:
        0 22px 55px rgba(0, 0, 0, 0.4),
        0 0 0 1px rgba(15, 23, 42, 0.05);
}

/* Mobiles Buchbild standardmäßig verstecken */
.book-hero__mobile-image {
     display: none;
}

/* Responsive: unter ~900px umschalten */
@media (max-width: 900px) {
    .book-hero {
        padding: 3rem 1.25rem;
    }

    .book-hero__inner {
        flex-direction: column;
        text-align: center;
        gap: 0; /* Abstand kommt über das Bild */
    }

    .book-hero__text {
        max-width: 100%;
    }

    .book-hero__text h1 {
        font-size: 2rem;
    }

    .book-hero__subtitle {
        font-size: 1rem;
    }

    .book-hero__teaser {
        margin: 0 0 1.5rem;
        max-width: 32rem;
        margin-left: auto;
        margin-right: auto;
    }

    /* Desktop-Buch ausblenden */
    .book-hero__image {
        display: none;
    }

    /* Mobiles Cover oben auf den Streifen anzeigen */
    .book-hero__mobile-image {
        display: block;
         padding-top: 1rem;
    text-align: center;
    }

    .book-hero__mobile-image img {
       width: 50%;
    max-width: 300px;
    height: auto;
    margin: 20px auto;
    }
}

/* Noch kleinere Screens */
@media (max-width: 600px) {
    .book-hero {
        padding: 2.5rem 1rem;
    }

    .book-hero__text h1 {
        font-size: 1.6rem;
    }
}

/* Logo im Buch kleiner machen */
.custom-book .tm_pb_text img {
    max-width: 100px !important; /* gewünschte Größe */
    height: auto !important;
    display: block;
    margin: 0 auto;
}

/* Hero-Texte links weiß */
.book-hero__subtitle,
.book-hero__teaser,
.book-hero__text p {
    color: #ffffff !important;
}

/* Button-Text weiß */
.book-hero__cta {
    color: #ffffff !important;
}

/* ==== News / JetTestimonials: Bild sauber einpassen ==== */

/* Container soll genau der Bildhöhe folgen, kein grauer Rand */
.jet-testimonials__figure {
    margin: 0;
    border-radius: 10px;
    overflow: hidden;
    background: transparent;
    height: auto !important;
}

/* Bild skaliert vollständig mit, ohne abgeschnitten zu werden */
.jet-testimonials__tag-img {
    width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
}

/* ==== News: Karten-Layout für JetTestimonials wieder aktivieren ==== */

/* Weiße Karte mit Schatten und Rundung */
/* Standard: Desktop */
.jet-testimonials__content {
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 10px 35px rgba(15, 23, 42, 0.08);
    padding: 24px 28px 26px;
    margin: 24px auto;
    width: 780px;          /* feste Breite Desktop */
    max-width: 100%;       /* falls Container schmaler ist */
}

/* Bild oben leicht absetzen und zentrieren */
.jet-testimonials__figure {
    margin: 0 auto 16px;
    border-radius: 14px;
    overflow: hidden;
}

/* Icon-Zitat dezent lassen (falls vorhanden) */
.jet-testimonials__icon {
    opacity: 0.25;
    font-size: 52px;
}

/* Mobile: volle Breite, aber gleiche Optik */
/* Tablet & Mobile: volle Breite nutzen */
@media (max-width: 1023px) {
    .jet-testimonials__content {
        width: 100%;       /* nicht mehr 780px erzwingen */
        max-width: 100%;
        border-radius: 14px;
        padding: 18px 16px 20px;
        margin: 16px auto;
    }
}

/* ==== News: Hover-Effekte für Karten, Bild und Zitat ==== */

/* Karte reagiert auf Hover */
.jet-testimonials__content {
    position: relative;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.jet-testimonials__content:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.12);
}

/* Zitatzeichen links leicht einrücken beim Hover */
.jet-testimonials__icon {
    position: absolute;
    left: 24px;
    top: 24px;
    opacity: 0.25;
    font-size: 52px;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.jet-testimonials__content:hover .jet-testimonials__icon {
    transform: translateX(6px);
    opacity: 0.4;
}

/* Bild leicht zoomen beim Hover */
.jet-testimonials__figure {
    overflow: hidden;
}

.jet-testimonials__tag-img {
    transition: transform 0.2s ease;
}

.jet-testimonials__content:hover .jet-testimonials__tag-img {
    transform: scale(1.03);
}

/* --- Bildgröße in JetTestimonials wirklich begrenzen --- */

/* 1) Plugin-Vorgaben knacken */
.jet-testimonials__tag-img {
    width: auto !important;        /* nicht mehr volle Kartenbreite */
    height: auto !important;
    max-width: none !important;    /* evtl. vorhandenes 100% entfernen */
    max-height: none !important;
}

/* 2) Eigene Wunschgröße setzen */
.jet-testimonials__content .jet-testimonials__figure {
    display: flex;
    justify-content: center;
    align-items: center;
}

.jet-testimonials__content .jet-testimonials__tag-img {
    max-width: 220px !important;   /* HIER anpassen: z.B. 200 / 240 */
    max-height: 400px !important;  /* maximale Höhe */
    object-fit: contain;
    display: block;
    margin: 0 auto;
}

/* =========================
   Ilka-Walljes-Sektion
   ========================= */

.elementor-element-c0e41ec .elementor-image-box-content {
    max-width: 540px;
}

.about-highlights {
    margin: 1.5rem 0;
    padding: 1.25rem 1.5rem;
    background: #f3f4f6;
    border-radius: 16px;
}

.about-highlights__label {
    margin: 0 0 0.75rem;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #6b7280;
}

.about-highlights__list {
    margin: 0;
    padding-left: 1.25rem;
    font-size: 0.95rem;
    line-height: 1.6;
}

/* Publikationsprofil-Button */
.about-link {
    display: inline-block;
    margin-top: 1.5rem;
    padding: 0.6rem 1.2rem;
    border-radius: 999px;
    background: #0f766e;
    color: #ffffff !important;
    font-size: 0.9rem;
    text-decoration: none;
}

.about-link:hover {
    background: #115e59;
    color: #ffffff !important;
}

/* Alternative: komplett rund */
.elementor-element-28e9a82 .elementor-image img {
    border-radius: 999px;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.18);
}

/* Textspalte bei Ilka etwas begrenzen */
.elementor-element-c0e41ec .elementor-image-box-content {
    max-width: 700px;
}

/* Highlights: schmale Akzent-Spalte statt großer Card */
.about-highlights {
    margin: 1.5rem 0 1.75rem;
    padding: 0.4rem 0.5rem 0.4rem 1.4rem;
    border-left: 3px solid #0f766e;
    background: transparent;
}

.about-highlights__label {
    margin: 0 0 0.35rem;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: #6b7280;
}

.about-highlights__list {
    margin: 0;
    padding-left: 1rem;
    line-height: 1.6;
    font-size: 0.95rem;
}

/* Absatzabstände insgesamt etwas ordnen */
.elementor-element-c0e41ec .elementor-image-box-description {
    margin-bottom: 0.9rem;
}

/* Portrait-Spalte: vertikal mittig zum Text ausrichten */
.elementor-element-10409a0 .elementor-column-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 100px;   /* HIER steuern */
}

/* Container = Hintergrund */
.elementor-element-28e9a82 .elementor-image {
    background-color: #8bcfb9;   /* grün */
    border-radius: 999px;
    padding: 8px;
    display: inline-block;
    margin-left: 180px;          /* HIER statt am Bild */
}

/* Bild */
.elementor-element-28e9a82 .elementor-image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 999px;
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.18);
    margin: 0;                   /* GANZ wichtig */
}

/* Ilka-Sektion: Mobile fix */
@media (max-width: 768px) {

    .elementor-element-c0e41ec,
    .elementor-element-10409a0 {
        width: 100% !important;
        padding-left: 0 !important;
    }

    .elementor-element-10409a0 .elementor-column-wrap {
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .elementor-element-28e9a82 .elementor-image img {
        max-width: 260px;
        margin: 0 auto;
    }
}

/* Testimonials Typo */
.jet-testimonials__comment span {
    font-size: 15px;
    line-height: 1.8;
    color: #4b5563;
}

.jet-testimonials__name span {
    display: block;
    margin-top: 22px;
    font-size: 15px;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0.03em;
    color: #111827;
}

.jet-testimonials__date span {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    color: #9ca3af;
    text-align: center;
}

/* Rezensionen (reviews.php) */
.reviews-testimonials .jet-testimonials__content {
    position: relative;
    background: #ffffff;
    border-radius: 22px;
    box-shadow: 0 18px 50px rgba(15, 23, 42, 0.08);
    padding: 24px 80px 26px 40px;
    margin: 26px auto;
    max-width: 840px;
    border-left: 3px solid #0f766e;
}

.reviews-testimonials .jet-testimonials__icon {
    position: absolute;
    left: auto;
    right: 26px;
    top: 22px;
    bottom: auto;
    display: block;
    margin: 0;
    padding: 0;
    width: auto;
    height: auto;
    font-size: 28px;
    color: rgba(148, 163, 184, 0.7);
}

.reviews-testimonials .jet-testimonials__icon-inner,
.reviews-testimonials .jet-testimonials__icon-inner i {
    background: transparent;
    margin: 0;
    padding: 0;
}

.reviews-testimonials .jet-testimonials__comment span {
    font-size: 15px;
    line-height: 1.9;
    letter-spacing: 0.01em;
    color: #374151;
    font-style: italic;
}

.reviews-testimonials .jet-testimonials__name span {
    display: block;
    margin-top: 22px;
    font-size: 15px;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0.04em;
    text-transform: none;
    color: #111827;
}

.reviews-testimonials .jet-testimonials__date span {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    color: #9ca3af;
    text-align: center;
    opacity: 0.85;
}

/* Mobile Feinschliff Rezensionen */
@media (max-width: 768px) {
    .reviews-testimonials .jet-testimonials__content {
        padding: 22px 18px 24px;
        border-radius: 20px;
        margin: 18px auto;
        max-width: 100%;
    }

    .reviews-testimonials .jet-testimonials__comment span {
        font-size: 15px;
        line-height: 1.7;
    }
}
@media (max-width: 767px) {

    /* Gesamte News-Card links ausrichten */
    .jet-testimonials__content {
        text-align: left;
        margin-left: 0;
        margin-right: auto;
    }

    /* Überschrift */
    .jet-testimonials__title {
        text-align: left;
    }

    /* Text */
    .jet-testimonials__text {
        text-align: left;
    }

    /* Bild links statt zentriert */
    .jet-testimonials__figure {
        margin-left: 0;
        margin-right: auto;
    }
}

.elementor-element-28e9a82 .elementor-image{
  margin-left: 0 !important;
}
/* Überschriften leicht optimieren */
h1, h2, h3, h4 {
    letter-spacing: 0.02em;
}
h2, h3 {
    font-weight: 600;
}
@media (max-width: 767px) {
  .book-hero__text {
    max-width: 100%;
    padding: 20px 18px;      /* Luft zum Rand */
  }

  .book-hero__text::before {
    left: 0;
    right: 0;
    top: -12px;
    bottom: -12px;
    border-radius: 22px;
  }
}
@media (max-width: 767px) {
    .book-hero__inner {
        margin-left: 0;
    }
}
@media (max-width: 767px) {

  /* Bild-Widget selbst zentrieren */
  .elementor-element-28e9a82 .elementor-image {
    margin: 0 auto !important;
    display: block !important;
    text-align: center !important;
    width: fit-content;
  }

  /* Sicherheitsnetz: falls noch Offsets am img hängen */
  .elementor-element-28e9a82 .elementor-image img {
    margin: 0 auto !important;
    display: block !important;
    transform: none !important;
  }
}
