maralov, если вы перестанете считать от фиксированного container, а сделаете релативом container-fluid или как он там по-бутстраповски, то жить станет легче.
В вашем случае придется считать не через %, а через vw. И потом обрезать лишнее.
0. catalog пишется так
1. В js лучше вообще ничего не стилизовать,а манипулировать классами. $(this).toggleClass("active")
2. В CSS .active::before {content:"✓"}
Возможно дело:
1. В специфичности и где-то ваш селектор перебивается.
2. В ошибке в файле, например, не хватает ; или скобки.
НО делаете вы что-то очень странное.
Во-первых, высота в вебе обычно не задается.
Во-вторых, есть пропорции у блока.
В-третьих, есть относительные единицы измерения vw, vh, % и т.д.
Картинки точно также повесите абсолютом с z-index -1.