_typography.scss
@use '~@angular/material' as mat;
$font-family-primary: "'Roboto', sans-serif";
$font-family-accent: "'Playfair Display', serif";
$mat-typography-primary-config: mat.define-typography-config(
$display-4: mat.define-typography-level(112px, 112px, 300, $font-family-primary, $letter-spacing: -0.05em),
$display-3: mat.define-typography-level(56px, 56px, 400, $font-family-primary, $letter-spacing: -0.02em),
$display-2: mat.define-typography-level(45px, 48px, 400, $font-family-primary, $letter-spacing: -0.005em),
$display-1: mat.define-typography-level(34px, 40px, 400, $font-family-primary),
$headline: mat.define-typography-level(24px, 32px, 400, $font-family-accent),
$title: mat.define-typography-level(20px, 32px, 500, $font-family-primary),
$subheading-2: mat.define-typography-level(16px, 28px, 400, $font-family-primary),
$subheading-1: mat.define-typography-level(15px, 24px, 400, $font-family-accent),
$body-2: mat.define-typography-level(14px, 24px, 500, $font-family-primary),
$body-1: mat.define-typography-level(14px, 20px, 400, $font-family-primary),
$caption: mat.define-typography-level(12px, 20px, 400, $font-family-primary),
$button: mat.define-typography-level(14px, 14px, 500, $font-family-primary),
$input: mat.define-typography-level(inherit, 1.125, 400, $font-family-primary)
);
styles.scss
@import './styles/typography';
@include mat.core($mat-typography-primary-config);
good implementation ;)