@mixin typography-text-heading-xl {
  font-family: var(--digitv2-fontFamily-rc);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-bold);
  color: var(--digitv2-lightTheme-text-primary);
  line-height: var(--digitv2-lineHeight-normal);

  @media (min-width: var(--digitv2-screens-desktop)) {
    font-size: var(--digitv2-fontSize-heading-xl-desktop);
  }

  @media (min-width: var(--digitv2-screens-tablet)) {
    font-size: var(--digitv2-fontSize-heading-xl-tablet);
  }

  @media (min-width: var(--digitv2-screens-mobile)) {
    font-size: var(--digitv2-fontSize-heading-xl-mobile);
  }
}

@mixin typography-text-heading-l {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-bold);
  color: var(--digitv2-lightTheme-text-primary);
  line-height: var(--digitv2-lineHeight-normal);

  @media screen and (min-width: var(--digitv2-screens-desktop)) {
    font-size: var(--digitv2-fontSize-heading-l-desktop);
  }

  @media screen and (min-width: var(--digitv2-screens-tablet)) {
    font-size: var(--digitv2-fontSize-heading-l-tablet);
  }

  @media screen and (min-width: var(--digitv2-screens-mobile)) {
    font-size: var(--digitv2-fontSize-heading-l-mobile);
  }
}

@mixin typography-text-heading-m {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-bold);
  color: var(--digitv2-lightTheme-text-primary);
  line-height: var(--digitv2-lineHeight-normal);

  @media screen and (min-width: var(--digitv2-screens-desktop)) {
    font-size: var(--digitv2-fontSize-heading-m-desktop);
  }

  @media screen and (min-width: var(--digitv2-screens-tablet)) {
    font-size: var(--digitv2-fontSize-heading-m-tablet);
  }

  @media screen and (min-width: var(--digitv2-screens-mobile)) {
    font-size: var(--digitv2-fontSize-heading-m-desktop);
  }
}

@mixin typography-text-heading-s {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-bold);
  color: var(--digitv2-lightTheme-text-primary);
  line-height: var(--digitv2-lineHeight-normal);

  @media screen and (min-width: var(--digitv2-screens-desktop)) {
    font-size: var(--digitv2-fontSize-heading-s-desktop);
  }

  @media screen and (min-width: var(--digitv2-screens-tablet)) {
    font-size: var(--digitv2-fontSize-heading-s-tablet);
  }

  @media screen and (min-width: var(--digitv2-screens-mobile)) {
    font-size: var(--digitv2-fontSize-heading-s-mobile);
  }
}

@mixin typography-text-heading-xs {
  @media screen and (min-width: var(--digitv2-screens-mobile)) {
    font-size: var(--digitv2-fontSize-heading-xs-mobile);
    font-family: var(--digitv2-fontFamily-sans);
    font-style: var(--digitv2-fontStyle-normal);
    font-weight: var(--digitv2-fontWeight-bold);
    color: var(--digitv2-lightTheme-text-primary);
    line-height: var(--digitv2-lineHeight-normal);
  }
}

@mixin typography-text-caption-l {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-italic);
  font-weight: var(--digitv2-fontWeight-medium);
  color: var(--digitv2-lightTheme-text-primary);
  line-height: var(--digitv2-lineHeight-normal);

  @media screen and (min-width: var(--digitv2-screens-desktop)) {
    font-size: var(--digitv2-fontSize-caption-l-desktop);
  }

  @media screen and (min-width: var(--digitv2-screens-tablet)) {
    font-size: var(--digitv2-fontSize-caption-l-tablet);
  }

  @media screen and (min-width: var(--digitv2-screens-mobile)) {
    font-size: var(--digitv2-fontSize-caption-l-mobile);
  }
}

