/*
Theme Name: Moonranger
Author: Kelsey Barmettler
Author URI: https://kelseybarmettler.com
Description: <em><strong>Putting the based in block-based.</strong></em> Opinionated things this theme does in functions.php: disables full screen editor by default, removes uppercase_p_dangit. <strong>Adds support for:</strong> custom stylesheet for block editor, Google Fonts,  custom theme colors in block editor color picker. <strong>Miscellaneous tweaks:</strong> Improves 'read more' link. Adds "nocookie" to WordPress oEmbeded Youtube Videos. <strong>Cleans up</strong> <code>HEAD</code> by removing: really simple discovery link, wordpress version, rss feed links, extra rss feed links, relational links, emoji stuff, wp-embed.min.js. <strong>Updates</strong> navigation.js with passive event listeners. <strong>Adds:</strong> editor.js to customize available blocks.
Version: 1.22.983
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: moonranger
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready, block-based
GitHub Theme URI: ensignrolaren/moonranger
GitHub Theme URI: https://github.com/ensignrolaren/moonranger
*/

/*
################################
Minimal reset
################################
*/
html {
	scroll-behavior: smooth;
}
*,
*:after,
*:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body.has-scrollbar {
	overflow-x: hidden;
}
html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
address,
fieldset,
legend {
	margin: 0;
	padding: 0;
}
img {
	max-width: 100%;
	height: auto;
}
/*
################################
TYPOGRAPHY
################################
*/
::selection {
  background:rgba(244, 56, 164, .25); /* WebKit/Blink Browsers */
}
::-moz-selection {
  background: rgba(244, 56, 164, .25); /* Gecko Browsers */
}
body {
	font-size: clamp(1rem, calc(1rem + ((1vw - 0.48rem) * 0.3472)), 1.25rem);
	min-height: 0vw;
	line-height: 1.65;
	color: #1e1f26;
	background-color: #fefefe;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: bold;
	line-height: 1.12;
	margin-bottom: .7657em;
}
.is-style-leader,
.is-style-leader,
.is-style-leader,
.is-style-leader,
.is-style-leader,
.is-style-leader,
.leader-text + h1,
.leader-text + h2,
.leader-text + h3,
.leader-text + h4,
.leader-text + h5,
.leader-text + h6,
.is-style-leader + h1,
.is-style-leader + h2,
.is-style-leader + h3,
.is-style-leader + h4,
.is-style-leader + h5,
.is-style-leader + h6 {
	margin-top: 0;
}
.leader-text,
.is-style-leader {
	text-transform: uppercase;
	letter-spacing: 1px;
}
h1.is-style-no-padding,
h2.is-style-no-padding,
h3.is-style-no-padding,
h4.is-style-no-padding,
h5.is-style-no-padding,
h6.is-style-no-padding {
	margin-bottom: 0;
}

