.image-grid-main{
  padding:50px 0;
}
.image-grid-main h2{
  font-family: Cambon;
  font-size: 50px;
  font-style: normal;
  font-weight: 800;
  letter-spacing: normal;
  line-height: normal;
  padding: 0 50px 15px;
  position: relative;
  text-align:center;
  color:#000;
}
.image-grid-main h2:after {
  background: #000;
  bottom: 0;
  content: "";
  display: table;
  height: 1px;
  left: 0;
  right:0;
  margin:auto;
  position: absolute;
  width: 166px;
}
.image-grid-main p{
  max-width:708px;
  margin:20px auto 60px;
  font-family: Roboto;
  font-size: 24px;
  font-style: normal;
  font-weight: 400;
  letter-spacing: normal;
  line-height: normal;
  color:#000;
  text-align: center;
}
.grid--content .column--wrapper {
  display: column;
  columns: 5;
  gap: 20;
  break-inside: avoid;
}
.post--item {
  break-inside: avoid;
  margin-bottom: 20px;
  padding: 20px;
  text-align: center;
  border-radius: 20px;
}

.post--masonry {
  display: block;
  text-align: center;
  font-weight: bold;
  font-size: 30px;
  margin-top: 100px;
  margin-bottom: 30px;
}

.grid--content .column--wrapper .post--item img {
  -webkit-transition: 0.4s ease;
  transition: 0.4s ease;
}
.grid--content .column--wrapper .post--item:hover img{
  -webkit-transform: scale(1.04);
  transform: scale(1.04);
}

@supports (grid-template-rows: masonry) {
  .grid--content .column--wrapper {
    display: grid;
    grid-template-columns: repeat(4), 1fr);
    grid-template-rows: masonry;
    grid-auto-flow: dense;
    align-tracks: stretch;
  }
}

@media screen and (max-width: 768px) {
  .grid--content .post-user img {
    max-width: 20px;
    max-height: 20px;
  }

  .grid--content .post-user span {
    font-size: 11px;
  }

  .grid--content .post--title {
    font-size: 12px;
  }

  .grid--content .column--wrapper {
    columns: 3;
  }
}
a.imgn-grid-banner {
  background: #8dc056;
  border: 2px solid #8dc056;
  border-radius: 54px;
  color: #fff;
  display: inline-block;
  font-family: Roboto;
  font-size: 24px;
  font-weight: 700;
  line-height: normal;
  padding: 21px 42px;
  margin-top: 50px;
}
a.imgn-grid-banner:focus, a.imgn-grid-banner:hover{
  opacity: .9;
  text-decoration: none;
}

@media (max-width:1480px){
  .image-grid-main .page-center{
    padding:0 20px;
  }
}

@media (max-width:1024px){
  .image-grid-main h2{
    font-size:36px;
  }
  .image-grid-main p, a.imgn-grid-banner{
    font-size:21px;
  }
}
@media (max-width:767px){
  .image-grid-main h2{
    padding-left:0;
    padding-right:0;
  }
  a.imgn-grid-banner{
    padding: 21px 40px;
  }
} 