Template variants is a set of advanced configuration possibilities built into OpenCms to customize generic templates like the standard template Mercury.
If you start building an OpenCms website, you usually do not start from scratch but you further develop an existing modular template.
Modular templates save time and money. Though, by reaching the widest possible circle of users, they sometimes tend to provide too much choices and functionality for individual projects.
Also, there is probably no website project that has requirements not going beyond those of the modular template.
With template variants, you reach a higher degree of compatibility. You can update to the latest Mercury version at any time while at the same time developing your own customizations.