Simply:
In website A user logs in and creates some session objects.
Website A redirects user to a page in website B using Response.Redirect.
Website B POSTs a form collection to a page on website A using a submit button.
On this specific point all sessions of this specific user are lost and Session_Start fires again.
This is the same for both localhost and production domains.
This is OK when both pages are on the same domain, problem occurs with two separate domains.
On step 3 when using a link instead of the button to return to website A (apparently wieemsh fully qualified domain name), everything is ok and sessions exist.
Seems it's a cross platform submit/POST problem.
Sessions are InProc with cookies, changing this setting is not an option.
I appreciate your kind attention.
P.S. googling this, I found out that there is somehow similar 'losing session' problem when redirecting from one page to another. this is not caused by response.Redirect.
Edit
There is a probability that this problem is caused by SameSite Cookie Policy. I ran several tests on several conditions and I cannot still confirm this.