Parcourir la source

Stow: Add FSE support (#1680)

Add FSE support.
Noah Allen il y a 5 ans
Parent
commit
423586cf84

+ 13 - 0
stow/header.php

@@ -23,6 +23,17 @@
 <div id="page" class="site">
 	<a class="skip-link screen-reader-text" href="#content"><?php _e( 'Skip to content', 'varia' ); ?></a>
 
+	<?php if ( class_exists( 'A8C\FSE\WP_Template' ) ) : // If the FSE plugin is active, use the Header template for content. ?>
+
+		<header id="masthead" class="fse-template-part fse-header entry-content">
+			<?php
+				$template = new A8C\FSE\WP_Template();
+				$template->output_template_content( A8C\FSE\WP_Template::HEADER );
+			?>
+		</header>
+
+	<?php else : // Otherwise we'll fallback to the default Stow header below. ?>
+
 		<header id="masthead" class="site-header">
 
 			<?php get_template_part( 'template-parts/header/site', 'branding' ); ?>
@@ -67,4 +78,6 @@
 
 		</header><!-- #masthead -->
 
+	<?php endif; ?>
+
 	<div id="content" class="site-content">

+ 11 - 30
stow/package-lock.json

@@ -1472,8 +1472,7 @@
         "ansi-regex": {
           "version": "2.1.1",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "aproba": {
           "version": "1.2.0",
@@ -1494,14 +1493,12 @@
         "balanced-match": {
           "version": "1.0.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "brace-expansion": {
           "version": "1.1.11",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "balanced-match": "^1.0.0",
             "concat-map": "0.0.1"
@@ -1516,20 +1513,17 @@
         "code-point-at": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "concat-map": {
           "version": "0.0.1",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "console-control-strings": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "core-util-is": {
           "version": "1.0.2",
@@ -1646,8 +1640,7 @@
         "inherits": {
           "version": "2.0.3",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "ini": {
           "version": "1.3.5",
@@ -1659,7 +1652,6 @@
           "version": "1.0.0",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "number-is-nan": "^1.0.0"
           }
@@ -1674,7 +1666,6 @@
           "version": "3.0.4",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "brace-expansion": "^1.1.7"
           }
@@ -1682,14 +1673,12 @@
         "minimist": {
           "version": "0.0.8",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "minipass": {
           "version": "2.3.5",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "safe-buffer": "^5.1.2",
             "yallist": "^3.0.0"
@@ -1708,7 +1697,6 @@
           "version": "0.5.1",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "minimist": "0.0.8"
           }
@@ -1789,8 +1777,7 @@
         "number-is-nan": {
           "version": "1.0.1",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "object-assign": {
           "version": "4.1.1",
@@ -1802,7 +1789,6 @@
           "version": "1.4.0",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "wrappy": "1"
           }
@@ -1888,8 +1874,7 @@
         "safe-buffer": {
           "version": "5.1.2",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "safer-buffer": {
           "version": "2.1.2",
@@ -1925,7 +1910,6 @@
           "version": "1.0.2",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "code-point-at": "^1.0.0",
             "is-fullwidth-code-point": "^1.0.0",
@@ -1945,7 +1929,6 @@
           "version": "3.0.1",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "ansi-regex": "^2.0.0"
           }
@@ -1989,14 +1972,12 @@
         "wrappy": {
           "version": "1.0.2",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "yallist": {
           "version": "3.0.3",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         }
       }
     },

+ 84 - 79
stow/sass/_extra-child-theme.scss

@@ -57,12 +57,6 @@ a {
 	background-color: #{map-deep-get($config-global, "color", "white")};
 	padding: 0;
 
-	.site-title {
-		font-size: #{map-deep-get($config-global, "font", "size", "xxl")};
-	}
-	.site-description {
-		color: #333;
-	}
 	.site-branding {
 		text-align: center;
 		background: #fff;
@@ -90,6 +84,16 @@ a {
 	}
 }
 
+body:not( .fse-enabled ) {
+	.site-title {
+		font-size: #{map-deep-get($config-global, "font", "size", "xxl")};
+	}
+
+	.site-description {
+		color: #333;
+	}
+}
+
 /**
  * 3. Main Wrapper and Content
  */
@@ -121,43 +125,27 @@ a {
 /**
  * 4.1 Main Navigation
  */
-#site-navigation {
-
-	background-color: #{map-deep-get($config-global, "color", "secondary", "default")};
-	border-bottom: 2px solid rgba(0,0,0,.15);
-	margin-left: 0;
-	margin-right: 0;
-	text-align: center;
-
-	& > div {
-		text-align: left;
-	}
-
-	&.main-navigation {
-
+body:not( .fse-enabled ) {
+	#site-navigation, .main-navigation {
+		background-color: #{map-deep-get($config-global, "color", "secondary", "default")};
+		border-bottom: 2px solid rgba(0,0,0,.15);
+		margin-left: 0;
+		margin-right: 0;
+		text-align: center;
+	
 		& > div {
-			padding-left: #{map-deep-get($config-global, "spacing", "unit")};
-			padding-right: #{map-deep-get($config-global, "spacing", "unit")};
+			text-align: left;
 		}
-
-		ul {
-			li {
-				&.current-menu-item {
-					a {
-						color: #{map-deep-get($config-global, "color", "secondary", "hover")};
-					}
-				}
-				a {
-					color: #{map-deep-get($config-global, "color", "white")};
-					text-decoration: none;
-					&:hover {
-						color: #{map-deep-get($config-global, "color", "secondary", "hover")};
-					}
-				}
-				@include media(mobile) {
-					padding-left: 0;
-					padding-right: 0;
-					list-style-type: disc;
+	
+		&.main-navigation {
+	
+			& > div {
+				padding-left: #{map-deep-get($config-global, "spacing", "unit")};
+				padding-right: #{map-deep-get($config-global, "spacing", "unit")};
+			}
+	
+			ul {
+				li {
 					&.current-menu-item {
 						a {
 							color: #{map-deep-get($config-global, "color", "secondary", "hover")};
@@ -165,63 +153,80 @@ a {
 					}
 					a {
 						color: #{map-deep-get($config-global, "color", "white")};
-						font-size: #{map-deep-get($config-global, "font", "size", "sm")};
+						text-decoration: none;
 						&:hover {
 							color: #{map-deep-get($config-global, "color", "secondary", "hover")};
 						}
-						&::after {
-							color: #ffa4ad;
-							content: " \2022";
-							margin-left: #{map-deep-get($config-global, "spacing", "unit")};
-							display: inline;
-							font-size: #{map-deep-get($config-global, "font", "size", "base")};
-						}
 					}
-					&:last-child {
+					@include media(mobile) {
+						padding-left: 0;
+						padding-right: 0;
+						list-style-type: disc;
+						&.current-menu-item {
+							a {
+								color: #{map-deep-get($config-global, "color", "secondary", "hover")};
+							}
+						}
 						a {
+							color: #{map-deep-get($config-global, "color", "white")};
+							font-size: #{map-deep-get($config-global, "font", "size", "sm")};
+							&:hover {
+								color: #{map-deep-get($config-global, "color", "secondary", "hover")};
+							}
 							&::after {
-								content: "";
-								margin-left: 0;
+								color: #ffa4ad;
+								content: " \2022";
+								margin-left: #{map-deep-get($config-global, "spacing", "unit")};
+								display: inline;
+								font-size: #{map-deep-get($config-global, "font", "size", "base")};
 							}
 						}
-					}
-				}
-			}
-			ul {
-				@include media(mobile) {
-					background-color: #{map-deep-get($config-global, "color", "white")};
-					li {
-						&.current-menu-item {
+						&:last-child {
 							a {
-								color: #{map-deep-get($config-global, "color", "secondary", "default")};
+								&::after {
+									content: "";
+									margin-left: 0;
+								}
 							}
 						}
-						a {
-							color: #{map-deep-get($config-global, "color", "secondary", "hover")};
-							&::after {
-								content: "";
+					}
+				}
+				ul {
+					@include media(mobile) {
+						background-color: #{map-deep-get($config-global, "color", "white")};
+						li {
+							&.current-menu-item {
+								a {
+									color: #{map-deep-get($config-global, "color", "secondary", "default")};
+								}
+							}
+							a {
+								color: #{map-deep-get($config-global, "color", "secondary", "hover")};
+								&::after {
+									content: "";
+								}
+								&:hover {
+									color: #{map-deep-get($config-global, "color", "primary", "hover")};
+								}
 							}
 							&:hover {
-								color: #{map-deep-get($config-global, "color", "primary", "hover")};
+								background: #f2f2f2;
 							}
 						}
-						&:hover {
-							background: #f2f2f2;
-						}
 					}
 				}
 			}
-		}
-		.main-menu {
-			& > li > a {
-				padding-left: 0;
+			.main-menu {
+				& > li > a {
+					padding-left: 0;
+				}
+			}
+			#toggle-menu {
+				border-radius: 0;
+				width: 100% !important;
+				text-align: center;
+				font-size: map-deep-get($config-header, "main-nav", "font", "size");
 			}
-		}
-		#toggle-menu {
-			border-radius: 0;
-			width: 100% !important;
-			text-align: center;
-			font-size: map-deep-get($config-header, "main-nav", "font", "size");
 		}
 	}
 }

+ 61 - 0
stow/sass/_full-site-editing-editor.scss

@@ -0,0 +1,61 @@
+@import "../../varia/sass/full-site-editing/editor";
+
+.fse-template-part {
+	.has-normal-font-size {
+		font-size: map-deep-get($config-global, "font", "size", "md");
+	}
+
+	.main-navigation {
+		.alignwide, .alignfull {
+			width: 100%;
+		}
+	
+		a {
+			text-decoration: none;
+			text-transform: uppercase;
+		}
+	
+		.has-background > .main-menu.footer-menu {
+			padding: 0;
+		}
+	}
+	
+	&.fse-header .main-navigation {
+		border-bottom: 2px solid rgba(0,0,0,.15);
+	
+		div ul li {
+			@include media(mobile) {
+				a::after {
+					color: #ffa4ad;
+					content: " \2022";
+					margin-left: #{map-deep-get($config-global, "spacing", "unit")};
+					display: inline;
+				}
+				&:last-child a::after {
+					content: "";
+					margin-left: 0;
+				}
+			}
+		}
+	}
+	
+	.wp-block-cover,
+	.wp-block-cover-image {
+		.site-title {
+			font-weight: #{map-deep-get($config-heading, "font", "weight")};
+		}
+
+		.has-background {
+			text-shadow: none;
+		}
+	}
+}
+
+.template-block {
+	.wp-block-social-links {
+		margin-top: 20px;
+	}
+}
+.post-content__block {
+	margin-top: -36px;
+}

+ 80 - 0
stow/sass/_full-site-editing.scss

@@ -0,0 +1,80 @@
+@import "../../varia/sass/full-site-editing/imports";
+
+$spacing_vertical: map-deep-get($config-global, "spacing", "vertical");
+
+.fse-enabled.home.page.hide-homepage-title .fse-header.entry-content {
+	padding-bottom: $spacing_vertical;
+	@include media(mobile) {
+		padding-bottom: #{1.5 * $spacing_vertical};
+	}
+}
+
+.fse-template-part {
+	.wp-block-social-links {
+		margin-top: 10px; // Makes it match the editor.
+	}
+
+	&.fse-footer .main-navigation {
+		border-bottom: none;
+	}
+
+	.main-navigation {
+		.alignwide, .alignfull {
+			width: 100%;
+		}
+	
+		a {
+			text-decoration: none;
+			text-transform: uppercase;
+		}
+	
+		.has-background > .main-menu.footer-menu {
+			padding: 0;
+		}
+	}
+	
+	&.fse-header .main-navigation {
+		border-bottom: 2px solid rgba(0,0,0,.15);
+	
+		div ul li {
+			@include media(mobile) {
+				a::after {
+					color: #ffa4ad;
+					content: " \2022";
+					margin-left: #{map-deep-get($config-global, "spacing", "unit")};
+					display: inline;
+				}
+				&:last-child a::after {
+					content: "";
+					margin-left: 0;
+				}
+			}
+		}
+	}
+	
+
+	@include media(mobile-only) {
+		max-width: calc( 100% - #{ $spacing_vertical } );
+
+		.main-navigation > div {
+			padding: 0 32px;
+		}
+	}
+
+	.main-navigation {
+		.has-background > .main-menu.footer-menu {
+			padding: 0;
+		}	
+	}
+
+	.wp-block-cover,
+	.wp-block-cover-image {
+		.site-title a {
+			text-decoration: none;
+		}
+
+		.has-background {
+			text-shadow: none;
+		}
+	}
+}

+ 33 - 0
stow/sass/_site-navigation.scss

@@ -0,0 +1,33 @@
+.main-navigation {
+    .alignwide, .alignfull {
+        width: 100%;
+    }
+
+    a {
+        text-decoration: none;
+        text-transform: uppercase;
+    }
+
+    .has-background > .main-menu.footer-menu {
+        padding: 0;
+    }
+}
+
+.fse-header .main-navigation {
+    border-bottom: 2px solid rgba(0,0,0,.15);
+
+    div ul li {
+        @include media(mobile) {
+            a::after {
+                color: #ffa4ad;
+                content: " \2022";
+                margin-left: #{map-deep-get($config-global, "spacing", "unit")};
+                display: inline;
+            }
+            &:last-child a::after {
+                content: "";
+                margin-left: 0;
+            }
+        }
+    }
+}

+ 7 - 1
stow/sass/style-child-theme-editor.scss

@@ -178,4 +178,10 @@ a {
 		border: none;
 		box-shadow: none;
 	}
-}
+}
+
+/**
+ * Full Site Editing
+ * - Full Site Editing overrides
+ */
+ @import "full-site-editing-editor";

+ 7 - 1
stow/sass/style-child-theme.scss

@@ -10,7 +10,7 @@ License: GNU General Public License v2 or later
 License URI: LICENSE
 Template: varia
 Text Domain: stow
-Tags: one-column, flexible-header, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, rtl-language-support, sticky-post, threaded-comments, translation-ready, auto-loading-homepage, jetpack-global-styles
+Tags: one-column, flexible-header, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, rtl-language-support, sticky-post, threaded-comments, translation-ready, auto-loading-homepage, jetpack-global-styles, full-site-editing
 
 This theme, like WordPress, is licensed under the GPL.
 Use it to make something cool, have fun, and share what you've learned with others.
@@ -88,3 +88,9 @@ Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
  * Child Theme Extra Styles
  */
 @import "extra-child-theme";
+
+/**
+ * Full Site Editing
+ * - Full Site Editing overrides
+ */
+ @import "full-site-editing";

+ 434 - 0
stow/style-editor.css

@@ -1,3 +1,4 @@
+@charset "UTF-8";
 /**
  * These styles should be loaded by the Block Editor only
  */
@@ -1143,3 +1144,436 @@ a {
 	background-color: #4f4f4f;
 	opacity: 1;
 }
+
+/**
+ * Full Site Editing
+ * - Full Site Editing overrides
+ */
+@media (min-width: 600px) {
+	.a8c-template-editor .block-editor-block-list__layout .block-editor-block-list__block[data-align="full"] .block-editor-block-list__layout .block-editor-block-list__block[data-align="full"] {
+		margin-left: 0;
+		margin-right: 0;
+	}
+}
+
+.a8c-template-editor .block-editor-block-list__block-edit [data-block] {
+	margin: 12px 0 0 0;
+}
+
+.template-block .fse-template-part {
+	padding: 16px;
+}
+
+@media only screen and (min-width: 560px) {
+	.template-block .fse-template-part {
+		padding: 32px 0;
+	}
+}
+
+.template-block .fse-template-part figure.fse-site-logo {
+	width: auto;
+}
+
+.template-block .fse-template-part .block-list-appender {
+	display: none;
+}
+
+.template-block .fse-template-part .wp-block-column .block-editor-block-list__layout [data-type='a8c/site-title']:first-child .site-title {
+	margin-top: 0;
+}
+
+.fse-template-part .wp-block-cover .site-title,
+.fse-template-part .wp-block-cover .site-description,
+.fse-template-part .wp-block-cover-image .site-title,
+.fse-template-part .wp-block-cover-image .site-description {
+	background: transparent;
+	color: inherit;
+}
+
+.fse-template-part .block-editor-block-list__layout .block-editor-block-list__block[data-align='full'] > .block-editor-block-list__block-edit figure.fse-site-logo {
+	width: auto;
+}
+
+.fse-template-part .wp-block-column {
+	width: 100%;
+}
+
+.fse-template-part .wp-block-columns .wp-block-column > * {
+	margin: 0 0 5px 0;
+}
+
+.fse-template-part .main-navigation {
+	color: #444444;
+}
+
+.fse-template-part .main-navigation > div {
+	display: none;
+}
+
+.fse-template-part .main-navigation #toggle-menu {
+	display: inline-block;
+	margin: 0;
+}
+
+.fse-template-part .main-navigation #toggle:checked ~ div:not(.woocommerce-menu-container) {
+	display: block;
+}
+
+.fse-template-part .main-navigation #toggle:focus + #toggle-menu {
+	background-color: #f25f70;
+	outline: inherit;
+	text-decoration: underline;
+}
+
+.fse-template-part .main-navigation .dropdown-icon.close {
+	display: none;
+}
+
+.fse-template-part .main-navigation #toggle:checked + #toggle-menu .open {
+	display: none;
+}
+
+.fse-template-part .main-navigation #toggle:checked + #toggle-menu .close {
+	display: inline;
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-template-part .main-navigation > div {
+		display: inline-block;
+	}
+	.fse-template-part .main-navigation #toggle-menu {
+		display: none;
+	}
+	.fse-template-part .main-navigation > div > ul > li > ul {
+		display: none;
+	}
+}
+
+.fse-template-part .main-navigation > div > ul {
+	display: flex;
+	flex-wrap: wrap;
+	list-style: none;
+	margin: 0;
+	max-width: none;
+	padding-left: 0;
+	position: relative;
+	/* Sub-menus Flyout */
+}
+
+.fse-template-part .main-navigation > div > ul ul {
+	padding-left: 0;
+}
+
+.fse-template-part .main-navigation > div > ul li {
+	display: block;
+	position: relative;
+	width: 100%;
+	z-index: 1;
+}
+
+.fse-template-part .main-navigation > div > ul li:hover, .fse-template-part .main-navigation > div > ul li[focus-within] {
+	cursor: pointer;
+	z-index: 99999;
+}
+
+.fse-template-part .main-navigation > div > ul li:hover, .fse-template-part .main-navigation > div > ul li:focus-within {
+	cursor: pointer;
+	z-index: 99999;
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-template-part .main-navigation > div > ul li {
+		display: inherit;
+		width: inherit;
+		/* Submenu display */
+	}
+	.fse-template-part .main-navigation > div > ul li:hover > ul,
+	.fse-template-part .main-navigation > div > ul li[focus-within] > ul,
+	.fse-template-part .main-navigation > div > ul li ul:hover,
+	.fse-template-part .main-navigation > div > ul li ul:focus {
+		visibility: visible;
+		opacity: 1;
+		display: block;
+	}
+	.fse-template-part .main-navigation > div > ul li:hover > ul,
+	.fse-template-part .main-navigation > div > ul li:focus-within > ul,
+	.fse-template-part .main-navigation > div > ul li ul:hover,
+	.fse-template-part .main-navigation > div > ul li ul:focus {
+		visibility: visible;
+		opacity: 1;
+		display: block;
+	}
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-template-part .main-navigation > div > ul > li > a {
+		line-height: 1;
+	}
+	.fse-template-part .main-navigation > div > ul > li > a:before, .fse-template-part .main-navigation > div > ul > li > a:after {
+		content: '';
+		display: block;
+		height: 0;
+		width: 0;
+	}
+	.fse-template-part .main-navigation > div > ul > li > a:before {
+		margin-bottom: -0.12em;
+	}
+	.fse-template-part .main-navigation > div > ul > li > a:after {
+		margin-top: -0.11em;
+	}
+	.fse-template-part .main-navigation > div > ul > li:first-of-type > a {
+		padding-left: 0;
+	}
+	.fse-template-part .main-navigation > div > ul > li:last-of-type > a {
+		padding-right: 0;
+	}
+}
+
+.fse-template-part .main-navigation > div > ul > li > .sub-menu {
+	margin: 0;
+	position: relative;
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-template-part .main-navigation > div > ul > li > .sub-menu {
+		background: white;
+		box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, 0.2);
+		left: 0;
+		top: 100%;
+		min-width: max-content;
+		opacity: 0;
+		position: absolute;
+		transition: all 0.5s ease;
+		visibility: hidden;
+	}
+}
+
+.fse-template-part .main-navigation > div > ul > li > .sub-menu .sub-menu {
+	width: 100%;
+}
+
+.fse-template-part .main-navigation a {
+	color: #404040;
+	display: block;
+	font-family: "Source Sans Pro", Arial, sans-serif;
+	font-family: var(--font-base, "Source Sans Pro", Arial, sans-serif);
+	font-weight: 700;
+	padding: 8px 0;
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-template-part .main-navigation a {
+		padding: 16px;
+	}
+}
+
+.fse-template-part .main-navigation a:link, .fse-template-part .main-navigation a:visited {
+	color: #404040;
+}
+
+.fse-template-part .main-navigation a:hover {
+	color: #f25f70;
+}
+
+.fse-template-part .main-navigation .sub-menu {
+	list-style: none;
+	margin-left: 0;
+	/* Reset the counter for each UL */
+	counter-reset: nested-list;
+}
+
+.fse-template-part .main-navigation .sub-menu .menu-item a {
+	padding-top: 8px;
+	padding-bottom: 8px;
+}
+
+.fse-template-part .main-navigation .sub-menu .menu-item a::before {
+	/* Increment the dashes */
+	counter-increment: nested-list;
+	/* Insert dashes with spaces in between */
+	content: "– " counters(nested-list, "– ", none);
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-template-part .main-navigation > div > ul > .menu-item-has-children > a::after {
+		content: "\00a0\25BC";
+		display: inline-block;
+		font-size: 0.69444rem;
+		height: inherit;
+		width: inherit;
+	}
+}
+
+.fse-template-part .main-navigation .hide-visually {
+	position: absolute !important;
+	clip: rect(1px, 1px, 1px, 1px);
+	padding: 0 !important;
+	border: 0 !important;
+	height: 1px !important;
+	width: 1px !important;
+	overflow: hidden;
+}
+
+.fse-template-part body:not(.fse-enabled) .main-navigation a {
+	font-size: 1.2rem;
+}
+
+.fse-template-part .main-navigation {
+	text-align: center;
+	/**
+ * Button Placeholder style
+ * - Since buttons appear in various blocks,
+ *   let’s use a placeholder to keep them all
+ *   in-sync
+ */
+	/**
+ * Onsale Placeholder style
+ * - Since buttons appear in various blocks,
+ *   let’s use a placeholder to keep them all
+ *   in-sync
+ */
+}
+
+.fse-template-part .main-navigation .alignwide, .fse-template-part .main-navigation .alignfull {
+	width: 100%;
+}
+
+.fse-template-part .main-navigation .button {
+	line-height: 1;
+	color: white;
+	cursor: pointer;
+	font-weight: 600;
+	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
+	font-family: var(--font-base, -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif);
+	font-size: 0.69444rem;
+	background-color: #f25f70;
+	border-radius: 9px;
+	border-width: 0;
+	padding: 16px 16px;
+}
+
+.fse-template-part .main-navigation .button:before, .fse-template-part .main-navigation .button:after {
+	content: '';
+	display: block;
+	height: 0;
+	width: 0;
+}
+
+.fse-template-part .main-navigation .button:before {
+	margin-bottom: -0.12em;
+}
+
+.fse-template-part .main-navigation .button:after {
+	margin-top: -0.11em;
+}
+
+.fse-template-part .main-navigation .button:hover, .fse-template-part .main-navigation .button:focus, .fse-template-part .main-navigation .has-focus.button {
+	color: white;
+	background-color: #4f4f4f;
+}
+
+.fse-template-part .main-navigation .main-menu.footer-menu li a {
+	font-size: inherit;
+}
+
+.fse-template-part .main-navigation .main-menu.footer-menu li.menu-item-has-children > a::after {
+	font-size: 0.6em;
+	vertical-align: middle;
+}
+
+.fse-template-part .main-navigation .has-text-color > .main-menu.footer-menu > li > a {
+	color: inherit;
+}
+
+.fse-template-part .main-navigation .has-text-align-left > .main-menu.footer-menu {
+	justify-content: flex-start;
+}
+
+.fse-template-part .main-navigation .has-text-align-center > .main-menu.footer-menu {
+	justify-content: center;
+}
+
+.fse-template-part .main-navigation .has-text-align-right > .main-menu.footer-menu {
+	justify-content: flex-end;
+}
+
+.fse-template-part .main-navigation .has-background > .main-menu.footer-menu {
+	padding: 16px;
+}
+
+@media only screen and (min-width: 560px) {
+	.a8c-template-editor.fse-header .block-editor-block-list__layout > .block-editor-block-list__block.is-selected:first-child[data-align='full'] > .block-editor-block-list__block-edit > [data-block] {
+		margin-top: 14px;
+	}
+	.a8c-template-editor.fse-header .block-editor-block-list__layout > .block-editor-block-list__block:not(.is-selected):first-child[data-align='full'] > .block-editor-block-list__block-edit > [data-block] {
+		margin-top: 0;
+	}
+}
+
+.template-block .fse-header .block-editor-block-list__layout > .block-editor-block-list__block:first-child[data-align='full'] {
+	margin-top: -16px;
+}
+
+@media only screen and (min-width: 560px) {
+	.template-block .fse-header .block-editor-block-list__layout > .block-editor-block-list__block:first-child[data-align='full'] {
+		margin-top: -32px;
+	}
+}
+
+.post-content__block {
+	margin-bottom: 160px;
+	margin-top: 36px;
+	z-index: 20;
+}
+
+.fse-template-part .has-normal-font-size {
+	font-size: 1.2rem;
+}
+
+.fse-template-part .main-navigation .alignwide, .fse-template-part .main-navigation .alignfull {
+	width: 100%;
+}
+
+.fse-template-part .main-navigation a {
+	text-decoration: none;
+	text-transform: uppercase;
+}
+
+.fse-template-part .main-navigation .has-background > .main-menu.footer-menu {
+	padding: 0;
+}
+
+.fse-template-part.fse-header .main-navigation {
+	border-bottom: 2px solid rgba(0, 0, 0, 0.15);
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-template-part.fse-header .main-navigation div ul li a::after {
+		color: #ffa4ad;
+		content: " \2022";
+		margin-left: 16px;
+		display: inline;
+	}
+	.fse-template-part.fse-header .main-navigation div ul li:last-child a::after {
+		content: "";
+		margin-left: 0;
+	}
+}
+
+.fse-template-part .wp-block-cover .site-title,
+.fse-template-part .wp-block-cover-image .site-title {
+	font-weight: 300;
+}
+
+.fse-template-part .wp-block-cover .has-background,
+.fse-template-part .wp-block-cover-image .has-background {
+	text-shadow: none;
+}
+
+.template-block .wp-block-social-links {
+	margin-top: 20px;
+}
+
+.post-content__block {
+	margin-top: -36px;
+}

+ 183 - 29
stow/style-rtl.css

@@ -11,7 +11,7 @@ License: GNU General Public License v2 or later
 License URI: LICENSE
 Template: varia
 Text Domain: stow
-Tags: one-column, flexible-header, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, rtl-language-support, sticky-post, threaded-comments, translation-ready, auto-loading-homepage, jetpack-global-styles
+Tags: one-column, flexible-header, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, rtl-language-support, sticky-post, threaded-comments, translation-ready, auto-loading-homepage, jetpack-global-styles, full-site-editing
 
 This theme, like WordPress, is licensed under the GPL.
 Use it to make something cool, have fun, and share what you've learned with others.
@@ -1981,6 +1981,14 @@ hr.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
 	max-width: 96px;
 }
 
+hr.wp-block-separator.is-style-dots.has-background, hr.wp-block-separator.is-style-dots.has-text-color {
+	background-color: transparent !important;
+}
+
+hr.wp-block-separator.is-style-dots.has-background:before, hr.wp-block-separator.is-style-dots.has-text-color:before {
+	color: currentColor !important;
+}
+
 hr.wp-block-separator.is-style-dots:before {
 	color: #DDDDDD;
 	font-size: 1.728rem;
@@ -3706,14 +3714,6 @@ a {
 	margin: 0 auto;
 }
 
-#masthead .site-title {
-	font-size: 2.0736rem;
-}
-
-#masthead .site-description {
-	color: #333;
-}
-
 #masthead .site-branding {
 	text-align: center;
 	background: #fff;
@@ -3738,6 +3738,14 @@ a {
 	color: #4f4f4f;
 }
 
+body:not(.fse-enabled) .site-title {
+	font-size: 2.0736rem;
+}
+
+body:not(.fse-enabled) .site-description {
+	color: #333;
+}
+
 /**
  * 3. Main Wrapper and Content
  */
@@ -3767,7 +3775,7 @@ a {
 /**
  * 4.1 Main Navigation
  */
-#site-navigation {
+body:not(.fse-enabled) #site-navigation, body:not(.fse-enabled) .main-navigation {
 	background-color: #f25f70;
 	border-bottom: 2px solid rgba(0, 0, 0, 0.15);
 	margin-right: 0;
@@ -3775,83 +3783,83 @@ a {
 	text-align: center;
 }
 
-#site-navigation > div {
+body:not(.fse-enabled) #site-navigation > div, body:not(.fse-enabled) .main-navigation > div {
 	text-align: right;
 }
 
-#site-navigation.main-navigation > div {
+body:not(.fse-enabled) #site-navigation.main-navigation > div, body:not(.fse-enabled) .main-navigation.main-navigation > div {
 	padding-right: 16px;
 	padding-left: 16px;
 }
 
-#site-navigation.main-navigation ul li.current-menu-item a {
+body:not(.fse-enabled) #site-navigation.main-navigation ul li.current-menu-item a, body:not(.fse-enabled) .main-navigation.main-navigation ul li.current-menu-item a {
 	color: #4f4f4f;
 }
 
-#site-navigation.main-navigation ul li a {
+body:not(.fse-enabled) #site-navigation.main-navigation ul li a, body:not(.fse-enabled) .main-navigation.main-navigation ul li a {
 	color: white;
 	text-decoration: none;
 }
 
-#site-navigation.main-navigation ul li a:hover {
+body:not(.fse-enabled) #site-navigation.main-navigation ul li a:hover, body:not(.fse-enabled) .main-navigation.main-navigation ul li a:hover {
 	color: #4f4f4f;
 }
 
 @media only screen and (min-width: 560px) {
-	#site-navigation.main-navigation ul li {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul li, body:not(.fse-enabled) .main-navigation.main-navigation ul li {
 		padding-right: 0;
 		padding-left: 0;
 		list-style-type: disc;
 	}
-	#site-navigation.main-navigation ul li.current-menu-item a {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul li.current-menu-item a, body:not(.fse-enabled) .main-navigation.main-navigation ul li.current-menu-item a {
 		color: #4f4f4f;
 	}
-	#site-navigation.main-navigation ul li a {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul li a, body:not(.fse-enabled) .main-navigation.main-navigation ul li a {
 		color: white;
 		font-size: 0.83333rem;
 	}
-	#site-navigation.main-navigation ul li a:hover {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul li a:hover, body:not(.fse-enabled) .main-navigation.main-navigation ul li a:hover {
 		color: #4f4f4f;
 	}
-	#site-navigation.main-navigation ul li a::after {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul li a::after, body:not(.fse-enabled) .main-navigation.main-navigation ul li a::after {
 		color: #ffa4ad;
 		content: " \2022";
 		margin-right: 16px;
 		display: inline;
 		font-size: 1rem;
 	}
