Apparently the problem comes from the page.data and seems to be a bug (posted here and here.
Using data.personalMessage
message instead of page.data.personalMessage
is both a workaround and a better practice.
//+page.svelte
<script>
const { data } = $props();
</script>
<TypewriterEffect>
{@html data.personalMessage}
</TypewriterEffect>
Thanks to @brunnerh for the solution.