Override narrow screen padding
Reformat code
Use .header to base the calculation of .project-preview dimensions
Let the cmHeader directive determine state instead of heaving it
hardcoded into the template
Move updating of the header state classes into changeState method
so that the determineState only stes controller.state

Emit the headerStateChange even only once the state class has been
assigned to header to ensure that any susequent elements are based on
the new state.