Yes overflow:hidden would have worked or so would a clear:div. (Anything with real content that has cleared the float.)
And as far as webkit is concerned, is it automatically clearing them for me? Otherwise, I'm not sure why it does not exhibit the same layout as FF.
Webkit isn't clearing the floats as such but because backtotop is set to clear:both then it should clear the floats above and its top margin automatically increased to push it below any floats.
It seems that Firefox is buggy and confused with this scenario and exhibits a collapsing margin bug (it always did have problems with collapsing margins and clearing empty content which is why the old clearfix hack had a dot inside the content property and why a div clearer needed to be height:1px to work - maybe its still the remnants of this old bug although the other issues are fixed these days).