/*!
Theme Name: Bob Marley Hope Road
Theme URI: http://underscores.me/
Author: Bob Marley Hope Road
Author URI: https://hoperoad.com/
Description: Custom theme for Bob Marley Hope Road
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: hoperoad
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.

Bob Marley Hope Road 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
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# 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
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #ffffff;
	font-family: proxima-nova, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.125rem;
	line-height: 1.25;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	line-height: 100%;
	margin-top: 0.5rem;
	margin-bottom: 1.5rem;
}

h1 {
	font-family: barlow-condensed, sans-serif;
	font-size: 5rem;
	font-style: normal;
	font-weight: 700;
	letter-spacing: -1.6px;
	text-transform: uppercase;
}

h2 {
	font-family: proxima-nova, sans-serif;
	font-size: 4.25rem;
	font-style: normal;
	font-weight: 800;
	text-transform: uppercase;
}

h3 {
	font-family: proxima-nova, sans-serif;
	font-size: 2.125rem;
	font-style: normal;
	font-weight: 700;
}

h4 {
	font-family: proxima-nova, sans-serif;
	font-size: 1.5rem;
	font-style: normal;
	font-weight: 700;
}

h5 {
	font-family: proxima-nova, sans-serif;
	font-size: 1.25rem;
	font-style: italic;
	font-weight: 400;
}

h6 {
	font-family: proxima-nova, sans-serif;
	font-size: 1rem;
	font-style: italic;
	font-weight: 400;
}

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

.body-medium {
	font-size: 1.875rem;
}

.body-large {
	font-size: 2.5rem;
}

.attribution {
	font-style: italic;
	font-size: 1.75rem;
	letter-spacing: -0.56px;
	text-transform: uppercase;
}

.eyebrow {
	font-family: barlow-condensed, sans-serif;
	font-size: 2rem;
	font-style: normal;
	font-weight: 700;
	line-height: 100%;
	text-transform: uppercase;
}

.header-bold {
	font-family: barlow-condensed, sans-serif;
	font-size: 3.125rem;
	font-style: normal;
	font-weight: 700;
	letter-spacing: -1px;
	line-height: 100%;
	text-transform: uppercase;
}

.header-xl {
	font-family: barlow-condensed, sans-serif;
	font-size: 5.625rem;
	font-style: normal;
	font-weight: 400;
	letter-spacing: -1.6px;
	line-height: 1 !important;
	text-transform: uppercase;
	text-wrap: balance;
}

.header-large {
	font-family: barlow-condensed, sans-serif;
	font-size: 3.125rem;
	font-style: normal;
	font-weight: 400;
	letter-spacing: -1px;
	line-height: 1 !important;
	text-transform: uppercase;
	text-wrap: balance;
}

.text-gold {
	color: #fec818;
}

.text-gold a,
.text-gold a:visited {
	color: #fec818;
}

.text-gold a:active,
.text-gold a:focus,
.text-gold a:hover {
	color: #ffffff;
	text-decoration: none;
}

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

blockquote {
	margin: 0 auto;
	max-width: 100%;
	width: 800px;
}

blockquote p {
	color: #ffc62f;
	font-size: 1.875rem;
}

blockquote p em {
	color: #ffffff;
	display: block;
	margin-top: 0.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%;
}

/*--------------------------------------------------------------
# Responsive Typography
--------------------------------------------------------------*/

@media (max-width: 1200px) {
    h1 { font-size: 4.25rem; }
}

@media (max-width: 1024px) {
    h1 { font-size: 4rem; letter-spacing: -1.2px; }
    h2 { font-size: 3rem; }
    h3 { font-size: 1.875rem; }
    h4 { font-size: 1.375rem; }
    h5 { font-size: 1.125rem; }
    h6 { font-size: 0.875rem; }

    .category { font-size: 1.25rem; }
    .body-medium { font-size: 1.5rem; }
    .body-large { font-size: 2rem; }

    .header-bold { font-size: 2.75rem; letter-spacing: -0.8px; }
    .header-xl { font-size: 4.5rem; letter-spacing: -1.2px; }
}

@media (max-width: 768px) {
    h1 { font-size: 3rem; letter-spacing: -1px; }
    h2 { font-size: 2.75rem; }
    h3 { font-size: 1.5rem; }
    h4 { font-size: 1.25rem; }
    h5 { font-size: 1rem; }
    h6 { font-size: 0.875rem; }

    .category { font-size: 1.125rem; }
    .body-medium { font-size: 1.375rem; }
    .body-large { font-size: 1.75rem; }

    .header-bold { font-size: 2.5rem; letter-spacing: -0.6px; }
    .header-xl { font-size: 3.75rem; letter-spacing: -1px; }
}

@media (max-width: 480px) {
    h1 { font-size: 2.5rem; letter-spacing: -0.8px; }
    h2 { font-size: 2.25rem; }
    h3 { font-size: 1.25rem; }
    h4 { font-size: 1.125rem; }
    h5 { font-size: 0.875rem; }
    h6 { font-size: 0.75rem; }

    .category { font-size: 1rem; }
    .body-medium { font-size: 1.25rem; }
    .body-large { font-size: 1.5rem; }

    .header-bold { font-size: 2rem; letter-spacing: -0.5px; }
    .header-xl { font-size: 3rem; letter-spacing: -0.8px; }
}


/* Elements
--------------------------------------------- */
body {
	background: #090909 url('/wp-content/themes/hoperoad/assets/hope-road-background-sticky-min.jpg') no-repeat center top;
	background-size: 100% auto;
	background-attachment: fixed;
	color: #ffffff;
}

/* body.home {
	background-position: center 90vh;
} */

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

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

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

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

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

figure {
	margin: 1em 0;
}

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

@media screen and (max-width: 500px) {
	body {
		background-size: 250% auto;
	}
}

/* Links
--------------------------------------------- */
a,
a:visited {
	color: #ffffff;
	text-decoration: underline;
}

a:hover,
a:focus,
a:active {
	color: #ffc62f;
	text-decoration: none;
}

a:focus {
	outline: 1px dotted #ffc62f;
}

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

/* more link */
.more,
.more:visited {
    color: #ffffff;
    font-size: 2.125rem;
    font-weight: 800;
    text-decoration: none;
    text-transform: uppercase;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
    -webkit-transition: color 0.2s ease-in-out;
    -o-transition: color 0.2s ease-in-out;
    transition: color 0.2s ease-in-out;
}

.more::after {
    content: "";
    display: inline-block;
    width: 24px; 
    height: 24px;
    background: url('/wp-content/themes/hoperoad/assets/right-arrow-yellow.png') no-repeat center center;
    background-size: contain;
    margin-left: 10px;
    -webkit-transform: translateX(0px);
        -ms-transform: translateX(0px);
            transform: translateX(0px);
    -webkit-transition: -webkit-transform 0.2s ease-in-out;
    transition: -webkit-transform 0.2s ease-in-out;
    -o-transition: transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;    
    -webkit-filter: brightness(0) invert(1);    
            filter: brightness(0) invert(1);
}