-	#site-navigation.main-navigation ul li:last-child a::after {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul li:last-child a::after, body:not(.fse-enabled) .main-navigation.main-navigation ul li:last-child a::after {
 		content: "";
 		margin-right: 0;
 	}
 }
 
 @media only screen and (min-width: 560px) {
-	#site-navigation.main-navigation ul ul {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul ul, body:not(.fse-enabled) .main-navigation.main-navigation ul ul {
 		background-color: white;
 	}
-	#site-navigation.main-navigation ul ul li.current-menu-item a {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul ul li.current-menu-item a, body:not(.fse-enabled) .main-navigation.main-navigation ul ul li.current-menu-item a {
 		color: #f25f70;
 	}
-	#site-navigation.main-navigation ul ul li a {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul ul li a, body:not(.fse-enabled) .main-navigation.main-navigation ul ul li a {
 		color: #4f4f4f;
 	}
-	#site-navigation.main-navigation ul ul li a::after {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul ul li a::after, body:not(.fse-enabled) .main-navigation.main-navigation ul ul li a::after {
 		content: "";
 	}
-	#site-navigation.main-navigation ul ul li a:hover {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul ul li a:hover, body:not(.fse-enabled) .main-navigation.main-navigation ul ul li a:hover {
 		color: #f25f70;
 	}
