.link-wrapper {
  position: relative;
}

.link-content > a {
  display: flex;
}

.link-content > a::after {
  position: absolute;
  inset: 0;
  content: "";
}

.link-icon {
  flex-shrink: 0;
  margin-inline-end: var(--link-icon-margin);
}

.link--button-style .link-wrapper {
  padding: var(--button-padding-vertical) var(--button-padding-horizontal) var(--button-padding-vertical) var(--button-padding-horizontal);
  color: var(--button-text-color);
  border: var(--border);
  border-color: var(--button-border-color);
  border-radius: var(--button-border-radius);
  background-color: var(--button-bg-color);
  font-family: var(--button-font-family);
  font-size: var(--font-size-medium);
}

.link--button-style .lgd-icon {
  fill: var(--button-text-color);
}

.link--button-style:hover .lgd-icon,
.link--button-style:focus .lgd-icon {
  fill: var(--button-text-color-hover);
}

.link--button-style a {
  text-decoration: none;
  color: inherit;
}

.link--button-style:focus .link-wrapper,
.link--button-style:hover .link-wrapper {
  text-decoration: underline;
  color: var(--button-text-color-hover);
  background-color: var(--button-bg-color-hover);
}
