build responsive viewport