h1 {
	font-size: clamp(1.8rem, calc(1.8rem + ((1vw - 0.48rem) * 2.8472)), 3.85rem);
	min-height: 0vw;
}
h2 {
	font-size: clamp(1.5rem, calc(1.5rem + ((1vw - 0.48rem) * 2.0833)), 3rem);
	min-height: 0vw;
}
h3 {
	font-size: clamp(1.25rem, calc(1.4rem + ((1vw - 0.48rem) * 1.5278)), 2.25rem);
	min-height: 0vw;
}
h4 {
	font-size: clamp(1.15rem, calc(1.3rem + ((1vw - 0.48rem) * 1.1806)), 2.15rem);
	min-height: 0vw;
}
h5 {
	font-size: clamp(1rem, calc(1.2rem + ((1vw - 0.48rem) * 0.7639)), 1.75rem);
	min-height: 0vw;
}
h6 {
	font-size: clamp(1rem, calc(1.1rem + ((1vw - 0.48rem) * 0.3472)), 1.35rem);
	min-height: 0vw;
}
p {
	margin-bottom: 1rem;
}
h1.has-background,
h2.has-background,
h3.has-background,
h4.has-background,
h5.has-background,
h6.has-background,
p.has-background,
ul.has-background,
ol.has-background {
	padding: 2rem;
}
:root {
	--moonranger-variable-font-size-small: clamp(13px, calc(0.8125rem + ((1vw - 7.68px) * 0.1736)), 15px);
	--moonranger-variable-font-size-regular: clamp(16px, calc(1rem + ((1vw - 7.68px) * 0.3472)), 20px);
	--moonranger-variable-font-size-medium: clamp(20px, calc(1.25rem + ((1vw - 7.68px) * 0.3472)), 24px);
	--moonranger-variable-font-size-large: clamp(32px, calc(2rem + ((1vw - 7.68px) * 0.5208)), 38px);
	--moonranger-variable-font-size-larger: clamp(48px, calc(3rem + ((1vw - 7.68px) * 0.6076)), 55px);
	--moonranger-variable-font-size-large-huge: clamp(56px, calc(3.5rem + ((1vw - 7.68px) * 0.6944)), 64px);
	/* overrides wp defaults */
	/* --wp--preset--font-size--small: clamp(13px, calc(0.8125rem + ((1vw - 7.68px) * 0.1736)), 15px);
	--wp--preset--font-size--regular: clamp(16px, calc(1rem + ((1vw - 7.68px) * 0.3472)), 20px);
	--wp--preset--font-size--medium: clamp(20px, calc(1.25rem + ((1vw - 7.68px) * 0.3472)), 24px);
	--wp--preset--font-size--large: clamp(32px, calc(2rem + ((1vw - 7.68px) * 0.5208)), 38px);
	--wp--preset--font-size--larger: clamp(48px, calc(3rem + ((1vw - 7.68px) * 0.6076)), 55px); */
	
}
body .has-small-font-size {
	font-size: var(--moonranger-variable-font-size-small) !important;
	min-height: 0vw;
}
body .has-regular-font-size {
	font-size: var(--moonranger-variable-font-size-regular) !important;
	min-height: 0vw;
}
body .has-medium-font-size {
	font-size: var(--moonranger-variable-font-size-medium) !important;
	min-height: 0vw;
}
body .has-large-font-size {
	font-size: var(--moonranger-variable-font-size-large) !important;
	min-height: 0vw;
}
body .has-x-large-font-size,
body .has-huge-font-size {
	font-size: var(--moonranger-variable-font-size-larger) !important;
	min-height: 0vw;
}
.has-big-mclargehuge-font-size {
	font-size: var(--moonranger-variable-font-size-large-huge);
	min-width: 0vw;
}
p {
	line-height: 1.67;
}
/* default links */
a {
	transition: color 150ms ease-in-out;
}
a:link {
	color: #104e88;
}
a:visited {
	color: #663399; /* :,( */
}
a:focus {
	color: #031e77;
}
a:hover {
	color: #031e77;
}
a:active {
	color: #031e77;
}
/* default buttons */
.wp-block-buttons {
	margin-bottom: 1em;
}
body .wp-block-button.alignright {
	float: none;
	text-align: right;
	max-width: var(--content-width);
	margin-left: auto;
}
.wp-block-button.is-style-outline  .wp-block-button__link {
	border: 2px solid #343434;
	text-shadow: none;
}
.mw-button,
.happyforms-form button[type=submit],
.wp-block-button .wp-block-button__link {
	background: none #343434;
	font-size: 100%;
	font-family: inherit;
	padding: .5rem 1.25rem;
	border: 0;
	border-radius: 3px;
	color: #fff;
	text-shadow: 1px 1px 1px rgb(0 0 0 / 10%);
	transition: background 250ms ease-in-out, transform 250ms ease-in-out;
	display: inline-block;
	text-decoration: none;
}
.mw-button:hover,
.happyforms-form button[type=submit]:hover,
.wp-block-button .wp-block-button__link:hover {
	background: #232323;
	color: #fff;
	-webkit-transform: translateY(-1px);
	transform: translateY(-1px);
	-webkit-box-shadow: 0 13px 27px -5px rgb(50 50 93 / 25%), 0 8px 16px -8px rgb(0 0 0 / 30%), 0 -6px 16px -6px rgb(0 0 0 / 3%);
	box-shadow: 0 13px 27px -5px rgb(50 50 93 / 25%), 0 8px 16px -8px rgb(0 0 0 / 30%), 0 -6px 16px -6px rgb(0 0 0 / 3%);
}
.aligncenter .button-wrap {
	text-align: center;
}
/* quotes */
blockquote {
	line-height: 1.2;
}
cite {
	font-style: italic;
}
.wp-block-quote,
.wp-block-quote.is-large,
.wp-block-quote.is-style-large {
	line-height: 1.2;
	border: solid 1px #d8dbdc;
	box-shadow: none;
	background: #f1f1f1;
	margin-top: 3rem;
	margin-bottom: 3rem;
	padding: 2rem;
}
/* pullquote */
body .site .wp-block-pullquote {
	border: none;
	margin-top: 3rem;
	margin-bottom: 3rem;
	padding: 2rem;
	background-color: #f0f0f0;
}
body .site .wp-block-pullquote.is-style-bordered {
	border: 1px solid #343434; /* can be overidden by block-editor-applied inline styles */
}
/* lists */
ul,
ol {
	margin: 0 0 1rem 3rem;
}
@media screen and (min-width: 550px) {
	ul.is-style-columns,
	ol.is-style-columns {
		-webkit-column-count: 3;
		-moz-column-count: 3;
		column-count: 3;
		margin: 1.5rem 0 1.5rem 3rem;
	}
	ul.is-style-columns li {
		padding: .25rem 1.25rem .25rem 0;
	}
}
ul.is-style-checkmark {
	list-style: none;
	margin: 0 0 1rem 2rem;
}
ul.is-style-checkmark li:before {
	content: '✓ ';
	position: relative;
	left: -0.5rem;
	color: rgb(46, 144, 65);
	font-weight: bold;
}
ul.is-style-checkmark-right {
	list-style-type: none;
	margin: 0 0 1rem 0;
}
ul.is-style-checkmark-right li {
	padding: 0 1.5rem 1rem 0;
	border-bottom: 1px solid #f0f0f0;
	margin: 1rem 0;
	position: relative;
}
ul.is-style-checkmark-right li::before {
	content: " ✓";
	position: absolute;
	right: 0px;
	color: rgb(46, 144, 65);
	font-weight: bold;
}
ul.is-style-inline-list {
	margin-left: 0;
}
.is-style-inline-list li {
	display: inline-block;
	margin-right: 1ch;
}
.is-style-inline-list li:before {
	content: '\2713';
	margin-right: 1ch;
}
/* separators */
.wp-block-separator {
	margin: 0;
	border: none;
	background: #f0f0f0;
	height: 3px;
}
.wp-block-separator.is-style-centered {
	height: 3px;
	background: #f0f0f0;
	width: 20%;
	margin: 3rem auto;
}
.wp-block-separator.is-style-spacer {
	height: 6rem;
	background: none;
	border: none;
	margin: 0;
}
.wp-block-separator.is-style-small-spacer {
	height: 3rem;
	background: none;
	border: none;
	margin: 0;
}

