/* ─── Typography presets — has-*-font-size klasy ─────────
   ŹRÓDŁO PRAWDY dla wszystkich powtarzalnych typografii.

   Każdy fontSize preset z theme.json ma TUTAJ kompletną definicję:
   size + line-height + letter-spacing (+ opcjonalnie weight/family/
   transform). Sam font-size dostaje WP core przez .has-X-font-size.
   Tu doprecyzowujemy resztę props.

   ZASADA: SCSS patternów / sekcji / blocków NIE deklaruje
   font-size, line-height, font-weight, letter-spacing ani
   font-family. Cała typografia idzie przez .has-<slug>-font-size,
   którą Gutenberg dodaje gdy block comment ma {"fontSize":"<slug>"}.
   Default per semantyczny level (h1..h6) dostarcza theme.json
   elements.h1..h6.

   Color NIE jest tutaj — color zawsze przez textColor preset
   w block comment ({"textColor":"primary"}). */

/* ============================================================
   HEADINGS — heading-1 .. heading-6
   ============================================================ */

.has-heading-1-font-size {
    line-height: 1.05;
    letter-spacing: -0.035em;
    font-weight: 800;
}

.has-heading-2-font-size {
    line-height: 1.1;
    letter-spacing: -0.02em;
    font-weight: 800;
}

.has-heading-3-font-size {
    line-height: 1.2;
    letter-spacing: -0.01em;
    font-weight: 700;
}

.has-heading-4-font-size {
    line-height: 1.25;
    font-weight: 700;
}

.has-heading-5-font-size {
    line-height: 1.3;
    font-weight: 600;
}

.has-heading-6-font-size {
    line-height: 1.35;
    font-weight: 600;
}

/* ============================================================
   DISPLAY — gigant tagline (hero, 404)
   ============================================================ */

.has-display-font-size {
    line-height: 1;
    letter-spacing: -0.04em;
    font-weight: 800;
    margin: 0;
    font-family: var(--wp--preset--font-family--heading);
}

/* ============================================================
   LEDE — intro paragraph pod headingiem sekcji
   ============================================================ */

.has-lede-font-size {
    line-height: 1.55;
    font-family: var(--wp--preset--font-family--body);
    font-weight: 400;
}

/* ============================================================
   BODY — domyślny text + warianty
   ============================================================ */

.has-text-font-size {
    line-height: 1.65;
    font-family: var(--wp--preset--font-family--body);
    font-weight: 400;
}

.has-text-bigger-font-size {
    line-height: 1.5;
    font-family: var(--wp--preset--font-family--body);
    font-weight: 600;
}

.has-text-small-font-size {
    line-height: 1.55;
    font-family: var(--wp--preset--font-family--body);
    font-weight: 400;
}

/* EYEBROW — usunięte. Cała typo + color jest w atomie .kordit-eyebrow
   (styles/atoms/_eyebrow.scss) jako jedna klasa. */

/* ============================================================
   <em> w headingach — global secondary akcent (accent-2 = red).
   Każdy <em> wewnątrz h1..h6 lub .has-heading-*-font-size
   jest renderowany w accent-2 bez kursywy.
   ============================================================ */

h1,
h2,
h3,
h4,
h5,
h6,
.wp-block-heading,
.has-heading-1-font-size,
.has-heading-2-font-size,
.has-heading-3-font-size,
.has-heading-4-font-size,
.has-heading-5-font-size,
.has-heading-6-font-size,
.has-display-font-size {
    em {
        font-style: normal;
        color: var(--accent-2);
    }
}