How do I define a separate form template for a multistep form?
I have fixed the issue using D8 temp storage functionality. I was able to get the current step in my form_alter() hook, and I stored it in to a temp variable and accessed it in theme_hook_suggestions() hook().

/**
 * Implements hook_form_alter().
 */
function custom_module_form_alter(&amp;$form, \Drupal\Core\Form\FormStateInterface $form_state, $form_id) {
  if($form_id == 'mywebform_id') {

    $current_page = $form_state-&gt;get('current_page');

    $tempstore = \Drupal::service('user.private_tempstore')-&gt;get('custom_module');
    $tempstore-&gt;set('current_page', $current_page);
  }
}

function custom_module_theme_suggestions_webform(array $variables) {
  $tempstore = \Drupal::service('user.private_tempstore')-&gt;get('custom_module');
  $current_page = $tempstore-&gt;get('current_page');

  $suggestions = array();

  $suggestions[] = 'webform__'.$current_page;

  return $suggestions;
}