.link {
  color: currentColor;
  cursor: pointer;
  display: flex;
}
@media (hover: hover) {
  .link--clone-hover {
    overflow: hidden;
    position: relative;
  }
  .link--clone-hover:after {
    content: attr(data-label);
    left: 0;
    pointer-events: none;
    position: absolute;
    top: 100%;
    transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
    white-space: nowrap;
  }
  .link--clone-hover:hover .link__label,
  .link--clone-hover:hover:after {
    transform: translateY(-100%);
    transition-duration: 0.8s;
    transition-timing-function: cubic-bezier(0.14, 1, 0.34, 1);
  }
}
.link__label {
  display: flex;
}
@media (hover: hover) {
  .link--clone-hover .link__label {
    transition: transform 0.4s cubic-bezier(1, 0, 0.65, 0.61);
  }
}
