First of all i want to tell you that i will built exactly what your target audience want, so that the website will be cost effective and working ideally for ages.
Let's begin for the main purpose, we want customers!!!, so we need to examine what kind of products will include for the target audience so that we can built the exact functionalities/design/structure/layout that people need to see in order to WANT to examine every page. In order to succeed functionality, we can use magento as you prefer, drupal or joomla otherwise. All of these include the features that you describe. The website design/layout/structure i'll built it with tools/frameworks for every screen size in order to present perfectly in every device screen. These tools can be bootstrap as the most used, skeleton or foundation.
Next thing is the features of the website that you describe, which need to be user friendly either to customers (front-end) and managers (dashboard) also. All three systems (magento, drupal, joomla) have all the features and advantages to built any structure, layout and design according to your needs.
We also need to built the security and integrity of the data. To reach the wanted security i'll built systems for email/mobile verification, ddos attacks, sqli attacks, require strong password generators and pentesting with kali linux os.
In my opinion we Should use magento to built this e-commerse because it's an advanced system that gives all of the wanted possibilities in hand