/* Block „Bild + Text". Stacks in a container of 600px or less (the viewport's
   640px at the top level) — in a narrow column too. */
.block-image-text { display:grid; grid-template-columns:1fr 1fr; gap:var(--size-6); align-items:center; }
.block-image-text.no-image { grid-template-columns:1fr; }
.block-image-text .it-body :is(h1, h2) { margin-top:0; }
.block-image-text .it-figure { margin:0; }
.block-image-text .it-caption { margin-top:.35rem; font-size:.85rem; color:var(--muted); }
/* «Bild rechts»: the image moves visually only — the markup keeps it first, the
   same order the stacked layout shows. */
.block-image-text.it--image-right > :first-child { order:2; }

/* Check list, button and partner logo under the text. */
.block-image-text .it-points { list-style:none; margin:var(--size-4) 0 0; padding:0; display:grid; gap:var(--size-2); }
.block-image-text .it-points li { display:flex; gap:var(--size-3); align-items:flex-start; }
.block-image-text .it-point-icon { flex:none; width:22px; height:22px; margin-top:2px; color:var(--accent-fg); stroke-width:2.4; }
.block-image-text .it-action { margin:var(--size-5) 0 0; }
.block-image-text .it-logo { display:inline-block; margin-top:var(--size-5); }
.block-image-text .it-logo img { display:block; width:15rem; max-width:100%; height:auto; }

@container (max-width:600px) {
    .block-image-text { grid-template-columns:1fr; }
    .block-image-text.it--image-right > :first-child { order:0; }
}
