.mashup-post-icon-text-grid {
    display: grid;
}

.mashup-post-icon-text-item {
    display: flex;               /* già gestito da icon_position, ma qui è safe */
    align-items: flex-start;
    gap: 16px;                   /* valore di default, poi Elementor lo sovrascrive */
}

.mashup-post-icon-text-icon {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    box-sizing: border-box;
    flex: 0 0 auto;              /* non allargarti */
}

.mashup-post-icon-text-text {
    flex: 1 1 auto;              /* prenditi tutto lo spazio rimanente */
    min-width: 0;                /* evita overflow/testo che rompe il layout */
}