O que acontece com o Joomla e que muitas vezes o CSS esta inserido dentro dos modulos e componentes que instalamos e muitas vezes, mesmo que a gente adicione as classes dentro de nosso template, as alteracoes sao sobrepostas por outros CSS's.Ha um modulo gratuito chamado HD-Custom CSS que pode ser baixado neste link.Este modulo apos instalado, permite que voce insira o CSS atraves de modulo e nisto ha diversas vantagens.Voce pode escolher em quais paginas aquele codigo sera aplicado e mesmo se so sera alterado apos o login.Voce centraliza, independente de template os codigos mais importantes para voceVoce nao precisa ter acesso a ftp para buscar arquivos de dentro dos modulos e componentesVoce pode apenas despublicar o modulo caso queira voltar ao originalVoce pode ter varios modulos do CSS abrindo em paginas diferentesIsto te da basicamente controle total sobre o CSS do site.DICAS:Sempre coloque este modulo na ultima posicao do seu template. Normalmente e a debug ou footer. Caso nao saiba qual e, logue na area administrativa, va em Extensoes --> Administrar Templates, selecione o template desejado e clique em pre-visualizacao. Isto mostrara todas as posicoes do seu templateCaso ainda assim o CSS nao esteja sobrepondo, adicione !important no CSS. Ex: body{ color: blue !important; } Ate a proxima. Quem nunca se deparou com a situacao de colocar uma propriedade no CSS, que voce tem certeza que e a correta e ela nao funcionar?Ai voce confere, confere e confere, comeca a perder a paciencia e comeca a adicionar classes e id's pai ate o CSS funcionar na marra. Por que isto acontece?Bom, muita gente nao sabe, mas seus navegadores tem um css proprio, tem o CSS do site e ainda por cima o CSS do usuario (quase ninguem utiliza, mas existe!). Alguma hora da conflito entre as regras existentes no CSS e levanta a questao: Como esses conflitos sao resolvidos?Ai que entram as regras de especificidade, um conjunto de regras que determinam a prioridade de aparicao do CSS.Muitos web designers / frontend engineers desconhecem estas regras e isto acarreta em muitas horas de stress e vontade de abandonar a carreira dando uma carreira =].A ordem basica e a seguinte:Declaracoes do navegadorDeclaracoes normais do usuarioDeclaracoes normais do autorDeclaracoes !important do autorDeclaracoes !important do usuarioFora isso, temos uma tabela que dita a prioridade de declaracoes dentro dos nossos estilos. Didaticamente eu prefiro fazer um sistema de soma. E mais simples de entender. Entao vamos la:Estilos do navegador - O padrao do navegador, equivale a 0,1 pts.Seletor Universal (*) - Equivale a 0,5 ptstags HTML (h1,p,span,etc) - Equivalem a 1 ptClasses no HTML - Equivalem a 10ptID's no HTML - Equivalem a 100ptEstilos inline (style="color: blue;" dentro da tag html) - Equivale a 1000pt!important - Superior a 1000 pontos. Dentro da propriedade no CSS, superam a inline comum do html.Excecoes:10 id's nao superam um inline uma diretiva !important dentro de um estilo inline, tende a sobrepor um !importante dentro do CSSUm pseudo-elemento ou pseudo-classe com !important superam um !important de uma declaracao comumDesempate: Caso ainda assim, duas declaracoes possuem a mesma pontuacao, quem estiver