/*!
Theme Name: Rethink Trade
Theme URI: https://rethinktrade.org/
Author: Rethink Trade
Author URI: https://rethinktrade.org/
Description: Custom WordPress theme for RethinkTrade.org
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: rethinktrade
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.

Rethink Trade is based on Underscores https://underscores.me/, (C) 2012-2020 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:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Colors
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | 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;
	-webkit-text-size-adjust: 100%;
}

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

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

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

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	-webkit-box-sizing: content-box;
	        box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 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;
	font-size: 1em;
}

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

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 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;
	text-decoration: underline;
	-webkit-text-decoration: underline dotted;
	        text-decoration: underline dotted;
}

/**
 * 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;
	font-size: 1em;
}

/**
 * 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;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	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.75em 0.625em;
}

/**
 * 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 {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * 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"] {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	padding: 0;
}

/**
 * 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;
	outline-offset: -2px;
}

/**
 * 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;
	font: inherit;
}

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

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	-webkit-box-sizing: inherit;
	        box-sizing: inherit;
}

html {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
/* Colors
--------------------------------------------- */
:root {
	/* Core Palette, Brand Colors */
	--color-royal: #1650B8;
	--color-navy: #031B44;
	--color-turquoise: #1EE3D3;
	--color-gold: #F7B748;
	--color-blue-gray: #D8E9F0;

	/* Extended Palette */
	--color-royal-opaque-90: rgba(22, 80, 184, 0.9);
	--color-royal-opaque-80: rgba(22, 80, 184, 0.8);
	--color-royal-opaque-60: rgba(22, 80, 184, 0.6);
	--color-royal-opaque-40: rgba(22, 80, 184, 0.4);

	--color-navy-opaque-90: rgba(3, 27, 68, 0.9);
	--color-navy-opaque-80: rgba(3, 27, 68, 0.8);
	--color-navy-opaque-60: rgba(3, 27, 68, 0.6);
	--color-navy-opaque-40: rgba(3, 27, 68, 0.4);

	--color-turquoise-opaque-90: rgba(30, 227, 211, 0.9);
	--color-turquoise-opaque-80: rgba(30, 227, 211, 0.8);
	--color-turquoise-opaque-60: rgba(30, 227, 211, 0.6);
	--color-turquoise-opaque-40: rgba(30, 227, 211, 0.4);

	--color-gold-opaque-90: rgba(247, 183, 72, 0.9);
	--color-gold-opaque-80: rgba(247, 183, 72, 0.8);
	--color-gold-opaque-60: rgba(247, 183, 72, 0.6);
	--color-gold-opaque-40: rgba(247, 183, 72, 0.4);

	--color-blue-gray-opaque-90: rgba(216, 233, 240, 0.9);
	--color-blue-gray-opaque-80: rgba(216, 233, 240, 0.8);
	--color-blue-gray-opaque-60: rgba(216, 233, 240, 0.6);
	--color-blue-gray-opaque-40: rgba(216, 233, 240, 0.4);

	/* Neutrals */
	--color-white: #FFFFFF;
	--color-black: #000000;
	--color-gray-dark: #717171;
	--color-gray: #B3B3B3;
	--color-gray-light: #F6F6F6;
	
	--color-gray-light-opaque-90: rgba(246, 246, 246, 0.9);
	--color-gray-light-opaque-80: rgba(246, 246, 246, 0.8);
	--color-gray-light-opaque-60: rgba(246, 246, 246, 0.6);
	--color-gray-light-opaque-40: rgba(246, 246, 246, 0.4);

	/* Font Faces */
	--font-open-sans: "Open Sans", sans-serif;
	--font-oswald: "Oswald", sans-serif;
	--font-montserrat: "Montserrat", sans-serif;

	/* Font Sizes */
	--font-size-large-header: 3rem;

	/* Assign Purposes */
	--color-primary: var(--color-navy);

	--font-primary: var(--font-open-sans);
	--font-headers: var(--font-montserrat);
}

@media screen and (max-width: 640px) {
	:root {
		--font-size-large-header: 2.25rem;
	}
}

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: var(--color-primary);
	font-family: var(--font-primary);
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--font-headers);
	font-weight: 600;
	clear: both;
	line-height: 1.25;
	margin-top: 0.5rem;
	margin-bottom: 1.5rem;
}

h1.large-header {
	font-size: var(--font-size-large-header);
}

h1 {
	font-size: 2.5rem;
}

h2 {
	font-size: 2rem;
}

h3 {
	font-size: 1.75rem;
}

h4 {
	font-size: 1.5rem;
}

h5 {
	font-size: 1.375rem;
}

h6 {
	font-size: 1.25rem;
}

p {
	margin-top: 0.5rem;
	margin-bottom: 1.5rem;
}

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

blockquote {
	border-left: 3px solid var(--color-gold);
	margin: 0 1.5rem;
	padding-left: 1.5rem;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	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;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

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

big {
	font-size: 125%;
}

@media screen and (max-width: 640px) {
	h1 {
		font-size: 1.75rem;
	}

	h2 {
		font-size: 1.5rem;
	}

	h3 {
		font-size: 1.25rem;
	}

	h4 {
		font-size: 1.125rem;
	}

	h5 {
		font-size: 1rem;
	}

	h6 {
		font-size: 0.875rem;
	}
}

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

hr {
	background-color: var(--color-royal-opaque-40);
	border: 0;
	height: 1px;
	margin-bottom: 1.5rem;
}

ul,
ol {
	margin: 0 0 1.5rem 0; 
	padding-left: 1rem;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li {
	margin-bottom: 0.5rem;
}

li:last-child {
	margin-bottom: 0;
}

ul li::marker,
ol li::marker {
	color: var(--color-royal);
	font-weight: 700;
}

.text-white ul li::marker,
.text-white ol li::marker {
	color: var(--color-gold);
}

li > ul,
li > ol {
	margin: 0.5rem 0 0.5rem 1.5rem;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5rem 1.5rem;
}

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

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

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

figcaption {
	color: var(--color-gray-dark);
	font-size: 0.875rem;
	font-style: italic;
	line-height: 1.25;
	margin-top: 0.5rem;
}

/* Links
--------------------------------------------- */
a {
	color: var(--color-royal);
	text-decoration: none;
	-webkit-box-shadow: inset 0 -0.1rem 0 0 transparent;
	        box-shadow: inset 0 -0.1rem 0 0 transparent;
	-webkit-transition: color 0.2s ease, -webkit-box-shadow 0.25s ease;
	transition: color 0.2s ease, -webkit-box-shadow 0.25s ease;
	transition: box-shadow 0.25s ease, color 0.2s ease;
	transition: box-shadow 0.25s ease, color 0.2s ease, -webkit-box-shadow 0.25s ease;
}

a:visited {
	color: var(--color-royal);
}

a:hover,
a:focus,
a:active {
	color: var(--color-navy);
	-webkit-box-shadow: inset 0 -0.6rem 0 0 var(--color-gold-opaque-40);
	        box-shadow: inset 0 -0.6rem 0 0 var(--color-gold-opaque-40);
}

a:focus {
	outline: thin dotted;
}

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

/* Button Links
--------------------------------------------- */
.button,
.button:visited {
	background: var(--color-navy);
	border: 0;
	border-radius: 5px;
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-white);
	display: inline-block;
	font-family: var(--font-oswald);
	font-size: 1.125rem;
	line-height: 1.25;
	padding: 15px 30px;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	text-wrap: balance;
	-webkit-transition: none;
	transition: none;
}

.button:active,
.button:focus,
.button:hover {
	background: var(--color-royal);
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-white);
	-webkit-transition: none;
	transition: none;
}

.background-navy .button,
.background-navy .button:visited,
.button-secondary,
.button-secondary:visited {
	background: var(--color-gold);
	border: 0;
	border-radius: 5px;
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-navy);
	display: inline-block;
	font-family: var(--font-oswald);
	font-size: 1.125rem;
	line-height: 1.25;
	padding: 15px 30px;
	text-decoration: none;
	text-transform: uppercase;
	-webkit-transition: none;
	transition: none;
}

.background-navy .button:active,
.background-navy .button:focus,
.background-navy .button:hover,
.button-secondary:active,
.button-secondary:focus,
.button-secondary:hover {
	background: var(--color-blue-gray);
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-navy);
	-webkit-transition: none;
	transition: none;
}

.background-blue-gray .button-secondary:active,
.background-blue-gray .button-secondary:focus,
.background-blue-gray .button-secondary:hover {
	background: var(--color-royal);
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-white);
	-webkit-transition: none;
	transition: none;
}

.back,
.back:visited {
	color: var(--color-navy);
	display: inline-block;
	font-family: var(--font-oswald);
	font-size: 0.875rem;
	line-height: 1;
	padding: 10px 20px;
	position: relative;
	text-decoration: none;
	text-transform: uppercase;
	-webkit-transition: none;
	transition: none;
}

.back:before {
	content: "\f053";
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
	position: absolute;
		left: 5px;
		top: 50%;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
	-webkit-transition: left 0.25s ease;
	transition: left 0.25s ease;
}

.back:active,
.back:focus,
.back:hover {
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-royal);
}

.back:hover:before {
	left: 0;
	-webkit-transition: left 0.25s ease;
	transition: left 0.25s ease;
}

.more,
.more:visited {
	color: var(--color-navy);
	display: inline-block;
	font-family: var(--font-oswald);
	line-height: 1;
	padding: 10px 20px 10px 0;
	position: relative;
	text-decoration: none;
	text-transform: uppercase;
	-webkit-transition: none;
	transition: none;
}

.more:before {
	content: "\f054";
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
	position: absolute;
		right: 5px;
		top: 50%;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
	-webkit-transition: right 0.25s ease;
	transition: right 0.25s ease;
}

