/*
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.6.0
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;
}
/* */

.clear {
	clear: both;
}

.center {
	text-align: center;
}

/* WordPress */
.sticky {
	background: #f5f5f5;
	border-top: 2px solid #c0c0c0;
	border-bottom: 2px solid #c0c0c0;
	padding: 1em;
}

.bypostauthor .comment-author {
	background: #f5f5f5;
	border-bottom: 2px solid #c0c0c0;
}

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

.wp-caption img {
	margin: 0;
}

.wp-block-image 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;
}
/* */

.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-image img,
.wp-block-gallery img,
.wp-block-media-text img {
	margin: 0;
}

.wp-block-image figcaption {
	color: #333333;
}

.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 {
	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 #c0c0c0;
	border-bottom: 2px solid #c0c0c0;
}

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

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

.wp-block-button .wp-block-button__link {
	border-radius: 0;
}

.wp-block-button__link:not(.has-background),
.wp-block-button__link:not(.has-background):active,
.wp-block-button__link:not(.has-background):focus,
.wp-block-button__link:not(.has-background):hover {
	background-color: #800000;
}

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

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

.has-white-color,
.has-white-color:link,
.has-white-color:visited,
.has-white-color:focus,
.desktop .has-white-color:hover {
	color: #ffffff;
}

.has-white-background-color {
	background-color: #ffffff;
}

.has-pale-gray-color,
.has-pale-gray-color:link,
.has-pale-gray-color:visited,
.has-pale-gray-color:focus,
.desktop .has-pale-gray-color:hover {
	color: #f5f5f5;
}

.has-pale-gray-background-color {
	background-color: #f5f5f5;
}

.has-silver-color,
.has-silver-color:link,
.has-silver-color:visited,
.has-silver-color:focus,
.desktop .has-silver-color:hover {
	color: #c0c0c0;
}

.has-silver-background-color {
	background-color: #c0c0c0;
}

.has-black-color,
.has-black-color:link,
.has-black-color:visited,
.has-black-color:focus,
.desktop .has-black-color:hover {
	color: #333333;
}

.has-black-background-color {
	background-color: #333333;
}

.has-light-coral-color,
.has-light-coral-color:link,
.has-light-coral-color:visited,
.has-light-coral-color:focus,
.desktop .has-light-coral-color:hover {
	color: #f08080;
}

.has-light-coral-background-color {
	background-color: #f08080;
}

.has-maroon-color,
.has-maroon-color:link,
.has-maroon-color:visited,
.has-maroon-color:focus,
.desktop .has-maroon-color:hover {
	color: #800000;
}

.has-maroon-background-color {
	background-color: #800000;
}

@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 Tahoma, "Trebuchet MS", Geneva, sans-serif;
	background-color: #ffffff;
	color: #333;
	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: #800000;
}

a:active {
	color: #f08080;
}

blockquote, q {
	background: #f5f5f5;
}

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 #c0c0c0;
	margin: 1em auto;
}

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

table tbody {
	background: #f5f5f5;
}

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

label {
	margin: 0 0.5em;
}

textarea,
input,
select {
	background-color: #ffffff;
	border: 1px solid #800000;
	box-sizing: border-box;
	color: #333333;
	display: inline-block;
	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,
.button,
input[type="reset"],
input[type="submit"] {
	background-color: #800000;
	color: #ffffff;
	font-weight: bold;
	margin: 0.5em;
	min-height: 2.75em; /* ~44px */
}

button,
.button {
	border: transparent;
}

form textarea {
	width: 100%;
}

/* */

pre {
	margin: 1em 0;
	padding: 1em;
	background: #f5f5f5;
	overflow-x: auto;
}

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

strong {
	font-weight: bold;
}

hr {
	color: #e6e6e6;
	margin: 1em 0;
}

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

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

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

.container {
	width: 85%;
	/*overflow-x: hidden;*/
	padding: 2em 7.5%;
	clear: left; /* #header is floated left, so this needs to be cleared */
}

.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 {
	min-width: 2.75em;
	box-sizing: border-box;
	vertical-align: bottom;
	margin: 0;
}

.header__button-panel {
	width: 100%;
}

.button--header-menu,
.button--header-site-nav {
	float: left;
	height: 4.5em;
	margin: 0.5em 1em 0 0;
	width: 4.5em;
}

.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: #f5f5f5;
	padding: 0.5em;
}

.menu--header {
	clear: left;
	border: 1px solid #c0c0c0;
	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:active,
.menu--header .page_item a:focus,
.menu__anchor:focus,
.widget--sidebar ul li a:focus,
.widget--sidebar ul li a:active {
	background: #f08080;
	color: #fff;
}

.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%;
}

/*.page_item_has_children a:focus ul.children {
	display: block !important;
}*/

.button--header-submenu {
	display: inline-block;
   float: none;
   font-size: 1em;
   margin: 0;
   min-width: 4.5em;
   min-height: 2.5em;
   vertical-align: top;
   color: #800000;
   background-color: #fff;
   border: 1px solid #c0c0c0;
}

.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 {
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	background: #800000;
}

.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;
	display: inline-block;
}

.post__entry-links a:active,
.post__edit-link:active {
	background: #f08080;
}

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

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

.page-numbers.current {
	color: #333333;
}

.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: #f5f5f5;
	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: #f5f5f5;
	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;
	justify-content: space-between;
	padding: 1em 7.5%;
	width: 85%;
}

.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: #800000;
}

/* Sidebar */
.sidebar {
	clear: left;
	padding-top: 0;
	/*position: fixed;*/
	bottom: 0;
	width: 100%;
	background-color: #fff;
}

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

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

.button--widget {
	border-left: 1px solid #ffffff;
	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 #c0c0c0;
}

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

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

