I can’t remember where I saw this information, but it goes with my previous controversial posts about Christmas.
Back when Jesus was born, young people usually lived with their parents until they got married.
There were no official wedding ceremonies where couples exchanged vows. Instead, they would have a big banquet party to announce that the bride now belonged to the groom.
At the end of the party the groom would say to the bride, “I go to prepare a place for you so that where I am, you may be also.” Then he would go buy, fix up, or, maybe in the case of a carpenter, build a house.
The bride would return to her parents until he came to get her.
Of course if the groom had been previously married he would bring his new wife home with him at the end of the party.
So Mary wasn’t just engaged to Joseph. She was officially his spouse when the angel appeared to her. But she was still a virgin.