@media screen and (max-width: 1024px) {
	
}
@media screen and (max-width: 768px) {
	.wp-block-separator.is-style-spacer {
		height: 3rem;
	}
	.wp-block-separator.is-style-small-spacer {
		height: 1.5rem;
	}
}
/*
################################
GLOBAL LAYOUT OPTIONS
################################
*/
/* WITH SIDEBAR */
.sidebar-wrapper {
	display: flex;
	flex-wrap: wrap;
}
.sidebar .site-header,
.sidebar .footer-blocks-area,
.sidebar .copyright,
.sidebar .entry-header,
.sidebar .custom-blog-header {
	flex: 1 0 100%;
}
.sidebar .site-main {
	flex-basis: 0;
	flex-grow: 999;
}
.sidebar .widget-area {
	flex-basis: 20rem;
	flex-grow: 1;
}
/* FULL WIDTH */
.archive .sidebar .entry-content > :not(.alignfull):not(.alignwide):not(.wp-block-group__inner-container):not(.alignleft):not(.alignright):not(.aligncenter):not(.alignnone) {
	max-width: unset;
}

@media screen and (max-width: 767px) {
	.sidebar {
		display: block;
	}
}
/*
################################
DEFAULT PAGE CONTENT
################################
*/
.full .page-header {
	padding: 4rem var(--padding);
}
.page-content {
	padding: 0 var(--padding);
}
/*
################################
UTILITY CLASSES
################################
*/
.columns {
	-webkit-column-count: 2;
	-moz-column-count: 2;
	column-count: 2;
}
/*
################################
BREADCRUMBS
################################
*/
.breadcrumbs {
	list-style: none;
	padding: 1rem 2rem;
	overflow: hidden;
	background: #f8f9f8;
	border: 1px solid #f0f1f0;
	border-width: 1px 0 1px 0;
	color: #737373;
	margin-bottom: 4rem;
}

.breadcrumbs li {
	display: inline-block;
	vertical-align: middle;
	margin-right: 1rem;
}

.breadcrumbs .separator {
	font-size: 18px;
	font-weight: 100;
	color: #ccc;
}
@media screen and (max-width: 380px) {
	
}
/*
################################
Accessibility & Misc
################################
*/
.edit-link {
	display: none;
}
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
	/* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #207abc;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
	/* Above WP toolbar. */
}
/* responsive google maps */
.google-maps {
    position: relative;
    padding-bottom: 75%;
    height: 0;
    overflow: hidden;
}
/*
################################
OPTIONAL PREHEADER MENU
################################
 */
