.cta-link.cta-link--primary a {
  --focus-visible--outline-color: var(--cta-primary--focus-visible--outline-color, currentColor);
  font-size: 1.25rem;
  background-color: var(--cta-primary--bg-color);
  border: 1px solid var(--cta-primary--border--color);
  color: var(--cta-primary--color);
  text-decoration: none;
  padding: 0.8em;
  border-radius: var(--cta-primary--border-radius);
}
.cta-link.cta-link--primary a:hover, .cta-link.cta-link--primary a:focus-visible {
  --cta-primary--border--color: var(--cta-primary--border--color--active);
  --cta-primary--border-radius: var(--cta-primary--border-radius--active);
  background-color: var(--cta-primary--bg-color--active, var(--cta-primary--bg-color));
  color: var(--cta-primary--color--active, var(--cta-primary--color));
}

.cta-link.cta-link--secondary a {
  --focus-visible--outline-color: var(--cta-secondary--focus-visible--outline-color, currentColor);
  background-color: var(--cta-secondary--bg-color, transparent);
  border: 1px solid var(--cta-secondary--border--color);
  color: var(--cta-secondary--color);
  text-decoration: none;
  padding: var(--cta-secondary--padding, 0.8em);
  border-radius: var(--cta-secondary--border-radius);
}
.cta-link.cta-link--secondary a:hover, .cta-link.cta-link--secondary a:focus {
  --cta-secondary--border--color: var(--cta-secondary--border--color--active);
  --cta-secondary--border-radius: var(--cta-secondary--border-radius--active);
  background-color: var(--cta-secondary--bg-color--active, var(--cta-secondary--bg-color));
  color: var(--cta-secondary--color--active, var(--cta-secondary--color));
}

.cta-link.cta-link--with-arrow a::after {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  font-feature-settings: normal;
  font-style: normal;
  font-synthesis: none;
  font-variant: normal;
  line-height: 1;
  text-align: center;
  text-rendering: auto;
}

.cta-link.cta-link--with-arrow a {
  color: var(--cta-with-arrow--color);
}
.cta-link.cta-link--with-arrow a::after {
  font-family: var(--icon--arrow-right--font-family);
  content: var(--icon--arrow-right--content);
  transition: all 200ms ease-in-out;
  margin-left: 0.5em;
  transform: translateX(var(--cta-with-arrow--after--translate-x, 0));
}
.cta-link.cta-link--with-arrow a:hover, .cta-link.cta-link--with-arrow a:focus-visible {
  --cta-with-arrow--after--translate-x: 0.25em;
  --cta-with-arrow--color: var(--cta-with-arrow--color--active);
}
