/* ================================================================
   GRT Typography Utility Classes
   Each class mirrors a named Figma text style from "GRT local".
   All values use CSS custom properties — never hard-code here.
   Source: cowork/GRT assets/variables.css
   ================================================================ */

/* ── Desktop headings ───────────────────────────────────────── */

/* DKT/H1 */
.grt-h1 {
	font-family:    var(--h1-font-family);
	font-weight:    var(--h1-font-weight);
	font-size:      var(--h1-font-size);
	line-height:    var(--h1-line-height);
	letter-spacing: var(--h1-letter-spacing);
}

/* DKT/H1_Small */
.grt-h1-small {
	font-family:    var(--h1-small-font-family);
	font-weight:    var(--h1-small-font-weight);
	font-size:      var(--h1-small-font-size);
	line-height:    var(--h1-small-line-height);
	letter-spacing: var(--h1-small-letter-spacing);
}

/* DKT/H2 */
.grt-h2 {
	font-family:    var(--h2-font-family);
	font-weight:    var(--h2-font-weight);
	font-size:      var(--h2-font-size);
	line-height:    var(--h2-line-height);
	letter-spacing: var(--h2-letter-spacing);
}

/* DKT/H3 */
.grt-h3 {
	font-family:    var(--h3-font-family);
	font-weight:    var(--h3-font-weight);
	font-size:      var(--h3-font-size);
	line-height:    var(--h3-line-height);
	letter-spacing: var(--h3-letter-spacing);
}

/* DKT/H4 */
.grt-h4 {
	font-family:    var(--h4-font-family);
	font-weight:    var(--h4-font-weight);
	font-size:      var(--h4-font-size);
	line-height:    var(--h4-line-height);
	letter-spacing: var(--h4-letter-spacing);
}

/* ── Desktop body copy ──────────────────────────────────────── */

/* DKT/Copy_Big/Regular */
.grt-copy-big,
.grt-copy-big > p {
	font-family:    var(--copy-big-font-family);
	font-weight:    var(--copy-big-font-weight);
	font-size:      var(--copy-big-font-size);
	line-height:    var(--copy-big-line-height);
	letter-spacing: var(--copy-big-letter-spacing);
}

/* DKT/Copy_Big/Bold */
.grt-copy-big-bold {
	font-family:    var(--copy-bold-font-family);
	font-weight:    var(--copy-bold-font-weight);
	font-size:      var(--copy-big-font-size);   /* big size, bold weight */
	line-height:    var(--copy-big-line-height);
	letter-spacing: var(--copy-big-letter-spacing);
}

/* DKT/Copy_Heading/Bold — 22px bold */
.grt-copy-heading {
	font-family:    var(--copy-bold-font-family);
	font-weight:    var(--copy-bold-font-weight);
	font-size:      var(--copy-heading-font-size);
	line-height:    var(--copy-big-line-height);
	letter-spacing: var(--copy-big-letter-spacing);
}

/* DKT/Copy/Regular */
.grt-copy {
	font-family:    var(--copy-font-family);
	font-weight:    var(--copy-font-weight);
	font-size:      var(--copy-font-size);
	line-height:    var(--copy-line-height);
	letter-spacing: var(--copy-letter-spacing);
}

/* DKT/Copy/Bold */
.grt-copy-bold {
	font-family:    var(--copy-bold-font-family);
	font-weight:    var(--copy-bold-font-weight);
	font-size:      var(--copy-bold-font-size);
	line-height:    var(--copy-bold-line-height);
	letter-spacing: var(--copy-bold-letter-spacing);
}

/* ── Mobile headings ────────────────────────────────────────── */

/* MBL/H1 */
.grt-mbl-h1 {
	font-family:    var(--mbl-h1-font-family);
	font-weight:    var(--mbl-h1-font-weight);
	font-size:      var(--mbl-h1-font-size);
	line-height:    var(--mbl-h1-line-height);
	letter-spacing: var(--mbl-h1-letter-spacing);
}

/* MBL/H2 */
.grt-mbl-h2 {
	font-family:    var(--mbl-h2-font-family);
	font-weight:    var(--mbl-h2-font-weight);
	font-size:      var(--mbl-h2-font-size);
	line-height:    var(--mbl-h2-line-height);
	letter-spacing: var(--mbl-h2-letter-spacing);
}

/* MBL/H3 */
.grt-mbl-h3 {
	font-family:    var(--mbl-h3-font-family);
	font-weight:    var(--mbl-h3-font-weight);
	font-size:      var(--mbl-h3-font-size);
	line-height:    var(--mbl-h3-line-height);
	letter-spacing: var(--mbl-h3-letter-spacing);
}

/* MBL/H4 */
.grt-mbl-h4 {
	font-family:    var(--mbl-h4-font-family);
	font-weight:    var(--mbl-h4-font-weight);
	font-size:      var(--mbl-h4-font-size);
	line-height:    var(--mbl-h4-line-height);
	letter-spacing: var(--mbl-h4-letter-spacing);
}

/* ── Mobile body copy ───────────────────────────────────────── */

/* MBL/Copy_Big/Regular */
.grt-mbl-copy-big {
	font-family:    var(--mbl-copy-big-font-family);
	font-weight:    var(--mbl-copy-big-font-weight);
	font-size:      var(--mbl-copy-big-font-size);
	line-height:    var(--mbl-copy-big-line-height);
	letter-spacing: var(--mbl-copy-big-letter-spacing);
}

/* MBL/Copy/Regular */
.grt-mbl-copy {
	font-family:    var(--mbl-copy-font-family);
	font-weight:    var(--mbl-copy-font-weight);
	font-size:      var(--mbl-copy-font-size);
	line-height:    var(--mbl-copy-line-height);
	letter-spacing: var(--mbl-copy-letter-spacing);
}

/* MBL/Copy/Bold */
.grt-mbl-copy-bold {
	font-family:    var(--mbl-copy-bold-font-family);
	font-weight:    var(--mbl-copy-bold-font-weight);
	font-size:      var(--mbl-copy-bold-font-size);
	line-height:    var(--mbl-copy-bold-line-height);
	letter-spacing: var(--mbl-copy-bold-letter-spacing);
}

/* MBL/Caption */
.grt-mbl-caption {
	font-family:    var(--mbl-caption-font-family);
	font-weight:    var(--mbl-caption-font-weight);
	font-size:      var(--mbl-caption-font-size);
	line-height:    var(--mbl-caption-line-height);
	letter-spacing: var(--mbl-caption-letter-spacing);
}
