/*!
Theme Name: NHFV
Theme URI: http://nhfv.org
Author: Joe Dolson
Author URI: http://nhfv.org
Description: Description
Version: 0.1.2
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: nhfv
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

NHFV is based on Underscores https://underscores.me/, (C) 2012-2017 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/

:root {
	--color-red: #8E040B;
	--color-red-80: #8E040Bcc;
	--color-light-blue: #63C8E6;
	--color-medium-blue: #095666;
	--color-medium-blue-80: #095666cc;
	--color-dark-blue: #1A1E4C;
	--color-dark-blue-80: #1a1e4ccc;
	--color-black: #111;
	--color-white: #fff;
	--color-dark-gray: #444;
	--color-light-gray: #bbb;
	--color-very-light-gray: #0000000a;
}

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
/* normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
	line-height: 1.15; /* 1 */
	-webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
	margin: 0;
}

/* Google Translate Overrides */
html, body{
    min-height: 0!important;
    height: auto!important;
    position: inherit!important;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
	font-size: 2.4rem;
	margin: 0.67em 0;
}

h2 {
	font-size: 2rem;
}


/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
	box-sizing: content-box; /* 1 */
	height: 0; /* 1 */
	overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
	font-family: monospace, monospace; /* 1 */
	font-size: 1em; /* 2 */
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
	background-color: transparent;
	transition: all 200ms;
}

button, input {
	transition: all 200ms;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
	border-bottom: none; /* 1 */
	text-decoration: underline; /* 2 */
	text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
	font-family: monospace, monospace; /* 1 */
	font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
	font-family: inherit; /* 1 */
	font-size: 100%; /* 1 */
	line-height: 1.15; /* 1 */
	margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

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

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
	padding: 0.35em 0 0.625em;
	border: none;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */

legend {
	box-sizing: border-box; /* 1 */
	color: inherit; /* 2 */
	display: table; /* 1 */
	max-width: 100%; /* 1 */
	padding: 0; /* 3 */
	white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
	box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

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

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
	-webkit-appearance: textfield; /* 1 */
	outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
	display: none;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
optgroup,
textarea {
	color: var(--color-dark-gray);
	font-family: 'Hind', Tahoma, Verdana, Arial, sans-serif;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 1.5;
}

h1, h2, h3, h4, .slider-content p {
	font-family: 'Playfair Display', Helvetica, Arial, serif;
	margin-top: 0;
}

h5, h6 {
	margin-top: 0;
}

.entry-content h3 {
	color: var(--color-dark-gray);
	font-size: 18px;
	font-size: 1.125rem;
	margin-bottom: .5rem;
}

.is-layout-flow > * {
	margin-block-end: 1rem;
}

.safe-svg-inside {
	max-width: 100%;
	height: auto !important;
}

p {
	margin-bottom: 1rem;
	margin-block-end: 1rem;
}

dfn, cite, em, i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: var(--color-very-light-gray);
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code, kbd, tt, var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr, acronym {
	border-bottom: 1px dotted var(--color-dark-gray);
	cursor: help;
}

mark, ins {
	background: #fff9c0;
	color: black;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

*,
*:before,
*:after {
	/* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

body {
	background-color: var(--color-white);
}

hr {
	background-color: var(--color-light-gray);
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul, ol {
	margin: 0 0 1rem;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

#content ul.program {
	margin: 0 0 1.5em 0;
	list-style-type: none;
	padding: 0;
}

#content li > ul {
	margin-left: 0;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto;
	/* Make sure images are scaled correctly. */
	max-width: 100%;
	/* Adhere to container width. */
}

figure {
	margin: 0;
	/* Extra wide images within figure tags don't overflow the content area. */
}

figure.wp-block-post-featured-image figcaption {
	padding: 10px 20px;
	margin-top: 0;
}

.wp-block-latest-posts__list li {
	margin-bottom: 8px;
}

.wp-block-latest-posts__list time {
	color: var(--color-dark-gray);
	font-size: .875rem;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
	border-collapse: collapse;
	background: rgba( 255, 255, 255, .5 );
}

.wp-block-table tr td {
	min-width: 6em;
	vertical-align: top;
}

.wp-block-table td, .wp-block-table th {
	border: 1px solid var(--color-light-gray);
	padding: 6px 5px 1px;
}

.wp-block-table th {
	text-align: left;
	background: var(--color-very-light-gray);
}

.wp-block-table td strong {
	font-size: 1.1em;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 2px solid var(--color-dark-blue);
	border-radius: 4px;
	background: var(--color-light-blue);
	color: var(--color-black);
	line-height: 1;
	padding: 12px 24px;
	font-size: 1rem;
}

.search-form .search-submit,
.header-nav button {
	border: 0;
	padding: 10px 6px;
}

input[disabled] {
	border: none;
	color: #c6c6c7;
	background: #676767;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: var(--color-white);
}

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: var(--color-black);
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea,
select {
	color: var(--color-dark-gray);
	border: 1px solid var(--color-light-gray);
	border-radius: 3px;
	padding: 6px 6px 5px;
	background: var(--color-white);
}

select {
	padding: 6px 6px 5px 6px;
	max-width: 100%;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus,
select:focus {
	color: var(--color-black);
	outline: 2px solid var(--color-black);
	outline-offset: 2px;
}

#footer-widgets input[type="text"]:focus,
#footer-widgets input[type="email"]:focus,
#footer-widgets input[type="url"]:focus,
#footer-widgets input[type="password"]:focus,
#footer-widgets input[type="search"]:focus,
#footer-widgets input[type="number"]:focus,
#footer-widgets input[type="tel"]:focus,
#footer-widgets input[type="range"]:focus,
#footer-widgets input[type="date"]:focus,
#footer-widgets input[type="month"]:focus,
#footer-widgets input[type="week"]:focus,
#footer-widgets input[type="time"]:focus,
#footer-widgets input[type="datetime"]:focus,
#footer-widgets input[type="datetime-local"]:focus,
#footer-widgets input[type="color"]:focus,
#footer-widgets textarea:focus,
#footer-widgets select:focus {
	outline: 2px solid var(--color-white);
}


textarea {
	width: 100%;
}

label {
	display: block;
	font-weight: 700;
}

label span:not(.wpcf7-checkbox label span, .wpcf7-radio label span) {
	font-weight: 400;
	color: var(--color-red);
}

.wp-block-contact-form-7-contact-form-selector {
	max-width: 920px;
	margin: 0 auto;
}

legend {
	font-weight: 700;
	padding-right: 5px;
}

fieldset {
	border-top: 1px solid var(--color-medium-blue);
}

section,
article {
}

.search-wrapper {
	position: relative;
}

#masthead .has-search-form {
	display: flex;
	background: var(--color-medium-blue);
	padding: 1.5rem;
	width: 100%;
}

#masthead .hidden.has-search-form {
	display: none;
}

.search-form input[type="search"] {
	border-radius: 3px 0 0 3px;
	font-size: 1.4rem;
	padding: 12px;
}

.search-form .search-submit {
	border-radius: 0 3px 3px 0;
	font-size: 1.25rem;
	padding: 12px 24px
}

button.toggle-search {
	padding: 2px;
	margin-top: 2px;
}

button.toggle-search:focus,
button.toggle-search:hover {
	outline: 2px solid #fff;
	outline-offset: 2px;
}

button.toggle-search .dashicons {
	font-size: 28px;
	width: 28px;
	height: 28px;
}

.toggled .search-form,
#main .search-form {
	display: grid;
	grid-template-columns: 1fr auto;
	width: 100%;
}