.pre-header {
	padding: .5rem var(--padding);
}
.pre-header .menu,
.pre-header .menu ul {
	list-style-type: none;
	display: flex;
	justify-content: flex-end;
	margin: 0;
}
.pre-header .menu-item {
	margin-right: 1rem;
}
.pre-header .menu-item:last-of-type {
	margin-right: 0;
}
/*
################################
SITE HEADER
################################
*/
/* -----------------------------
 site branding
------------------------------*/
.site-header {
	display: flex;
	align-items: center;
	padding: 2rem var(--padding);
	z-index: 10;
	width: 100%;
}
.site-branding {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	padding-right: 2rem;
}

.site-branding img {
	display: block;
}
.site-title {
	font-size: var(--moonranger-variable-font-size-regular);
	line-height: 1;
	margin-bottom: 0;
}
.site-title a {
	display: block;
}
.site-description {
	margin-bottom: 0;
}
.main-navigation {
	flex: 0 1 auto;
}
/* -----------------------------
 sticky, overlapping header options
------------------------------*/
.overlapping-header .site-header {
	position: absolute;
}

.overlapping-header .site-header.sticky {
	position: absolute;
}
.overlapping-header .site-header.sticky.scrolled a {
	color: #343434;
}
.overlapping-header .site-header.sticky.scrolled + .site-main {
	position: relative;
}
.site-header.sticky {
	position: sticky;
	transition: all 250ms ease-in-out;
}
.site-header.sticky.scrolled {
	position: sticky;
	background-color: #fff;
	box-shadow: 0 1px 1px rgba(0,0,0,0.12), 0 2px 2px rgba(0,0,0,0.12), 0 4px 4px rgba(0,0,0,0.12), 0 8px 8px rgba(0,0,0,0.12), 0 16px 16px rgba(0,0,0,0.12);
	padding: 0 var(--padding);
}
@media screen and (max-width: 1024px) {
	
}
@media screen and (max-width: 768px) {
	.site-header {
		padding: 2rem 0;
	}
	.keep-menu.site-header {
		flex-wrap: wrap;
	}
	.keep-menu .site-branding,
	.keep-menu .main-navigation {
		flex: 1 1 100%;
	}
	.site-branding {
		padding: 0;
	}

	.responsive-menu .main-navigation {
		margin: 0;
	}
	.no-js .site-header,
	.no-js .site-header .main-navigation,
	.no-js .site-header .site-branding  {
		display: block;
	}
	.no-js .main-navigation .menu {
		margin: 0;
		display: block;
		list-style-type: disc;
		list-style-position: inside;
	}
	.no-js .main-navigation .sub-menu {
		margin: 0;
		display: table;
		list-style-type: circle;
		list-style-position: inside;
	}
	.no-js .responsive-menu .main-navigation .sub-menu .menu-item {
		/* display: list-item; */
	}
	.no-js .main-navigation .menu .menu-item {
		display: list-item;
		font-size: 1rem;
		margin: 0;
	}
	.no-js .main-navigation .menu .menu-item a {
		padding: .75rem;
		display: inline-block;
	}
	.no-js .main-navigation .menu .menu-item.menu-item-has-children .sub-menu a {
		display: list-item;
		padding: .9rem 0;
	}
	.no-js .main-navigation .sub-menu .menu-item {
		margin-left: 2rem;
	}
	.js .main-navigation .menu .menu-item.menu-item-has-children.non-clickable > a {
		display: none; /* hiding a non-clickable link */
	}
}
/* -----------------------------
site navigation
------------------------------*/
.menu {
	margin: 0;
}
.main-navigation {
	display: flex;
	justify-content: flex-end;
	font-weight: bold;
}
.main-navigation > ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
	display: flex;
}
.main-navigation ul li {
	padding: 0;
	display: inline-block;
	position: relative;
}
.main-navigation ul li a {
	text-decoration: none;
	line-height: 1;
	padding: 1em clamp(0.47rem, calc(0.47rem + ((1vw - 0.48rem) * 0.7361)), 1rem);
	display: inline-block;
}
.responsive-menu .main-navigation .sub-menu .menu-item {
	display: block;
	position: relative;
}
.responsive-menu .main-navigation .menu-item-has-children ul a {
	display: block;
}
.main-navigation.keep-menu .menu-item-has-children ul a {
	display: inline-block;
}
@media screen and (min-width: 768px) { /* Applies ONLY to large screens */
	.main-navigation .non-clickable > a {
		pointer-events: none;
	}
	.main-navigation .non-clickable:hover > a {
		color: #817e73;
		transition: color 100ms ease;
	}
	.main-navigation .menu-item-has-children > a:after {
		content: " ›";
		transform: rotate(90deg);
		transition: transform 250ms ease;
		display: inline-block;
		position: relative;
		top: 2px;
		left: .75ch;
	}
	.main-navigation .sub-menu li a:after {
		display: none; 
	}
	.main-navigation .sub-menu {
		display: none;
		background-color: #fff;
		width: 220px;
		position: absolute;
		top: 3em;
		left: 0;
		z-index: 9999;
		-webkit-box-shadow: 0 13px 27px -5px rgb(50 50 93 / 25%), 0 8px 16px -8px rgb(0 0 0 / 30%), 0 -6px 16px -6px rgb(0 0 0 / 3%);
		box-shadow: 0 13px 27px -5px rgb(50 50 93 / 25%), 0 8px 16px -8px rgb(0 0 0 / 30%), 0 -6px 16px -6px rgb(0 0 0 / 3%);
		border-bottom: 4px solid #111c35;
		margin: 0;
	}
	.main-navigation .menu-item-has-children:hover .sub-menu {
		display: block;
	}
}
 /* responsive/mobile menu stuff */
