/* KW Trust-Cards — 3-Karten-Grid (Icon + Titel + Text). Übernimmt die vormaligen inline-Styles. */
.kw-trust-grid {
    max-width: 1200px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    padding: 0 24px;
}
.kw-trust-card {
    background: #fff;
    border: 1px solid #e8e4dc;
    border-radius: 10px;
    padding: 36px 32px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    transition: transform 0.2s, box-shadow 0.2s;
}
.kw-trust-card:hover { transform: translateY(-2px); box-shadow: 0 6px 24px rgba(122,44,58,0.10); }
.kw-trust-card__icon {
    width: 64px;
    height: 64px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fdf6e8;
    border-radius: 50%;
    padding: 14px;
    flex-shrink: 0;
}
.kw-trust-card__icon img,
.kw-trust-card__icon svg { width: 100%; height: 100%; object-fit: contain; }
.kw-trust-card__title { font-size: 1.2rem; font-weight: 700; color: #1a1a1a; margin: 0 0 12px 0; line-height: 1.25; }
.kw-trust-card__text { font-size: 0.98rem; line-height: 1.55; color: #444; margin: 0; }
@media (max-width: 780px) {
    .kw-trust-grid { grid-template-columns: 1fr; gap: 16px; }
    .kw-trust-card { padding: 28px 24px; }
}

/* Optionales Bild neben dem Karten-Raster (#1362, tc_image).
   Mobile-First: Grundregel ist gestapelt (Bild oben, Karten darunter),
   ab min-width:768px steht das Bild links neben den Karten. */
.kw-trust-cards__layout--with-image {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.kw-trust-cards__layout--with-image .kw-trust-grid {
    padding: 0;
    max-width: none;
    grid-template-columns: 1fr;
}
.kw-trust-cards__image {
    flex-shrink: 0;
}
.kw-trust-cards__image img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    display: block;
}
@media (min-width: 768px) {
    .kw-trust-cards__layout--with-image {
        flex-direction: row;
        align-items: stretch;
    }
    .kw-trust-cards__image {
        width: 34%;
    }
    .kw-trust-cards__image img {
        height: 100%;
        object-fit: cover;
    }
    .kw-trust-cards__layout--with-image .kw-trust-grid {
        flex: 1;
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ===== #1512: Kern-Block-Rahmen (RAHMEN-Pfad, InnerBlocks) =====
   Karte ist jetzt core/group mit derselben Klasse kw-trust-card wie zuvor der
   Legacy-<div> -- Regeln oben gelten unveraendert. Delta nur fuer das, was
   die Kern-Bloecke zusaetzlich einbringen (figure-Icon-Wrapper, WP-Block-Gap). */
.kw-trust-card.is-layout-flow > *,
.kw-trust-card.is-layout-constrained > * {
    margin-block: 0;
}
/* .kw-trust-card__icon img/svg oben greift weiterhin -- core/image liefert
   das Icon in einem <figure>, der UA-/Kern-Rand muss zusaetzlich raus. */
.kw-trust-card__icon.wp-block-image,
figure.kw-trust-card__icon {
    margin: 0 auto 20px;
}

/* ===== Folge-Fix #1512 (Migrations-Fund, reports/issue-1512/migration-
   protokoll.md Abschnitt 4): ACF rendert das <InnerBlocks/> im Rahmen-Pfad
   serverseitig in einen zusaetzlichen Wrapper
   <div class="acf-innerblocks-container"> zwischen .kw-trust-grid und den
   Karten (render.php nutzt dieselbe Klasse kw-trust-grid sowohl im
   Standard-Layout als auch innerhalb von .kw-trust-cards__layout--with-image
   -- ein Selektor deckt beide Faelle ab). Keine bestehende Regel behandelte
   diesen Wrapper, das display:grid oben griff dadurch nicht mehr auf die
   Karten. Fix GESCOPED auf diesen Block (nicht global auf .acf-innerblocks-
   container -- der Wrapper existiert sitewide in jedem ACF-InnerBlocks-
   Block): display:contents macht den Wrapper layout-technisch unsichtbar,
   seine Kinder (die Karten) werden dadurch wieder direkte Grid-Kinder von
   .kw-trust-grid, gap/columns oben gelten unveraendert weiter. */
.kw-trust-grid > .acf-innerblocks-container {
    display: contents;
}
