.icon-list {
    container-type: inline-size;
    --icon-list-gap: var(--pl-icon-list-gap, 1.5rem);
    --icon-list-icon-size: var(--pl-icon-list-icon-size, 1.75rem);
    /* Standard-Icon-Farbe = Textfarbe; per FlexForm (inline-style) auf eine
       Bootstrap-Farbe überschreibbar. .mask-svg (Atoms/Icon) wertet --bs-icon-color aus. */
    --bs-icon-color: currentColor;
}

.icon-list__title {
    margin: 0 0 1.25rem;
}

.icon-list__items {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: var(--icon-list-gap);
}

.icon-list__item {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
}

.icon-list__icon {
    flex: 0 0 auto;
    display: inline-flex;
    line-height: 0;
}

/* Atoms/Icon rendert <figure><div class="mask-svg">…; Größe via CSS-Variable */
.icon-list__icon figure {
    margin: 0;
}

.icon-list__icon .mask-svg {
    width: var(--icon-list-icon-size);
    height: var(--icon-list-icon-size);
}

.icon-list__body {
    min-width: 0;
}

.icon-list__item-title {
    margin: 0;
    font-weight: 600;
    line-height: 1.3;
}

.icon-list__item-text {
    margin: 0.15rem 0 0;
    line-height: 1.5;
}

/* Zweispaltig ab mittlerer Container-Breite */
@container (min-width: 34rem) {
    .icon-list__items {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
