.photo-gallery {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
  align-items: start;
}

.photo-gallery img {
  display: block;
  width: 100%;
  height: auto;
}

@media (min-width: 866px) and (max-width: 1199px) {
  .photo-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 865px) {
  .photo-gallery { grid-template-columns: minmax(0, 1fr); gap: 20px; }
}

.project-wrapper .core-student-works > h2 {
  margin: 0 0 28px;
  font-size: 20px;
  line-height: 1.4;
  font-weight: normal;
}

@media (max-width: 865px) {
  .project-wrapper .core-student-works > h2 {
    font-size: 18px;
    margin-bottom: 20px;
  }
}
