Yes, it's possible to have an IP (or IP range) that uses 10.46.176.0/21. It's possible because ANYTHING starting with "10." is a valid private IP address. The "/21" just tells you how many 1's and 0's are in the subnet mask. Then, using the host allocation formula of: 2 ^ # of zeroes (in the mask) = Total # of IPs, we can see how many IPs we get to start with BEFORE performing any VLSM steps.
Let's look at the binary version of a /21:
- 1111 1111.1111 1111.1111 1000.0000 0000 = /21 = 255.255.248.0
You know there are 32 bits in an IPv4 subnet mask. So, if 21 of them are 1's, we're left with 11 zeroes. So our formula is: 2 ^ # of zeroes = Total # of IPs --> 2 ^ 11 = Total # of IPs --> 2 ^ 11 = 2,048 Total IPs
So, before VLSM starts you have 2,048 IPs to divide up. Now the question is: How many subnets do you need to make and how many IPs are in each one?
-- edit --
I read your comment. So, you rightly figured out that a /21 DOES NOT support the 2,408 IPs you needed. You'd need to find the closest Power of 2 to 2408 to figure out how many zeroes your subnet mask needs. Of course, once you know the number of zeroes, you then know the number of 1's -- which gives you your /xx value.