Я немного подделал ваш ответ под себя и у меня получилось background: url('source/img/background.png');.
"../img/background.jpg"
Только что исправил проблему вложенным дивом, т.е. вложил блок с карточками в другой див)
2. Продолжим тем, что даже если бы это была таблица в ее привычном понимании - запрещать верстать ее блоками для кастома - дебилизм.
1. Ну начнем с того, что это не таблица.
Я вообще люблю такие вопросы. Сначала спросить одно, а потом допридумывать какие-то условия.
В смысле двойной градиент, чтобы внизу темным было?
Ну задайте ему bg size, чтобы не на всю ширину был, а на сколько вам нужно.