/*
Theme Name: Urban Square
Theme URI: http://www.jasong-designs.com/2015/03/04/urban-square/
Author: Jason G. Designs
Author URI: http://jasong-designs.com
Description: Urban Square is a theme based on a BlankSlate core. With this theme, your template will no longer have to look like anyone else's. You can change the header image, logo, background image and colors behind the background, header/footer/sidebar, menus and widgets. Urban Square is high definition ready, providing retina.js on option for inline images and an image upload for @2x backgrounds. The Header Image section in the Customizer has additions that let you choose two display modes for header images: Responsive- where images stretch with the browser window and Repeating- for simple repeating textures/patterns. Version 1.6 is now compatible with Gutenberg/WP 5.0.
Version: 1.7.6
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License
License URI: https://www.gnu.org/licenses/gpl.html
Tags: two-columns, custom-logo, custom-menu, featured-images, microformats, sticky-post, threaded-comments, translation-ready, custom-background, custom-header, custom-colors, right-sidebar
Text Domain: urban-square

This theme uses BlankSlate for core code.

BlankSlate WordPress Theme © 2011-2014 TidyThemes
BlankSlate is distributed under the terms of the GNU GPL
*/

/* Reset */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	font-size: 100%;
	font: inherit;
	padding: 0;
	border: 0;
	margin: 0;
	vertical-align: baseline;
}

body {
	line-height: 1;
}

ol,ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
/* */

/* Custom Variables */
:root {
	--background-color: #ffffff;
	--header-background-color: #f5f5f5;
	--menu-background-color: #f5f5f5;
	--base-color: #ffffff;
	--text-color: #333333;
	--text-color-light: #f5f5f5;
	--link-color: #800000;
	--link-hover-color: #f08080;
	--supporting-color: #800000;
	--supporting-hover-color: #f08080;
	--border-color: #c0c0c0;
	--everything-else-color: #f5f5f5;

	--supporting-color-light-rgba: rgba(168, 40, 40, 1);
	--supporting-color-rgba: rgba(128, 0, 0, 1);
	--supporting-hover-color-light-rgba: rgba(255, 168, 168, 1);
	--supporting-hover-color-rgba: rgba(240, 128, 128, 1);
	--border-color-light-rgba: rgba(232, 232, 232, 1);
	--border-color-rgba: rgba(192, 192, 192, 1);
	--everything-else-light-rgba: rgba(245, 245, 245, 1);
	--everything-else-rgba: rgba(205, 205, 205, 1);

	--font-family: Tahoma, "Trebuchet MS", Geneva, sans-serif;
}
/* */

.clear {
	clear: both;
}

.center {
	text-align: center;
}

/* WordPress */
.sticky {
	background-color: var(--everything-else-color);
	border-top: 2px solid var(--border-color);
	border-bottom: 2px solid var(--border-color);
	padding: 1em;
}

.bypostauthor .comment-author {
	background-color: var(--everything-else-color);
	border-bottom: 2px solid var(--border-color);
}

.wp-caption {
	max-width: 90% !important;
	/* Responsive captioned images */
}

.wp-caption img {
	margin: 0;
}

.wp-block-image figcaption,
.wp-block-embed figcaption,
.wp-caption-text,
.gallery-caption {
	font-size: 0.75em;
	font-weight: bold;
	text-align: center;
}

/* Gallery */
.gallery {
	margin: auto;
	clear: both;
}

.gallery-item {
	width: 100%;
	text-align: center;
}

.gallery-item img {
	margin: 1em 0;
}
/* */

.alignright {
	float: right;
}

.alignleft {
	float: left;
}

.aligncenter {
	display: block;
	margin: 0 auto;
}

.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
	max-width: 100%;
	height: auto;
} /* Responsive images */

/* Gutenberg */
.wp-block-button,
.wp-block-buttons,
.wp-block-cover,
.wp-block-embed,
.wp-block-gallery,
.wp-block-image,
.wp-block-media-image,
.wp-block-pullquote {
	margin-top: 1.5em;
	margin-bottom: 1.5em;
}

.wp-block-buttons .wp-block-button {
	margin-top: 0;
	margin-bottom: 0;
}

.wp-block-image img,
.wp-block-gallery img,
.wp-block-media-text img {
	margin: 0;
}

.wp-block-image figcaption,
.wp-block-embed figcaption {
	color: var(--text-color);
}

.wp-block-gallery .blocks-gallery-item figcaption {
	padding: 40px 0px 5px;
	background: rgba(0, 0, 0, 0.3);
}

.wp-block-embed iframe {
	width: 100%;
}

.wp-block-media-text,
.wp-block-media-text.has-media-on-the-right {
		grid-template-areas:
		"media-text-media media-text-media"
		"media-text-content media-text-content";
}

.wp-block-quote.is-style-large {
	margin-left: 5%;
	padding: 2em;
}

.wp-block-pullquote {
	color: var(--text-color);
	font-style: italic;
	margin-bottom: 1em;
}

.wp-block-pullquote.alignleft,
.wp-block-pullquote.alignright {
	width: 50%;
}

.wp-block-pullquote.alignleft {
	margin-right: 1em;
}

.wp-block-pullquote.alignright {
	margin-left: 1em;
}

.wp-block-pullquote:not(.is-style-solid-color) {
	border-top: 2px solid var(--border-color);
	border-bottom: 2px solid var(--border-color);
}

.wp-block-pullquote.is-style-solid-color {
	background-color: var(--everything-else-color);
}

.wp-block-pullquote blockquote {
	background-color: transparent;
	margin-left: 0;
	padding: 0;
}

.wp-block-pullquote cite,
.wp-block-pullquote.is-style-solid-color blockquote cite {
	font-style: italic;
}

.wp-block-button {
	font-weight: bold;
}