-	#site-navigation.main-navigation ul ul li:hover {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul ul li:hover, body:not(.fse-enabled) .main-navigation.main-navigation ul ul li:hover {
 		background: #f2f2f2;
 	}
 }
 
-#site-navigation.main-navigation .main-menu > li > a {
+body:not(.fse-enabled) #site-navigation.main-navigation .main-menu > li > a, body:not(.fse-enabled) .main-navigation.main-navigation .main-menu > li > a {
 	padding-right: 0;
 }
 
-#site-navigation.main-navigation #toggle-menu {
+body:not(.fse-enabled) #site-navigation.main-navigation #toggle-menu, body:not(.fse-enabled) .main-navigation.main-navigation #toggle-menu {
 	border-radius: 0;
 	width: 100% !important;
 	text-align: center;
@@ -4002,3 +4010,149 @@ a {
 .site-footer .widget-area .widget-title {
 	margin-bottom: .857em;
 }
+
+/**
+ * Full Site Editing
+ * - Full Site Editing overrides
+ */
+.fse-template-part {
+	margin-bottom: 0;
+	margin-top: 0;
+}
+
+.fse-template-part .main-navigation .alignwide, .fse-template-part .main-navigation .alignfull {
+	width: 100%;
+}
+
+.fse-template-part .main-navigation .has-text-color > .main-menu.footer-menu > li > a {
+	color: inherit;
+}
+
+.fse-template-part .main-navigation .has-text-align-left > .main-menu.footer-menu {
+	justify-content: flex-start;
+}
+
+.fse-template-part .main-navigation .has-text-align-center > .main-menu.footer-menu {
+	justify-content: center;
+}
+
+.fse-template-part .main-navigation .has-text-align-right > .main-menu.footer-menu {
+	justify-content: flex-end;
+}
+
+.fse-template-part .main-navigation .has-background > .main-menu.footer-menu {
+	padding: 16px 0;
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-template-part .main-navigation .has-background > .main-menu.footer-menu {
+		padding: 16px;
+	}
+}
+
+.fse-template-part .main-navigation > div > .main-menu.footer-menu > .menu-item-has-children > a::after {
+	font-size: 0.6em;
+	vertical-align: middle;
+}
+
+.fse-template-part .wp-block-columns .wp-block-column > * {
+	margin: 0 0 5px 0;
+}
+
+.fse-header > *:first-child:not(.alignfull) {
+	margin-top: 21.312px;
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-header > *:first-child:not(.alignfull) {
+		margin-top: 32px;
+	}
+}
+
+.fse-footer {
+	display: block;
+}
+
+.fse-footer .site-info {
+	margin-top: 21.312px;
+	margin-bottom: 21.312px;
+	text-align: center;
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-footer .site-info {
+		margin-top: 32px;
+		margin-bottom: 32px;
+	}
+}
+
+.fse-enabled.home.page.hide-homepage-title .fse-header.entry-content {
+	padding-bottom: 32px;
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-enabled.home.page.hide-homepage-title .fse-header.entry-content {
+		padding-bottom: 48px;
+	}
+}
+
+.fse-template-part .wp-block-social-links {
+	margin-top: 10px;
+}
+
+.fse-template-part.fse-footer .main-navigation {
+	border-bottom: none;
+}
+
+.fse-template-part .main-navigation .alignwide, .fse-template-part .main-navigation .alignfull {
+	width: 100%;
+}
+
+.fse-template-part .main-navigation a {
+	text-decoration: none;
+	text-transform: uppercase;
+}
+
+.fse-template-part .main-navigation .has-background > .main-menu.footer-menu {
+	padding: 0;
+}
+
+.fse-template-part.fse-header .main-navigation {
+	border-bottom: 2px solid rgba(0, 0, 0, 0.15);
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-template-part.fse-header .main-navigation div ul li a::after {
+		color: #ffa4ad;
+		content: " \2022";
+		margin-right: 16px;
+		display: inline;
+	}
+	.fse-template-part.fse-header .main-navigation div ul li:last-child a::after {
+		content: "";
+		margin-right: 0;
+	}
+}
+
+@media only screen and (max-width: 559px) {
+	.fse-template-part {
+		max-width: calc( 100% - 32px);
+	}
+	.fse-template-part .main-navigation > div {
+		padding: 0 32px;
+	}
+}
+
+.fse-template-part .main-navigation .has-background > .main-menu.footer-menu {
+	padding: 0;
+}
+
+.fse-template-part .wp-block-cover .site-title a,
+.fse-template-part .wp-block-cover-image .site-title a {
+	text-decoration: none;
+}
+
+.fse-template-part .wp-block-cover .has-background,
+.fse-template-part .wp-block-cover-image .has-background {
+	text-shadow: none;
+}

+ 183 - 29
stow/style.css

@@ -11,7 +11,7 @@ License: GNU General Public License v2 or later
 License URI: LICENSE
 Template: varia
 Text Domain: stow
-Tags: one-column, flexible-header, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, rtl-language-support, sticky-post, threaded-comments, translation-ready, auto-loading-homepage, jetpack-global-styles
+Tags: one-column, flexible-header, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, rtl-language-support, sticky-post, threaded-comments, translation-ready, auto-loading-homepage, jetpack-global-styles, full-site-editing
 
 This theme, like WordPress, is licensed under the GPL.
 Use it to make something cool, have fun, and share what you've learned with others.
@@ -1981,6 +1981,14 @@ hr.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
 	max-width: 96px;
 }
 