.toggled .search-form input[type="search"],
#main .search-form input[type="search"] {
	border-radius: 3px 0 0 3px;
	border-right: none;
}

.search-results article .wp-post-image {
	float: left;
	margin-right: 1em;
	margin-bottom: 1em;
}

.search-results article:after {
	content: '';
	display: block;
	clear: both;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
	color: var(--color-medium-blue);
	border-bottom: 1px solid transparent;
}

.widget-area h2 {
	margin-bottom: 0;
}

#secondary.widget-area a[aria-current=true] {
	color: var(--color-dark-blue);
	font-weight: 700;
}

a:hover, a:focus, a:active {
	color: var(--color-dark-blue);
	border-bottom: 2px solid;
	text-decoration: none;
	outline-offset: 2px;
}

a text {
	text-decoration: underline;
	fill: var(--color-medium-blue) !important;
}

a:hover text, a:focus text, a:active text {
	fill: var(--black) !important;
	text-decoration: none;
}

.wp-block-image .size-full:not(.is-resized),
.wp-block-image .size-full:not(.is-resized) img {
	width: 100%;
}

.wp-block-image {
	margin-bottom: 20px;
}

.wp-block-columns .wp-block-image figcaption,
.wp-block-group .wp-block-image figcaption,
.wp-block-columns .wp-block-image,
.wp-block-group .wp-block-image {
	margin-bottom: 0;
}

.wp-block-file {
	background: transparent;
	padding: 0;
}

.wp-block-file a.wp-element-button:hover,
.wp-block-file a.wp-element-button:focus,
.wp-block-file a.wp-element-button:active {
	color: var(--color-white);
	border-bottom: inherit;
	outline: 2px solid;
	outline-color: var(--color-medium-blue);
}

.wp-block-file:not(.wp-element-button) {
	font-size: 1rem;
}

a:hover, a:active {
	outline: 0;
}

.entry-meta {
	font-size: 1rem;
	color: #555;
	clear: both;
	padding: .5rem;
}

.menu-footer-container {
	padding: 0;
	margin: 0 0 1.5em;
}

#footer-menu {
	margin: 0;
	padding: 0;
	clear: both;
	font-size: .9em;
}

/* Social Menu */
#social-menu { display: flex; list-style: none; margin: 0; padding: 0; align-items: center; justify-content: end; }
#social-menu a:before { font-family: dashicons; vertical-align: middle; margin: 0 6px; padding: 0; color: var(--color-white); }
#social-menu a { text-decoration: none; font-size: 2em; line-height: 1; border-bottom: 0px solid; color: var(--color-white); }
#social-menu a:hover:before, .social-menu a:focus:before { background: var(--color-white); color: var(--color-black); border-radius: 2px; border-bottom: 0px solid; }

/* dashicon fonts */
#social-menu a[href*="facebook.com"]:before { content: "\f304"; color: #4267b2; }
#social-menu a[href*="twitter.com"]:before { content: "\f301"; color: #1da1f2; }
#social-menu a[href*="youtube.com"]:before { content: "\f19b"; color: #c4302b; }
#social-menu a[href*="instagram.com"]:before { font-family: icomoon; content: "\e600"; color: #405de6; display: none; }

.icon-mail:before {
	content: "\ea83";
}
.icon-instagram:before {
	content: "\e600";
}
.icon-youtube3:before {
	content: "\ea99";
}
.icon-vimeo2:before {
	content: "\ea9d";
}
.icon-dropbox:before {
	content: "\eaaf";
}
.icon-tumblr2:before {
	content: "\e604";
}
.icon-linkedin:before {
	content: "\e605";
}
.icon-pinterest2:before {
	content: "\e607";
}
.icon-paypal:before {
	content: "\e608";
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous,
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	margin-top: 1em;
	width: 50%;
	text-align: center;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.home #main h1,
.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: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
	position: fixed !important;
	/* Above WP toolbar. */
}

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

#page {
	margin: 0 auto;
	position: relative;
}

#content {
	background: transparent; /* Inherited from #page */
}

#masthead #breadcrumbs {
	padding: 6px 15px;
	font-size: .9rem;
	margin: 0;
	background: var(--color-very-light-gray);
	width: 100%;
	justify-content: start;
}

#secondary, #main {
	background: transparent; /* Inherited from #page */
}

#main button:hover,
#main input[type="button"]:hover,
#main input[type="reset"]:hover,
#main input[type="submit"]:hover {
	border-color: var(--color-black);
	background: var(--color-medium-blue);
	color: var(--color-white);
}

#main input[disabled]:hover {
	border: none;
	color: #c6c6c7;
	background: #676767;
}

.flex-layout {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	margin-bottom: 30px;
}

.library-cart .flex-layout {
	margin-bottom: 0;
	align-items: center;
}

.library-cart .flex-layout p {
	padding: 0;
}

#secondary h3, #secondary h4 {
	margin-bottom: .5em;
}