.more:hover {
    color: #FFC62F;
}

.more:hover::after {
    -webkit-filter: none;
            filter: none;
    -webkit-transform: translateX(5px);
        -ms-transform: translateX(5px);
            transform: translateX(5px); 
}

.more:active,
.more:focus {
    color: #ffffff;
}

.more-small {
	font-size: 1.4rem;
}

.more-after {
	width: 16px;
	height: 16px;
	margin-top: -3px;
}

@media screen and (max-width: 1024px) {
	.more,
	.more:visited {
		font-size: 1.5rem;
	}

	.more:after {
		width: 18px;
		height: 18px;
	}
}

/* button links */
.button,
.button:visited {
	border: 0;
	border-radius: 30px;
	background: -o-linear-gradient(356deg, #E58829 0%, #DE2726 133.54%);
	background: linear-gradient(94deg, #E58829 0%, #DE2726 133.54%);
	display: inline-block;
	font-weight: 700;
	line-height: 1;
	padding: 12px 40px 10px 40px;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
}

.button:active,
.button:focus,
.button:hover {
	background: #a41919;
	color: #ffda76;
}

.button-large {
	font-size: 1.4rem;
}

.button + .more {
	margin-left: 1rem;
}

@media screen and (max-width: 1200px) {
	.button + .more {
		display: block;
		margin-left: 0;
		margin-top: 1.5rem;
	}
}

@media screen and (max-width: 640px) {
	.button {
		padding: 12px 25px 10px 25px;
	}

	.button-large {
		font-size: 1.2rem;
	}
}

/* back links */
.back-link {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    text-decoration: none;
}

.back-link::before {
    content: "←";
    font-size: 1.2rem;
    margin-right: 0.5rem;
    -webkit-transition: -webkit-transform 0.2s ease-in-out;
    transition: -webkit-transform 0.2s ease-in-out;
    -o-transition: transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
}

.back-link:hover {
    color: #fec818; /* Change color on hover */
}

.back-link:hover::before {
    -webkit-transform: translateX(-2px);
        -ms-transform: translateX(-2px);
            transform: translateX(-2px);
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 0;
	border-radius: 30px;
	background: -o-linear-gradient(356deg, #E58829 0%, #DE2726 133.54%);
	background: linear-gradient(94deg, #E58829 0%, #DE2726 133.54%);
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1 !important;
	min-height: 0 !important;
	padding: 12px 40px 10px 40px;
	text-transform: uppercase;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	background: #a41919;
	color: #ffda76;
}

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: #a41919;
	color: #ffda76;
}

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 {
	border-radius: 30px;
	border: 3px solid #fec818;
	background: #FFF;
	color: #B7B7B7;
	padding: 10px 25px !important;
}

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 {
	border: 3px solid #fec818;
	-webkit-box-shadow: 0px 0px 15px 4px rgba(255, 198, 47, 0.5);
	        box-shadow: 0px 0px 15px 4px rgba(255, 198, 47, 0.5);
	color: #090909;
	outline: 0 !important;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

input[type="checkbox"],
input[type="radio"] {
	opacity: 0;
	position: absolute;
	width: 1px;
	height: 1px;
	margin: 0;
	padding: 0;
	border: 0;
	clip: rect(0 0 0 0);
	clip-path: inset(100%);
	overflow: hidden;
	white-space: nowrap;
}


input[type="checkbox"] + label,
input[type="radio"] + label {
	cursor: pointer;
	display: inline-block;
	font-size: 0.875rem;
	line-height: 1;
	vertical-align: top;
}

input[type="checkbox"] + label:before {
	border: 2px solid #ffffff;
	border-radius: 0;
	content: "\00a0";
	display: inline-block;
	height: 16px;
	margin: -.15rem 0.5rem 0 0;
	padding: 0;
	vertical-align: top;
	width: 16px;
}

input[type="radio"] + label:before {
	border: 1px solid #ffffff;
	border-radius: 50%;
	content: "\00a0";
	display: inline-block;
	font: 16px/1rem sans-serif;
	height: 16px;
	margin: 0 .25rem 0 -1rem;
	padding: 0;
	vertical-align: top;
	width: 16px;
}

input[type="checkbox"]:checked + label:before,
input[type="radio"]:checked + label:before {
	background: #090909;
	color: #fec818;
	content: "\2713";
	text-align: center;
}

input[type="checkbox"]:checked + label:after,
input[type="radio"]:checked + label:after {
	font-weight: bold;
}

input[type="checkbox"]:focus + label::before,
input[type="radio"]:focus + label::before {
	outline: 2px solid #fec818;
}

/* Gravity Forms Overrides
--------------------------------------------- */
.gform_heading {
	display: none;
}

.gform_wrapper.gravity-theme .gform_validation_errors {
	outline: 0 !important;
}

.gform_wrapper.gravity-theme .gfield_error .gfield_repeater_cell label, 
.gform_wrapper.gravity-theme .gfield_error label, 
.gform_wrapper.gravity-theme .gfield_error legend, 
.gform_wrapper.gravity-theme [aria-invalid="true"] + label, 
.gform_wrapper.gravity-theme label + [aria-invalid="true"],
.gform_wrapper.gravity-theme .gfield_required {
	color: #ffffff !important;
}

.entry-content .gform_wrapper.gravity-theme .gfield_label {
	font-size: 1.125rem !important;
	font-weight: 400 !important;
	margin-top: 1rem;
}

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

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

/* Navigation
--------------------------------------------- */
.site-header {
	background: rgba(2, 1, 0, 0.50);
	-webkit-backdrop-filter: blur(7px);
	        backdrop-filter: blur(7px);
	padding-top: 18px;
	padding-bottom: 18px;
	position: fixed;
		top: 0;
		right: 0;
		left: 0;
		z-index: 1000;
}

.header-flex {
	-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;
}

.site-branding {
	-ms-flex-preferred-size: 320px;
	    flex-basis: 320px;
	text-transform: uppercase;
}

.site-branding img {
	vertical-align: middle;
	width: 200px;
}

.site-branding .body-medium {
	font-size: 1.5rem;
	font-weight: 800;
	margin-bottom: 0;
}

.site-branding p:not(.body-medium) {
	font-size: 0.875rem;
	margin-top: 0.5rem;
}

.main-navigation {
	-ms-flex-preferred-size: calc(100% - 350px);
	    flex-basis: calc(100% - 350px);
	font-weight: 800;
	text-transform: uppercase;
}

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

.main-navigation li {
	/* flex-basis: 20%; */
	padding: 0 15px;
	position: relative;
}

.main-navigation a {
	display: block;
	min-width: 130px;
	padding: 10px 0;
	text-align: center;
	text-decoration: none;
}

.main-navigation .highlight > a {
	color: #ffc62f;
}

.main-navigation a span {
	display: block;
}

@media screen and (max-width: 1200px) {
	.site-branding {
		-ms-flex-preferred-size: 220px;
		    flex-basis: 220px;
	}

	.main-navigation {
		-ms-flex-preferred-size: calc(100% - 250px);
		    flex-basis: calc(100% - 250px);
		font-size: 1rem;
	}

	.site-branding .body-medium {
		font-size: 1.25rem;
		line-height: 1.2;
	}
}

@media screen and (max-width: 1100px) {
	.main-navigation a {
		min-width: 100px;
	}
}

/* Submenu */
.mega-menu .main-navigation ul li > a {
	height: 0;
    visibility: hidden;
}

.mega-menu .main-navigation ul li .sub-menu {
	border-top: 1px solid #ffc62f;
	margin-top: -40px;
	padding-top: 10px;
}

.mega-menu .main-navigation ul li.menu-button .sub-menu {
	border-top: 0;
	margin-top: -52px;
}

.mega-menu .main-navigation ul li .sub-menu li a {
	height: auto;
	opacity: 0.6;
	text-align: left;
	text-wrap: balance;
	visibility: visible;
}

.mega-menu .main-navigation ul li.highlight .sub-menu li a {
	opacity: 1;
}

.main-navigation ul .sub-menu {
	display: block;
	font-weight: 400;
	margin: 0;
	padding: 0;
	text-transform: none;
}

.main-navigation ul .sub-menu li {
	padding: 0;
}

.main-navigation ul .sub-menu a {
	padding: 8px 0;
}

/* Ticketing Special Styles */
.menu-button > a,
.menu-button > a:visited {
	border-radius: 30px;
	background: -o-linear-gradient(356deg, #B91F1F 0%, #FFC62F 133.54%);
	background: linear-gradient(94deg, #B91F1F 0%, #FFC62F 133.54%);
	display: inline-block;
	padding: 10px 30px;
	text-align: center;
	text-wrap: balance;
}

.menu-button > a:active,
.menu-button > a:focus,
.menu-button > a:hover,
.menu-button.highlight > a {
	background: #A41919;
}

.ticket-link {
	position: relative;
}

.ticket-link > a {
	padding-left: 22px !important;
}

.ticket-link:before {
	background: transparent url('/wp-content/themes/hoperoad/assets/ticketlink.png') no-repeat center center;
	background-size: contain;
	content: "";
	height: 22px;
	position: absolute;
		top: 4px;
	width: 18px;
}

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

.menu-toggle,
.menu-toggle:active,
.menu-toggle:focus,
.menu-toggle:hover,
.expand,
.expand:active,
.expand:focus,
.expand:hover {
	background: transparent;
	border: 0;
	border-radius: 0;
}

.submenu-toggle {
	display: none;
}

@media screen and (min-width: 1000px) {
	/* Initially hide the mega menu */
	.mega-menu {
		/* display: none; */
		height: 0;
		opacity: 0;
		padding-bottom: 10px;
		visibility: hidden;
		-webkit-transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
		-o-transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
		transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
	}

	/* Show the mega menu when hovering over the navigation */
	.site-header:hover .mega-menu,
	.mega-menu.visible {
		/* display: block; */
		height: auto;
		opacity: 1;
		visibility: visible;
	}

	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: space-evenly;
		    -ms-flex-pack: space-evenly;
		        justify-content: space-evenly;
	}

	.mega-menu .main-navigation ul {
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
	}
}

@media screen and (max-width: 999px) {
	.mega-menu .site-branding {
		display: none;
	}

	.main-navigation {
		-ms-flex-preferred-size: auto;
		    flex-basis: auto;
	}

	.site-header.mobile-menu-open {
		height: 100vh;
	}

	.toggled .menu-main-menu-container {
		padding-top: 10px;
		padding-bottom: 20px;
		position: fixed;
		top: 99px;
		right: 0;
		left: 0;
		z-index: 1000;
		max-height: calc(100vh - 99px);
    	overflow-y: scroll;
		transform: translateZ(0);
	}

	.main-navigation li {
		margin: 10px 0;
		position: relative;
		text-align: left;
		width: 100% !important;
	}

	.main-navigation ul .sub-menu li {
		margin: 5px 0;
	}

	.mega-menu .main-navigation ul li > a {
		height: auto;
		visibility: visible;
	}

	.menu-button > a, 
	.menu-button > a:visited {
		margin-top: 0;
	}

	.main-navigation a {
		display: inline-block;
		text-align: left;
	}

	.site-branding img {
		width: 150px;
	}

	.submenu-toggle,
	.submenu-toggle:active,
	.submenu-toggle:focus,
	.submenu-toggle:hover {
		background: none;
		border: none;
		padding: 15px;
		cursor: pointer;
		display: block;
		height: 42px;
		position: absolute;
			right: 20px;
			top: -7px;
		width: 42px;
	}

	.menu-button .submenu-toggle,
	.menu-button .submenu-toggle:active,
	.menu-button .submenu-toggle:focus,
	.menu-button .submenu-toggle:hover {
		top: -6px;
	}

	.main-navigation.toggled .menu-item-has-children ul {
		display: none;
	}

	.main-navigation.toggled .menu-item-has-children.expanded ul {
		display: block;
	}

	.mega-menu .main-navigation ul li .sub-menu {
		border-top: 0;
		margin-top: -10px;
		margin-bottom: 20px;
	}

	.mega-menu .main-navigation ul li.menu-button .sub-menu {
		margin-top: 0px;
		margin-bottom: 20px;
	}

	.mega-menu .main-navigation ul li .sub-menu li a {
		opacity: 1;
	}
}

/* Comments and Posts Navigation */
.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%;
}

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

.post,
.page {
	/* margin: 0 0 1.5em; */
}

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

/*--------------------------------------------------------------
# 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);
	-webkit-clip-path: inset(50%);
	        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;
	-webkit-clip-path: none;
	        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;
}

/*--------------------------------------------------------------
# Helpers
--------------------------------------------------------------*/
.inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	padding-left: 20px;
	padding-right: 20px;
	position: relative;
	width: 1200px;
}

.inner-wide {
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	padding-left: 20px;
	padding-right: 20px;
	position: relative;
	width: 1440px;
}

.narrow .inner,
.inner-narrow {
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	padding-left: 20px;
	padding-right: 20px;
	position: relative;
	width: 940px;
}

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

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

/*--------------------------------------------------------------
# Block Basics
--------------------------------------------------------------*/
.builder-block {
	padding-top: 50px;
	padding-bottom: 50px;
}

.builder-block:after {
	clear: both;
	content: "";
	display: table;
}

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

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

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

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

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

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

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

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

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

.section-title {
	margin-bottom: 50px;
	text-align: center;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.site-footer {
	background: transparent url('/wp-content/themes/hoperoad/assets/bob-marley-footer-background-min.jpg') no-repeat top center;
	background-size: cover;
    padding: 100px 0 50px 0;
}

.site-footer a,
.site-footer a:visited {
	text-decoration: none;
	text-transform: uppercase;
}

.footer-row {
    -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;
    gap: 20px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 50px;
}

.footer-column {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
}

.footer-column-1 {
	-ms-flex-preferred-size: calc(100% - 400px);
	    flex-basis: calc(100% - 400px);
}

.footer-column-1 p {
	text-transform: uppercase;
}

.site-footer .body-large {
	font-size: 1.75rem;
	font-weight: 800;
	margin: 0;
}

.footer-column-2 {
	-ms-flex-preferred-size: 350px;
	    flex-basis: 350px;
}

.footer-column-2 ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer-column-2 li {
	display: block;
	margin-bottom: 30px;
}

.footer-column-2 a {
	display: inline-block;
	font-size: 1.625rem;
	font-weight: 800;
}

.social-icons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
    list-style: none;
    padding: 0;
    margin: 40px 0 0 0;
}

.social-icons li a i {
    font-size: 2rem;
}

.footer-logos {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 30px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-logos li img {
    display: block;
    max-height: 100px;
	max-width: 180px;
}

.footer-copyright {
    font-size: 0.875rem;
}

.footer-copyright ul {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 20px;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer-copyright p {
	margin: 1.5rem 0 0 0;
	text-align: right;
}

@media screen and (max-width: 1200px) {
	.footer-row:last-child {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	
	.footer-logos,
	.footer-copyright {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
	}

	.footer-logos {
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}

	.footer-copyright {
		margin-top: 30px;
	}

	.footer-copyright p {
		text-align: center;
	}
}

@media screen and (max-width: 1024px) {
	.footer-column-2 li {
		margin-bottom: 20px;
	}
}

@media screen and (max-width: 800px) {
	.footer-row {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	
	.footer-column-1 {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
	}

	.footer-column-2 {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
		margin-top: 40px;
	}

	.site-footer .body-large {
		font-size: 1.5rem;
	}

	.footer-column-2 a {
		font-size: 1.25rem;
	}
}

@media screen and (max-width: 500px) {
	.footer-logos,
	.footer-copyright ul {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}

	.footer-logos li,
	.footer-copyright li {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
	}

	.footer-copyright p {
		text-align: left;
	}
}

/*--------------------------------------------------------------
# Home Hero: Video and Taglines
--------------------------------------------------------------*/
.home-hero {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	height: 90vh;
	min-height: 1050px;
	overflow: hidden;
	position: relative;
		z-index: 0;
	width: 100%;
}

.home-hero::after {
	background: rgb(9,9,9);
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(9,9,9,0)), color-stop(80%, rgba(9,9,9,1)));
	background: -o-linear-gradient(top, rgba(9,9,9,0) 0%, rgba(9,9,9,1) 80%);
	background: linear-gradient(180deg, rgba(9,9,9,0) 0%, rgba(9,9,9,1) 80%); 
	content: "";
	display: block;
	height: 400px;
	position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		z-index: 1;
}

.home-hero-video {
	display: block;
	height: 100%;
	   -o-object-fit: contain;
	      object-fit: contain;
	position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	width: 100%;
}

.home-content {
	margin-bottom: -33vh;
	position: relative;
		top: -33vh;
		z-index: 2;
	text-align: center;
}

.home-content h1 {
	margin-bottom: 0;
	text-wrap: balance;
}

.home-content .body-medium {
	margin-top: 0;
	margin-bottom: 2rem;
}

/*--------------------------------------------------------------
# Home Hero: CTA Tiles
--------------------------------------------------------------*/
.home-hero-tiles {
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 60px;
	margin-top: 60px;
	padding: 0 40px;
}

.home-hero-column {
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
}

.home-hero-tile-border {
	aspect-ratio: 43/30;
	position: relative;
}

.home-hero-tile-border:before {
	background: rgb(0,139,72);
	background: -o-linear-gradient(315deg, rgba(0,139,72,1) 0%, rgba(255,198,47,1) 50%, rgba(222,39,38,1) 100%);
	background: linear-gradient(135deg, rgba(0,139,72,1) 0%, rgba(255,198,47,1) 50%, rgba(222,39,38,1) 100%); 
	border-radius: 30px;
	content: "";
	position: absolute;
		top: -4px;
		right: -4px;
		bottom: -4px;
		left: -4px;
		z-index: 1; 
}

.home-hero-tile {
	background: rgb(0,139,72);
	background: -o-linear-gradient(315deg, rgba(0,139,72,1) 0%, rgba(0,22,11,1) 80%);
	background: linear-gradient(135deg, rgba(0,139,72,1) 0%, rgba(0,22,11,1) 80%); 
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	border-radius: 30px;
	position: relative;
	height: 100%;
	z-index: 2;
}

.home-hero-column:last-child .home-hero-tile {
	background: rgb(0,22,11);
	background: -o-linear-gradient(45deg, rgba(0,22,11,1) 0%, rgba(255,198,47,1) 80%);
	background: linear-gradient(45deg, rgba(0,22,11,1) 0%, rgba(255,198,47,1) 80%); 
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

.tile-image {
	background-position: center top;
	background-size: cover;
	background-repeat: no-repeat;
	border-radius: 30px;
	opacity: 1;
	position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 3;
	-webkit-transition: opacity 0.4s ease;
	-o-transition: opacity 0.4s ease;
	transition: opacity 0.4s ease;
}

.tile-image.hidden {
	opacity: 0;
	-webkit-transition: opacity 0.4s ease;
	-o-transition: opacity 0.4s ease;
	transition: opacity 0.4s ease;
}

.home-tile-content {
	padding: 40px;
	position: absolute;
		bottom: 0;
		z-index: 5;
	text-align: left;
}

.home-tile-content .header-xl {
	font-size: 4rem;
	line-height: 0.9;
	max-width: 400px;
	margin-bottom: 0.5rem;
}

.hero-tile-ctas {
	-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: 15px;
	margin-top: 30px;
}

.hero-tile-ctas .button-large {
	font-size: 1rem;
}

.hero-tile-ctas .more {
	font-size: 1rem;
	text-align: right;
}

.tile-descriptions {
	margin-top: 30px;
}

.tile-descriptions .body-medium {
	font-weight: 700;
	margin-bottom: 0;
}

.tile-descriptions p:not(.body-medium) {
	font-size: 1.375rem;
	font-weight: 500;
	margin-top: 0.25rem;
}

.home-tile-content-hover p {
	font-size: 1rem;
	text-wrap: balance;
}

@media screen and (max-width: 2400px) {
	.home-hero-video {
		-o-object-fit: cover;
		   object-fit: cover;
	}
}

@media screen and (max-width: 2000px) {
	.home-hero {
		min-height: 850px;
	}
}

@media screen and (max-width: 1400px) {
	.home-hero-tiles {
		gap: 50px;
	}

	.home-tile-content {
		padding: 20px;
	}

	.home-tile-content .header-xl {
		font-size: 3rem;
	}

	.hero-tile-ctas .button-large {
		padding: 12px 20px 10px 20px;
	}

	.hero-tile-ctas .more-small {
		font-size: 1.1rem;
	}
}

@media screen and (max-width: 1100px) {
	.home-hero-tiles {
		gap: 30px;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		padding: 0;
	}

	.home-hero-column {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
	}

	.home-hero-tile-border {
		aspect-ratio: auto;
	}

	.home-tile-content {
		padding: 40px;
		position: relative;
	}

	.home-tile-content-hover {
		height: auto;
		opacity: 1;
		visibility: visible;
	}

	.home-tile-content-hover p {
		font-size: 0.875rem;
	}

	.home-hero {
		min-height: 600px;
	}
}

@media screen and (max-width: 800px) {
	.home-tile-content {
		padding: 20px;
	}

	.tile-descriptions {
		margin-top: 20px;
	}
}

@media screen and (max-width: 640px) {
	.tile-descriptions .body-medium {
		font-size: 1.25rem;
	}
	
	.tile-descriptions p:not(.body-medium) {
		font-size: 1.1rem;
		text-wrap: balance;
	}

	.hero-tile-ctas .button-large {
		padding: 12px 10px 10px 10px;
	}

	.hero-tile-ctas {
		flex-wrap: wrap;
		gap: 24px;
	}
}

/*--------------------------------------------------------------
# Content Block
--------------------------------------------------------------*/
.block-builder-content p, 
.block-builder-content li {
	line-height: 1.5;
}

.accent-flex {
	-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;
}

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

.accent-image img {
	border-radius: 30px;
	vertical-align: middle;
	width: 100%;
}

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

.accent-right .accent-image {
	-webkit-box-ordinal-group: 3;
	    -ms-flex-order: 2;
	        order: 2;
}

.accent-right .accent-content {
	-webkit-box-ordinal-group: 2;
	    -ms-flex-order: 1;
	        order: 1;
}

.accent-right .accent-full-bleed-inner .accent-content {
	padding-left: calc(50vw - 600px);
}

.accent-left .accent-full-bleed-inner .accent-content {
	padding-right: calc(50vw - 600px);
}

.accent-right .accent-full-bleed-inner .accent-image img {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}

.accent-left .accent-full-bleed-inner .accent-image img {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0
}

.callout-section {
	background: transparent url('/wp-content/themes/hoperoad/assets/callout-section-background-min.jpg') no-repeat top center;
	background-size: cover;
	margin-top: 50px;
	margin-bottom: 50px;
	padding-top: 0;
	padding-bottom: 0;
}

.callout-section .accent-image img {
	border-radius: 0;
}

.callout-section .accent-content {
	padding-top: 50px;
	padding-bottom: 50px;
}

@media screen and (max-width: 1200px) {
	.accent-image {
		-ms-flex-preferred-size: calc(45% - 25px);
		    flex-basis: calc(45% - 25px);
	}

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

	.accent-right .accent-full-bleed-inner .accent-content {
		padding-left: 20px;
	}
	
	.accent-left .accent-full-bleed-inner .accent-content {
		padding-right: 20px;
	}
}

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

	.accent-image {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
		-webkit-box-ordinal-group: 2 !important;
		    -ms-flex-order: 1 !important;
		        order: 1 !important;
		margin-bottom: 1.5rem;
	}

	.accent-content {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
		-webkit-box-ordinal-group: 3 !important;
		    -ms-flex-order: 2 !important;
		        order: 2 !important;
	}

	.accent-right .accent-full-bleed-inner .accent-content {
		padding-right: 20px;
	}
	
	.accent-left .accent-full-bleed-inner .accent-content {
		padding-left: 20px;
	}

	.accent-full-bleed-inner .accent-image {
		padding-left: 20px;
		padding-right: 20px;
	}

	.accent-right .accent-full-bleed-inner .accent-image img {
		border-top-right-radius: 30px;
		border-bottom-right-radius: 30px;
	}
	
	.accent-left .accent-full-bleed-inner .accent-image img {
		border-top-left-radius: 30px;
		border-bottom-left-radius: 30px;
	}

	.callout-section .accent-full-bleed-inner .accent-image {
		padding-top: 20px;
	}

	.callout-section .accent-content {
		padding-top: 0;
		padding-bottom: 0;
	}
}

/*--------------------------------------------------------------
# Gallery Slider Block
--------------------------------------------------------------*/
.block-builder-gallery {
	overflow-x: hidden;
	position: relative;
}

/* Background */
.gallery-slider-background {
	background-size: cover;
	background-position: center;
	height: 400px;
	position: absolute;
	width: 100%;
}

.gallery-slider-header {
	-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;
	padding: 75px 0;
}

/* Header */
.gallery-slider-header h2 {
	margin: 0;
}

/* Slider */
.gallery-slider-inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	width: 2000px;
}

.gallery-slider {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	/* margin-left: calc(50vw - 580px); */
	overflow: hidden;
}

/* Slider Navigation */
.gallery-slider-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 15px;
}

.gallery-slider-nav button, 
.block-gallery-large .owl-carousel .owl-nav button {
	background: transparent;
    width: 50px;
    height: 50px;
    border: 1px solid white;
    border-radius: 50%;
    background-color: transparent;
    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;
    -webkit-transition: opacity 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
    transition: opacity 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
    -o-transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
    cursor: pointer;
    padding: 0;
}

.gallery-slider-nav button img,
.large-gallery .owl-nav button img {
    width: 20px;
    height: auto;
    -webkit-transition: -webkit-transform 0.2s ease-in-out;
    transition: -webkit-transform 0.2s ease-in-out;
    -o-transition: transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
}

/* Hover Effect */
.gallery-slider-nav button:hover img,
.large-gallery .owl-nav button:hover img {
    -webkit-transform: translateX(-3px);
        -ms-transform: translateX(-3px);
            transform: translateX(-3px);
}

.gallery-slider-nav .owl-next:hover img,
.large-gallery .owl-nav button.owl-next:hover img {
    -webkit-transform: translateX(3px);
        -ms-transform: translateX(3px);
            transform: translateX(3px);
}

/* Disabled Navigation */
.gallery-slider-nav .owl-prev.disabled,
.gallery-slider-nav .owl-next.disabled,
.large-gallery .owl-nav .owl-prev.disabled,
.large-gallery .owl-nav .owl-next.disabled {
    opacity: 0.5;
    pointer-events: none;
}

/* Slide */
.gallery-slide {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	position: relative;
}

/* Slide Image */
.gallery-slide-image {
	aspect-ratio: 4 / 3.5;
	background-size: cover;
	background-position: center;
	border-radius: 20px;
	overflow: hidden;
	position: relative;
	width: 100%;
}

/* Slide Panel */
.gallery-slide-panel {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	background: rgba(2, 1, 0, 0.75);
	border-radius: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	position: absolute;
	inset: 0;
	opacity: 0;
	-webkit-transition: opacity 0.2s ease-in-out;
	-o-transition: opacity 0.2s ease-in-out;
	transition: opacity 0.2s ease-in-out;
}

/* Hover Effect */
.gallery-slide-image:hover .gallery-slide-panel {
	opacity: 1;
}

/* Expand Click Area */
.gallery-slide-panel a {
	position: absolute;
	inset: 0;
	display: block;
	z-index: 3;
}

/* Panel Content */
.gallery-slide-panel-inner {
	position: absolute;
		bottom: 20px;
		left: 50%;
	text-align: center;
	-webkit-transform: translateX(-50%);
	    -ms-transform: translateX(-50%);
	        transform: translateX(-50%);
	width: 100%;
}

/* Expand Icon */
.gallery-slide-panel img {
	margin: 0 auto 70px auto;
	width: 84px !important;
}

/* Caption & Category */
.gallery-slide-panel p {
	margin: 0 0 0.25rem 0;
	text-align: center;
}

@media screen and (max-width: 1200px) {
	.gallery-slider {
		margin-left: 0;
		padding-left: 20px;
		padding-right: 20px;
	}

	.gallery-slider-header {
		padding: 30px 0;
	}
}

/*--------------------------------------------------------------
# Fancybox Custom Styles
--------------------------------------------------------------*/
.fancybox__caption {
	-ms-flex-item-align: initial;
	    -ms-grid-row-align: initial;
	    align-self: initial;
}

.fancybox__button--close {
	color: #fec818;
}

.fancybox__button--close {
	height: 80px;
	width: 80px;
}

.fancybox__button--close svg {
	height: 40px;
	width: 40px;
}

.gallery-caption {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 15px;
    text-align: left;
}

.gallery-caption-content {
    padding-right: 20px;
}

.gallery-caption-content p {
	margin: 0;
}

@media screen and (max-width: 800px) {
	.gallery-caption {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
	}

	.gallery-caption-content {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
		margin-bottom: 40px;
		padding-right: 0;
	}
}

/*--------------------------------------------------------------
# Testimonial Slider
--------------------------------------------------------------*/
.testimonial-slider .header-xl {
	margin-bottom: 0;
}

.testimonial-slider .owl-dots {
	margin-top: 20px;
	text-align: center;
}

.testimonial-slider .owl-dot span {
	background: #ffffff;
	border-radius: 5px;
	display: block;
	height: 6px;
	margin: 0 3px;
	-webkit-transition: width 0.2s;
	-o-transition: width 0.2s;
	transition: width 0.2s;
	width: 20px;
}

.testimonial-slider .owl-dot.active span {
	background: #fec818;
	-webkit-transition: width 0.2s;
	-o-transition: width 0.2s;
	transition: width 0.2s;
	width: 45px;
}

/*--------------------------------------------------------------
# News block
--------------------------------------------------------------*/
.block-builder-news h2 {
	margin-bottom: 50px;
}

.news-grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}

.news-item {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    max-width: 48%;
}

.news-item:hover {
	color: #fec818;
}

.news-item a {
    display: block;
    color: inherit;
    text-decoration: none;
}

.news-image img {
	border: 2px solid transparent;
    border-radius: 20px;
    display: block;
    height: auto;
    width: 100%;
}

.news-item:hover .news-image img {
	border: 2px solid #fec818;
}

.news-date {
    display: block;
    font-size: 0.875rem;
	font-weight: 700;
	margin: 1rem 0;
}

.news-title {
    font-size: 1.5rem;
	margin: 0;
}

.section-cta {
	margin-top: 50px;
}

@media screen and (max-width: 640px) {
	.news-grid {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		gap: 0;
	}
	
	.news-item {
		-webkit-box-flex: 1;
		    -ms-flex: auto;
		        flex: auto;
		max-width: 100%;
		margin-bottom: 40px;
		width: 100%;
	}

	.section-cta {
		margin-top: 20px;
	}
}

@media (max-width: 480px) {
	.news-title {
		font-size: 1.25rem;
	}
}

/*--------------------------------------------------------------
# Superfooter
--------------------------------------------------------------*/
.superfooter-container {
	margin-top: 50px;
    padding: 50px 0;
}

.superfooter-container .inner {
	width: 1400px;
}

.superfooter-newsletter {
	background: transparent url('/wp-content/themes/hoperoad/assets/newsletter-background-trimmed-v2-min.jpg') no-repeat center center;
	background-size: cover;
	border-radius: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
    margin: 0 auto 50px;
	padding: 100px;
}

.newsletter-intro {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 45%;
            flex: 0 0 45%;
}

.newsletter-content {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 55%;
            flex: 0 0 55%;
}

.newsletter-intro p {
	font-size: 1.5rem;
	font-weight: 700;
	max-width: 100%;
	width: 340px;
}

.superfooter-logo {
    text-align: center;
    margin-bottom: 130px;
}

.superfooter-logo img {
    height: auto;
	vertical-align: middle;
    width: 400px;
}

@media screen and (max-width: 1200px) {
	.superfooter-newsletter {
		padding: 50px;
	}
}

@media screen and (max-width: 800px) {
	.superfooter-newsletter {
		background-position: top center;
		display: block;
	}
	
	.newsletter-intro {
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 100%;
		        flex: 0 0 100%;
	}
	
	.newsletter-content {
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 100%;
		        flex: 0 0 100%;
	}

	.superfooter-logo img {
		width: 200px;
	}

	.newsletter-intro p {
		font-size: 1.1rem;
		font-weight: 400;
	}
}

@media screen and (max-width: 640px) {
	.superfooter-newsletter {
		padding: 20px;
	}
}

/*--------------------------------------------------------------
# Interior Hero
--------------------------------------------------------------*/
.block-page-hero {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	margin-bottom: 50px;
	padding: 240px 0 120px 0;
	text-align: center;
}

.block-page-hero.has-background {
	border-bottom-right-radius: 30px;
	border-bottom-left-radius: 30px;
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	padding-left: 20px;
	padding-right: 20px;
	width: 1440px;
}

.block-page-hero.no-background {
	margin-bottom: 0;
	padding: 240px 0 60px 0;
}

.block-page-hero-fake {
	margin-top: 120px;
}

.no-bottom-margin {
	margin-bottom: 0;
}

.block-page-hero h1 {
	text-wrap: balance;
}

.small-title {
	font-size: 3rem;
}

@media screen and (max-width: 1440px) {
	.block-page-hero.has-background {
		width: calc(100% - 40px);
	}
}

/*--------------------------------------------------------------
# Cards Block
--------------------------------------------------------------*/
.cards-container {
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: 20px;
		-ms-flex-pack: distribute;
	justify-content: space-around;
}

.card {
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-preferred-size: calc(50% - 20px);
	    flex-basis: calc(50% - 20px);
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin-bottom: 30px;
	text-align: center;
}

.card-top,
.card-bottom {
	width: 100%;
}

.card-image {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 15px;
	display: block;
	height: 250px;
	margin-bottom: 1.5rem;
	width: 100%;
}

.card-bottom .button {
	display: block;
}

.cards-three .card {
	-ms-flex-preferred-size: calc(33.3% - 20px);
	    flex-basis: calc(33.3% - 20px);
}

.cards-three .card-image {
	height: 200px;
}

.cards-four .card {
	-ms-flex-preferred-size: calc(25% - 20px);
	    flex-basis: calc(25% - 20px);
}

.cards-four .card-image {
	height: 150px;
}

.cards-larger .card {
	text-align: left;
}

.cards-larger .card-title .eyebrow {
	color: #ffffff;
	font-size: 2.5rem;
}

.card-description p {
	text-wrap: balance;
}

@media screen and (max-width: 1200px) {
	.cards-four .cards-container,
	.cards-three .cards-container {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		    -ms-flex-direction: row;
		        flex-direction: row;
		gap: 0;
		-ms-flex-pack: distribute;
		    justify-content: space-around;
	}

	.cards-four .card,
	.cards-three .card {
		-ms-flex-preferred-size: calc(50% - 20px);
		    flex-basis: calc(50% - 20px);
	}
}


@media screen and (max-width: 800px) {
	.cards-four .card,
	.cards-three .card,
	.card {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
	}

	.cards-three .card-image,
	.card-image {
		height: 150px;
	}
}

/*--------------------------------------------------------------
# Accordions Block
--------------------------------------------------------------*/
.accordion-item,
.accordion-item.is-visible,
.accordion-item:hover {
	background: transparent;
	border-bottom: 2px solid #fec818;
	border-radius: 0;
}

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

.accordion-title p {
	line-height: 1.25;
	margin: 0;
	padding-right: 20px;
}

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

.accordion-content {
	display: none;
	line-height: 1.5;
	padding: 0 0 20px 0;
}

.accordion-trigger,
.accordion-trigger:active,
.accordion-trigger:focus,
.accordion-trigger:hover {
	background: transparent;
	border-radius: 0;
	color: #fec818;
	padding: 20px;
}

.accordion-trigger:focus {
	border: 1px dotted #fec818;
	border-radius: 50%;
}

@media screen and (max-width: 1024px) {
	.accordion-title p,
	.accordion-icon {
		font-size: 1.5rem;
	}
}

@media screen and (max-width: 640px) {
	.accordion-title p {
		font-size: 1.25rem;
		padding-right: 0;
	}

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

/*--------------------------------------------------------------
# Logo Gallery
--------------------------------------------------------------*/
.logo-gallery-container {
	margin: 50px 0 0 0;
}

.logo-gallery {
	-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;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.logo-gallery-item {
	padding: 15px 40px;
	text-align: center;
}

.logo-gallery-item img {
	max-height: 100px;
	max-width: 150px;
	vertical-align: middle;
}

@media screen and (max-width: 1200px) {
	.logo-gallery-item {
		-ms-flex-preferred-size: calc(25% - 20px);
		    flex-basis: calc(25% - 20px);
		margin: 10px;
		padding: 0;
	}

	.logo-gallery-item img {
		max-width: 90%;
	}
}

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

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

/*--------------------------------------------------------------
# Large Gallery
--------------------------------------------------------------*/
.block-gallery-large .inner {
	padding-left: 0;
	padding-right: 0;
	width: 1800px;
}

.large-gallery-item img {
	border-radius: 20px;
	opacity: 0.4;
	-webkit-transform: scale(0.85);
	    -ms-transform: scale(0.85);
	        transform: scale(0.85);
	-webkit-transition: 0.25s;
	-o-transition: 0.25s;
	transition: 0.25s;
}

.active .large-gallery-item img {
	opacity: 1;
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
	-webkit-transition: 0.25s;
	-o-transition: 0.25s;
	transition: 0.25s;
}

.large-gallery .owl-nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	margin: 0 auto;
	position: absolute;
		top: calc(50% - 12.5px);
		left: 0;
		right: 0;
	width: calc(100% - 100px);
}

@media screen and (max-width: 1200px) {
	.large-gallery .owl-nav {
		width: calc(100% - 50px);
	}
}

@media screen and (max-width: 1024px) {
	.large-gallery .owl-nav {
		-webkit-box-pack: end;
		    -ms-flex-pack: end;
		        justify-content: flex-end;
		margin: 20px 0 0 0;
		gap: 20px;
		position: relative;
			top: auto;
			left: auto;
			right: auto;
		width: calc(100% - 40px);
	}
}

/*--------------------------------------------------------------
# Characters Block
--------------------------------------------------------------*/
.characters-container {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 20px;
	overflow-x: hidden;
}

.character-item {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 20px;
	-webkit-box-flex: 1;
	    -ms-flex: 1;
	        flex: 1;
	height: 510px;
	min-width: 0;
	position: relative;
	-webkit-transition: min-width 0.5s;
	-o-transition: min-width 0.5s;
	transition: min-width 0.5s;
}

.character-item:hover {
	min-width: 500px;
	-webkit-transition: min-width 0.5s;
	-o-transition: min-width 0.5s;
	transition: min-width 0.5s;
}

.character-panel {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.00)), to(rgba(0, 0, 0, 1)));
	background: -o-linear-gradient(top, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 1) 100%);
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 1) 100%);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 20px;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	min-width: 500px;
	opacity: 0;
	padding: 100px 20px 20px 20px;
	position: absolute;
		bottom: 0;
		right: 0;
		left: 0;
	-webkit-transition: opacity 0.25s;
	-o-transition: opacity 0.25s;
	transition: opacity 0.25s;
	visibility: hidden;
}

