body {
  font-family: $font-family-sans;
  font-size: $font-size-base;
  line-height: 1.5;
  color: $color-foreground;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: $font-weight-bold;
  line-height: 1.2;
  margin-bottom: $spacing-4;
}

h1 {
  font-size: $font-size-3xl;
  
  @include md {
    font-size: $font-size-4xl;
  }
}

h2 {
  font-size: $font-size-2xl;
  
  @include md {
    font-size: $font-size-3xl;
  }
}

h3 {
  font-size: $font-size-xl;
  
  @include md {
    font-size: $font-size-2xl;
  }
}

h4 {
  font-size: $font-size-lg;
}

p {
  margin-bottom: $spacing-4;
}

a {
  color: $color-primary;
  text-decoration: none;
  transition: $transition-base;
  
  &:hover {
    color: $color-primary-hover;
  }
}

.text-xs {
  font-size: $font-size-xs;
}

.text-sm {
  font-size: $font-size-sm;
}

.text-base {
  font-size: $font-size-base;
}

.text-lg {
  font-size: $font-size-lg;
}

.text-xl {
  font-size: $font-size-xl;
}

.text-2xl {
  font-size: $font-size-2xl;
}

.font-normal {
  font-weight: $font-weight-normal;
}

.font-medium {
  font-weight: $font-weight-medium;
}

.font-semibold {
  font-weight: $font-weight-semibold;
}

.font-bold {
  font-weight: $font-weight-bold;
}
