/*!
Theme Name: Jarvis
Theme URI: https://wordpress.com/theme/jarvis/
Description:
Version: 1.0.alpha-37
Author: Pro Theme Design
Author URI: https://prothemedesign.com/
Text Domain: jarvis
Domain Path: /languages/
Tags: blog, news, entertainment, grid-layout, one-column, accessibility-ready, custom-background, custom-header, custom-logo, custom-menu, editor-style, featured-image-header, featured-images, footer-widgets, full-width-template, post-formats, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready, block-styles, wide-blocks

License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/license-list.html#GPLv2
*/
/*!
 *  ___        _____ _                  ___         _
 * | _ \_ _ __|_   _| |_  ___ _ __  ___|   \ ___ __(_)__ _ _ _
 * |  _/ '_/ _ \| | | ' \/ -_) '  \/ -_) |) / -_|_-< / _` | ' \
 * |_| |_| \___/|_| |_||_\___|_|_|_\___|___/\___/__/_\__, |_||_\
 *                                                   |___/
 * WordPress Themes: https://prothemedesign.com/themes/
 */
/*!
 *    0.1 - Custom Properties
 *    0.2 - CSS Reset
 * 1.0 - HTML Elements
 *    1.1 - HTML Elements
 *    1.2 - Forms
 *    1.3 - Typography
 *    1.4 - Search Form
 * 2.0 - WordPress
 *    2.1 - Required Elements
 *    2.2 - Accessibility
 *    2.3 - Blocks
 *    2.4 - Widgets
 *    2.5 - Gallery
 *    2.6 - Calendar
 *    2.7 - Password Required Form
 *    2.8 - Embeds
 * 3.0 - Theme Layout
 *    3.1 - Archives and Excerpts.
 *    3.2 - Blocks
 *    3.3 - Comments
 *    3.4 - Footer
 *    3.5 - General Properties
 *    3.6 - Header
 *    3.7 - Navigation
 *    3.8 - Numbered Pagination
 *    3.9 - Pagination
 *    3.10 - Page Templates
 *    3.11 - Body
 */
/*!
 * 0.1 - Custom Properties
 */
:root {
	color-scheme: light dark;
	--foreground-color-light: #000000;
	--foreground-contrast-color-light: #ffffff;
	--foreground-color-dark: #ffffff;
	--foreground-contrast-color-dark: #000000;
	--background-color-light: #eedd33;
	--background-color-dark: #004466;
	--font-body: Cambria, Georgia, serif;
	--font-header: Cambria, Georgia, serif;
	--font-title: Cambria, Georgia, serif;
	--font-meta: Cambria, Georgia, serif;
	--font-monospace: "andale mono", "monotype.com", "lucida console", monospace;
	--wp-alignfull-size: 100vw;
}

body {
	--foreground-color: var( --foreground-color-light );
	--foreground-contrast-color: var( --foreground-contrast-color-light );
	--background-color: var( --background-color-light );
}

@media (prefers-color-scheme: dark) {
	body {
		--foreground-color: var( --foreground-color-dark );
		--foreground-contrast-color: var( --foreground-contrast-color-dark );
		--background-color: var( --background-color-dark );
	}
	img {
		filter: brightness(0.8) contrast(1.2);
	}
}

/*!
 * 0.2 - CSS Reset
 * Set HTML styles to sensible defaults
 * loosely based on normalize.css, with a number of customisations
 */
html {
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-ms-overflow-style: scrollbar;
	scroll-behavior: smooth;
}

html.customizer-preview {
	scroll-behavior: auto;
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}