.more:active,
.more:focus,
.more:hover {
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-royal);
}

.more:hover:before {
	right: 0;
	-webkit-transition: right 0.25s ease;
	transition: right 0.25s ease;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	background: var(--color-navy);
	border: 0;
	border-radius: 5px;
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-white);
	display: inline-block;
	font-family: var(--font-oswald);
	font-size: 1.125rem;
	line-height: 1;
	padding: 15px 30px;
	text-decoration: none;
	text-transform: uppercase;
	-webkit-transition: none;
	transition: none;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	background: var(--color-royal);
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-white);
	-webkit-transition: none;
	transition: none;
}

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 {
	background: var(--color-royal);
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-white);
	-webkit-transition: none;
	transition: none;
}

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 {
	color: var(--color-gray-dark);
	border: 1px solid var(--color-gray);
	border-radius: 5px;
	padding: 5px;
}

select {
	border: 1px solid var(--color-gray);
}

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,
input[type="checkbox"]:focus,
input[type="radio"]:focus,
select:focus {
	border: 1px solid var(--color-royal);
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-black);
	outline: none;
	text-shadow: none;
}

/* Gravity Forms Style Overrides
--------------------------------------------- */
.gform-theme--no-framework.gform_wrapper.gravity-theme .gfield_label {
	color: var(--color-black);
	font-family: var(--font-headers);
	font-size: 0.875rem;
	font-weight: 500;
	text-transform: uppercase;
}

.gform-theme--no-framework.gform_wrapper.gravity-theme .gfield_required,
.gform-theme--no-framework.gform_wrapper.gravity-theme .gfield_required .gfield_required_custom, 
.gform-theme--no-framework.gform_wrapper.gravity-theme .gfield_required .gfield_required_text {
	color: var(--color-navy);
	font-family: var(--font-primary);
	font-size: 0.875rem;
	font-style: normal;
	text-transform: none;
}

.gform-theme--no-framework.gform_wrapper.gravity-theme .gform_validation_errors:focus {
	-webkit-box-shadow: none;
	        box-shadow: none;
	outline: 0;
}

.gform-theme--no-framework.gform_wrapper.gravity-theme .gfield_validation_message, 
.gform-theme--no-framework.gform_wrapper.gravity-theme .validation_message {
	border-radius: 5px;
  	font-size: 0.875rem;
	margin-bottom: 1rem;
  	padding: 5px;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.site-header {
	background: var(--color-white);
	border-bottom: 1px solid var(--color-gray-light);
	-webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	padding-top: 15px;
	padding-bottom: 15px;
	position: fixed;
		top: 0;
		right: 0;
		left: 0;
		z-index: 1000;
	-webkit-transition: padding 0.3s ease;
	transition: padding 0.3s ease;
}

.admin-bar .site-header {
	top: 32px;
}

@media screen and (max-width: 782px) {
	.admin-bar .site-header {
		top: 46px;
	}

	.admin-bar.scrolled .site-header {
		top: 0;
	}
}

.site-main {
	margin-top: 100px;
}

.site-header .inner {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 30px;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.site-branding a,
.site-branding a:active,
.site-branding a:focus,
.site-branding a:hover,
.site-branding a:visited {
	-webkit-box-shadow: none;
	        box-shadow: none;
}

.site-logo {
	height: 70px;
	-webkit-transition: height 0.3s ease;
	transition: height 0.3s ease;
	vertical-align: middle;
	width: auto;
}

.scrolled .site-header {
	padding-top: 10px;
	padding-bottom: 10px;
	-webkit-transition: padding 0.3s ease;
	transition: padding 0.3s ease;
}

.scrolled .site-logo {
	height: 50px;
	-webkit-transition: height 0.3s ease;
	transition: height 0.3s ease;
}

.site-menu {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 30px;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

/* Base submenu state */
.main-navigation ul ul {
    background: var(--color-gray-light);
    -webkit-box-shadow: 4px 8px 14px rgba(0, 0, 0, 0.15);
            box-shadow: 4px 8px 14px rgba(0, 0, 0, 0.15);
	display: block;
    opacity: 0;
    padding: 0;
    pointer-events: none;
    position: absolute;
		top: 100%;
		left: -999em;  
		z-index: 1;
    -webkit-transform: translateX(20px);  
        -ms-transform: translateX(20px);  
            transform: translateX(20px);
    -webkit-transition: opacity 0.25s ease, -webkit-transform 0.25s ease;
    transition: opacity 0.25s ease, -webkit-transform 0.25s ease;
    transition: opacity 0.25s ease, transform 0.25s ease;
    transition: opacity 0.25s ease, transform 0.25s ease, -webkit-transform 0.25s ease;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
    left: auto; 
    opacity: 1; 
    pointer-events: auto;
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
}

.main-navigation li {
	margin-bottom: 0;
	position: relative;
}

.main-navigation a,
.main-navigation a:visited {
	border-bottom: 2px solid var(--color-royal);
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-navy);
	display: block;
	font-family: var(--font-oswald);
	font-size: 1.125rem;
	padding: 5px 0 1px 0;
	text-decoration: none;
	text-transform: uppercase;
	-webkit-transition: 0.3s ease;
	transition: 0.3s ease;
}

.main-navigation a:active,
.main-navigation a:focus,
.main-navigation a:hover,
.main-navigation .current-menu-item > a,
.single-issue .main-navigation #menu-item-27 > a {
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-royal);
	border-bottom: 2px solid var(--color-gold);
	-webkit-transition: 0.3s ease;
	transition: 0.3s ease;
}

.main-navigation ul ul li {
	border-bottom: 1px solid var(--color-blue-gray);
	padding-left: 0;
	padding-right: 0;
}

.main-navigation ul ul li:last-child {
	border-bottom: 0;
}

.main-navigation ul ul a,
.main-navigation ul ul a:visited {
	border-bottom: 0 !important;
	font-family: var(--font-primary);
    font-size: 0.875rem;
	line-height: 1.25;
	padding: 10px 30px 10px 20px;
	width: 260px;
    position: relative;
	text-transform: none;
	-webkit-transition: 0.25s ease;
	transition: 0.25s ease;
}

.main-navigation ul ul a:hover {
	background: var(--color-white);
	border-bottom: 0;
	color: var(--color-navy);
	padding-left: 30px;
	padding-right: 20px;
	-webkit-transition: 0.25s ease;
	transition: 0.25s ease;
}

.main-navigation ul ul a::before {
    content: "•";
    position: absolute;
    left: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%) translateX(-4px);
        -ms-transform: translateY(-50%) translateX(-4px);
            transform: translateY(-50%) translateX(-4px);
    opacity: 0;
    -webkit-transition: opacity 0.25s ease, -webkit-transform 0.25s ease;
    transition: opacity 0.25s ease, -webkit-transform 0.25s ease;
    transition: opacity 0.25s ease, transform 0.25s ease;
    transition: opacity 0.25s ease, transform 0.25s ease, -webkit-transform 0.25s ease;
    font-size: 0.875rem;
}

.main-navigation ul ul a:hover::before {
    opacity: 1;
    -webkit-transform: translateY(-50%) translateX(0);
        -ms-transform: translateY(-50%) translateX(0);
            transform: translateY(-50%) translateX(0);
}

.main-navigation ul ul li:first-child a, 
.main-navigation ul ul li:first-child a:visited {
	padding-top: 20px;
}

/* Third Level Menus */
.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: 100%;
}

.main-navigation ul ul ul li:first-child a,
.main-navigation ul ul ul li:first-child a:visited {
	padding-top: 10px;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

.menu-toggle {
	background: transparent;
	border: none;
	cursor: pointer;
	padding: 10px;
	position: relative;
}

.toggled .menu-toggle {
	margin-top: -13px;
}

.menu-toggle:active,
.menu-toggle:focus,
.menu-toggle:hover {
	background: transparent;
}

.menu-icon {
	display: inline-block;
	width: 30px;
	height: 3px;
	background-color: var(--color-navy);
	position: relative;
}

.menu-icon::before,
.menu-icon::after {
	content: "";
	display: inline-block;
	width: 30px;
	height: 3px;
	background-color: var(--color-navy);
	position: absolute;
	left: 0;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.menu-icon::before {
	top: -14px;
}

.menu-icon::after {
	top: -7px;
}

.toggled .menu-icon {
	background-color: transparent;
}

.toggled .menu-icon::before {
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	top: 0;
}

.toggled .menu-icon::after {
	-webkit-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	        transform: rotate(-45deg);
	top: 0;
}

@media screen and (min-width: 1101px) {
	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: 55px;
	}
}

@media screen and (max-width: 1600px) {
	.main-navigation ul {
		gap: 45px;
	}
}

@media screen and (max-width: 1440px) {
	.main-navigation a,
	.main-navigation a:visited {
		font-size: 1.125rem;
	}
}

@media screen and (max-width: 1100px) {
	.site-header {
		padding-top: 15px;
		padding-bottom: 15px;
	}

	.main-navigation ul li {
		margin-bottom: 1rem;
	}

	.main-navigation ul ul {
		-webkit-box-shadow: none;
		        box-shadow: none;
		opacity: 1; 
		padding: 0;
		pointer-events: auto;
		position: relative;
			left: auto; 
		-webkit-transform: translateX(0); 
		    -ms-transform: translateX(0); 
		        transform: translateX(0);
	}

	.main-navigation ul ul li {
		margin-bottom: 0;
	}

	.menu-open {
		/* prevent body scrolling */
		overflow: hidden;
	}

	.menu-main-menu-container {
		background: var(--color-gray-light);
		-webkit-box-shadow: 4px 8px 14px rgba(0, 0, 0, 0.15);
		        box-shadow: 4px 8px 14px rgba(0, 0, 0, 0.15);
		max-height: calc(100vh - 100px);
		overflow-y: auto;
		position: absolute;
			top: 100px;
			right: 0;
			left: 0;
			z-index: 9999;
	}

	.scrolled .menu-main-menu-container {
		max-height: calc(100vh - 70px);
		top: 70px;
	}

	.toggled .menu-main-menu-container {
		padding: 20px;
	}

	.main-navigation a,
	.main-navigation a:active,
	.main-navigation a:focus,
	.main-navigation a:hover,
	.main-navigation a:visited {
		border-bottom: 0;
	}

	.main-navigation ul ul a,
	.main-navigation ul ul a:visited {
		width: auto;
	}

	.main-navigation ul ul a:hover {
		background: transparent;
		padding: 10px 30px 10px 20px;
	}

	.main-navigation ul ul a::before {
		display: none;
	}

	.main-navigation ul ul ul {
		left: 0;
		top: 0;
		padding-left: 20px;
	}

	.main-navigation ul ul li:hover > ul,
	.main-navigation ul ul li.focus > ul {
		display: block;
		left: 0;
	}
}

.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	-webkit-box-flex: 1;
	    -ms-flex: 1 0 50%;
	        flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	-webkit-box-flex: 1;
	    -ms-flex: 1 0 50%;
	        flex: 1 0 50%;
}

