I'm not positive you need any alias, especially since you already have the structure build out in the content tree AND if the user can navigate to the category and/or subcategory. Just update your page template(s). Also unless you plan to have or display your "Overview" folder, there is no need for it, just makes things more complicated.
You can simply set your URL dynamically with a macro depending on the node level like so:
/{0}/%
= /faq/%
/{0}/{1}/%
= /faq/category/%
/{0}/{1}/{2}%
= /faq/category/subcategory%
Macro would look like (assuming no "Overview" folder):
{% if (CurrentDocument.NodeLevel == 1) { "/{0}/{1}/%" } else { if (CurrentDocument.NodeLevel == 2) { "/{0}/{1}/{2}/%" } else { "/{0}/%" } } |(identity)GlobalAdministrator%}
Maybe I'm wrong but I think you're over complicating it since you already have the structure there. You could even go one step further and not use the macro and simply have a specific page template for the FAQ page, one for the Category and one for the Subcategory since they are all different page types. Then in your page type just assign a default page template and the user never has to determine which one to use AND you can set the values like I showed above in the path property.