When Apache reads an .htaccess file, the rules are applied recursively to any subdirectories from where the rule was found.
The .htaccess located in the path specified above will also affect any of the subdirectories located within "public_html".
However, .htaccess rules can override previous directives found in previous directories as they are applied in the order that they are read.
This means that if you have a rule that you wish to not apply to a subdirectory you will have to override the behaviour with a new .htaccess in the subdirectory you wish to change the behaviour.
For more details, please refer to Apache's official documentation.