diff --git a/STARTERKIT/.sass-lint.yml b/STARTERKIT/.sass-lint.yml
new file mode 100644
index 0000000..e6ea0b5
--- /dev/null
+++ b/STARTERKIT/.sass-lint.yml
@@ -0,0 +1,120 @@
+options:
+  formatter: stylish
+  merge-default-rules: true
+rules:
+  # Extends
+  extends-before-mixins: 2
+  extends-before-declarations: 2
+  placeholder-in-extend: 2
+
+  # Mixins
+  mixins-before-declarations:
+    - 2
+    - exclude:
+      - 'breakpoint'
+      - 'mq'
+      - 'respond-to'
+      - 'rtl'
+      - 'zen-breakpoint'
+      - 'zen-layout'
+      - 'zen-mq'
+      - 'zen-respond-to'
+
+  # Line Spacing
+  one-declaration-per-line: 2
+  empty-line-between-blocks:
+    - 2
+    - ignore-single-line-rulesets: false
+  single-line-per-selector: 2
+
+  # Disallows
+  no-color-keywords: 2
+  no-color-literals: 2
+  no-css-comments: 2
+  no-debug: 2
+  no-duplicate-properties: 2
+  no-empty-rulesets: 2
+  no-extends: 0
+  no-ids: 2
+  no-important: 2
+  no-invalid-hex: 2
+  no-mergeable-selectors: 2
+  no-misspelled-properties:
+    - 2
+    - extra-properties:
+        - '*background'
+        - '*background-image'
+        - '*display'
+        - '*font-family'
+        - _font-family
+        - '*height'
+        - 'interpolation-mode'
+        - '*list-style-image'
+        - '*margin-left'
+        - '*margin-right'
+        - '*overflow'
+        - '*position'
+        - '*vertical-align'
+        - '*width'
+        - '*zoom'
+  no-qualifying-elements: 0
+  no-trailing-zero: 2
+  no-transition-all: 2
+  no-url-protocols: 2
+  no-vendor-prefixes: 2
+  no-warn: 2
+  property-units: 0
+
+  # Nesting
+  force-attribute-nesting: 0
+  force-element-nesting: 0
+  force-pseudo-nesting: 0
+
+  # Name Formats
+  class-name-format:
+    - 2
+    - convention: hyphenatedbem
+  function-name-format: 2
+  id-name-format: 2
+  mixin-name-format: 2
+  placeholder-name-format:
+    - 2
+    - convention: ^[\w_-]+$
+  variable-name-format: 2
+
+  # Style Guide
+  bem-depth: 0
+  border-zero: 2
+  brace-style:
+    - 2
+    - style: stroustrup
+    - allow-single-line: false
+  clean-import-paths: 2
+  empty-args: 0
+  hex-length: 2
+  hex-notation: 2
+  indentation: 2
+  leading-zero: 2
+  nesting-depth:
+    - 2
+    - max-depth: 4
+  property-sort-order: 0
+  quotes: 2
+  shorthand-values: 2
+  url-quotes: 2
+  variable-for-property: 2
+  zero-unit: 2
+
+  # Inner Spacing
+  space-after-comma: 2
+  space-before-colon: 2
+  space-after-colon: 2
+  space-before-brace: 2
+  space-before-bang: 2
+  space-after-bang: 2
+  space-between-parens: 0
+  space-around-operator: 0
+
+  # Final Items
+  trailing-semicolon: 2
+  final-newline: 2
diff --git a/STARTERKIT/.scss-lint.yml b/STARTERKIT/.scss-lint.yml
deleted file mode 100644
index 28d585e..0000000
--- a/STARTERKIT/.scss-lint.yml
+++ /dev/null
@@ -1,48 +0,0 @@
-# Documentation for the scss-lint Linters is available at:
-# https://github.com/causes/scss-lint/blob/master/lib/scss_lint/linter/README.md
-#
-# This file is for new projects with no pre-existing styles. If you are adding
-# linting to an existing project, use the following command to create a
-# .scss-lint.yml file instead: scss-lint --format=Config -o .scss-lint.yml
-# Then go through each linter, one at a time, disabling it and fixing the
-# warnings in your code.
-linters:
-  ElsePlacement:
-    style: new_line # Like Drupal's PHP coding standard.
-  EmptyLineBetweenBlocks:
-    ignore_single_line_blocks: false
-  MergeableSelector:
-    force_nesting: true
-  NestingDepth:
-    max_depth: 4  # &--variant is not a nesting level. https://github.com/causes/scss-lint/issues/384
-  PropertySortOrder:
-    enabled: false
-  PropertySpelling:
-    extra_properties:
-      # Experimental properties and old IE hacks can be listed here.
-      - '*background'
-      - '*background-image'
-      - '*display'
-      - '*font-family'
-      - '_font-family'
-      - '*height'
-      - '*list-style-image'
-      - '*margin-left'
-      - '*margin-right'
-      - '*overflow'
-      - '*position'
-      - '*vertical-align'
-      - '*width'
-      - '*zoom'
-  PseudoElement:
-    enabled: false
-  QualifyingElement:
-    enabled: false
-  SelectorFormat:
-    convention: hyphenated_BEM
-  SingleLinePerProperty:
-    allow_single_line_rule_sets: false # Allowed by default.
-  SpaceAfterPropertyColon:
-    style: at_least_one_space
-  SpaceAroundOperator:
-    enabled: false
diff --git a/STARTERKIT/Gemfile b/STARTERKIT/Gemfile
deleted file mode 100644
index cfc880c..0000000
--- a/STARTERKIT/Gemfile
+++ /dev/null
@@ -1,7 +0,0 @@
-#
-# This file is only needed to specify the version of our Sass linting tool.
-#
-
-source 'https://rubygems.org'
-
-gem 'scss_lint', '0.48.0'
diff --git a/STARTERKIT/gulpfile.js b/STARTERKIT/gulpfile.js
index cfc147a..ca25b95 100644
--- a/STARTERKIT/gulpfile.js
+++ b/STARTERKIT/gulpfile.js
@@ -27,8 +27,10 @@ options.theme = {
   js    : options.rootPath.theme + 'js/'
 };
 
