diff --git a/_sass/search.scss b/_sass/search.scss
index 10eb5b29956aa0b4c2e702e5f9b55e60ec8dc51c..256eb7fff5d000ae31f4ba7fb79e4560d7b8566d 100644
--- a/_sass/search.scss
+++ b/_sass/search.scss
@@ -248,6 +248,14 @@
     transition: opacity ease 200ms, width 0s, height 0s;
   }
 
+  body {
+    overflow-y: hidden;
+
+    @include mq(md) {
+      overflow-y: scroll;
+    }
+  }
+
   @include mq(md) {
     .main {
       position: absolute;
diff --git a/assets/js/just-the-docs.js b/assets/js/just-the-docs.js
index 1d4277c0afe0a8ea993cb79a9a2ec4e357dcedff..49479f6ba65ed175838c96ced0e7b0654e424bbb 100644
--- a/assets/js/just-the-docs.js
+++ b/assets/js/just-the-docs.js
@@ -111,6 +111,7 @@ function initSearch() {
     var docs = docs;
     var searchInput = document.getElementById('search-input');
     var searchResults = document.getElementById('search-results');
+    var mainHeader = document.getElementById('main-header');
 
     function clearResults() {
       searchResults.innerHTML = '';
@@ -140,6 +141,7 @@ function initSearch() {
       });
 
       if (results.length > 0) {
+        window.scroll(0, window.scrollY + mainHeader.getBoundingClientRect().top);
         document.documentElement.classList.add('search-active');
 
         var resultsList = document.createElement('ul');