All right, then. This would be about the same evolution as Romance languages from Latin. Dictated by historical and political context, with some room for foreign influx.
100%.

It is fun how the same root can create absolutely different meanings in different languages.
In russian word "черствый" is "stale". However in one of the western slavic group ~"черствы" is for "fresh". Why? Common root was "strong". But in russian it was developed as "strong" -> "hard" and "hard bread" is for "stale bread". In other country "strong" was developed as "healthy" -> "young" -> "fresh". So, it is very strange for russian to read label in that country (Czech Republic) which sounds for russian something like "taintly poisoneers", which really means "fresh food".