Divide 1 provider uplink into 2 virtual ones for queuing

Uplink provider gives me 100Mbps link, I want to split this 100Mbps into 2, and have 50 Mbps for guest users, and the other 50 Mbps to office users. Is this possible? I already shaped guest users to individually not exceed 3Mbps each(using pcq), but when they are all connected they cumulative reach 60/65 Mbps. So I want to restrict them at max of 50 Mbps

You should use a /queue rules.
Easy and first try you can do by:

/queue simple add target=192.168.20.0/24 max-limit=50M/50M queue=pcq-upload-default/pcq-download-default

And then set each client queue as childs for that one??

It depends,
I specific target=guest_network/cidr and finish on one rule, all other traffic is not queue that means can use max 100/100M.

You can specific normal network without Parent with max-limit=50M/50M but then both cannot reach more then 50/50 (of course you can add at-limit and priority options) .
With Parent setup you should create a big WAN queue rules and add before rules to this one.

Remember that many person create a rules devided by separate upload and download parents rule OR by separate Protocols (many pppoe wisp). Many setups many solutions.