0👍
You have the option to create only the files you want to customise (using the existing component paths & names) or create your own and reference them from a custom SpecialLayout file (as in your case)
To make creating custom components easier you can eject and specify a target directory (other than /theme) and then only clone / update what you need to customise.
In your example you would need to create /theme/components/PageNav.vue and /theme/layout/SpecialLayout.vue.
Create all the custom markup for specialLayout as required or Eject/clone the original /theme/layout to be SpecialLayout and replace the navbar references with your custom PageNav component.
Source:stackexchange.com