Потому что z-index работает не так, как вам хочется. Читайте про контекст наложения.
Чтобы header-bottom провалился под родителя, ему нужно задать z-index: -1, а у header__container его совсем убрать.
Но что-то я подозреваю, всё должно быть совсем не так. Но макета нет, так что не ясно.
У тебя header-bottom находится внутри header__container. Либо вынеси его от туда либо, как я понял ты хочешь чтобы header-top перекрывал header-bottom, в этом случает тебе z-index надо ставить для header-top а не для header__container