/* Body */
.typography {
  &.weight-normal {
    font-weight: 400;
  }

  &.weight-medium {
    font-weight: 500;
  }

  &.weight-bold {
    font-weight: 600;
  }

  &.body {
    &.family-regular {
      font-family: "Archivo", sans-serif;
    }

    &.family-condensed {
      font-family: "Archivo SemiCondensed", sans-serif;
    }

    &.size-default {
      font-size: 1rem;
      line-height: 1.32;
      letter-spacing: 0.02rem;
    }

    &.size-s {
      font-size: 0.875rem;
      line-height: 1.32;
      letter-spacing: 0.0175rem;
    }

    &.size-xs {
      font-size: 0.75rem;
      line-height: 1.32;
      letter-spacing: 0.0225rem;
    }

    &.size-xxs {
      font-size: 0.6875rem;
      line-height: 1.32;
      letter-spacing: 0.00688rem;
    }
  }

  &.label {
    &.family-condensed {
      font-family: "Archivo SemiCondensed", sans-serif;

      &.size-default {
        font-size: 0.875rem;
        line-height: 1;
        letter-spacing: 0.0175rem;
      }

      &.size-s {
        font-size: 0.8125rem;
        line-height: 1;
        letter-spacing: 0.0175rem;
      }

      &.size-xs {
        font-size: 0.75rem;
        line-height: 1;
        letter-spacing: 0.0075rem;
      }
    }

    &.family-mono {
      font-family: "Commit Mono", monospace;

      &.size-default {
        font-size: 0.8125rem;
        line-height: 1;
        letter-spacing: normal;
      }

      &.size-s {
        font-size: 0.75rem;
        line-height: 1;
        letter-spacing: normal;
      }

      &.size-xs {
        font-size: 0.6875rem;
        line-height: 1;
        letter-spacing: normal;
      }
    }
  }

  &.title {
    &.family-regular {
      font-family: "Archivo", sans-serif;
    }

    &.size-default {
      font-size: 1.125rem;
      line-height: 124%;
      letter-spacing: 0.03375rem;
    }

    &.size-m {
      font-size: 1.25rem;
      line-height: 124%;
      letter-spacing: 0.0375rem;
    }

    &.size-l {
      font-size: 1.375rem;
      line-height: 124%;
      letter-spacing: 0.04125rem;
    }
  }

  &.headline {
    &.family-regular {
      font-family: "Archivo", sans-serif;
    }

    &.size-default {
      font-size: 1.5rem;
      line-height: 116%;
      letter-spacing: 0.015rem;
    }

    &.size-m {
      font-size: 1.75rem;
      line-height: 116%;
      letter-spacing: 0.0175rem;
    }

    &.size-l {
      font-size: 2rem;
      line-height: 116%;
      letter-spacing: 0.06rem;
    }
  }

  &.teaser {
    &.family-regular {
      font-family: "Archivo", sans-serif;
    }

    &.size-default {
      font-size: 3rem;
      line-height: normal;
      letter-spacing: -0.06rem;
    }
  }
}
