I want to vertically align pseudo-element li:before, without using margin, I've tried to include vertical-align: middle; in the ul.nav-menu-list li:hover:before, .nav-menu-list li:focus:before, but it's not working.
Bellow is my code or JSFiddle here:
.nav-menu-list>li>a {
    font-family: 'Pribambas', Helvetica, Roboto, Arial, sans-serif;
    font-size: 24px;
    font-weight: normal;
    line-height: normal;
}
ul.nav-menu-list li a {
    border-bottom: none;
    padding-left: 60px;
    color: #fff;
}
ul.nav-menu-list li:hover:before, .nav-menu-list li:focus:before {
    content: '-';
    display: block;
    width: 15px;
    height: 3px;
    background-color: #fff;
    clear: both;
    vertical-align: middle;
}
ul.nav-menu-list li a:hover, ul.nav-menu-list li a:focus {
    background-color: transparent;
    color: #a2a2a2;
}
 
     
     
     
    