Если absolute применить то он уедет, без скриптов можно так сделать?
Можно поднять его, изменив z-index, тогда не должно уехать. Ну и тень сделать box-shadow, это создаст иллюзию того что блок выше всего контента. Без JS можно обойтись.
Возьмите мою сборку ну или посмотрите как устроено и соберите свою на ее основе. И звездочку не забудьте поставить мне на гитхабе )). Собрал на основе webpack/pug/stylus/babel/autoprefixer, в общем все на острие технологий.
Можно сверстать прямо, затем повернуть внутри body, при помощи transform: rotate(n deg) на нужный угол а градиент наложить сверху через псевдоэлемент after
Полосы прокрутки очень плохо кастомизируются. В разных браузерах они будут выглядеть по разному. Нужно использовать виртуальные скролбары. К сожалению без js тут не обойтись