diff --git a/app/assets/stylesheets/_application.scss b/app/assets/stylesheets/_application.scss
index 892571d675870c47d071b6672d7d7a393cd04c5f..32d257b564952724b2a39c669e2da8b722d71f40 100644
--- a/app/assets/stylesheets/_application.scss
+++ b/app/assets/stylesheets/_application.scss
@@ -26,6 +26,9 @@
 /* font overrides */
 @import 'typography';
 
+// layout
+@import 'sidebar';
+
 /* login */
 @import 'login';
 @import 'registration';
diff --git a/app/assets/stylesheets/base.scss b/app/assets/stylesheets/base.scss
index dd7ed17919716d001f14d010b1f654b2a8e4c6e3..0993dc8a92a1e3e3a618c725925bbab71d827278 100644
--- a/app/assets/stylesheets/base.scss
+++ b/app/assets/stylesheets/base.scss
@@ -10,6 +10,24 @@ body {
   > .container-fluid { max-width: 100%; }
 }
 
+// These names are generated by a rails controller
+// scss-lint:disable SelectorFormat
+.page-contacts,
+.page-conversations,
+.page-notifications,
+.page-people.action-show,
+.page-people.action-contacts,
+.page-photos,
+.page-profiles.action-edit,
+.page-services.action-index,
+.page-streams,
+.page-user_applications,
+.page-users.action-edit,
+.page-users.action-privacy_settings {
+  background-color: $sidebars-background;
+}
+// scss-lint:enable SelectorFormat
+
 // Overflow
 h1,
 h2,
diff --git a/app/assets/stylesheets/bootstrap-variables.scss b/app/assets/stylesheets/bootstrap-variables.scss
index c9a41ba947ef3a0bbeacaf6ae87df62a87ff6022..bca512cff55bed3195a174a5af87e2b2f0d34d88 100644
--- a/app/assets/stylesheets/bootstrap-variables.scss
+++ b/app/assets/stylesheets/bootstrap-variables.scss
@@ -668,9 +668,9 @@ $navbar-collapse-max-height: 480px;
 //
 //##
 //** Background color on `.list-group-item`
-$list-group-bg: $sidebars-background;
+$list-group-bg: $white;
 //** `.list-group-item` border color
-$list-group-border: $border-grey;
+$list-group-border: transparent;
 //** List group border radius
 $list-group-border-radius: 0;
 
diff --git a/app/assets/stylesheets/contacts.scss b/app/assets/stylesheets/contacts.scss
index f466d5519ea8e4f7f47edfe06ca9b889db9beba9..31e7c11512424f268e3a16ec1708d1a910604a06 100644
--- a/app/assets/stylesheets/contacts.scss
+++ b/app/assets/stylesheets/contacts.scss
@@ -1,21 +1,29 @@
+.page-contacts {
+  .sidebar { padding-bottom: 10px; }
+
+  .header {
+    border-bottom: 1px solid $border-grey;
+    min-height: 55px;
+    form { margin: 0; }
+    input,
+    .btn {
+      margin-bottom: 11px;
+      margin-top: 11px;
+    }
+
+    .aspect-controls { margin: 7px -10px 7px 0; }
+  }
+}
+
 #contacts_container {
   #people_stream.contacts {
     .header {
-      border-bottom: 1px solid $border-grey;
-      margin-top: 10px;
-      min-height: 53px;
       #change_aspect_name { cursor: pointer; }
       #aspect_name_form {
         display: none;
-        form { margin: 0px; }
-        input {
-          margin-bottom: 0px;
-          margin-top: 10px;
-        }
-        .btn { margin-top: 10px; }
       }
       #contact_list_search {
-        margin: 6px 30px 0 0;
+        margin: 11px 30px 0 0;
         width: 150px;
         &:focus { width: 250px; }
       }