+hr.wp-block-separator.is-style-dots.has-background, hr.wp-block-separator.is-style-dots.has-text-color {
+	background-color: transparent !important;
+}
+
+hr.wp-block-separator.is-style-dots.has-background:before, hr.wp-block-separator.is-style-dots.has-text-color:before {
+	color: currentColor !important;
+}
+
 hr.wp-block-separator.is-style-dots:before {
 	color: #DDDDDD;
 	font-size: 1.728rem;
@@ -3735,14 +3743,6 @@ a {
 	margin: 0 auto;
 }
 
-#masthead .site-title {
-	font-size: 2.0736rem;
-}
-
-#masthead .site-description {
-	color: #333;
-}
-
 #masthead .site-branding {
 	text-align: center;
 	background: #fff;
@@ -3767,6 +3767,14 @@ a {
 	color: #4f4f4f;
 }
 
+body:not(.fse-enabled) .site-title {
+	font-size: 2.0736rem;
+}
+
+body:not(.fse-enabled) .site-description {
+	color: #333;
+}
+
 /**
  * 3. Main Wrapper and Content
  */
@@ -3796,7 +3804,7 @@ a {
 /**
  * 4.1 Main Navigation
  */
-#site-navigation {
+body:not(.fse-enabled) #site-navigation, body:not(.fse-enabled) .main-navigation {
 	background-color: #f25f70;
 	border-bottom: 2px solid rgba(0, 0, 0, 0.15);
 	margin-left: 0;
@@ -3804,83 +3812,83 @@ a {
 	text-align: center;
 }
 
-#site-navigation > div {
+body:not(.fse-enabled) #site-navigation > div, body:not(.fse-enabled) .main-navigation > div {
 	text-align: left;
 }
 
