diff --git a/assets/sass/_theme/blocks/pages.sass b/assets/sass/_theme/blocks/pages.sass
index faed9ba564ea78ac854e9b3c944940f83eb2ab43..7055315fad4bed863bee4494e0ee074db1bcefda 100644
--- a/assets/sass/_theme/blocks/pages.sass
+++ b/assets/sass/_theme/blocks/pages.sass
@@ -230,11 +230,11 @@
         .top
             @include top-flex
         .alternate
+            @include alternate
             article 
                 position: relative
                 display: flex
                 flex-direction: column
-                width: columns(4)
                 a
                     @include stretched-link
                 .media 
diff --git a/assets/sass/_theme/blocks/posts.sass b/assets/sass/_theme/blocks/posts.sass
index 7fe172e4358579f1b1f7e8523054a072901af674..407605e3d8b305b321e0a2bea3fca646b6fd7644 100644
--- a/assets/sass/_theme/blocks/posts.sass
+++ b/assets/sass/_theme/blocks/posts.sass
@@ -261,8 +261,7 @@
                     margin-top: 0
 
     &--alternate .alternate
-        .post .media img
-            aspect-ratio: unset
+        @include alternate
         @include media-breakpoint-up(desktop)
             &.without-images
                 .right
@@ -275,8 +274,6 @@
                         margin-top: -5%
                     + .post:not(.portrait, .square, .landscape)
                         margin-top: -3%
-            article
-                width: columns(4)
         @include media-breakpoint-down(desktop)
             .post 
                 .post-meta
diff --git a/assets/sass/_theme/design-system/layout.sass b/assets/sass/_theme/design-system/layout.sass
index ef3d798639e53ded1f2c1a0b9a55cadd68a3126f..832eb64685a8855936fae7eb6c0cbe653f6560d7 100644
--- a/assets/sass/_theme/design-system/layout.sass
+++ b/assets/sass/_theme/design-system/layout.sass
@@ -123,27 +123,4 @@ details
                 position: absolute
                 padding: 0
                 right: 0
-                top: 0
-
-.alternate
-    .block:not(.block-projects) &
-        article
-            @include media-breakpoint-up(desktop)
-                &:not(:first-child)
-                    margin-top: -5%
-                &:nth-child(odd)
-                    margin-left: auto
-                &.portrait
-                    + .portrait
-                        margin-top: -30%
-                    + .square,
-                    + .landscape
-                        margin-top: -15%
-                    + article:not(.portrait, .square, .landscape)
-                        margin-top: -5%
-                &.square + .square
-                    margin-top: -10%
-        @include in-page-without-sidebar
-            width: columns(10)
-            margin-left: auto
-            margin-right: auto
\ No newline at end of file
+                top: 0
\ No newline at end of file
diff --git a/assets/sass/_theme/utils/blocks.sass b/assets/sass/_theme/utils/blocks.sass
index 7343e4ae3510aee699d508250f1e900ebd75c694..d95c4283240be52539f47c56b3c2f256c613bbc8 100644
--- a/assets/sass/_theme/utils/blocks.sass
+++ b/assets/sass/_theme/utils/blocks.sass
@@ -40,4 +40,29 @@
                 @include icon-block(arrow-next, before)
             &:disabled
                 cursor: default
-                opacity: 0.3
\ No newline at end of file
+                opacity: 0.3
+
+@mixin alternate
+    article
+        .media img
+            aspect-ratio: unset
+        @include media-breakpoint-up(desktop)
+            width: columns(4)
+            &:not(:first-child)
+                margin-top: -5%
+            &:nth-child(odd)
+                margin-left: auto
+            &.portrait
+                + .portrait
+                    margin-top: -30%
+                + .square,
+                + .landscape
+                    margin-top: -15%
+                + article:not(.portrait, .square, .landscape)
+                    margin-top: -5%
+            &.square + .square
+                margin-top: -10%
+    @include in-page-without-sidebar
+        width: columns(10)
+        margin-left: auto
+        margin-right: auto
\ No newline at end of file