

img {
  max-width: 100%;
  vertical-align: top;
}

.gallery {
  display: flex;
  margin: 10px auto;
  max-width: 600px;
  position: relative;
  padding-top: 66.6666666667%;
}
@media screen and (min-width: 600px) {
  .gallery {
    padding-top: 400px;
  }
}
.gallery__img {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}
.gallery__selector {
  position: absolute;
  opacity: 0;
  visibility: hidden;
}
.gallery__selector:checked + .gallery__img {
  opacity: 1;
}
.gallery__selector:checked ~ .gallery__thumb > img {
  box-shadow: 0 0 0 2px #3378b0;
}





@media (min-width: 1280px) { 
.gallery__thumb {
  padding-top: 85px;
  margin: 35px;
  display: block;
  cursor: pointer;
}
}


@media (min-width: 1024px) and (max-width: 1279px) {
.gallery__thumb {
  padding-top: 25px;
  margin: 20px;
  display: block;
  cursor: pointer;
}
}



@media (min-width: 768px) and (max-width: 1023px) {
.gallery__thumb {
  padding-top: 0px;
  margin: 15px;
  display: block;
  cursor: pointer;
}
}


@media (max-width: 767px) { 
.gallery__thumb {
  padding-top: 90px;
  margin: 35px;
  display: block;

}
}


@media (min-width: 280px) and (max-width: 400px) { 
.gallery__thumb {
  padding-top: 70px;
  margin: 20px;
  display: block;

}
}





