Pagination in WordPress is not working, second page loads wrong template

I have problems with my pagination. On the first page 5 posts are correctly displayed on the correct template archive-buch.php and also the pagination button, the next page is empty and a wrong template, index.php is loaded.
The existing posts for this problem have not helped me.
I am grateful for any help.

First here my screenshots:
correct template with data

wrong template no data

Here ist my archive-buch.php

    <?php get_header(); ?>

<?php
// Anzahl der Posts pro Seite
$posts_per_page = 5;  // Anzahl der Beiträge pro Seite
$paged = ( get_query_var('paged') ) ? get_query_var('paged') : 1;  // Aktuelle Seite

/*
if ( get_query_var('paged') ) { $paged = get_query_var('paged'); }
elseif ( get_query_var('page') ) { $paged = get_query_var('page'); }
else { $paged = 1; } */


// WP_Query für den Buch-Post-Typ
$args = array(
    'post_type' => 'buch',   // Custom Post Type „buch“
    'posts_per_page' => $posts_per_page,   // Anzahl der Bücher pro Seite
    'paged' => $paged,       // Aktuelle Seite setzen
    'offset' => $posts_per_page * ($paged - 1)
);

// Neue Abfrage erstellen
$query = new WP_Query( $args );

// Debugging - Query überprüfen
/*
echo '<pre>';
print_r( $query );
echo '</pre>';
*/

if ( $query->have_posts() ) : 
    while ( $query->have_posts() ) : $query->the_post(); ?>

        <!-- Ausgabe des Buch-Titels und Inhalts -->
        <article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
            <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
            <div><?php the_excerpt(); // Ausgabe des Auszugs ?></div>
        </article>

    <?php endwhile; ?>

    <!-- Pagination -->
    <div class="pagination">
        <?php
        // Vorherige Seite (Link zur vorherigen Seite anzeigen)
        previous_posts_link( '« Vorherige Seite' );

        // Nächste Seite (Link zur nächsten Seite anzeigen)
        next_posts_link( 'Nächste Seite »', $query->max_num_pages );
        ?>
    </div>

<?php else : ?>
    <p>Keine Bücher gefunden.</p>
<?php endif; ?>

<?php
// Reset der Query-Daten
wp_reset_postdata();
?>

<!-- Footer -->
<footer>
    <p>&copy; <?php echo date('Y'); ?> - Alle Rechte vorbehalten.</p>
</footer>

<?php wp_footer(); ?>

And here part of my functions.php

function create_buch_post_type() {
    $args = array(
        'label'             => 'Bücher',
        'public'            => true,
        'has_archive'       => true, // Stellt sicher, dass ein Archiv vorhanden ist
        'rewrite'           => array( 'slug' => 'buecher' ),  // Rewrite-URL korrekt setzen
        'supports'          => array( 'title', 'editor', 'excerpt' ),
    );
    register_post_type( 'buch', $args );
}
add_action( 'init', 'create_buch_post_type' );

Any help is appreciated