JavaScript accordion
Some small changes I'd recommend listed below:

D.R.Y.

Why don't you call event.preventDefault before your control statement since it will be called in both the if and the else case?

Avoid doubling up on lookups

I am not very experienced in jQuery, but can't you make some if checks not double up on lookups?

var liGroup = $groupSiblings.find('li')
if (liGroup.hasClass('is-expanded')) {
     liGroup.removeClass('is-expanded');


Also check the specs on removeClass()..perhaps you can call removeClass() without checking hasClass?

Formatting/Readability

Your code is difficult to read without more formatting. For example, it's not clear which if matches up with the else from skimming the code. It shouldn't be necessary for a reader to parse parens/brackets to figure out what the if...else pairing is.

Also a few more comments would be helpful. For example, comments describing your control statement branching in a few words would be welcome.