I am taking a guess here, but it could have to do with the entire code being within the <IfModule mod_rewrite.c> block. Which if the first is the case, then the entire block may be being skipped over, ignoring any redirect. This makes sense because the HTTP isn’t changing to HTTPS.
Also, I suggest adding “# END SECTION” to each # section. There are some plugins that change the .htaccess, and (as far as I know) they add code based on defined # sections.
I am not sure what is going on with this rule:
RewriteRule ^index\.php$ - [L]
It’s not being impacted by any condition above it, so it could be causing some problems (esp since it’s flagged as Last). Make sure that those lines are the WordPress default code (I don’t know what that is, as I use optimized code instead, so this may in fact be right, idk).
# BEGIN CRISCMAIA CUSTOM
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
# END CRISCMAIA CUSTOM
# BEGIN WordPress
RewriteEngine on
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress