diff --git a/css/reveal.css b/css/reveal.css
index 20d140525d46f2a8f033de0efc6926cefc5ef441..399b698f50d8a0321342181ca907aa2f4174e3fd 100644
--- a/css/reveal.css
+++ b/css/reveal.css
@@ -27,7 +27,7 @@ html, body, .reveal div, .reveal span, .reveal applet, .reveal object, .reveal i
 .reveal menu, .reveal nav, .reveal output, .reveal ruby, .reveal section, .reveal summary,
 .reveal time, .reveal mark, .reveal audio, video {
 	margin: 0;
-	padding: 0;
+	padding: 3m;
 	border: 0;
 	font-size: 100%;
 	font: inherit;
diff --git a/js/reveal.js b/js/reveal.js
index a0b92acf7f99d6543954b78fa35a0806f6071908..52cc6153e88f19ef2cb6984e07b87b7af5aaa71c 100644
--- a/js/reveal.js
+++ b/js/reveal.js
@@ -3432,6 +3432,9 @@
 				if( previousSlide ) {
 					var v = ( previousSlide.querySelectorAll( 'section' ).length - 1 ) || undefined;
 					var h = indexh - 1;
+					if( config.rtl ) {
+						h = indexh + 1;
+					}
 					slide( h, v );
 				}
 			}
@@ -3446,7 +3449,11 @@
 
 		// Prioritize revealing fragments
 		if( nextFragment() === false ) {
-			availableRoutes().down ? navigateDown() : navigateRight();
+			if( config.rtl ) {
+				availableRoutes().down ? navigateDown() : navigateLeft();
+			} else {
+				availableRoutes().down ? navigateDown() : navigateRight();
+			}
 		}
 
 		// If auto-sliding is enabled we need to cue up