It is mostly used for special characters like spaces and Unicode characters. However, the colon character is allowed in URLs so it would be possible to just use https://taginfo.openstreetmap.org/keys/garden:style.
The %252A is what you get when you encode the URL twice.
“:” → (encoding : as 2A) → “%2A” → (encoding % as 25) → “%252A”
Indeed. But what I don’t know is why somebody thought it necessary to do that or what they were hoping to achieve. Presumably that person was trying to do something and any simple fix may break something else. I decided it was better to leave it alone and bring it to the attention of others who may understand the thinking behind it.