added some modularity and abstraction to the css, wip