You will see on this website, and please try it, that depending on the device everything moves around or is responsive to the width of the browser window and the natural boundary to this is a small mobile phone. Adjust the width of your browser and you'll see this in action.
This is generally fine for most sites, but a mobile site shouldn't really be bloated with a lot of options which are frankly only suitable on a desktop or perhaps a tablet device. This is where you can, and we might say that you should, consider a separate mobile site as a little sister to your main desktop site.
Another very important reason for having a mobile-only site is that the user experience is completely different. For starters, people are using their fingers and not a mouse, buttons should be bold and easy to tap and most important of all it should be very simple to use. A desktop site may have lots of features which are quite honestly very difficult to manage on a phone. As internet speeds increase and wi-fi more available, load-time on mobile devices becomes less of an issue, but it's worth seeing how your site responds on a 3G network ?
For REAL mobile Apps, not mobile web-sites, we'll use IONIC which is based on Angular (JS) with Android and iOS SDKs, which in English means that you can also have a full App suite to compliment your web infrastructure.
Suffice to say that this is where `normal` traditional web-development begins to look like a lost cousin and more like a Java development project. Ionic is an Angular Framework and as of 2018 they are also introducing PWAs [Progressive Web Apps] which is a tech likely to kill off all but the most demanding of Native Apps.
The very lastest Ionic V3 with Angular 4.x is currently `new`, very 2018 and will become the new standard for mobile development. We are happy to adopt this framework and if you are serious about your Apps and want to use the latest Tech then this is what you should choose. Happy Appy.