For the most part, I believe WordPress will do just fine. You will have to brush up on your knowledge of PHP to get the hang of creating your own custom templates, but there are plenty of sites (This One Included) that will help guide you.
There are also a plethora of free & premium plugins for WordPress (see CodeCanyon) that allow you to add many cool features to your site (Galleries, Image Sliders, Audio Players, Forms, E-Commerce stores..etc).
It will allow you to create “Custom Post Types” for your “Profile Cards” where you can list them on pages, create custom templates for them, and link them to specific users.
You can use ACF to add custom fields on any “Post Type”, which can be called & displayed via the custom templates you make.
The admin panel is pretty straight forward and easy to learn how to use as well. I would recommend using some sort of pre-made skeleton theme or framework when making your first theme.