#secondary .widget li h3 {
	margin-bottom: 0;
	border-bottom: 0px solid;
	font-size: 1em;
}

#secondary ul {
	margin: 0;
	padding: 0;
}

#secondary li {
	position: relative;
	margin: 0;
	padding: .5em 0 .4em;
	list-style-type: none;
	font-size: .95rem;
}

h1 {
	margin: 0 auto;
	width: fit-content;
	padding: 1rem 2.5rem;
	text-shadow: 0 0 2rem var(--color-white);
	text-align: center;
	border-radius: 3px;
	max-width: 960px;
}

h1 .subtitle {
	display: block;
	font-size: 1.2rem;
	font-weight: 400;
	color: var(--color-dark-gray);
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after {
	clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
	margin: 0 0 1.5em;
	/* Make sure select elements fit in widgets. */
}

.widget select {
	max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
#main, #secondary {
	margin: 0;
}

#secondary {
	background: rgba( 255, 255, 255, .5 );
}

.nav-links {
	margin-bottom: 1em;
	display: flex;
	align-items: center;
}

.nav-next a, .nav-previous a {
	display: flex;
	align-items: center;
	gap: 12px;
	text-decoration: none;
	border-bottom: 2px solid transparent;
	text-align: left;
}

.nav-links a span:not(.dashicons) {
	text-decoration: underline;
}

.nav-links a:hover span:not(.dashicons) {
	text-decoration: none;
}

.nav-next a {
	justify-content: end;
}

.site-branding {
	max-width: 300px;
	margin: 0 auto;
	color: var(--color-dark-blue);
	text-align: center;
}

a.logo-link:hover, a.logo-link:focus {
	outline: 2px solid var(--color-light-blue);
	outline-offset: 6px;
	background: var(--color-very-light-gray);
	border-radius: 6px;
}

.site-branding img {
	width: auto;
	height: auto;
	padding: 0;
	display: block;
	position: relative;
	top: .25rem;
}

ul.columns {
	column-count: 4;
}

@media screen and ( max-width: 800px ) {
	ul.columns {
		column-count: 2;
	}
}

@media screen and (min-width: 55em) {
	.site-branding {
		max-width: 100%;
		text-align: left;
	}
	#masthead .header-contents {
		display: grid;
		grid-template-columns: 30% 1fr;
		align-items: center;
		gap: 24px;
		margin: 1rem auto;
		position: relative;
	}
}

.hentry.has-post-thumbnail {
	position: relative;
}

.hentry.odd {
	background: rgba( 240,240,240, .9 );
}

.single .hentry.odd {
	background: transparent;
}

#content .archive-links {
	padding: 0;
	margin: 0 0 1.5em;
}

#content .archive-links li {
	display: inline-block;
	padding: 6px;
}

#colophon {
	font-size: 1em;
	display: grid;
	grid-template-columns: 1fr 10em;
	padding: 1em;
	align-items: center;
}

#colophon,
#footer-widgets {
	background: var(--color-dark-blue);
	color: var(--color-white);
	padding: 30px 1em;
	width: 100%;
}

#footer-widgets {
	border-top: 12px solid var(--color-medium-blue);
}

#footer-widgets .is-layout-flex {
	gap: 48px;
}

#colophon a,
#footer-widgets a:not(.wp-block-button__link) {
	color: var(--color-white);
}

#colophon a:hover,
#colophon a:focus {
	color: var(--color-white);
}

.wrapper {
	margin: 0 auto;
}

.wp-block-buttons {
	text-align: center;
}

.wp-block-button__link {
	background: var(--color-light-blue);
	color: var(--color-black);
	border-bottom: 0;
}

.wp-block-button__link:focus,
.wp-block-button__link:hover {
	outline: 2px solid var(--color-dark-blue);
	outline-offset: 2px;
	color: var(--color-black);
	border-bottom: 0;
}

/* Override Gutenberg core styles. */
.wp-block-column {
	overflow-wrap: normal;
	word-break: normal;
}

.wp-block-column > * {
	margin-top: 0;
}

.wp-block-column.has-background > *:not(h3) {
	padding: 0 1rem;
}

#wrapper .is-style-rounded img {
	border-radius: 20px;
}

figcaption {
	font-size: 14.5px;
	font-size: .9rem;
}

#content .alignfull {
	max-width: calc( 100% - 60px ) !important;
	padding: 30px;
	margin-bottom: 60px;
}

#content .alignwide:not(.alignwide .alignfull) {
	padding: 30px;
}

#content .alignfull.has-background {
	max-width: 100% !important;
}

#content .alignwide {
	max-width: 1280px !important;
	margin: 0 auto;
}

#content .alignfull .wp-block-columns:not(.alignfull,.alignwide) {
	max-width: 960px;
	margin: 3rem auto;
	column-gap: 120px;
}

#content .alignfull .wp-block-columns .wp-block-column .wp-block-columns {
	margin: 1rem auto;
}

#content .alignfull .wp-block-columns:not(.alignfull,.alignwide) img {
	width: auto;
	height: auto;
}

#content .alignfull .wp-block-columns:not(.alignfull,.alignwide) .wp-block-column {
	align-content: center;
}

figure.aligncenter {
	text-align: center;
}

#content .nhfv-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	background: var(--color-very-light-gray);
	margin: 1.5rem auto;
	align-items: end;
	box-shadow: 3px 3px 3px #ccc;
}

#content .nhfv-filters > * {
	max-width: 100%;
}

#content .nhfv-filters fieldset {
	padding: 0;
	border: none;
}

#content .nhfv-filters fieldset label {
    padding: .25rem .5rem;
    float: left;
    text-align: center;
    cursor: pointer;
	display: inline-block;
	width: 50%;
    text-decoration: underline;
	min-width: 5rem;
}

#content .nhfv-filters fieldset input[type="radio"]:checked + label {
    background-color: #0073aa;
	outline: 1px solid #00a0d2;
	text-decoration: none;
    cursor: text;
	color: #fff;
}

#content .nhfv-filters fieldset input[type="radio"]:checked + label:before {
	font-family: dashicons;
	content: "\f147";
	color: #fff;
	margin-right: 2px;
	vertical-align: bottom;
}

