diff --git a/core/assets/styles/overrides/_all.scss b/core/assets/styles/overrides/_all.scss
index e8af924447..7c234ca02c 100644
--- a/core/assets/styles/overrides/_all.scss
+++ b/core/assets/styles/overrides/_all.scss
@@ -1,5 +1,6 @@
@import "button";
@import "checkboxes";
+@import "fieldset";
@import "file-upload";
@import "form-group";
@import "form-input";
diff --git a/core/assets/styles/overrides/_fieldset.scss b/core/assets/styles/overrides/_fieldset.scss
new file mode 100644
index 0000000000..cd68a420a0
--- /dev/null
+++ b/core/assets/styles/overrides/_fieldset.scss
@@ -0,0 +1,11 @@
+fieldset {
+ .govuk-fieldset__legend--xl {
+ margin-bottom: 30px;
+ }
+
+ @media (min-width: 40.0625em) {
+ .govuk-fieldset__legend--xl {
+ margin-bottom: 50px;
+ }
+ }
+}
diff --git a/core/common/forms.py b/core/common/forms.py
index 09eed70245..3bcb35e768 100644
--- a/core/common/forms.py
+++ b/core/common/forms.py
@@ -2,8 +2,10 @@
from crispy_forms_gds.choices import Choice
from crispy_forms_gds.layout import (
Div,
+ Fieldset,
HTML,
Layout,
+ Size,
Submit,
)
from django import forms
@@ -62,6 +64,30 @@ def get_layout_actions(self):
]
+class FieldsetForm(BaseForm):
+ """This is a suitable layout for a single question form. By using a
+