/// Provides default styles for Link elements.
/// @group links
/// @author Richard Davis
/// @example
///   @extend %default-link-styling;
%default-link-styling {
  text-decoration-skip: ink;
  transition: color $base-duration $base-timing;

  &:focus {
    outline: none;
    outline-offset: none;
  }
}

/// Provides default styles for BoxLink elements.
/// @group links
/// @author Richard Davis
/// @example
///   @extend %default-box-link-styling;
%default-box-link-styling {
  display: block;
  font-family: $heading-semibold-font-family;
  font-size: 125%;
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  margin: spacing-size(1);
  padding: spacing-size(4) spacing-size(2);
  border-width: 1px;
  border-style: solid;
  border-radius: $base-border-radius;

  @include breakpoint-s {
    margin: spacing-size(2);
    padding: spacing-size(4);
  }

  @include breakpoint-l {
    margin: spacing-size(4);
    padding: spacing-size(5);
  }
}

/// Provides default styles for IconLink elements.
/// @group links
/// @author Richard Davis
/// @example
///   @extend %default-icon-link-styling;
%default-icon-link-styling {
  text-decoration: none;
  cursor: pointer;

  &:hover {
    text-decoration: none;
  }
}