-#site-navigation.main-navigation > div {
+body:not(.fse-enabled) #site-navigation.main-navigation > div, body:not(.fse-enabled) .main-navigation.main-navigation > div {
 	padding-left: 16px;
 	padding-right: 16px;
 }
 
-#site-navigation.main-navigation ul li.current-menu-item a {
+body:not(.fse-enabled) #site-navigation.main-navigation ul li.current-menu-item a, body:not(.fse-enabled) .main-navigation.main-navigation ul li.current-menu-item a {
 	color: #4f4f4f;
 }
 
-#site-navigation.main-navigation ul li a {
+body:not(.fse-enabled) #site-navigation.main-navigation ul li a, body:not(.fse-enabled) .main-navigation.main-navigation ul li a {
 	color: white;
 	text-decoration: none;
 }
 
-#site-navigation.main-navigation ul li a:hover {
+body:not(.fse-enabled) #site-navigation.main-navigation ul li a:hover, body:not(.fse-enabled) .main-navigation.main-navigation ul li a:hover {
 	color: #4f4f4f;
 }
 
 @media only screen and (min-width: 560px) {
-	#site-navigation.main-navigation ul li {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul li, body:not(.fse-enabled) .main-navigation.main-navigation ul li {
 		padding-left: 0;
 		padding-right: 0;
 		list-style-type: disc;
 	}
