.documents {
  grid-column: span 4;

  aspect-ratio: 2/1;
  border: 0.1rem solid #0000000a;

  background: linear-gradient(0deg, rgba(0, 0, 0, 0.04), rgba(0, 0, 0, 0.04)),
    linear-gradient(0deg, #f8f7f9, #f8f7f9);
  box-shadow: 0px 0.4rem 0.8rem 0px #0000000a;
  border-radius: 3.2rem;
  position: relative;
}

.documents > .logo {
  position: absolute;
  top: 6rem;
  left: 3rem;
  transform-origin: center center;
  width: 16rem;
  z-index: 2;

  display: grid;
  gap: 0.8rem;

  will-change: opacity;
  transition: opacity 0.3s ease-out 0.3s;
}

.documents:hover > .logo {
  transition: opacity 0.3s ease-in;
  opacity: 0;
}

.documents > .logo > img {
  filter: drop-shadow(rgba(15, 15, 18, 0.25) 0px 20px 17px);
  width: 100%;
}

.documents > .logo > h6 {
  font-family: "Lufga", sans-serif;
  font-weight: 700;
  font-size: 2.7rem;
  line-height: 122%;
  letter-spacing: -1.5%;
  text-align: center;
}

.documents > .docs {
  position: absolute;
  z-index: 2;
  bottom: 0;
  left: 0;
  top: 0;
  right: 0;
  overflow: hidden;

  will-change: top;
  transition: top 0.5s ease-in-out;
}

.documents:hover > .docs {
  top: -7.5rem;
}

.documents > .docs > img {
  box-shadow: rgba(41, 17, 0, 0.1) 0px 0.78363px 0.626904px -0.285714px,
    rgba(41, 17, 0, 0.1) 0px 1.91965px 1.53572px -0.571429px,
    rgba(41, 17, 0, 0.106) 0px 3.63745px 2.90996px -0.857143px,
    rgba(41, 17, 0, 0.11) 0px 6.35004px 5.08004px -1.14286px,
    rgba(41, 17, 0, 0.114) 0px 11.0519px 8.8415px -1.42857px,
    rgba(41, 17, 0, 0.125) 0px 20.2428px 16.1942px -1.71429px,
    rgba(41, 17, 0, 0.15) 0px 40px 32px -2px;
  border-radius: 1.6rem;
  transform-origin: center center;
  width: var(--width);
  top: var(--top);
  right: var(--right);
  transform: rotate(var(--rotate));
  position: absolute;

  will-change: width, top, right, transform;
  transition: width 0.3s ease-in-out, top 0.3s ease-in-out,
    right 0.3s ease-in-out, transform 0.3s ease-in-out;
}

.documents > .docs > img:nth-child(1) {
  --top: 7rem;
  --right: 9rem;
  --rotate: 0deg;
  --width: 27.6rem;
}

.documents:hover > .docs > img:nth-child(1) {
  --top: 7rem;
  --right: 11.3rem;
  --rotate: 30deg;
  --width: 31.4rem;
}

.documents > .docs > img:nth-child(2) {
  --top: 9rem;
  --right: 12rem;
  --rotate: 0deg;
  --width: 27.6rem;
}

.documents:hover > .docs > img:nth-child(2) {
  --top: 4rem;
  --right: 14.3rem;
  --rotate: 15deg;
  --width: 35.9rem;
}

.documents > .docs > img:nth-child(3) {
  --top: 11rem;
  --right: 15rem;
  --rotate: 0deg;
  --width: 27.6rem;
}

.documents:hover > .docs > img:nth-child(3) {
  --top: 2rem;
  --right: 15rem;
  --rotate: 0deg;
  --width: 42.1rem;
}

.documents:hover > .docs > img:nth-child(2).hovered {
  --top: 2rem;
  --right: 15rem;
  --rotate: 0deg;
  --width: 42.1rem;
}

.documents:hover > .docs > img:nth-child(2).hovered + img {
  --top: calc(100% - 6rem);
  --right: calc(100% - 6rem - 35.9rem);
  --rotate: 0deg;
  --width: 35.9rem;
}

.documents:hover > .docs > img:nth-child(1).hovered {
  --top: 1.8rem;
  --right: 11.1rem;
  --rotate: 0deg;
  --width: 42.1rem;
}

.documents:hover > .docs > img:nth-child(1).hovered + img {
  --top: calc(100% - 8rem);
  --right: calc(100% - 9rem - 35.9rem);
  --rotate: 0deg;
  --width: 35.9rem;
}

.documents:hover > .docs > img:nth-child(1).hovered + img + img {
  --top: calc(100% - 6rem);
  --right: calc(100% - 6rem - 35.9rem);
  --rotate: 0deg;
  --width: 35.9rem;
}

@media screen and (max-width: 1200px) {
  .documents {
    grid-column: span 3;
    aspect-ratio: auto;
    height: 32rem;
  }

  .documents > .logo {
    position: absolute;
    top: 1rem;
    left: 14%;
    transform: translate(-50%, 0);
    width: 5rem;
    z-index: 3;
    gap: 0.4rem;

    will-change: unset;
    transition: unset;
  }

  .documents:hover > .logo {
    transition: unset;
    opacity: unset;
  }

  .documents > .logo > h6 {
    white-space: nowrap;
    font-size: 1.3rem;
  }

  .documents > .docs {
    will-change: unset;
    transition: unset;
  }

  .documents:hover > .docs {
    top: 0;
  }

  .documents > .docs > img {
    will-change: unset;
    transition: unset;
  }

  .documents > .docs > img:nth-child(1),
  .documents:hover > .docs > img:nth-child(1) {
    --top: calc(50% - 9rem);
    --right: calc(3.3rem);
    --rotate: 0deg;
    --width: 21rem;
  }

  .documents > .docs > img:nth-child(2),
  .documents:hover > .docs > img:nth-child(2) {
    --top: calc(50% - 6rem);
    --right: calc(50% - 21rem / 2);
    --rotate: 0deg;
    --width: 21rem;
  }

  .documents > .docs > img:nth-child(3),
  .documents:hover > .docs > img:nth-child(3) {
    --top: calc(50% - 3rem);
    --right: calc(100% - 21rem - 3.3rem);
    --rotate: 0deg;
    --width: 21rem;
  }
}
