Rewrite the HTML markup of wp-login.php

It’s not a good idea to customize directly the login page because it contains lots of important mechanisms that is better to keep working.

Even the plugins that customize the login page (A5 Custom Login Page and Custom Login for example) don’t let you change the semantic structure of the page, but just take action to some graphic elements (colors, background, etc.)

So I would suggest you to change your login page via css, using the classes and the identifiers defined by wordpress and listed in the Customizing the Login Form page:

body.login {}
body.login div#login {}
body.login div#login h1 {}
body.login div#login h1 a {}
body.login div#login form#loginform {}
body.login div#login form#loginform p {}
body.login div#login form#loginform p label {}
body.login div#login form#loginform input {}
body.login div#login form#loginform input#user_login {}
body.login div#login form#loginform input#user_pass {}
body.login div#login form#loginform p.forgetmenot {}
body.login div#login form#loginform p.forgetmenot input#rememberme {}
body.login div#login form#loginform p.submit {}
body.login div#login form#loginform p.submit input#wp-submit {}
body.login div#login p#nav {}
body.login div#login p#nav a {}
body.login div#login p#backtoblog {}
body.login div#login p#backtoblog a {}

If all this still does not distract you from your purpose, you can always change the file wp-login.php into your root (I repeat: don’t do it!)