button.menu-toggle {
	display: none;
	color: #fff;
	text-shadow: none;
	cursor: pointer;
	text-decoration: none;
	padding: .5rem;
	border-radius: 0;
	position: relative;
	line-height: 1;
	background: #101010;
	border: none;
	font-size: 100%;
	appearance: none;
}
#close {
	display: none;
}
@media screen and (max-width: 768px) {
	.js .keep-menu .main-navigation {
		justify-content: center;
	}
	.js .responsive-menu #close {
		text-transform: uppercase;
		display: block;
		padding: 0;
		width: 100%;
		font-size: 100%;
		text-align: right;
		background: none transparent;
		border: none;
		border-radius: 0;
		cursor: pointer;
	}
	.close-symbol {
		position: relative;
	}
	.js .responsive-menu button.menu-toggle {
		display: block;
	}
	.js .responsive-menu .main-navigation {
		display: flex;
		justify-content: flex-end;
	}
	.js .responsive-menu .main-navigation > div:first-of-type /*this should always be the primary nav */ {
		display: block;
		background-color: #fff;
		position: absolute;
		left: -300px;
		top: 0;
		width: 300px;
		height: 100vh;
		transition: all 300ms ease-in-out;
		z-index: 999;
		padding: 1rem;
		justify-content: unset;
	}
	.responsive-menu .main-navigation .sub-menu .menu-item {
		font-size: 1rem;
	}
	.js .responsive-menu .main-navigation .menu .menu-item {
		padding: 0;
		display: block;
	}
	.js .responsive-menu .main-navigation .menu .menu-item a {
		border-bottom: 1px solid #e3e3e3;
	}
	.js .main-navigation .sub-menu {
		padding: 0;
		margin: 0;
	}
	.js .main-navigation .non-clickable {
		padding: 0;
	}
	.js .main-navigation .menu .menu-item.non-clickable > a {
		border-bottom: none;
	}
	.js .main-navigation .menu .menu-item a {
		display: block;
	}

	/* when the button's clicked */
	.responsive-menu .main-navigation.toggled > div:first-of-type /*this should always be the primary nav */ {
		position: absolute;
		left: 0;
		top: 0;
		width: 80%;
	}
}
@media screen and (max-width: 1024px) {
	
}
@media screen and (max-width: 768px) {

	
}
@media screen and (max-width: 380px) {
	
}
/*
################################
SITE FOOTER
################################
*/
.site-footer {
	display: flex;
	padding: 1rem 3rem;
	background: #f0f0f0;
}
/* footer menus */
.footer-section {
	width: 100%;
	padding: 1rem;
}
.footer-section:nth-of-type(2) {
	text-align: center;
}
.footer-section:nth-of-type(2) hr {
	margin: 1rem auto 2rem auto;
}
.footer-section:nth-of-type(3) {
	text-align: right;
}
.footer-section:nth-of-type(3) hr {
	margin: 1rem 0 2rem auto;
}
.footer-section-title {
	margin-bottom: .5rem;
}
.footer-section hr {
	margin: 1rem 0 2rem 0;
}
.footer-section ul:not(.wp-block-social-links) {
	list-style-type: none;
	/* aligns the menu items with the rest of the page header section */
	margin: 0 -1rem;
}
.footer-section .menu .menu-item a {
	padding: .25rem 1rem;
	display: inline-block;
}
.copyright {
	padding: 1rem 2rem;
	text-align: center;
	font-size: .9rem;
	background: #ccc;
}
@media screen and (max-width: 1024px) {
	
}
@media screen and (max-width: 768px) {
	.site-footer {
		flex-direction: column;
		padding: 1rem;
	}
	.footer-section {
		padding: 1rem 0;
	}
	.footer-section:nth-of-type(2) {
	text-align: left;
}
	.footer-section:nth-of-type(2) hr {
		margin: 1rem 0 2rem 0;
	}
	.footer-section:nth-of-type(3) {
		text-align: left;
	}
	.footer-section:nth-of-type(3) hr {
		margin: 1rem 0 2rem 0;
	}
	.copyright {
		padding: 1rem;
	}
}
@media screen and (max-width: 380px) {
	
}
/* site credits */
@media screen and (max-width: 1024px) {
	
}
@media screen and (max-width: 768px) {
	
}
@media screen and (max-width: 380px) {
	
}
/*
===============================
BLOCKS STYLES
===============================
*/
.wp-block-media-text {
	gap: var(--padding)
}
.wp-block-media-text .wp-block-media-text__content {
	padding: 0;
}
/*
===============================
TABLES
===============================
*/
table {
	margin-top: 1rem;
	width: 100%;
}
thead {
	text-align: left;
	background: #d0d0d0;
	color: #343434;
}
tr:nth-of-type(even) {
	background: #f0f0f0;
	color: #343434;
}
th,
td {
	padding: .75rem 1rem
}
/*
===============================
SEARCH CONTENT
===============================
*/
.wp-block-search .wp-block-search__label {
	width: auto;
}
.wp-block-search__inside-wrapper {
	width: auto;
}
.wp-block-search__input {
	width: auto;
	border-radius: 3px 0 0 3px;
	padding-left: .5rem;
}
.wp-block-search .wp-block-search__button  {
	width: auto;
	background-color: #343434;
	-webkit-appearance: none;
	color: #fff;
	font-size: 100%;
	font-weight: bold;
	border: none;
	margin-left: 0;
	padding: 1rem;
	border-radius: 0 3px 3px 0;
	cursor: pointer;
}
.search .entry-header,
.search .entry-footer {
	padding: 0;
}
.search article {
	padding: var(--padding);
}
.search .entry-title {
	font-size: 2rem;
}
.search .page-title span {
	font-style: italic;
	color: #6f6f6f;
}
.search .comment-navigation .nav-links,
.search .posts-navigation .nav-links,
.search .post-navigation .nav-links {
	padding: var(--padding);
	justify-content: space-between;
}

