diff --git a/core/includes/menu.inc b/core/includes/menu.inc
index 46de223..7b8f15a 100644
--- a/core/includes/menu.inc
+++ b/core/includes/menu.inc
@@ -304,7 +304,7 @@ function theme_menu_local_task($variables) {
     $a_tag = \Drupal::l($link_text, $link['route_name'], $link['route_parameters'], $link['localized_options']);
   }
 
-  return '<li' . (!empty($variables['element']['#active']) ? ' class="active"' : '') . '>' . $a_tag . '</li>';
+  return '<li' . (!empty($variables['element']['#active']) ? ' class="is-active"' : '') . '>' . $a_tag . '</li>';
 }
 
 /**
diff --git a/core/includes/tablesort.inc b/core/includes/tablesort.inc
index 0b3574f..8be8650 100644
--- a/core/includes/tablesort.inc
+++ b/core/includes/tablesort.inc
@@ -49,7 +49,7 @@ function tablesort_header(&$cell_content, array &$cell_attributes, array $header
       // http://www.w3.org/TR/wai-aria/states_and_properties#aria-sort
       $cell_attributes['aria-sort'] = ($ts['sort'] == 'asc') ? 'ascending' : 'descending';
       $ts['sort'] = (($ts['sort'] == 'asc') ? 'desc' : 'asc');
-      $cell_attributes['class'][] = 'active';
+      $cell_attributes['class'][] = 'is-active';
       $tablesort_indicator = array(
         '#theme' => 'tablesort_indicator',
         '#style' => $ts['sort'],
diff --git a/core/includes/theme.inc b/core/includes/theme.inc
index 2b06429..ae4a431 100644
--- a/core/includes/theme.inc
+++ b/core/includes/theme.inc
@@ -1656,7 +1656,7 @@ function template_preprocess_table(&$variables) {
           }
           // Add active class if needed for sortable tables.
           if (isset($variables['header'][$col_key]['data']) && $variables['header'][$col_key]['data'] == $ts['name'] && !empty($variables['header'][$col_key]['field'])) {
-            $cell_attributes['class'][] = 'active';
+            $cell_attributes['class'][] = 'is-active';
           }
           // Copy RESPONSIVE_PRIORITY_LOW/RESPONSIVE_PRIORITY_MEDIUM
           // class from header to cell as needed.
diff --git a/core/includes/theme.maintenance.inc b/core/includes/theme.maintenance.inc
index 8a19a49..4d785e1 100644
--- a/core/includes/theme.maintenance.inc
+++ b/core/includes/theme.maintenance.inc
@@ -124,7 +124,7 @@ function theme_task_list($variables) {
 
   foreach ($items as $k => $item) {
     if ($active == $k) {
-      $class = 'active';
+      $class = 'is-active';
       $status = '(' . t('active') . ')';
       $done = FALSE;
     }
diff --git a/core/misc/active-link.js b/core/misc/active-link.js
index 5bd12eb..496055f 100644
--- a/core/misc/active-link.js
+++ b/core/misc/active-link.js
@@ -47,14 +47,14 @@
       // Query the DOM.
       var activeLinks = context.querySelectorAll(selectors.join(','));
       for (var i = 0, il = activeLinks.length; i < il; i += 1) {
-        activeLinks[i].classList.add('active');
+        activeLinks[i].classList.add('is-active');
       }
     },
     detach: function (context, settings, trigger) {
       if (trigger === 'unload') {
-        var activeLinks = context.querySelectorAll('[data-drupal-link-system-path].active');
+        var activeLinks = context.querySelectorAll('[data-drupal-link-system-path].is-active');
         for (var i = 0, il = activeLinks.length; i < il; i += 1) {
-          activeLinks[i].classList.remove('active');
+          activeLinks[i].classList.remove('is-active');
         }
       }
     }
diff --git a/core/misc/vertical-tabs.css b/core/misc/vertical-tabs.css
index c957450..481468a 100644
--- a/core/misc/vertical-tabs.css
+++ b/core/misc/vertical-tabs.css
@@ -42,7 +42,7 @@
   text-decoration: none;
 }
 .vertical-tab-button a:focus strong,
-.vertical-tab-button a:active strong,
+.vertical-tab-button a:is-active strong,
 .vertical-tab-button a:hover strong {
   text-decoration: underline;
 }
diff --git a/core/modules/contextual/css/contextual.icons.css b/core/modules/contextual/css/contextual.icons.css
index 2a755ca..1e456a3 100644
--- a/core/modules/contextual/css/contextual.icons.css
+++ b/core/modules/contextual/css/contextual.icons.css
@@ -13,11 +13,11 @@
   background-image: url("../../../misc/icons/bebebe/pencil.png");
 }
 .toolbar-bar .toolbar-icon-edit:active:before,
-.toolbar-bar .toolbar-icon-edit.active:before {
+.toolbar-bar .toolbar-icon-edit.is-active:before {
   background-image: url("../../../misc/icons/ffffff/pencil.svg");
 }
 .no-svg .toolbar-bar .toolbar-icon-edit:active:before,
-.no-svg .toolbar-bar .toolbar-icon-edit.active:before {
+.no-svg .toolbar-bar .toolbar-icon-edit.is-active:before {
   background-image: url("../../../misc/icons/ffffff/pencil.png");
 }
 
diff --git a/core/modules/contextual/css/contextual.toolbar.css b/core/modules/contextual/css/contextual.toolbar.css
index dd06c75..b8e3d7f 100644
--- a/core/modules/contextual/css/contextual.toolbar.css
+++ b/core/modules/contextual/css/contextual.toolbar.css
@@ -19,7 +19,7 @@
 [dir="rtl"] .toolbar .toolbar-bar .contextual-toolbar-tab .toolbar-item {
   padding-right: 1.3333em;
 }
-.toolbar .toolbar-bar .contextual-toolbar-tab .toolbar-item.active {
+.toolbar .toolbar-bar .contextual-toolbar-tab .toolbar-item.is-active {
   background-image:-moz-linear-gradient(rgb(78,159,234) 0%,rgb(69,132,221) 100%);
   background-image:-webkit-gradient(linear,color-stop(0, rgb(78,159,234)),color-stop(1, rgb(69,132,221)));
   background-image: -webkit-linear-gradient(top,  rgb(78,159,234) 0%, rgb(69,132,221) 100%);
diff --git a/core/modules/contextual/js/toolbar/views/VisualView.js b/core/modules/contextual/js/toolbar/views/VisualView.js
index 9b44451..41b095f 100644
--- a/core/modules/contextual/js/toolbar/views/VisualView.js
+++ b/core/modules/contextual/js/toolbar/views/VisualView.js
@@ -44,7 +44,7 @@
       // Render the visibility.
       this.$el.toggleClass('hidden', !this.model.get('isVisible'));
       // Render the state.
-      this.$el.find('button').toggleClass('active', !this.model.get('isViewing'));
+      this.$el.find('button').toggleClass('is-active', !this.model.get('isViewing'));
 
       return this;
     },
diff --git a/core/modules/shortcut/css/shortcut.icons.css b/core/modules/shortcut/css/shortcut.icons.css
index 143b115..6a85a2e 100644
--- a/core/modules/shortcut/css/shortcut.icons.css
+++ b/core/modules/shortcut/css/shortcut.icons.css
@@ -13,11 +13,11 @@
   background-image: url("../../../misc/icons/bebebe/star.png");
 }
 .toolbar-bar .toolbar-icon-shortcut:active:before,
-.toolbar-bar .toolbar-icon-shortcut.active:before {
+.toolbar-bar .toolbar-icon-shortcut.is-active:before {
   background-image: url("../../../misc/icons/ffffff/star.svg");
 }
 .no-svg .toolbar-bar .toolbar-icon-shortcut:active:before,
-.no-svg .toolbar-bar .toolbar-icon-shortcut.active:before {
+.no-svg .toolbar-bar .toolbar-icon-shortcut.is-active:before {
   background-image: url("../../../misc/icons/ffffff/star.png");
 }
 
diff --git a/core/modules/system/css/system.theme.css b/core/modules/system/css/system.theme.css
index 48623fd..c104011 100644
--- a/core/modules/system/css/system.theme.css
+++ b/core/modules/system/css/system.theme.css
@@ -16,10 +16,10 @@
 /**
  * Markup generated by theme_tablesort_indicator().
  */
