You can edit it using CSS so it's more compact, or you can customize the form's template.
Is it possible to modify the PayPal® and/or Authorize.Net® Pro Form templates?
Usually not necessary. But yes, if you really need to. Please check your /s2member-pro/includes/templates/forms/ directory. You can take the default templates, and place some ( or all of them ) into your own WordPress® theme directory. s2Member Pro will automatically find your custom templates there. By placing custom templates into your theme directory, you can be sure they won't get overwritten in a future upgrade. Either that, or you can just use the default templates like they are, and customize them with your own CSS rules inside the Stylesheet for your WordPress® theme ( i.e. style.css ). If you're using a PriMo Theme ( for instance, the s2Clean Theme ), check your Theme Options Panel, under: Custom CSS / Style Sheet.
And
WP Admin -> s2Member -> PayPal Pro-Forms -> Shortcode Attributes (Explained) -> templatetemplate="" 100% optional. This can be a custom template file that exists inside your WordPress® theme directory. For example: template="checkout.php".
To change the pro-form, you could probably have another small form to select the product and reload the page to get the pro-form for it. You could use
$_SERVER['REQUEST_URI'] for that small form's action, and based on the option you'd show one pro-form or the other.
Does that help?