/* Search (header)
--------------------------------------------- */
.header-search {
    background: var(--color-gray-light);
	border-bottom: 1px solid var(--color-gray-light);
	-webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
    max-height: 0;
    overflow: hidden;
    position: absolute;
		top: 100%;
		left: 0;
		right: 0;
    transition: max-height 0.3s ease;
}

.header-search.is-active {
    max-height: 150px;
}

.header-search .search-form {
    display: flex;
    padding: 1rem 0;
}

.search-toggle {
    background: var(--color-royal);
    border: none;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
	margin-top: 3px;
    margin-left: 30px;
    padding: 0.5rem;
}

.search-toggle:hover {
	background: var(--color-navy);
}

.header-search .search-form {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1.25rem 0;
    max-width: 100%;
    margin: 0 auto;
}

.header-search .search-form label {
    flex: 1;
    margin: 0;
}

.header-search .search-form .search-field {
	max-width: 100%;
	width: 640px;
}

.header-search .search-form .search-field:focus {
    outline: none;
}

.header-search .search-form .search-submit {
	padding: 9px 30px;
}

@media screen and (max-width: 1100px) {
	.search-toggle {
		margin-top: 0;
		margin-left: 0;
	}

	.header-search .search-form .search-field {
		width: auto;
	}

	.site-menu {
		flex-direction: row-reverse;
	}
}

@media screen and (max-width: 640px) {
	.header-search .search-form .search-submit {
		padding: 9px;
	}
}

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

.post,
.page {
	margin: 0;
}

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

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

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

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

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

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

/* 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 logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

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

/* Tables
--------------------------------------------- */
table {
	border-collapse: collapse;
	margin: 0 0 1.5em;
	width: 100%;
}

thead {
	background: var(--color-navy);
	color: var(--color-white);
}

thead th {
	font-family: var(--font-headers);
	font-size: 0.9375rem;
	font-weight: 600;
	padding: 12px 16px;
	text-align: left;
}

tbody tr:nth-child(even) {
	background: var(--color-blue-gray-opaque-40);
}

tbody tr:nth-child(odd) {
	background: var(--color-white);
}

tbody tr:hover {
	background: var(--color-blue-gray);
}

tbody td {
	border-bottom: 1px solid var(--color-blue-gray);
	font-size: 0.9375rem;
	padding: 12px 16px;
	vertical-align: top;
}

tfoot td {
	border-top: 2px solid var(--color-navy);
	color: var(--color-gray-dark);
	font-size: 0.875rem;
	font-style: italic;
	padding: 10px 16px;
}

.event-details td {
	background: var(--color-white);
	border: 1px solid var(--color-blue-gray);
}

.event-details tr:first-child td {
	background: var(--color-blue-gray-opaque-60);
}

.event-details td:first-child {
	width: 25%;
}

