Чтобы не размазывать логику и стили по проекту и программировать более сложное поведение без инлайн стилей.
Ну и чтобы уйти от конфликтов имен и костылей вроде бэма в именах классов
Первое решается и без стилей в js / cljs, как раз "костылями" вроде бэма; второе — не знаю, какое там сложное поведение реализовать можно?