@mixin typography-text-caption-m {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-italic);
  font-weight: var(--digitv2-fontWeight-medium);
  color: var(--digitv2-lightTheme-text-primary);
  line-height: var(--digitv2-lineHeight-normal);

  @media screen and (min-width: var(--digitv2-screens-desktop)) {
    font-size: var(--digitv2-fontSize-caption-m-desktop);
  }

  @media screen and (min-width: var(--digitv2-screens-tablet)) {
    font-size: var(--digitv2-fontSize-caption-m-tablet);
  }

  @media screen and (min-width: var(--digitv2-screens-mobile)) {
    font-size: var(--digitv2-fontSize-caption-m-mobile);
  }
}

@mixin typography-text-caption-s {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-italic);
  font-weight: var(--digitv2-fontWeight-medium);
  color: var(--digitv2-lightTheme-text-primary);
  line-height: var(--digitv2-lineHeight-normal);

  @media screen and (min-width: var(--digitv2-screens-desktop)) {
    font-size: var(--digitv2-fontSize-caption-s-desktop);
  }

  @media screen and (min-width: var(--digitv2-screens-tablet)) {
    font-size: var(--digitv2-fontSize-caption-s-tablet);
  }

  @media screen and (min-width: var(--digitv2-screens-mobile)) {
    font-size: var(--digitv2-fontSize-caption-s-desktop);
  }
}

@mixin typography-text-body-l {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-italic);
  font-weight: var(--digitv2-fontWeight-regular);
  color: var(--digitv2-lightTheme-text-primary);

  @media screen and (min-width: var(--digitv2-screens-desktop)) {
    font-size: var(--digitv2-fontSize-body-l-desktop);
    line-height: var(--digitv2-lineHeight-line-height-body-l-desktop);
  }

  @media screen and (min-width: var(--digitv2-screens-tablet)) {
    font-size: var(--digitv2-fontSize-body-l-tablet);
    line-height: var(--digitv2-lineHeight-line-height-body-l-tablet);
  }

  @media screen and (min-width: var(--digitv2-screens-mobile)) {
    font-size: var(--digitv2-fontSize-body-l-mobile);
    line-height: var(--digitv2-lineHeight-line-height-body-l-mobile);
  }
}

@mixin typography-text-body-s {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-italic);
  font-weight: var(--digitv2-fontWeight-regular);
  color: var(--digitv2-lightTheme-text-primary);

  @media screen and (min-width: var(--digitv2-screens-desktop)) {
    font-size: var(--digitv2-fontSize-body-s-desktop);
    line-height: var(--digitv2-lineHeight-line-height-body-s-desktop);
  }

  @media screen and (min-width: var(--digitv2-screens-tablet)) {
    font-size: var(--digitv2-fontSize-body-s-tablet);
    line-height: var(--digitv2-lineHeight-line-height-body-s-tablet);
  }

  @media screen and (min-width: var(--digitv2-screens-mobile)) {
    font-size: var(--digitv2-fontSize-body-s-mobile);
    line-height: var(--digitv2-lineHeight-line-height-body-s-mobile);
  }
}

@mixin typography-text-body-xs {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-italic);
  font-weight: var(--digitv2-fontWeight-regular);
  color: var(--digitv2-lightTheme-text-primary);

  @media screen and (min-width: var(--digitv2-screens-desktop)) {
    font-size: var(--digitv2-fontSize-body-xs-desktop);
    line-height: var(--digitv2-lineHeight-line-height-body-xs-desktop);
  }

  @media screen and (min-width: var(--digitv2-screens-tablet)) {
    font-size: var(--digitv2-fontSize-body-xs-tablet);
    line-height: var(--digitv2-lineHeight-line-height-body-xs-tablet);
  }

  @media screen and (min-width: var(--digitv2-screens-mobile)) {
    font-size: var(--digitv2-fontSize-body-xs-mobile);
    line-height: var(--digitv2-lineHeight-line-height-body-xs-mobile);
  }
}

