dynamic sizing based on screen size with window resize responsiveness