To make the first post different you could add a post counter and change the output on the first loop.
$counter = 0
while ( $cat_posts->have_posts() ) {
$cat_posts->the_post();
$counter++;
if ( $counter == 0 ) {
// Out put the different loop
}
//Normal loop output