more styling and js organization