To understand what may be going wrong without looking at your HTML code is quite challenging, but here's an example you can refer to and adjust the class names accordingly:
HTML
<div>
<div class="card row img-left">
<div class="column-1-2">
<img
src="https://upload.wikimedia.org/wikipedia/commons/thumb/b/b6/Image_created_with_a_mobile_phone.png/640px-Image_created_with_a_mobile_phone.png"
alt=""
/>
</div>
<div class="column-1-2">
<p>
Nulla quis lorem ut libero malesuada feugiat. Curabitur non nulla
sit amet nisl tempus convallis quis ac lectus. Nulla porttitor
accumsan tincidunt. Curabitur aliquet quam id dui posuere blandit.
Proin eget tortor risus.
</p>
</div>
</div>
<div class="card row img-right">
<div class="column-1-2">
<img
src="https://upload.wikimedia.org/wikipedia/commons/thumb/b/b6/Image_created_with_a_mobile_phone.png/640px-Image_created_with_a_mobile_phone.png"
alt=""
/>
</div>
<div class="column-1-2">
<p>
Nulla quis lorem ut libero malesuada feugiat. Curabitur non nulla
sit amet nisl tempus convallis quis ac lectus. Nulla porttitor
accumsan tincidunt. Curabitur aliquet quam id dui posuere blandit.
Proin eget tortor risus.
</p>
</div>
</div>
</div>
CSS
body {
background: #cccccc;
}
.row {
display: flex;
width: 100%;
align-items: row;
flex-wrap: wrap;
margin: 0;
padding: 0;
}
.column-1-2 {
width: 48%;
padding: 1%;
}
.card {
background: white;
box-sizing: border-box;
justify-content: space-between;
}
.card.img-right {
flex-direction: row-reverse;
}
.card p {
padding-left: 20px;
padding-right: 20px;
text-align: center;
}
.card img {
max-width: 100%;
}
@media (max-width: 480px) {
.row {
align-items: column;
}
.column-1-2 {
width: 98%;
padding: 1%;
}
}
Check out this sandbox for further reference
Please note that using an HTML framework could simplify this process significantly. UKGrid provides a precise example of this.