Alert Bar section within WP loop is displaying even though there are no posts

You are querying the main query, since you didn’t set a custom one, with new WP Query.
Hence, yes there are posts, just not the ones you think.

Try this:

 <?php

    $args = array(
        'category__in'=> array( 23, 31 )
    ); 
    $loop = new WP_Query( $args );

    // Start the loop for your custom query
    if($loop->have_posts() ) : ?>

        <section id="alert-bar" class="clearfix">
            <div class="container">
                <div class="row">
                    <div class="col-xs-12">

                        <?php while ($loop->have_posts() ) : $loop->the_post();

                        //ADVANCED CUSTOM FIELDS VARIABLES
                         $event_thumb        =   get_field( 'event_thumb' );
                         $alert_excerpt      =   get_field( 'alert_excerpt' );

                        <article class="row">
                            <div class="col-xs-3 col-md-offset-1 col-md-2 alert-image-wrapper">
                                <a href="https://wordpress.stackexchange.com/questions/237536/<?php the_permalink(); ?>">
                                    <img src="<?php echo $event_thumb['url']; ?>" alt="<?php the_title(); ?>">
                                </a>
                            </div> <!-- .col-xs-3 .col-md-offset-1 .col-md-2 .alert-image-wrapper -->

                            <div class="col-xs-9 alert-text-wrapper">
                                <a href="https://wordpress.stackexchange.com/questions/237536/<?php the_permalink(); ?>">
                                    <h4><?php the_title(); ?></h4>
                                    <p><small><?php echo $alert_excerpt; ?></small></p>
                                </a>
                            </div> <!-- .col-xs-9 .alert-text-wrapper -->
                        </article>

                        <?php endwhile; ?>

                    </div> <!-- .col-xs-12 -->
                </div> <!-- .row -->
            </div> <!-- .container -->
        </section> <!-- #alert-bar -->

    <?php endif; wp_reset_query();
?>