/* Specific Widgets */
/* Calendar */
#wp-calendar tr th {
	background-color: #800000;
	color: #fff;
}

#wp-calendar td a {
	background-color: #800000;
	color: #fff;
	text-decoration: none;
}

#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: #ffffff;
}

.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: #f5f5f5;
}

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

.footer__widgets {
	background-color: #f5f5f5;
	border-bottom: 2px solid #c0c0c0;
	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 #c0c0c0;
}

.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;
}
/* */

/* Hover states for desktops of all sizes; .desktop class loaded on any non mobile device using !wp_is_mobile() in header.php */
.desktop a:link,
.desktop a:visited,
.desktop .button--header-menu,
.desktop .button--header-site-nav {
	transition: background-color, color;
	transition-duration: 0.5s;
	transition-timing-function: linear;
	transition-delay: 0s;
}

.desktop a:hover {
	color: #f08080;
}

.desktop .menu--header li a:hover,
.desktop .menu__anchor:hover,
.desktop .widget--sidebar ul li a:hover,
.desktop .post__entry-links a:hover,
.desktop .post__edit-link:hover,
.desktop .page-numbers:hover,
.desktop .comment-reply-link:hover,
.desktop #wp-calendar td a:hover {
	background-color: #f08080;
	color: #fff;
}

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

.desktop .menu .current_page_item a:hover {
	color: #800000;
}

.desktop .button--header-site-nav a:hover,
.desktop a.back-to-top:hover {
	color: #fff;
}

.desktop .header .menu .page_item a:active,
.desktop .header .menu .page_item a:focus,
.desktop .header__menu .menu-item a:active,
.desktop .header__menu .menu-item a:focus {
	background: #f08080;
	color: #fff;
}

/* 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);
	}
	
	.container {
		padding: 0 7.5% 2em 7.5%;
	}
	
	.content {
		margin: 0 auto;
		padding-top: 2.5em;
		width: 75%;
	}

	.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 {
		width: auto;
		height: auto;
		padding: 0.5em;
	}

	.header__menu-label,
	.header__site-nav-label {
		position: static;
		left: 0;	
	}
	
	.menu--header {
		background: transparent;
		border: transparent;
		display: flex;
		flex-wrap: wrap;
		height: 2.5em; /* assigning a height fixes the menu ul above .container div */
		margin-bottom: 0;
		padding: 0;
		position: relative;
	}
	
	.menu--header .page_item,
	.menu__item--header {
		border-top: 1px solid #c0c0c0;
		border-right: 1px solid #c0c0c0;
		border-left: 1px solid #c0c0c0;
		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:link,
	.menu--header .page_item a:visited,
	.menu__anchor--header:link,
	.menu__anchor--header:visited {
		display: inline-block;
		background: #f5f5f5;
	}
	
	.menu--header .page_item a:active,
	.menu__anchor--header:active,
	.menu--header .page_item a:focus,
	.menu__anchor--header:focus {
		background: #f08080;
	}
	
	.menu .current_page_item a:link,
	.menu .current_page_item a:visited,
	.menu .current_page_item .button--header-submenu {
		background: #fff;	
	}
	
	.menu .children .current_page_item a:link,
	.menu .children .current_page_item a:visited,
	.menu .sub-menu .current_page_item a:link,
	.menu .sub-menu .current_page_item a:visited {
		background: #f5f5f5;
	}
	
	.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;
	}
	
	/*.page_item_has_children .icon-sort-desc {
		height: 2em;
	}*/
	
	.menu--header .children,
	.menu__item--header .sub-menu {
		border: 1px solid #c0c0c0;
		display: flex;
		flex-direction: column;
		height: auto; /* restores varied height for .children <ul>s */
		position: absolute;
		background: #f5f5f5;
		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 {
		background-color: #f5f5f5;
		border-left: 1px solid #c0c0c0;
		border-right: 0;
		border-top: 0;
		border-bottom: 0;
	}
	
	.menu--header .page_item .page_item .button--header-submenu,
	.menu__item--header .menu__item--header .button--header-submenu {
		border: 1px solid #c0c0c0;
		position: absolute;
	}

	/* Widgets */
	.sidebar__widget-area {
		padding-top: 1em;
	}
	
	.widget--sidebar {
		display: inline-block;
		vertical-align: top;
		width: 45.5%;
		margin: 0 2% 1em;
	}
	
	.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);
	}
	
	.alignfull {
		margin-left: calc(25% - 25vw);
		margin-right: calc(25% - 25vw);
	}
	
	.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 {
		max-width: 78%;
	}
	
	.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 { /* send off screen */
		position: absolute;
		left: -9999px;
	}

	.menu--header {
		margin-right: 22%;
	}
	
	.container {
		padding: 0;
		width: 100%;
	}
	
	.content {
		float: left;
		width: 50%;
		margin: 0 12.5%;
	}
	
	.content--full {
		margin: 0 25%;
	}
	
	.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: #f5f5f5;
		float: right;
		width: 25%;
		clear: none; /* undo clear for mobile */	
	}
	
	.sticky {
		padding: 1em 2.5%;
	}
	
	.sidebar__widget-area {
		margin: 0 5% 1em 5%;
	}
	
	.widget--sidebar {
		display: block;
		width: 90%;
		margin: 0 5% 1em 5%;
	}
	
	.widget--footer {
		max-width: 25%;
	}
	
	.widget__title--collapsible {
		/*margin: 0 0 0 10%;*/
		width: 60%;
	}
	
	.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);
	}
	
	.content {
		/*max-width: 50em; /* ~800px */
		width: 33%;
		margin: 0 21%;
	}
	
	.content--full {
		margin: 0 33%;
		width: 34%;
	}
}
/* */
