got it mostly there, just some buggy hover states