/* Responsive tables */
@media screen and (max-width: 640px) {
	table {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	tbody td {
		padding: 8px 12px;
	}
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.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;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	-webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	        box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

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

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

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

.styled-image {
	border: 2px solid var(--color-gold);
	border-radius: 5px;
}

.clearfix::after {
	content: "";
	display: table;
	clear: both;
}

@media screen and (max-width: 800px) {
	.alignleft,
	.alignright {
		float: none;
		margin-left: auto;
		margin-right: auto;
		display: block;
		text-align: center;
	}
}

/*--------------------------------------------------------------
# Helpers
--------------------------------------------------------------*/
/* Container Classes
--------------------------------------------- */
.inner {
	margin: 0 auto;
	max-width: 100%;
	padding: 0 20px;
	width: 1200px;
}

.section-medium .inner,
.inner-medium {
	width: 1400px;
}

.section-wide .inner,
.inner-wide {
	width: 1640px;
}

.section-narrow .inner,
.inner-narrow {
	width: 1024px;
}

/* Text alignment helpers
--------------------------------------------- */
.text-center {
	text-align: center;
}

.text-right {
	text-align: right;
}

/* Background and text color helpers
--------------------------------------------- */
.text-white,
.background-navy,
.background-royal {
	color: var(--color-white);
}

.text-white a:not(.button):not(.button-secondary),
.text-white a:not(.button):not(.button-secondary):visited,
.background-navy a:not(.button):not(.button-secondary),
.background-navy a:not(.button):not(.button-secondary):visited,
.background-royal a:not(.button):not(.button-secondary),
.background-royal a:not(.button):not(.button-secondary):visited {
	color: var(--color-turquoise);
}

.text-white a:not(.button):not(.button-secondary):active,
.text-white a:not(.button):not(.button-secondary):focus,
.text-white a:not(.button):not(.button-secondary):hover,
.background-navy a:not(.button):not(.button-secondary):active,
.background-navy a:not(.button):not(.button-secondary):focus,
.background-navy a:not(.button):not(.button-secondary):hover {
	color: var(--color-gold);
	-webkit-box-shadow: none;
	        box-shadow: none;
}

.background-royal a:not(.button):not(.button-secondary):active,
.background-royal a:not(.button):not(.button-secondary):focus,
.background-royal a:not(.button):not(.button-secondary):hover {
	color: var(--color-blue-gray);
}

.background-gold {
	background: var(--color-gold);
}

.background-gray {
	background: var(--color-gray);
}

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

.text-gray {
	color: var(--color-gray);
}

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

.text-navy {
	color: var(--color-navy);
}

.text-royal {
	color: var(--color-royal);
}

.text-gold {
	color: var(--color-gold);
}

/* Background color helpers
--------------------------------------------- */
.background-gray-light {
	background: var(--color-gray-light);
}

.background-blue-gray {
	background: var(--color-blue-gray);
}

.background-navy {
	background: var(--color-navy);
}

.background-royal {
	background: var(--color-royal);
}

/* Paragraph size helpers
--------------------------------------------- */
.paragraph-large {
	font-size: 1.25rem;
	font-weight: 600;
}

.paragraph-small {
	font-size: 0.875rem;
}

/* List style helpers
--------------------------------------------- */
.list-large li {
	font-size: 1.25rem;
	font-weight: 600;
}

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

.list-styled li {
	border-bottom: 1px solid var(--color-gray);
	line-height: 1.25;
	margin: 0;
	padding: 15px 0 15px 30px;
	position: relative;
}

.list-styled li:before {
	content: "\f054";
	color: var(--color-gold);
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
	position: absolute;
		top: 50%;
		left: 0;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
}

.list-styled li:last-child {
	border-bottom: 0;
}

/* Flexbox Basics
--------------------------------------------- */
.flex-container {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	gap: 60px;
}

.flex-wrap {
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.vertical-align-start,
.vertical-align-start .flex-container {
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.vertical-align-end,
.vertical-align-end .flex-container {
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
}

.vertical-align-stretch,
.vertical-align-stretch .flex-container {
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
}

.desktop-reverse .flex-container,
.flex-container.reverse {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	    -ms-flex-direction: row-reverse;
	        flex-direction: row-reverse;
}

.flex-25 {
	-ms-flex-preferred-size: calc(25% - 30px);
	    flex-basis: calc(25% - 30px);
}

.flex-33 {
	-ms-flex-preferred-size: calc(33.3% - 30px);
	    flex-basis: calc(33.3% - 30px);
}

.flex-40 {
	-ms-flex-preferred-size: calc(40% - 30px);
	    flex-basis: calc(40% - 30px);
}

.flex-45 {
	-ms-flex-preferred-size: calc(45% - 30px);
	    flex-basis: calc(45% - 30px);
}

.flex-50 {
	-ms-flex-preferred-size: calc(50% - 30px);
	    flex-basis: calc(50% - 30px);
}

.flex-55 {
	-ms-flex-preferred-size: calc(55% - 30px);
	    flex-basis: calc(55% - 30px);
}

.flex-60 {
	-ms-flex-preferred-size: calc(60% - 30px);
	    flex-basis: calc(60% - 30px);
}

.flex-67 {
	-ms-flex-preferred-size: calc(66.7% - 30px);
	    flex-basis: calc(66.7% - 30px);
}

.flex-75 {
	-ms-flex-preferred-size: calc(75% - 30px);
	    flex-basis: calc(75% - 30px);
}

.widths-33-67 .flex-first {
	-ms-flex-preferred-size: calc(33% - 30px);
	    flex-basis: calc(33% - 30px);
}	

.widths-33-67 .flex-last {
	-ms-flex-preferred-size: calc(66% - 30px);
	    flex-basis: calc(66% - 30px);
}

.widths-67-33 .flex-first {
	-ms-flex-preferred-size: calc(66% - 30px);
	    flex-basis: calc(66% - 30px);
}

.widths-67-33 .flex-last {
	-ms-flex-preferred-size: calc(33% - 30px);
	    flex-basis: calc(33% - 30px);
}

.widths-40-60 .flex-first {
	-ms-flex-preferred-size: calc(40% - 30px);
	    flex-basis: calc(40% - 30px);
}

.widths-40-60 .flex-last {
	-ms-flex-preferred-size: calc(60% - 30px);
	    flex-basis: calc(60% - 30px);
}

.widths-60-40 .flex-first {
	-ms-flex-preferred-size: calc(60% - 30px);
	    flex-basis: calc(60% - 30px);
}

.widths-60-40 .flex-last {
	-ms-flex-preferred-size: calc(40% - 30px);
	    flex-basis: calc(40% - 30px);
}

.widths-50-50 .flex-first,
.widths-50-50 .flex-last {
	-ms-flex-preferred-size: calc(50% - 30px);
	    flex-basis: calc(50% - 30px);
}

@media screen and (max-width: 800px) {
	.flex-container {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		gap: 0;
	}

	.mobile-reverse .flex-container {
		gap: 1.5rem;
	}

	.mobile-reverse .flex-item:first-child {
		-webkit-box-ordinal-group: 3;
		    -ms-flex-order: 2;
		        order: 2;
	}

	.mobile-reverse .flex-item:last-child {
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
	}

	.flex-container.reverse {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
	}

	.flex-25,
	.flex-33,
	.flex-40,
	.flex-45,
	.flex-50,
	.flex-55,
	.flex-60,
	.flex-67,
	.flex-75,
	.flex-first,
	.flex-last {
		-ms-flex-preferred-size: 100% !important;
		    flex-basis: 100% !important;
	}
}

/* Functional helpers
--------------------------------------------- */
.clickable-div,
.clickable-div * {
	cursor: pointer;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.site-footer {
	background: #f5f2f2;
	padding-top: 60px;
	position: relative;
}

.site-footer:before {
	background: transparent url('/wp-content/themes/rethinktrade/assets/footer-shape-bg.png') no-repeat left top;
	content: "";
	display: block;
	height: 400px;
	max-width: 100%;
	position: absolute;
		top: 0;
		left: 0;
	width: 400px;
}

.site-footer ul {
	list-style: none;
	margin-left: 0;
	padding-left: 0;
}

.site-footer h3 {
	margin-top: 0.5rem;
}

/* Row 1: Content
--------------------------------------------- */
.site-footer .flex-container {
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.footer-col-1 {
	-ms-flex-preferred-size: 45%;
	    flex-basis: 45%;
}

.footer-col-2 {
	-ms-flex-preferred-size: 20%;
	    flex-basis: 20%;
}

.footer-col-3 {
	-ms-flex-preferred-size: 35%;
	    flex-basis: 35%;
}

@media screen and (max-width: 1200px) {
	.site-footer .flex-container {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		gap: 1rem;
	}

	.footer-col-1,
	.footer-col-2,
	.footer-col-3 {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
	}
}

/* Row 2: Social Media
--------------------------------------------- */
.footer-social-media {
	margin: 25px 0 60px 0;
}

.social-media-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	list-style: none;
	gap: 1rem;
	margin: 0;
	padding: 0;
}

.social-media-item a,
.social-media-item a:visited {
	aspect-ratio: 1/1;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	aspect-ratio: 1/1;
	background: var(--color-navy);
	border-radius: 50%;
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-white);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.5rem;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	text-decoration: none;
	text-transform: uppercase;
	-webkit-transition: 0.3s ease;
	transition: 0.3s ease;
	width: 45px;
}

.social-media-item a:active,
.social-media-item a:focus,
.social-media-item a:hover {
	background: var(--color-gold);
	color: var(--color-navy);
}

/* Row 3: Copyright
--------------------------------------------- */
.footer-copyright {
	background: var(--color-navy);
	color: var(--color-white);
	padding: 15px 0;
	text-align: center;
}

.footer-copyright p,
.footer-copyright ul {
	margin: 0;
}

.footer-copyright ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 1rem;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	list-style: none;
	margin-top: 5px;
	padding-left: 0;
}

.footer-copyright li:after {
	content: "|";
	color: var(--color-white);
	margin-left: 1rem;
}

.footer-copyright li:last-child:after {
	content: "";
	margin-left: 0;
}

.footer-copyright a,
.footer-copyright a:visited {
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-white);
	text-decoration: underline;
}

.footer-copyright a:active,
.footer-copyright a:focus,
.footer-copyright a:hover { 
	-webkit-box-shadow: none; 
	        box-shadow: none;
	color: var(--color-gold);
}

@media screen and (max-width: 800px) {
	.footer-copyright ul {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		gap: 0.5rem;
	}

	.footer-copyright li:after {
		content: "";
		margin-left: 0;
	}
}

/* Footer Form Styles
--------------------------------------------- */
.site-footer button,
.site-footer input[type="button"],
.site-footer input[type="reset"],
.site-footer input[type="submit"] {
	font-size: 0.9375rem;
	line-height: 1 !important; /* Gravity Forms override */
	padding: 10px 20px 12px 20px;
}

.site-footer .search-form label {
	display: block;
	margin-bottom: 1rem;
}

.site-footer .gfield_consent_label {
	display: inline-block;
	font-size: 0.875rem;
	margin-top: 1px;
	vertical-align: top;
}

.site-footer .gform_wrapper.gravity-theme .gform_footer {
	margin-top: 0;
	padding: 10px 0 0 0;
}

.site-footer .gform_wrapper.gravity-theme .gform_fields {
	grid-row-gap: 10px;
}

/*--------------------------------------------------------------
# Basic Builder Blocks
--------------------------------------------------------------*/
/* Spacing Between Blocks
--------------------------------------------- */
.section-title {
	font-size: 2.25rem;
	margin-top: 0;
}

.home .section-title {
	text-align: center;
}

/* Spacing Between Blocks
--------------------------------------------- */
.builder-block {
	padding-top: 60px;
	padding-bottom: 60px;
}

.builder-block.no-spacing {
	padding-top: 1px;
	padding-bottom: 1px;
}

.builder-block.zero-spacing {
	padding-top: 0;
	padding-bottom: 0;
}

.builder-block.half-spacing {
	padding-top: 30px;
	padding-bottom: 30px;
}

.builder-block.double-spacing {
	padding-top: 120px;
	padding-bottom: 120px;
}

.builder-block.no-spacing-top {
	padding-top: 1px;
}

.builder-block.no-spacing-bottom {
	padding-bottom: 1px;
}

.builder-block.zero-spacing-top {
	padding-top: 0;
}

.builder-block.zero-spacing-bottom {
	padding-bottom: 0;
}

.builder-block.half-spacing-top {
	padding-top: 30px;
}

.builder-block.half-spacing-bottom {
	padding-bottom: 30px;
}

.builder-block.double-spacing-top {
	padding-top: 120px;
}

.builder-block.double-spacing-bottom {
	padding-bottom: 120px;
}

@media screen and (max-width: 800px) {
	.builder-block {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.builder-block.half-spacing {
		padding-top: 15px;
		padding-bottom: 15px;
	}

	.builder-block.double-spacing {
		padding-top: 60px;
		padding-bottom: 60px;
	}

	.builder-block.half-spacing-top {
		padding-top: 15px;
	}

	.builder-block.half-spacing-bottom {
		padding-bottom: 15px;
	}	

	.builder-block.double-spacing-top {
		padding-top: 60px;
	}	

	.builder-block.double-spacing-bottom {
		padding-bottom: 60px;
	}
}

/* @media screen and (max-width: 580px) {
	.builder-block {
		padding-top: 20px;
		padding-bottom: 20px;
	}

	.builder-block.half-spacing {
		padding-top: 10px;
		padding-bottom: 10px;
	}

	.builder-block.double-spacing {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.builder-block.half-spacing-top {
		padding-top: 10px;
	}

	.builder-block.half-spacing-bottom {
		padding-bottom: 10px;
	}	

	.builder-block.double-spacing-top {
		padding-top: 40px;
	}	

	.builder-block.double-spacing-bottom {
		padding-bottom: 40px;
	}
} */

/*--------------------------------------------------------------
# Home Page Hero
--------------------------------------------------------------*/
.block-home-hero {
	margin-bottom: 20px;
	min-height: 700px;
}

.home-hero-slider-container {
	padding-bottom: 50px;
	position: relative;
}

.home-hero-slider {
    overflow: hidden;
}

.home-hero-slide {
	height: 50vh;
	min-height: 650px;
}

.home-hero-slide img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
       object-position: center center;
}

.home-hero-content {
	background: var(--color-navy);
	border-left: 10px solid var(--color-royal);
	color: var(--color-white);
	max-width: 50%;
	padding: 40px;
	position: absolute;
		bottom: 0;
		left: 50%;
		z-index: 10;
	width: 800px;
}

.home-hero-inner {
	width: 90%;
}

.home-hero-content h1 {
	font-size: var(--font-size-large-header);
	font-weight: 700;
}

.home-hero-content p {
	line-height: 1.75;
}

.home-hero-content p:last-child {
	margin-bottom: 0.5rem;
}

@media screen and (max-width: 1640px) {
	.home-hero-inner {
		width: 100%;
	}
}

@media screen and (max-width: 1200px) {
	.home-hero-slider-container {
		padding-bottom: 100px;
	}

	.home-hero-content {
		left: 20%;
		max-width: 80%;
		padding: 20px;
		width: auto;
	}
}

@media screen and (max-width: 1024px) {
	.home-hero-slider-container {
		padding-bottom: 150px;
	}
}

@media screen and (max-width: 800px) {
	.block-home-hero {
		margin-bottom: 40px;
	}
}

@media screen and (max-width: 640px) {
	.block-home-hero {
		margin-bottom: 20px;
		min-height: 0;
	}

	.home-hero-slider-container {
		padding-bottom: 0;
	}

	.home-hero-slide {
		height: 300px;
		min-height: 0;
	}

	.home-hero-content {
		border-top: 5px solid var(--color-royal);
		border-left: 0;
		position: relative;
		left: 0;
		max-width: 100%;
		padding: 20px;
	}

	.home-hero-content p {
		line-height: 1.5;
	}
}

/*--------------------------------------------------------------
# Default Hero & Callout Block
--------------------------------------------------------------*/
.hero-style-white {
	background: var(--color-white);
}

.hero-style-blue {
	background: var(--color-navy);
}

.hero-style-image {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.callout-style-image .inner {
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto 100%;
}

.hero-overlay {
	position: relative;
}

.hero-overlay:after {
	background: var(--color-navy-opaque-90);
	content: "";
	position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	z-index: 1;
}

.hero-overlay-gold:after {
	background: var(--color-gold-opaque-90);
}

.block-hero .inner {
	min-height: 120px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	position: relative;
}

.block-builder-callout .inner {
	min-height: 300px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	position: relative;
	width: 1160px;
}

.block-builder-callout.skinny-callout .inner {
	background: var(--color-blue-gray);
	border-left: 10px solid var(--color-royal);
	min-height: 0;
	padding-top: 1.5rem;
	padding-bottom: 0.5rem;
}

.hero-content,
.callout-content {
	position: relative;
	z-index: 10;
	width: 100%;
}

.eyebrow {
	color: var(--color-royal);
	font-family: var(--font-oswald);
	font-size: 1.125rem;
	text-transform: uppercase;
}

.text-white .eyebrow {
	color: var(--color-gold);
}

.hero-content .eyebrow {
	font-size: 1rem;
	margin-top: 0;
}

.hero-content h1 {
	margin: 0;
}

.hero-content h1 + .lede {
	margin-top: 1.5rem;
	margin-bottom: 0;
}

.lede {
	font-family: var(--font-headers);
	font-size: 1.5rem;
	font-weight: 400;
}

p.date {
	color: var(--color-gray-dark);
	font-weight: 600;
}

.hero-content p.date {
	margin-top: 1.5rem;
	margin-bottom: 0;
}

.text-white .date {
	color: var(--color-blue-gray);
}

.chip {
	background: var(--color-blue-gray-opaque-40);
	border-radius: 20px;
	color: var(--color-gray-dark);
	display: inline-block;
	font-family: var(--font-oswald);
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.25;
	padding: 5px 15px;
	text-transform: uppercase;
}

.skinny-callout .chip {
	background: var(--color-white);
	color: var(--color-navy);
	margin-bottom: 0.5rem;
}

.background-navy .chip,
.text-white .chip {
	background: var(--color-blue-gray);
	color: var(--color-navy);
}

.breadcrumbs {
	line-height: 1;
	list-style: none;
	margin: 0 0 0.75rem 0;
	min-height: 26px;
	padding: 0;
}

.breadcrumbs li {
	display: inline-block;
}

.breadcrumbs li:after {
	content: "\f054";
	color: rgba(255, 255, 255, 0.6);
	font-family: "Font Awesome 7 Free";
	font-weight: 900;
	margin: 0 8px;
}

.breadcrumbs li:last-child:after {
	display: none;
}

.breadcrumbs li a,
.breadcrumbs li a:visited {
	color: var(--color-royal);
	font-family: var(--font-oswald);
	font-size: 1rem;
	text-transform: uppercase;
}

.breadcrumbs li a:active,
.breadcrumbs li a:focus,
.breadcrumbs li a:hover {
	color: var(--color-navy);
	-webkit-box-shadow: none;
	        box-shadow: none;
}

.text-white .breadcrumbs li a,
.text-white .breadcrumbs li a:visited {
	color: var(--color-gold) !important;
}

.text-white .breadcrumbs li a:active,
.text-white .breadcrumbs li a:focus,
.text-white .breadcrumbs li a:hover {
	-webkit-box-shadow: none;
	        box-shadow: none;
	color: var(--color-turquoise) !important;
}

.hero-content .date {
	margin-bottom: 0;
}

@media screen and (max-width: 640px) {
	.lede {
		font-size: 1.25rem;
	}

	.breadcrumbs li a,
	.breadcrumbs li a:visited {
		font-size: 0.875rem;
	}
}

/*--------------------------------------------------------------
# Quote Callout Block
--------------------------------------------------------------*/
.quote-callout {
	background: var(--color-royal);
	color: var(--color-white);
	font-family: var(--font-montserrat);
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 0;
	padding-bottom: 40px;
}

.quotation {
	line-height: 1.25;
	padding: 40px 60px 10px 60px;
	position: relative;
}

.open-quote,
.close-quote {
	color: var(--color-gold);
}

.open-quote {
	padding-right: 5px;
	margin-left: -21px;
}

.close-quote {
	padding-left: 5px;
}

.attribution {
	background: var(--color-gold);
	color: var(--color-navy);
	display: inline-block;
	font-family: var(--font-montserrat);
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 1.25;
	margin: 0;
	padding: 12px 30px 12px 60px;
	text-transform: uppercase;
}

.attribution-line-2 {
	background: var(--color-navy);
	color: var(--color-white);
	display: inline-block;
	font-family: var(--font-montserrat);
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.25;
	margin: 0;
	padding: 8px 30px 8px 60px;
}

@media screen and (max-width: 800px) {
	.quote-callout {
		font-size: 1.375rem;
		font-weight: 600;
	}

	.quotation {
		padding: 30px 20px 10px 40px;
	}

	.attribution {
		font-size: 1.25rem;
		padding: 8px 12px 8px 40px;
	}

	.attribution-line-2 {
		font-size: 1rem;
		padding: 6px 12px 6px 40px;
	}

	.open-quote {
		margin-left: -17px;
	}
}

/*--------------------------------------------------------------
# Cards Block
--------------------------------------------------------------*/
.container-wrapper {
	width: 100%;
}

.cards-container,
.cards-container.widths-50-50 .flex-container {
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	gap: 30px;
	width: 100%;
}

.cards-container .flex-33 {
	-ms-flex-preferred-size: calc(33% - 17px);
	    flex-basis: calc(33% - 17px);
	flex-grow: 0;
	flex-shrink: 0;
}

.cards-container .flex-50,
.cards-container.widths-50-50 .flex-item {
	-ms-flex-preferred-size: calc(50% - 17px);
	    flex-basis: calc(50% - 17px);
}

.card {
	background: var(--color-white);
	border: 1px solid var(--color-blue-gray-opaque-60);
	border-radius: 5px;
	-webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
	transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	transition: transform 0.3s ease, box-shadow 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
}

.background-navy .card,
.text-white .card {
	color: var(--color-navy);
}

.card.clickable-div:hover {
	border-color: var(--color-blue-gray);
	-webkit-box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
	        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
	-webkit-transform: translateY(-3px);
	    -ms-transform: translateY(-3px);
	        transform: translateY(-3px);
}

.card.clickable-div:hover .button {
	background: var(--color-royal);
	color: var(--color-white);
}

.card.clickable-div:hover h3 {
	color: var(--color-royal);
}

.card-image {
	background-size: cover;
	background-position: center center;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	height: 200px;
	overflow: hidden;
}

.flex-50 .card-image {
	height: 300px;
}

.center-top {
	background-position: center top;
	height: 300px;
}

.card-top {
	padding: 24px;
}

.card-top h3 {
	font-family: var(--font-primary);
	font-size: 1.125rem;
	font-weight: 500;
	margin: 0 0 1rem 0;
}

.card-top p {
	margin: 0;
}

.card-top p.chip {
	margin-bottom: 1rem;
}

.card-bottom {
	margin-top: auto;
	padding: 0 24px 24px 24px;
}

.card .button,
.button-small {
	font-size: 1rem;
	padding: 10px 20px;
}

.card-top p.card-date {
	color: var(--color-gray-dark);
	font-size: 0.875rem;
	font-weight: 600;
	margin-top: 1rem;
}

/* Shortcode Cards */
.card-special {
	background: var(--color-gray-light);
	border-radius: 5px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	height: 100%;
	padding: 20px;
}

.background-light-gray .card-special {
	background: var(--color-white);
}

/* Issues Cards */
.block-builder-issues-list .card-top h3 {
	font-size: 1.25rem;
	font-weight: 650;
}

/* Team Cards */
.team-card {
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 1fr;
	grid-template-columns: 1fr 1fr;
	-ms-grid-rows: auto auto;
	grid-template-rows: auto auto;
	min-height: 325px;
}

.team-card > *:nth-child(1) {
	-ms-grid-row: 1;
	-ms-grid-column: 1;
}

.team-card > *:nth-child(2) {
	-ms-grid-row: 1;
	-ms-grid-column: 2;
}

.team-card > *:nth-child(3) {
	-ms-grid-row: 2;
	-ms-grid-column: 1;
}

.team-card > *:nth-child(4) {
	-ms-grid-row: 2;
	-ms-grid-column: 2;
}

.team-card .card-image {
	border-top-right-radius: 0;
	border-bottom-left-radius: 5px;
	-ms-grid-row: 1;
	-ms-grid-row-span: 2;
	grid-row: 1 / 3;
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
	grid-column: 1 / 2;
	height: 100%;
}

.team-card .card-top {
	-ms-grid-row: 1;
	-ms-grid-row-span: 1;
	grid-row: 1 / 2;
	-ms-grid-column: 2;
	-ms-grid-column-span: 1;
	grid-column: 2 / 3;
	padding: 16px;
}

.team-card .card-bottom {
	-ms-grid-row: 2;
	-ms-grid-row-span: 1;
	grid-row: 2 / 3;
	-ms-grid-column: 2;
	-ms-grid-column-span: 1;
	grid-column: 2 / 3;
	padding: 16px;
}

.team-card .card-top h3 {
	font-size: 1.375rem;
	font-weight: 600;
}

.team-card .card-preview {
	font-size: 0.875rem;
}

.team-card .card-top p.card-position {
	font-size: 1rem;
	font-weight: 500;
	color: var(--color-gray-dark);
	line-height: 1.25;
	margin-top: -0.75rem;
	margin-bottom: 1.5rem;
}

.card.clickable-div.team-card:hover {
	-webkit-box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
	        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
	-webkit-transform: none;
	    -ms-transform: none;
	        transform: none;
}

.team-card:hover .card-top p.card-position {
	color: var(--color-royal);
}

.team-card:hover .button-secondary {
	background: var(--color-royal);
	color: var(--color-white);
}

/* Mobile */
@media screen and (max-width: 1024px) {
	.cards-container .flex-33 {
		-ms-flex-preferred-size: calc(50% - 17px);
		    flex-basis: calc(50% - 17px);
	}

	.cards-container .flex-50.team-card {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
		-ms-grid-columns: 1fr 2fr;
		grid-template-columns: 1fr 2fr;
		min-height: 300px;
	}
}

@media screen and (max-width: 640px) {
	.block-builder-team-list .section-title {
		text-align: center;
	}

	.cards-container .flex-50.team-card {
		-ms-grid-columns: 1fr;
		grid-template-columns: 1fr;
		-ms-grid-rows: auto auto;
		grid-template-rows: auto auto;
		margin: 0 auto;
		max-width: 360px;
	}

	.cards-container .flex-50.team-card > *:nth-child(1) {
		-ms-grid-row: 1;
		-ms-grid-column: 1;
	}

	.cards-container .flex-50.team-card > *:nth-child(2) {
		-ms-grid-row: 2;
		-ms-grid-column: 1;
	}

	.team-card .card-image {
		background-position: center top;
		-ms-grid-row: 1;
		-ms-grid-row-span: 1;
		grid-row: 1 / 2;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-column: 1 / 2;
		border-top-right-radius: 5px;
		border-bottom-left-radius: 0;
		height: 300px;
	}

	.team-card .card-top {
		-ms-grid-row: 2;
		-ms-grid-row-span: 1;
		grid-row: 2 / 3;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-column: 1 / 2;
		padding: 16px;
	}

	.team-card .card-bottom {
		-ms-grid-row: 3;
		-ms-grid-row-span: 1;
		grid-row: 3 / 4;
		-ms-grid-column: 1;
		-ms-grid-column-span: 1;
		grid-column: 1 / 2;
		padding: 16px;
	}
}

@media screen and (max-width: 440px) {
	.cards-container .flex-50.team-card {
		max-width: 100%;
	}
}

/*--------------------------------------------------------------
# Gallery Block: Gallery Mode
--------------------------------------------------------------*/
.gallery {
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin: 0.5rem -10px 0 -10px;
}

.gallery-item {
	border-radius: 5px;
	display: inline-block;
	-ms-flex-preferred-size: calc(33.3% - 15px);
	    flex-basis: calc(33.3% - 15px);
	margin: 7.5px;
	overflow: hidden;
	position: relative;
	text-align: center;
}

.gallery-item a {
	display: block;
	position: relative;
}

.gallery-item img {
	border-radius: 5px;
	display: block;
	height: auto;
	vertical-align: middle;
	width: 100%;
}

.gallery-item a::after {
	background-color: var(--color-navy);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 22px;
	border-radius: 999px;
	-webkit-box-shadow: 0 8px 20px rgba(0,0,0,0.18);
	        box-shadow: 0 8px 20px rgba(0,0,0,0.18);
	content: "";
	height: 42px;
	opacity: 0;
	pointer-events: none;
	position: absolute;
		right: 14px;
		bottom: 14px;
	-webkit-transform: translateY(6px);
	    -ms-transform: translateY(6px);
	        transform: translateY(6px);
	-webkit-transition:
		opacity 0.25s ease,
		background-color 0.25s ease,
		-webkit-transform 0.25s ease;
	transition:
		opacity 0.25s ease,
		background-color 0.25s ease,
		-webkit-transform 0.25s ease;
	transition:
		opacity 0.25s ease,
		transform 0.25s ease,
		background-color 0.25s ease;
	transition:
		opacity 0.25s ease,
		transform 0.25s ease,
		background-color 0.25s ease,
		-webkit-transform 0.25s ease;
	width: 42px;
	z-index: 2;
}

.gallery-item a:hover::after {
	background-color: var(--color-royal);
	opacity: 1;
	-webkit-transform: translateY(0);
	    -ms-transform: translateY(0);
	        transform: translateY(0);
}

.gallery-item img {
	-webkit-transition:
		-webkit-transform 0.5s ease,
		-webkit-filter 0.4s ease;
	transition:
		-webkit-transform 0.5s ease,
		-webkit-filter 0.4s ease;
	transition:
		transform 0.5s ease,
		filter 0.4s ease;
	transition:
		transform 0.5s ease,
		filter 0.4s ease,
		-webkit-transform 0.5s ease,
		-webkit-filter 0.4s ease;
}

.gallery-item a:hover img {
	-webkit-filter: brightness(0.92);
	        filter: brightness(0.92);
	-webkit-transform: scale(1.03);
	    -ms-transform: scale(1.03);
	        transform: scale(1.03);
}

@media screen and (max-width: 900px) {
	.gallery-item {
		-ms-flex-preferred-size: calc(50% - 20px);
		    flex-basis: calc(50% - 20px);
	}

	.gallery-item a::after {
		font-size: 80px;
	}
}

@media screen and (max-width: 480px) {
	.gallery-item {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
	}
}

/*--------------------------------------------------------------
# Gallery Block: Slider Mode 
--------------------------------------------------------------*/
.gallery-slider {
	position: relative;
}

.gallery-slide img {
	border-radius: 5px;
}

/* Shared nav styles for both carousels */
.gallery-slider.owl-carousel .owl-nav,
.video-carousel.owl-carousel .owl-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    pointer-events: none;
	padding: 0;
    position: absolute;
		top: 50%;
		left: 0;
	    z-index: 10;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 100%;
}

.gallery-slider.owl-carousel .owl-nav button,
.video-carousel.owl-carousel .owl-nav button {
    background: var(--color-navy);
    border: 0;
    border-radius: 0;
    color: var(--color-white);
    font-size: 1.5rem;
    padding: 6px !important;
    pointer-events: all;
}

.gallery-slider.owl-carousel .owl-nav button:hover,
.video-carousel.owl-carousel .owl-nav button:hover {
    background: var(--color-royal);
    color: var(--color-white);
}

.gallery-slider.owl-carousel .owl-nav button.owl-prev,
.video-carousel.owl-carousel .owl-nav button.owl-prev {
    border-radius: 5px;
}

.gallery-slider.owl-carousel .owl-nav button.owl-next,
.video-carousel.owl-carousel .owl-nav button.owl-next {
    border-radius: 5px;
}

/* Padding to give arrows breathing room */
.gallery-slider.owl-carousel,
.video-carousel.owl-carousel {
    padding-left: 50px;
    padding-right: 50px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}

.video-carousel-item a {
    display: block;
    position: relative;
    aspect-ratio: 16/9;
    overflow: hidden;
}

.video-carousel-item a img {
	border-radius: 5px;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    display: block;
}

@media screen and (max-width: 1200px) {
	.block-builder-video-carousel .inner-wide {
		padding-left: 5px;
		padding-right: 5px;
	}

	.block-builder-video-carousel .section-title {
		padding-left: 20px;
		padding-right: 20px;
	}
}

/*--------------------------------------------------------------
# Video Block
--------------------------------------------------------------*/
.block-builder-video .video-poster {
	background: transparent;
	border: 0;
	cursor: pointer;
	display: block;
	padding: 0;
	position: relative;
	width: 100%;
}

.video-poster-wrapper {
	aspect-ratio: 16 / 9;
	position: relative;
	width: 100%;
}

.block-builder-video .video-poster img {
	border-radius: 5px;
	display: block;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	-o-object-position: center center;
	   object-position: center center;
	width: 100%;
}

.block-builder-video .video-play,
.video-carousel-item a .video-play {
	backdrop-filter: blur(2px);
	background: var(--color-gold-opaque-60);
	/* border: 1px solid var(--color-navy); */
	border-radius: 5px;
	-webkit-box-shadow: 5px 10px 20px rgba(0, 0, 0, 0.5);
	        box-shadow: 5px 10px 20px rgba(0, 0, 0, 0.5);
	height: 76px;
	inset: 0;
	margin: auto;
	position: absolute;
   	-webkit-transform: scale(1);
   	    -ms-transform: scale(1);
   	        transform: scale(1);
	-webkit-transition: background 200ms ease, -webkit-transform 200ms ease;
	transition: background 200ms ease, -webkit-transform 200ms ease;
	transition: transform 200ms ease, background 200ms ease;
	transition: transform 200ms ease, background 200ms ease, -webkit-transform 200ms ease;
	width: 76px;
}

.video-carousel-item a .video-play {
	height: 60px;
	width: 60px;
}

.block-builder-video .video-poster:hover .video-play,
.video-carousel-item a:hover .video-play {
	background: var(--color-gold);
	-webkit-box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.75);
	        box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.75);
	-webkit-transform: scale(1.08);
	    -ms-transform: scale(1.08);
	        transform: scale(1.08);
}

