Elementor loads custom fonts through @font-face rules which reference files in the uploads folder. When the browser cannot retrieve the files, it falls back to the default system font.
The failure usually stems from URL mismatches, security blocks, or missing files. The editor may still show the font because it uses a local preview, but the front‑end relies on the generated CSS and the actual file location.