Add stylesheet per layout

If you are talking about a page template, then you can do a conditional check with is_page_template() and includethe CSS in the header with wp_enqueue_syle(). Something like this:

function themename_include_page_specific_css() {
    if ( is_page_template( 'template-name.php' ) :
        wp_enqueue_style(
            'themename_page_specific_css',
            get_template_directory_uri() . '/page-specific-style.css'
        );
    endif;
}
add_action( 'wp_enqueue_scripts', 'themename_include_page_specific_css' );

Keep in mind, that the parameter you pass to is_page_template() must be the name of the template including the path relative to the directory of the theme. Meaning that if your template is in templates folder you should write it like:

is_page_template( 'templates/template-name.php' )

This will also work with other conditional tags like is_page(), is_single(), and similar.