diff --git a/tbx/project_styleguide/templates/patterns/molecules/streamfield/blocks/link_columns_block.html b/tbx/project_styleguide/templates/patterns/molecules/streamfield/blocks/link_columns_block.html
index 68e5b3063..0edae9aff 100644
--- a/tbx/project_styleguide/templates/patterns/molecules/streamfield/blocks/link_columns_block.html
+++ b/tbx/project_styleguide/templates/patterns/molecules/streamfield/blocks/link_columns_block.html
@@ -1,16 +1,16 @@
{% load wagtailcore_tags wagtailimages_tags %}
-
- {# Section heading #}
-
{{ value.title }}
+
+
+ {% include "patterns/atoms/motif-heading/motif-heading.html" with heading_level=2 heading=value.title classes="motif-heading--two motif-heading--static link-columns__title " %}
+ {% if value.intro %}
+
{{ value.intro|richtext }}
+ {% endif %}
+
- {# Section intro #}
-
{{ value.intro|richtext }}
-
- {# Links #}
-
+
diff --git a/tbx/project_styleguide/templates/patterns/styleguide/components/components.html b/tbx/project_styleguide/templates/patterns/styleguide/components/components.html
index 485b3390c..9ecb880e2 100644
--- a/tbx/project_styleguide/templates/patterns/styleguide/components/components.html
+++ b/tbx/project_styleguide/templates/patterns/styleguide/components/components.html
@@ -199,6 +199,11 @@ Table block
{% include "patterns/molecules/streamfield/blocks/typed_table_block.html" %}
+
+
Link columns block
+ {% include "patterns/molecules/streamfield/blocks/link_columns_block.html" %}
+
+
Division signpost block
{% include "patterns/molecules/streamfield/blocks/division_signpost_block.html" %}
diff --git a/tbx/static_src/sass/components/_grid.scss b/tbx/static_src/sass/components/_grid.scss
index 7b8e586b1..814938119 100644
--- a/tbx/static_src/sass/components/_grid.scss
+++ b/tbx/static_src/sass/components/_grid.scss
@@ -101,7 +101,8 @@
}
&__related-posts-simple,
- &__team-listing {
+ &__team-listing,
+ &__link-columns {
grid-column: 2 / span 4;
@include media-query(large) {
diff --git a/tbx/static_src/sass/components/_link-columns.scss b/tbx/static_src/sass/components/_link-columns.scss
new file mode 100644
index 000000000..c9ca043b5
--- /dev/null
+++ b/tbx/static_src/sass/components/_link-columns.scss
@@ -0,0 +1,58 @@
+@use 'config' as *;
+
+.link-columns {
+ &__header {
+ margin-bottom: $spacer-half;
+ }
+
+ &__links {
+ display: grid;
+ grid-template-columns: 1fr;
+ column-gap: $spacer-half;
+
+ @include media-query(medium) {
+ grid-template-columns: repeat(2, 1fr);
+ }
+
+ @include media-query(large) {
+ grid-template-columns: repeat(3, 1fr);
+ }
+ }
+
+ &__item {
+ padding: $spacer-mini-plus 0;
+ border-top: 1px solid var(--color--border);
+ }
+
+ &__link {
+ @include font-size(size-six);
+ color: var(--color--white);
+
+ &:hover {
+ transition: color $transition-quick;
+ color: var(--color--theme-primary);
+
+ @include reduced-motion() {
+ transition: none;
+ }
+ }
+
+ @include high-contrast-mode() {
+ text-decoration: underline;
+ }
+ }
+
+ &__tail {
+ // Keep the arrow attached to the last word so it's not orphaned on a new line
+ white-space: nowrap;
+ display: inline;
+ }
+
+ &__arrow {
+ @include arrow-link-icon-styles(
+ $width: 18px,
+ $interaction-color: var(--color--theme-primary)
+ );
+ color: var(--color--theme-primary);
+ }
+}
diff --git a/tbx/static_src/sass/config/_mixins.scss b/tbx/static_src/sass/config/_mixins.scss
index b786da6d4..ee3600ff5 100755
--- a/tbx/static_src/sass/config/_mixins.scss
+++ b/tbx/static_src/sass/config/_mixins.scss
@@ -185,13 +185,15 @@
@mixin arrow-link-icon-styles(
$mobile-hidden: false,
$color: var(--color--decoration),
- $interaction-color: var(--color--link-interaction)
+ $interaction-color: var(--color--link-interaction),
+ $width: 72px,
+ $height: 22px
) {
// Apply all common styles regardless of mobile-hidden
display: inline-block;
color: $color;
- width: 72px;
- height: 22px;
+ width: $width;
+ height: $height;
transition: transform, $transition-quick;
@include reduced-motion() {
diff --git a/tbx/static_src/sass/main.scss b/tbx/static_src/sass/main.scss
index 6e12c478f..e355ed5a8 100755
--- a/tbx/static_src/sass/main.scss
+++ b/tbx/static_src/sass/main.scss
@@ -33,6 +33,7 @@
@use 'components/image';
@use 'components/instagram-gallery';
@use 'components/intro-with-images';
+@use 'components/link-columns';
@use 'components/link';
@use 'components/listing';
@use 'components/listing-avatar';