.block-builder-video .video-play:before,
.video-carousel-item a .video-play:before {
	border-left: 22px solid var(--color-navy);
	border-top: 14px solid transparent;
	border-bottom: 14px solid transparent;
	content: "";
	height: 0;
	position: absolute;
		top: 50%;
		left: 52%;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	width: 0;
}

.block-builder-video .video-embed {
	aspect-ratio: 16 / 9;
	position: relative;
	width: 100%;
}

.block-builder-video .video-embed iframe,
.block-builder-video .video-embed video {
	border: 0;
	border-radius: 5px;
	height: 100%;
	inset: 0;
	position: absolute;
	width: 100%;
}

@media screen and (max-width: 800px) {
	.block-builder-video .video-play {
		border-radius: 4px;
		height: 48px;
		width: 48px;
	}

	.block-builder-video .video-play:before {
		border-left: 16px solid var(--color-navy);
		border-top: 10px solid transparent;
		border-bottom: 10px solid transparent;
	}
}

/*--------------------------------------------------------------
# Accordions Block
--------------------------------------------------------------*/
.accordion-item {
	background: var(--color-gray-light);
	border: 1px solid var(--color-blue-gray);
	border-radius: 5px;
	margin-bottom: 1.5rem;
	-webkit-transition: -webkit-box-shadow 200ms ease;
	transition: -webkit-box-shadow 200ms ease;
	transition: box-shadow 200ms ease;
	transition: box-shadow 200ms ease, -webkit-box-shadow 200ms ease;
}