-	#site-navigation.main-navigation ul li.current-menu-item a {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul li.current-menu-item a, body:not(.fse-enabled) .main-navigation.main-navigation ul li.current-menu-item a {
 		color: #4f4f4f;
 	}
-	#site-navigation.main-navigation ul li a {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul li a, body:not(.fse-enabled) .main-navigation.main-navigation ul li a {
 		color: white;
 		font-size: 0.83333rem;
 	}
-	#site-navigation.main-navigation ul li a:hover {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul li a:hover, body:not(.fse-enabled) .main-navigation.main-navigation ul li a:hover {
 		color: #4f4f4f;
 	}
-	#site-navigation.main-navigation ul li a::after {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul li a::after, body:not(.fse-enabled) .main-navigation.main-navigation ul li a::after {
 		color: #ffa4ad;
 		content: " \2022";
 		margin-left: 16px;
 		display: inline;
 		font-size: 1rem;
 	}
-	#site-navigation.main-navigation ul li:last-child a::after {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul li:last-child a::after, body:not(.fse-enabled) .main-navigation.main-navigation ul li:last-child a::after {
 		content: "";
 		margin-left: 0;
 	}
 }
 
 @media only screen and (min-width: 560px) {
-	#site-navigation.main-navigation ul ul {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul ul, body:not(.fse-enabled) .main-navigation.main-navigation ul ul {
 		background-color: white;
 	}
