NFT Smart Contracts for time-restricting transfer of tokens?

HI all,

So, just to be completely transparent, I have zero coding experiencing but I am working with a team of NFT designers for a cultural project, and we have been struggling to find the answer to this question:

  1. Is there a way to time-restrict when owners of our NFT can resale the NFT? For example, let's say we drop a batch of NFTs for sale. We want to deploy a code within our smart contract that only allows users to resale the NFT 48 hours after purchase. Is this possible to do within the line of coding for deploying a smart contract.

  2. IF not time restricting when we buyers can resale, is there a way to keep buying and selling to a certain group of people either by wallet addresses or affiliation with our organization?

I know this kind of defeats the whole purpose of creating a NFT token as possibility of continuously receiving royalties long after its sold is appealing, but that's just not what we want to do right now.