@use '../abstracts/cds-config' as config;
@use '../abstracts/cds-tokens' as tokens;

/// Hero
/// --------------------

@mixin cds-hero-xs {
    font-family: config.$config-font-family-700;
    font-size: tokens.$cdsbt-font-size-48;
    font-weight: config.$config-font-weight-700;
    letter-spacing: tokens.$cdsbt-letter-spacing-n125;
    line-height: tokens.$cdsbt-line-height-10;
}

@mixin cds-hero-s {
    font-family: config.$config-font-family-700;
    font-size: tokens.$cdsbt-font-size-64;
    font-weight: config.$config-font-weight-700;
    letter-spacing: tokens.$cdsbt-letter-spacing-n125;
    line-height: tokens.$cdsbt-line-height-10;
}

@mixin cds-hero-m {
    font-family: config.$config-font-family-700;
    font-size: tokens.$cdsbt-font-size-96;
    font-weight: config.$config-font-weight-700;
    letter-spacing: tokens.$cdsbt-letter-spacing-n250;
    line-height: tokens.$cdsbt-line-height-10;
}

@mixin cds-hero-l {
    font-family: config.$config-font-family-700;
    font-size: tokens.$cdsbt-font-size-128;
    font-weight: config.$config-font-weight-700;
    letter-spacing: tokens.$cdsbt-letter-spacing-n250;
    line-height: tokens.$cdsbt-line-height-10;
}

/// Head
/// --------------------

@mixin cds-head-xs {
    font-family: config.$config-font-family-700;
    font-size: tokens.$cdsbt-font-size-20;
    font-weight: config.$config-font-weight-700;
    letter-spacing: tokens.$cdsbt-letter-spacing-0;
    line-height: tokens.$cdsbt-line-height-12;
}

@mixin cds-head-s {
    font-family: config.$config-font-family-700;
    font-size: tokens.$cdsbt-font-size-24;
    font-weight: config.$config-font-weight-700;
    letter-spacing: tokens.$cdsbt-letter-spacing-0;
    line-height: tokens.$cdsbt-line-height-12;
}

@mixin cds-head-m {
    font-family: config.$config-font-family-700;
    font-size: tokens.$cdsbt-font-size-32;
    font-weight: config.$config-font-weight-700;
    letter-spacing: tokens.$cdsbt-letter-spacing-0;
    line-height: tokens.$cdsbt-line-height-12;
}

@mixin cds-head-l {
    font-family: config.$config-font-family-700;
    font-size: tokens.$cdsbt-font-size-40;
    font-weight: config.$config-font-weight-700;
    letter-spacing: tokens.$cdsbt-letter-spacing-0;
    line-height: tokens.$cdsbt-line-height-12;
}

/// Paragraph
/// --------------------

@mixin cds-paragraph-xs($bold: regular) {
    font-family: config.$config-font-family-400;
    font-size: tokens.$cdsbt-font-size-12;
    font-weight: config.$config-font-weight-400;
    letter-spacing: tokens.$cdsbt-letter-spacing-0;
    line-height: tokens.$cdsbt-line-height-12;

    @if ($bold ==bold) {
        font-family: config.$config-font-family-700;
        font-weight: config.$config-font-weight-700;
    }
}

@mixin cds-paragraph-s($bold: regular) {
    font-family: config.$config-font-family-400;
    font-size: tokens.$cdsbt-font-size-14;
    font-weight: config.$config-font-weight-400;
    letter-spacing: tokens.$cdsbt-letter-spacing-0;
    line-height: tokens.$cdsbt-line-height-12;

    @if ($bold ==bold) {
        font-family: config.$config-font-family-700;
        font-weight: config.$config-font-weight-700;
    }
}

@mixin cds-paragraph-m($bold: regular) {
    font-family: config.$config-font-family-400;
    font-size: tokens.$cdsbt-font-size-16;
    font-weight: config.$config-font-weight-400;
    letter-spacing: tokens.$cdsbt-letter-spacing-0;
    line-height: tokens.$cdsbt-line-height-12;

    @if ($bold ==bold) {
        font-family: config.$config-font-family-700;
        font-weight: config.$config-font-weight-700;
    }
}

@mixin cds-paragraph-l($bold: regular) {
    font-family: config.$config-font-family-400;
    font-size: tokens.$cdsbt-font-size-20;
    font-weight: config.$config-font-weight-400;
    letter-spacing: tokens.$cdsbt-letter-spacing-0;
    line-height: tokens.$cdsbt-line-height-12;

    @if ($bold ==bold) {
        font-family: config.$config-font-family-700;
        font-weight: config.$config-font-weight-700;
    }
}

/// Code
/// --------------------
@mixin cds-code-s($bold: regular) {
    font-family: config.$config-font-family-code;
    font-size: 0.875rem; // tokens.$cdsbt-font-size-14;
    font-weight: config.$config-font-weight-400;
    letter-spacing: tokens.$cdsbt-letter-spacing-0;
    line-height: tokens.$cdsbt-line-height-12;

    @if ($bold ==bold) {
        font-weight: config.$config-font-weight-700;
    }
}

@mixin cds-code-m($bold: regular) {
    font-family: config.$config-font-family-code;
    font-size: 1rem; //tokens.$cdsbt-font-size-16;
    font-weight: config.$config-font-weight-400;
    letter-spacing: tokens.$cdsbt-letter-spacing-0;
    line-height: tokens.$cdsbt-line-height-12;

    @if ($bold ==bold) {
        font-weight: config.$config-font-weight-700;
    }
}

@mixin cds-code-l($bold: regular) {
    font-family: config.$config-font-family-code;
    font-size: 1.25rem; // tokens.$cdsbt-font-size-20;
    font-weight: config.$config-font-weight-400;
    letter-spacing: tokens.$cdsbt-letter-spacing-0;
    line-height: tokens.$cdsbt-line-height-12;

    @if ($bold ==bold) {
        font-weight: config.$config-font-weight-700;
    }
}