While Leo’s solution will work, it messes up the mobile menu.
A better way would be to apply ‘text-align: right’ to the ‘.main-nav’ ul, de-float the last 2 items and remove the padding from the last item’s anchor.
This css also lets you put the items in the correct display order, with the search item BEFORE the contact item in the menu editor.
.main-navigation .main-nav ul {
text-align: right;
}
.main-navigation .main-nav ul li:nth-last-child(1),
.main-navigation .main-nav ul li:nth-last-child(2) {
float: none;
display: inline-block;
}
.main-navigation .main-nav ul li:last-child a {
padding-right: 0;
}
You have a few un-needed css classes which are being ignored/overridden so you can safely remove all traces of both ‘menu-item-float-right’ and ‘main-nav-no-pad-right’ from your menu items and css if you use the above css code.