The configuration options in Splunk to customize the login page are not sufficient? You want to use an arbitrary HTML page?

This static login page can be used to customize the login experience for Splunk (Tested with Enterprise 8.2.3):

To activate it, you have to copy this file to $SPLUNK_HOME/share/splunk/search_mrsparkle/exposed/login.html (it will be served by Splunk Web as a static file) and add the following entry to the settings stanza in the web.conf:

login_content = <script>window.location.replace('/static/login.html?cval='+__splunkd_partials__['/services/session'].entry[0].content.cval)</script>

This JS snippet automatically redirects every login attempt to this static HTML page and injects the necessary cval value for authentication.