.wp-block-button .wp-block-button__link {
	border-radius: 0;
	font-size: 1em;
	padding: 0.5em;
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link:not(.has-background) {
	background-color: var(--supporting-color);
	color: var(--text-color-light);
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link:not(.has-background):active,
.wp-block-button:not(.is-style-outline) .wp-block-button__link:not(.has-background):focus,
.wp-block-button:not(.is-style-outline) .wp-block-button__link:not(.has-background):hover {
	background-color: var(--supporting-hover-color);
}

.wp-block-calendar table tbody {
	border-color: var(--border-color);
	color: var(--text-color);
}

.wp-block-calendar tbody td,
.wp-block-calendar th {
	border: transparent;
	padding: 1em;
}

.wp-block-calendar table th {
	font-weight: bold;
}

.wp-block-latest-comments__comment-date {
	color: var(--text-color);
}

.wc-block-pagination-ellipsis,
.wc-block-pagination-page {
	color: var(--text-color);
}

.content--full .alignwide {
	margin-left: calc(25% - 25vw);
	margin-right: calc(25% - 25vw);
	max-width: 1000%;
	width: auto;
}

.alignfull,
.alignwide {
	clear: both;
}

.alignfull {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	width: auto;
	max-width: 1000%;
}

@media (min-width: 48em) {
	.wp-block-separator.is-style-wide {
		margin-left: calc(25% - 25vw);
		margin-right: calc(25% - 25vw);
	}
}

@media (min-width: 64.063em) {
	.wp-block-separator.is-style-wide {
		margin-left: calc(12.5% - 12.5vw);
		margin-right: calc(12.5% - 12.5vw);
	}
}

@media (min-width: 85.375em) {
	.wp-block-separator.is-style-wide {
		margin-left: calc(15.5% - 15.5vw);
		margin-right: calc(15.5% - 15.5vw);
	}
}

.is-style-outline .wp-block-button__link {
	background-color: transparent;
	border: 1px solid;
	color: var(--supporting-color);
}

.is-style-outline .wp-block-button__link:not(.has-text-color):hover,
.is-style-outline .wp-block-button__link:not(.has-text-color):focus {
	background-color: var(--supporting-color);
	border-color: var(--supporting-color);
	color: var(--text-color-light);
}

/* Custom Gutenberg colors and gradients */
.has-white-color,
.has-white-color:link,
.has-white-color:visited,
.has-white-color:focus,
.has-white-color:hover {
	color: var(--text-color-light);
}

.has-white-background-color,
.is-style-outline .wp-block-button__link.has-white-color:hover,
.is-style-outline .wp-block-button__link.has-white-color:focus {
	background-color: var(--text-color-light);
}

.is-style-outline .wp-block-button__link.has-white-color {
	border-color: var(--text-color-light);
	color: var(--text-color-light);
}

.has-black-color,
.has-black-color:link,
.has-black-color:visited,
.has-black-color:focus,
.has-black-color:hover {
	color: var(--text-color);
}

.has-black-background-color,
.is-style-outline .wp-block-button__link.has-black-color:hover,
.is-style-outline .wp-block-button__link.has-black-color:focus {
	background-color: var(--text-color);
}

.is-style-outline .wp-block-button__link.has-black-color {
	border-color: var(--text-color);
	color: var(--text-color);
}

.has-primary-1-color,
.has-primary-1-color:link,
.has-primary-1-color:visited,
.has-primary-1-color:active,
.has-primary-1-color:focus,
.has-primary-1-color:hover {
	color: var(--supporting-color);
}

.has-primary-1-background-color,
.is-style-outline .wp-block-button__link.has-primary-1-color:hover,
.is-style-outline .wp-block-button__link.has-primary-1-color:focus {
	background-color: var(--supporting-color);
}

.is-style-outline .wp-block-button__link.has-primary-1-color {
	border-color: var(--supporting-color);
	color: var(--supporting-color);
}

.has-primary-2-color,
.has-primary-2-color:link,
.has-primary-2-color:visited,
.has-primary-2-color:focus,
.has-primary-2-color:hover {
	color: var(--supporting-hover-color);
}

.has-primary-2-background-color,
.is-style-outline .wp-block-button__link.has-primary-2-color:hover,
.is-style-outline .wp-block-button__link.has-primary-2-color:focus {
	background-color: var(--supporting-hover-color);
}

.is-style-outline .wp-block-button__link.has-primary-2-color {
	border-color: var(--supporting-hover-color);
	color: var(--supporting-hover-color);
}

.has-secondary-1-color,
.has-secondary-1-color:link,
.has-secondary-1-color:visited,
.has-secondary-1-color:focus,
.has-secondary-1-color:hover {
	color: var(--border-color);
}

.has-secondary-1-background-color,
.is-style-outline .wp-block-button__link.has-secondary-1-color:hover,
.is-style-outline .wp-block-button__link.has-secondary-1-color:focus {
	background-color: var(--border-color);
}

.is-style-outline .wp-block-button__link.has-secondary-1-color {
	border-color: var(--border-color);
	color: var(--border-color);
}

.has-secondary-2-color,
.has-secondary-2-color:link,
.has-secondary-2-color:visited,
.has-secondary-2-color:focus,
.has-secondary-2-color:hover {
	color: var(--everything-else-color);
}

.has-secondary-2-background-color,
.is-style-outline .wp-block-button__link.has-secondary-2-color:hover,
.is-style-outline .wp-block-button__link.has-secondary-2-color:focus {
	background-color: var(--everything-else-color);
}

.is-style-outline .wp-block-button__link.has-secondary-2-color {
	border-color: var(--everything-else-color);
	color: var(--everything-else-color);
}

.is-style-outline .wp-block-button__link.has-white-color:hover,
.is-style-outline .wp-block-button__link.has-white-color:focus,
.is-style-outline .wp-block-button__link.has-primary-2-color:hover,
.is-style-outline .wp-block-button__link.has-primary-2-color:focus,
.is-style-outline .wp-block-button__link.has-secondary-2-color:hover,
.is-style-outline .wp-block-button__link.has-secondary-2-color:focus,
.is-style-outline .wp-block-button__link.has-secondary-1-color:hover,
.is-style-outline .wp-block-button__link.has-secondary-1-color:focus {
	color: var(--text-color);
}

.is-style-outline .wp-block-button__link.has-black-color:hover,
.is-style-outline .wp-block-button__link.has-black-color:focus,
.is-style-outline .wp-block-button__link.has-primary-1-color:hover,
.is-style-outline .wp-block-button__link.has-primary-1-color:focus {
	color: var(--text-color-light);
}

.has-white-gradient-background {
	background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(235, 235, 235, 1) 100%);
}

.has-black-gradient-background {
	background: linear-gradient(180deg, rgba(91, 91, 91, 1) 0%, rgba(51, 51, 51, 1) 100%);
}

.has-primary-1-gradient-background {
	background: linear-gradient(180deg, var(--supporting-color-light-rgba) 0%, var(--supporting-color-rgba) 100%);
}

.has-primary-2-gradient-background {
	background: linear-gradient(180deg, var(--supporting-hover-color-light-rgba) 0%, var(--supporting-hover-color-rgba) 100%);
}

.has-secondary-1-gradient-background {
	background: linear-gradient(180deg, var(--border-color-light-rgba) 0%, var(--border-color-rgba) 100%);
}

.has-secondary-2-gradient-background {
	background: linear-gradient(180deg, var(--everything-else-light-rgba) 0%, var(--everything-else-rgba) 100%);
}

.is-style-outline .wp-block-button__link.has-white-gradient-background:focus,
.is-style-outline .wp-block-button__link.has-white-gradient-background:hover,
.is-style-outline .wp-block-button__link.has-primary-2-gradient-background:focus,
.is-style-outline .wp-block-button__link.has-primary-2-gradient-background:hover,
.is-style-outline .wp-block-button__link.has-secondary-1-gradient-background:focus,
.is-style-outline .wp-block-button__link.has-secondary-1-gradient-background:hover,
.is-style-outline .wp-block-button__link.has-secondary-2-gradient-background:focus,
.is-style-outline .wp-block-button__link.has-secondary-2-gradient-background:hover {
	color: var(--text-color);
}

.is-style-outline .wp-block-button__link.has-black-gradient-background:focus,
.is-style-outline .wp-block-button__link.has-black-gradient-background:hover,
.is-style-outline .wp-block-button__link.has-primary-1-gradient-background:focus,
.is-style-outline .wp-block-button__link.has-primary-1-gradient-background:hover {
	color: var(--text-color-light);
}
/* */

@media (min-width: 600px) {
	.wp-block-column {
		box-sizing: border-box;
	}

	.wp-block-media-text {
		grid-template-areas:
			"media-text-media media-text-content";
	}

	.wp-block-media-text.has-media-on-the-right {
		grid-template-areas:
			"media-text-content media-text-media";
	}
}

@media (min-width: 782px) {
	.wp-block-columns {
		flex-wrap: wrap;
	}
}

@media (min-width: 85.375em) {
	.wp-block-columns.has-3-columns,
	.wp-block-columns.has-4-columns,
	.wp-block-columns.has-5-columns,
	.wp-block-columns.has-6-columns {
		margin-left: calc(12.5% - 12.5vw);
		margin-right: calc(12.5% - 12.5vw);
	}

	.wp-block-columns.has-3-columns.alignwide,
	.wp-block-columns.has-4-columns.alignwide,
	.wp-block-columns.has-5-columns.alignwide,
	.wp-block-columns.has-6-columns.alignwide {
		margin-left: calc(18.8% - 18.8vw);
		margin-right: calc(18.8% - 18.8vw);
	}

	.wp-block-columns.has-3-columns.alignfull,
	.wp-block-columns.has-4-columns.alignfull,
	.wp-block-columns.has-5-columns.alignfull,
	.wp-block-columns.has-6-columns.alignfull {
		margin-left: calc(25% - 25vw);
		margin-right: calc(25% - 25vw);
	}

	.wp-block-columns.has-3-columns .wp-block-column,
	.wp-block-columns.has-4-columns .wp-block-column,
	.wp-block-columns.has-5-columns .wp-block-column,
	.wp-block-columns.has-6-columns .wp-block-column {
		max-width: 33%;
	}
}
/* */

/* For Font Awesome icons */
.fa-caret-down {
	float: right;
}

.fa-bars,
.fa-list-ul {
	margin: 0 0.5em;
}
/* */

/* General */
body {
	font: normal 1em var(--font-family);
	background-color: var(--background-color);
	color: var(--text-color);
	line-height: 1.5em;
}

h1, h2, h3, h4, h5, h6 {
	margin: 1em 0 0.5em 0;
	line-height: 1em;
	font-weight: bold;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
	text-decoration: none;
}

h1 {
	font-size: 2.250em; /* ~36px */
}

h2 {
	font-size: 1.875em; /* ~30px */
}

h3 {
	font-size: 1.5em; /* ~24px */
}

h4 {
	font-size: 1.125em; /* ~18px */
}

h5 {
	font-size: 0.875em; /* ~14px */
}

h6 {
	font-size: 0.75em; /* ~12px */
}

p,
dl  {
	margin-bottom: 1em;
}

li {
	margin-left: 1em;
}

a:link,
a:visited {
	color: var(--link-color);
}

a:hover,
a:active,
a:focus {
	color: var(--link-hover-color);
}

blockquote, q {
	background-color: var(--everything-else-color);
}

blockquote {
	margin: 0 0 1em 5%;
	padding: 1em;
}

blockquote p,
em,
q p,
cite {
	font-style: italic;
}

img {
	margin: 1em;
	max-width: 100%;
	height: auto;
}

video { /* for responsive html5 videos */
  width: 100% !important;
  height: auto !important;
}

cite a:link,
cite a:visited {
	text-align: right;
	text-decoration: none;
}

small {
	font-size: 75%;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

ol,
ul {
	margin-bottom: 1em;
}

dt {
	font-weight: bold;
}

dd {
	text-indent: 1em;
	font-style: italic;
}

table {
	border: 1px solid var(--border-color);
	margin: 1em auto;
}

table caption, table th {
	font-weight: bold;
}

table tbody {
	background-color: var(--everything-else-color);
}

table th, table td {
	padding: 0.5em;
	line-height: 1em;
}

label {
	margin: 0 0.5em;
}

textarea,
input,
select {
	background-color: var(--base-color);
	border: 1px solid var(--supporting-color);
	box-sizing: border-box;
	color: var(--text-color);
	display: inline-block;
	font-family: var(--font-family);
	padding: 0 0.5em;
}

textarea,
input,
select,
option {
	min-height: 2.75em;
}

fieldset, form {
   display: block;
}

/* See the article Finger-Friendly Design... at http://www.smashingmagazine.com/2012/02/21/finger-friendly-design-ideal-mobile-touchscreen-target-sizes/ */

input[type="reset"],
input[type="submit"] {
	min-width: 4.5em; /* ~72 px width; for touchscreens */
}

input[type="checkbox"],
input[type="radio"] {
	/* ~57px */
	width: 3.563em;
	height: 3.563em;
}

button,
.woocommerce button.button--header-menu,
.woocommerce button.button--header-site-nav,
input[type="reset"],
input[type="submit"] {
	background-color: var(--supporting-color);
	color: var(--text-color-light);
	font-family: var(--font-family);
	font-weight: bold;
	margin: 0.5em;
	min-height: 2.75em; /* ~44px */
}

.button,
.woocommerce button.button {
	background-color: var(--supporting-color);
	color: var(--text-color-light);
}

button,
.button {
	border: transparent;
}

form textarea {
	width: 100%;
}

pre {
	margin: 1em 0;
	padding: 1em;
	background-color: var(--everything-else-color);
	overflow-x: auto;
}

pre,
code,
kbd,
tt {
	font: normal 0.750em "Deja Vu Sans Mono", "Andale Mono", Monaco, monospace;
}

strong {
	font-weight: bold;
}

hr {
	border: 1px solid;
	color: var(--everything-else-color);
	margin: 1em 0;
}
/* */

/* Layout sections / WP template classes and IDs */
.wrapper {
	max-width: 120em; /* ~1920px */
	overflow: hidden;
}

.header {
	width: 100%;
	clear: both;
	background-color: var(--header-background-color);
	float: left; /* covers floated elements inside .header__button-panel div */
}

.container {
	clear: left;
	display: grid;
	grid-template-columns: 1fr 85% 1fr;
}

/* Custom logo styles */
.custom-logo-link img {
	display: block;
	margin: 0 auto 1em auto;
}

.header__branding {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	padding: 5%;
	width: 100%;
}

.header__site-title {
	/* unstyle .header__site-title h1 tag */
	font-size: 1.75em;
	font-weight: normal;
	line-height: 1em;
	margin: 0;
}

.header__site-title-link {
	/* restyle .header__site-title-link here for non index pages */
	font-weight: bold;
	text-decoration: none;
}

.header__site-description {
	font-size: 0.875em;
	font-style: italic;
	line-height: 1.25em;
}

.header__panel {
	width: 90%;
	padding: 5%;
}

.screen-reader-text {
	/* send text off screen so screen readers can still read it */
	position: absolute;
	top: 0;
	left: -9999px;
}

.searchbox {
	margin-bottom: 1em;
}

.search__form > label {
	display: inline-block;
	max-width: 80%;
}

.search__form {
	width: 100%;
	text-align: center;
}

.search__label {
	margin: 0;
}

.search__field {
	max-width: 100%;
	vertical-align: bottom;
	margin-right: -0.25em;
}

.search__submit {
	box-sizing: border-box;
	margin: 0;
	min-width: 2.75em;
	vertical-align: bottom;
}

.header__button-panel {
	width: 100%;
}

.button--header-menu,
.button--header-site-nav,
.woocommerce button.button--header-menu,
.woocommerce button.button--header-site-nav {
	float: left;
	font-size: 0.875em;
	height: 4rem;
	margin: 0.5em 1em 0 0;
	padding: 0.5rem;
	width: 4rem;
}

.woocommerce button.button--header-menu,
.woocommerce button.button--header-site-nav,
.woocommerce button.button--header-submenu,
.woocommerce button.button--widget {
	border-radius: 0;
}

.woocommerce button.button--header-menu:hover,
.woocommerce button.button--header-site-nav:hover,
.woocommerce button.button--widget:hover {
	background-color: var(--supporting-color);
	color: var(--text-color-light);
}

.woocommerce button.button--header-submenu:hover {
	background-color: var(--menu-background-color);
}

.woocommerce button.button--widget {
	padding: 0;
}

.button--header-site-nav {
	display: block;
	text-decoration: none;
}

.header__menu-label,
.header__site-nav-label {
	position: absolute;
	left: -9999px; /* send off screen */
}

.menu,
.sidebar__widget-area {
	background-color: var(--menu-background-color);
}

.sidebar__widget-area {
	padding: 0.5em;
}

.menu--header {
	clear: left;
	display: flex;
	flex-direction: column;
	margin: 0;
}

.menu--header .page_item,
.menu__item--header {
	clear: both;
}

.menu--header .page_item,
.menu__item--header,
.widget ul li {
	margin: 0;
}

.menu .page_item a:link,
.menu__anchor:link,
.menu--header .page_item a:visited,
.menu__anchor:visited,
.widget ul li a:link,
.widget ul li a:visited {
	text-decoration: none;
}

.menu .page_item a:link,
.menu__anchor:link,
.menu--header .page_item a:visited,
.menu__anchor:visited,
.widget--sidebar ul li a:link,
.widget--sidebar ul li a:visited {
	display: block;
	padding: 0.5em;
}

.menu .page_item a:active,
.menu__anchor--header:active,
.menu--header .page_item a:focus,
.menu__anchor--header:focus,
.menu .page_item a:hover,
.menu__anchor--header:hover,
.widget--sidebar ul li a:active,
.widget--sidebar ul li a:focus,
.widget--sidebar ul li a:hover {
	background-color: var(--supporting-hover-color);
	color: var(--text-color-light);
}

.menu .children,
.menu__item .sub-menu {
	border: transparent;
	display: flex;
	flex-direction: column;
	padding: 0;
	margin-left: 5%;
}

.menu--header .page_item_has_children a:link,
.menu--header .page_item_has_children a:visited,
.menu__item--header.menu-item-has-children .menu__anchor--header:link,
.menu__item--header.menu-item-has-children .menu__anchor--header:visited {
	float: left;
	width: 70%;
}

.menu--header .current_page_item > a:link,
.menu--header .current_page_item > a:visited,
.menu--header .current_page_item .button--header-submenu,
.woocommerce .menu--header .current_page_item .button--header-submenu,
.menu--header .current_page_ancestor > a:link,
.menu--header .current_page_ancestor > a:visited {
	background-color: var(--background-color);
}

.menu--header .current_page_item > a:hover,
.menu--header .current_page_ancestor > a:hover {
	color: var(--link-color);
}

.button--header-submenu,
.woocommerce button.button--header-submenu {
	background-color: var(--menu-background-color);
	border: 1px solid var(--border-color);
	color: var(--supporting-color);
	display: inline-block;
  float: none;
  font-size: 1em;
  margin: 0;
  min-width: 4.5em;
  min-height: 2.5em;
  vertical-align: top;
}

.woocommerce button.button--header-submenu:hover {
	color: var(--supporting-color);
}

.content,
.sidebar {
	grid-column: 2 / 3;
}

.post {
	clear: left;
}

.page__title,
.post__title {
	font-size: 1.875em;
}

.post__footer,
.post__meta {
	margin: 1em 0;
}

.post__footer {
	clear: both;
}

.post__header-icon,
.post__footer-icon {
	margin: 0 0.5em 0 0.5em;
}

.post__meta {
	font-style: italic;
	font-size: 0.875em;
}

.post__entry-links,
.navigation--comments {
	text-align: center;
}

.post__entry-links a:link,
.post__entry-links a:visited,
.post__edit-link:link,
.post__edit-link:visited,
.page-numbers,
.comment-reply-link:link,
.comment-reply-link:visited {
	background-color: var(--supporting-color);
	color: var(--text-color-light);
	font-weight: bold;
	text-decoration: none;
}


.post__entry-links a:active,
.post__entry-links a:focus,
.post__entry-links a:hover,
.post__edit-link:active,
.post__edit-link:focus,
.post__edit-link:hover,
.page-numbers:active,
.page-numbers:focus,
.page-numbers:hover,
.comment-reply-link:active,
.comment-reply-link:focus,
.comment-reply-link:hover {
	background-color: var(--supporting-hover-color);
}

.post__edit-link,
.comment-reply-link {
	padding: 0.5em;
}

.post__entry-links a:link,
.post__entry-links a:visited,
.page-numbers {
	width: 2.75em;
	height: 2.75em;

}

.post__entry-links a:link,
.post__entry-links a:visited {
	display: inline-block;
}

.entry-content .wc-block-grid__product-image .wc-block-grid__product-image__image,
.wc-block-grid__product-image .wc-block-grid__product-image__image {
	margin: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
	background-color: var(--menu-background-color);
	border-color: var(--border-color);
	border-radius: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
	color: var(--text-color);
}

.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after {
	box-shadow: 2px 2px 0 var(--background-color);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
	background-color: var(--background-color);
	border-top-color: var(--menu-background-color);
	border-left-color: var(--menu-background-color);
	border-bottom-color: transparent;
	border-right-color: var(--menu-background-color);
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li.active::after {
	box-shadow: 2px 2px 0 var(--background-color);
}

.woocommerce nav.woocommerce-pagination ul {
	border-color: transparent;
}

.woocommerce nav.woocommerce-pagination ul li {
	border-right-color: transparent;
}

.woocommerce nav.woocommerce-pagination ul li a.page-numbers,
.woocommerce nav.woocommerce-pagination ul li span {
	background-color: var(--supporting-color);
	color: var(--text-color-light);
	font-weight: bold;
	margin: 0 0.25em;
	min-height: 1.5em;
	min-width: 1.5em;
}

.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
	background-color: var(--supporting-hover-color);
	color: var(--text-color-light);
}

.woocommerce nav.woocommerce-pagination .page-numbers {
	background-color: transparent;
	height: auto;
	width: auto;
}

/* Comments */
.navigation--comments {
	justify-content: center;
}

.navigation--comments .prev,
.navigation--comments .next {
	width: 100%;
}

.page-numbers {
	margin: 0 0.25rem;
}

.page-numbers:not(.prev):not(.next):link,
.page-numbers:not(.prev):not(.next):visited {
	color: var(--text-color-light);
}

.prev.page-numbers,
.prev.page-numbers:active,
.prev.page-numbers:focus,
.prev.page-numbers:hover,
.next.page-numbers,
.next.page-numbers:active,
.next.page-numbers:focus,
.next.page-numbers:hover,
.page-numbers.current,
.page-numbers.current:active,
.page-numbers.current:focus,
.page-numbers.current:hover {
	background-color: transparent;
}

.page-numbers.current {
	color: var(--text-color);
}

.comment {
	list-style: none;
	margin-left: 0;
}

.comment-body {
	padding: 1em 0;
}

.comment-body p,
.comment-body pre {
	clear: both;
}

.comment-author,
.comment-meta {
	font-size: 0.875em;
}

.comment-meta a:link,
.comment-meta a:visited {
	text-decoration: none;
}

img.avatar {
	float: left;
	margin: 0 1em 1em 0;
}

cite.fn {
	font-weight: bold;
}

.depth-2 {
	/* Threaded comments */
	margin-left: 5%;
}

.pingback a:link,
.pingback a:visited {
	text-decoration: none;
}

.comment-form {
	background-color: var(--everything-else-color);
	padding: 1em;
}

.comment-form input {
	max-width: 100%;
}

.comment-notes,
.form-allowed-tags {
	font-size: 0.875em;
}

.comment-notes {
	font-weight: bold;
}

.required {
	color: red;
}
/* */

/* Category, Archive, Search pages */
.archive__title {
	font-weight: normal;
}

.archive__meta { /* Category, Author descriptions */
	background-color: var(--everything-else-color);
	font-style: italic;
	margin: 0 12.5% 1em;
	padding: 1em;
}

body.search .page__title,
body.search .post__title {
	font-weight: normal;
}

.post__title--archive,
body.search .page__title,
body.search .post__title {
	font-size: 1.5em;
}
/* */

.navigation {
	display: flex;
	padding: 1em 7.5%;
	width: 85%;
}

.navigation--posts,
.navigation--single,
.navigation--attachment {
	justify-content: space-between;
}

.navigation--attachment a {
	text-decoration: none;
}

.back-to-top { /* Works in conjunction with backToTop.js script */
	position: fixed;
	bottom: 2em;
	right: 0;
	background-color: rgba(128, 0, 0, 0.8);
	padding: 0.5em;
	display: none;
}

a.back-to-top:link,
a.back-to-top:visited {
	color: #fff;
	text-decoration: none;
}

a.back-to-top:active {
	background-color: var(--supporting-color);
}

/* Sidebar */
.sidebar {
	bottom: 0;
	background-color: var(--base-color);
	margin-bottom: 1em;
	padding-top: 0;
	width: 100%;
}

.sidebar ul,
.footer__widgets,
.menu--header,
.children,
.sub-menu {
	list-style: none;
	margin-bottom: 0;
}

.widget__title--collapsible {
	background-color: var(--supporting-color);
	color: #fff;
	padding: 0.5em 2.5% 0.5em 2.5%;
	font-size: 1em;
	margin: 0;
	display: inline-block;
	width: 65%;
}

.button--widget,
.woocommerce button.button--widget {
	border-left: 1px solid var(--base-color);
	display: inline-block;
	float: none;
	font-size: 1em;
	margin: 0;
	min-width: 4.5em;
	min-height: 2em;
	vertical-align: bottom;
	width: 30%;
}

.sidebar__widget-area {
	border-bottom: 2px solid var(--border-color);
}

.sidebar__widget-area select {
	margin: 1em 0;
	width: 100%;
}

.widget--sidebar {
	margin: 0 0 1em 0;
}

/* Specific Widgets */
/* Calendar */
#wp-calendar tr th {
	background-color: var(--supporting-color);
	color: #fff;
}

#wp-calendar td a {
	background-color: var(--supporting-color);
	color: #fff;
	text-decoration: none;
}

