В папке themes есть папка layot, в ней файл layout.ejs в который подключаются основная конструкция, дальше все происходите в <%- body %> куда уже в зависимости от подпапки из source включаются остальные файлы из папки layout
ЗЫ: это если я правильно понял, при беглом просмотре.
Вам нужен modernizr дальше уже надо делать тесты, я честно не знаю, выводится ли там версия safari в классах, однако можно выдергивать версию iOS парся user-agent.
Если вам нужен поиск по тегам/ключевым словам, то есть Sphinx, если нужен поиск по картинкам есть TinEye (вроде как stand alone они не доступны только по API).
Так вы же сами написали и нарисовали, что вам надо сделать.
Под каждым спойлером отдельная строка c ячейкой и нужным colspan - если спойлер закрыт, то она нулевой высоты.
Зачем? Возьмите фреймворк и сделайте на его базе CMS под себя.
Если принципиально сам, то начинать надо с back-end, так как сделав front-end, допустим какую нибудь форму, или ajax, вы куда запрос будете слать?