Mayor who spoke out against cartels shot dead