.wp-calendar-nav {
	display: flex;
	justify-content: space-evenly;
}

#prev,
.pad,
#next {
	padding: 0;
}

#prev a,
#next a {
	padding: 0.5em;
}

#prev a {
	float: left;
}

#next a {
	float: right;
}
/* */

.widget_archive ul li a:link,
.widget_archive ul li a:visited,
.widget_categories ul li a:link,
.widget_categories ul li a:visited {
	display: inline-block;
}

.widget_recent_comments ul li a:link,
.widget_recent_comments ul li a:visited {
	display: inline;
	padding: 0px;
}

.widget_recent_comments li {
	padding: 0.5em;
}

.widget_search .search__form {
	margin-top: 1em;
}

img.rss-widget-icon {
	margin: 0 0.5em 0 0;
}

.widget__title--collapsible .rsswidget:link,
.widget__title--collapsible .rsswidget:visited {
	color: var(--text-color-light);
}

.widget_rss ul li {
	margin: 0 0 1em;
}

.widget ul a.rsswidget:link,
.widget ul a.rsswidget:visited {
	margin: 0;
	padding: 0.5em 0;
}

.widget_nav_menu ul.sub-menu {
	margin: 0 0 0 1em;
	padding: 0;
}

.tagcloud {
	padding: 1em;
}
/* */

