body {
    background: #F9F9F9;
  }
  
  p {
    position: absolute;
    bottom: 0;
    font-size: 14px;
  }
  
  .container {
    max-width: 1000px;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    grid-gap: 0px 30px;
    margin: 40px auto;
}
  
  .card {
    cursor: pointer;
    position: relative;
    height: 0;
    padding-bottom: 120%;
    --offset-multiplier: 4px;
    -webkit-transition: -webkit-transform 0.6s ease;
    transition: -webkit-transform 0.6s ease;
    transition: transform 0.6s ease;
    transition: transform 0.6s ease, -webkit-transform 0.6s ease;
    --translate: 0;
    -webkit-transform: translate(var(--translate), var(--translate));
            transform: translate(var(--translate), var(--translate));
  }
  .card:hover {
    --offset-multiplier: 6px;
  }
  .card:hover {
    --translate: calc(-1px * (var(--cards) - 1));
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  }
  
  .child {
    position: absolute;
    width: 100%;
    height: 50%;
    padding: 0 16px;
    box-sizing: border-box;
    background: #fff;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.3), 0px -4px 8px rgba(255, 255, 255, 0.8);
    border-radius: 6px;
    -webkit-transition: inherit;
    transition: inherit;
    --translate: calc(var(--offset) * var(--offset-multiplier));
    -webkit-transform: translate(var(--translate), var(--translate));
            transform: translate(var(--translate), var(--translate));
    z-index: 5;
  }
  .child:nth-child(1) {
    --offset: 0;
    z-index: 4;
  }
  .child:nth-child(2) {
    --offset: 1;
    z-index: 3;
  }
  .child:nth-child(3) {
    --offset: 2;
    z-index: 2;
  }
  .child:nth-child(4) {
    --offset: 3;
    z-index: 1;
  }
  .child:nth-child(5) {
    --offset: 4;
    z-index: 0;
  }