.Link {
  text-decoration: none;
  font-weight: var(--font-weight-medium);
  transition: color var(--duration--fast-01) var(--standard-productive-curve),
    border-color var(--duration--fast-01) var(--standard-productive-curve);
  box-sizing: border-box;
}

@media (prefers-reduced-motion: reduce) {
  .Link {
    transition: none;
  }
}

.Link-text {
  display: inline-flex;
  vertical-align: middle;
  border-bottom: var(--border-width-2-5) solid currentColor;
}

.Link:focus-visible {
  outline: var(--border-width-05) solid var(--primary-focus);
  outline-offset: var(--spacing-05);
  border-radius: var(--border-radius-10);
}

.Link--regular {
  font-size: var(--font-size);
  height: var(--font-height);
}

.Link--tiny {
  font-size: var(--font-size-s);
  height: var(--font-height-s);
  line-height: var(--font-height-s);
}

.Link--default {
  color: var(--text-link);
}

.Link--subtle {
  color: var(--inverse-lighter);
  border-bottom-color: transparent;
}

.Link-text--subtle {
  border-bottom-color: transparent;
}

.Link--default:hover {
  color: var(--primary-dark);
}

.Link--subtle:hover {
  color: var(--inverse-light);
}

.Link--subtle:hover .Link-text--subtle {
  border-bottom-color: currentColor;
}

.Link--default:active {
  color: var(--primary-darker);
}

.Link--subtle:active {
  color: var(--inverse);
}

.Link--subtle:active .Link-text--subtle {
  border-bottom-color: transparent;
}

.Link--button-reset {
  background: none;
  border-top: none;
  border-left: none;
  border-right: none;
  padding: 0;
  cursor: pointer;
  font-family: inherit;
}

.Link--default-disabled {
  color: var(--primary-lighter);
  pointer-events: none;
}

.Link--subtle-disabled {
  color: var(--inverse-lightest);
  pointer-events: none;
}

.Link-infoIconWrapper {
  display: inline-flex;
  vertical-align: middle;
  transform: translateY(calc(-1 * var(--spacing-15)));
  margin-left: var(--spacing-2-5);
  width: var(--spacing-30);
  height: var(--spacing-30);
  box-sizing: border-box;
  border-radius: var(--border-radius-full);
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
}

.Link-infoIcon {
  color: var(--text-subtle);
  pointer-events: none;
}

.Link-infoIcon--default {
  color: var(--primary);
}

.Link-infoIcon--subtle {
  color: var(--inverse-light);
}

.Link-tooltip--disabled {
  pointer-events: auto;
  cursor: not-allowed;
}