/* Footer */
.footer {
	width: 85%;
	padding: 1em 7.5%;
	background-color: var(--header-background-color);
}

.footer__copyright,
.footer__credits,
.footer__widgets {
	font-size: 0.875em;
}

.footer__widgets {
	background-color: var(--menu-background-color);
	border-bottom: 2px solid var(--border-color);
	display: flex;
	flex-direction: column;
	margin-bottom: 1em;
	padding: 1em;
}

.footer__widgets .menu-item {
	list-style: disc;
	margin-left: 1em;
}

.widget--footer {
	box-sizing: border-box;
	margin-left: 0;
	padding: 1em;
	width: 100%;
}
/* */

/* Page Templates */
.content--full {
	box-sizing: border-box;
	margin: 0;
	padding: 1em 0;
	width: 100%;
}

.header--landing {
	border-bottom: 2px solid var(--border-color);
}

.header__site-title--landing {
	font-size: 1em;
	padding: 0.25em 5%;
}

.page-template-page_landing-page .footer {
	padding: 0.5em 5%;
	width: 90%
}

.page-template-page_landing-page .footer p,
.page-template-page_landing-page p.landing-homepage {
	margin: 0.5em 0;
}

.page-template-page_blank-page .footer {
/* Hide footer */
	position: absolute;
	left: -9999px;
}
/* */

