main {
  display: flex;
  align-items: center;
  flex-direction: column;
}

article {
  border: 1px solid;
}

.article-group {
  padding: 20px;
}

.article-title {
  margin-bottom: 5px;
}

.thumbnail {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

img {
  max-width: 100%;
}


@media (min-width: 640px) {


  article {
    display: grid;
    grid-template-columns: 3fr 2fr;
    grid-gap: 15px;
  }

  article:not(:has(img)) {
    grid-template-columns: 1fr;
  }

}