diff --git a/.htmltest.yml b/.htmltest.yml
index 334ede4..33541fb 100644
--- a/.htmltest.yml
+++ b/.htmltest.yml
@@ -1,4 +1,4 @@
-CacheExpires: 9000h # ~ 12 months
+CacheExpires: 13300h # ~ 18 months
DirectoryPath: public
TestFilesConcurrently: true
CheckDoctype: false # Sadly, this is false only because of `static/google*.html`
diff --git a/layouts/_default/_markup/render-heading.html b/layouts/_markup/render-heading.html
similarity index 73%
rename from layouts/_default/_markup/render-heading.html
rename to layouts/_markup/render-heading.html
index 6491b5e..ac2cdb6 100644
--- a/layouts/_default/_markup/render-heading.html
+++ b/layouts/_markup/render-heading.html
@@ -1,4 +1,4 @@
-{{ template "_markup/td-render-heading.html" . -}}
+{{ partial "td/render-heading.html" . -}}
{{/* By default, the markdown processor emits a heading on its own line, so we
don't trim whitespace from the end of this template. */}}
diff --git a/layouts/partials/favicons.html b/layouts/_partials/favicons.html
similarity index 100%
rename from layouts/partials/favicons.html
rename to layouts/_partials/favicons.html
diff --git a/layouts/partials/hooks/head-end.html b/layouts/_partials/hooks/head-end.html
similarity index 100%
rename from layouts/partials/hooks/head-end.html
rename to layouts/_partials/hooks/head-end.html
diff --git a/layouts/shortcodes/adoptions.html b/layouts/_shortcodes/adoptions.html
similarity index 100%
rename from layouts/shortcodes/adoptions.html
rename to layouts/_shortcodes/adoptions.html
diff --git a/layouts/shortcodes/community-lists.md b/layouts/_shortcodes/community-lists.md
similarity index 100%
rename from layouts/shortcodes/community-lists.md
rename to layouts/_shortcodes/community-lists.md
diff --git a/themes/docsy b/themes/docsy
index 7951194..ace4e37 160000
--- a/themes/docsy
+++ b/themes/docsy
@@ -1 +1 @@
-Subproject commit 7951194954708d7cc992e3540c8fc823cc99a953
+Subproject commit ace4e37ceedcec9c48d329adb1128201061ef23d