@mixin typography-text-label {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-italic);
  font-weight: var(--digitv2-fontWeight-regular);
  color: var(--digitv2-lightTheme-text-primary);
  line-height: var(--digitv2-lineHeight-normal);

  @media screen and (min-width: var(--digitv2-screens-desktop)) {
    font-size: var(--digitv2-fontSize-label-desktop);
  }

  @media screen and (min-width: var(--digitv2-screens-tablet)) {
    font-size: var(--digitv2-fontSize-label-tablet);
  }

  @media screen and (min-width: var(--digitv2-screens-mobile)) {
    font-size: var(--digitv2-fontSize-label-mobile);
  }
}

@mixin typography-text-link {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-regular);
  color: var(--digitv2-lightTheme-text-primary);
  line-height: var(--digitv2-lineHeight-normal);
  text-decoration: var(--digitv2-textDecorationLine-underline);

  @media screen and (min-width: var(--digitv2-screens-desktop)) {
    font-size: var(--digitv2-fontSize-link-desktop);
  }

  @media screen and (min-width: var(--digitv2-screens-tablet)) {
    font-size: var(--digitv2-fontSize-link-tablet);
  }

  @media screen and (min-width: var(--digitv2-screens-mobile)) {
    font-size: var(--digitv2-fontSize-link-mobile);
  }
}

@mixin typography-heading-xl {
  font-family: var(--digitv2-fontFamily-rc);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-bold);

  @media (max-width: 30rem) {
    /* Media query for mobile */
    font-size: var(--digitv2-fontSize-heading-xl-mobile);
  }

  @media (min-width: 30.063rem) and (max-width: 47.938rem) {
    /* Media query for tablets */
    font-size: var(--digitv2-fontSize-heading-xl-tablet);
  }

  @media (min-width: 48rem) {
    /* Media query for desktop */
    font-size: var(--digitv2-fontSize-heading-xl-desktop);
  }
}

@mixin typography-heading-l {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-bold);

  @media (max-width: 30rem) {
    /* Media query for mobile */
    font-size: var(--digitv2-fontSize-heading-l-mobile);
  }

  @media (min-width: 30.063rem) and (max-width: 47.938rem) {
    /* Media query for tablets */
    font-size: var(--digitv2-fontSize-heading-l-tablet);
  }

  @media (min-width: 48rem) {
    /* Media query for desktop */
    font-size: var(--digitv2-fontSize-heading-l-desktop);
  }
}

@mixin typography-heading-m {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-bold);

  @media (max-width: 30rem) {
    /* Media query for mobile */
    font-size: var(--digitv2-fontSize-heading-m-mobile);
  }

  @media (min-width: 30.063rem) and (max-width: 47.938rem) {
    /* Media query for tablets */
    font-size: var(--digitv2-fontSize-heading-m-tablet);
  }

  @media (min-width: 48rem) {
    /* Media query for desktop */
    font-size: var(--digitv2-fontSize-heading-m-desktop);
  }
}

@mixin typography-heading-s {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-bold);

  @media (max-width: 30rem) {
    /* Media query for mobile */
    font-size: var(--digitv2-fontSize-heading-s-mobile);
  }

  @media (min-width: 30.063rem) and (max-width: 47.938rem) {
    /* Media query for tablets */
    font-size: var(--digitv2-fontSize-heading-s-tablet);
  }

  @media (min-width: 48rem) {
    /* Media query for desktop */
    font-size: var(--digitv2-fontSize-heading-s-desktop);
  }
}

@mixin typography-heading-xs {
  font-size: var(--digitv2-fontSize-heading-xs-mobile);
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-bold);
}

@mixin typography-caption-l {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-italic);
  font-weight: var(--digitv2-fontWeight-medium);

  @media (max-width: 30rem) {
    /* Media query for mobile */
    font-size: var(--digitv2-fontSize-caption-l-mobile);
  }

  @media (min-width: 30.063rem) and (max-width: 47.938rem) {
    /* Media query for tablets */
    font-size: var(--digitv2-fontSize-caption-l-tablet);
  }

  @media (min-width: 48rem) {
    /* Media query for desktop */
    font-size: var(--digitv2-fontSize-caption-l-desktop);
  }
}

