diff --git a/includes/content.inc b/includes/content.inc
index b4c511c..1e9a647 100644
--- a/includes/content.inc
+++ b/includes/content.inc
@@ -523,6 +523,29 @@ function ctools_content_configure_form_defaults(&$form, &$form_state) {
     $add_submit = TRUE;
   }
 
+  // Why isn't the submit handler always added?
+  $add_submit = TRUE;
+  $form['title_elem'] = array(
+    '#type' => 'select',
+    '#title' => 'Title HTML element',
+    '#options' => array(
+//        '' => t('- Use default -'),
+//        '0' => t('- None -'),
+      'div' => t('DIV'),
+      'span' => t('SPAN'),
+      'h1' => t('H1'),
+      'h2' => t('H2'),
+      'h3' => t('H3'),
+      'h4' => t('H4'),
+      'h5' => t('H5'),
+      'h6' => t('H6'),
+      'p' => t('P'),
+      'strong' => t('STRONG'),
+      'em' => t('EM'),
+    ),
+    '#default_value' => isset($conf['title_elem']) ? $conf['title_elem'] : 'h2',
+    '#description' => t('The title will be wrapped in this HTML element. It should usually be H2.')
+  );
   if ($add_submit) {
     // '#submit' is already set up due to the wizard.
     $form['#submit'][] = 'ctools_content_configure_form_defaults_submit';
@@ -541,6 +564,9 @@ function ctools_content_configure_form_defaults_submit(&$form, &$form_state) {
     $form_state['conf']['override_title'] = $form_state['values']['override_title'];
     $form_state['conf']['override_title_text'] = $form_state['values']['override_title_text'];
   }
+  if (isset($form_state['values']['title_elem'])) {
+    $form_state['conf']['title_elem'] = $form_state['values']['title_elem'];
+  }
 }
 
 /**
