Ширина слайда рассчитывается исходя из свободного пространства деленного на кол-во показываемых слайдов, если хотите использовать плавающую ширину добавьте в инициализацию слайдера variableWidth: true
Чтобы слайдер нормально работал не надо переделывать слайды, надо внутри слайдов вставлять свои блоки и там их крутить как захочется. Но если уж очень надо навешать костылей, то в размере надо учитывать отступы:
$(".slider").slick('setPosition');
и
$('.slider').slick('reinit');
еще можно удалить $('.slider').slick('unslick') и создать заново. Но лучше всего setPosition
Потому что окно изначально скрыто и слик рассчитал размеры равные 0, чтобы он нормально отображался в модалке, нужно после вызова модалки обновить позицию слайдера: $(".slider").slick('setPosition');