-	#site-navigation.main-navigation ul ul li.current-menu-item a {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul ul li.current-menu-item a, body:not(.fse-enabled) .main-navigation.main-navigation ul ul li.current-menu-item a {
 		color: #f25f70;
 	}
-	#site-navigation.main-navigation ul ul li a {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul ul li a, body:not(.fse-enabled) .main-navigation.main-navigation ul ul li a {
 		color: #4f4f4f;
 	}
-	#site-navigation.main-navigation ul ul li a::after {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul ul li a::after, body:not(.fse-enabled) .main-navigation.main-navigation ul ul li a::after {
 		content: "";
 	}
-	#site-navigation.main-navigation ul ul li a:hover {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul ul li a:hover, body:not(.fse-enabled) .main-navigation.main-navigation ul ul li a:hover {
 		color: #f25f70;
 	}
-	#site-navigation.main-navigation ul ul li:hover {
+	body:not(.fse-enabled) #site-navigation.main-navigation ul ul li:hover, body:not(.fse-enabled) .main-navigation.main-navigation ul ul li:hover {
 		background: #f2f2f2;
 	}
 }
 
-#site-navigation.main-navigation .main-menu > li > a {
+body:not(.fse-enabled) #site-navigation.main-navigation .main-menu > li > a, body:not(.fse-enabled) .main-navigation.main-navigation .main-menu > li > a {
 	padding-left: 0;
 }
 
