.img-text{
  display: flex;
  align-items: center;
  gap: 24px;
}

/* Рамка під картинку: однакова для всіх */
.img-text__img{
  flex: 0 0 320px;                 /* стабільна ширина */
  height: 320px;                   /* стабільна висота (квадрат — універсально) */
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;

  /* щоб “порожні поля” виглядали нормально */
  background: #f3f3f3;
  border-radius: 8px;
}

/* Дефолт: НЕ ріже, зберігає весь контент */
.img-text__img img{
  width: 100%;
  height: 100%;
  object-fit: contain;             /* ключ: все видно */
  object-position: center;
  display: block;
}

/* Опціонально: якщо десь треба без полів (але буде кропати) */
.img-text__img.is-cover img{
  object-fit: cover;
}

/* текст */
.img-text__content{
  flex: 1 1 auto;
  min-width: 0;
}

@media (max-width: 768px){
  .img-text{
    flex-direction: column;
    align-items: flex-start;
  }

  /* текст ПЕРШИМ */
  .img-text__content{
    order: 1;
  }

  /* картинка ДРУГОЮ */
  .img-text__img{
    order: 2;
    width: 100%;
    flex-basis: auto;
    height: auto;
    aspect-ratio: 16 / 9;
  }
}