#content .nhfv-filters fieldset label:hover,
#content .nhfv-filters fieldset label:focus {
    background-color: #ddd;
    outline: #aaa 1px solid;
}

#content .nhfv-filters fieldset input {
    position: absolute !important;
    clip: rect(1px, 1px, 1px, 1px);
    overflow: hidden;
}

#content .alignwide.has-background {
	max-width: 1220px;
	padding: 30px;
}

.wp-block-file > a:nth-of-type(1):before {
	font-family: dashicons;
	content: "\f316";
	margin-right: 3px;
	vertical-align: middle;
	color: var(--color-dark-gray);
}

/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
	display: block;
}

.updated:not(.published) {
	display: none;
}

.entry-footer,
.page-content,
.entry-content {
	margin: 0;
	padding: 1rem;
}

.archive-cards .entry-footer {
	padding: 1rem .5rem;
}

.entry-summary {
	border-bottom: 2px solid var(--color-medium-blue);
}

@media screen and (min-width: 55em) {
	.entry-content {
		padding: 1.5rem 0;
	}
}

section.entry-content {
	margin-top: 0;
}

.wp-block-group.alignwide blockquote,
.posts-navigation,
.post-navigation,
.wp-pagenavi,
#comments,
.mcm_people .entry-content,
.mcm_book .entry-content,
.mcm_category_resources-pass-it-on .entry-content,
.mejs-container,
.entry-footer > *,
.entry-content > * {
	margin: 0 auto 1.5rem;
	max-width: 960px !important;
}

blockquote {
	font-size: 1.4rem;
	font-style: italic;
}

blockquote::before {
	content: "\f122";
	font-family: dashicons;
	text-align: center;
	display: block;
	font-size: 3rem;
	opacity: .5;
}

blockquote cite {
	display: block;
	text-align: right;
	font-size: 1.2rem;
	font-weight: 700;
}

.entry-content .wp-block-columns:last-of-type {
	margin-bottom: 0;
}

.single-mcm_resources .mcm_category_resources-pass-it-on .entry-content,
.single-mcm_people .mcm_people .entry-content,
.single-mcm_book .mcm_book .entry-content {
	display: grid;
	grid-template-columns: 300px 1fr;
	gap: 30px;
}

.entry-content > h2,
.entry-content > h3,
.entry-content > h4 {
	margin-bottom: .75rem;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}


/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100% !important;
	width: 100%;
}

/* Make sure logo link wraps around logo image. */
.logo-link {
	display: inline-block;
	border-bottom: none !important;
	text-decoration: none;
}

@media screen and (max-width: 55em) {
	.logo-link {
		display: block;
		width: calc( 100% - 16px );
		margin: 0 auto;
	}

	#content .alignwide:not(.alignwide .alignfull) {
		padding: 15px;
	}
	.wp-block-columns.landing, .wp-block-group.landing .wp-block-columns {
		gap: 30px;
	}
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.wp-block-gallery,
.blocks-gallery-grid {
	width: 100%;
}

.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

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

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

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

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

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

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

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

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

.gallery-caption {
	display: block;
}

#footer-menu {
	list-style: none;
	text-align: center;
}

#footer-menu li {
	margin: 12px;
	display: inline-block;
}

#utility-menu {
	list-style-type: none;
	padding: 0;
	margin: 0;
	display: flex;
	align-items: center;
	gap: 24px;
}

#utility-menu li a {
	color: var(--color-white);
	display: flex;
	align-items: center;
	gap: 4px;
	text-decoration: none;
	border-bottom: 2px solid transparent;
	padding-top: 6px;
}

#utility-menu li a:hover,
#utility-meny li a:focus {
	border-bottom: 2px solid var(--color-white);
}

#masthead {
	position: relative;
	z-index: 250;
	background: #fff;
}

#masthead .header-nav {
	width: 100%;
	background: var(--color-red);
	color: var(--color-white);
	padding: .5rem 1rem;
	font-size: 1rem;
	border-bottom: 2px solid var(--color-red);
}

#masthead .header-nav .contents {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	column-gap: 24px;
	row-gap: 6px;
	justify-content: right;
}

.background-image {
	position: relative;
	width: 100%;
	height: 600px;
}

.cover-background {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
}

#site-navigation, #site-navigation > div, #primary-menu, #primary-menu > li {
	height: 100%;
	align-items: center;
}

.cover-background,
.clipped-background {
	height: 600px;
}

.entry-header {
	background-color: var(--color-very-light-gray);
}

.entry-header .clipped-background {
	display: flex;
}

#main .entry-header .clipped-background > * {
	align-self: center;
	background: rgba( 255, 255, 255, .8 );
	color: var(--color-red);
	min-width: 400px;
	max-width: 90%;
	z-index: 2;
}

#main .entry-header:not(.archive-cards .entry-header) {
	margin: 0 auto 30px;
}

.landing {
	margin-bottom: 60px;
}

.landing.book-delivery .wp-block-column img {
	max-width: 150px;
	height: auto;
	margin-bottom: 30px;
}

.landing.book-delivery .wp-block-column p {
	max-width: 80%;
	margin: 0 auto;
}

.wp-block-columns.landing,
.wp-block-group.landing .wp-block-columns {
	gap: 60px;
}

.wp-block-columns.landing > .wp-block-column:nth-of-type(1),
.wp-block-group.landing .wp-block-column:nth-of-type(1) {
	align-self: center;
}

.donation {
	padding: 2rem;
	text-align: center;
	background: var(--color-very-light-gray);
}

.donation input {
	padding: 1rem;
	font-size: 1.4rem;
}

.library-cart {
	background: var(--color-very-light-gray);
	padding: 1rem;
	box-shadow: 3px 3px 3px #ccc;
}

.archive #main > .entry-header {
	margin: 60px auto;
}

.archive #content .entry-header h1 {
	font-size: 1.4rem;
	color: #555;
	text-transform: uppercase;
	font-weight: 400;
	text-align: left;
}

.archive #content .entry-header span {
	font-size: 3rem;
	text-transform: none;
	font-weight: 700;
	color: #000;
	display: block;
}

.archive-cards {
	max-width: 1280px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: repeat( 4, 1fr );
	gap: 30px;
	margin-bottom: 3rem;
}