.character-panel p {
	margin: 0;
	text-wrap: balance;
}

.character-item:hover .character-panel {
	opacity: 1;
	-webkit-transition: opacity 0.25s;
	-o-transition: opacity 0.25s;
	transition: opacity 0.25s;
	-webkit-transition-delay: 0.25s;
	     -o-transition-delay: 0.25s;
	        transition-delay: 0.25s;
	visibility: visible;
}

.character-name {
	min-width: 150px;
	padding: 0 20px 0 0;
}

.character-name .header-large {
	font-size: 2.5rem;
}

.character-description {
	padding: 0 0 0 20px;
}

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

	.character-item {
		-ms-flex-preferred-size: calc(50% - 20px);
		    flex-basis: calc(50% - 20px);
		height: 300px;
		min-width: 0 !important;
	}

	.character-panel {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		min-width: 100%;
		opacity: 1;
		visibility: visible;
	}

	.character-name {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
		padding: 0;
	}

	.character-description {
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
		padding: 0;
	}
}

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

/*--------------------------------------------------------------
# Schedule Block
--------------------------------------------------------------*/
.schedule-container {
	border: 3px solid #FFC62F;
	border-radius: 20px;
	display: table;
	table-layout: fixed;
	text-align: center;
	width: 100%;
}

.schedule-row {
	display: table-row;
}