-#site-navigation.main-navigation #toggle-menu {
+body:not(.fse-enabled) #site-navigation.main-navigation #toggle-menu, body:not(.fse-enabled) .main-navigation.main-navigation #toggle-menu {
 	border-radius: 0;
 	width: 100% !important;
 	text-align: center;
@@ -4031,3 +4039,149 @@ a {
 .site-footer .widget-area .widget-title {
 	margin-bottom: .857em;
 }
+
+/**
+ * Full Site Editing
+ * - Full Site Editing overrides
+ */
+.fse-template-part {
+	margin-bottom: 0;
+	margin-top: 0;
+}
+
+.fse-template-part .main-navigation .alignwide, .fse-template-part .main-navigation .alignfull {
+	width: 100%;
+}
+
+.fse-template-part .main-navigation .has-text-color > .main-menu.footer-menu > li > a {
+	color: inherit;
+}
+
+.fse-template-part .main-navigation .has-text-align-left > .main-menu.footer-menu {
+	justify-content: flex-start;
+}
+
+.fse-template-part .main-navigation .has-text-align-center > .main-menu.footer-menu {
+	justify-content: center;
+}
+
+.fse-template-part .main-navigation .has-text-align-right > .main-menu.footer-menu {
+	justify-content: flex-end;
+}
+
+.fse-template-part .main-navigation .has-background > .main-menu.footer-menu {
+	padding: 16px 0;
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-template-part .main-navigation .has-background > .main-menu.footer-menu {
+		padding: 16px;
+	}
+}
+
+.fse-template-part .main-navigation > div > .main-menu.footer-menu > .menu-item-has-children > a::after {
+	font-size: 0.6em;
+	vertical-align: middle;
+}
+
+.fse-template-part .wp-block-columns .wp-block-column > * {
+	margin: 0 0 5px 0;
+}
+
+.fse-header > *:first-child:not(.alignfull) {
+	margin-top: 21.312px;
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-header > *:first-child:not(.alignfull) {
+		margin-top: 32px;
+	}
+}
+
+.fse-footer {
+	display: block;
+}
+
+.fse-footer .site-info {
+	margin-top: 21.312px;
+	margin-bottom: 21.312px;
+	text-align: center;
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-footer .site-info {
+		margin-top: 32px;
+		margin-bottom: 32px;
+	}
+}
+
+.fse-enabled.home.page.hide-homepage-title .fse-header.entry-content {
+	padding-bottom: 32px;
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-enabled.home.page.hide-homepage-title .fse-header.entry-content {
+		padding-bottom: 48px;
+	}
+}
+
+.fse-template-part .wp-block-social-links {
+	margin-top: 10px;
+}
+
+.fse-template-part.fse-footer .main-navigation {
+	border-bottom: none;
+}
+
+.fse-template-part .main-navigation .alignwide, .fse-template-part .main-navigation .alignfull {
+	width: 100%;
+}
+
+.fse-template-part .main-navigation a {
+	text-decoration: none;
+	text-transform: uppercase;
+}
+
+.fse-template-part .main-navigation .has-background > .main-menu.footer-menu {
+	padding: 0;
+}
+
+.fse-template-part.fse-header .main-navigation {
+	border-bottom: 2px solid rgba(0, 0, 0, 0.15);
+}
+
+@media only screen and (min-width: 560px) {
+	.fse-template-part.fse-header .main-navigation div ul li a::after {
+		color: #ffa4ad;
+		content: " \2022";
+		margin-left: 16px;
+		display: inline;
+	}
+	.fse-template-part.fse-header .main-navigation div ul li:last-child a::after {
+		content: "";
+		margin-left: 0;
+	}
+}
+
+@media only screen and (max-width: 559px) {
+	.fse-template-part {
+		max-width: calc( 100% - 32px);
+	}
+	.fse-template-part .main-navigation > div {
+		padding: 0 32px;
+	}
+}
+
+.fse-template-part .main-navigation .has-background > .main-menu.footer-menu {
+	padding: 0;
+}
+
+.fse-template-part .wp-block-cover .site-title a,
+.fse-template-part .wp-block-cover-image .site-title a {
+	text-decoration: none;
+}
+
+.fse-template-part .wp-block-cover .has-background,
+.fse-template-part .wp-block-cover-image .has-background {
+	text-shadow: none;
+}