.at-imageAndText {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 2rem;
    align-items: flex-start;
    margin-block-end: 1.5rem;
}

.at-imageAndText.--withBackground {
    padding: 1rem;
    background-color: #d4d6e4;
}

.at-imageAndText__image {
    width: 100%;
}

@media (min-width: 768px) {
    .at-imageAndText {
        flex-direction: row;
    }

    .at-imageAndText__image {
        flex: 0 0 30%;
        max-width: 30%;
    }

    .at-imageAndText:has(.at-imageAndText__image) .at-imageAndText__contentWrapper {
        flex: 0 0 calc(100% - 30% - 2rem);
        max-width: calc(100% - 30% - 2rem);
    }
}

