diff --git a/css/gridstack.css b/css/gridstack.css
index 2cc26b77b7a42f2785734b1909809a0a81a8827b..6fe4026798d1bc9f002871c0052fa081b66a0627 100644
--- a/css/gridstack.css
+++ b/css/gridstack.css
@@ -69,6 +69,7 @@
 .gridstack--js .box,
 /* Prevents overlapping bg when edge to edge (EtE) is not enabled. */
 .gridstack .box__content {
+  position: relative;
   overflow: hidden;
 }
 
@@ -118,6 +119,7 @@
 .gridstack .b-gs,
 .gridstack .box__animated,
 .gridstack--js .b-noratio,
+.gridstack--js .box__content,
 .gridstack--js .box__content > a,
 .gridstack--js .box > .litebox {
   display: block;
diff --git a/css/gridstack.library.css b/css/gridstack.library.css
index ac0d75baf284b0b4eebe5047920deeb1119aa3f6..3c0a2884b71a840f641d5214fd08f1c9eca49899 100644
--- a/css/gridstack.library.css
+++ b/css/gridstack.library.css
@@ -220,6 +220,12 @@
   float: left;
 }
 
+/* stylelint-disable declaration-no-important */
+.gridstack--js.is-gs-disabled .gridstack__box {
+  position: relative;
+  top: auto !important;
+}
+
 .is-gs-destroyed > .box > .box__content,
 .gridstack--gs.is-gs-disabled .box__content {
   position: relative;
diff --git a/src/Engine/GridStackEnginePluginBase.php b/src/Engine/GridStackEnginePluginBase.php
index 4dc9a4d877c7bb974d9b56ba7a1d89f38cff9a85..995703a5165e8161c3cdd9b5a1d876feeff75083 100644
--- a/src/Engine/GridStackEnginePluginBase.php
+++ b/src/Engine/GridStackEnginePluginBase.php
@@ -315,7 +315,8 @@ abstract class GridStackEnginePluginBase extends GridStackPluginBase implements
 
       $rid     = Defaults::regionId($delta);
       $region  = $regions[$rid] ?? [];
-      $subsets = $this->manager->toHashtag($item) + $settings;
+      $subsets = $this->manager->toHashtag($item);
+      $subsets = $this->manager->mergeSettings(['blazies', 'gridstacks'], $settings, $subsets);
       $config  = $this->manager->reset($subsets, TRUE);
 
       $config->set('region', $region)
@@ -347,12 +348,12 @@ abstract class GridStackEnginePluginBase extends GridStackPluginBase implements
     $gridstack = $settings['gridstacks'];
 
     foreach (array_keys($grids) as $gid) {
-      $rid      = Defaults::regionId($delta . '_' . $gid);
-      $region   = $regions[$rid] ?? [];
-      $nested   = $item[$gid] ?? [];
-      $subsets  = $this->manager->toHashtag($nested);
-      $subsets += $settings;
-      $config   = $this->manager->reset($subsets, TRUE);
+      $rid     = Defaults::regionId($delta . '_' . $gid);
+      $region  = $regions[$rid] ?? [];
+      $nested  = $item[$gid] ?? [];
+      $subsets = $this->manager->toHashtag($nested);
+      $subsets = $this->manager->mergeSettings(['blazies', 'gridstacks'], $settings, $subsets);
+      $config  = $this->manager->reset($subsets, TRUE);
 
       $config->set('region', $region)
         ->set('rid', $rid)
diff --git a/src/GridStackManager.php b/src/GridStackManager.php
index 87bcf1f149087a9367e3f735333c2ceb0dfa3e49..01114661367d9b625e793e4b90227db78b20e9a2 100644
--- a/src/GridStackManager.php
+++ b/src/GridStackManager.php
@@ -261,6 +261,7 @@ class GridStackManager extends BlazyManagerBase implements GridStackManagerInter
       // @fixme v5.1.1 ->set('use.gridstatic', $gridstacks->ui('gridstatic'))
       ->set('use.gridstatic', FALSE)
       ->set('use.js', $use_js)
+      ->set('use.inner', $use_js)
       ->set('use.nested', $use_framework)
       ->set('was.settings', TRUE);
 
diff --git a/templates/gridstack.theme.inc b/templates/gridstack.theme.inc
index 6cd7b71b21d604c5e7f7c6bcd024b816bdc9355a..f279ef766f8fc51ca5bfca867bbbf5309d3fb3d0 100644
--- a/templates/gridstack.theme.inc
+++ b/templates/gridstack.theme.inc
@@ -80,7 +80,7 @@ function template_preprocess_gridstack_box(&$variables) {
   // Provides inner DIV if so required (.row.gridstack--nested > DIV).
   // When using CSS frameworks to have row + inner divities display correctly.
   // Not needed by JS engines, just CSS engines.
-  $check = $use_inner && $use_fw && $has_content;
+  $check = $use_fw ? $use_inner && $has_content : $use_inner;
   $config->set('use.inner', $check);
 
   // Provides optional classes if so configured.