// ====================================
// NextGen Framework Typography
// ====================================

// Import variables
@use '../index' as *;

// Headings
// ------------------------------------
h1, .h1 {
  margin-bottom: $spacer;
  font-family: $font-family-base;
  font-size: $h1-font-size;
  font-weight: $font-weight-semibold;
  line-height: 1.2;
  color: var(--ng-body-color);
}

h2, .h2 {
  margin-bottom: $spacer;
  font-family: $font-family-base;
  font-size: $h2-font-size;
  font-weight: $font-weight-semibold;
  line-height: 1.2;
  color: var(--ng-body-color);
}

h3, .h3 {
  margin-bottom: $spacer;
  font-family: $font-family-base;
  font-size: $h3-font-size;
  font-weight: $font-weight-semibold;
  line-height: 1.2;
  color: var(--ng-body-color);
}

h4, .h4 {
  margin-bottom: $spacer;
  font-family: $font-family-base;
  font-size: $h4-font-size;
  font-weight: $font-weight-semibold;
  line-height: 1.2;
  color: var(--ng-body-color);
}

h5, .h5 {
  margin-bottom: $spacer;
  font-family: $font-family-base;
  font-size: $h5-font-size;
  font-weight: $font-weight-semibold;
  line-height: 1.2;
  color: var(--ng-body-color);
}

h6, .h6 {
  margin-bottom: $spacer;
  font-family: $font-family-base;
  font-size: $h6-font-size;
  font-weight: $font-weight-semibold;
  line-height: 1.2;
  color: var(--ng-body-color);
}

// Paragraphs
// ------------------------------------
p {
  margin-top: 0;
  margin-bottom: $spacer;
  
  &:last-child {
    margin-bottom: 0;
  }
}

// Lead paragraph
.lead {
  font-size: $font-size-lg;
  font-weight: $font-weight-light;
  line-height: $line-height-lg;
}

// Font weight helpers
// ------------------------------------
.fw-light {
  font-weight: $font-weight-light !important;
}

.fw-normal {
  font-weight: $font-weight-normal !important;
}

.fw-medium {
  font-weight: $font-weight-medium !important;
}

.fw-semibold {
  font-weight: $font-weight-semibold !important;
}

.fw-bold {
  font-weight: $font-weight-bold !important;
}

// Text alignment
// ------------------------------------
.text-left {
  text-align: left !important;
}

.text-center {
  text-align: center !important;
}

.text-right {
  text-align: right !important;
}

.text-justify {
  text-align: justify !important;
}