/* Animation */
a:link,
a:visited,
.button--header-menu,
.button--header-site-nav,
.wp-block-button__link {
	transition: background-color, color;
	transition-duration: 0.5s;
	transition-timing-function: linear;
	transition-delay: 0s;
}

/* Media Queries */
@media ( min-width: 37.5em ) { /* small tablets = ~600px */
	.header__branding {
		flex-direction: row;
	}

	.custom-logo-link + .header__title-panel {
		max-width: 50%;
	}

	/* Custom logo */
	.custom-logo-link img {
		margin: 0 1em 0 0;
	}

	.menu--header {
		clear: left;
	}
	/* */

	/* Gallery CSS targets small tablets, tablets and desktops */
	/* up to four columns in tablet size */
	.gallery-columns-2 .gallery-item,
	.gallery-columns-3 .gallery-item,
	.gallery-columns-4 .gallery-item,
	.gallery-columns-5 .gallery-item,
	.gallery-columns-6 .gallery-item,
	.gallery-columns-7 .gallery-item,
	.gallery-columns-8 .gallery-item,
	.gallery-columns-9 .gallery-item {
		display: inline-block;
		vertical-align: top;
	}

	.gallery-columns-2 .gallery-item {
		width: 50%;
	}

	.gallery-item,
	.gallery-columns-3 .gallery-item {
		width: 33%;
	}

	.gallery-columns-4 .gallery-item {
		width: 25%;
	}

	/* Comments */
	.navigation--comments .prev,
	.navigation--comments .next {
		width: auto;
	}

	.navigation--comments .prev {
		float: left;
	}

	.navigation--comments .next {
		float: right;
	}

	/* Footer */
	.footer__widgets {
		flex-direction: row;
		flex-wrap: wrap;
	}

	.widget--footer {
		max-width: 50%;
	}
	/* */
}