diff --git a/app/assets/stylesheets/conversations.scss b/app/assets/stylesheets/conversations.scss
index 508209095c4baaa500a52f58c095d72829b0c59a..01540628eeb0ea3af586893f183b253890529f01 100644
--- a/app/assets/stylesheets/conversations.scss
+++ b/app/assets/stylesheets/conversations.scss
@@ -1,22 +1,8 @@
 .page-conversations {
-  background-color: $sidebars-background;
+  .framed-content { padding: 0 10px 10px; }
+  .sidebar-header .pull-right { margin-top: 12px; }
 
-  .left-pane,
-  .new-conversation,
-  .stream_container .conversation-participants {
-    background-color: $white;
-    border: 1px solid $light-grey;
-    box-shadow: $card-shadow;
-    margin-top: -10px;
-  }
-
-  .new-conversation,
-  .left-pane-header,
-  .stream_container .conversation-participants {
-    padding: 10px;
-  }
-
-  .left-pane {
+  .sidebar {
     margin-bottom: 50px;
     .pagination { margin: 5px; }
   }
diff --git a/app/assets/stylesheets/notifications.scss b/app/assets/stylesheets/notifications.scss
index 48c7a1b95a2e3b34d437d7818438a6ac1b4188da..f12336584057adbc9a2c52a3549ca2c16e264c1a 100644
--- a/app/assets/stylesheets/notifications.scss
+++ b/app/assets/stylesheets/notifications.scss
@@ -2,27 +2,22 @@
   .stream {
     .header {
       border-bottom: 1px solid $border-grey;
-      .btn-toolbar { margin: 11px 0; }
       margin-bottom: 10px;
     }
 
-    .year_container { margin-top: 40px; }
+    .btn-toolbar { margin: 11px 0; }
+
     .year {
       background-color: $white;
       color: $text-grey;
       font-size: 40px;
       line-height: 40px;
-      margin-bottom: -20px;
+      margin-bottom: 20px;
+      margin-top: 40px;
       text-align: center;
     }
 
-    .year_container + .day_group {
-      border-top: 1px solid $border-grey;
-      padding-top: 60px;
-    }
-
     .day_group + .day_group {
-      border-top: 1px dashed $border-grey;
       margin-top: 10px;
       padding-top: 10px;
     }
diff --git a/app/assets/stylesheets/people.scss b/app/assets/stylesheets/people.scss
index 2135983725534e3a286ce1fb4f3f83be00e4b9fd..66dcb70826a7ec6183483732896c8da65b3ad348 100644
--- a/app/assets/stylesheets/people.scss
+++ b/app/assets/stylesheets/people.scss
@@ -31,11 +31,12 @@
 #blocked_people {
   .blocked_person {
     border-bottom: 1px solid $border-grey;
-    padding: 10px;
-    margin: 0px;
     font-size: 13px;
     line-height: 16px;
+    margin: 0;
     min-height: 50px;
+    padding: 10px 0;
+    &:last-of-type { border-bottom: 0; }
     .avatar {
       width: 50px;
       height: 50px;
diff --git a/app/assets/stylesheets/profile.scss b/app/assets/stylesheets/profile.scss
index 590a979bd5f1d97205fceb6b65a10c83a2edf5b6..727c99fee276fbe73f6d6bd4014923e42f793f65 100644
--- a/app/assets/stylesheets/profile.scss
+++ b/app/assets/stylesheets/profile.scss
@@ -1,7 +1,3 @@
-body.page-people.action-show, body.page-people.action-contacts {
-  background-color: $sidebars-background;
-}
-
 #profile_container {
   .profile_header {
     margin-bottom: 15px;
@@ -109,11 +105,8 @@ body.page-people.action-show, body.page-people.action-contacts {
   }
 
   #profile {
-    background-color: $white;
     padding: 20px;
-    margin-top: -10px;
     margin-bottom: 35px;
-    box-shadow: $card-shadow;
 
     #profile_photo {
       margin-top: 10px;
diff --git a/app/assets/stylesheets/settings.scss b/app/assets/stylesheets/settings.scss
index c6bcf19f5d565745ea04ce5a292f26433dfa3383..e51edfd36e71d7853b0d3821eb4a6ad71c5ac91c 100644
--- a/app/assets/stylesheets/settings.scss
+++ b/app/assets/stylesheets/settings.scss
@@ -1,4 +1,19 @@
 // Specific styles for the settings pages (profile, user account, privacy, services)
+
+// These names are generated by a rails controller
+// scss-lint:disable SelectorFormat
+.page-profiles.action-edit,
+.page-services.action-index,
+.page-user_applications,
+.page-users.action-edit,
+.page-users.action-privacy_settings {
+  .framed-content {
+    padding-left: 10px;
+    padding-right: 10px;
+  }
+}
+// scss-lint:enable SelectorFormat
+
 .enclosed-checkbox label {
   margin-bottom: 0;
 }
diff --git a/app/assets/stylesheets/sidebar.scss b/app/assets/stylesheets/sidebar.scss
new file mode 100644
index 0000000000000000000000000000000000000000..9242840e60c5fd36e3094cce4fc555203958084c
--- /dev/null
+++ b/app/assets/stylesheets/sidebar.scss
@@ -0,0 +1,21 @@
+.sidebar,
+.framed-content {
+  background-color: $white;
+  border: 1px solid $light-grey;
+  box-shadow: $card-shadow;
+  margin-top: -10px;
+  padding-top: 10px;
+
+  .header,
+  .sidebar-header {
+    padding-left: 10px;
+    padding-right: 10px;
+
+    h3 {
+      line-height: 40px;
+      margin: 7px 0;
+    }
+  }
+
+  .list-group { margin-bottom: 0; }
+}
diff --git a/app/assets/stylesheets/stream.scss b/app/assets/stylesheets/stream.scss
index a1f98a13707e94f29e16bad84000a1b37dc84e0d..355ff8e9af0a135b67f0fd9e434e3e3fc4aa2a51 100644
--- a/app/assets/stylesheets/stream.scss
+++ b/app/assets/stylesheets/stream.scss
@@ -1,7 +1,3 @@
-body.page-streams, body.page-photos {
-  background-color: $sidebars-background;
-}
-
 .stream_container {
   #publisher {
     margin-bottom: 15px;
diff --git a/app/assets/templates/contact_tpl.jst.hbs b/app/assets/templates/contact_tpl.jst.hbs
index 9dd218f127d7e1f85f9b04ab8a1180686897778b..beddbdc3ba2f22a1398dd1c304adf0be1e7427b2 100644
--- a/app/assets/templates/contact_tpl.jst.hbs
+++ b/app/assets/templates/contact_tpl.jst.hbs
@@ -1,4 +1,4 @@
-<div class="container-fluid stream_element media contact {{in_aspect}}" id={{person_id}}>
+<div class="clearfix stream_element media contact {{in_aspect}}" id={{person_id}}>
   <div class="pull-right">
     {{{aspectMembershipIndicator this in_aspect}}}
   </div>
diff --git a/app/views/api/openid_connect/user_applications/index.html.haml b/app/views/api/openid_connect/user_applications/index.html.haml
index a6ed67d698bea17ed8f286199483acbda02d4203..667abc2185c742d711dc0d51d3fa8648c7114136 100644
--- a/app/views/api/openid_connect/user_applications/index.html.haml
+++ b/app/views/api/openid_connect/user_applications/index.html.haml
@@ -4,9 +4,11 @@
 .container-fluid.applications-page
   .row
     .col-md-3
-      = render "shared/settings_nav"
+      .sidebar
+        = render "shared/settings_nav"
     .col-md-9
-      %h3= t(".title")
-      .row
-        .col-md-12
-          = render "add_remove_applications"
+      .framed-content
+        %h3= t(".title")
+        .row
+          .col-md-12
+            = render "add_remove_applications"
diff --git a/app/views/contacts/_header.html.haml b/app/views/contacts/_header.html.haml
index cec592c66ff9d61ab447d29d237b730de5daf3e7..56107363e5e2dbaaf86a8d3a4807ae5c8357f959 100644
--- a/app/views/contacts/_header.html.haml
+++ b/app/views/contacts/_header.html.haml
@@ -1,6 +1,6 @@
-.header
+.header.clearfix
   - if @aspect
-    #aspect_controls.pull-right
+    .aspect-controls.pull-right#aspect_controls
       - if @aspect.contacts.size > 0 && @aspect.contacts.size < 20
         = start_a_conversation_link(@aspect, @aspect.contacts.size)
 
@@ -19,7 +19,7 @@
 
       = link_to @aspect, method: "delete", data: { confirm: t("aspects.edit.confirm_remove_aspect") }, class: "delete contacts_button", id: "delete_aspect" do
         %i.entypo-trash.contacts-header-icon{title: t("delete")}
-    .pull-right
+    .pull-right.contact-list-search
       = search_field_tag :contact_search, "", id: "contact_list_search", class: "search-query form-control",  placeholder: t("contacts.index.user_search")
     %h3
       %span#aspect_name
diff --git a/app/views/contacts/_sidebar.html.haml b/app/views/contacts/_sidebar.html.haml
index 5d42397e9265f4388792ab569455d382b306d647..15ec29812ff12a0d9ec0494c5357dc1c152ac98d 100644
--- a/app/views/contacts/_sidebar.html.haml
+++ b/app/views/contacts/_sidebar.html.haml
@@ -1,5 +1,6 @@
-%h3
-  = t("contacts.index.title")
+.sidebar-header.clearfix
+  %h3
+    = t("contacts.index.title")
 = render "contacts/aspect_listings"
 %hr
 - if AppConfig.settings.community_spotlight.enable?
diff --git a/app/views/contacts/index.html.haml b/app/views/contacts/index.html.haml
index 365537d3d51ba4709aac26092f6e70211e1188b7..ebc6d2e43b8d6d5ddc19ce52c0b8f94a80a59d5a 100644
--- a/app/views/contacts/index.html.haml
+++ b/app/views/contacts/index.html.haml
@@ -4,10 +4,11 @@
 .container-fluid#contacts_container
   .row
     .col-md-3
-      = render 'contacts/sidebar'
+      .sidebar
+        = render "contacts/sidebar"
 
     .col-md-9
-      #people_stream.stream.contacts
+      .stream.contacts.framed-content#people_stream
         = render 'contacts/header'
 
         - if @contacts_size > 0
diff --git a/app/views/conversations/_show.haml b/app/views/conversations/_show.haml
index 149afc0dbacb60884a7203fe3f4be6a5cec33baf..bb6c3361fa33823cbdb0a9ed54d0c30fb61e3aff 100644
--- a/app/views/conversations/_show.haml
+++ b/app/views/conversations/_show.haml
@@ -2,7 +2,7 @@
 -#   licensed under the Affero General Public License version 3 or later.  See
 -#   the COPYRIGHT file.
 
-.conversation-participants
+.conversation-participants.framed-content
   .control-icons.pull-right
     - if conversation.participants.count > 1
       = link_to content_tag(:i, nil, class: "entypo-cross"),
diff --git a/app/views/conversations/index.haml b/app/views/conversations/index.haml
index 2b04a898d94476522069ceb73765d8fd6c296b3f..47c1e76d69a774b1d3d980a6a32b84630a4fc815 100644
--- a/app/views/conversations/index.haml
+++ b/app/views/conversations/index.haml
@@ -7,12 +7,12 @@
 .container-fluid#conversations_container
   .row
     .col-md-4
-      .left-pane#left_pane
-        .left-pane-header#left_pane_header
+      .sidebar#left_pane
+        .sidebar-header.clearfix#left_pane_header
+          .pull-right
+            = link_to t(".new_conversation"), conversations_path, class: "btn btn-default"
           %h3
-            .pull-right{ class: ("hidden" unless @visibilities)}
-              = link_to t('.new_conversation'), conversations_path, class: 'btn btn-default'
-            = t('.inbox')
+            = t(".inbox")
 
         .conversation-inbox#conversation_inbox
           .stream.conversations
@@ -34,7 +34,7 @@
       - else
         .stream_container.hidden
           #conversation_show
-        #conversation_new
+        .framed-content#conversation_new
           .new-conversation
             %h3.text-center
               = t("conversations.index.new_conversation")
diff --git a/app/views/conversations/show.js.erb b/app/views/conversations/show.js.erb
index 70e2a0ed5cb5acd8d3c6a6b48f49ffd04196c5ca..c07578ee45f2e4faaa64e7cd8c7f0c93868a51e0 100644
--- a/app/views/conversations/show.js.erb
+++ b/app/views/conversations/show.js.erb
@@ -1,7 +1,6 @@
 if($('.stream_container').hasClass('hidden')){
   $('#conversation_new').hide();
   $('.stream_container').removeClass('hidden');
-  $('#left_pane_header .pull-right').removeClass('hidden');
 }
 
 $('#conversation_show').html("<%= escape_javascript(render('conversations/show', :conversation => @conversation)) %>");
diff --git a/app/views/notifications/index.html.haml b/app/views/notifications/index.html.haml
index 7722fbcf41236f9cdb4074f7d6586b7bdc72421d..6acc3fa9830412bd55eb5524b64ee1748ddc9104 100644
--- a/app/views/notifications/index.html.haml
+++ b/app/views/notifications/index.html.haml
@@ -1,68 +1,79 @@
 .container-fluid#notifications_container
   .row
     .col-md-3
-      %h3
-        = t('.notifications')
-      .list-group
-        %a.list-group-item{class: ('active' unless params[:type] && @grouped_unread_notification_counts.has_key?(params[:type])), href: '/notifications' + (params[:show] == 'unread' ? '?show=unread' : '') }
-          %span.pull-right.badge{class: ("hidden" unless @unread_notification_count > 0)}
-            = @unread_notification_count
-          = t('.all_notifications')
-        - @grouped_unread_notification_counts.each do |key, count|
-          %a.list-group-item{class: ('active' if params[:type] == key), data: { type: key }, href: '/notifications?type=' + key + (params[:show] == 'unread' ? '&show=unread' : '') }
-            %span.pull-right.badge{class: ("hidden" unless count > 0)}
-              = count
-            - case key
-              - when 'also_commented', 'comment_on_post'
-                %i.entypo-comment
-              - when 'liked'
-                %i.entypo-heart
-              - when 'mentioned'
-                %span.mentionIcon
-                  @
-              - when 'reshared'
-                %i.entypo-reshare
-              - when 'started_sharing'
-                %i.entypo-add-user
-            = t('.'+key)
+      .sidebar
+        .sidebar-header.clearfix
+          %h3
+            = t(".notifications")
+        .list-group
+          %a.list-group-item{href: "/notifications" + (params[:show] == "unread" ? "?show=unread" : ""),
+              class: ("active" unless params[:type] && @grouped_unread_notification_counts.has_key?(params[:type]))}
+            %span.pull-right.badge{class: ("hidden" unless @unread_notification_count > 0)}
+              = @unread_notification_count
+            = t(".all_notifications")
+          - @grouped_unread_notification_counts.each do |key, count|
+            %a.list-group-item{class: ("active" if params[:type] == key),
+                data: {type: key},
+                href: "/notifications?type=" + key + (params[:show] == "unread" ? "&show=unread" : "")}
+              %span.pull-right.badge{class: ("hidden" unless count > 0)}
+                = count
+              - case key
+                - when "also_commented", "comment_on_post"
+                  %i.entypo-comment
+                - when "liked"
+                  %i.entypo-heart
+                - when "mentioned"
+                  %span.mentionIcon
+                    @
+                - when "reshared"
+                  %i.entypo-reshare
+                - when "started_sharing"
+                  %i.entypo-add-user
+              = t("." + key)
 
     .col-md-9.stream.notifications
-      .row.header
-        .col-md-12
-          .btn-toolbar.pull-right
-            .btn-group
-              %a.btn.btn-default{class: ('active' unless params[:show] == 'unread'), href: '/notifications' + (params[:type] ? '?type=' + params[:type] : '') }
-                = t('.show_all')
-              %a.btn.btn-default{class: ('active' if params[:show] == 'unread'), href: '/notifications?show=unread' + (params[:type] ? '&type=' + params[:type] : '') }
-                = t('.show_unread')
-            %a.btn.btn-default.btn-group{href: read_all_notifications_path(type: params[:type] ),class: ('disabled' unless @unread_notification_count > 0)}
-              -if params[:type]
-                = t('.mark_all_shown_as_read')
-              -else
-                = t('.mark_all_as_read')
-      - if @group_days.length > 0
-        - year = nil
-        - @group_days.each do |date, notes|
-          - if display_year?(year, date)
-            - year = the_year(date)
-            .row.year_container
-              .col-md-4.col-md-offset-4.year= year
+      .framed-content
+        .row
+          .col-md-12
+            .header.clearfix
+              .btn-toolbar.pull-right
+                .btn-group
+                  %a.btn.btn-default{class: ("active" unless params[:show] == "unread"),
+                      href: "/notifications" + (params[:type] ? "?type=" + params[:type] : "")}
+                    = t(".show_all")
+                  %a.btn.btn-default{class: ("active" if params[:show] == "unread"),
+                      href: "/notifications?show=unread" + (params[:type] ? "&type=" + params[:type] : "")}
+                    = t(".show_unread")
+                %a.btn.btn-default.btn-group{href: read_all_notifications_path(type: params[:type]),
+                    class: ("disabled" unless @unread_notification_count > 0)}
+                  - if params[:type]
+                    = t(".mark_all_shown_as_read")
+                  - else
+                    = t(".mark_all_as_read")
+        - if @group_days.length > 0
+          - year = nil
+          - @group_days.each do |date, notes|
+            - if display_year?(year, date)
+              - year = the_year(date)
+              .row.year_container
+                .col-md-4.col-md-offset-4.year= year
 
-          .day_group.row
-            .date.col-md-2
-              .day= the_day(date)
-              .month= the_month(date)
+            .day_group.row
+              .date.col-md-2
+                .day= the_day(date)
+                .month= the_month(date)
 
-            .notifications_for_day.col-md-10
-              - notes.each do |note|
-                = render partial: 'notifications/notification', locals: { note: note }
+              .notifications_for_day.col-md-10
+                - notes.each do |note|
+                  = render partial: "notifications/notification", locals: {note: note}
 
-        = will_paginate @notifications, renderer: WillPaginate::ActionView::BootstrapLinkRenderer
+          .center-block.text-center
+            = will_paginate @notifications, renderer: WillPaginate::ActionView::BootstrapLinkRenderer
 
-      - else
-        .no_notifications.well
-          %h4
-            = t('.no_notifications')
+        - else
+          .no_notifications.well
+            %h4
+              = t(".no_notifications")
 
 :javascript
   $(document).ready(function(){
diff --git a/app/views/people/show.html.haml b/app/views/people/show.html.haml
index d980b2281cc177012d7e58484db7248dcadf3630..bfb10872ce25aff935cd4b25ed423c002e6ee73b 100644
--- a/app/views/people/show.html.haml
+++ b/app/views/people/show.html.haml
@@ -14,7 +14,7 @@
 .container-fluid#profile_container
   .row
     .col-md-3
-      .profile-sidebar#profile
+      .sidebar.profile-sidebar#profile
         -# here be JS
 
     .col-md-9
diff --git a/app/views/profiles/_edit_private.haml b/app/views/profiles/_edit_private.haml
index bc76b868adf65a65efa2163899497130b957c000..42e29375a14d814a8b267df5585bff3e94c1bfaf 100644
--- a/app/views/profiles/_edit_private.haml
+++ b/app/views/profiles/_edit_private.haml
@@ -65,5 +65,5 @@
 
 .small-horizontal-spacer
 
-.submit_block
+.submit_block.form-group
   = yield(:submit_block)
diff --git a/app/views/profiles/edit.haml b/app/views/profiles/edit.haml
index 844af392b0d0ad49133f7396dbf2c6822e5e631c..8eee45d2a32eddeec55edc89aa1b018ce49b7ba0 100644
--- a/app/views/profiles/edit.haml
+++ b/app/views/profiles/edit.haml
@@ -5,12 +5,14 @@
 .container-fluid
   .row
     .col-md-3
-      = render "shared/settings_nav"
+      .sidebar
+        = render "shared/settings_nav"
     .col-md-9
-      - content_for :submit_block do
-        = link_to t("cancel"), local_or_remote_person_path(current_user.person), class: "btn btn-default"
-        = submit_tag t(".update_profile"), class: "btn btn-primary pull-right", id: "update_profile"
+      .framed-content
+        - content_for :submit_block do
+          = link_to t("cancel"), local_or_remote_person_path(current_user.person), class: "btn btn-default"
+          = submit_tag t(".update_profile"), class: "btn btn-primary pull-right", id: "update_profile"
 
-      = form_tag profile_path, method: :put, multipart: true, id: "update_profile_form" do
-        = render "edit_public", profile: @profile, aspect: @aspect, person: @person, mobile: false
-        = render "edit_private", person: @person, profile: @profile, aspect: @aspect, step: @step
+        = form_tag profile_path, method: :put, multipart: true, id: "update_profile_form" do
+          = render "edit_public", profile: @profile, aspect: @aspect, person: @person, mobile: false
+          = render "edit_private", person: @person, profile: @profile, aspect: @aspect, step: @step
diff --git a/app/views/services/index.html.haml b/app/views/services/index.html.haml
index 8afad2b83cef11a72b753a2155d6bdd8b186e471..3828b102fd9325ff4562f939e9746fc21d4c5c8c 100644
--- a/app/views/services/index.html.haml
+++ b/app/views/services/index.html.haml
@@ -8,14 +8,16 @@
 .container-fluid
   .row
     .col-md-3
-      = render "shared/settings_nav"
+      .sidebar
+        = render "shared/settings_nav"
     .col-md-9
-      %h3= t(".title")
-      .row
-        .col-md-12
-          = render "add_remove_services"
+      .framed-content
+        %h3= t(".title")
+        .row
+          .col-md-12
+            = render "add_remove_services"
 
-      .row
-        .col-md-12
-          %p
-            = t(".services_explanation")
+        .row
+          .col-md-12
+            %p
+              = t(".services_explanation")
diff --git a/app/views/shared/_settings_nav.haml b/app/views/shared/_settings_nav.haml
index 561a499207041f349e9cdb8396f69245b46118ab..7c4b74460da156db22a51912a959bd7409f64719 100644
--- a/app/views/shared/_settings_nav.haml
+++ b/app/views/shared/_settings_nav.haml
@@ -1,5 +1,5 @@
 #section_header
-  %h2
+  %h3.sidebar-header
     = t("settings")
   .list-group#settings_nav
     = link_to t("profile"), edit_profile_path,
diff --git a/app/views/users/edit.html.haml b/app/views/users/edit.html.haml
index 3c56ff7c883333763f39aa6b2bb9fb19722e0002..0f883935f8496678e66f3b6587769e9ffebd6c2f 100644
--- a/app/views/users/edit.html.haml
+++ b/app/views/users/edit.html.haml
@@ -1,6 +1,8 @@
 .container-fluid
   .row
     .col-md-3
-      = render "shared/settings_nav"
+      .sidebar
+        = render "shared/settings_nav"
     .col-md-9
-      = render "edit"
+      .framed-content
+        = render "edit"
diff --git a/app/views/users/privacy_settings.html.haml b/app/views/users/privacy_settings.html.haml
index ef4f865a42778e9a6bb8b8e07a8e3cea14eada6e..fc0fa4c8c2ab40108bd2cbd2ea41d3ef8c223ab5 100644
--- a/app/views/users/privacy_settings.html.haml
+++ b/app/views/users/privacy_settings.html.haml
@@ -8,6 +8,8 @@
 .container-fluid
   .row
     .col-md-3
-      = render "shared/settings_nav"
+      .sidebar
+        = render "shared/settings_nav"
     .col-md-9
-      = render "privacy_settings"
+      .framed-content
+        = render "privacy_settings"
diff --git a/features/step_definitions/aspects_steps.rb b/features/step_definitions/aspects_steps.rb
index f9126e628ebe8dd154e847aa79dce255bd83cce1..0cfeb8242d68ac86233e33e795bd9c996d274056 100644
--- a/features/step_definitions/aspects_steps.rb
+++ b/features/step_definitions/aspects_steps.rb
@@ -98,7 +98,7 @@ When /^I drag "([^"]*)" (up|down)$/ do |aspect_name, direction|
   native_aspect = aspect.base.native
   native_target = target.base.native
   mouse.down native_aspect
-  mouse.move_to native_target, native_target.size.width / 2, 0
+  mouse.move_to native_target
   sleep 1
   mouse.up
   expect(page).to have_no_css "#aspect_nav .ui-sortable.syncing"