body {
	background-color: var(--background-color, #fff);
	color: var(--foreground-color, #000);
	margin: 0;
	min-height: 100vh;
	text-rendering: optimizeSpeed;
}

*,
*:before,
*:after {
	box-sizing: inherit;
}

:focus:not(:focus-visible),
*[tabindex='-1']:focus {
	outline: none;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
video {
	display: inline-block;
}

embed,
iframe,
object {
	max-width: 100%;
}

button:focus,
a:focus {
	outline: thin dotted;
}

button:active, button:hover,
a:active,
a:hover {
	outline: none;
}

a {
	background-color: transparent;
}

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
}

b,
strong {
	font-weight: bolder;
}

hr {
	box-sizing: content-box;
	height: 0;
	clear: both;
}

var,
tt,
code,
kbd,
pre,
samp {
	font-family: var(--font-monospace);
	font-size: 0.9em;
}

q {
	background: rgba(var(--foreground-color, #000), 0.25);
	padding: 0.25em 0.5em;
}

small {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
}

sub,
sup {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	position: relative;
	max-width: 100%;
	display: block;
	height: auto;
	border: 0;
}

fieldset {
	margin: 0 0 1.5rem 0;
	padding: 1.5rem 0.75rem;
}

legend {
	border: 0;
	padding: 0;
}

button,
input,
select,
textarea {
	font: inherit;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: not-allowed;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"]:focus::-webkit-input-placeholder,
.searchfield:focus::-webkit-input-placeholder {
	opacity: 0;
}

.device-click [type="search"]:focus::-webkit-input-placeholder, .device-click
.searchfield:focus::-webkit-input-placeholder {
	-webkit-transition: opacity 0.5s 0.5s ease;
	transition: opacity 0.5s 0.5s ease;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	appearance: button;
	font: inherit;
}

::-moz-focus-inner {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
	vertical-align: top;
}

address {
	margin-bottom: 1.5rem;
}

abbr {
	border-bottom: thin dotted;
	cursor: help;
}

svg {
	width: auto;
}

svg * {
	color: inherit;
}

svg.icon {
	stroke: currentColor;
	stroke-width: 0.1em;
	fill: none;
}

@-ms-viewport {
	width: device-width;
}

@media (prefers-reduced-motion: reduce) {
	* {
		-webkit-animation: none !important;
		animation: none !important;
		transition: none !important;
	}
}

/*!
 * 1.0 - HTML Elements
 */
/*!
 * 1.1 - HTML Elements
 */
ol,
ul {
	margin: 0 0 1.5rem 0;
	padding: 0 0 0 1.5rem;
	clear: both;
}

ol ol,
ol ul,
ol li + li,
ul ol,
ul ul,
ul li + li {
	margin-top: 0.375rem;
	margin-bottom: 0;
}

ul {
	list-style: square;
}

ol {
	list-style: decimal;
}

dl {
	clear: both;
}

dl dt {
	font-weight: bold;
}

dl dd {
	margin: 0 1.5rem 1.5rem 1.5rem;
}

blockquote {
	padding: 0 1.5rem;
	margin: 3rem 0;
	overflow: hidden;
	font-family: var(--font-body);
	font-style: italic;
}

blockquote p:last-of-type {
	margin-bottom: 0;
}

blockquote small,
blockquote blockquote {
	margin: 1.5rem 0;
	padding: 1.5rem 1.5rem;
}

cite {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	font-weight: normal;
	letter-spacing: 0.05em;
	display: block;
	margin-top: 0.375rem;
}

cite:before {
	content: "\2014\00a0";
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	margin-bottom: 3rem;
	margin-top: 3rem;
	width: 100%;
}

table th {
	color: var(--foreground-color, #000);
	border-bottom: 0.2rem solid var(--foreground-color, #000);
}

table th,
table caption {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	font-family: var(--font-meta);
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	padding: 0.75rem 1.5rem;
	text-align: start;
	font-weight: bold;
}

table td {
	padding: 0.75rem 1.5rem;
	border-bottom: 1px solid var(--foreground-color, #000);
	vertical-align: top;
}

table tr:last-child td {
	border: none;
}

table tbody tr:hover {
	background: var(--foreground-contrast-color, #fff);
}

pre {
	background: var(--foreground-color, #000);
	color: var(--foreground-contrast-color, #fff);
	padding: 1.5rem 1.5rem;
	margin: 3rem 0;
	overflow: auto;
	display: block;
	word-wrap: normal;
	white-space: pre;
	-moz-tab-size: 4;
	-o-tab-size: 4;
	tab-size: 4;
	resize: both;
	max-width: 100vw;
}

pre.compress {
	max-height: 15rem;
}

.entry-header {
	margin-bottom: 3rem;
	grid-column: 1/-1;
}

@media (min-width: 1200px) {
	.entry-header {
		margin-bottom: 6rem;
	}
}

.entry-header p:last-of-type {
	margin-bottom: 0;
}

.entry-title {
	font-weight: bold;
	font-size: 32px;
	font-size: 2rem;
	line-height: 1.25;
}

@media (min-width: 47rem) {
	.entry-title {
		font-size: 64px;
		font-size: 4rem;
		line-height: 1.25;
	}
}

@media (min-width: 1200px) {
	.entry-title {
		font-size: 96px;
		font-size: 6rem;
		line-height: 1;
	}
}

.entry-title small {
	display: block;
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 1.7;
	letter-spacing: initial;
}

.entry-title.summary {
	font-size: 32px;
	font-size: 2rem;
	line-height: 1.25;
}

.entry-meta {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	font-family: var(--font-meta);
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	margin-bottom: 3rem;
}

.entry-meta > * {
	-webkit-margin-end: 0.75rem;
	margin-inline-end: 0.75rem;
}

.entry-meta a.current-page {
	background: var(--foreground-color, #000);
	color: var(--foreground-contrast-color, #fff);
	padding: 0.3em 0.6em;
	box-shadow: 0.2rem 0.2rem 0 var(--foreground-color, #000);
}

.entry-intro {
	font-size: 26px;
	font-size: 1.625rem;
	line-height: 1.5;
	max-width: 44rem;
	margin-bottom: 0;
	margin-top: 1.5rem;
	font-weight: 100;
}

.entry-intro p:last-child {
	margin-bottom: 0;
}

.entry-author {
	margin: 4.5rem 0;
	display: grid;
	grid-template-columns: 15% auto;
	-moz-column-gap: 1.5rem;
	column-gap: 1.5rem;
}

.entry-author h2 {
	margin-bottom: 0.75rem;
}

.entry-author .avatar {
	max-width: 100%;
	box-shadow: 0.4rem 0.4rem 0 var(--foreground-color, #000);
}

.entry-breadcrumbs {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	font-family: var(--font-meta);
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.1em;
}

input[type=button],
input[type=reset],
input[type=submit],
.button,
.wp-block-button__link,
button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: var(--foreground-color, #000);
	color: var(--foreground-contrast-color, #fff);
	display: inline-block;
	text-decoration: none;
	border: none;
	border-radius: 0;
	padding: 0.75rem 3rem;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	text-align: center;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
}

.device-click input[type=button], .device-click
input[type=reset], .device-click
input[type=submit], .device-click
.button, .device-click
.wp-block-button__link, .device-click
button {
	transition: all 0.15s ease-in-out;
}

input[type=button]:focus, input[type=button]:hover,
input[type=reset]:focus,
input[type=reset]:hover,
input[type=submit]:focus,
input[type=submit]:hover,
.button:focus,
.button:hover,
.wp-block-button__link:focus,
.wp-block-button__link:hover,
button:focus,
button:hover {
	text-decoration: underline;
	box-shadow: 0.4rem 0.4rem 0 var(--foreground-color, #000);
}

/*!
 * 1.2 - Forms
 */
input[type=checkbox], input[type=radio] {
	padding: 0;
	margin: 0;
	cursor: pointer;
	-webkit-margin-end: 0.5em;
	margin-inline-end: 0.5em;
	vertical-align: middle;
}

input[type=checkbox]:hover, input[type=checkbox]:focus, input[type=radio]:hover, input[type=radio]:focus {
	background: var(--foreground-contrast-color, #fff);
	color: var(--foreground-color, #000);
}

@supports (-webkit-appearance: none) {
	input[type=checkbox], input[type=radio] {
		-webkit-appearance: none !important;
		width: 1.5rem !important;
		height: 1.5rem !important;
		border: 0.2rem solid var(--foreground-color, #000);
		background: var(--foreground-color, #000);
	}
	input[type=checkbox]:hover, input[type=checkbox]:focus, input[type=radio]:hover, input[type=radio]:focus {
		border: 0.2rem solid var(--foreground-color, #000);
		background: var(--foreground-contrast-color, #fff);
	}
	input[type="checkbox"]:checked {
		background: var(--foreground-color, #000);
		position: relative;
	}
	input[type="checkbox"]:checked:after {
		position: absolute;
		content: "";
		top: 0.2rem;
		left: 0.1rem;
		width: 0.9rem;
		height: 0.5rem;
		border: 0.25rem solid var(--foreground-contrast-color, #fff);
		-webkit-border-end: none;
		border-inline-end: none;
		border-top: none;
		transform: rotate(-45deg);
	}
	input[type="radio"] {
		border-radius: 1.5rem;
		transition: border ease-in-out 0.1s;
		padding: 0;
	}
	input[type="radio"]:checked {
		border-width: 0.4rem;
		background: var(--foreground-contrast-color, #fff);
	}
}

input[type=text],
input[type=password],
input[type=email],
input[type=url],
input[type=search],
input[type=date],
input[type=time],
input[type=datetime-local],
input[type=week],
input[type=month],
input[type=tel],
input[type=number],
select,
textarea {
	padding: 0.75rem 0.75rem;
	line-height: 1.5rem;
	min-height: 1.5rem;
	width: 100%;
	background-color: transparent;
	border: 0.2rem solid currentColor;
	color: inherit;
}

.device-click input[type=text], .device-click
input[type=password], .device-click
input[type=email], .device-click
input[type=url], .device-click
input[type=search], .device-click
input[type=date], .device-click
input[type=time], .device-click
input[type=datetime-local], .device-click
input[type=week], .device-click
input[type=month], .device-click
input[type=tel], .device-click
input[type=number], .device-click
select, .device-click
textarea {
	transition: all 0.15s ease-in-out;
}

input[type=text]:hover,
input[type=password]:hover,
input[type=email]:hover,
input[type=url]:hover,
input[type=search]:hover,
input[type=date]:hover,
input[type=time]:hover,
input[type=datetime-local]:hover,
input[type=week]:hover,
input[type=month]:hover,
input[type=tel]:hover,
input[type=number]:hover,
select:hover,
textarea:hover {
	border-color: var(--foreground-color, #000);
}

input[type=text]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=search]:focus,
input[type=date]:focus,
input[type=time]:focus,
input[type=datetime-local]:focus,
input[type=week]:focus,
input[type=month]:focus,
input[type=tel]:focus,
input[type=number]:focus,
select:focus,
textarea:focus {
	outline: none;
	background-color: var(--foreground-contrast-color, #fff);
	color: var(--foreground-color, #000);
	box-shadow: 0.4rem 0.4rem 0 var(--foreground-color, #000);
	z-index: 1;
	position: relative;
}

::-webkit-input-placeholder {
	/* Chrome/Opera/Safari */
	color: var(--foreground-color, #000);
	opacity: 0.4;
}

::-moz-placeholder {
	/* Firefox 19+ */
	color: var(--foreground-color, #000);
	opacity: 0.4;
}

:-ms-input-placeholder {
	/* IE 10+ */
	color: var(--foreground-color, #000);
	opacity: 0.4;
}

:-moz-placeholder {
	/* Firefox 18- */
	color: var(--foreground-color, #000);
	opacity: 0.4;
}

select {
	height: calc( 3rem + 0.4rem);
}

select:hover {
	cursor: pointer;
}

textarea {
	min-height: 15rem;
}

label,
legend {
	display: block;
	font-weight: bold;
}

label em,
legend em {
	opacity: 0.8;
}

label:hover,
legend:hover {
	cursor: pointer;
}

fieldset {
	border: none;
	padding: 0;
	margin-bottom: 1.5rem;
}

/*!
 * 1.3 - Typography
 */
html {
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.75;
	font-weight: normal;
	font-family: var(--font-body);
	direction: ltr;
	font-feature-settings: "kern" 1, "liga" 1, "clig" 1;
	font-variant-ligatures: no-discretionary-ligatures;
	/*@replace: embed*/
	unicode-bidi: normal;
}

body {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 1.7;
	font-family: var(--font-body);
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
	margin: 0 0 1.2rem 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--font-header);
	font-weight: normal;
}

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

h1 a:focus, h1 a:hover,
h2 a:focus,
h2 a:hover,
h3 a:focus,
h3 a:hover,
h4 a:focus,
h4 a:hover,
h5 a:focus,
h5 a:hover,
h6 a:focus,
h6 a:hover {
	text-decoration: underline;
}

h1,
h2,
h3 {
	overflow-wrap: break-word;
	word-wrap: break-word;
	font-feature-settings: "kern" 1, "liga" 1, "clig" 1, "swsh" 1;
	font-weight: bold;
}

h1 {
	font-size: 48px;
	font-size: 3rem;
	line-height: 1.25;
}

h2 {
	font-size: 32px;
	font-size: 2rem;
	line-height: 1.25;
}

h3 {
	font-size: 26px;
	font-size: 1.625rem;
	line-height: 1.5;
}

h4 {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 1.7;
}

h5,
h6 {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	font-weight: bold;
}

a {
	color: currentColor;
	text-underline-offset: 0.1em;
	text-decoration-thickness: 0.1em;
	text-decoration: underline;
}

.device-click a {
	transition: all 0.1s ease-in-out;
}

a:focus, a:hover {
	text-decoration-thickness: 0.2em;
	text-decoration: none;
}

hr {
	border: none;
	border-bottom: 0.2rem solid var(--foreground-color, #000);
	margin: 3rem auto;
}

/*!
 * 1.4 - Search Form
 */
form.search-form {
	width: 100%;
	max-width: 44rem;
	display: flex;
}

form.search-form label {
	flex-grow: 1;
}

form.search-form input.search-field {
	margin: 0;
}

form.search-form button {
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

/*!
 * 2.0 - WordPress
 */
/*!
 * 2.1 - Required Elements
 * Uses the defaults listed on the Codex (https://codex.wordpress.org/CSS)
 */
.wp-caption {
	background: transparent;
	padding: 0;
	text-align: center;
	max-width: 100%;
	margin: 0 0 3rem 0;
	clear: both;
}

.wp-caption .wp-caption-text {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	text-align: center;
	padding: 0;
	margin: 0;
}

.wp-caption img {
	float: none;
	margin: 0 auto 0.375rem auto;
}

.wp-smiley {
	margin: 0 !important;
	max-height: 1em;
	border: none;
	padding: 0;
}

.alignleft,
.alignright,
.aligncenter {
	display: block;
	margin-bottom: 1.5rem;
}

blockquote.alignleft, blockquote.alignright {
	max-width: 100%;
	margin-left: 0;
	margin-right: 0;
}

@media (min-width: 47rem) {
	blockquote.alignleft, blockquote.alignright {
		max-width: 45%;
	}
}

/*@noflip*/
.alignleft {
	float: left;
	-webkit-margin-end: 1.5rem;
	margin-inline-end: 1.5rem;
}

/*@noflip*/
.alignright {
	float: right;
	-webkit-margin-start: 1.5rem;
	margin-inline-start: 1.5rem;
}

/*@noflip*/
.aligncenter {
	clear: both;
	display: block;
	margin: 3rem auto;
}

/*@noflip*/
.alignright .alignright,
.alignleft .alignleft,
.aligncenter .aligncenter {
	padding: 0 0.5em;
	border: 0;
}

.sticky .entry-meta .posted-on {
	display: none;
}

/*!
 * 2.2 - Accessibility
 */
/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%);
	position: absolute !important;
	padding: 0;
	margin: -1px;
	height: 1px;
	width: 1px;
	overflow: hidden;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 1.7;
	padding: 15px 23px 14px;
	background: #f1f1f1;
	color: #222;
	font-weight: bold;
	left: 5px;
	top: 5px;
	clip: auto !important;
	display: block;
	height: auto;
	width: auto;
	z-index: 100000;
}

.screen-reader-shortcut {
	padding: 15px 23px 14px;
	background: #f1f1f1;
	color: #0073aa;
	max-width: 200px;
	position: absolute;
	left: -300px;
	top: 7px;
	word-wrap: normal !important;
	text-align: center;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	word-wrap: normal;
}

.screen-reader-shortcut:focus {
	left: 6px;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
[tabindex="-1"]:focus {
	outline: 0;
}

.widget a[aria-current] {
	background: var(--foreground-color, #000);
	color: var(--foreground-contrast-color, #fff);
	padding: 0.2rem;
	margin-left: -0.2rem;
	margin-right: -0.2rem;
	text-decoration: none;
}

/*!
 * 2.3 - Blocks
 */
p.wp-block-subhead {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 1.7;
	opacity: 1;
}

.wp-block-pullquote blockquote,
.wp-block-quote,
.wp-block-quote.is-large {
	margin-bottom: 3rem;
}

.wp-block-quote p {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 1.7;
}

.wp-block-quote.is-large p {
	font-size: 26px;
	font-size: 1.625rem;
	line-height: 1.5;
}

.wp-block-separator {
	width: 10rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	border-bottom-width: 0.2rem;
	border-color: var(--foreground-color, #000);
}

.wp-block-separator.is-style-wide {
	width: 20rem;
	border-bottom-width: 0.2rem;
}

.wp-block-separator.is-style-dots:before {
	font-size: 2rem;
	letter-spacing: 1em;
	-webkit-padding-start: 1em;
	padding-inline-start: 1em;
	line-height: 0;
	color: var(--foreground-color, #000);
}

.wp-block-audio audio {
	width: 100%;
}

.wp-block-image {
	margin-bottom: 3rem;
	max-width: var(--wp-alignfull-size);
}

.wp-block-image.alignfull img {
	width: 100%;
}

.wp-block-cover-image.alignleft, .wp-block-cover-image.alignright, .wp-block-cover-image.aligncenter {
	display: flex;
}

.wp-block-columns .wp-block-column {
	padding-left: 0.75rem;
	padding-right: 0.75rem;
}

.wp-block-columns .wp-block-column:first-child {
	-webkit-padding-start: 0;
	padding-inline-start: 0;
}

.wp-block-columns .wp-block-column:last-child {
	-webkit-padding-end: 0;
	padding-inline-end: 0;
}

/*!
 * 2.4 - Widgets
 */
.widget .wp-playlist,
.widget .mejs-container,
.widget .jetpack-video-wrapper {
	margin: 0;
}

.widget.widget_archive .form-select, .widget.widget_categories .form-select {
	margin-bottom: 0;
}

.widget.widget_recent_comments table.recentcommentsavatar {
	width: 100%;
	margin: 0;
	border: none;
}

.widget.widget_recent_comments table.recentcommentsavatar td {
	padding-bottom: 0.75rem;
	border: none;
}

.widget.widget_recent_comments table.recentcommentsavatar td.recentcommentsavatarend, .widget.widget_recent_comments table.recentcommentsavatar td.recentcommentsavatartop {
	padding: auto;
}

.widget.widget_recent_comments table.recentcommentsavatar td.recentcommentsavatarend a, .widget.widget_recent_comments table.recentcommentsavatar td.recentcommentsavatartop a {
	display: block;
	line-height: 0;
}

.widget.widget_recent_comments table.recentcommentsavatar tr,
.widget.widget_recent_comments table.recentcommentsavatar tr:nth-child(odd) {
	background: transparent;
	border: none;
}

.widget.widgt_text ul {
	list-style-type: square;
	-webkit-margin-start: 1.5rem;
	margin-inline-start: 1.5rem;
}

.widget.widget_image img {
	margin: 0;
}

.widget.widget_image .wp-caption {
	max-width: 100%;
	margin-bottom: 0;
}

.widget.widget_image .wp-caption .wp-caption-text {
	font-size: 1em;
}

.widget.widget_rss ul {
	padding: 0;
	margin: 0;
}

.widget.widget_rss li {
	list-style-type: none;
	margin-bottom: 1.5rem;
}

.widget.widget_rss li .rss-date {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	font-family: var(--font-meta);
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	opacity: 0.8;
	display: block;
	margin-bottom: 0.75rem;
}

.widget.widget_rss li a.rsswidget {
	font-weight: bold;
}

/*!
 * 2.5 - Gallery
 * Default styles for the [gallery] shortcode
 */
.gallery {
	padding: 0;
	margin-bottom: 1.5rem;
}

.gallery:after {
	content: "";
	display: block;
	clear: both;
}

.gallery .gallery-item {
	display: inline-block;
	text-align: center;
	margin: 0 0 1.5rem 0;
	vertical-align: top;
	padding: 0 0.375rem;
}

.gallery .gallery-item .gallery-icon {
	margin-bottom: 0.75rem;
}

.gallery .gallery-item .gallery-icon a {
	display: block;
	line-height: 0;
}

.gallery .gallery-item .gallery-caption {
	padding: 0;
	margin: 0;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	font-style: italic;
}

.gallery .gallery-item img {
	height: auto;
	opacity: 0.8;
	transition: opacity 0.3s ease-in-out;
}

.gallery .gallery-item img:focus, .gallery .gallery-item img:hover {
	opacity: 1;
	transition: opacity 0.3s ease-in-out;
}

.gallery a.image {
	float: none;
}

.gallery.gallery-columns-1 .gallery-item {
	width: 100%;
}

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

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

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

.gallery.gallery-columns-5 .gallery-item {
	width: 20%;
}

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

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

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

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

.gallery.gallery-columns-10 .gallery-item {
	width: 10%;
}

.gallery.gallery-columns-6 .gallery-caption,
.gallery.gallery-columns-7 .gallery-caption,
.gallery.gallery-columns-8 .gallery-caption,
.gallery.gallery-columns-9 .gallery-caption,
.gallery.gallery-columns-10 .gallery-caption {
	display: none;
}

/*!
 * 2.6 - Calendar
 */
#wp-calendar {
	margin: 0;
	table-layout: fixed;
}

#wp-calendar th,
#wp-calendar td {
	text-align: center;
	padding: 0.375rem 0;
}

#wp-calendar caption {
	text-align: center;
	background: transparent;
	padding: 0.375rem 0;
}

#wp-calendar #today {
	font-weight: bold;
}

/*!
 * 2.7 - Password Required Form
 */
.post-password-required form {
	margin-bottom: 6rem;
}

.post-password-required form label {
	margin-bottom: 0.75rem;
}

.post-password-required form p:last-of-type {
	margin-bottom: 0;
}

/*!
 * 2.8 - Embeds
 */
iframe[src*="8tracks.com"], iframe[src*="bandcamp.com"], iframe[src*="dailymotion.com"], iframe[src*="itchi.io"], iframe[src*="slideshare.net"], iframe[src*="soundcloud.com"], iframe[src*="viddler.com"], iframe[src*="videopress.com"], iframe.twitter-tweet, iframe.twitter-follow-button {
	display: block;
	margin: 3rem auto;
	max-width: 100%;
}

iframe.instagram-media {
	display: block;
	margin: 3rem auto !important;
}

iframe.wp-embedded-content {
	max-width: 99.5% !important;
}

object {
	display: block;
	margin: 3rem auto !important;
}

.wp-playlist,
.mejs-container {
	margin: 3rem 0;
}

p > embed:only-child,
p > iframe:only-child,
p > object:only-child {
	margin-bottom: 0;
}

/*!
 * 3.0 - Theme Layout
 */
.block-info,
.block-help,
.block-alert,
.block-success,
.block-error,
.block-announcement {
	background: var(--foreground-color, #000);
	color: var(--foreground-contrast-color, #fff);
	padding: 1.5rem 1.5rem 1.5rem 4.5rem;
	position: relative;
	box-shadow: 0.4rem 0.4rem 0 var(--foreground-color, #000);
	margin-bottom: 1.5rem;
}

.block-info:before,
.block-help:before,
.block-alert:before,
.block-success:before,
.block-error:before,
.block-announcement:before {
	font-family: var(--font-monospace);
	content: '\2139\FE0F';
	position: absolute;
	top: 1.5rem;
	left: 1.5rem;
	font-size: 1.5rem;
	line-height: inherit;
}

.block-info > *:last-child,
.block-help > *:last-child,
.block-alert > *:last-child,
.block-success > *:last-child,
.block-error > *:last-child,
.block-announcement > *:last-child {
	margin-bottom: 0;
}

.block-alert:before {
	content: '\26A0\FE0F';
}

.block-success:before {
	content: '\2705';
}

.block-help:before {
	content: '\2753';
}

.block-error:before {
	content: '\26D4';
}

.block-announcement:before {
	content: '\1F4E3';
}

.block-intro {
	font-size: 26px;
	font-size: 1.625rem;
	line-height: 1.5;
}

.block-border {
	padding: 1.5rem 1.5rem;
	border: 0.2rem solid currentColor;
	box-shadow: 0.4rem 0.4rem 0 var(--foreground-color, #000);
}

.block-border-dashed {
	padding: 1.5rem 1.5rem;
	border: 0.2rem dashed currentColor;
}

/*!
 * 3.1 - Archives and Excerpts.
 * Site content, blog posts etc
 */
.content-posts article.entry {
	margin-bottom: 4.5rem;
	content-visibility: auto;
	contain-intrinsic-size: 16rem;
}

.content-posts article.entry .read-more {
	padding: 0.75rem 0;
}

.content-posts article.entry.format-quote blockquote {
	margin: 0;
	padding: 0;
	grid-column: 2 / -1;
}

.content-posts article.entry.format-audio .wp-playlist,
.content-posts article.entry.format-audio .mejs-container {
	margin: 0;
}

.content-posts article.entry.format-video .toolbelt-video-wrapper {
	margin-top: 0;
	margin-bottom: 0.75rem;
}

.content-posts article.entry.format-gallery .post-gallery,
.content-posts article.entry.format-gallery .tiled-gallery {
	margin-bottom: 0.75rem;
}

.content-posts .not-found {
	grid-column: 1/-1;
}

.content-posts .entry-thumbnail {
	margin-bottom: 1.5rem;
	display: block;
}

.content-posts .entry-archive-header > * + * {
	margin-top: 1.5rem;
}

@media (min-width: 47rem) {
	.archive-articles-0 .content-posts article.entry {
		display: grid;
		grid-template-columns: 15% calc( 35% - 3rem) 50%;
		grid-column-gap: 1.5rem;
		width: 100%;
	}
	.archive-articles-0 .content-posts article.entry .entry-meta {
		margin-top: 0.3rem;
	}
	.archive-articles-0 .content-posts article.entry .entry-meta > span {
		display: block;
	}
	.archive-articles-0 .content-posts .entry-title {
		margin: 0;
	}
	.archive-articles-0 .content-posts .entry-thumbnail {
		display: none;
	}
	.archive-articles-1 .content-posts,
	.archive-articles-2 .content-posts {
		display: grid;
		grid-template-columns: repeat(2, calc( 50% - 0.75rem));
		grid-column-gap: 1.5rem;
		grid-row-gap: 3rem;
	}
	.archive-articles-1 .content-posts article.entry,
	.archive-articles-2 .content-posts article.entry {
		display: block;
		margin: 0;
	}
	.archive-articles-1 .navigation,
	.archive-articles-2 .navigation {
		grid-column: 1/-1;
	}
	.archive-articles-4 .content-posts article.entry,
	.archive-articles-3 .content-posts article.entry {
		display: grid;
		grid-template-columns: 10% calc( 40% - 3rem) 50%;
		grid-gap: 1.5rem 1.5rem;
	}
	.archive-articles-4 .content-posts article.entry .entry-meta,
	.archive-articles-3 .content-posts article.entry .entry-meta {
		grid-column: 1 / 2;
		margin: 0;
	}
	.archive-articles-4 .content-posts .entry-thumbnail,
	.archive-articles-3 .content-posts .entry-thumbnail {
		grid-column: 2 / 3;
		grid-row: 1 / 3;
		margin: 0;
	}
	.archive-articles-4 .content-posts .entry-title,
	.archive-articles-3 .content-posts .entry-title {
		grid-column: 3 / 4;
		grid-row: 1 / 2;
		margin: 0;
	}
	.archive-articles-4 .content-posts .entry-archive,
	.archive-articles-3 .content-posts .entry-archive {
		grid-column: 3 / 4;
		grid-row: 2 / 3;
	}
	.archive-articles-4 .content-posts article.entry {
		grid-template-columns: 10% 50% calc( 40% - 3rem);
	}
	.archive-articles-4 .content-posts .entry-thumbnail {
		grid-column: 3 / 4;
	}
	.archive-articles-4 .content-posts .entry-title,
	.archive-articles-4 .content-posts .entry-archive {
		grid-column: 2 / 3;
	}
}

@media (min-width: 69rem) {
	.archive-articles-2 .content-posts {
		grid-template-columns: repeat(3, calc( 33.333% - 1rem));
	}
}

/*!
 * 3.2 - Blocks
 * Block overrides.
 */
.wp-block-cover,
.wp-block-cover-image {
	min-height: 60vh;
	margin-bottom: 3rem;
}

.wp-block-image {
	margin: 0;
}

/*!
 * 3.3 - Comments
 * Site content, blog posts etc
 */
.comment-list {
	list-style-type: none;
	margin: 0 0 3rem 0;
	padding: 0;
	content-visibility: auto;
	contain-intrinsic-size: 40rem;
}

.comment-list li.comment .comment-body,
.comment-list li.trackback .comment-body,
.comment-list li.pingback .comment-body {
	width: 100%;
	clear: both;
	margin-bottom: 3rem;
}

.comment-list li.comment .comment-body p:last-child,
.comment-list li.trackback .comment-body p:last-child,
.comment-list li.pingback .comment-body p:last-child {
	margin-bottom: 0.75rem;
}

.comment-list li.comment {
	margin: 0;
	position: relative;
	list-style-type: none;
}

.comment-list li.comment #respond {
	position: relative;
	margin: 0 0 3rem 0;
}

.comment-list li.comment #respond #cancel-comment-reply-link {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	font-family: var(--font-meta);
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	float: right;
}

.comment-list li.comment .comment-meta {
	margin-bottom: 0.75rem;
}

.comment-list li.comment .comment-meta:after {
	content: "";
	display: block;
	clear: both;
}

.comment-list li.comment .comment-meta .avatar {
	display: none;
}

@media (min-width: 47rem) {
	.comment-list li.comment .comment-meta .avatar {
		float: left;
		-webkit-margin-end: 1.5rem;
		margin-inline-end: 1.5rem;
		display: block;
		height: 3.75rem;
		width: auto;
	}
}

.comment-list li.comment .comment-meta .comment-metadata {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	font-family: var(--font-meta);
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.1em;
}

.comment-list li.comment .comment-meta .comment-metadata > * {
	-webkit-margin-end: 0.75rem;
	margin-inline-end: 0.75rem;
}

.comment-list li.comment .comment-meta .fn {
	display: inline-block;
	font-weight: bold;
	margin-top: 0.25rem;
}

.comment-list li.comment .comment-meta .says {
	display: none;
}

.comment-list li.comment.depth-1 .comment-body {
	-webkit-padding-start: 0%;
	padding-inline-start: 0%;
	max-width: calc( 44rem + 0%);
}

.comment-list li.comment.depth-2 .comment-body {
	-webkit-padding-start: 4%;
	padding-inline-start: 4%;
	max-width: calc( 44rem + 4%);
}

.comment-list li.comment.depth-3 .comment-body {
	-webkit-padding-start: 8%;
	padding-inline-start: 8%;
	max-width: calc( 44rem + 8%);
}

.comment-list li.comment.depth-4 .comment-body {
	-webkit-padding-start: 12%;
	padding-inline-start: 12%;
	max-width: calc( 44rem + 12%);
}

.comment-list li.comment.depth-5 .comment-body {
	-webkit-padding-start: 16%;
	padding-inline-start: 16%;
	max-width: calc( 44rem + 16%);
}

.comment-list li.comment.depth-6 .comment-body {
	-webkit-padding-start: 20%;
	padding-inline-start: 20%;
	max-width: calc( 44rem + 20%);
}

.comment-list li.comment.depth-7 .comment-body {
	-webkit-padding-start: 24%;
	padding-inline-start: 24%;
	max-width: calc( 44rem + 24%);
}

.comment-list li.comment.depth-8 .comment-body {
	-webkit-padding-start: 28%;
	padding-inline-start: 28%;
	max-width: calc( 44rem + 28%);
}

.comment-list li.comment.depth-9 .comment-body {
	-webkit-padding-start: 32%;
	padding-inline-start: 32%;
	max-width: calc( 44rem + 32%);
}

.comment-list li.comment.depth-10 .comment-body {
	-webkit-padding-start: 36%;
	padding-inline-start: 36%;
	max-width: calc( 44rem + 36%);
}

.comment-list .bypostauthor .avatar {
	box-shadow: 0.4rem 0.4rem 0 var(--foreground-color, #000);
}

.comment-list .reply,
.comment-list .edit-link {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	font-family: var(--font-meta);
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.1em;
}

.comment-list .children {
	list-style-type: none;
	padding: 0;
	margin: 0;
	clear: both;
	position: relative;
}

.comment-list .children li:last-child {
	margin: 0;
}

#respond {
	clear: both;
	margin-bottom: 3rem;
}

#respond p {
	position: relative;
}

#respond p.comment-form-author input,
#respond p.comment-form-author textarea,
#respond p.comment-form-email input,
#respond p.comment-form-email textarea,
#respond p.comment-form-comment input,
#respond p.comment-form-comment textarea,
#respond p.comment-form-url input,
#respond p.comment-form-url textarea {
	width: 100%;
}

#respond p.comment-form-author,
#respond p.comment-form-email,
#respond p.comment-form-url {
	max-width: 44rem;
}

#respond p.form-submit {
	margin-top: 0.75rem;
	margin-bottom: 0.75rem;
}

#respond p.logged-in-as {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	font-family: var(--font-meta);
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.1em;
}

#respond p.comment-form-cookies-consent label,
#respond p.post-subscription-form label,
#respond p.comment-subscription-form label {
	display: inline;
}

#respond p.comment-notes,
#respond p.logged-in-as {
	margin-bottom: 1.5rem;
}

#respond p.comment-notes #email-notes {
	display: block;
}

#respond p.comment-notes .required {
	font-weight: bold;
}

.content-comments {
	padding: 3rem 0;
}

@media (min-width: 1200px) {
	.content-comments {
		padding: 7.5rem 0;
	}
}

.content-comments .no-comments {
	background: var(--foreground-color, #000);
	color: var(--foreground-contrast-color, #fff);
	padding: 1.5rem 1.5rem;
}

/*!
 * 3.4 - Footer
 */
.site-footer {
	padding: 1.5rem 1.5rem 3rem 1.5rem;
	content-visibility: auto;
	contain-intrinsic-size: 40rem;
}

.site-footer .sep {
	margin: 0 0.5em;
}

.site-footer .site-info {
	overflow: hidden;
}

.site-footer a {
	font-weight: bold;
}

/*!
 * 3.5 - General Properties
 */
.container {
	width: 100%;
	max-width: 69rem;
	margin: 0 auto;
}

.main-content {
	padding: 0 1.5rem;
}

/*!
 * 3.6 - Header
 */
.site-header {
	position: relative;
	padding-bottom: 4.5rem;
	background-size: cover;
	background-position: center;
}

@media (min-width: 47rem) {
	.site-header {
		padding-bottom: 6rem;
	}
}

@media (min-width: 1200px) {
	.site-header {
		padding-bottom: 12rem;
	}
}

.has-header-image .site-header {
	--foreground-color: #fff;
	--foreground-contrast-color: #000;
	margin-bottom: 4.5rem;
}

.has-header-image .site-header:before {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	background: rgba(0, 0, 0, 0.3);
}

.site-header .site-header-content {
	z-index: 50;
	position: relative;
	padding: 1.5rem 1.5rem;
}

.site-header .site-header-content > * + * {
	margin-top: 0.75rem;
}

.site-header .custom-logo-link img {
	width: auto;
}

.site-header .branding .site-title a,
.site-header .branding .site-title {
	font-family: var(--font-title);
	font-size: 26px;
	font-size: 1.625rem;
	line-height: 1.2;
	font-weight: bold;
	margin: 0;
}

.site-header .branding .site-title a {
	text-decoration: none;
}

.site-header .branding .site-title a:focus, .site-header .branding .site-title a:hover {
	text-decoration: underline;
}

.site-header .branding .site-description {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	font-family: var(--font-meta);
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	margin: 0;
}

.site-header .search-link {
	display: flex;
	align-items: center;
	padding: 1.5rem 3rem;
	background: var(--foreground-color, #000);
	color: var(--foreground-contrast-color, #fff);
}

.site-header .search-link .icon {
	height: 1.5rem;
	width: 1.5rem;
	-webkit-margin-end: 0.75rem;
	margin-inline-end: 0.75rem;
}

@media (min-width: 47rem) {
	.site-header .search-link {
		justify-content: center;
		color: var(--foreground-color, #000);
		width: 3rem;
		height: 3rem;
		margin: 0;
		position: absolute;
		top: 1.5rem;
		right: 1.5rem;
		left: auto;
		background: transparent;
		padding: 0;
	}
	.site-header .search-link span {
		display: none;
	}
	.site-header .search-link .icon {
		margin: 0;
	}
}

.site-header .menu-toggle {
	text-align: start;
	display: block;
	width: 100%;
}

@media (min-width: 47rem) {
	.site-header .menu-toggle {
		display: none;
	}
}

/**
 * Short header.
 */
.header-height-0 .site-header {
	padding-bottom: 0;
}

/**
 * Full height header.
 */
.header-height-2 .site-header {
	padding-bottom: 3rem;
	min-height: 100vh;
}

/**
 * Center Header.
 */
.header-layout-1 .site-header .site-header-content {
	flex-direction: column;
	align-items: center;
}

.header-layout-1 .site-header .custom-logo-link img {
	margin: 0 auto;
}

.header-layout-1 .site-header .branding {
	grid-column: 1/-1;
	text-align: center;
}

.header-layout-1 .site-header .menu-primary {
	padding: 0;
}

.header-layout-1 .site-header .menu-primary .menu-wrap {
	text-align: center;
}

/**
 * Fixed Sidebar Header.
 */
@media (min-width: 47rem) {
	.header-layout-2 {
		--wp-alignfull-size: 90vw;
		-webkit-padding-start: 10%;
		padding-inline-start: 10%;
	}
	.header-layout-2 .branding {
		position: fixed;
		top: 0;
		left: 0;
		bottom: 0;
		width: 10%;
		padding: 3rem 0.75rem;
		margin: 0;
		transform: rotate(180deg);
		text-align: end;
		display: flex;
		justify-content: center;
		flex-direction: row-reverse;
		z-index: 75;
	}
	.header-layout-2 .branding > * {
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
	}
	.header-layout-2.admin-bar .branding {
		top: 32px;
	}
	.header-layout-2 .search-link {
		order: 999;
	}
	.header-layout-2 .menu {
		grid-column: 1/2;
	}
}

/*!
 * 3.7 - Navigation
 * Main website navigation.
 */
.menu-primary {
	display: none;
}

.menu-primary > ul {
	list-style-type: none;
	margin: 0;
	padding: 0.75rem 1.5rem;
}

.menu-primary > ul > .current-menu-item {
	background: var(--foreground-color, #000);
	color: var(--foreground-contrast-color, #fff);
	box-shadow: 0.4rem 0.4rem 0 var(--foreground-color, #000);
}

@media (min-width: 47rem) {
	.menu-primary > ul {
		padding: 0;
	}
}

.menu-primary ul {
	display: block;
	background: var(--foreground-color, #000);
	color: var(--foreground-contrast-color, #fff);
}

.menu-primary ul li {
	position: relative;
	margin: 0;
}

.menu-primary ul ul {
	-webkit-padding-start: 2.5rem;
	padding-inline-start: 2.5rem;
	margin: 0;
	list-style-type: square;
}

.menu-primary ul ul a {
	-webkit-padding-start: 0;
	padding-inline-start: 0;
}

.menu-primary ul ul ul {
	-webkit-padding-start: 1.5rem;
	padding-inline-start: 1.5rem;
}

.menu-primary ul a {
	padding: 0.5rem 1.5rem;
	color: currentColor;
	text-decoration: none;
	display: block;
}

.menu-primary ul a:focus, .menu-primary ul a:hover {
	text-decoration: underline;
}

.menu-primary.menu-on {
	display: block;
}

@media (min-width: 47rem) {
	.menu-primary {
		display: block;
	}
	.menu-primary .menu-wrap {
		margin-left: -1.5rem;
		margin-right: -1.5rem;
	}
	.menu-primary .menu-wrap ul {
		text-align: start;
		margin: 0;
		color: var(--foreground-contrast-color, #fff);
	}
	.menu-primary .menu-wrap .sub-menu {
		-webkit-padding-start: 1.5rem;
		padding-inline-start: 1.5rem;
	}
	.menu-primary > .menu-wrap {
		background: transparent;
		color: var(--foreground-color, #000);
	}
	.menu-primary > .menu-wrap > li {
		display: inline-block;
	}
	.menu-primary > .menu-wrap > li > a {
		font-weight: bold;
		line-height: 2.5;
		display: inline;
	}
	.menu-primary > .menu-wrap > li.menu-item-has-children > a {
		-webkit-padding-end: 2.25rem;
		padding-inline-end: 2.25rem;
	}
	.menu-primary > .menu-wrap > li.menu-item-has-children:after {
		font-family: var(--font-monospace);
		content: "\25BC";
		font-size: 12px;
		position: absolute;
		right: 1rem;
		top: 30%;
	}
	.menu-primary > .menu-wrap > li.menu-item-has-children > .sub-menu {
		display: none;
	}
	.menu-primary > .menu-wrap > li.menu-item-has-children:focus-within > .sub-menu, .menu-primary > .menu-wrap > li.menu-item-has-children:hover > .sub-menu {
		display: block;
		position: absolute;
		padding-top: 0.375rem;
		padding-bottom: 0.375rem;
		top: 100%;
		width: 16rem;
		z-index: 100;
		right: 0;
		list-style-type: none;
	}
}

/*!
 * 3.8 - Numbered Pagination
 */
.pagination {
	margin: 3rem 0;
	clear: both;
}

@media (min-width: 47rem) {
	.pagination {
		margin: 6rem 0;
	}
}

@media (min-width: 1200px) {
	.pagination {
		margin: 7.5rem 0;
		font-size: 26px;
		font-size: 1.625rem;
		line-height: 1.5;
	}
}

.pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

@media (min-width: 1200px) {
	.pagination .nav-links:before, .pagination .nav-links:after {
		content: '';
		background: var(--foreground-color, #000);
		width: 1.5rem;
		display: block;
	}
}

.pagination .nav-links > span,
.pagination .nav-links > a {
	color: var(--foreground-contrast-color, #fff);
	background: var(--foreground-color, #000);
	padding: 0.75rem 1.5rem;
	display: inline-block;
}

.pagination .current {
	font-weight: bold;
}

/*!
 * 3.9 - Pagination
 */
.post-navigation a {
	text-decoration: none;
}

.image-navigation,
.comment-navigation,
.post-navigation {
	clear: both;
	margin: 3rem 0;
	font-weight: bold;
}

@media (min-width: 47rem) {
	.image-navigation,
	.comment-navigation,
	.post-navigation {
		font-size: 26px;
		font-size: 1.625rem;
		line-height: 1.5;
	}
}

.image-navigation .meta-nav,
.comment-navigation .meta-nav,
.post-navigation .meta-nav {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	font-family: var(--font-meta);
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	display: block;
	font-weight: normal;
}

.image-navigation .post-title,
.comment-navigation .post-title,
.post-navigation .post-title {
	text-decoration: underline;
	display: block;
}

.image-navigation .post-title:hover,
.comment-navigation .post-title:hover,
.post-navigation .post-title:hover {
	text-decoration: none;
}

.image-navigation .nav-links,
.comment-navigation .nav-links,
.post-navigation .nav-links {
	display: grid;
	grid-gap: 1.5rem;
	grid-row-gap: 1.5rem;
}

.image-navigation .nav-links .nav-parent,
.comment-navigation .nav-links .nav-parent,
.post-navigation .nav-links .nav-parent {
	grid-column: 1/-1;
	font-weight: bold;
}

@media (min-width: 47rem) {
	.image-navigation .nav-links,
	.comment-navigation .nav-links,
	.post-navigation .nav-links {
		grid-template-columns: 1fr 1fr;
	}
	.image-navigation .nav-links .nav-next,
	.comment-navigation .nav-links .nav-next,
	.post-navigation .nav-links .nav-next {
		text-align: end;
	}
}

/*!
 * 3.10 - Page Templates
 */
.page-template-blog .main-content {
	margin-bottom: 4.5rem;
}

.sidebar {
	margin-top: 7.5rem;
	margin-bottom: 4.5rem;
	display: flex;
	flex-wrap: wrap;
}

@media (min-width: 1200px) {
	.sidebar {
		margin-top: 15rem;
	}
}

.widget {
	width: 100%;
	flex-basis: 20rem;
	flex-grow: 1;
	padding: 0.75rem 1.5rem;
	overflow: hidden;
	margin-bottom: 3rem;
	overflow-wrap: break-word;
	word-wrap: break-word;
}

.widget .widget-title {
	font-size: 32px;
	font-size: 2rem;
	line-height: 1.25;
	margin-bottom: 0.75rem;
	font-weight: bold;
}

.widget ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.widget ul ul {
	list-style-type: square;
	-webkit-margin-start: 1.5rem;
	margin-inline-start: 1.5rem;
}

.widget ul:last-child {
	margin-bottom: 0;
}

.widget iframe {
	max-width: 100%;
	min-width: 0 !important;
	contain: strict;
}

/*!
 * 3.11 - Body
 * Site content, blog posts etc
 */
/* single post and page */
.content-single .entry-single {
	max-width: 44rem;
}

.page-template-full-width .content-single .entry-single {
	max-width: inherit;
}

.content-single .entry-single > h1,
.content-single .entry-single > h2,
.content-single .entry-single > h3 {
	margin-top: 3rem;
	clear: both;
}

.content-single .entry-single .alignwide {
	width: calc( var( --wp-alignfull-size ) - 3rem);
}

@media (min-width: 69rem) {
	.content-single .entry-single .alignwide {
		width: 66rem;
	}
}

.content-single .entry-single .alignfull {
	-webkit-margin-start: -1.5rem;
	margin-inline-start: -1.5rem;
	width: var(--wp-alignfull-size);
	max-width: 100vw;
}

@media (min-width: 69rem) {
	.content-single .entry-single .alignfull {
		-webkit-margin-start: calc( ( var( --wp-alignfull-size ) - 66rem ) / -2);
		margin-inline-start: calc( ( var( --wp-alignfull-size ) - 66rem ) / -2);
	}
}

.content-single .alignleft {
	transform: translateX(-1.5rem);
}

.attachment .attachment-image {
	text-align: center;
	margin-bottom: 3rem;
}

.attachment .attachment-description {
	margin-bottom: 3rem;
}

.attachment .attachment-caption {
	font-style: italic;
}

/* child pages (on child page template) */
.child-page {
	margin-bottom: 3rem;
}

.child-page h2 {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 1.7;
}

.child-page:nth-child(2n + 2) {
	-webkit-padding-end: 0;
	padding-inline-end: 0;
}

.child-page:nth-child(2n + 1) {
	clear: both;
	-webkit-padding-start: 0;
	padding-inline-start: 0;
}

.page-404 {
	max-width: 44rem;
}

.entry-children {
	margin-top: 4.5rem;
}