@media ( min-width: 48em ) { /* tablets and up = ~768px+ */
	.alignwide {
		margin-left: calc(25% - 25vw);
		margin-right: calc(25% - 25vw);
		max-width: 1000%;
		width: auto;
	}

	.content--full .alignwide {
		margin-left: calc(37.5% - 37.5vw);
		margin-right: calc(37.5% - 37.5vw);
	}

	.content {
		padding-top: 2.5em;
	}

	.header__branding {
		flex-direction: column;
		padding: 1em 5%;
	}

	.custom-logo-link img {
		margin: 0 1em 1em 0;
	}

	.header__site-title {
		font-size: 3.25em;
	}

	.header__site-title--landing {
		font-size: 1em;
	}

	.header__site-title--landing {
		max-width: 100%;
	}

	.header__site-description {
		font-size: 1em;
		font-weight: bold;
	}

	.searchbox {
		position: absolute;
		top: 1em;
		right: 5%;
	}

	.header__panel {
		padding: 0 5% 0 5%;
	}

	.button--header-menu,
	.button--header-site-nav,
	.woocommerce button.button--header-menu,
	.woocommerce button.button--header-site-nav {
		width: auto;
		height: auto;
		padding: 0.5em;
	}

	.header__menu-label,
	.header__site-nav-label {
		position: static;
		left: 0;
	}

	.menu--header {
		background: transparent;
		border: transparent;
		flex-direction: row;
		flex-wrap: wrap;
		height: 2.5em; /* assigning a height fixes the menu ul above .container div */
		margin-bottom: 0;
		padding: 0;
		position: relative;
		z-index: 100;
	}

	.menu--header .page_item,
	.menu__item--header {
		border-top: 1px solid var(--border-color);
		border-right: 1px solid var(--border-color);
		border-left: 1px solid var(--border-color);
		position: relative;
	}

	.sub-menu .menu__item--header {
		border: 0;
	}

	.menu--header .page_item a,
	.menu__anchor--header {
		white-space: nowrap;
	}

	.menu--header .page_item a,
	.menu__anchor--header {
		display: inline-block;
		float: none;
	}

	.menu--header .page_item a:link,
	.menu--header .page_item a:visited,
	.menu__anchor--header:link,
	.menu__anchor--header:visited {
		background-color: var(--menu-background-color);
	}

	.menu--header .page_item.current_page_item > a:link,
	.menu--header .page_item.current_page_item > a:visited,
	.current_page_item > .menu__anchor--header:link,
	.current_page_item > .menu__anchor--header:visited {
		background-color: var(--background-color);
	}

	.menu--header .page_item a:active,
	.menu__anchor--header:active,
	.menu--header .page_item a:focus,
	.menu__anchor--header:focus,
	.menu--header .page_item a:hover,
	.menu__anchor--header:hover {
		background-color: var(--supporting-hover-color);
	}

	.menu--header .page_item_has_children a:link,
	.menu--header .page_item_has_children a:visited,
	.menu__item--header.menu-item-has-children .menu__anchor--header:link,
	.menu__item--header.menu-item-has-children .menu__anchor--header:visited {
    		width: auto;
	}

	.menu--header .children,
	.menu__item--header .sub-menu {
		border: 1px solid var(--border-color);
		display: flex;
		flex-direction: column;
		height: auto; /* restores varied height for .children <ul>s */
		position: absolute;
		background-color: var(--menu-background-color);
		margin: 0;
		min-width: 9em;
		top: 2.5em; /* 2.5em from top of relatively positioned .menu ul, for proper rendering in Opera 12- */
	}

	.menu--header .children .children,
	.menu__item--header .sub-menu .sub-menu {
		margin-left: 4.5em;
		z-index: 100;
	}

	.menu--header .children .page_item,
	.menu--header .children .page_item a,
	.sub-menu .menu__item--header,
	.sub-menu .menu__anchor--header {
		box-sizing: border-box;
		display: block;
		min-width: 200px;
		position: relative; /* for proper rendering in Opera 12- */
	}

	.menu--header .children .page_item,
	.sub-menu .menu__item--header {
		border: 0;
	}

	.button--header-submenu,
	.woocommerce button.button--header-submenu {
		background-color: var(--menu-background-color);
		border-left: 1px solid var(--border-color);
		border-right: 0;
		border-top: 0;
		border-bottom: 0;
	}

	.current_page_ancestor .button--header-submenu {
		background-color: var(--background-color);
	}

	.menu--header .page_item .page_item .button--header-submenu,
	.menu__item--header .menu__item--header .button--header-submenu {
		border: 1px solid var(--border-color);
		position: absolute;
	}

	/* Widgets */
	.sidebar__widget-area {
		padding-top: 1em;
	}

	.sidebar__widgets-container {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
	}

	.widget--sidebar {
		box-sizing: border-box;
		margin: 0;
		padding: 1em;
		width: 50%;
	}

	.widget--footer {
		max-width: 33%;
	}
	/* */

	.footer {
		width: 90%;
		padding: 1em 5%;
	}

	.searchbox.admin-bar-search-fix {
		/* pushes search box down if admin bar is present; see header.php */
		top: 3.875em;
	}

	.wp-post-image {
		float: left;
	}
}