.archive-cards.paginated-items {
	margin-bottom: 1rem;
}

.archive-cards .content-type {
	margin: 0;
	padding: 0 .5rem;
	text-transform: uppercase;
	color: #666;
	font-size: 1rem;
}

.page .archive-cards {
	grid-template-columns: repeat( 3, 1fr );
}

.archive-cards article {
	display: flex;
	flex-wrap: wrap;
	align-items: start;
	align-content: start;
	box-shadow: 3px 3px 3px #ccc;
	border: 1px solid #ddd;
	background: var(--color-white);
}

.archive-cards h4 a,
.archive-cards h3 a,
.archive-cards h2 a {
	border-bottom: 6px solid var(--color-red);
	width: 100%;
	text-decoration: none;
	display: block;
	padding: 2px;
}

.archive-cards article:nth-of-type(4n+1) h4 a,
.archive-cards article:nth-of-type(4n+1) h3 a,
.archive-cards article:nth-of-type(4n+1) h2 a {
	border-bottom: 6px solid var(--color-light-blue);
}

.archive-cards article:nth-of-type(4n+2) h4 a,
.archive-cards article:nth-of-type(4n+2) h3 a,
.archive-cards article:nth-of-type(4n+2) h2 a {
	border-bottom: 6px solid var(--color-medium-blue);
}

.archive-cards article:nth-of-type(4n+3) h4 a,
.archive-cards article:nth-of-type(4n+3) h3 a,
.archive-cards article:nth-of-type(4n+3) h2 a {
	border-bottom: 6px solid var(--color-dark-blue);
}

.page .archive-cards.single-item {
	grid-template-columns: 1fr;
}

.archive-cards .hidden {
	display: none;
}

.page .archive-cards.single-item article {
	max-width: 240px;
}

.archive-cards article .entry-title a:hover,
.archive-cards article .entry-title a:focus {
	border-color: var(--color-light-blue);
	background: #f3f3f3;
}

.archive-cards header {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

.archive-cards .library-meta {
	font-size: 1rem;
	border-top: 1px solid #ccc;
	padding: 1rem 0 0;
	margin-top: 2rem;
}

.archive-cards .entry-library-content {
	margin-bottom: 0;
}

.archive-cards .entry-content p {
	margin: 0;
}

.archive-cards header .entry-featured-thumbnail {
	order: -1;
	width: 100%;
	text-align: center;
	margin-bottom: 0;
}

.archive-cards .mcm_category_resources-pass-it-on header .entry-featured-thumbnail,
.archive-cards .mcm_book header .entry-featured-thumbnail {
	background: var(--color-white);
	padding: 1rem;
}

.archive-cards .mcm_category_resources-pass-it-on header .entry-featured-thumbnail img,
.archive-cards .mcm_book header .entry-featured-thumbnail img {
	max-height: 200px;
	min-height: 200px;
	width: auto;
	box-shadow: 0 3px 3px #aaa;
}

.archive-cards .mcm_learn_more header .entry-featured-thumbnail img {
	box-shadow: none;
}

.archive-cards .mcm_learn_more {
	border: 1px solid #333;
}

.archive-cards .mcm_learn_more .wp-block-button__link {
	border-radius: 15px;
	padding: .5rem;
	font-size: 1em;
	margin-top: 1.5em;
}

.archive-cards header .entry-title {
	font-size: 1.2rem;
	padding: .5rem;
	margin-bottom: 0;
	width: 100%;
}

#content .archive-cards header .entry-title .title {
	font-size: 1rem;
}

.archive-cards .entry-content {
	margin: 0;
	padding: .5rem;
	padding-bottom: 0;
}

.resource-pagination {
	display: flex;
	justify-content: end;
	gap: 6px;
	align-items: center;
}

.resource-pagination button {
	padding: .5rem;
	border-radius: 50%;
	width: 2.2rem;
	height: 2.2rem;
	font-size: 1.2rem;
}

.resource-pagination button[aria-pressed=true] {
	background: var(--color-very-light-gray);
}

#main .mc-main .list-event {
	margin: 0;
}

.wp-block-query figure {
	order: -1;
	border: 1px solid #eee;
	box-shadow: 3px 3px 3px #ccc;
}

.wp-block-columns.rounded .wp-block-column {
	border-radius: 32px;
}

.wp-block-group.three-image-layout {
	padding: 0 !important;
}

.wp-block-group.three-image-layout > .wp-block-group:nth-of-type(1) {
	width: 40%;
	padding: 30px;
}

.wp-block-group.three-image-layout > figure {
	background: rgba( 0,0,0, .3 );
}

.wp-block-group.three-image-layout > figure {
	width: 60%;
	position: relative; 
	padding: 3rem 0;
}

#content .wp-block-group.three-image-layout > figure.wp-block-gallery > figure.wp-block-image {
	margin: 0;
}

#content .wp-block-group.three-image-layout figure a {
	background-color: rgba( 255, 255, 255, 0 ) !important;
	border: none !important;
}

#content .wp-block-group.three-image-layout figure a:hover {
}

.wp-block-group.three-image-layout > figure > figure:nth-of-type(1) {
	transform: scale( 85% );
	margin-right: -3rem !important;
	margin-bottom: 2rem !important;
	z-index: 2;
}

.wp-block-group.three-image-layout > figure > figure img {
	border: 4px solid white;
}

.wp-block-group.three-image-layout > figure > figure:nth-of-type(1) img {
	border-radius: 100px 5px 5px 5px;
}

.wp-block-group.three-image-layout > figure > figure:nth-of-type(2) {
	margin: 3rem auto;
	transform: scale( 115% );
	z-index: 1;
}

.wp-block-group.three-image-layout > figure > figure:nth-of-type(2) img {
	border-radius: 10px;
}

.wp-block-group.three-image-layout > figure > figure:nth-of-type(3) {
	transform: scale( 70% );
	margin-left: -4rem !important;
	margin-top: 4rem !important;
	z-index: 0;
}

.wp-block-group.three-image-layout > figure > figure:nth-of-type(3) img {
	border-radius: 5px 5px 100px 5px;
}

.wp-block-group.three-image-layout.rounded > figure > figure {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.wp-block-group.three-image-layout.rounded > figure > figure img {
	border-radius: 50% !important;
}

#content .wp-block-group.three-image-layout .wp-block-button__link {
	background-color: rgba( 0,0,0,.1 ) !important;
}

