Es que nadie ha dicho que tenga porqué ser una palabra. Igual que cuando programas en Ruby, Python, C++ o o que sea, se supone que tus variables, clases, funciones y demás sean descriptivas en función de lo que son o lo que hacen. Pues con las clases e identificadores en CSS (o realmente HTML) es lo mismo:
    
Pero tal vez no tenga porqué ser así, si no:    
Puedes tener otra clase llamada así en otro lugar:    
Y obviamente ambos tener estilos diferentes. 
Los preprocesadores (SASS uso yo) ayudan mucho a tener un código extremadamente ordenado, incluso en diferentes archivos que luego se compilan en uno solo (o no), porque el orden que van a tener será bastante similar al código HTML. 
Por ejemplo en SASS:    
Código CSS:
Ver original#producto_destacado
  border: 2px solid red
 
    .descripcion
      padding: 10px
      background: $color_principal
      color: darken($color_principal,30)
 
.producto_nuevo
  float: left
  width: 50%
 
    .descripcion
      padding: 5px
      font-size: .8rem