@media ( min-width: 64.063em ) { /* desktop = ~1025px */
	.alignwide {
		margin-left: calc(12.5% - 12.5vw);
		margin-right: calc(12.5% - 12.5vw);
	}

	.content-sidebar .alignwide {
		margin-left: -0.75em;
		margin-right: -0.75em;
	}

	.alignfull {
		margin-left: calc(25% - 25vw);
		margin-right: calc(25% - 25vw);
	}

	.content-sidebar .alignfull {
		margin-left: -1.5em;
		margin-right: -1.5em;
	}

	.content--full .alignfull {
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
	}

	.header__branding {
		flex-direction: row;
	}

	.custom-logo-link img {
		margin: 0 1em 0 0;
	}

	.custom-logo-link + .header__title-panel {
		margin-right: 0;
	}

	.header__title-panel {
		width: 100%;
	}

	.header__site-title {
		font-size: 4em;
	}

	.header__site-title--landing {
		font-size: 1em;
		max-width: 100%;
	}

	.searchbox {
		right: 1em;
	}

	.searchbox.admin-bar-search-fix {
		top: 3em;
	}

	.button--header-menu,
	.button--header-site-nav,
	.woocommerce button.button--header-menu,
	.woocommerce button.button--header-site-nav { /* send off screen */
		position: absolute;
		left: -9999px;
	}

	.header__title-panel,
	.menu--header {
		margin-right: 22%;
	}

	.container {
		grid-template-columns: 1fr 50% 1fr minmax(280px, 25%);
		padding: 0;
		width: 100%;
	}

	.content-sidebar .container {
		grid-column-gap: 1.5em;
		grid-template-columns: 1fr 50% minmax(280px, 25%) 1fr;
	}

	.page-template-page_blank-page .container,
	.page-template-page_full-width-nocomments .container,
	.page-template-page_landing-page .container {
		grid-template-columns: 1fr 75% 1fr;
	}

	.sidebar {
		align-self: start;
		grid-column: 4 / 5;
		margin-bottom: 0;
	}

	.sidebar__widgets-container {
		flex-direction: column;
	}

	.widget--sidebar {
		padding: 0;
	}

	.content-sidebar .sidebar {
		border-top: 2px solid var(--border-color);
		border-bottom: 2px solid var(--border-color);
		grid-column: 3 / 4;
		margin-top: 6em;
		margin-bottom: 1em;
	}

	.content-sidebar .sidebar__widget-area {
		border-bottom: transparent;
		margin: 0;
	}

	.page__title,
	.post__title {
		font-size: 2.25em;
	}

	.post__title--archive {
		font-size: 1.5em;
	}

	.navigation {
		padding: 1em 20%;
		width: 60%;
	}

	/* Gallery CSS targets small tablets, tablets and desktops */
	/* up to nine columns in desktop size */
	.gallery-columns-5 .gallery-item {
		width: 20%;
	}

	.gallery-columns-6 .gallery-item {
		width: 16.7%;
	}

	.gallery-columns-7 .gallery-item {
		width: 14.3%;
	}

	.gallery-columns-8 .gallery-item {
		width: 12.5%;
	}

	.gallery-columns-9 .gallery-item {
		width: 11.1%;
	}

	.back-to-top {
		right: 25%;
		bottom: 0;
	}

	.page-template-page_full-width-nocomments .back-to-top,
	.page-template-page_landing-page .back-to-top,
	.page-template-page_blank-page .back-to-top {
		right: 0;
	}

	.sidebar {
		background-color: var(--header-background-color);
	}

	.sticky {
		padding: 1em 2.5%;
	}

	.sidebar__widget-area {
		margin: 0 5% 1em 5%;
	}

	.widget--sidebar {
		box-sizing: border-box;
		display: block;
		padding: 0 5% 1em 5%;
		width: 100%;
	}

	.widget--footer {
		max-width: 25%;
	}

	.widget__title--collapsible {
		/*margin: 0 0 0 10%;*/
		width: 60%;
	}

	.button--widget,
	.woocommerce button.button--widget {
		width: 35%;
	}

	.widget ul {
		background: none;
	}
}

@media ( min-width: 85.375em ) { /* widescreen desktop = ~1366px+ */
	.alignwide {
		margin-left: calc(15.5% - 15.5vw);
		margin-right: calc(15.5% - 15.5vw);
	}

	.alignfull {
		margin-left: calc(30% - 31vw);
		margin-right: calc(30% - 31vw);
	}

	.content--full .alignfull {
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
	}

	.container {
		grid-template-columns: 1fr 33% 1fr 25%;
	}

	.content-sidebar .container {
		grid-template-columns: 1fr 40% minmax(280px, 20%) 1fr;
	}

	.page-template-page_blank-page .container,
	.page-template-page_full-width-nocomments .container,
	.page-template-page_landing-page .container {
		grid-template-columns: 1fr 33% 1fr;
	}
}
/* */