.wp-block-buttons {
	margin-bottom: 1em;
}

.wp-block-button a {
	font-weight: 700;
}

strong::before {
	font-weight: 400;
	font-family: dashicons;
	margin-right: .25rem;
}

strong.telephone::before {
	content: "\f525";
	color: var(--color-medium-blue);
}

strong.url::before {
	content: "\f103";
	color: var(--color-medium-blue);
}

strong.facebook::before {
	content: "\f304";
	color: #4267B2;
}

.has-large-font-size {
	font-size: 1.8em !important;
}

.has-red-color {
	color: var(--color-red);
}
.has-light-blue-color {
	color: var(--color-light-blue);
	background: var(--black);
}
.has-medium-blue-color {
	color: var(--color-medium-blue);
}
.has-dark-blue-color {
	color: var(--color-dark-blue);
}
.has-white-color {
	color: var(--color-white);
}
.has-black-color {
	color: var(--color-black);
}
.has-light-blue-background-color a,
.has-light-blue-background-color {
	background-color: var(--color-light-blue) !important;
	color: var(--color-black) !important;
}
.has-medium-blue-background-color a,
.has-medium-blue-background-color {
	background-color: var(--color-medium-blue) !important;
	color: #fff !important;
}
.has-dark-blue-background-color a,
.has-dark-blue-background-color {
	background-color: var(--color-dark-blue) !important;
	color: var(--color-white) !important;
}
.has-red-background-color {
	background-color: var(--color-red) !important;
	color: #fff !important;
}
.has-white-background-color {
	background: var(--color-white);
}
.has-black-background-color {
	background: var(--color-black);
}

.page-template h1.has-background, .page-template h2.has-background, .page-template h3.has-background, .page-template h4.has-background, .page-template h5.has-background, .page-template h6.has-background {
	padding: .5em 1em;
}

.text {
  max-width: 750px;
  font-size: 18px;
  margin: 0 auto 50px;
}

.meta {
  color: var(--color-dark-gray);
  font-style: italic;
}

.meta a {
  color: var(--color-dark-gray);
}

hr {
  margin: 40px 0;
}

.goog-te-gadget-simple {
	border-radius: 3px;
	padding-top: 3px;
	padding-bottom: 4px;
}

.VIpgJd-ZVi9od-xl07Ob-OEVmcd {
	box-shadow: none !important;
}

.utility-dark-mode {
	display: flex;
	padding-top: .1rem;
}

.utility-dark-mode button {
	all: unset;
	background: var(--color-black);
	color: var(--color-white);
	border: 2px solid var(--color-dark-blue);
	width: 2rem;
	height: 2rem;
	display: inline-block;
	text-align: center;
}

.utility-dark-mode button:nth-of-type(1) {
	border-radius: 2rem 0 0 2rem;
	border-right: none;
}

.utility-dark-mode button:nth-of-type(2) {
	border-radius: 0 2rem 2rem 0;
	border-left: none;
}

.utility-dark-mode button span {
	border: 1px solid transparent;
	border-radius: 2rem;
	z-index: 2;
	position: relative;
}

.utility-dark-mode button[aria-pressed=true] span {
	background: var(--color-light-blue);
	border: 1px solid var(--color-dark-blue);
	color: var(--color-black);
}

.utility-dark-mode button span {
	display: inline-block;
	width: 1.875rem;
	height: 1.875rem;
}

.utility-dark-mode button span::before {
	line-height: 1.875;
}

.utility-dark-mode button:hover span,
.utility-dark-mode button:focus span  {
	background: var(--color-medium-blue);
	color: var(--color-white);
}

#nhfv-notice {
	background: var(--color-light-blue);
	color: var(--color-black);
	padding: .5rem;
	border-bottom: 4px solid var(--color-dark-blue);
	box-shadow: 0 3px 6px #cfcfcf;
}

#nhfv-notice p {
	margin: 0 auto;
	max-width: 1120px;
}

/* Tabs */
#main .wp-block-tb-tabs > ul button:hover {
	background-color: var(--color-white);
	color: #333;
	border-top-color: var(--color-light-gray);
}

#main .wp-block-tb-tabs > ul button[aria-selected="false"]:hover {
	background-color: transparent;
}

#main .wp-block-tb-tabs > ul button,
#main .wp-block-tb-tabs > ul button:active,
#main .wp-block-tb-tabs > ul button:hover,
#main .wp-block-tb-tabs > ul button:focus {
	font-weight: 400;
}

.wp-block-tb-tabs li:nth-of-type(3n+1) button {
	border-top: 6px solid var(--color-medium-blue);
}

.wp-block-tb-tabs li:nth-of-type(3n+2) button {
	border-top: 6px solid var(--color-red);
}

.wp-block-tb-tabs li:nth-of-type(3n) button {
	border-top: 6px solid var(--color-light-blue);
}

.slider {
	overflow: hidden;
	height: 600px;
}

.slider-text {
	position: absolute;
	top: 0;
	height: 600px;
	align-items: center;
	width: 100%;
	text-align: center;
	color: var(--color-black);
	display: flex;
	justify-content: space-between;
	padding: 0;
	max-width: 1280px;
	left: calc( ( 100% - 1280px ) / 2 );
}

.slider .slider-content {
	display: grid;
	grid-template-columns: 480px 1fr;
	width: 100%;
}

.slider .slider-content.has-text-right {
	grid-template-columns: 1fr 480px;
}

.slider .slider-content > div {
	font-size: 2rem;
	margin: 0;
	text-align: left;
	height: 600px;
	width: 100%;
	align-items:center;
	display: grid;
}

.slider .slider-content a {
	color: #000;
	background: var(--color-white);
	border: 1px solid var(--color-black);
	padding: 1rem 2rem;
	border-radius: 4px;
	font-size: 1.2rem;
}

.slider.slider-text > * {
	z-index: 200;
	position: relative;
	display: grid;
	align-content: center;
}

.slider.slider-text .spacer {
	width: 100%;
}

.slider.slider-text .slider-right,
.slider.slider-text .slider-left {
	background: rgba( 255,255,255,.7 );
	padding: 1rem;
	max-width: 480px;
}

