Не уверен, что это возможно? Попытка сделать так, чтобы горизонтальный класс карты не придерживался того же стиля, что родительский класс. Пожалуйста, смотрите ниже:
.-horizontal_image, .-horizontal_content {
color: red;
}
.parent [class*="col-"]:not([class*="card-horizontal_"]):first-child {
color: orange;
}
.parent [class*="col-"]:not([class*="card-horizontal_"]):last-child {
color: yellow;
}
<div class="parent">
<div class="col-4">
6789 should be orange
<a>
<div class="col-4 -horizontal_image">image red</div>
<div class="col-6 -horizontal_content">12345 red</div>
</a>
</div>
<div class="col-4">
more 12345 should be yellow
</div>
</div>