diff --git a/core/themes/seven/layout.css b/core/themes/seven/layout.css
new file mode 100644
index 0000000..28fb782
--- /dev/null
+++ b/core/themes/seven/layout.css
@@ -0,0 +1,48 @@
+.l-container {
+  max-width: 770px;
+  _width: 770px;
+  padding-left: 0.625em;
+  padding-right: 0.625em;
+  margin: 0 1.5em;
+}
+.l-container:after {
+  content: "";
+  display: table;
+  clear: both;
+}
+
+@media screen and (min-width: 38em) {
+  .l-container {
+    margin: 0 2.5em;
+  }
+  .l-column {
+    width: 100%;
+    float: left;
+    display: inline;
+  }
+  .l-column.half {
+    width: 46.66667%;
+    float: left;
+    margin-right: 6.66667%;
+    display: inline;
+  }
+  .l-column.quarter {
+    width: 20%;
+    float: left;
+    margin-right: 6.66667%;
+    display: inline;
+  }
+  .l-column.three-quarter {
+    width: 73.33333%;
+    float: left;
+    margin-right: 6.66667%;
+    display: inline;
+  }
+  .l-column.omega {
+    float: right;
+    margin-right: 0;
+    display: inline;
+  }
+}
+
+
diff --git a/core/themes/seven/seven.info.yml b/core/themes/seven/seven.info.yml
index 13ca85c..4db7faf 100644
--- a/core/themes/seven/seven.info.yml
+++ b/core/themes/seven/seven.info.yml
@@ -6,6 +6,7 @@ version: VERSION
 core: 8.x
 stylesheets:
   screen:
+    - layout.css
     - style.css
 stylesheets-override:
   - vertical-tabs.css
diff --git a/core/themes/seven/style.css b/core/themes/seven/style.css
index 2556bf0..c4491f0 100644
--- a/core/themes/seven/style.css
+++ b/core/themes/seven/style.css
@@ -355,9 +355,6 @@ ul.secondary li.active a.active {
   color: #fff;
   background: #666;
 }
-#content {
-  clear: left;
-}
 @media screen and (max-width:56.538em) { /* 735px */
   .touch #branding {
     padding-right: 0;
@@ -411,23 +408,9 @@ ul.secondary li.active a.active {
 #page {
   background: #fff;
   color: #333;
-  margin-left: 0.8125em;
-  margin-right: 0.8125em;
   padding: 20px 0 40px 0;
   position: relative;
 }
-@media screen and (min-width:28.125em) { /* 450px */
-  #page {
-    margin-left: 1.25em;
-    margin-right: 1.25em;
-  }
-}
-@media screen and (min-width:45em) { /* 720px */
-  #page {
-    margin-left: 2.5em;
-    margin-right: 2.5em;
-  }
-}
 ul.links li,
 ul.inline li {
   padding-right: 1em; /* LTR */
@@ -835,9 +818,6 @@ select.form-select:focus {
  * Improve form element usability on narrow devices.
  */
 @media screen and (max-width: 600px) {
-  #page {
-    margin: 0 10px;
-  }
   input.form-autocomplete,
   input.form-text,
   input.form-tel,
@@ -989,34 +969,6 @@ div.admin-options div.form-item {
 }
 
 /* Maintenance theming */
-body.in-maintenance #sidebar-first {
-  float: left; /* LTR */
-  max-width: 200px;
-  width: 25%;
-}
-[dir=rtl] body.in-maintenance #sidebar-first {
-  float: right;
-}
-body.in-maintenance #content {
-  float: right; /* LTR */
-  clear: none;
-  width: 72%;
-}
-[dir=rtl] body.in-maintenance #content {
-  float: left;
-}
-body.in-maintenance #page {
-  max-width: 770px;
-  margin: 0 auto;
-  padding-top: 2em;
-  width: 90%;
-}
-body.in-maintenance #branding h1 {
-  max-width: 770px;
-  margin: 0 auto;
-  float: none;
-  width: 90%;
-}
 body.in-maintenance .form-radios .form-type-radio {
   padding: 2px 0;
 }