/*
===============================
ARCHIVE CONTENT
===============================
*/

.archive .entry-header,
.archive .entry-footer,
.archive .entry-content {
	padding: 0;
}
.archive .full article {
	padding: var(--padding);
}
.archive .entry-title {
	font-size: 2rem;
}
.archive .page-title span {
	font-style: italic;
	color: #6f6f6f;
}

/*
============================
COMMENTS
===============================
*/
.comments-area {
	margin-top: 4rem;
}
.comment-list {
	margin: 0;
	list-style-type: none;
}
.children {
	list-style-type: none;
}
.comment-body {
	margin-bottom: 2rem;
}
.comment-body .reply {
	text-transform: uppercase;
	font-size: .82rem;
	margin: .5rem 0;
	text-align: right;
}
.comment-author.vcard {
	display: flex;
	align-items: center;
}
.comment-author.vcard img {
	border-radius: 100%;
}
.comment-author.vcard img,
.comment-author.vcard b {
	margin-right: .75ch;
}

.comment-body p:last-of-type {
	margin-bottom: 0;
}
.comment-meta {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: .5rem;
}
.comment-metadata {
	font-size: .82rem;
}
.comment-content {
	border: 1px solid #777;
	border-radius: 3px;
	padding: 1rem;
}
.comment-form-comment {
	display: flex;
	flex-direction: column;
	margin-bottom: 0;
}
.comment-form .logged-in-as {
	font-size: .82rem;
}
.comment-form label[for=comment] {
	font-size: .82rem;
}
.comment-form-comment textarea {
	max-width: 100%;
	width: 100%;
}
.comment-reply-title {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}
.comment-reply-title small {
	font-size: .82rem;
	font-weight: normal;
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 768px) {
	.comment-meta {
		flex-direction: column;
	}
}
@media screen and (max-width: 380px) {
}
/*
===============================
POSTS CONTENT
===============================
*/
/* archive of posts */
.post + .post {
	margin-top: 3rem;
}
.post-thumbnail {
	font-size: 0;
}
.cat-links,
.tag-links,
.edit-link {
	display: block;
}
.entry-meta {
	font-size: .9rem;
	margin-bottom: 1rem;	
}
.widget {
	margin: 2rem 0;
}
.widget .wp-block-group ul,
.widget .wp-block-group ol {
	margin-left: 1rem;
	list-style: square;
}
.entry-footer {
	font-size: .9rem;
}
.entry-title a:after,
.entry-meta a:after,
.post-thumbnail a:after,
.nav-links a:after {
	display: none;
}
.entry-meta {
	margin-bottom: 1rem;	
}
.single .entry-footer {
	margin: 3rem 0;
	font-size: .9rem;
}
.entry-meta {
	font-size: .9rem;
}
.post-thumbnail {
	font-size: 0;
	height: 100%;
}
.entry-header + .post-thumbnail {
	margin-top: 2rem;
}
.entry-header + .post-thumbnail {
	margin-bottom: 2rem;
}
.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
	margin: 2rem auto;
	/* padding: var(--padding); */
	align-items: center;
	justify-content: space-between;
}
.post-navigation .nav-links {
	display: flex;
	column-gap: 1.5rem;
}
.comment-navigation .nav-previous a,
.posts-navigation .nav-previous a,
.post-navigation .nav-previous a {
	flex: calc(50% - 1.5rem);
	display: flex;
	align-items: center;
}