-// Set the URL used to access the Drupal website under development.
-options.drupalURL = 'http://localhost';
+// Set the URL used to access the Drupal website under development. This will
+// allow Browser Sync to serve the website and update CSS changes on the fly.
+options.drupalURL = '';
+// options.drupalURL = 'http://localhost';
 
 // Define the node-sass configuration. The includePaths is critical!
 options.sass = {
@@ -83,11 +85,6 @@ options.styleGuide = {
   title: 'Zen 7.x-6.x Style Guide'
 };
 
-// Define the path to the project's .scss-lint.yml.
-options.scssLint = {
-  yml: options.rootPath.project + '.scss-lint.yml'
-};
-
 // Define the paths to the JS files to lint.
 options.eslint = {
   files  : [
@@ -101,13 +98,6 @@ options.eslint = {
 options.gulpWatchOptions = {};
 // options.gulpWatchOptions = {interval: 1000, mode: 'poll'};
 
-// If you wish to disable the following tasks, you can set these variables to
-// true (which is simpler than re-writing the Gulp tasks to remove them.)
-options.disableTask = {
-  lintSass: false,
-  browserSync: false
-};
-
 
 // ################################
 // Load Gulp and tools we will use.
@@ -194,18 +184,17 @@ gulp.task('lint:js-with-fail', function() {
 
 // Lint Sass.
 gulp.task('lint:sass', function() {
-  if (options.disableTask.lintSass) {
-    return Promise.resolve();
-  }
   return gulp.src(options.theme.sass + '**/*.scss')
-    .pipe($.scssLint({'bundleExec': true, 'config': options.scssLint.yml}));
+    .pipe($.sassLint())
+    .pipe($.sassLint.format());
 });
 
 // Lint Sass and throw an error for a CI to catch.
 gulp.task('lint:sass-with-fail', function() {
   return gulp.src(options.theme.sass + '**/*.scss')
-    .pipe($.scssLint({'bundleExec': true, 'config': options.scssLint.yml}))
-    .pipe($.scssLint.failReporter());
+    .pipe($.sassLint())
+    .pipe($.sassLint.format())
+    .pipe($.sassLint.failOnError());
 });
 
 // ##############################
@@ -214,7 +203,7 @@ gulp.task('lint:sass-with-fail', function() {
 gulp.task('watch', ['browser-sync', 'watch:lint-and-styleguide', 'watch:js']);
 
 gulp.task('browser-sync', ['watch:css'], function() {
-  if (options.disableTask.browserSync) {
+  if (!options.drupalURL) {
     return Promise.resolve();
   }
   return browserSync.init({
diff --git a/STARTERKIT/package.json b/STARTERKIT/package.json
index 9a24472..95bff56 100644
--- a/STARTERKIT/package.json
+++ b/STARTERKIT/package.json
@@ -18,12 +18,13 @@
     "gulp-rename": "^1.2.2",
     "gulp-replace": "^0.5.4",
     "gulp-sass": "2.2.0",
-    "gulp-scss-lint": "^0.3.9",
+    "gulp-sass-lint": "^1.1.1",
     "gulp-size": "^2.1.0",
     "gulp-sourcemaps": "^1.6.0",
     "kss": "^2.4.0",
     "node-sass": "3.4.2",
     "node-sass-import-once": "^1.2.0",
+    "sass-lint": "^1.6.0",
     "support-for": "^1.0.5",
     "typey": "^1.0.0",
     "zen-grids": "^2.0.1"
diff --git a/STARTERKIT/sass/base/_root.scss b/STARTERKIT/sass/base/_root.scss
index a63a7a7..a67b4ce 100644
--- a/STARTERKIT/sass/base/_root.scss
+++ b/STARTERKIT/sass/base/_root.scss
@@ -1,6 +1,8 @@
+// sass-lint:disable no-vendor-prefixes
+// scss-lint:disable VendorPrefix
+
 // Use the saner border-box model for all elements.
 * {
-  // scss-lint:disable VendorPrefix
   @if support-for(firefox, 28) {
     -moz-box-sizing: border-box;
   }
@@ -13,7 +15,6 @@ html {
   font-family: $font-body;
   // Prevent iOS text size adjust after orientation change, without disabling
   // user zoom.
-  // scss-lint:disable VendorPrefix
   -ms-text-size-adjust: 100%;
   -webkit-text-size-adjust: 100%;
   // On short pages, we want any background gradients to fill the entire height
diff --git a/STARTERKIT/sass/base/forms/_forms.scss b/STARTERKIT/sass/base/forms/_forms.scss
index 0637882..821e581 100644
--- a/STARTERKIT/sass/base/forms/_forms.scss
+++ b/STARTERKIT/sass/base/forms/_forms.scss
@@ -65,21 +65,21 @@ input::-moz-focus-inner {
 // 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 //    and `video` controls.
 // 2. Correct inability to style clickable `input` types in iOS.
-html input[type="button"], // 1
-[type="reset"],
-[type="submit"] {
+html input[type='button'], // 1
+[type='reset'],
+[type='submit'] {
   -webkit-appearance: button; // 2
 }
 
 // Fix the cursor style for Chrome's increment/decrement buttons. For certain
 // `font-size` values of the `input`, it causes the cursor style of the
 // decrement button to change from `default` to `text`.
-input[type="number"]::-webkit-inner-spin-button,
-input[type="number"]::-webkit-outer-spin-button {
+input[type='number']::-webkit-inner-spin-button,
+input[type='number']::-webkit-outer-spin-button {
   height: auto;
 }
 
-input[type="search"] {
+input[type='search'] {
   // Address `appearance` set to `searchfield` in Safari and Chrome.
   -webkit-appearance: textfield;
 
@@ -109,9 +109,9 @@ input[type="search"] {
 // Style guide: forms.base.button
 
 button,
-[type="button"],
-[type="reset"],
-[type="submit"] {
+[type='button'],
+[type='reset'],
+[type='submit'] {
   @extend %button;
 }
 
@@ -136,34 +136,34 @@ button,
 // Style guide: forms.base.input
 
 input {
-  &[type="text"],
-  &[type="search"],
-  &[type="tel"],
-  &[type="url"],
-  &[type="email"],
-  &[type="password"],
-  &[type="date"],
-  &[type="time"],
-  &[type="number"] {
+  &[type='text'],
+  &[type='search'],
+  &[type='tel'],
+  &[type='url'],
+  &[type='email'],
+  &[type='password'],
+  &[type='date'],
+  &[type='time'],
+  &[type='number'] {
     @extend %text-form-element;
   }
 
-  &[type="range"] {
+  &[type='range'] {
     // Add your styles.
   }
 
-  &[type="color"] {
+  &[type='color'] {
     // Add your styles.
   }
 
-  &[type="file"] {
+  &[type='file'] {
     // Add your styles.
   }
 }
 
 // Checkboxes
 //
-// If an `<input>` element has the `type="checkbox"` attribute set, the form
+// If an `<input>` element has the `type='checkbox'` attribute set, the form
 // field is displayed as a checkbox.
 //
 // It's recommended that you don't attempt to style these elements. Firefox's
@@ -175,7 +175,7 @@ input {
 
 // Radio buttons
 //
-// If an `<input>` element has the `type="radio"` attribute set, the form field
+// If an `<input>` element has the `type='radio'` attribute set, the form field
 // is displayed as a radio button.
 //
 // It's recommended that you don't attempt to style these elements. Firefox's
@@ -185,8 +185,8 @@ input {
 //
 // Style guide: forms.base.input-radio
 
-input[type="checkbox"],
-input[type="radio"] {
+input[type='checkbox'],
+input[type='radio'] {
   @if support-for(ie, 10) {
     // Address box sizing set to `content-box` in IE 8/9/10.
     box-sizing: border-box;
diff --git a/STARTERKIT/sass/components/autocomplete/_autocomplete.scss b/STARTERKIT/sass/components/autocomplete/_autocomplete.scss
index 1472a2d..3659f20 100644
--- a/STARTERKIT/sass/components/autocomplete/_autocomplete.scss
+++ b/STARTERKIT/sass/components/autocomplete/_autocomplete.scss
@@ -66,6 +66,7 @@
   }
 }
 
+// sass-lint:disable no-ids
 // scss-lint:disable IdSelector
 #autocomplete {
   @extend %autocomplete__list-wrapper;
@@ -82,4 +83,5 @@
     @extend %autocomplete__list-item--is-selected;
   }
 }
+// sass-lint:enable no-ids
 // scss-lint:enable IdSelector
diff --git a/STARTERKIT/sass/components/collapsible-fieldset/_collapsible-fieldset.scss b/STARTERKIT/sass/components/collapsible-fieldset/_collapsible-fieldset.scss
index 54cb1d8..805771d 100644
--- a/STARTERKIT/sass/components/collapsible-fieldset/_collapsible-fieldset.scss
+++ b/STARTERKIT/sass/components/collapsible-fieldset/_collapsible-fieldset.scss
@@ -16,8 +16,9 @@
     display: block;
     padding-left: 15px;
     @if support-for(ie, 8) {
-      // IE8 does not support multiple backgrounds, so IE8 will ignore the second
-      // declaration with the SVG. https://css-tricks.com/using-svg/
+      // IE8 does not support multiple backgrounds, so IE8 will ignore the
+      // second declaration with the SVG. https://css-tricks.com/using-svg/
+      // sass-lint:disable no-duplicate-properties
       // scss-lint:disable DuplicateProperty
       background-image: image-url('collapsible-fieldset/expanded.png');
       background-image: image-url('collapsible-fieldset/expanded.svg'), none;
@@ -58,6 +59,7 @@
 
     &__legend {
       @if support-for(ie, 8) {
+        // sass-lint:disable no-duplicate-properties
         // scss-lint:disable DuplicateProperty
         background-image: image-url('collapsible-fieldset/collapsed.png');
         background-image: image-url('collapsible-fieldset/collapsed.svg'), none;
diff --git a/STARTERKIT/sass/components/form-table/_form-table.scss b/STARTERKIT/sass/components/form-table/_form-table.scss
index 4b23894..470fe99 100644
--- a/STARTERKIT/sass/components/form-table/_form-table.scss
+++ b/STARTERKIT/sass/components/form-table/_form-table.scss
@@ -69,6 +69,7 @@
   }
 
   &__narrow-column {
+    // sass-lint:disable no-vendor-prefixes
     // scss-lint:disable VendorPrefix
     width: -moz-min-content;
     width: -webkit-min-content;
diff --git a/STARTERKIT/sass/components/more-link/_more-link.scss b/STARTERKIT/sass/components/more-link/_more-link.scss
index 07aa90f..cca94c1 100644
--- a/STARTERKIT/sass/components/more-link/_more-link.scss
+++ b/STARTERKIT/sass/components/more-link/_more-link.scss
@@ -19,6 +19,7 @@
     @if support-for(ie, 8) {
       // IE8 does not support multiple backgrounds, so IE8 will ignore the second
       // declaration with the SVG. https://css-tricks.com/using-svg/
+      // sass-lint:disable no-duplicate-properties
       // scss-lint:disable DuplicateProperty
       background-image: image-url('more-link/more-link__help-icon.png');
       background-image: image-url('more-link/more-link__help-icon.svg'), none;
diff --git a/STARTERKIT/sass/components/tabs/_tabs.scss b/STARTERKIT/sass/components/tabs/_tabs.scss
index d9df3ca..5c6a305 100644
--- a/STARTERKIT/sass/components/tabs/_tabs.scss
+++ b/STARTERKIT/sass/components/tabs/_tabs.scss
@@ -23,9 +23,11 @@
 
 .tabs,
 %tabs {
-  $tab-height: 1.25;
-
   @extend %clearfix;
+
+  // The line height of a tab.
+  $tab-height: 1.25;
+
   @include margin((2 - $tab-height) 0 0);
   @include line-height($tab-height);
   @if support-for(ie, 9) {
diff --git a/STARTERKIT/sass/components/watermark/_watermark.scss b/STARTERKIT/sass/components/watermark/_watermark.scss
index 3dcfa86..a3f7c8b 100644
--- a/STARTERKIT/sass/components/watermark/_watermark.scss
+++ b/STARTERKIT/sass/components/watermark/_watermark.scss
@@ -20,6 +20,7 @@
   font-weight: bold;
   text-transform: uppercase;
   text-align: center;
+  // sass-lint:disable no-color-literals
   // scss-lint:disable ColorVariable
   text-shadow: 0 0 1px rgba(0, 0, 0, .1);
   word-wrap: break-word;
diff --git a/STARTERKIT/sass/init/_colors.scss b/STARTERKIT/sass/init/_colors.scss
index b14de93..0a76c85 100644
--- a/STARTERKIT/sass/init/_colors.scss
+++ b/STARTERKIT/sass/init/_colors.scss
@@ -1,3 +1,4 @@
+// sass-lint:disable indentation, no-color-keywords, space-after-comma
 // scss-lint:disable ColorKeyword, ColorVariable, SpaceAfterComma
 
 // Colors
@@ -11,7 +12,7 @@
 // Style guide: sass.colors
 
 // Define the default color scheme's color names.
-$chroma: define-default-color-scheme('branding', "The site's main colors. Can be used to define colors in other color schemes.");
+$chroma: define-default-color-scheme('branding', 'The site\'s main colors. Can be used to define colors in other color schemes.');
 
 $chroma: add-colors((
   black:                  #000,
diff --git a/STARTERKIT/sass/init/_variables.scss b/STARTERKIT/sass/init/_variables.scss
index 7d601f0..632cc42 100644
--- a/STARTERKIT/sass/init/_variables.scss
+++ b/STARTERKIT/sass/init/_variables.scss
@@ -1,3 +1,4 @@
+// sass-lint:disable space-after-comma
 // scss-lint:disable SpaceAfterComma
 
 // Variables
diff --git a/STARTERKIT/sass/init/rtl/_rtl.scss b/STARTERKIT/sass/init/rtl/_rtl.scss
index ee48fee..5303a7a 100644
--- a/STARTERKIT/sass/init/rtl/_rtl.scss
+++ b/STARTERKIT/sass/init/rtl/_rtl.scss
@@ -13,12 +13,12 @@ $include-rtl: true !default;
 @mixin rtl() {
   @if $include-rtl {
     @if & {
-      [dir="rtl"] & {
+      [dir='rtl'] & {
         @content;
       }
     }
     @else {
-      [dir="rtl"] {
+      [dir='rtl'] {
         @content;
       }
     }
diff --git a/STARTERKIT/sass/init/visually-hidden/_visually-hidden.scss b/STARTERKIT/sass/init/visually-hidden/_visually-hidden.scss
index 40b86d8..56670ab 100644
--- a/STARTERKIT/sass/init/visually-hidden/_visually-hidden.scss
+++ b/STARTERKIT/sass/init/visually-hidden/_visually-hidden.scss
@@ -1,3 +1,4 @@
+// sass-lint:disable no-important
 // scss-lint:disable ImportantRule
 
 // visually-hidden()
diff --git a/STARTERKIT/sass/style-guide/chroma-kss-markup.scss b/STARTERKIT/sass/style-guide/chroma-kss-markup.scss
index d482ce1..a9e3102 100644
--- a/STARTERKIT/sass/style-guide/chroma-kss-markup.scss
+++ b/STARTERKIT/sass/style-guide/chroma-kss-markup.scss
@@ -2,6 +2,7 @@
 
 @import 'init';
 
+// sass-lint:disable no-css-comments
 // scss-lint:disable Comment
 /*
 #{chroma-kss-markup()}
diff --git a/STARTERKIT/sass/style-guide/kss-only.scss b/STARTERKIT/sass/style-guide/kss-only.scss
index 1615af4..0b0c466 100644
--- a/STARTERKIT/sass/style-guide/kss-only.scss
+++ b/STARTERKIT/sass/style-guide/kss-only.scss
@@ -5,6 +5,6 @@
 // options.styleGuide.css object in gulpfile.js.
 
 // Add an outline to every grid item in the style guide.
-[id^="kssref-layouts-"] [class^="layout-"][class*="__"] {
+[id^='kssref-layouts-'] [class^='layout-'][class*='__'] {
   outline: 1px dotted color('grey');
 }
