Почти понял "удобство" такого меню, пока смотрел. Курсор то и дело "вылетал" за пределы области наведения и меню закрывалось.
1. Высота 100% работает по-разному в зависимости от, того в каком типе контейнера лежит. В Вашем случае достаточно ограничить контейнер через
overflow: hidden
у
.global-catalogue-menu-wrapper
и выставить
height: 100%
для внутренних оболочек. Или использовать flex/grid с настройкой высоты уже из них.
2. Скролл огромный потому, что у вложенных менюшек высота 100% установлена (
.submenu-wrapper
), если её убрать, то скроллу нормально. Ну кроме таких случаев:
Чтобы первый уровень меню переставал скроллится можно попробовать задать ему
position: sticky
к верху, но тогда не сможете проскролить вложенные менюшки.
Для удобного позиционирования можно попробовать заюзать
floating-ui.
Ну и либо
overscroll-behavior
настройте, либо уберите скролл у body, а то скроллится и то, что под меню.