Alinhando Grupo de Colunas pelo MB

Pessoal boa tarde, eu pesquisei diversos tópicos semelhantes, mas nada deu certo, então se alguém puder me ajudar agradeço desde já.

Seguinte, eu estou montando um panelGrid, que possui os grupoColuna como linhas, e cada coluna como um apartamento (pois monto a simulação de um prédio, podendo assim variar a qnt de apartamentos por andares, assim como sua imagem de disponibilidade.
O problema é que eu preciso alinha esses grupos de colunas ao centro do panelGrid, que é a estrutra pai que eu passo no Binding do jsf.

O código que constroi o panelGrid é esse:

                                int contUnidade = 0;
		panelGrid = new HtmlPanelGrid();
		for (int i = 0; i < listCompTorre.size(); i++) {
			grupoColuna = new HtmlColumnGroup();
			for (int c = 0; c < listCompTorre.get(i).getQtdunidades(); c++) {
				imagem = new HtmlGraphicImage();
				coluna = new HtmlColumn();
				valor = new HtmlOutputText();
				if((c%20) == 0 && c != 0){
					panelGrid.getChildren().add(grupoColuna);
					grupoColuna = new HtmlColumnGroup();
				}
				switch (listUnidadeTorre.get(contUnidade).getStvenda()) {
				case -1: // Imovel Bloqueado
					imagem.setUrl("../img/CadeadoL.png");
					break;
				case 0: // Imóvel Disponível
					imagem.setUrl("../img/BandeiraVerdeL.png");
					break;
				case 1: // Imóvel Reservado
					imagem.setUrl("../img/RelogioL.png");
					break;
				case 2: // Imóvel em Proposta de Compra
					imagem.setUrl("../img/BandeiraVermelhaL.png");
					break;
				case 3: // Imóvel em Simulação de Compra
					imagem.setUrl("../img/BandeiraAmarelaL.png");
					break;
				case 5: // Reserva Administrativa
					imagem.setUrl("../img/RefreshL.png");
					break;
				case 6: // Imóvel Vendido por Terceiros
					imagem.setUrl("../img/PeopleL.png");
					break;
				case 9: // Imóvel Vendido
					imagem.setUrl("../img/HomeL.png");
					break;
				}
				valor.setValue("<br/>" + listUnidadeTorre.get(contUnidade).getNrunidade());
				valor.getAttributes().put("escape", Boolean.FALSE);
				coluna.getChildren().add(imagem);
				coluna.getChildren().add(valor);
				grupoColuna.getChildren().add(coluna);
				contUnidade++;
			}
			panelGrid.getChildren().add(grupoColuna);
		}
		panelGrid.setBorder(1);
	}

Eu já tentei setar através do ColumnClasses, passando a string do parametro que criei no css (incluido na pagina jsf que é chamado esse panelGrid) já tentei colocar no StyleClasses, no Style, enfim, de todas as formas, tanto nos set do panelGrid, quanto no do grupoColuna.
Mas nada adianta, ele continua sempre a esquerda.

Obrigado!

A parte do código do JSF seria essa:

<h:panelGrid binding="#{ExibirMapaDisponibilidadeMB.panelGrid}"> </h:panelGrid>
Antes delas tem algumas combo, que filtrar o que será exibido na grid, ela exibi tudo perfeitamente, só não alinha.