.accordion-item:hover {
	-webkit-box-shadow: 0 10px 20px rgba(0,0,0,0.15);
	        box-shadow: 0 10px 20px rgba(0,0,0,0.15);
}

.accordion-title {
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
	gap: 16px;
	padding: 20px;
}

.accordion-title h3 {
	color: var(--color-navy);
	font-family: var(--font-oswald);
	font-size: 1.375rem;
	margin: 0;
	text-transform: uppercase;
}

.accordion-content {
	display: none;
	padding: 0 20px 14px 20px;
}

.accordion-trigger,
.accordion-trigger:active,
.accordion-trigger:focus,
.accordion-trigger:hover {
	background: transparent;
	border-radius: 0;
	color: var(--color-navy);
	padding: 0 0 0 5px;
}

@media screen and (max-width: 800px) {
	.accordion-title {
		padding: 15px;
	}

	.accordion-content {
		padding: 0 15px 15px 15px;
	}

	.accordion-title h3 {
		font-size: 1.25rem;
	}

	.accordion-icon {
		font-size: 1.25rem;
	}
}

/*--------------------------------------------------------------
# Featured Posts Block
--------------------------------------------------------------*/
.pills-container {
	background: var(--color-blue-gray);
	padding: 20px;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	gap: 20px;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.background-blue-gray .pills-container {
	padding: 10px 0 30px 0;
}

.pills-container .flex-33 {
	-ms-flex-preferred-size: calc(33% - 12px);
	    flex-basis: calc(33% - 12px);
}

.pills-container .flex-50 {
	-ms-flex-preferred-size: calc(50% - 12px);
	    flex-basis: calc(50% - 12px);
}

.pill {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	background: rgba(255, 255, 255, 0.7);
	border: 1px solid var(--color-blue-gray-opaque-60);
	border-radius: 5px;
	-webkit-box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 16px;
	padding: 10px;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.pill:hover {
	background: rgba(255, 255, 255, 0.9);
	border-color: var(--color-blue-gray-opaque-90);
	-webkit-box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
	        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

.pill:hover .button {
	background: var(--color-royal);
	color: var(--color-white);
}

.pill .card-top {
	padding: 6px;
}

.pill .card-bottom {
	margin-top: 0;
	min-width: 100px;
	padding: 6px 0;
	text-align: right;
}

.pill h3 {
	font-family: var(--font-primary);
	font-size: 1rem;
	margin: 0;
}

.pill .button {
	display: block;
	font-size: 0.9375rem;
	padding: 8px;
}

.pill-vertical {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.pill-vertical .chip {
	margin-bottom: 1rem;
}

@media screen and (max-width: 1200px) {
	.pills-container .flex-33 {
		-ms-flex-preferred-size: calc(50% - 12px);
		    flex-basis: calc(50% - 12px);
	}
}

@media screen and (max-width: 1024px) {
	.background-blue-gray .pills-container {
		padding: 0 0 10px 0;
	}

	.pill {
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		gap: 8px;
	}

	.pill .card-bottom {
		margin-top: auto;
		text-align: left;
	}
}

/*--------------------------------------------------------------
# Highlighted Posts Block
--------------------------------------------------------------*/
/* Container */
.highlights-flex {
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	gap: 30px;
}

.highlights-flex .flex-50 {
	-ms-flex-preferred-size: calc(50% - 15px);
	    flex-basis: calc(50% - 15px);
}

@media screen and (max-width: 1024px) {
	.highlights-flex {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}

	.highlights-flex .flex-50 {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
	}
}

/* General Styles */
.block-builder-posts-highlighted .pill {
	background: var(--color-gray-light-opaque-80);
}

.block-builder-posts-highlighted .pill:hover {
	background: var(--color-white);
}

.block-builder-posts-highlighted a,
.block-builder-posts-highlighted a:visited {
	color: var(--color-navy);
}

.block-builder-posts-highlighted a:active,
.block-builder-posts-highlighted a:focus,
.block-builder-posts-highlighted a:hover {
	color: var(--color-royal);
}

/* First column: large main highlight */
.main-highlight-link,
.main-highlight-item {
	height: 100%;
	min-height: 600px;
}

.main-highlight-item {
	-webkit-box-align: flex-start;
	    -ms-flex-align: flex-start;
	        align-items: flex-start;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: flex-end;
	width: 100%;
}

.main-highlight-content {
	background: rgba(0, 0, 0, 0.7);
	border-radius: 0;
	margin-top: 100px;
	padding: 20px 20px 30px 20px;
	text-align: center;
	width: 80%;
}

.main-highlight-content h3 {
	color: var(--color-white);
	font-size: 1.75rem;
	font-weight: 700;
	text-wrap: balance;
}

.main-highlight-content h3.long-title {
	font-size: 1.375rem;
	font-weight: 700;
}

.highlight-excerpt {
	color: var(--color-white);
	font-size: 1rem;
	font-weight: 500;
	font-style: italic;
	margin: 0.75rem 0 0 0;
	text-wrap: balance;
}

.main-highlight-content p.date {
	color: var(--color-gray-light-opaque-80);
	font-size: 0.875rem;
	margin-bottom: 0;
}

.main-highlight-link:hover .main-highlight-item {
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
}

.main-highlight-link:hover .main-highlight-content {
	background: rgba(0, 0, 0, 0.8);
}

.main-highlight .chip {
	display: none;
}

@media screen and (max-width: 1024px) { 
	.main-highlight-link,
	.main-highlight-item {
		height: 100%;
		min-height: 0;
	}

	.main-highlight-item,
	.main-highlight-link:hover .main-highlight-item {
		background-size: cover;
		padding: 120px 40px;
	}

	.main-highlight-content {
		padding: 15px 15px 25px 15px;
		width: 100%;
	}

	.main-highlight-content h3 {
		font-size: 1.125rem;
	}
}

/* Second column: list of smaller highlights */
.highlights-list .pill {
	margin-bottom: 20px;
}

.highlight-item .chip {
	margin-bottom: 0.5rem;
}

.highlight-item h3 {
	font-size: 1.125rem;
	font-weight: 600;
	margin: 0 0 0.5rem 0;
	padding: 0 15px;
}

.highlight-item p.date {
	color: var(--color-gray-dark);
	font-size: 0.875rem;
	margin: 0 0 0.5rem 0;
}

.highlight-item {
	width: 100%;
}

.highlight-item-meta {
	align-items: center;
	display: flex;
	justify-content: space-between;
	gap: 15px;
	margin-bottom: 0.5rem;
	padding: 0 5px;
}

@media screen and (max-width: 1024px) { 
	.highlight-item h3 {
		font-size: 1rem;
	}
}

/*--------------------------------------------------------------
# Single Team Member
--------------------------------------------------------------*/
.team-member-content .flex-container {
	gap: 40px;
}

.team-member-headshot {
	vertical-align: middle;
	width: 355px;
}

/*--------------------------------------------------------------
# Filterable Posts Block
--------------------------------------------------------------*/
/* Checkbox Filters: Categories & Tags */
.filters-container .facetwp-type-checkboxes {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 1.5rem;
}

.filters-container .facetwp-type-checkboxes .facetwp-checkbox {
	background: var(--color-blue-gray-opaque-40);
	border: 1px solid var(--color-navy-opaque-40);
	border-radius: 20px;
	color: var(--color-gray-dark);
	display: inline-block;
	font-family: var(--font-oswald);
	font-size: 0.875rem;
	font-weight: 400;
	line-height: 1.25;
	padding: 5px 15px;
	text-align: center;
	text-transform: uppercase;
}

.filters-container .facetwp-type-checkboxes .facetwp-checkbox:hover,
.filters-container .facetwp-type-checkboxes .facetwp-checkbox.checked {
	background: var(--color-blue-gray);
	color: var(--color-black);
}

.filters-container .facetwp-display-value {
	padding-right: 0;
}

.filters-container .facetwp-counter {
	display: none;
}

.background-blue-gray .filters-container .facetwp-type-checkboxes .facetwp-checkbox {
	background: rgba(255, 255, 255, 0.7);
	color: var(--color-gray-dark);
}

.background-blue-gray .filters-container .facetwp-type-checkboxes .facetwp-checkbox:hover,
.background-blue-gray .filters-container .facetwp-type-checkboxes .facetwp-checkbox.checked {
	background: var(--color-white);
	color: var(--color-black);
}

/* Search Filter */
.facetwp-facet input.facetwp-search {
	background: transparent;
}

/* Results Customizations */
.pills-container-start {
	background: transparent;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	padding: 0;
}

.load-more-container {
	text-align: center;
	margin-top: 30px;
}

/* Alt Display for The Latest page */
.filters-container-side {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.filters-container-side .filters-panel {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 300px;
	        flex: 0 0 300px;
	margin-right: 30px;
}

.filters-container-side .facetwp-facet input.facetwp-search {
	min-width: 300px;
}

.filters-side .facetwp-checkbox {
	background-position: 0 6px;
}

@media screen and (max-width: 1260px) {
	.filters-container-side .cards-container .flex-33 {
		-ms-flex-preferred-size: calc(50% - 15px);
		    flex-basis: calc(50% - 15px);
	}
}

@media screen and (max-width: 1024px) {
	.filters-container-side {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}

	.filters-container-side .filters-panel {
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-ms-flex-pack: distribute;
		    justify-content: space-around;
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 100%;
		        flex: 0 0 100%;
		margin-right: 0;
		margin-bottom: 30px;
	}

	.filters-container-side .facetwp-facet-search {
		margin-bottom: 1.5rem;
	}

	.filters-container-side .facetwp-facet input.facetwp-search {
		min-width: 0;
	}

	.filters-container-side .accordion-item {
		position: relative;
		width: 250px;
	}

	.filters-container-side .accordion-title {
		padding: 15px;
	}

	.filters-container-side .accordion-title h3 {
		font-family: var(--font-open-sans);
		font-size: 1rem;
		font-weight: 600;
		text-transform: none;
	}

	.filters-container-side .accordion-content {
		background: var(--color-gray-light);
		border-right: 1px solid var(--color-blue-gray);
		border-bottom: 1px solid var(--color-blue-gray);
		border-left: 1px solid var(--color-blue-gray);
		border-bottom-left-radius: 5px;
		border-bottom-right-radius: 5px;
		margin-top: -1px;
		padding-top: 10px;
		padding-bottom: 0;
		position: absolute;
			left: 0;
			right: 0;
	}
}

/* FacetWP Pagination */
.facetwp-pager {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
    gap: 6px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
	margin-top: 70px;
}

.facetwp-pager .facetwp-page {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-color: var(--color-white);
    border: 1px solid var(--color-navy);
    color: var(--color-navy);
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
	margin-right: 0;
    min-width: 42px;
    height: 42px;
    padding: 0 10px;
    text-decoration: none;
}

.facetwp-pager .facetwp-page:hover {
    background-color: var(--color-navy);
    color: var(--color-white);
	-webkit-box-shadow: none;
	        box-shadow: none;
}

.facetwp-pager .facetwp-page.active {
    background-color: var(--color-navy);
    border-color: var(--color-navy);
    color: var(--color-white);
}

.facetwp-pager .facetwp-page.prev,
.facetwp-pager .facetwp-page.next {
    border-color: var(--color-navy);
    color: var(--color-navy);
    background-color: var(--color-white);
    padding: 0 14px;
}

.facetwp-pager .facetwp-page.prev:hover,
.facetwp-pager .facetwp-page.next:hover {
    background-color: var(--color-navy);
    border-color: var(--color-navy);
    color: var(--color-white);
	-webkit-box-shadow: none;
	        box-shadow: none;
}

.facetwp-pager .facetwp-page.dots {
    border-color: transparent;
    background-color: transparent;
    color: var(--color-gray);
    cursor: default;
    min-width: 24px;
    padding: 0;
}

.facetwp-pager .facetwp-page.dots:hover {
    background-color: transparent;
    color: var(--color-gray);
}

/*--------------------------------------------------------------
# PDF Embed Block
--------------------------------------------------------------*/
.pdf-viewer-iframe {
    height: 1100px;
}

@media (max-width: 768px) {
    .pdf-viewer-iframe {
        height: 600px;
    }
}

/*--------------------------------------------------------------
# Buttons Block
--------------------------------------------------------------*/
.buttons-container {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: 20px;
}

/*--------------------------------------------------------------
# HTML Block: Overflow Handling
--------------------------------------------------------------*/
.html-block-overflow {
	max-width: 100%;
	overflow-x: auto;
}

/*--------------------------------------------------------------
# Various Embeds (Maps, Flourish Charts, etc.)
--------------------------------------------------------------*/
.flourish-embed {
	border: 2px solid var(--color-blue-gray);
	border-radius: 5px;
	margin-left: auto;
	margin-right: auto;
	padding: 20px;
	width: 90%;
}

.wptb-table-container {
	overflow-x: auto;
}

.wptb-table-container table {
	min-width: 1000px;
}

.table-policy-tracker .wptb-table-container table {
	min-width: 1100px !important;
}

.table-policy-tracker .wptb-table-container table th {
	background: var(--color-blue-gray) !important;
	color: var(--color-navy);
	font-family: var(--font-oswald);
	font-size: 0.875rem;
	font-weight: 600;
	padding: 10px;
	text-align: left;
	text-transform: uppercase;
}

.table-policy-tracker .wptb-table-container table th:first-child,
.table-policy-tracker .wptb-table-container table th:nth-child(2),
.table-policy-tracker .wptb-table-container table th:nth-child(3),
.table-policy-tracker .wptb-table-container table th:nth-child(5),
.table-policy-tracker .wptb-table-container table th:nth-child(6) {
	/* narrow */
	width: 10%;
}

.table-policy-tracker .wptb-table-container table th:nth-child(4) {
	/* medium */
	width: 15%;
}

.table-policy-tracker .wptb-table-container table th:nth-child(7) {
	/* wide */
	width: 35%;
}

.wptb-style-isolation:not(#wptb-style-isolation):not(#wptb-style-isolation) .wptb-row.wptb-pagination-hidden:first-child {
	display: table-row !important;
}

.read-more-btn {
	background: transparent;
	color: var(--color-royal);
	font-size: 1rem;
	padding: 10px 0;
}

.read-more-btn::after {
  	content: "\25B4";
	display: inline-block;
	margin-top: -2px;
	padding: 0 0 0 5px;
	vertical-align: top;
}

.read-more-btn:active,
.read-more-btn:focus,
.read-more-btn:hover {
	background: transparent;
	color: var(--color-navy);
}

.rethink-last-col-inner {
  	position: relative;
}

.rethink-last-col-inner.collapsed::after {
  	background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#ffffff));
  	background: linear-gradient(to bottom, transparent, #ffffff);
	content: '';
	position: absolute;
  		bottom: 0;
  		left: 0;
  		right: 0;
  	height: 25px;
  	pointer-events: none;
}

.wptb-row:nth-child(odd) .rethink-last-col-inner.collapsed::after {
  	background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#f0f0f0));
  	background: linear-gradient(to bottom, transparent, #f0f0f0);
}

.rethink-last-col-inner.collapsed + .read-more-btn::after {
  	content: "\25BE";
}

/*--------------------------------------------------------------
# Logos Block
--------------------------------------------------------------*/
.logo-wall-container {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: 30px;
}

.logo-wall-item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.logo-wall-item img {
	max-width: 300px;
	max-height: 150px;
	-o-object-fit: contain;
	   object-fit: contain;
	-o-object-position: center center;
	   object-position: center center;
	-webkit-transition: -webkit-transform 0.3s ease, -webkit-filter 0.3s ease;
	transition: -webkit-transform 0.3s ease, -webkit-filter 0.3s ease;
	transition: transform 0.3s ease, filter 0.3s ease;
	transition: transform 0.3s ease, filter 0.3s ease, -webkit-transform 0.3s ease, -webkit-filter 0.3s ease;
}

.logo-wall-item a:active,
.logo-wall-item a:focus,
.logo-wall-item a:hover {
	-webkit-box-shadow: none;
	        box-shadow: none;
}

.logo-wall-item a:hover img {
	-webkit-transform: scale(1.025);
	    -ms-transform: scale(1.025);
	        transform: scale(1.025);
}

/*--------------------------------------------------------------
# Icons List
--------------------------------------------------------------*/
.icons-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: 1rem;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
}

.icons-list li a,
.icons-list li a:active,
.icons-list li a:focus,
.icons-list li a:hover,
.icons-list li a:visited {
	-webkit-box-shadow: none;
	        box-shadow: none;
}

.icons-list li a:hover img {
	-webkit-transform: scale(1.1);
	    -ms-transform: scale(1.1);
	        transform: scale(1.1);
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: -webkit-transform 0.3s ease;
	transition: transform 0.3s ease;
	transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.icons-list li img {
	border-radius: 5px;
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: -webkit-transform 0.3s ease;
	transition: transform 0.3s ease;
	transition: transform 0.3s ease, -webkit-transform 0.3s ease;
	vertical-align: middle;
	width: 50px;
}

/*--------------------------------------------------------------
# 404 Page
--------------------------------------------------------------*/
.error-404 .search-form,
.not-found .search-form {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 12px;
}

.error-404 input[type="search"],
.not-found input[type="search"] {
	border: 1px solid var(--color-blue-gray);
	border-radius: 5px;
	font-size: 1rem;
	padding: 11px;
	width: 100%;
}
