.btn {
  position: relative;
  display: flex;
  align-items: center;

  height: 5rem;

  border-radius: var(--btn-radius);
  border: 1px solid var(--col6);
  padding: 0;

  color: var(--text);
  background-color: var(--bg);
}

.btn-text {
  padding: 1.5rem 3rem;
}

.btn-icon {
  flex: 1;
  /* justify-content: flex-end; */

  height: 5rem;
  width: 5rem;

  border-radius: var(--icon-radius);
  padding: 1em 0;

  background-color: var(--col6);
  color: var(--text);
}

/* animation */
.btn:hover::after {
  width: 100%;
}

.btn::after {
  content: '';

  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 0%;

  border-radius: var(--btn-radius);

  background-color: var(--col6);

  transition: width 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  z-index: -1; /* Place behind the text/icon */
}
