/**
 * AssetZA typography — doc 002 Global Design Principles
 * H1 44–56px · H2 32–40px · H3 24–28px · H4 20px · Body 16–18px · Small 13–14px
 */

body.assetza-site {
	font-family: var(--assetza-font-ui);
	font-size: var(--assetza-font-size-body);
	line-height: var(--assetza-line-height-body);
	color: var(--assetza-color-ink);
}

/* Elementor headings */
body.assetza-elementor-page .elementor-widget-heading .elementor-heading-title {
	font-family: var(--assetza-font-ui);
	line-height: var(--assetza-line-height-heading);
}

body.assetza-elementor-page .elementor-widget-heading h1.elementor-heading-title {
	font-size: var(--assetza-font-size-h1);
	font-weight: 700;
	line-height: var(--assetza-line-height-heading-tight);
	letter-spacing: -0.02em;
}

body.assetza-elementor-page .elementor-widget-heading h2.elementor-heading-title {
	font-size: var(--assetza-font-size-h2);
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: -0.015em;
}

body.assetza-elementor-page .elementor-widget-heading h3.elementor-heading-title {
	font-size: var(--assetza-font-size-h3);
	font-weight: 600;
	line-height: 1.3;
}

body.assetza-elementor-page .elementor-widget-heading h4.elementor-heading-title {
	font-size: var(--assetza-font-size-h4);
	font-weight: 600;
	line-height: 1.35;
}

body.assetza-elementor-page .elementor-widget-heading h5.elementor-heading-title,
body.assetza-elementor-page .elementor-widget-heading h6.elementor-heading-title {
	font-size: var(--assetza-font-size-body-sm);
	font-weight: 600;
	line-height: 1.4;
}

/* Elementor body copy */
body.assetza-elementor-page .elementor-widget-text-editor,
body.assetza-elementor-page .elementor-widget-text-editor p,
body.assetza-elementor-page .elementor-widget-html {
	font-family: var(--assetza-font-ui);
	font-size: var(--assetza-font-size-body-sm);
	line-height: var(--assetza-line-height-body);
}

body.assetza-home .elementor-widget-html {
	font-size: var(--assetza-font-size-body-sm);
}

body.assetza-elementor-page .assetza-stats-ring__item .elementor-widget-html,
body.assetza-elementor-page .assetza-stats-ring__item .elementor-widget-text-editor,
body.assetza-elementor-page .assetza-stats-ring__item .elementor-widget-text-editor p {
	font-size: inherit;
	line-height: inherit;
}

body.assetza-elementor-page .elementor-widget-text-editor p {
	margin-bottom: 0.75em;
}

body.assetza-elementor-page .elementor-widget-text-editor p:last-child {
	margin-bottom: 0;
}

/* HTML widget components */
body.assetza-elementor-page .assetza-card h3 {
	font-size: var(--assetza-font-size-h4);
}

body.assetza-elementor-page .assetza-card p,
body.assetza-elementor-page .assetza-ealm-card__list li,
body.assetza-elementor-page .assetza-ealm-card__lead {
	font-size: var(--assetza-font-size-body-sm);
	line-height: var(--assetza-line-height-body);
}

body.assetza-elementor-page .assetza-ealm-card__title {
	font-size: var(--assetza-font-size-h3);
}

body.assetza-elementor-page .assetza-ealm-card__footnote {
	font-size: var(--assetza-font-size-caption);
}

body.assetza-elementor-page .assetza-card--link {
	font-size: var(--assetza-font-size-body-sm);
}

body.assetza-elementor-page .assetza-checklist {
	font-size: var(--assetza-font-size-body-sm);
}

body.assetza-elementor-page .assetza-trust-bar {
	font-size: var(--assetza-font-size-body);
}

body.assetza-elementor-page .assetza-stat-label {
	font-size: var(--assetza-font-size-body-sm);
}

body.assetza-elementor-page .assetza-stat-value {
	font-size: clamp(1.75rem, 2vw + 1rem, 2.25rem);
}

body.assetza-elementor-page .assetza-faq summary {
	font-size: var(--assetza-font-size-body);
}

body.assetza-elementor-page .assetza-faq p {
	font-size: var(--assetza-font-size-body-sm);
	line-height: var(--assetza-line-height-body);
}

body.assetza-elementor-page .assetza-lead,
body.assetza-elementor-page .assetza-lead--on-dark,
body.assetza-elementor-page .assetza-section-lead {
	font-size: var(--assetza-font-size-body);
	line-height: var(--assetza-line-height-body);
}

body.assetza-elementor-page .assetza-lifecycle__label {
	font-size: var(--assetza-font-size-body-sm);
}

body.assetza-elementor-page .assetza-btn,
body.assetza-elementor-page a.assetza-btn {
	font-size: var(--assetza-font-size-ui);
}
