Both. There is a perception that's 100% biological for sure. But lumping all the blue tones together, that's social. Some languages (including Russian and Greek) have different words for light and dark blue, other languages have one word blue and green (sometimes translated as "grue"). Sure they can see the difference and name it (leave grue vs ocean grue for example) but socially, they perceive it as the same "color category".
Brown is actually dark orange. It just became its own thing when we gave it a distinct name. So people who know more color names really can see more colors.