diff --git a/core/themes/bartik/css/style.css b/core/themes/bartik/css/style.css
index 7532a4a..4cef590 100644
--- a/core/themes/bartik/css/style.css
+++ b/core/themes/bartik/css/style.css
@@ -1119,14 +1119,10 @@ fieldset {
   border: 1px solid #cccccc;
   margin-top: 10px;
   margin-bottom: 32px;
-  padding: 0 0 10px;
+  padding: 0;
   position: relative;
-  top: 12px; /* Offsets the negative margin of legends */
   border-radius: 4px;
 }
-.fieldset-wrapper {
-  margin-top: 25px;
-}
 .node-form .vertical-tabs .fieldset-wrapper {
   margin-top: 0;
 }
@@ -1159,18 +1155,14 @@ fieldset legend {
   border-bottom: none;
   color: #3b3b3b;
   display: block;
-  height: 2em;
   left: -1px; /* LTR */
   font-family: "Lucida Grande", "Lucida Sans Unicode", Verdana, sans-serif;
-  line-height: 2;
   padding: 0;
-  position: absolute;
-  text-indent: 10px;
   text-shadow: 0 1px 0 #fff;
-  top: -12px;
   width: 100%;
   border-top-left-radius: 4px;
   border-top-right-radius: 4px;
+  margin: 0 -1px;
 }
 fieldset.collapsed legend {
   border-radius: 4px;
@@ -1183,8 +1175,12 @@ fieldset legend a:focus,
 fieldset legend a:active {
   color: #000;
 }
+fieldset .fieldset-legend {
+  display: block;
+  padding: 5px 10px;
+}
 fieldset .fieldset-wrapper {
-  padding: 0 10px;
+  padding: 10px;
 }
 fieldset .fieldset-description {
   margin-top: 5px;
@@ -1193,6 +1189,12 @@ fieldset .fieldset-description {
   color: #3c3c3c;
   font-style: italic;
 }
+.js fieldset.collapsible > legend .fieldset-legend {
+  padding-left: 25px;
+}
+.js fieldset.collapsible > legend .fieldset-legend a {
+  margin-left: -15px;
+}
 input {
   margin: 2px 0;
   padding: 4px;
diff --git a/core/themes/seven/style-rtl.css b/core/themes/seven/style-rtl.css
index 7070720..e2d1a0d 100644
--- a/core/themes/seven/style-rtl.css
+++ b/core/themes/seven/style-rtl.css
@@ -120,13 +120,7 @@ tr td:last-child {
 /**
  * Fieldsets.
  */
-fieldset {
-  padding: 2.5em 0 0 0;
-}
-fieldset .fieldset-legend {
-  padding-right: 15px;
-  right: 0;
-}
+
 fieldset .fieldset-wrapper {
   padding: 0 15px 13px 13px;
 }
diff --git a/core/themes/seven/style.css b/core/themes/seven/style.css
index ebaa86b..bd83995 100644
--- a/core/themes/seven/style.css
+++ b/core/themes/seven/style.css
@@ -496,14 +496,18 @@ tr td:last-child {
  */
 fieldset {
   border: 1px solid #ccc;
-  padding: 2.5em 0 0 0; /* LTR */
-  position: relative;
+  padding: 0;
   margin: 1em 0;
 }
+fieldset legend {
+  border: 1px solid #ccc;
+  border-bottom: none;
+  margin: 0 -1px;
+  width: 100%;
+  padding: 0.5em 0;
+}
 fieldset .fieldset-legend {
-  margin-top: 0.5em;
-  padding-left: 15px; /* LTR */
-  position: absolute;
+  padding:0 15px;
   text-transform: uppercase;
 }
 fieldset .fieldset-wrapper {
@@ -516,6 +520,12 @@ fieldset.collapsed {
   border-width: 1px;
   height: auto;
 }
+.js fieldset.collapsible > legend .fieldset-legend {
+  margin-left: 15px;
+}
+.js fieldset.collapsible > legend .fieldset-legend a {
+  margin-left: -15px;
+}
 fieldset fieldset {
   background-color: #fff;
 }
