a.basic-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--color-primary, #1557b5);
  text-decoration: underline;
  font-weight: 500;
  transition: color 0.2s ease;
}
a.basic-link::after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%231557b5" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 18 15 12 9 6"></polyline></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex-shrink: 0;
  transition: transform 0.2s ease, background-image 0.2s ease;
}
a.basic-link:hover {
  color: #0038a1;
  text-decoration: none;
}
a.basic-link:hover::after {
  transform: translateX(6px);
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%230038a1" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 18 15 12 9 6"></polyline></svg>');
}

.cta-wrapper {
  display: flex;
  justify-content: center;
}
.cta-wrapper .btn {
  padding: 16px;
  line-height: 1;
  text-decoration: none;
  border-radius: 8px;
  z-index: 1;
}
.cta-wrapper .btn.btn-primary {
  color: var(--color-primary-content);
}
.cta-wrapper .btn.btn-secondary {
  background: var(--color-primary-content);
  border-width: 1px;
  transition: background 0.35s ease, color 0.35s ease, border-color 0.35s ease;
}
.cta-wrapper .btn.btn-secondary svg {
  margin-left: 5px;
  transition: color 0.35s ease;
}
.cta-wrapper .btn.btn-secondary:hover {
  background: var(--color-primary);
  color: var(--color-primary-content);
  border-color: var(--color-primary);
}
.cta-wrapper .btn.btn-secondary:hover svg {
  color: var(--color-primary-content);
}
.cta-wrapper .btn.btn-secondary-external {
  background: var(--color-primary-content);
  border-width: 1px;
  transition: background 0.35s ease, color 0.35s ease, border-color 0.35s ease;
}
.cta-wrapper .btn.btn-secondary-external svg {
  margin-left: 5px;
  transition: color 0.35s ease;
}
.cta-wrapper .btn.btn-secondary-external:hover {
  background: var(--color-primary);
  color: var(--color-primary-content);
  border-color: var(--color-primary);
}
.cta-wrapper .btn.btn-secondary-external:hover svg {
  color: var(--color-primary-content);
}
.cta-wrapper .btn.btn-secondary-no-border {
  background: var(--color-primary-content);
  border: none;
  transition: background 0.35s ease, color 0.35s ease;
}
.cta-wrapper .btn.btn-secondary-no-border svg {
  margin-left: 5px;
  transition: color 0.35s ease;
}
.cta-wrapper .btn.btn-secondary-no-border:hover {
  background: var(--color-primary);
  color: var(--color-primary-content);
}
.cta-wrapper .btn.btn-secondary-no-border:hover svg {
  color: var(--color-primary-content);
}