style with css, more semantic html, move js into separate file