diff --git a/core/includes/theme.inc b/core/includes/theme.inc
index 7bff76e..b79e4d2 100644
--- a/core/includes/theme.inc
+++ b/core/includes/theme.inc
@@ -2571,39 +2571,10 @@ function template_preprocess_html(&$variables) {
   $language_interface = language(Language::TYPE_INTERFACE);
 
   // Compile a list of classes that are going to be applied to the body element.
-  // This allows advanced theming based on context (home page, node of certain type, etc.).
-  $variables['attributes']['class'][] = 'html';
-  // Add a class that tells us whether we're on the front page or not.
-  $variables['attributes']['class'][] = $variables['is_front'] ? 'front' : 'not-front';
-  // Add a class that tells us whether the page is viewed by an authenticated user or not.
-  $variables['attributes']['class'][] = $variables['logged_in'] ? 'logged-in' : 'not-logged-in';
-
-  // Add information about the number of sidebars.
-  if (!empty($variables['page']['sidebar_first']) && !empty($variables['page']['sidebar_second'])) {
-    $variables['attributes']['class'][] = 'two-sidebars';
-  }
-  elseif (!empty($variables['page']['sidebar_first'])) {
-    $variables['attributes']['class'][] = 'one-sidebar';
-    $variables['attributes']['class'][] = 'sidebar-first';
-  }
-  elseif (!empty($variables['page']['sidebar_second'])) {
-    $variables['attributes']['class'][] = 'one-sidebar';
-    $variables['attributes']['class'][] = 'sidebar-second';
-  }
-  else {
-    $variables['attributes']['class'][] = 'no-sidebars';
-  }
-
-  // Populate the body classes.
-  if ($suggestions = theme_get_suggestions(arg(), 'page', '-')) {
-    foreach ($suggestions as $suggestion) {
-      if ($suggestion != 'page-front') {
-        // Add current suggestion to page classes to make it possible to theme
-        // the page depending on the current page type (e.g. node, admin, user,
-        // etc.) as well as more specific data like node-12 or node-edit.
-        $variables['attributes']['class'][] = drupal_html_class($suggestion);
-      }
-    }
+  // This allows advanced theming based on context
+  // Add a class that tells us whether we're on the front page.
+  if($variables['is_front']) {
+    $variables['attributes']['class'][] = 'front';
   }
 
   // If on an individual node page, add the node type to body classes.
diff --git a/core/modules/system/templates/html.html.twig b/core/modules/system/templates/html.html.twig
index f2d094e..272bcdd 100644
--- a/core/modules/system/templates/html.html.twig
+++ b/core/modules/system/templates/html.html.twig
@@ -36,11 +36,9 @@
     {{ scripts }}
   </head>
   <body{{ attributes }}>
-    <div id="skip-link">
       <a href="#main-content" class="visually-hidden focusable">
         {{ 'Skip to main content'|t }}
       </a>
-    </div>
     {{ page_top }}
     {{ page }}
     {{ page_bottom }}
diff --git a/core/themes/bartik/bartik.theme b/core/themes/bartik/bartik.theme
index ff72897..7b2a498 100644
--- a/core/themes/bartik/bartik.theme
+++ b/core/themes/bartik/bartik.theme
@@ -27,6 +27,22 @@ function bartik_preprocess_html(&$variables) {
     || !empty($variables['page']['footer_fourthcolumn'])) {
     $variables['attributes']['class'][] = 'footer-columns';
   }
+
+  // Add information about the number of sidebars.
+  if (!empty($variables['page']['sidebar_first']) && !empty($variables['page']['sidebar_second'])) {
+    $variables['attributes']['class'][] = 'two-sidebars';
+  }
+  elseif (!empty($variables['page']['sidebar_first'])) {
+    $variables['attributes']['class'][] = 'one-sidebar';
+    $variables['attributes']['class'][] = 'sidebar-first';
+  }
+  elseif (!empty($variables['page']['sidebar_second'])) {
+    $variables['attributes']['class'][] = 'one-sidebar';
+    $variables['attributes']['class'][] = 'sidebar-second';
+  }
+  else {
+    $variables['attributes']['class'][] = 'no-sidebars';
+  }
 }
 
 /**
diff --git a/core/modules/system/templates/html.html.twig b/core/themes/bartik/templates/html.html.twig
similarity index 93%
copy from core/modules/system/templates/html.html.twig
copy to core/themes/bartik/templates/html.html.twig
index f2d094e..02a542b 100644
--- a/core/modules/system/templates/html.html.twig
+++ b/core/themes/bartik/templates/html.html.twig
@@ -21,6 +21,7 @@
  * - scripts: Script tags necessary to load the JavaScript files and settings
  *   in the head.
  *
+ * @see template_preprocess()
  * @see template_preprocess_html()
  * @see template_process_html()
  *
@@ -37,7 +38,7 @@
   </head>
   <body{{ attributes }}>
     <div id="skip-link">
-      <a href="#main-content" class="visually-hidden focusable">
+      <a href="#main-content" class="element-invisible element-focusable">
         {{ 'Skip to main content'|t }}
       </a>
     </div>
diff --git a/core/modules/system/templates/html.html.twig b/core/themes/seven/templates/html.html.twig
similarity index 93%
copy from core/modules/system/templates/html.html.twig
copy to core/themes/seven/templates/html.html.twig
index f2d094e..02a542b 100644
--- a/core/modules/system/templates/html.html.twig
+++ b/core/themes/seven/templates/html.html.twig
@@ -21,6 +21,7 @@
  * - scripts: Script tags necessary to load the JavaScript files and settings
  *   in the head.
  *
+ * @see template_preprocess()
  * @see template_preprocess_html()
  * @see template_process_html()
  *
@@ -37,7 +38,7 @@
   </head>
   <body{{ attributes }}>
     <div id="skip-link">
-      <a href="#main-content" class="visually-hidden focusable">
+      <a href="#main-content" class="element-invisible element-focusable">
         {{ 'Skip to main content'|t }}
       </a>
     </div>
