1. In a saucepan, combine the sugar, milk, and eggs. Heat gently, stirring until the mixture is lukewarm, about 36-40 degrees Celsius. Be careful, if the mixture gets too hot, it will 'kill' the yeast. Add the orange zest and stir. Place the flour, salt, mahlepi, mastic, and cardamom in the mixer bowl and mix them together. Add the yeast and mix.
2. Pour the milk mixture into the mixer and knead well. When you reach 70% of the kneading process, add the softened butter, a spoonful at a time. Knead for 20 minutes at medium speed.
3. Remove the dough from the mixer and place it in a bowl that has been lightly greased with oil. Cover with plastic wrap and set aside for 4 hours to rise. It's best to cover it with a blanket too. To make it rise faster, preheat the oven to 40°C and place a glass bowl with boiling water on the bottom rack. Place the dough bowl inside and let it rise for 1.5 - 2 hours.
4. Uncover the dough and fold it over itself (bring the edges towards the center) and knead briefly. Cover the bowl again with plastic wrap and let it rise for 1 – 1.5 hours. Remove the dough from the bowl and cut it into 3 pieces. Shape each piece into a rope. Place one rope next to the other. Join the end of the middle rope and the left rope to the first one.
5. Create a fairly tight braid. It is important that it is tight so it doesn't open up. Start from the rope on the right and bring it over the middle one. Then, do the same with the left rope. Repeat this process until the tsoureki is finished. Tuck the ends underneath so the tsoureki doesn't open up. Close the braid and form a wreath shape. Place it on a baking sheet lined with non-stick parchment paper and cover with a towel or plastic wrap. Set aside for 1 – 1.5 hours to rise again. Beat the egg well and carefully brush the tsoureki using a pastry brush. Go over it twice with the egg so it browns nicely. Decorate with the red eggs and bake in a preheated oven at 160°C for 25-30 minutes.