.schedule-row:first-child .schedule-col:first-child {
	border-top-left-radius: 16px;
}

.schedule-row:first-child .schedule-col:last-child {
	border-top-right-radius: 16px;
}

.schedule-row:last-child .schedule-col:first-child {
	border-bottom-left-radius: 16px;
}

.schedule-row:last-child .schedule-col:last-child {
	border-bottom-right-radius: 16px;
}

.schedule-col {
	border-bottom: 2px solid #99771C;
	display: table-cell;
	padding: 20px;
	vertical-align: middle;
}

.schedule-row:last-child .schedule-col {
	border-bottom: 0;
}

.schedule-col-1 {
	background: #372902;
	font-size: 1.5rem;
	font-weight: 700;
	width: 32%;
}

.schedule-col-2,
.schedule-col-3 {
	font-family: barlow-condensed, sans-serif;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.25;
	text-transform: uppercase;
	width: 34%;
}

.schedule-col-2 small,
.schedule-col-3 small {
	font-family: proxima-nova, sans-serif;
	font-weight: 400;
	font-size: 1rem;
	text-transform: none;
}

.highlight-col {
	background: #008A14;
}

.highlight-col a:active,
.highlight-col a:focus,
.highlight-col a:hover {
	color: #000000;
}

@media screen and (max-width: 640px) {
	.schedule-container {
		border: 0;
		border-radius: 0;
		display: block;
	}

	.schedule-row {
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		border: 1px solid #FFC62F;
		border-radius: 20px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		margin-bottom: 25px;
	}

	.schedule-col {
		padding: 12.5px;
	}

	.schedule-col-1 {
		border-top-right-radius: 20px;
		border-top-left-radius: 20px;
		border-bottom: 1px solid #99771C;
		-ms-flex-preferred-size: 100%;
		    flex-basis: 100%;
		font-size: 1rem;
		width: 100%;
	}

	.schedule-col-2 {
		border-bottom: 0;
		border-bottom-left-radius: 20px;
		-ms-flex-preferred-size: 50%;
		    flex-basis: 50%;
		font-size: 1rem;
		width: 50%;
	}

	.schedule-col-3 {
		border-bottom: 0;
		border-bottom-right-radius: 20px;
		-ms-flex-preferred-size: 50%;
		    flex-basis: 50%;
		font-size: 1rem;
		width: 50%;
	}

	.schedule-col-2 small,
	.schedule-col-3 small {
		font-size: 0.875rem;
	}

	.schedule-row:last-child .schedule-col:first-child {
		border-bottom: 1px solid #99771C;
	}

	.schedule-row:first-child .schedule-col:first-child {
		border-top-left-radius: 20px;
	}
	
	.schedule-row:first-child .schedule-col:last-child {
		border-top-right-radius: 20px;
	}
	
	.schedule-row:last-child .schedule-col:first-child {
		border-bottom-left-radius: 0;
	}
	
	.schedule-row:last-child .schedule-col:last-child {
		border-bottom-right-radius: 20px;
	}
}

