.article {
  display: grid;
  justify-items: start;
  gap: 16px;
  max-width: 760px;
}

.article > p {
  max-width: 66ch;
}

.article__lead {
  font-size: 20px;
}

.photo-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 16px;
}

.photo-grid li {
  display: grid;
  gap: 6px;
}

.photo-grid__link {
  display: block;
  overflow: hidden;
  border-radius: var(--radius-image);
}

.photo-grid__link img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.25s var(--ease-out);
}

.photo-grid__link:hover img {
  transform: scale(1.03);
}
