CSSWizardy say it better than me: "BEM – meaning block, element, modifier – is a front-end naming methodology thought up by the guys at Yandex. It is a smart way of naming your CSS classes to give them more transparency and meaning to other developers. They are far more strict and informative, which makes the BEM naming convention ideal for teams of developers on larger projects that might last a while." http://csswizardry.com/2013/01/mindbemding-getting-your-head...
But basically: agreed rules for how to name and format css to make it maintainable and performant in big projects.
Essentially, the BEM website is the worst possible rule for learning the underlying principles of BEM (ie what makes it good), instead it's all about their tool that attempts to manage it all for you.
But basically: agreed rules for how to name and format css to make it maintainable and performant in big projects.