diff --git a/source/themes/opdavies/opdavies/_layouts/default.html.twig b/source/themes/opdavies/opdavies/_layouts/default.html.twig
index 421c5688..1c9ba444 100644
--- a/source/themes/opdavies/opdavies/_layouts/default.html.twig
+++ b/source/themes/opdavies/opdavies/_layouts/default.html.twig
@@ -9,8 +9,7 @@
{% endif %}
{% if page.meta.og %}{% include "og" with {og: page.meta.og} %}{% endif %}
-
{% if (page.front == true) and (site.subtitle) %}{{ site.subtitle }}{% else %}{{ page.title }}{% endif %} | {{ site.title }}
-
+ {% include 'title' %}
{% block styles %}{% endblock %}
diff --git a/source/themes/opdavies/opdavies/_partials/title.html.twig b/source/themes/opdavies/opdavies/_partials/title.html.twig
new file mode 100644
index 00000000..200ce09a
--- /dev/null
+++ b/source/themes/opdavies/opdavies/_partials/title.html.twig
@@ -0,0 +1,18 @@
+{% set separator = '-' %}
+{% spaceless %}
+ {% if page.full_title %}
+ {{ page.full_title }}
+ {% elseif page.title %}
+ {% if site.title %}
+ {{ page.title }} {{ separator }} {{ site.title }}
+ {% elseif page.subtitle %}
+ {{ page.title }} {{ separator }} {{ site.title }} {{ separator }} {{ site.subtitle }}
+ {% endif %}
+ {% elseif site.title %}
+ {% if site.subtitle %}
+ {{ site.title }} {{ separator }} {{ site.subtitle }}
+ {% else %}
+ {{ site.title }}
+ {% endif %}
+ {% endif %}
+{% endspaceless %}
\ No newline at end of file