/* ============================================================
   Számlix landing — tipográfia.

   Minden Figma text style-nak egy utility osztály felel meg, amely
   kizárólag a tokens.css --text-<stílus>-* változóira hivatkozik.
   A Figma-név → osztálynév szabály: kisbetű, „/” és szóköz helyett „-”.
     Heading/H2 44       → .text-heading-h2-44
     Body/Lead 20 Loose  → .text-body-lead-20-loose
   ============================================================ */

body {
  font-family: var(--font-family);
  font-size: var(--text-body-16-size);
  line-height: var(--text-body-16-line);
  font-weight: var(--text-body-16-weight);
  letter-spacing: var(--text-body-16-tracking);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* A címsorok megjelenését mindig utility osztály adja, nem a tag. */
h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

.text-display-78 {
  font-size: var(--text-display-78-size);
  line-height: var(--text-display-78-line);
  font-weight: var(--text-display-78-weight);
  letter-spacing: var(--text-display-78-tracking);
}

.text-display-60 {
  font-size: var(--text-display-60-size);
  line-height: var(--text-display-60-line);
  font-weight: var(--text-display-60-weight);
  letter-spacing: var(--text-display-60-tracking);
}

.text-display-56 {
  font-size: var(--text-display-56-size);
  line-height: var(--text-display-56-line);
  font-weight: var(--text-display-56-weight);
  letter-spacing: var(--text-display-56-tracking);
}

.text-heading-h2-44 {
  font-size: var(--text-heading-h2-44-size);
  line-height: var(--text-heading-h2-44-line);
  font-weight: var(--text-heading-h2-44-weight);
  letter-spacing: var(--text-heading-h2-44-tracking);
}

.text-heading-36 {
  font-size: var(--text-heading-36-size);
  line-height: var(--text-heading-36-line);
  font-weight: var(--text-heading-36-weight);
  letter-spacing: var(--text-heading-36-tracking);
}

.text-heading-30 {
  font-size: var(--text-heading-30-size);
  line-height: var(--text-heading-30-line);
  font-weight: var(--text-heading-30-weight);
  letter-spacing: var(--text-heading-30-tracking);
}

.text-heading-h3-28 {
  font-size: var(--text-heading-h3-28-size);
  line-height: var(--text-heading-h3-28-line);
  font-weight: var(--text-heading-h3-28-weight);
  letter-spacing: var(--text-heading-h3-28-tracking);
}

.text-title-24 {
  font-size: var(--text-title-24-size);
  line-height: var(--text-title-24-line);
  font-weight: var(--text-title-24-weight);
  letter-spacing: var(--text-title-24-tracking);
}

.text-title-24-semibold {
  font-size: var(--text-title-24-semibold-size);
  line-height: var(--text-title-24-semibold-line);
  font-weight: var(--text-title-24-semibold-weight);
  letter-spacing: var(--text-title-24-semibold-tracking);
}

.text-title-20-semibold {
  font-size: var(--text-title-20-semibold-size);
  line-height: var(--text-title-20-semibold-line);
  font-weight: var(--text-title-20-semibold-weight);
  letter-spacing: var(--text-title-20-semibold-tracking);
}

.text-body-lead-20 {
  font-size: var(--text-body-lead-20-size);
  line-height: var(--text-body-lead-20-line);
  font-weight: var(--text-body-lead-20-weight);
  letter-spacing: var(--text-body-lead-20-tracking);
}

.text-body-lead-20-loose {
  font-size: var(--text-body-lead-20-loose-size);
  line-height: var(--text-body-lead-20-loose-line);
  font-weight: var(--text-body-lead-20-loose-weight);
  letter-spacing: var(--text-body-lead-20-loose-tracking);
}

.text-body-18 {
  font-size: var(--text-body-18-size);
  line-height: var(--text-body-18-line);
  font-weight: var(--text-body-18-weight);
  letter-spacing: var(--text-body-18-tracking);
}

.text-body-16 {
  font-size: var(--text-body-16-size);
  line-height: var(--text-body-16-line);
  font-weight: var(--text-body-16-weight);
  letter-spacing: var(--text-body-16-tracking);
}

.text-body-16-tight {
  font-size: var(--text-body-16-tight-size);
  line-height: var(--text-body-16-tight-line);
  font-weight: var(--text-body-16-tight-weight);
  letter-spacing: var(--text-body-16-tight-tracking);
}

.text-body-15 {
  font-size: var(--text-body-15-size);
  line-height: var(--text-body-15-line);
  font-weight: var(--text-body-15-weight);
  letter-spacing: var(--text-body-15-tracking);
}

.text-body-15-semibold {
  font-size: var(--text-body-15-semibold-size);
  line-height: var(--text-body-15-semibold-line);
  font-weight: var(--text-body-15-semibold-weight);
  letter-spacing: var(--text-body-15-semibold-tracking);
}

.text-body-14 {
  font-size: var(--text-body-14-size);
  line-height: var(--text-body-14-line);
  font-weight: var(--text-body-14-weight);
  letter-spacing: var(--text-body-14-tracking);
}

.text-body-14-medium {
  font-size: var(--text-body-14-medium-size);
  line-height: var(--text-body-14-medium-line);
  font-weight: var(--text-body-14-medium-weight);
  letter-spacing: var(--text-body-14-medium-tracking);
}

.text-label-13-semibold {
  font-size: var(--text-label-13-semibold-size);
  line-height: var(--text-label-13-semibold-line);
  font-weight: var(--text-label-13-semibold-weight);
  letter-spacing: var(--text-label-13-semibold-tracking);
}

.text-caption-12 {
  font-size: var(--text-caption-12-size);
  line-height: var(--text-caption-12-line);
  font-weight: var(--text-caption-12-weight);
  letter-spacing: var(--text-caption-12-tracking);
}

.text-overline-12 {
  font-size: var(--text-overline-12-size);
  line-height: var(--text-overline-12-line);
  font-weight: var(--text-overline-12-weight);
  letter-spacing: var(--text-overline-12-tracking);
}

.text-overline-10 {
  font-size: var(--text-overline-10-size);
  line-height: var(--text-overline-10-line);
  font-weight: var(--text-overline-10-weight);
  letter-spacing: var(--text-overline-10-tracking);
}