@mixin typography-caption-m {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-italic);
  font-weight: var(--digitv2-fontWeight-medium);

  @media (max-width: 30rem) {
    /* Media query for mobile */
    font-size: var(--digitv2-fontSize-caption-m-mobile);
  }

  @media (min-width: 30.063rem) and (max-width: 47.938rem) {
    /* Media query for tablets */
    font-size: var(--digitv2-fontSize-caption-m-tablet);
  }

  @media (min-width: 48rem) {
    /* Media query for desktop */
    font-size: var(--digitv2-fontSize-caption-m-desktop);
  }
}

@mixin typography-caption-s {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-italic);
  font-weight: var(--digitv2-fontWeight-medium);

  @media (max-width: 30rem) {
    /* Media query for mobile */
    font-size: var(--digitv2-fontSize-caption-s-mobile);
  }

  @media (min-width: 30.063rem) and (max-width: 47.938rem) {
    /* Media query for tablets */
    font-size: var(--digitv2-fontSize-caption-s-tablet);
  }

  @media (min-width: 48rem) {
    /* Media query for desktop */
    font-size: var(--digitv2-fontSize-caption-s-desktop);
  }
}

@mixin typography-body-l {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-regular);

  @media (max-width: 30rem) {
    /* Media query for mobile */
    font-size: var(--digitv2-fontSize-body-l-mobile);
  }

  @media (min-width: 30.063rem) and (max-width: 47.938rem) {
    /* Media query for tablets */
    font-size: var(--digitv2-fontSize-body-l-tablet);
  }

  @media (min-width: 48rem) {
    /* Media query for desktop */
    font-size: var(--digitv2-fontSize-body-l-desktop);
  }
}

@mixin typography-body-s {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-regular);

  @media (max-width: 30rem) {
    /* Media query for mobile */
    font-size: var(--digitv2-fontSize-body-s-mobile);
  }

  @media (min-width: 30.063rem) and (max-width: 47.938rem) {
    /* Media query for tablets */
    font-size: var(--digitv2-fontSize-body-s-tablet);
  }

  @media (min-width: 48rem) {
    /* Media query for desktop */
    font-size: var(--digitv2-fontSize-body-s-desktop);
  }
}

@mixin typography-body-xs {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-regular);

  @media (max-width: 30rem) {
    /* Media query for mobile */
    font-size: var(--digitv2-fontSize-body-xs-mobile);
  }

  @media (min-width: 30.063rem) and (max-width: 47.938rem) {
    /* Media query for tablets */
    font-size: var(--digitv2-fontSize-body-xs-tablet);
  }

  @media (min-width: 48rem) {
    /* Media query for desktop */
    font-size: var(--digitv2-fontSize-body-xs-desktop);
  }
}

@mixin typography-label {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-regular);

  @media (max-width: 30rem) {
    /* Media query for mobile */
    font-size: var(--digitv2-fontSize-label-mobile);
  }

  @media (min-width: 30.063rem) and (max-width: 47.938rem) {
    /* Media query for tablets */
    font-size: var(--digitv2-fontSize-label-tablet);
  }

  @media (min-width: 48rem) {
    /* Media query for desktop */
    font-size: var(--digitv2-fontSize-label-desktop);
  }
}

@mixin typography-link {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-regular);
  text-decoration: var(--digitv2-textDecorationLine-underline);
  font-size: var(--digitv2-fontSize-link-desktop);
}

@mixin typography-button {
  font-family: var(--digitv2-fontFamily-sans);
  font-style: var(--digitv2-fontStyle-normal);
  font-weight: var(--digitv2-fontWeight-medium);
  font-size: var(--digitv2-fontSize-button-desktop);
}
