.button-v2 {
  --btn-text: #0f172a;
  --btn-icon: #fff;
  --btn-lift: 1.3em;
  cursor: pointer;
  border-radius: 10rem;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
  max-width: -moz-fit-content;
  max-width: fit-content;
  padding: 1.5rem 3rem;
  text-decoration: none;
  display: flex;
  position: relative;
}

.button-v2 .button-v2__bg {
  transition: transform .6s var(--smooth-ease);
  z-index: 0;
  border: 1px solid var(--btn-text);
  border-radius: 100px;
  position: absolute;
  inset: 0;
}

.button-v2 .button-v2__text {
  z-index: 1;
  font-size: max(12px, min(1.8rem + 2px, 34px));
  display: flex;
  position: relative;
  top: -.08em;
  overflow: hidden;
}

.button-v2 .button-v2__text-inner {
  transition: transform .6s var(--smooth-ease);
  white-space: nowrap;
  color: var(--btn-text);
  letter-spacing: -.2px;
  text-shadow: 0 var(--btn-lift) currentColor;
  font-size: max(12px, min(1.8rem + 2px, 34px));
  font-weight: 400;
  line-height: normal;
  display: inline-block;
  transform: translateY(0) rotate(.001deg);
}

.button-v2:hover .button-v2__bg {
  transform: scale(.95);
}

.button-v2:hover .button-v2__text-inner {
  transform: translateY(calc(var(--btn-lift) * -1)) rotate(.001deg);
}

@media (orientation: portrait) {
  .button-v2 {
    gap: 1rem;
    padding: 1rem 1.5rem;
  }

  .button-v2 .button-v2__text, .button-v2 .button-v2__text-inner {
    letter-spacing: 0;
    font-size: 1.2rem;
  }
}
