/* Local24 platform typography. Customer page content keeps its own font pipeline. */
:root {
	--l24-font-size-display: clamp(36px, calc(23px + 2.45vw), 48px);
	--l24-font-size-h1: clamp(32px, calc(22px + 1.75vw), 40px);
	--l24-font-size-h2: clamp(26px, calc(21px + 0.9vw), 30px);
	--l24-font-size-h3: clamp(20px, calc(17.5px + 0.45vw), 22px);
	--l24-font-size-h4: 18px;
	--l24-font-size-lead: clamp(17px, calc(16px + 0.2vw), 18px);
	--l24-font-size-body: 16px;
	--l24-font-size-body-small: 14px;
	--l24-font-size-label: 14px;
	--l24-font-size-caption: 12px;
	--l24-line-height-display: 1.1;
	--l24-line-height-h1: 1.1;
	--l24-line-height-h2: 1.18;
	--l24-line-height-h3: 1.25;
	--l24-line-height-h4: 1.3;
	--l24-line-height-lead: 1.4;
	--l24-line-height-body: 1.5;
	--l24-line-height-small: 1.45;
	--l24-font-weight-regular: 400;
	--l24-font-weight-medium: 500;
	--l24-font-weight-semibold: 600;
	--l24-font-weight-bold: 700;
}

.l24-ui {
	font-family: var(--local24-ui-font, Inter, ui-sans-serif, system-ui, sans-serif);
	font-size: var(--l24-font-size-body);
	line-height: var(--l24-line-height-body);
}

.l24-type-display,
.l24-type-h1,
.l24-type-h2,
.l24-type-h3,
.l24-type-h4,
.l24-type-lead,
.l24-type-body,
.l24-type-body-small,
.l24-type-label,
.l24-type-caption {
	font-family: var(--local24-ui-font, Inter, ui-sans-serif, system-ui, sans-serif);
}

.l24-type-display { font-size: var(--l24-font-size-display); line-height: var(--l24-line-height-display); font-weight: var(--l24-font-weight-bold); }
.l24-type-h1 { font-size: var(--l24-font-size-h1); line-height: var(--l24-line-height-h1); font-weight: var(--l24-font-weight-bold); }
.l24-type-h2 { font-size: var(--l24-font-size-h2); line-height: var(--l24-line-height-h2); font-weight: var(--l24-font-weight-bold); }
.l24-type-h3 { font-size: var(--l24-font-size-h3); line-height: var(--l24-line-height-h3); font-weight: var(--l24-font-weight-bold); }
.l24-type-h4 { font-size: var(--l24-font-size-h4); line-height: var(--l24-line-height-h4); font-weight: var(--l24-font-weight-semibold); }
.l24-type-lead { font-size: var(--l24-font-size-lead); line-height: var(--l24-line-height-lead); font-weight: var(--l24-font-weight-regular); }
.l24-type-body { font-size: var(--l24-font-size-body); line-height: var(--l24-line-height-body); font-weight: var(--l24-font-weight-regular); }
.l24-type-body-small { font-size: var(--l24-font-size-body-small); line-height: var(--l24-line-height-small); font-weight: var(--l24-font-weight-regular); }
.l24-type-label { font-size: var(--l24-font-size-label); line-height: var(--l24-line-height-small); font-weight: var(--l24-font-weight-semibold); }
.l24-type-caption { font-size: var(--l24-font-size-caption); line-height: var(--l24-line-height-small); font-weight: var(--l24-font-weight-regular); }
