I am explaining this because I don’t quite understand your question, but I think understanding the lookup order will solve your issue, so you can figure out which template is loading.
For section, /layouts/section/posts.html will load before/layouts/posts/list.html or /layouts/_default/list.html.
If you want to keep them next to each other, set your templates as:
/layouts/posts/list.html
/layouts/posts/single.html
And to clarify, a “section” is a type of “list”. It is built for a lot of flexibility, but you don’t need three templates for a section unless you are doing something fancy.
(This is independent of your question, but also note that that within this, you can filter by different sub kinds of content e.g. {{ range where .Data.Pages "Params.category" "==" "website" }}.)
Note that on another index page (like the home page), you can loop over all pages (across your different kinds of content) and get a complete list.