/*
 * Fluid font sizes as module CSS classes (Advanced → CSS-ID & Klassen → CSS-Klasse).
 *
 * Divi's font size fields can hold clamp() on the website (see includes/RangeValues.php),
 * but the Visual Builder drops such values and falls back to the theme sizes. These
 * classes work in both, so the font size fields stay empty and a module gets e.g.
 * "retm-fs-text-l retm-fs-h1-2xl".
 *
 * Targets: text (module text), h1 / h2 (headings in a text module),
 * divider (Supreme text divider title), reveal (Supreme block reveal title).
 *
 * The heading rules need .et_pb_module to beat the theme's ".et_pb_column_1_3 h1" etc.
 * Reveal stays below Divi's own module CSS, so tablet/phone sizes set in the module win;
 * on the other targets the class wins over the module's font size fields.
 */

:root {
	--retm-fs-xs: clamp(1.15rem, 0.95rem + 0.6vw, 1.5rem);
	--retm-fs-s: clamp(1.25rem, 1rem + 0.5vw, 1.5rem);
	--retm-fs-m: clamp(1.3rem, 1rem + 0.6vw, 1.6rem);
	--retm-fs-l: clamp(1.35rem, 1rem + 0.8vw, 1.7rem);
	--retm-fs-xl: clamp(1.5rem, 1rem + 1.1vw, 2rem);
	--retm-fs-2xl: clamp(2rem, 1.25rem + 1.9vw, 3rem);
	--retm-fs-3xl: clamp(1.6rem, 0.5rem + 2.6vw, 3.75rem);
	--retm-fs-4xl: clamp(2.5rem, 1.5rem + 2.6vw, 4rem);
}

/* Module text */
.et_pb_module.retm-fs-text-xs { font-size: var(--retm-fs-xs); }
.et_pb_module.retm-fs-text-s { font-size: var(--retm-fs-s); }
.et_pb_module.retm-fs-text-m { font-size: var(--retm-fs-m); }
.et_pb_module.retm-fs-text-l { font-size: var(--retm-fs-l); }
.et_pb_module.retm-fs-text-xl { font-size: var(--retm-fs-xl); }
.et_pb_module.retm-fs-text-2xl { font-size: var(--retm-fs-2xl); }
.et_pb_module.retm-fs-text-3xl { font-size: var(--retm-fs-3xl); }
.et_pb_module.retm-fs-text-4xl { font-size: var(--retm-fs-4xl); }

/* H1 in a text module */
.et_pb_module.retm-fs-h1-xs h1 { font-size: var(--retm-fs-xs); }
.et_pb_module.retm-fs-h1-s h1 { font-size: var(--retm-fs-s); }
.et_pb_module.retm-fs-h1-m h1 { font-size: var(--retm-fs-m); }
.et_pb_module.retm-fs-h1-l h1 { font-size: var(--retm-fs-l); }
.et_pb_module.retm-fs-h1-xl h1 { font-size: var(--retm-fs-xl); }
.et_pb_module.retm-fs-h1-2xl h1 { font-size: var(--retm-fs-2xl); }
.et_pb_module.retm-fs-h1-3xl h1 { font-size: var(--retm-fs-3xl); }
.et_pb_module.retm-fs-h1-4xl h1 { font-size: var(--retm-fs-4xl); }

/* H2 in a text module */
.et_pb_module.retm-fs-h2-xs h2 { font-size: var(--retm-fs-xs); }
.et_pb_module.retm-fs-h2-s h2 { font-size: var(--retm-fs-s); }
.et_pb_module.retm-fs-h2-m h2 { font-size: var(--retm-fs-m); }
.et_pb_module.retm-fs-h2-l h2 { font-size: var(--retm-fs-l); }
.et_pb_module.retm-fs-h2-xl h2 { font-size: var(--retm-fs-xl); }
.et_pb_module.retm-fs-h2-2xl h2 { font-size: var(--retm-fs-2xl); }
.et_pb_module.retm-fs-h2-3xl h2 { font-size: var(--retm-fs-3xl); }
.et_pb_module.retm-fs-h2-4xl h2 { font-size: var(--retm-fs-4xl); }

/* Supreme text divider title */
.et_pb_module.retm-fs-divider-xs .dsm-text-divider-header { font-size: var(--retm-fs-xs); }
.et_pb_module.retm-fs-divider-s .dsm-text-divider-header { font-size: var(--retm-fs-s); }
.et_pb_module.retm-fs-divider-m .dsm-text-divider-header { font-size: var(--retm-fs-m); }
.et_pb_module.retm-fs-divider-l .dsm-text-divider-header { font-size: var(--retm-fs-l); }
.et_pb_module.retm-fs-divider-xl .dsm-text-divider-header { font-size: var(--retm-fs-xl); }
.et_pb_module.retm-fs-divider-2xl .dsm-text-divider-header { font-size: var(--retm-fs-2xl); }
.et_pb_module.retm-fs-divider-3xl .dsm-text-divider-header { font-size: var(--retm-fs-3xl); }
.et_pb_module.retm-fs-divider-4xl .dsm-text-divider-header { font-size: var(--retm-fs-4xl); }

/* Supreme block reveal title (below Divi's ".dsm_block_reveal_text_0.dsm_block_reveal_text …") */
.retm-fs-reveal-xs .dsm_block_reveal_text_header { font-size: var(--retm-fs-xs); }
.retm-fs-reveal-s .dsm_block_reveal_text_header { font-size: var(--retm-fs-s); }
.retm-fs-reveal-m .dsm_block_reveal_text_header { font-size: var(--retm-fs-m); }
.retm-fs-reveal-l .dsm_block_reveal_text_header { font-size: var(--retm-fs-l); }
.retm-fs-reveal-xl .dsm_block_reveal_text_header { font-size: var(--retm-fs-xl); }
.retm-fs-reveal-2xl .dsm_block_reveal_text_header { font-size: var(--retm-fs-2xl); }
.retm-fs-reveal-3xl .dsm_block_reveal_text_header { font-size: var(--retm-fs-3xl); }
.retm-fs-reveal-4xl .dsm_block_reveal_text_header { font-size: var(--retm-fs-4xl); }