.slider-text button {
	all: unset;
	color: var(--color-white);
	font-size: 3rem;
	padding: .5rem;
	border-radius: 10px;
}

.slider-text button.disabled {
	opacity: .4;
}

.slider-text button:not(:disabled):hover,
.slider-text button:not(:disabled):focus {
	background: rgba( 0,0,0,.7 );
}

.slider .slider-image {
	height: 600px;
}

.slider .slider-image, .slider .slider-content {
	display: none;
}

.slider .slider-image:first-of-type,
.slider .slider-content:first-of-type {
	display: grid;
}

.step-process li:nth-of-type(1)::before {
	color: var(--color-light-blue);
	text-shadow: 0 0 0 var(--color-dark-blue);
}

.step-process li:nth-of-type(1) strong {
	background: var(--color-light-blue);
	color: #000;
}

.step-process li:nth-of-type(1) mark {
	border-color: var(--color-light-blue);
}

.step-process li:nth-of-type(2)::before {
	color: var(--color-medium-blue);
}

.step-process li:nth-of-type(2) strong {
	background: var(--color-medium-blue);
	color: #fff;
}

.step-process li:nth-of-type(2) mark {
	border-color: var(--color-medium-blue);
}

.step-process li:nth-of-type(3)::before {
	color: var(--color-dark-blue);
}

.step-process li:nth-of-type(3) strong {
	background: var(--color-dark-blue);
	color: #fff;
}

.step-process li:nth-of-type(3) mark {
	border-color: var(--color-dark-blue);
}

.step-process li:nth-of-type(4)::before {
	color: var(--color-black);
}

.step-process li:nth-of-type(4) strong {
	background: var(--color-black);
	color: #fff;
}

.step-process li:nth-of-type(4) mark {
	border-color: var(--color-black);
}

.step-process li:nth-of-type(5)::before {
	color: var(--color-red);
}

.step-process li:nth-of-type(5) strong {
	background: var(--color-red);
	color: #fff;
}

.step-process li:nth-of-type(5) mark {
	border-color: var(--color-red);
}

.step-process {
	display: grid;
	grid-template-columns: repeat( 5, minmax( 20%, 1fr ));
	gap: 12px;
	counter-reset: item;
	list-style: none;
}

.step-process li {
	counter-increment: item;
}

.step-process li::before {
	content: counter(item);
	font-size: 2.2rem;
	background: #fff;
	box-shadow: -6px 6px 12px #aaa;
	border-radius: 100%;
	position: absolute;
	width: 3rem;
	height: 3rem;
	text-align: center;
	font-weight: 700;
}

.step-process strong {
	font-size: 1.1rem;
	display: flex;
	align-items: center;
	background: var(--color-black);
	color: #fff;
	border-radius: 36px;
	padding: .25rem 1.5rem .25rem 3.5rem;
	line-height: 1.3;
	height: 3em;
	margin-bottom: .25rem;
}

.step-process mark {
	display: block;
	padding: 1rem;
	margin-right: 1rem;
	font-size: .95rem;
	border-left: 2px solid;
	border-bottom: 2px solid;
	border-radius: 8px 0 8px 32px;
	max-width: 85%;
	margin-left: 1rem;
	height: 10rem;
}

.wp-pagenavi a, .wp-pagenavi span {
	border: 2px solid var(--color-light-gray);
}

.wp-pagenavi span.current {
	background: var(--color-light-blue);
}

.wp-pagenavi span,
.wp-pagenavi a {
	padding: 3px 7px;
}

.wp-pagenavi {
	display: flex;
	align-items: center;
}

.wp-pagenavi .pages {
	font-size: 1rem;
	border: none;
}

.menu-site-map-container {
	display: grid;
	grid-template-columns: repeat( 2, 1fr );
	gap: 30px;
}

/* Slider dimensions at mid-size. */
@media screen and (max-width: 1279px) {
	.slider {
		overflow: hidden;
		height: 400px;
	}
	.slider .slider-content {
		grid-template-columns: 360px 1fr;
	}
	.slider .slider-content.has-text-right {
		grid-template-columns: 360px 1fr;
	}
	.slider .slider-content > div {
		font-size: 1.7rem;
	}
	.slider-text {
		height: 400px;
		left: auto;
	}
}

/* Slider dimensions at small-size. */
@media screen and (max-width: 480px) {
	.slider {
		overflow: hidden;
		height: 400px;
	}
	.slider .slider-content.has-text-right {
		grid-template-columns: 0 1fr;
	}
	.slider .slider-content {
		grid-template-columns: 1fr 0;
	}
	.slider .slider-content > div {
		font-size: 1.4rem;
	}
	.slider .slider-content a {
		font-size: 1.1rem;
		padding: .5rem 1rem;
		display: block;
		text-align: center;
	}
	.slider-text {
		height: 400px;
		left: auto;
	}
}

/* Rendered at more than 37.5 em */
@media screen and (min-width: 55em) {
	#footer-menu {
		display: flex;
	}
	#footer-menu li {
		margin: 0 16px 0 0;
		list-style-type: none;
	}

	#footer-menu a {
		text-decoration: none;
	}
}

/* Rendered at less than 800px */
@media screen and ( max-width: 800px ) {
	#menu-site-map-container {
		display: grid;
		grid-template-columns: repeat( 1, 1fr );
		gap: 30px;
	}
	#masthead .site-branding {
		max-width: 100%;
	}
	#masthead .header-contents {
		grid-template-columns: 40% 1fr;
	}
	#masthead .site-branding img {
		padding: .25rem;
		position: static;
	}
	.slider-text {
		padding: 0 1rem;
	}
	.slider-text button {
		font-size: 2rem;
	}
	.slider-text h2 {
		font-size: 2rem;
	}
	#masthead .has-search-form {
		padding: 1rem .5rem;
	}
	.search-form .search-submit {
		padding: 6px
	}
	#masthead .header-nav .contents {
		padding: 6px;
	}
	.single-mcm_resources .mcm_category_resources-pass-it-on .entry-content,
	.single-mcm_people .mcm_people .entry-content,
	.single-mcm_book .mcm_book .entry-content {
		grid-template-columns: 1fr;
	}
}