/*--------------------------------------------------------------
# Blog (index.php and archive.php)
--------------------------------------------------------------*/
.news-grid.blog-grid {
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

.blog-grid .news-item {
	-webkit-box-flex: 1;
	    -ms-flex: auto;
	        flex: auto;
	margin-bottom: 30px;
}

.blog-navigation {
	margin-bottom: 150px;
}

.nav-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 20px;
}

.page-numbers {
    background: transparent;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    border: 1px solid white;
    border-radius: 3px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    font-size: 1rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 40px;
    text-decoration: none;
    width: 40px;
}

.page-numbers:hover,
.page-numbers:focus,
.page-numbers.current {
    border-color: #FEC818;
    color: #FEC818;
    -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
            transform: scale(1.05); 
}

.next.page-numbers,
.prev.page-numbers {
    padding: 0 15px;
    min-width: 80px; 
}

/*--------------------------------------------------------------
# search.php
--------------------------------------------------------------*/
.search-result-flex {
	border-bottom: 1px solid #99771C;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 30px;
	padding: 50px 0;
}

.search-result-thumbnail {
	vertical-align: middle;
	width: 400px;
}

.search-result-flex p {
	margin: 1.5rem 0 0 0;
}

.search-result-flex a {
	text-decoration: none;
}

@media screen and (max-width: 640px) {
	.search-result-flex {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		gap: 15px;
	}

	.search-result-thumbnail {
		width: 100%;
	}
}