@@ -1032,14 +984,6 @@ body.in-maintenance #logo {
   margin-bottom: 1.5em;
   max-width: 180px;
 }
-@media all and (max-width: 768px) {
-  body.in-maintenance #sidebar-first,
-  body.in-maintenance #content {
-    float: none;
-    max-width: none;
-    width: auto;
-  }
-}
 .task-list {
   margin-left: 0; /* LTR */
   list-style-type: none;
@@ -1646,12 +1590,6 @@ details.fieldset-no-legend {
   screen and (min-width: 780px),
   (orientation: landscape) and (min-device-height: 780px) {
 
-  [class*="page-node-add-"] #page,
-  .page-node-edit #page {
-    padding-top: 0;
-    margin-right: 0;
-  }
-
   [class*="page-node-add-"] #console,
   .page-node-edit #console {
     margin-right: 2.5em;
diff --git a/core/themes/seven/templates/maintenance-page.html.twig b/core/themes/seven/templates/maintenance-page.html.twig
index ecd7286..ce138c0 100644
--- a/core/themes/seven/templates/maintenance-page.html.twig
+++ b/core/themes/seven/templates/maintenance-page.html.twig
@@ -24,18 +24,20 @@
   {{ page_top }}
 
   <header id="branding">
-    {% if title %}<h1 class="page-title">{{ title }}</h1>{% endif %}
+    <div class="l-container">
+      {% if title %}<h1 class="page-title">{{ title }}</h1>{% endif %}
+    </div>
   </header>
 
-  <div id="page">
-    <div id="sidebar-first" class="sidebar">
+  <div id="page" class="l-container">
+    <div id="sidebar-first" class="l-column quarter sidebar">
       {% if logo %}
         <img id="logo" src="{{ logo }}" alt="{{ site_name }}" />
       {% endif %}
       {{ sidebar_first }}
     </div>
 
-    <main id="content" class="clearfix">
+    <main id="content" class="l-column three-quarter omega clearfix">
       {% if messages %}
         <div id="console">{{ messages }}</div>
       {% endif %}
diff --git a/core/themes/seven/templates/page.html.twig b/core/themes/seven/templates/page.html.twig
index d899393..b11aef3 100644
--- a/core/themes/seven/templates/page.html.twig
+++ b/core/themes/seven/templates/page.html.twig
@@ -68,23 +68,25 @@
  */
 #}
   <header id="branding" class="clearfix" role="navigation">
-    {{ breadcrumb }}
-    {{ title_prefix }}
-    {% if title %}
-      <h1 class="page-title">{{ title }}</h1>
-    {% endif %}
-    {{ title_suffix }}
-    {% if primary_local_tasks %}
-      {{ primary_local_tasks }}
-    {% endif %}
+      <div class="l-container">
+        {{ breadcrumb }}
+        {{ title_prefix }}
+        {% if title %}
+          <h1 class="page-title">{{ title }}</h1>
+        {% endif %}
+        {{ title_suffix }}
+        {% if primary_local_tasks %}
+          {{ primary_local_tasks }}
+        {% endif %}
+      </div>
   </header>
 
-  <div id="page">
+  <div id="page" class="l-container">
     {% if secondary_local_tasks %}
-      <div class="tabs-secondary clearfix" role="navigation">{{ secondary_local_tasks }}</div>
+      <div class="l-column tabs-secondary clearfix" role="navigation">{{ secondary_local_tasks }}</div>
     {% endif %}
 
-    <main id="content" class="clearfix" role="main">
+    <main id="content" class="l-column clearfix" role="main">
       <div class="visually-hidden"><a id="main-content"></a></div>
       {% if messages %}
         <div id="console" class="clearfix">{{ messages }}</div>
@@ -102,7 +104,7 @@
       {{ page.content }}
     </main>
 
-    <footer id="footer" role="contentinfo">
+    <footer id="footer" role="contentinfo" class="l-column">
       {{ feed_icons }}
     </footer>
 