.comment-navigation .nav-next a,
.posts-navigation .nav-next a,
.post-navigation .nav-next a {
	flex: calc(50% - 1.5rem);
	display: flex;
	align-items: center;
	justify-content: end;
	text-align: right;
}
.comment-navigation a,
.posts-navigation a,
.post-navigation a {
	text-decoration: none;
}
.nav-previous a::before,
.nav-next a::before {
	font-size: 1.5rem;
	position: relative;
	top: 1px;
	padding: 1rem;
	background: #777;
	color: #fff;
	border-radius: 2px;
}
.nav-previous a::before {
	content: "‹ ";
	margin-right: 1rem;
}
.nav-next a {
	flex-direction: row-reverse;
}
.nav-next a::before {
	content: "›";
	margin-left: 1rem;
	right: 0;
}
.nav-subtitle {
	display: block;
	font-size: .8rem;
	text-transform: uppercase;
	color: #777;
	font-weight: bold;
}
.nav-title {
	font-weight: bold;
}

.pagination ul {
	list-style: none outside;
	margin: 0;
	display: flex;
	column-gap: 1.5rem;
	row-gap: 1.5rem;
}
@media screen and (max-width: 768px) {
	.post-navigation .nav-links {
		flex-wrap: wrap;
	}
	.comment-navigation .nav-next,
	.posts-navigation .nav-next,
	.post-navigation .nav-next {
		flex: calc(100% - 1.5rem);
		justify-content: flex-start;
		text-align: left;
		margin-top: 1rem;
	}
	.nav-next::after {
		order: -1;
		margin-left: unset;
		margin-right: 1rem;
	}
	.comment-navigation .nav-previous,
	.posts-navigation .nav-previous,
	.post-navigation .nav-previous {
		flex: calc(100% - 1.5rem);
		display: flex;
		align-items: center;
	}
}
/*
################################
BLOCK PATTERNS
################################
*/
/* card and image overlap */
.moonranger-card-and-image-overlap {
	align-items: flex-start;
	justify-content: center;
}
.moonranger-card-and-image-overlap .wp-block-column.has-background {
	padding: 2rem;
}
.moonranger-card-and-image-overlap .wp-block-column:first-of-type {
	z-index: 1;
	margin-top: 2rem;
	margin-right: -6rem;
	margin-bottom: 2rem;
}
.moonranger-card-and-image-overlap .wp-block-column:nth-of-type(2) {
	z-index: -1;
}
@media screen and (max-width: 768px) {
	.moonranger-card-and-image-overlap .wp-block-column:first-of-type {
		z-index: 1;
		margin-top: 0;
		margin-right: 2rem;
		margin-bottom: -4rem;
		margin-left: 2rem;
	}
}
@media screen and (max-width: 380px) {
	.moonranger-card-and-image-overlap .wp-block-column:first-of-type {
		z-index: 1;
		margin-top: 0;
		margin-right: 1rem;
		margin-bottom: -4rem;
		margin-left: 1rem;
	}
}
/* half & half page header */
.moonranger-half-half-page-header, .moonranger-half-half-page-header.has-background {
	align-items: center;
}
.moonranger-half-half-page-header {
	flex-direction: row-reverse;
}
.moonranger-half-half-page-header,
.moonranger-half-half-page-header.has-background {
	justify-content: stretch;
	padding: 0;
}
.half-half-text {
	z-index: 1;
	margin-top: 2rem;
	margin-right: -6rem;
	margin-bottom: 2rem;
	margin-left: 2rem !important;
	padding: 4rem;
}
.half-half-image .wp-block-image {
	margin: 0;
	height: 100%;
}
.half-half-image {
	z-index: 0;
	align-self: stretch;
	flex-grow: 1 !important;
}
.half-half-image .wp-block-image img {
	object-fit: cover;
	height: 100%;
	width: 100%;
	min-height: 450px;
}