/*--------------------------------------------------------------
# announcement banner
--------------------------------------------------------------*/
.announcement {
	background :#008B48;
	color: #ffffff;
	padding: 10px 0;
	text-align: center;
}

.announcement p {
	font-size: 0.875rem;
	font-weight: 600;
	margin: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.announcement a,
.announcement a:visited {
	text-decoration: none;
}

.announcement a:active,
.announcement a:focus,
.announcement a:hover {
	color: #000000;
}

.has-announcement .site-header {
	top: 37px;
}

.has-announcement .site-header {
	transition: top 0.2s;
}

.has-announcement.scrolling .site-header {
	top: 0;
	transition: top 0.2s;
}

/*--------------------------------------------------------------
# popup maker customizations
--------------------------------------------------------------*/
.pum.pum-theme-content-only .pum-title,
.pum.pum-theme-content-only .pum-content {
	color: #ffffff;
	z-index: 9;
}

.pum.pum-theme-content-only .pum-title {
	padding-right: 30px;
}

.pum.pum-theme-content-only .pum-container {
	background: #000000;
	border-radius: 30px;
	padding: 30px;
}

.pum.pum-theme-content-only .pum-container:before {
	background: rgb(0,139,72);
	background: -o-linear-gradient(315deg, rgba(0,139,72,1) 0%, rgba(255,198,47,1) 50%, rgba(222,39,38,1) 100%);
	background: linear-gradient(135deg, rgba(0,139,72,1) 0%, rgba(255,198,47,1) 50%, rgba(222,39,38,1) 100%); 
	border-radius: 30px;
	content: "";
	position: absolute;
		top: -4px;
		right: -4px;
		bottom: -4px;
		left: -4px;
		z-index: 1; 
}

.pum.pum-theme-content-only .pum-container:after {
	background: #000000;
	border-radius: 30px;
	content: "";
	position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 1; 
}

.pum .pum-container .pum-content + .pum-close {
	color: #ffffff;
	font-size: 4rem;
	font-weight: 400;
	margin-top: 5px;
	z-index: 9;
}

.pum .pum-container .pum-content > :last-child, 
.pum-form__message:last-child {
	margin: 0;
}

.pum-content .gform_wrapper.gravity-theme .gform_footer, 
.pum-content .gform_wrapper.gravity-theme .gform_page_footer {
	padding-bottom: 0;
}

/*--------------------------------------------------------------
# mobile CTA
--------------------------------------------------------------*/
.mobile-cta {
	display: none;
	position: fixed;
		bottom: 20px;
		right: 20px;
		left: 20px;
		z-index: 10002;
	text-align: center;
}

.mobile-cta .button {
	box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.75);
	display: block;
}

@media screen and (max-width: 800px) {
	.mobile-cta {
		display: block;
	}
}