/* Rendered at less than 480px */
@media screen and ( max-width: 480px ) {
	#social-menu {
		position: static;
		display: block;
		text-align: center;
	}
	#social-menu li {
		display: inline-block;
	}
	#main .entry-header .clipped-background > * {
		min-width: 90%;
	}
	.toggled .search-form, #main .search-form {
		grid-template-columns: 1fr;
	}
	.search-form .search-submit {
		padding: 12px 6px;
	}
}

/* Rendered at greater than 1200px. */
@media screen and ( min-width: 1200px ) {
	#masthead .has-search-form .search-form, #masthead > *, #footer-widgets .wp-block-columns, #masthead .header-nav .contents {
		width: 1180px;
		margin: 0 auto;
	}
	#masthead nav {
		display: flex;
		align-items: center;
		justify-content: end;
		column-gap: 20px;
		flex-wrap: wrap;
	}
	.wrapper .wp-pagenavi,
	.wrapper nav.post-navigation,
	.wrapper nav.posts-navigation {
		width: 100%;
	}
	.page-template-page-sidebar .wrapper {
		display: grid;
		grid-template-columns: 66.6666% 33.3333%;
		width: 100%;
	}
	.home.page .wrapper {
		display: block;
		padding: 0 3em;
	}
	.page-template-default.home .wrapper {
		padding: 0;
	}
	#secondary {
		margin: 0;
	}
	#masthead .site-header {
		padding: 0;
	}
	#main {
		margin: 0;
	}
}

@media screen and ( max-width: 1200px ) {
	h2 {
		font-size: 1.6rem;
	}

	#content .alignwide:not(.alignwide .alignfull) {
		padding: 15px;
	}
	.wp-block-columns.landing, .wp-block-group.landing .wp-block-columns {
		gap: 30px;
	}
	#content .alignfull .wp-block-columns:not(.alignfull, .alignwide) {
		column-gap: 30px;
	}
	.landing.book-delivery .wp-block-column img {
		max-width: 120px;
		height: auto;
	}
	.page .archive-cards .entry-content {
		font-size: 1rem;
	}
}

@media screen and ( max-width: 960px ) {
	#content .alignfull {
		padding: 0;
		max-width: 100% !important;
	}
	.archive-cards {
		grid-template-columns: repeat( 3, 1fr );
	}
	.page .archive-cards {
		gap: 15px;
	}
	.page .archive-cards header .entry-title {
		font-size: 1.1rem;
	}
}

@media screen and ( max-width: 720px ) {
	#content .alignfull {
		padding: 0;
		max-width: 100% !important;
	}
	.archive-cards {
		grid-template-columns: repeat( 2, 1fr );
	}

	.background-image,
	.cover-background,
	.clipped-background,
	.slider,
	.slider-text,
	.slider .slider-content > div,
	.slider .slider-image {
		height: 400px;
	}

	.single-mcm_people .mcm_people .entry-content,
	.single-mcm_book .mcm_book .entry-content {
		display: grid;
		grid-template-columns: 1fr;
		gap: 30px;
	}
}

@media screen and ( max-width: 600px ) {
	.page .archive-cards {
		grid-template-columns: 1fr;
	}
}

@media screen and ( max-width: 480px ) {
	.entry-content {
		padding: 0;
	}
	.entry-content > * {
		padding: .5rem 1rem;
	}
	#content .alignfull {
		margin: 0;
		max-width: 100% !important;
	}
	.archive-cards {
		grid-template-columns: 1fr;
	}
	h1.entry-title {
		font-size: 1.8rem;
	}
}


/* Tooltip hidden by default */
.simpletooltip[aria-hidden="true"],
.minimalist-simpletooltip[aria-hidden="true"],
.minimalist-left-simpletooltip[aria-hidden="true"] {
	display: none;
}
/* position relative for containers */
.simpletooltip_container,
.minimalist-simpletooltip_container,
.minimalist-left-simpletooltip_container {
	position: relative;
}

/* tooltip styles */
.simpletooltip, 
.minimalist-simpletooltip, 
.minimalist-left-simpletooltip {
	position: absolute;
	z-index: 666;
	width: 18em;
	border-radius: 5px;
	background: rgba( 0, 0, 0, .75 );
	color: #fff;
	padding: 12px;
	text-align: left;
	top: -5px;
	font-size: 1rem;
}
.simpletooltip, 
.minimalist-simpletooltip {
	right: auto;
	left: calc( 100% + 2px );
	margin-left: .5em;
}
.minimalist-left-simpletooltip {
	right: calc( 100% + 2px );
	left: auto;
	margin-right: .5em;
}
/* used pseudo-element to make arrows */
.simpletooltip::before,
.minimalist-simpletooltip::before,
.minimalist-left-simpletooltip::before {
	content: '';
	speak: none;
	position: absolute;
	z-index: 666;
	width: 10px;
	height: 10px;
	pointer-events: none;
}
.simpletooltip::before,
.minimalist-simpletooltip::before {
	top: .5em;
	left: -10px;
	margin-left: -10px;
	border: 10px solid transparent;
	border-right: 10px solid rgba( 0, 0, 0, .75 );
}
.minimalist-left-simpletooltip::before {
	top: .5em;
	right: -10px;
	margin-right: -10px;
	border: 10px solid transparent;
	border-left: 10px solid rgba( 0, 0, 0, .75 )
}

/* for this example: mobile */
@media (max-width: 44.375em) {
	.simpletooltip, 
	.minimalist-simpletooltip,
	.minimalist-left-simpletooltip  {
		top: 100%;
		left: auto;
		right: 0;
		margin: 0;
		margin-top: .7em;
		margin-left: -5em;
	}
	.simpletooltip::before, 
	.minimalist-simpletooltip::before,
	.minimalist-left-simpletooltip::before  {
		top: -10px;
		right: auto;
		left: 50%;
		margin-left: -5px;
		margin-top: -10px;
		border: 10px solid transparent;
		border-bottom: 10px solid rgba( 0, 0, 0, .9 );
	}
}

.post-password-form p:nth-of-type(1) {
	color: var(--color-red);
	background: var(--color-very-light-gray);
	padding: 1rem;
	font-size: 1.125rem;
}

.post-password-form p:nth-of-type(2) {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	align: center;
}