@media screen and (max-width: 768px) {
	.moonranger-half-half-page-header {
		flex-direction: column;
	}
	.moonranger-half-half-page-header .wp-block-column.half-half-text {
		z-index: 1;
		margin-top: -4rem;
		margin-right: 1rem;
		margin-bottom: 2rem;
		margin-left: 1rem !important;
		padding: 2rem;
	}
	.site .moonranger-half-half-page-header .half-half-image {
		margin-left: 0;
	}
	.half-half-image .wp-block-image img {
		vertical-align: inherit !important;
	}
}
@media screen and (max-width: 380px) {
	.half-half-text {
		z-index: 1;
		margin: -4rem 1rem 1rem 1rem;
		padding: 1.5rem;
	}
}

/* three cards pattern */
.three-cards-row {
	row-gap: 2rem;
	column-gap: 2rem;
}
.three-cards-row figure {
	margin: 0;
}
.three-cards-row .wp-block-column {
	margin-left: 0 !important;
}
@media screen and (max-width: 800px) {
	.three-cards-row {
		flex-direction: column;
	}
}
@media screen and (max-width: 380px) {
}
/* social proof showcase */
.social-proof-showcase .wp-block-group {
	gap: 1rem !important;
}
.social-proof-showcase figure img {
	/* border: 3px solid #d19e30;
	border-width: 0 1px 5px 0; */
}
@media screen and (max-width: 800px) {
	.social-proof-showcase {
		flex-direction: column;
	}
}
/* media-and-text-group */
.media-and-text-group {
	row-gap: 2rem;
	column-gap: 2rem;
}
/* six boxes group */
.six-boxes .wp-block-columns {
	gap: 2rem;
}
.six-boxes .wp-block-columns .wp-block-column {
	margin-left: 0 !important;
}
@media screen and (max-width: 800px) {
	.six-boxes .wp-block-columns {
		flex-direction: column;
	}
}
@media screen and (max-width: 380px) {
	.six-boxes .wp-block-columns {
		gap: 1rem;
	}
}
.three-stacked-images-with-cards .wp-block-columns:nth-of-type(even) {
	flex-direction: row-reverse;
}
.three-stacked-images-with-cards .wp-block-columns:nth-of-type(even) .wp-block-column.has-background {
	z-index: 1;
	margin-left: -6rem;
	margin-right: 0;
}
@media screen and (max-width: 768px) {
	.three-stacked-images-with-cards .wp-block-columns:nth-of-type(even) .wp-block-column.has-background {
		margin: 0 2rem -4rem 2rem;
	}
}
@media screen and (max-width: 380px) {
	.three-stacked-images-with-cards .wp-block-columns:nth-of-type(even) .wp-block-column.has-background {
		margin: 0 1rem -4rem 1rem;
	}
}
/*
################################
 FORMS
################################
*/
.happyforms-part__label-container {
	margin-bottom: .25rem;
}
.happyforms-input {
	margin-bottom: 1rem;
}

.happyforms-input input,
.happyforms-part__el textarea {
	width: 100%;
	padding: .65rem;
	border: 1px solid #c3ccc4;
	border-radius: 5px;
	font-size: var(--moonranger-variable-font-size-regular);
	font-family: inherit;
}
.happyforms-custom-select-dropdown {
	display: none;
}
.happyforms-styles :placeholder {
	color: #6f6f6f;
}
.happyforms-part-error-notice p {
	display: flex;
	align-items: center;
	gap: 1rem;
	color: red;
}
.happyforms-part-error-notice svg {
	width: 32px;
}
.option-label .label {
	display: inline-block;
}
.checkmark {
	display: none;
}
.happyforms-flex {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}
.happyforms-part--submit {
	flex: 1 1 100%;
}
.happyforms-part--width-full {
	flex: 1 1 100%;
}
.happyforms-part--width-half {
	flex: 1 1 calc(50% - 1rem);
}
@media screen and (max-width: 420px) {
	.happyforms-part--width-half {
		flex: 1 1 100%;
	}
}