Wait wait wait...
First of all I am Colombian and I don't call myself Spanish.
Hispanic is a term to refer to anything associated with the ancient Hispania (Spain), we happen to be related to them and we cannot change the fact that we speak Spanish and that we have a lot of influences and cultural traditions coming form Spain. Following this order of ideas, we are Hispanics.
It is like this:
Spanish: It's a nationality and a person whose citizenship comes from Spain and in some cases descendants.
Hispanic: It's a cultural term referring to anything associated with the Spanish language, in the same way Anglo is anything related to English.
Other thing. Spanish people are beautiful, it's just that they are White, but that doesn't mean they are not beautiful. Many Spaniards are very hot. Though we Latin Americans are mixed, that makes us look exotic, but that doesn't mean we are inherently more beautiful than them.
Other thing: you said Indian, and Indian is a person coming from India, referring to Natives as Indian is degoratory and insulting.
Second Latin American culture doesn't exist as one single culture, it changes from country to country, in some parts being more European, other being more African, other being more Arab and other being more Amerindian. Our culture is very mixed, we can have African-based music like Salsa or Samba, European-based like Tango or Pasillo and Amerindian-based like Bambuco or Wayúu dance, or Arabic based like Belly dance (Shakira).
So... yeah pretty much we are multi-cultural group and we cannot be "Spanish" or "African" or "European" or "Amerindian", we are just Latin Americans, and mestizaje and multi-culturalism is the key of our civilization.
We don't call ourselves Spanish, but we are Latinos.
PS: Brazilians aren't Hispanic, they are Lusophones.