My Neovim LSP error message doesn't have a red color

I am on Windows 10 and use the new Windows Terminal + NeoVim, my config is similar to yours with the same colorscheme. I fixed the color issue by adding this to my 'init.vim' file, before setting the colorscheme:

set termguicolors

The following options were recommended as a solution in different GitHub discussions, but they had no effect for me whatsoever:

let g:gruvbox_contrast_dark = 'hard'

if exists('+termguicolors')
    let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum"
    let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum"
endif

let g:gruvbox_invert_selection='0'
set background=dark

For future reference, the old answers will probably fail, now there are more organized highlight groups for you to customize the colors of those, for example:

highlight LspDiagnosticsDefaultError guifg=#FF0000

For more detailed information read :help lsp-highlight-diagnostics and :help highlight.

Edit: Notice this needs to go after more general colorscheme settings such as colorscheme whatever that might overwrite your highlight