-th.active img {
+th.is-active img {
   display: inline;
 }
-td.active {
+td.is-active {
   background-color: #ddd;
 }
 
@@ -405,7 +405,7 @@ ul.menu li {
   padding-top: 0.2em;
   margin: 0;
 }
-ul.menu a.active {
+ul.menu a.is-active {
   color: #000;
 }
 
@@ -422,7 +422,7 @@ ul.inline li {
   list-style-type: none;
   padding: 0 0.5em;
 }
-ul.links a.active {
+ul.links a.is-active {
   color: #000;
 }
 
@@ -474,7 +474,7 @@ ul.tabs {
   padding: 0.2em 1em;
   text-decoration: none;
 }
-.tabs a.active {
+.tabs a.is-active {
   background-color: #eee;
 }
 .tabs a:focus,
diff --git a/core/modules/toolbar/css/toolbar.icons.css b/core/modules/toolbar/css/toolbar.icons.css
index ba89c05..8d2e245 100644
--- a/core/modules/toolbar/css/toolbar.icons.css
+++ b/core/modules/toolbar/css/toolbar.icons.css
@@ -72,11 +72,11 @@
   background-image: url("../../../misc/icons/bebebe/hamburger.png");
 }
 .toolbar-bar .toolbar-icon-menu:active:before,
-.toolbar-bar .toolbar-icon-menu.active:before {
+.toolbar-bar .toolbar-icon-menu.is-active:before {
   background-image: url("../../../misc/icons/ffffff/hamburger.svg");
 }
 .no-svg .toolbar-bar .toolbar-icon-menu:active:before,
-.no-svg .toolbar-bar .toolbar-icon-menu.active:before {
+.no-svg .toolbar-bar .toolbar-icon-menu.is-active:before {
   background-image: url("../../../misc/icons/ffffff/hamburger.png");
 }
 .toolbar-bar .toolbar-icon-help:before {
@@ -86,11 +86,11 @@
   background-image: url("../../../misc/icons/bebebe/questionmark-disc.png");
 }
 .toolbar-bar .toolbar-icon-help:active:before,
-.toolbar-bar .toolbar-icon-help.active:before {
+.toolbar-bar .toolbar-icon-help.is-active:before {
   background-image: url("../../../misc/icons/ffffff/questionmark-disc.svg");
 }
 .no-svg .toolbar-bar .toolbar-icon-help:active:before,
-.no-svg .toolbar-bar .toolbar-icon-help.active:before {
+.no-svg .toolbar-bar .toolbar-icon-help.is-active:before {
   background-image: url("../../../misc/icons/ffffff/questionmark-disc.png");
 }
 
@@ -104,11 +104,11 @@
   background-image: url("../../../misc/icons/787878/file.png");
 }
 .toolbar-icon-content:active:before,
-.toolbar-icon-content.active:before {
+.toolbar-icon-content.is-active:before {
   background-image: url("../../../misc/icons/000000/file.svg");
 }
 .no-svg .toolbar-icon-content:active:before,
-.no-svg .toolbar-icon-content.active:before {
+.no-svg .toolbar-icon-content.is-active:before {
   background-image: url("../../../misc/icons/000000/file.png");
 }
 .toolbar-icon-structure:before {
@@ -118,11 +118,11 @@
   background-image: url("../../../misc/icons/787878/orgchart.png");
 }
 .toolbar-icon-structure:active:before,
-.toolbar-icon-structure.active:before {
+.toolbar-icon-structure.is-active:before {
   background-image: url("../../../misc/icons/000000/orgchart.svg");
 }
 .no-svg .toolbar-icon-structure:active:before,
-.no-svg .toolbar-icon-structure.active:before {
+.no-svg .toolbar-icon-structure.is-active:before {
   background-image: url("../../../misc/icons/000000/orgchart.png");
 }
 .toolbar-icon-appearance:before {
@@ -132,11 +132,11 @@
   background-image: url("../../../misc/icons/787878/paintbrush.png");
 }
 .toolbar-icon-appearance:active:before,
-.toolbar-icon-appearance.active:before {
+.toolbar-icon-appearance.is-active:before {
   background-image: url("../../../misc/icons/000000/paintbrush.svg");
 }
 .no-svg .toolbar-icon-appearance:active:before,
-.no-svg .toolbar-icon-appearance.active:before {
+.no-svg .toolbar-icon-appearance.is-active:before {
   background-image: url("../../../misc/icons/000000/paintbrush.png");
 }
 .toolbar-icon-people:before {
@@ -146,11 +146,11 @@
   background-image: url("../../../misc/icons/787878/people.png");
 }
 .toolbar-icon-people:active:before,
-.toolbar-icon-people.active:before {
+.toolbar-icon-people.is-active:before {
   background-image: url("../../../misc/icons/000000/people.svg");
 }
 .no-svg .toolbar-icon-people:active:before,
-.no-svg .toolbar-icon-people.active:before {
+.no-svg .toolbar-icon-people.is-active:before {
   background-image: url("../../../misc/icons/000000/people.png");
 }
 .toolbar-icon-extend:before {
@@ -160,11 +160,11 @@
   background-image: url("../../../misc/icons/787878/puzzlepiece.png");
 }
 .toolbar-icon-extend:active:before,
-.toolbar-icon-extend.active:before {
+.toolbar-icon-extend.is-active:before {
   background-image: url("../../../misc/icons/000000/puzzlepiece.svg");
 }
 .no-svg .toolbar-icon-extend:active:before,
-.no-svg .toolbar-icon-extend.active:before {
+.no-svg .toolbar-icon-extend.is-active:before {
   background-image: url("../../../misc/icons/000000/puzzlepiece.png");
 }
 .toolbar-icon-configuration:before {
@@ -174,11 +174,11 @@
   background-image: url("../../../misc/icons/787878/wrench.png");
 }
 .toolbar-icon-configuration:active:before,
-.toolbar-icon-configuration.active:before {
+.toolbar-icon-configuration.is-active:before {
   background-image: url("../../../misc/icons/000000/wrench.svg");
 }
 .no-svg .toolbar-icon-configuration:active:before,
-.no-svg .toolbar-icon-configuration.active:before {
+.no-svg .toolbar-icon-configuration.is-active:before {
   background-image: url("../../../misc/icons/000000/wrench.png");
 }
 .toolbar-icon-reports:before {
@@ -188,11 +188,11 @@
   background-image: url("../../../misc/icons/787878/barchart.png");
 }
 .toolbar-icon-reports:active:before,
-.toolbar-icon-reports.active:before {
+.toolbar-icon-reports.is-active:before {
   background-image: url("../../../misc/icons/000000/barchart.svg");
 }
 .no-svg .toolbar-icon-reports:active:before,
-.no-svg .toolbar-icon-reports.active:before {
+.no-svg .toolbar-icon-reports.is-active:before {
   background-image: url("../../../misc/icons/000000/barchart.png");
 }
 .toolbar-icon-help:before {
@@ -202,11 +202,11 @@
   background-image: url("../../../misc/icons/787878/questionmark-disc.png");
 }
 .toolbar-icon-help:active:before,
-.toolbar-icon-help.active:before {
+.toolbar-icon-help.is-active:before {
   background-image: url("../../../misc/icons/000000/questionmark-disc.svg");
 }
 .no-svg .toolbar-icon-help:active:before,
-.no-svg .toolbar-icon-help.active:before {
+.no-svg .toolbar-icon-help.is-active:before {
   background-image: url("../../../misc/icons/000000/questionmark-disc.png");
 }
 .toolbar .toolbar-bar .toolbar-icon:before {
diff --git a/core/modules/toolbar/css/toolbar.menu.css b/core/modules/toolbar/css/toolbar.menu.css
index 5e70a02..da982b9 100644
--- a/core/modules/toolbar/css/toolbar.menu.css
+++ b/core/modules/toolbar/css/toolbar.menu.css
@@ -29,7 +29,7 @@
   margin-right: 0;
 }
 .toolbar .toolbar-tray .active-trail > .toolbar-box a,
-.toolbar .toolbar-tray a.active {
+.toolbar .toolbar-tray a.is-active {
   color: #000;
   font-weight: bold;
 }
diff --git a/core/modules/toolbar/css/toolbar.module.css b/core/modules/toolbar/css/toolbar.module.css
index 860daef..d59bf1e 100644
--- a/core/modules/toolbar/css/toolbar.module.css
+++ b/core/modules/toolbar/css/toolbar.module.css
@@ -190,14 +190,14 @@ body.toolbar-fixed .toolbar .toolbar-tray-vertical {
   overflow-y: auto;
   position: fixed;
 }
-.toolbar .toolbar-tray.active {
+.toolbar .toolbar-tray.is-active {
   display: block;
 }
 /* Bring the tray into the viewport. By default it is just off-screen. */
-.toolbar-oriented .toolbar-tray-vertical.active {
+.toolbar-oriented .toolbar-tray-vertical.is-active {
   left: 0; /* LTR */
 }
-[dir="rtl"] .toolbar-oriented .toolbar-tray-vertical.active {
+[dir="rtl"] .toolbar-oriented .toolbar-tray-vertical.is-active {
   left: auto;
   right: 0;
 }
diff --git a/core/modules/toolbar/css/toolbar.theme.css b/core/modules/toolbar/css/toolbar.theme.css
index 5a585d2..fb7dbdf 100644
--- a/core/modules/toolbar/css/toolbar.theme.css
+++ b/core/modules/toolbar/css/toolbar.theme.css
@@ -46,7 +46,7 @@
   background-image: linear-gradient(rgba(255, 255, 255, 0.125) 20%, transparent 200%);
   text-decoration: none;
 }
-.toolbar .toolbar-bar .toolbar-tab > .toolbar-item.active {
+.toolbar .toolbar-bar .toolbar-tab > .toolbar-item.is-active {
   background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%);
   background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%);
 }
@@ -92,7 +92,7 @@
 }
 .toolbar-tray a:hover,
 .toolbar-tray a:active,
-.toolbar-tray a.active {
+.toolbar-tray a.is-active {
   color: #000;
   text-decoration: underline;
 }
diff --git a/core/modules/toolbar/js/toolbar.menu.js b/core/modules/toolbar/js/toolbar.menu.js
index 1100278..c3b7890 100644
--- a/core/modules/toolbar/js/toolbar.menu.js
+++ b/core/modules/toolbar/js/toolbar.menu.js
@@ -123,7 +123,7 @@
         activeItem = location.pathname;
       }
       if (activeItem) {
-        var $activeItem = $menu.find('a[href="' + activeItem + '"]').addClass('active');
+        var $activeItem = $menu.find('a[href="' + activeItem + '"]').addClass('is-active');
         var $activeTrail = $activeItem.parentsUntil('.root', 'li').addClass('active-trail');
         toggleList($activeTrail, true);
       }
diff --git a/core/modules/toolbar/js/views/ToolbarVisualView.js b/core/modules/toolbar/js/views/ToolbarVisualView.js
index 62908e0..f421716 100644
--- a/core/modules/toolbar/js/views/ToolbarVisualView.js
+++ b/core/modules/toolbar/js/views/ToolbarVisualView.js
@@ -125,16 +125,16 @@
       var $tab = $(this.model.get('activeTab'));
       // Deactivate the previous tab.
       $(this.model.previous('activeTab'))
-        .removeClass('active')
+        .removeClass('is-active')
         .prop('aria-pressed', false);
       // Deactivate the previous tray.
       $(this.model.previous('activeTray'))
-        .removeClass('active');
+        .removeClass('is-active');
 
       // Activate the selected tab.
       if ($tab.length > 0) {
         $tab
-          .addClass('active')
+          .addClass('is-active')
           // Mark the tab as pressed.
           .prop('aria-pressed', true);
         var name = $tab.attr('data-toolbar-tray');
@@ -146,7 +146,7 @@
         // Activate the associated tray.
         var $tray = this.$el.find('[data-toolbar-tray="' + name + '"].toolbar-tray');
         if ($tray.length) {
-          $tray.addClass('active');
+          $tray.addClass('is-active');
           this.model.set('activeTray', $tray.get(0));
         }
         else {
diff --git a/core/modules/tour/css/tour.module.css b/core/modules/tour/css/tour.module.css
index cbaa1a1..345b120 100644
--- a/core/modules/tour/css/tour.module.css
+++ b/core/modules/tour/css/tour.module.css
@@ -16,7 +16,7 @@
   color: #fff;
   font-weight: bold;
 }
-.toolbar .tour-toolbar-tab button.active {
+.toolbar .tour-toolbar-tab button.is-active {
   background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%);
   background-image: -moz-linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%);
   background-image: -o-linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%);
diff --git a/core/modules/tour/js/tour.js b/core/modules/tour/js/tour.js
index 7578f39..94be2af 100644
--- a/core/modules/tour/js/tour.js
+++ b/core/modules/tour/js/tour.js
@@ -87,7 +87,7 @@
       // Render the state.
       var isActive = this.model.get('isActive');
       this.$el.find('button')
-        .toggleClass('active', isActive)
+        .toggleClass('is-active', isActive)
         .prop('aria-pressed', isActive);
       return this;
     },
diff --git a/core/modules/user/css/user.icons.css b/core/modules/user/css/user.icons.css
index e61128c..aa09bcc 100644
--- a/core/modules/user/css/user.icons.css
+++ b/core/modules/user/css/user.icons.css
@@ -13,10 +13,10 @@
   background-image: url("../../../misc/icons/bebebe/person.png");
 }
 .toolbar-bar .toolbar-icon-user:active:before,
-.toolbar-bar .toolbar-icon-user.active:before {
+.toolbar-bar .toolbar-icon-user.is-active:before {
   background-image: url("../../../misc/icons/ffffff/person.svg");
 }
 .no-svg .toolbar-bar .toolbar-icon-user:active:before,
-.no-svg .toolbar-bar .toolbar-icon-user.active:before {
+.no-svg .toolbar-bar .toolbar-icon-user.is-active:before {
   background-image: url("../../../misc/icons/ffffff/person.png");
 }
diff --git a/core/modules/views_ui/css/views_ui.admin.theme.css b/core/modules/views_ui/css/views_ui.admin.theme.css
index 8c92a09..7ed8586 100644
--- a/core/modules/views_ui/css/views_ui.admin.theme.css
+++ b/core/modules/views_ui/css/views_ui.admin.theme.css
@@ -455,7 +455,7 @@ td.group-title {
 }
 
 .views-displays .tabs.secondary li,
-.views-displays .tabs.secondary li.active {
+.views-displays .tabs.secondary li.is-active {
   background: transparent;
   margin-bottom: 5px;
   border: 0;
@@ -492,7 +492,7 @@ td.group-title {
 /**
  * Display a red border if the display doesn't validate.
  */
-.views-displays .tabs.secondary li.active a.active.error,
+.views-displays .tabs.secondary li.is-active a.is-active.error,
 .views-displays .tabs.secondary a.error {
   border: 2px solid #ed541d;
   padding: 1px 6px;
@@ -507,8 +507,8 @@ td.group-title {
 }
 
 .views-displays .tabs.secondary li a:hover,
-.views-displays .tabs.secondary li.active a,
-.views-displays .tabs.secondary li.active a.active {
+.views-displays .tabs.secondary li.is-active a,
+.views-displays .tabs.secondary li.is-active a.is-active {
   background-color: #555;
   color: #fff;
 }
diff --git a/core/themes/bartik/color/preview.css b/core/themes/bartik/color/preview.css
index 65e9ad7..10b6022 100644
--- a/core/themes/bartik/color/preview.css
+++ b/core/themes/bartik/color/preview.css
@@ -59,7 +59,7 @@
   background: #b3b3b3;
   background: rgba(255, 255, 255, 1);
 }
-#preview-main-menu-links li a.active {
+#preview-main-menu-links li a.is-active {
   border-bottom: none;
 }
 #preview-main-menu-links li {
diff --git a/core/themes/bartik/css/colors.css b/core/themes/bartik/css/colors.css
index 324215a..8099602 100644
--- a/core/themes/bartik/css/colors.css
+++ b/core/themes/bartik/css/colors.css
@@ -8,14 +8,14 @@ body {
 }
 #page,
 #main-wrapper,
-#main-menu-links li a.active,
+#main-menu-links li a.is-active,
 #main-menu-links li.active-trail a {
   background: #ffffff;
 }
-.tabs ul.primary li a.active {
+.tabs ul.primary li a.is-active {
   background-color: #ffffff;
 }
-.tabs ul.primary li.active a {
+.tabs ul.primary li.is-active a {
   background-color: #ffffff;
   border-bottom: 1px solid #ffffff;
 }
@@ -52,7 +52,7 @@ a:active,
 }
 .region-header,
 .region-header a,
-.region-header li a.active,
+.region-header li a.is-active,
 #name-and-slogan,
 .site-branding-block,
 #name-and-slogan a,
diff --git a/core/themes/bartik/css/style.css b/core/themes/bartik/css/style.css
index 6cb3831..59378f1 100644
--- a/core/themes/bartik/css/style.css
+++ b/core/themes/bartik/css/style.css
@@ -591,7 +591,7 @@ h1.site-name {
   background: #b3b3b3;
   background: rgba(255, 255, 255, 1);
 }
-#main-menu-links li a.active {
+#main-menu-links li a.is-active {
   border-bottom: none;
 }
 
@@ -1145,7 +1145,7 @@ div.tabs {
   float: right;
   zoom: 1;
 }
-.tabs ul.primary li.active a {
+.tabs ul.primary li.is-active a {
   border-bottom: 1px solid #ffffff;
 }
 .tabs ul.primary li a {
@@ -1165,7 +1165,7 @@ div.tabs {
   border-top-left-radius: 6px;
   border-top-right-radius: 6px;
 }
-.tabs ul.primary li.active a {
+.tabs ul.primary li.is-active a {
   background-color: #ffffff;
   border: 1px solid #bbb;
   border-bottom: 1px solid #fff;
@@ -1204,7 +1204,7 @@ div.tabs {
   padding: 0.25em 0.5em;
   text-decoration: none;
 }
-.tabs ul.secondary li a.active {
+.tabs ul.secondary li a.is-active {
   background: #f2f2f2;
   border-bottom: none;
   border-radius: 5px;
@@ -1886,7 +1886,7 @@ div.admin-panel .description {
     padding: 0.7em 0.8em;
   }
   .featured #main-menu-links li a:active,
-  .featured #main-menu-links li a.active {
+  .featured #main-menu-links li a.is-active {
     background: #f0f0f0;
     background: rgba(240, 240, 240, 1.0);
   }
diff --git a/core/themes/seven/js/mobile.install.js b/core/themes/seven/js/mobile.install.js
index 28268bf..1b103bb 100644
--- a/core/themes/seven/js/mobile.install.js
+++ b/core/themes/seven/js/mobile.install.js
@@ -4,7 +4,7 @@
 
   function findActiveStep (steps) {
     for (var i = 0; i < steps.length; i++) {
-      if (steps[i].className === 'active') {
+      if (steps[i].className === 'is-active') {
         return i + 1;
       }
     }
diff --git a/core/themes/seven/maintenance-page.css b/core/themes/seven/maintenance-page.css
index bc56fa0..5e83d72 100644
--- a/core/themes/seven/maintenance-page.css
+++ b/core/themes/seven/maintenance-page.css
@@ -69,12 +69,12 @@
   [dir="rtl"] .task-list li {
     padding: 0.5em 1em 0.5em 1em;
   }
-  .task-list .active {
+  .task-list .is-active {
     background: #ebeae4;
     position: relative;
     font-weight: normal;
   }
-  .task-list .active:after {
+  .task-list .is-active:after {
     left: 100%; /* LTR */
     border: solid transparent;
     border-color: rgba(235, 234, 228, 0);
@@ -88,7 +88,7 @@
     top: 50%;
     margin-top: -1.32em;
   }
-  [dir="rtl"] .task-list .active:after {
+  [dir="rtl"] .task-list .is-active:after {
     left: auto;
     right: 100%;
     border-left-color: transparent;
diff --git a/core/themes/seven/seven.theme b/core/themes/seven/seven.theme
index c3e7a32..bf7aa0f 100644
--- a/core/themes/seven/seven.theme
+++ b/core/themes/seven/seven.theme
@@ -109,7 +109,7 @@ function seven_menu_local_task($variables) {
     $a_tag = \Drupal::l($link_text, $link['route_name'], $link['route_parameters'], $link['localized_options']);
   }
 
-  return '<li' . (!empty($variables['element']['#active']) ? ' class="tabs__tab active"' : ' class="tabs__tab"') . '>' . $a_tag . '</li>';
+  return '<li' . (!empty($variables['element']['#active']) ? ' class="tabs__tab is-active"' : ' class="tabs__tab"') . '>' . $a_tag . '</li>';
 }
 
 /**
diff --git a/core/themes/seven/style.css b/core/themes/seven/style.css
index 8b58258..3b31c4e 100644
--- a/core/themes/seven/style.css
+++ b/core/themes/seven/style.css
@@ -214,7 +214,7 @@ li.tabs__tab a {
   margin: 16px 0 0;
   margin: 1rem 0 0;
 }
-.tabs.primary .tabs__tab.active {
+.tabs.primary .tabs__tab.is-active {
   z-index: 15;
   border-color: #a6a6a6;
   border-radius: 4px 0 0 0;
@@ -229,7 +229,7 @@ li.tabs__tab a {
   background-color: #fafaf7;
   text-decoration: underline;
 }
-.tabs.primary .active a:focus {
+.tabs.primary .is-active a:focus {
   background: none;
   text-decoration: underline;
 }
@@ -248,7 +248,7 @@ li.tabs__tab a {
   [dir="rtl"] .no-svg .tabs.primary a {
     background-image: url(../../misc/icons/0074bd/chevron-left.png);
   }
-  .tabs.primary .tabs__tab.active a {
+  .tabs.primary .tabs__tab.is-active a {
     background-image: none;
   }
 }
@@ -295,21 +295,21 @@ li.tabs__tab a {
   padding-bottom:16px;
   padding-bottom: 1rem;
 }
-.is-collapse-enabled .tabs__tab.active {
+.is-collapse-enabled .tabs__tab.is-active {
   position: absolute;
   top: 2px;
   left: 0;
   width: 75%;
   border-bottom: 0;
 }
-[dir="rtl"] .is-collapse-enabled .tabs__tab.active {
+[dir="rtl"] .is-collapse-enabled .tabs__tab.is-active {
   left: auto;
   right: 0;
 }
-.is-collapse-enabled .tabs.primary a.active:before {
+.is-collapse-enabled .tabs.primary a.is-active:before {
   content: none;
 }
-.is-open .tabs__tab.active {
+.is-open .tabs__tab.is-active {
   border-color: #a6a6a6;
   background-color: #ffffff;
   color: #004f80;
@@ -350,9 +350,9 @@ li.tabs__tab a {
 }
 
 /* Override the states above */
-.is-horizontal .tabs__tab.active,
-.is-horizontal .tabs.primary .tabs__tab.active,
-[dir="rtl"] .is-horizontal .tabs.primary .tabs__tab.active {
+.is-horizontal .tabs__tab.is-active,
+.is-horizontal .tabs.primary .tabs__tab.is-active,
+[dir="rtl"] .is-horizontal .tabs.primary .tabs__tab.is-active {
   border-radius: 4px 4px 0 0;
   position: relative;
   width: auto;
@@ -360,7 +360,7 @@ li.tabs__tab a {
   border-bottom: 0;
   margin: 0 -4px;
 }
-[dir="rtl"] .is-horizontal .tabs__tab.active {
+[dir="rtl"] .is-horizontal .tabs__tab.is-active {
   margin: 0 -6px;
 }
 .is-horizontal .tabs.primary a {
@@ -389,7 +389,7 @@ li.tabs__tab a {
 .tabs.secondary .tabs__tab + .tabs__tab {
   border-top: 1px solid #d9d8d4;
 }
-.tabs.secondary .tabs__tab.active {
+.tabs.secondary .tabs__tab.is-active {
   color: #004f80;
   border-left: 2px solid #004f80;
   padding-left: 15px;
@@ -404,7 +404,7 @@ li.tabs__tab a {
   padding: 7px 13px 5px;
   text-decoration: none;
 }
-.tabs.secondary .active a {
+.tabs.secondary .is-active a {
   color: #004f80;
 }
 .tabs.secondary a:focus {
@@ -426,7 +426,7 @@ li.tabs__tab a {
   border-top: 0;
   padding: 0;
 }
-.is-horizontal .tabs.secondary .tabs__tab.active {
+.is-horizontal .tabs.secondary .tabs__tab.is-active {
   border-bottom-color: #004f80;
 }
 .is-horizontal .tabs.secondary .tabs__tab:hover {
@@ -634,38 +634,38 @@ th > a:after {
   border-bottom: 2px solid transparent;
   transition: all 0.1s;
 }
-th.active > a {
+th.is-active > a {
   color: #004875;
 }
-th.active img {
+th.is-active img {
   position: absolute;
   right: 0; /* LTR */
   top: 50%;
 }
-[dir="rtl"] th.active img {
+[dir="rtl"] th.is-active img {
   right: auto;
   left: 0;
 }
-th.active > a:after {
+th.is-active > a:after {
   border-bottom-color: #004875;
 }
 th > a:focus,
 th > a:hover,
-th.active > a:focus,
-th.active > a:hover {
+th.is-active > a:focus,
+th.is-active > a:hover {
   color: #008ee6;
   text-decoration: none;
 }
 th > a:focus:after,
 th > a:hover:after,
-th.active > a:focus:after,
-th.active > a:hover:after {
+th.is-active > a:focus:after,
+th.is-active > a:hover:after {
   border-bottom-color: #008ee6;
 }
 td .item-list ul {
   margin: 0;
 }
-td.active {
+td.is-active {
   background: none;
 }
 
@@ -1179,8 +1179,8 @@ details.fieldset-no-legend {
 }
 
 .views-displays ul.secondary li a,
-.views-displays ul.secondary li.active a,
-.views-displays ul.secondary li.active a.active {
+.views-displays ul.secondary li.is-active a,
+.views-displays ul.secondary li.is-active a.is-active {
   padding: 2px 7px 3px;
 }
 
@@ -1188,8 +1188,8 @@ details.fieldset-no-legend {
   color: #0074bd;
 }
 
-.views-displays ul.secondary li.active a,
-.views-displays ul.secondary li.active a.active {
+.views-displays ul.secondary li.is-active a,
+.views-displays ul.secondary li.is-active a.is-active {
   border: 1px solid transparent;
 }
 
