Index: wp-content/themes/twentytwelve/style.css
===================================================================
--- wp-content/themes/twentytwelve/style.css	(revision 21651)
+++ wp-content/themes/twentytwelve/style.css	(working copy)
@@ -437,10 +437,13 @@
 body {
 	font-size: 14px;
 	font-size: 1rem;
-	font-family: "Open Sans", Helvetica, Arial, sans-serif;
+	font-family: Helvetica, Arial, sans-serif;
 	text-rendering: optimizeLegibility;
 	color: #444;
 }
+body.custom-font-enabled {
+	font-family: "Open Sans", Helvetica, Arial, sans-serif;
+}
 a {
 	outline: none;
 	color: #21759b;
Index: wp-content/themes/twentytwelve/functions.php
===================================================================
--- wp-content/themes/twentytwelve/functions.php	(revision 21651)
+++ wp-content/themes/twentytwelve/functions.php	(working copy)
@@ -102,6 +102,12 @@
 
 	/*
 	 * Loads our special font CSS file.
+	 * 
+ 	 * To disable use wp_dequeue_style():
+ 	 * function prefix_dequeue_fonts() {
+ 	 *     wp_dequeue_style( 'twentytwelve-fonts' );
+ 	 * }
+	 * add_action( 'wp_enqueue_scripts', 'prefix_dequeue_fonts', 11 );
  	 */
 	$protocol = is_ssl() ? 'https' : 'http';
 	wp_enqueue_style( 'twentytwelve-fonts', "$protocol://fonts.googleapis.com/css?family=Open+Sans:400italic,700italic,400,700", array(), null );
@@ -376,6 +382,10 @@
 	elseif ( in_array( $background_color, array( 'fff', 'ffffff' ) ) )
 		$classes[] = 'custom-background-white';
 
+	// Enable custom font class only if the font CSS is queued to load.
+	if ( wp_style_is( 'twentytwelve-fonts' ) )
+		$classes[] = 'custom-font-enabled';
+
 	return $classes;
 }
 add_filter( 'body_class', 'twentytwelve_body_class' );
