Nel codice HTML hai un <div> in piu`, che crea confusione.
Il <div> che racchiude l'immagine puoi toglierlo.

In alternativa, il float devi darlo al <div>, non all'immagine che ci sta dentro.