/* Color presets */
:root {
  --color-red: #fff;
  --color-darckgrey: #212121;
  --color-lightgrey: #E0E0E0;
  --color-black: #000000;
  --color-white: #FF5051;
}

.wrapper {
  padding: 30px 10%;
  transition: ease .2s;
}

/* Grid */
/* .grid {
  max-width: 1200px;
  margin: 0 auto;
} */

/* Clearfix */
.grid:after {
  content: '';
  display: block;
  clear: both;
}

/* Grid items */
.item {

  position: relative;
  width: 86%;
  margin: 20px 3.5%;
  margin-bottom: 80px;
  background: var(--color-red);
  cursor: pointer;
  /* Animation */
  animation-name: append-item;
  animation-duration: 0.6s;
  animation-iteration-count: 1;
  animation-direction: alternate;
  animation-timing-function: cubic-bezier(.42,.97,.52,1.49);
}




@keyframes append-item {
  0%  {
    -webkit-transform: translateY(250px);
    -ms-transform: translateY(250px);
    -o-transform: translateY(250px);
    transform: translateY(250px);
  }
  100%  {
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -o-transform: translateY(0px);
    transform: translateY(0px);
  }
}

.item img {
  display: block;
  width: 100%;
  max-width: 100%;
}

.item-mid {
  width: 59%;
  margin:0 auto;
  margin-bottom: 2em;
  margin-top: 1em;
}

.item-big {
  width: 92%;
}

@media screen and (max-width: 768px){
  .item,
  .item-mid {
    width: 90%;
    /* margin: 15px 2.5%; */
  }

  .item-big {
    width: 95%;
  }
}

@media screen and (max-width: 520px){
  .item,
  .item-mid,
  .item-big {
    width: 100%;
    margin: 15px 0%;
  }

  .item.special:hover .img-item {
    transform: translate(-2em, -5em);
  }
  
}

/* Items */
.img-item {
  position: relative;
  transform: translate(1, 1);
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  box-shadow: 0px 0px 0px rgba(0,0,0,0), 0 0px 0px rgba(0,0,0,0);
  transition: ease .5s;
  will-change: transform, box-shadow;
}

.item:hover .img-item {
  transform: translate(-2em, -2em);
  /* transform: translate(-2em, -3em); */
  -webkit-filter: grayscale(0);
  filter: grayscale(0);
  box-shadow: 4px 10px 20px rgba(0,0,0,0.15), 0 6px 6px rgba(0,0,0,0.20);
  z-index: 1;
}
.item.special:hover .img-item {
  transform: translate(-2em, -3.8em);
}
/* .item.mobile:hover .img-item {
  transform: translate(-2em, -4em);
} */

.thumb-title {
  position: absolute;
  bottom: 0;
  padding: .5em 1em;
  color: #000;
  font-size: .8em;
  letter-spacing: .1em;
}



/* Lightbox */
.sandbox {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #000000;
  z-index: 100;
}

.lightbox {
  position: fixed;
  width: 94%;
  height: 94%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background: black;
  background-size: contain;
  cursor: crosshair
}