LESS and Sass (and similar solutions) have saved CSS for three reasons: separation, abstraction, and cascading. While I welcome them, CSS still has other problems which I believe can be solved.
According to the requirements proposed by Abelson and Sussman, CSS does not provide adequate means of combination and abstraction to be considered a powerful language.
LESS has obviously better forms of abstraction and combination than CSS. It has recursive style definitions, which is enough to consider it a "powerful language".
Priyatam Mudivarti is giving a talk about grid systems in Garden.
Priyatam Mudivarti will talk about generating CSS with Garden.
One reason to separate style from content is to reuse HTML or CSS. Ultimately, we would like a solution where we can reuse both.