Impostando i margini destro e sinistro del div #box-topricerche su "auto" ottieni la centratura di un elemento su molti browser, ma non su tutti.

Per la piena compatibilità uso un trucco (tratto a sua volta da Constile.org) basato sul posizionamento relativo e agendo sul margine sinistro. Eccolo:

codice:
.box-topricerche {
  position: relative;

  /* spostiamo il margine sinistro
    del "contenitore" al centro */
  left: 50%;

  /* diamogli una larghezza */
  width: 230px;

  /*       impostiamo il margine sinistro
     negativo a metà larghezza del contenitore */
  margin-left: -115px;
}
Se poi il contenitore ha una larghezza impostata in percentuale, allora meglio ancora. Nel tuo caso, 3 colonne al 30% danno un div #box-topricerche pari a 30 x 3 = 90%. Per centrare il tutto è sufficiente impostare solo la proprietà "left" a metà larghezza rimanente (100% - 90% = 10% -> 5%), e il gioco è fatto. Senza impostare quindi anche la proprietà "margin-left".
Nota: non ho impostato la larghezza al 31%, altrimenti restava il 7% di larghezza, e al margine possiamo impostare solo numeri interi! :P

Credimi, è più a dirsi che a farsi, non spaventarti per questa spiegazione lunga. Spero di aver centrato il problema! :P

PS: se vogliamo essere pignoli, dovresti usare le liste di definizione anziché i tag div e p; è semanticamente più corretto. Qui trovi un articolo che ne parla: http://pro.html.it/articoli/id_635/idcat_8/pro.html

Ciao ciao :)