/*!
Theme Name: Magnolias
Theme URI: https://magnoliasconsulting.com
Author: Magnolias Consulting : Danielle Bindon
Author URI: https://magnoliasconsulting.com
Description: Theme used for website development at Magnolias Consulting. **Requires Advanced Custom Fields Pro plugin to be activated first.
Version: 1.1.2
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: magnolias-starter
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
GitHub Theme URI: danibindon/mag-caststeel

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/** 1. Correct the line height in all browsers. 2. Prevent adjustments of font size after orientation changes in iOS. */
html { line-height: 1.15; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ }

/* Sections
	 ========================================================================== */
/** Remove the margin in all browsers. */
body { margin: 0; }

/** 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; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ }

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
pre { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

/* Text-level semantics
	 ========================================================================== */
/** Remove the gray background on active links in IE 10. */
a { background-color: transparent; }

/** 1. Remove the bottom border in Chrome 57- 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
abbr[title] { border-bottom: none; /* 1 */ text-decoration: underline; /* 2 */ -webkit-text-decoration: underline dotted; text-decoration: underline dotted; /* 2 */ }

/** Add the correct font weight in Chrome, Edge, and Safari. */
b, strong { font-weight: bolder; }

/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
code, kbd, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

/** Add the correct font size in all browsers. */
small { font-size: 80%; }

/** Prevent `sub` and `sup` elements from affecting the line height in all browsers. */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -0.25em; }

sup { top: -0.5em; }

/* Embedded content
	 ========================================================================== */
/** Remove the border on images inside links in IE 10. */
img { border-style: none; }

/* Forms
	 ========================================================================== */
/** 1. Change the font styles in all browsers. 2. Remove the margin in Firefox and Safari. */
button, input, optgroup, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 1 */ line-height: 1.15; /* 1 */ margin: 0; /* 2 */ }

/** Show the overflow in IE. 1. Show the overflow in Edge. */
button, input { /* 1 */ overflow: visible; }

/** Remove the inheritance of text transform in Edge, Firefox, and IE. 1. Remove the inheritance of text transform in Firefox. */
button, select { /* 1 */ text-transform: none; }

/** Correct the inability to style clickable types in iOS and Safari. */
button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; }

/** Remove the inner border and padding in Firefox. */
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

/** Restore the focus styles unset by the previous rule. */
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }

/** Correct the padding in Firefox. */
fieldset { padding: 0.35em 0.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; /* 1 */ color: inherit; /* 2 */ display: table; /* 1 */ max-width: 100%; /* 1 */ padding: 0; /* 3 */ white-space: normal; /* 1 */ }

/** Add the correct vertical alignment in Chrome, Firefox, and Opera. */
progress { vertical-align: baseline; }

/** Remove the default vertical scrollbar in IE 10+. */
textarea { overflow: auto; }

/** 1. Add the correct box sizing in IE 10. 2. Remove the padding in IE 10. */
[type="checkbox"], [type="radio"] { -webkit-box-sizing: border-box; box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }

/** Correct the cursor style of increment and decrement buttons in Chrome. */
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

/** 1. Correct the odd appearance in Chrome and Safari. 2. Correct the outline style in Safari. */
[type="search"] { -webkit-appearance: textfield; /* 1 */ outline-offset: -2px; /* 2 */ }

/** Remove the inner padding in Chrome and Safari on macOS. */
[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/** 1. Correct the inability to style clickable types in iOS and Safari. 2. Change font properties to `inherit` in Safari. */
::-webkit-file-upload-button { -webkit-appearance: button; /* 1 */ font: inherit; /* 2 */ }

/* Interactive
	 ========================================================================== */
/* Add the correct display in Edge, IE 10+, and Firefox. */
details { display: block; }

/* Add the correct display in all browsers. */
summary { display: list-item; }

/* Misc
	 ========================================================================== */
/** Add the correct display in IE 10+. */
template { display: none; }

/** Add the correct display in IE 10. */
[hidden] { display: none; }

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body, button, input, select, optgroup, textarea { color: #252525; font-family: "Poppins", sans-serif; font-display: swap; font-weight: 400; font-size: 10px; font-size: 1rem; line-height: 1.5; }

h1, h2, h3, h4, h5, h6 { font-family: "Poppins", sans-serif; font-display: swap; font-weight: bold; text-transform: uppercase; clear: both; margin: 0.75rem 0; }

h1 { font-size: 2.3rem; }

h2 { font-size: 2rem; }

h3 { font-size: 1.5rem; }

p { font-size: 1.1rem; }

p { margin-bottom: 0.8em; }

dfn, cite, em, i { font-style: italic; }

blockquote { margin: 0 1.5em; }

address { margin: 0 0 1.5em; }

pre { background: #eee; font-family: "Courier 10 Pitch", Courier, monospace; font-size: 9.375px; font-size: 0.9375rem; line-height: 1.6; margin-bottom: 1.6em; max-width: 100%; overflow: auto; padding: 1.6em; }

code, kbd, tt, var { font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace; font-size: 9.375px; font-size: 0.9375rem; }

abbr, acronym { border-bottom: 1px dotted #666; cursor: help; }

mark, ins { background: #fff9c0; text-decoration: none; }

big { font-size: 125%; }

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html { -webkit-box-sizing: border-box; box-sizing: border-box; }

*, *:before, *:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see https://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */ -webkit-box-sizing: inherit; box-sizing: inherit; }

body { background: #e9e9e9; /* Fallback for when there is no custom background color defined. */ }

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: bold; }

dd { margin: 0 1.5em 1.5em; }

img { height: auto; /* Make sure images are scaled correctly. */ max-width: 100%; /* Adhere to container width. */ }

figure { margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */ }

table { width: 100%; }

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button, input[type="button"], input[type="reset"], input[type="submit"] { border: 1px solid; border-color: #ccc #ccc #bbb; border-radius: 3px; background: #e6e6e6; color: rgba(0, 0, 0, 0.8); font-size: 7.5px; font-size: 0.75rem; line-height: 1; padding: .6em 1em .4em; }
button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover { border-color: #ccc #bbb #aaa; }
button:active, button:focus, input[type="button"]:active, input[type="button"]:focus, input[type="reset"]:active, input[type="reset"]:focus, input[type="submit"]:active, input[type="submit"]:focus { border-color: #aaa #bbb #bbb; }

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: #666; border: 1px solid #ccc; border-radius: 3px; padding: 3px; }
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 { color: #111; }

select { border: 1px solid #ccc; }

textarea { width: 100%; }

/*--------------------------------------------------------------
## Gravity Forms Styles
--------------------------------------------------------------*/
.gform_wrapper { /* Footer form specific styles */ }
.gform_wrapper .gform_footer input[type=submit] { background-color: #fff; color: #33268f; font-family: "Poppins", sans-serif; text-transform: uppercase; display: inline-block; padding: 0.75rem 2.5rem; border-radius: 0; -webkit-transition: all 0.2s ease; transition: all 0.2s ease; }
.gform_wrapper .gform_footer input[type=submit]:hover { background-color: #33268f; color: #fff; }
.gform_wrapper .footer-form * { width: 100%; }
.gform_wrapper .footer-form ul li.gfield { margin-top: 0; }
.gform_wrapper .footer-form ul li.gfield .ginput_container { margin-top: 0; }
.gform_wrapper .footer-form ul li.gfield .ginput_container > span { margin-bottom: 0; }
.gform_wrapper .footer-form ul li.gfield .ginput_container input { margin-top: 0; margin-bottom: 0.75rem !important; }
.gform_wrapper .footer-form .gform_footer { margin: 0.5rem 0; padding: 0; }

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a { color: #33268f; }
a:visited { color: #33268f; }
a:hover, a:focus, a:active { color: #5b5b5b; }
a:focus { outline: none; }
a:hover, a:active { outline: 0; }

.btn-feature { background-image: -webkit-gradient(linear, left top, right top, from(#003366), color-stop(#2baa86), color-stop(#40e495), to(#20bf55)); background-image: linear-gradient(to right, #003366, #2baa86, #40e495, #20bf55); color: #fff !important; text-decoration: none; padding: 15px 25px; margin: 20px; cursor: pointer; text-align: center; background-size: 200% 100%; border-radius: 20px; -webkit-backface-visibility: hidden; backface-visibility: hidden; -webkit-transition: all 0.4s ease; transition: all 0.4s ease; }
.btn-feature:hover { background-position: 99% 0; text-decoration: none; }
.btn-feature:focus { outline: none; }

.btn-main { font-family: "Poppins", sans-serif; font-size: 1.1rem; font-weight: bold; text-transform: uppercase; display: inline-block; cursor: pointer; text-align: center; }
.btn-main.colour-1 { text-decoration: none; }
.btn-main.colour-1 .btn-text, .btn-main.colour-1 .btn-arrow { background-color: #33268f; color: #fff; display: inline-block; -webkit-transition: all 0.2s ease; transition: all 0.2s ease; }
.btn-main.colour-1 .btn-text { padding: 10px 45px; }
.btn-main.colour-1 .btn-arrow { padding: 10px 20px; }
.btn-main.colour-1 .btn-arrow:before { content: "\2192"; }
.btn-main.colour-1:hover .btn-text, .btn-main.colour-1:hover .btn-arrow { background-color: #5b5b5b; text-decoration: none; }
.btn-main.colour-2 { text-decoration: none; }
.btn-main.colour-2 .btn-text, .btn-main.colour-2 .btn-arrow { background-color: #5b5b5b; color: #fff; display: inline-block; -webkit-transition: all 0.2s ease; transition: all 0.2s ease; }
.btn-main.colour-2 .btn-text { padding: 10px 45px; }
.btn-main.colour-2 .btn-arrow { padding: 10px 20px; }
.btn-main.colour-2 .btn-arrow:before { content: "\2192"; }
.btn-main.colour-2:hover .btn-text, .btn-main.colour-2:hover .btn-arrow { background-color: #33268f; text-decoration: none; }
.btn-main.colour-3 { text-decoration: none; }
.btn-main.colour-3 .btn-text, .btn-main.colour-3 .btn-arrow { background-color: #000022; color: #fff; display: inline-block; -webkit-transition: all 0.2s ease; transition: all 0.2s ease; }
.btn-main.colour-3 .btn-text { padding: 10px 45px; }
.btn-main.colour-3 .btn-arrow { padding: 10px 20px; }
.btn-main.colour-3 .btn-arrow:before { content: "\2192"; }
.btn-main.colour-3:hover .btn-text, .btn-main.colour-3:hover .btn-arrow { background-color: #33268f; text-decoration: none; }
@media (max-width: 575.98px) { .btn-main { font-size: 1rem; }
  .btn-main.colour-1 .btn-text, .btn-main.colour-2 .btn-text, .btn-main.colour-3 .btn-text { padding: 10px 25px; }
  .btn-main.colour-1 .btn-arrow, .btn-main.colour-2 .btn-arrow, .btn-main.colour-3 .btn-arrow { padding: 10px 15px; } }

/*--------------------------------------------------------------
## Primary Menu
--------------------------------------------------------------*/
#underscores-nav { clear: both; display: block; float: left; width: 100%; /* Small menu. */ }
#underscores-nav ul { display: none; list-style: none; margin: 0; padding-left: 0; }
#underscores-nav ul ul { -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2); box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2); float: left; position: absolute; top: 100%; left: -999em; z-index: 99999; }
#underscores-nav ul ul ul { left: -999em; top: 0; }
#underscores-nav ul ul li:hover > ul, #underscores-nav ul ul li.focus > ul { left: 100%; }
#underscores-nav ul ul a { width: 200px; }
#underscores-nav ul li:hover > ul, #underscores-nav ul li.focus > ul { left: auto; }
#underscores-nav li { float: left; position: relative; }
#underscores-nav a { display: block; text-decoration: none; }
#underscores-nav .menu-toggle, #underscores-nav .main-navigation.toggled ul { display: block; }
@media screen and (min-width: 37.5em) { #underscores-nav .menu-toggle { display: none; }
  #underscores-nav .main-navigation ul { display: block; } }
.site-main #underscores-nav .comment-navigation, .site-main #underscores-nav .posts-navigation, .site-main #underscores-nav .post-navigation { margin: 0 0 1.5em; overflow: hidden; }
#underscores-nav .comment-navigation .nav-previous, #underscores-nav .posts-navigation .nav-previous, #underscores-nav .post-navigation .nav-previous { float: left; width: 50%; }
#underscores-nav .comment-navigation .nav-next, #underscores-nav .posts-navigation .nav-next, #underscores-nav .post-navigation .nav-next { float: right; text-align: right; width: 50%; }

@media (min-width: 992px) { .site-header { max-width: 235px; background-color: #fff; -webkit-box-shadow: 10px 0 10px -2px rgba(0, 0, 0, 0.1); box-shadow: 10px 0 10px -2px rgba(0, 0, 0, 0.1); z-index: 2; }
  .site-header .site-branding { padding: 25px 15px 20px; }
  .site-header nav.main-navigation > div > ul { list-style-type: none !important; font-family: "Poppins", sans-serif; font-size: 1.2rem; font-weight: bold; display: none; list-style: none; margin: 0; padding-left: 0; display: block; }
  .site-header nav.main-navigation > div > ul > li > a { padding: 10px 0; margin: 0 25px; text-decoration: none; display: block; text-transform: uppercase; color: #000022; }
  .site-header nav.main-navigation > div > ul > li > a:hover { color: #33268f; -webkit-backface-visibility: hidden; backface-visibility: hidden; }
  .site-header nav.main-navigation > div > ul > li > ul { background-color: rgba(233, 233, 233, 0.9); } }
@media (min-width: 992px) and (min-width: 768px) { .site-header nav.main-navigation > div > ul > li.menu-divider { width: 170px; border-bottom: 2px solid black; display: list-item; margin: 15px 25px 20px; line-height: 0; } }
@media (min-width: 992px) { .site-header nav.main-navigation > div > ul .dropdown-toggle:after { display: none !important; }
  /* Parent list item */
  li.megamenu { /* Submenu under .megamenu */ }
  li.megamenu:hover, li.megamenu:focus { background-color: #5b5b5b; }
  li.megamenu:hover > a, li.megamenu:focus > a { color: #fff !important; }
  li.megamenu:hover ul.dropdown-menu, li.megamenu:focus ul.dropdown-menu { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-transform: translate(235px, -35%) !important; transform: translate(235px, -35%) !important; border-radius: 0 10px 10px 0; top: 0; left: 0; }
  li.megamenu:hover:after, li.megamenu:focus:after { content: ""; display: block; height: 34px; width: 34px; background: #5b5b5b; position: absolute; right: -17px; -webkit-transform: rotate(45deg); transform: rotate(45deg); top: 7px; z-index: 1000; }
  li.megamenu > ul.dropdown-menu { width: 40vw; max-width: 800px; padding: 20px; }
  li.megamenu > ul.dropdown-menu.show { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-transform: translate(235px, -35%) !important; transform: translate(235px, -35%) !important; }
  li.megamenu li.description { font-family: "Poppins", sans-serif; font-weight: 400; list-style: none; display: -webkit-box; display: -ms-flexbox; display: flex; /* Fix extra space above description */ margin-bottom: 10px; }
  li.megamenu li.description .menu-desc { font-family: "Poppins", sans-serif; color: #33268f; display: block; text-transform: uppercase; font-weight: 700; font-size: 1.2rem; }
  li.megamenu li.description a { display: none; }
  li.megamenu li.col ul { padding-left: 1rem; }
  li.megamenu li.col-12 ul { padding-left: 0; }
  /* Basic Dropdown - Not Mega Menu */
  li.dropdown { /* Submenu under .megamenu */ }
  li.dropdown ul.dropdown-menu.show { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-transform: translate(235px, -35%) !important; transform: translate(235px, -35%) !important; }
  li.dropdown ul.dropdown-menu a { color: #252525; }
  li.dropdown ul.dropdown-menu a:hover { color: #fff; text-decoration: none; }
  li.dropdown:hover ul.dropdown-menu { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-transform: translate(235px, -35%) !important; transform: translate(235px, -35%) !important; top: 0; left: 0; } }
.site-header { background-color: #fff; }
.site-header #header-mobile .site-branding { max-width: 300px; padding-right: 20px; -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; -ms-flex-preferred-size: 0; flex-basis: 0; }
.site-header #header-mobile .navbar { padding: 1.5rem 0; }
.site-header #header-mobile .navbar #navbarNav > ul.navbar-nav { padding-top: 1.5rem; }
.site-header #header-mobile .navbar #navbarNav > ul.navbar-nav > li { background-color: #33268f; position: relative; }
.site-header #header-mobile .navbar #navbarNav > ul.navbar-nav > li:not(:first-child) { border-top: 2px solid #fff; }
.site-header #header-mobile .navbar #navbarNav > ul.navbar-nav > li a { display: inline-block; padding: 1rem; color: #fff; text-transform: uppercase; font-weight: 700; }
.site-header #header-mobile .navbar #navbarNav > ul.navbar-nav > li span.caret { border-left: 2px solid white; padding: 1rem; position: absolute; right: 0; /* display: inline-block; */ height: inherit; color: white; }
.site-header #header-mobile .navbar #navbarNav > ul.navbar-nav > li > ul.dropdown-menu { border-radius: 0; border: none; padding: 0; }
.site-header #header-mobile .navbar #navbarNav > ul.navbar-nav > li > ul.dropdown-menu > li { background-color: #5b5b5b; border-top: 2px solid #fff; }
.site-header #header-mobile .navbar #navbarNav > ul.navbar-nav > li * { margin-top: 0; }
.site-header #header-mobile .navbar #navbarNav li.current-menu-item, .site-header #header-mobile .navbar #navbarNav li.current_page_parent { background-color: #000022 !important; }

.csp-foundry-img { margin-top: 15px; }

.pagination > a, .pagination > span { padding: 0 15px; }
.pagination .current { font-weight: bold; }

.header-contact-bar { background-color: #3a3a3c; font-size: 9px; font-size: 0.9rem; }
.header-contact-bar--inline-wrapper { display: inline-block; padding: 0.5rem 0; }
@media (min-width: 768px) { .header-contact-bar--inline-wrapper { padding: 0.5rem 0 0.5rem; } }
.header-contact-bar--inline-wrapper svg { fill: #fff; width: 13px; height: auto; margin-right: 6px; position: relative; top: -1px; }
.header-contact-bar span a { text-transform: none; color: #fff; }
.header-contact-bar span:hover a { text-decoration: none; color: #33268f; }
.header-contact-bar span:hover svg { fill: #33268f; }
.header-contact-bar__close { font-size: 1.75rem; line-height: 0; color: #fff; font-weight: 700; background-color: transparent; border: none; padding: 1rem .5rem; display: inline-block; position: absolute; top: 4px; right: 0; }
.header-contact-bar__close:focus, .header-contact-bar__close:active { border: none; outline: none; }

/*--------------------------------------------------------------
## Footer Menu
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Footer Layouts
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Footer Layout #1
--------------------------------------------------------------*/
#footer_1 { background-color: #000022; color: #fff; }
#footer_1 > .container { padding-top: 60px; padding-bottom: 30px; }
#footer_1 .wrap { margin-bottom: 1.5em; }
#footer_1 p { margin-bottom: 0; }
#footer_1 ul { margin-left: 0; padding-left: 0; list-style: none; }
#footer_1 ul li a { color: inherit; -webkit-transition: all 0.2s ease; transition: all 0.2s ease; }
#footer_1 ul li a:hover { color: #5b5b5b; text-decoration: none; }

/*--------------------------------------------------------------
## Footer Layout #2
--------------------------------------------------------------*/
#footer_2 #footer-navigation h3 { margin: 0; display: block; border-bottom: 2px solid currentColor; margin-bottom: 15px; }
#footer_2 #footer-navigation ul { display: none; list-style: none; margin: 0; padding-left: 0; display: inline-block; }
#footer_2 #footer-navigation li { position: relative; }
#footer_2 #footer-navigation li a { margin-bottom: 0.5rem; color: #5b5b5b; }
#footer_2 #footer-navigation li a.visited { color: inherit; }
#footer_2 #footer-navigation li > a:hover, #footer_2 #footer-navigation li > a.focus { color: #33268f; }
#footer_2 #footer-navigation a { display: block; text-decoration: none; }
@media (max-width: 991.98px) { #footer_2 #footer-navigation .wrap { margin-bottom: 20px; } }

/*--------------------------------------------------------------
# Footer Partials
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Footer Partial - Social Icons
--------------------------------------------------------------*/
.footer-icon { font-size: 1.3vw; color: black; -webkit-transition: all 0.2s ease; transition: all 0.2s ease; }
.footer-icon:hover { color: gray; }

.icons-wrap a { padding-right: 10px; }
@media (max-width: 1199.98px) { .icons-wrap a { padding: 5px; } }

.footer-description { color: #5b5b5b; }

.social-icons img, .social-icons svg { border-radius: 100%; width: 100%; max-width: 60px; }
.social-icons img rect, .social-icons svg rect { fill: #fff; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
.social-icons img path, .social-icons svg path { fill: #000; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
.social-icons img:hover rect, .social-icons svg:hover rect { fill: #33268f; }
.social-icons img:hover path, .social-icons svg:hover path { fill: #fff; }
@media (min-width: 768px) { .social-icons img, .social-icons svg { max-width: 50px; } }

/*--------------------------------------------------------------
## Footer Partial - Copyright Banner
--------------------------------------------------------------*/
.copyright-wrap p, .copyright-wrap li, .copyright-wrap a { list-style: none; }
.copyright-wrap .wrapper { border-top: 2px solid #000; padding: 20px 15px 15px; }
.copyright-wrap .footer-menu-privacy { float: right; }
.copyright-wrap .footer-menu-privacy ul { list-style: none; margin: 0; padding-left: 0; }
.copyright-wrap .footer-menu-privacy ul li { float: left; padding: 0 10px; }
@media (max-width: 991.98px) { .copyright-wrap .footer-menu-privacy ul li:not(:last-child) { padding: 0 10px 0 0; } }
@media (max-width: 991.98px) { .copyright-wrap .footer-menu-privacy { float: left; } }

/*--------------------------------------------------------------
# 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; /* Many screen reader and browser combinations announce broken words as they would appear visually. */ }
.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: 8.75px; font-size: 0.875rem; font-weight: bold; height: auto; left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000; /* Above WP toolbar. */ }

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus { outline: 0; }

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft { display: inline; float: left; margin-right: 1.5em; }

.alignright { display: inline; float: right; margin-left: 1.5em; }

.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; }

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before, .clear:after, .entry-content:before, .entry-content:after, .comment-content:before, .comment-content:after, .site-header:before, .site-header:after, .site-content:before, .site-content:after, .site-footer:before, .site-footer:after { content: ""; display: table; table-layout: fixed; }

.clear:after, .entry-content:after, .comment-content:after, .site-header:after, .site-content:after, .site-footer:after { clear: both; }

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget { margin: 0 0 1.5em; /* Make sure select elements fit in widgets. */ }
.widget select { max-width: 100%; }

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky { display: block; }

.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; }

/*--------------------------------------------------------------
## Fixes for Wordpress admin menu conflicts
--------------------------------------------------------------*/
.components-panel__header.edit-post-sidebar-header ul { margin: 0; }
.components-panel__header.edit-post-sidebar-header ul li { list-style: none; }

#adminmenu ul { margin-left: 0; }

.edit-post-sidebar .acf-block-fields.acf-fields { overflow-x: scroll; }

/*--------------------------------------------------------------
## Fixes for default Gutenberg Blocks
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Embed - Youtube embed block
--------------------------------------------------------------*/
.wp-block-embed-youtube .wp-block-embed__wrapper iframe { width: 100%; }

/*--------------------------------------------------------------
## Site-wide Container styles
--------------------------------------------------------------*/
/* Fix for slick slider flexbox bug */
#body-content-wrapper { min-width: 0; }

.site-main > *:not(.mag-block) { width: 100%; padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; }
@media (min-width: 576px) { .site-main > *:not(.mag-block) { max-width: 540px; } }
@media (min-width: 768px) { .site-main > *:not(.mag-block) { max-width: 720px; } }
@media (min-width: 992px) { .site-main > *:not(.mag-block) { max-width: 960px; } }
@media (min-width: 1200px) { .site-main > *:not(.mag-block) { max-width: 1140px; } }
@media (min-width: 1600px) { .site-main > *:not(.mag-block) { max-width: 1400px; } }

.site-main > .alignfull { max-width: 100%; padding-left: 0; padding-right: 0; }

.site-main > *:last-child { margin-bottom: 0 !important; }

.container-wrap { width: 100%; }

@media (min-width: 1600px) { .container { max-width: 1400px; } }
/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation, .infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */ display: none; }

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer { display: block; }

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley, .entry-content .wp-smiley, .comment-content .wp-smiley { border: none; margin-bottom: 0; margin-top: 0; padding: 0; }

/* Make sure embeds and iframes fit their containers. */
embed, iframe, object { max-width: 100%; }

/* 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; }

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery { margin-bottom: 1.5em; }

.gallery-item { display: inline-block; text-align: center; vertical-align: top; width: 100%; }
.gallery-columns-2 .gallery-item { max-width: 50%; }
.gallery-columns-3 .gallery-item { max-width: 33.33%; }
.gallery-columns-4 .gallery-item { max-width: 25%; }
.gallery-columns-5 .gallery-item { max-width: 20%; }
.gallery-columns-6 .gallery-item { max-width: 16.66%; }
.gallery-columns-7 .gallery-item { max-width: 14.28%; }
.gallery-columns-8 .gallery-item { max-width: 12.5%; }
.gallery-columns-9 .gallery-item { max-width: 11.11%; }

.gallery-caption { display: block; }

/*--------------------------------------------------------------
# Blocks
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Hero Image Banner Block
--------------------------------------------------------------*/
.hero-img { min-height: 400px; background-size: cover; background-position: center; position: relative; overflow: hidden; }
@media (min-width: 768px) { .hero-img { height: 600px; } }
.hero-img__logo { max-height: 80px; width: auto; padding-right: 5px; }
.hero-img .content-wrap { z-index: 1; }
.hero-img .content-wrap h1, .hero-img .content-wrap h2, .hero-img .content-wrap h3, .hero-img .content-wrap h4, .hero-img .content-wrap p { color: white; text-shadow: 0 0 10px rgba(0, 0, 0, 0.5); }
@media (min-width: 992px) { .hero-img .content-wrap { -webkit-transform: translateX(50px); transform: translateX(50px); opacity: 0; -webkit-transition: all 0.5s ease; transition: all 0.5s ease; }
  .hero-img .content-wrap.slide-in { -webkit-transform: translateX(0); transform: translateX(0); opacity: 1; } }
.hero-img.is-admin .content-wrap h1, .hero-img.is-admin .content-wrap h2, .hero-img.is-admin .content-wrap h3, .hero-img.is-admin .content-wrap p { color: #fff !important; }
.hero-img video { left: 50%; min-height: 100%; min-width: 101%; overflow: hidden; position: absolute; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

/*--------------------------------------------------------------
## Hero Video Banner Block
--------------------------------------------------------------*/
.hero-video-banner { height: 600px; overflow: hidden; position: relative; background-size: cover; background-position: center; }
.hero-video-banner video { left: 50%; min-height: 100%; min-width: 100%; position: absolute; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

/*--------------------------------------------------------------
## CTA Image Block
--------------------------------------------------------------*/
.cta-image-block { padding-left: 15px !important; padding-right: 15px !important; }
.cta-image-block .btn-wrap { position: absolute; bottom: 2rem; width: 100%; text-align: center; }
.cta-image-block .cta-wrap { height: 400px; margin-top: 15px; padding-bottom: 15px; }
.cta-image-block .cta-wrap .cta-wrap-inner { background-size: cover; background-position: center; position: relative; }
.cta-image-block .cta-wrap h3 { text-align: center; padding: 30px 0; }
@media (min-width: 1200px) { .cta-image-block .cta-wrap { height: 450px; } }
.cta-image-block .btn-main + .btn-main { margin-left: 0.8rem; }

/* Ensure there is no extra space between touching cta-image-block divs, but puts space above and below. */
.cta-image-block + *:not(.cta-image-block) { margin-top: 3rem; margin-bottom: 3rem; }

/* Puts space below the last cta-image-block on the page. Fallback if there are no more divs below the cta-image-block before the footer. */
.cta-image-block:last-of-type { margin-bottom: 3rem; }

:not(.cta-image-block) + .cta-image-block { margin-top: 3rem; }

/*--------------------------------------------------------------
## Card Gallery Block
--------------------------------------------------------------*/
.card-gallery-block.is-admin .card { padding: 0 !important; }

/*--------------------------------------------------------------
## Title Divider Block
--------------------------------------------------------------*/
.title-divider { padding: 60px 0; background-size: cover; background-position: bottom left; }

/*--------------------------------------------------------------
## Accordion
--------------------------------------------------------------*/
.accordion .card-header { padding: 0; }
.accordion h3 button { font-size: inherit; font-family: inherit; color: inherit; width: 100%; text-align: left; display: block; padding: .75rem 1.25rem; }
.accordion h3 button:hover, .accordion h3 button:focus, .accordion h3 button:active { border-color: transparent; outline: none; color: #33268f; text-decoration: none; }
.accordion h3 button.collapsed .a-chevron:after { content: "\2303"; font-size: 1.7rem; font-family: sans-serif; font-weight: 700; position: relative; bottom: -5px; display: inline-block; -webkit-transform: rotate(0deg); transform: rotate(0deg); }
.accordion h3 button .a-chevron:after { content: "\2303"; font-size: 1.7rem; font-family: sans-serif; font-weight: 700; position: relative; bottom: 0; display: inline-block; -webkit-transform: rotate(180deg); transform: rotate(180deg); }

/*--------------------------------------------------------------
## Single Accordion
--------------------------------------------------------------*/
.single-accordion h3 button { font-size: inherit; font-family: inherit; color: inherit; width: 100%; text-align: left; display: block; padding: .75rem 1.25rem; }
.single-accordion h3 button:hover, .single-accordion h3 button:focus, .single-accordion h3 button:active { border-color: transparent; outline: none; color: #33268f; text-decoration: none; }
.single-accordion h3 button.collapsed .a-chevron:after { content: "\2303"; font-size: 1.7rem; font-family: sans-serif; font-weight: 700; position: relative; bottom: -5px; display: inline-block; -webkit-transform: rotate(0deg); transform: rotate(0deg); }
.single-accordion h3 button .a-chevron:after { content: "\2303"; font-size: 1.7rem; font-family: sans-serif; font-weight: 700; position: relative; bottom: 0; display: inline-block; -webkit-transform: rotate(180deg); transform: rotate(180deg); }

/*--------------------------------------------------------------
## Image - Text Block
--------------------------------------------------------------*/
@media (max-width: 991.98px) { .img-text .content { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; } }
.img-text .bkg-img { background-size: cover; background-position: center; height: 400px; }
.img-text .order-lg-first .margin-calc { margin: 0 25px; }
@media (min-width: 1200px) { .img-text .order-lg-first .margin-calc { margin-left: 50px; } }
@media (min-width: 992px) { .img-text .order-lg-first .margin-calc { margin-left: 50px; } }
.img-text .order-lg-last .margin-calc { margin: 0 25px; }
@media (min-width: 1200px) { .img-text .order-lg-last .margin-calc { margin-right: 50px; } }
@media (min-width: 992px) { .img-text .order-lg-last .margin-calc { margin-right: 50px; } }
.img-text.is-admin h1, .img-text.is-admin h2, .img-text.is-admin h3 { color: inherit !important; }

/*--------------------------------------------------------------
## Image - Text Slide Block
--------------------------------------------------------------*/
@media (min-width: 576px) { .img-text-slide .animate-left { opacity: 0; -webkit-transform: translateX(-30px); transform: translateX(-30px); -webkit-transition: all 1s ease; transition: all 1s ease; }
  .img-text-slide .animate-right { opacity: 0; -webkit-transform: translateX(30px); transform: translateX(30px); -webkit-transition: all 1s ease; transition: all 1s ease; }
  .img-text-slide .fade-in .animate-left, .img-text-slide .fade-in .animate-right { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .img-text-slide .animate-left, .img-text-slide .animate-right { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); } }
.img-text-slide .content { padding-top: 30px; padding-bottom: 30px; }
@media (max-width: 991.98px) { .img-text-slide .content { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; } }
.img-text-slide .bkg-img { background-size: cover; background-position: center; width: 100%; padding-top: 100%; border-radius: 50%; }
.img-text-slide .order-lg-first .margin-calc { margin: 0 25px; }
@media (min-width: 1200px) { .img-text-slide .order-lg-first .margin-calc { margin-left: 50px; } }
@media (min-width: 992px) { .img-text-slide .order-lg-first .margin-calc { margin-left: 50px; } }
.img-text-slide .order-lg-last .margin-calc { margin: 0 25px; }
@media (min-width: 1200px) { .img-text-slide .order-lg-last .margin-calc { margin-right: 50px; } }
@media (min-width: 992px) { .img-text-slide .order-lg-last .margin-calc { margin-right: 50px; } }
.img-text-slide.is-admin h1, .img-text-slide.is-admin h2, .img-text-slide.is-admin h3 { color: inherit !important; }
.img-text-slide.is-admin .animate { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); }

/*--------------------------------------------------------------
## Custom About Us Block
--------------------------------------------------------------*/
@media (min-width: 992px) { .about-us-block .overlap:not(:last-child) { margin-bottom: 1rem; } }
@media (max-width: 991.98px) { .about-us-block .img-wrap { margin: 0 10%; } }
@media (min-width: 576px) { .about-us-block .animate-left { opacity: 0; -webkit-transform: translateX(-30px); transform: translateX(-30px); -webkit-transition: all 1s ease; transition: all 1s ease; }
  .about-us-block .animate-right { opacity: 0; -webkit-transform: translateX(30px); transform: translateX(30px); -webkit-transition: all 1s ease; transition: all 1s ease; }
  .about-us-block .fade-in .animate-left, .about-us-block .fade-in .animate-right { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .about-us-block .animate-left, .about-us-block .animate-right { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); } }
.about-us-block .content { padding-top: 30px; padding-bottom: 30px; }
@media (max-width: 991.98px) { .about-us-block .content { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; } }
.about-us-block .bkg-img { background-size: cover; background-position: center; width: 100%; padding-top: 100%; border-radius: 50%; }
.about-us-block .order-lg-first .margin-calc { margin: 0 25px; }
@media (min-width: 1200px) { .about-us-block .order-lg-first .margin-calc { margin-left: 50px; } }
@media (min-width: 992px) { .about-us-block .order-lg-first .margin-calc { margin-left: 50px; } }
.about-us-block .order-lg-last .margin-calc { margin: 0 25px; }
@media (min-width: 1200px) { .about-us-block .order-lg-last .margin-calc { margin-right: 50px; } }
@media (min-width: 992px) { .about-us-block .order-lg-last .margin-calc { margin-right: 50px; } }
.about-us-block.is-admin h1, .about-us-block.is-admin h2, .about-us-block.is-admin h3 { color: inherit !important; }
.about-us-block.is-admin .animate { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); }

/*--------------------------------------------------------------
## CPT Profile Block
--------------------------------------------------------------*/
.cpt-profile .cpt-profile-wrap:not(:last-child) { padding-bottom: 30px; }
.cpt-profile .post-thumbnail img { width: 100%; height: auto; }

.sales-profile img { height: 300px; width: auto; -o-object-fit: cover; object-fit: cover; }
.sales-profile .social-icons img, .sales-profile .social-icons svg { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; border-radius: 20%; width: 100%; max-width: 50px; }
.sales-profile .social-icons img rect, .sales-profile .social-icons svg rect { fill: #5b5b5b; }
.sales-profile .social-icons img path, .sales-profile .social-icons svg path { fill: #fff; }
.sales-profile .social-icons img:hover rect, .sales-profile .social-icons svg:hover rect { fill: #33268f; }
@media (min-width: 768px) { .sales-profile .social-icons img, .sales-profile .social-icons svg { max-width: 40px; } }

/*--------------------------------------------------------------
## CPT Title Banner
--------------------------------------------------------------*/
.cpt-title-banner { padding: 2.5rem 0; background-size: cover; background-position: center; }
.cpt-title-banner h1 { margin: 0; }
.cpt-title-banner.bkg-primary { background: #231a57; background: -webkit-gradient(linear, left top, right top, from(#231a57), color-stop(49%, #332680)); background: linear-gradient(90deg, #231a57 0%, #332680 49%); }
.cpt-title-banner.bkg-secondary { background-color: #5b5b5b; }
.cpt-title-banner.bkg-dark-accent { background-color: #000022; }
.cpt-title-banner.bkg-light-accent { background-color: #e9e9e9; }

/*--------------------------------------------------------------
## Taxonomy Display
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Title Image Banner
--------------------------------------------------------------*/
.title-img-banner { background-size: cover; background-position: center; }
.title-img-banner h1 { padding-top: 16px; padding-bottom: 16px; }
.title-img-banner.bkg-primary { background: #283891; background: -webkit-gradient(linear, left top, right top, color-stop(22%, #283891), to(#3a3a3c)); background: linear-gradient(90deg, #283891 22%, #3a3a3c 100%); }
.title-img-banner.bkg-secondary { background-color: #5b5b5b; }
.title-img-banner.bkg-dark-accent { background-color: #000022; }
.title-img-banner.bkg-light-accent { background-color: #e9e9e9; }

/*--------------------------------------------------------------
## Table Column Block
--------------------------------------------------------------*/
.table-column .acf__table-table { border-collapse: collapse; width: 100%; }
.table-column .acf__table-table thead .tb-title { background-color: #000; }
.table-column .acf__table-table thead td, .table-column .acf__table-table thead th { padding-top: 10px; padding-bottom: 10px; background-color: #33268f; color: white; }
.table-column .acf__table-table td, .table-column .acf__table-table th, .table-column .acf__table-table thead { padding: 4px 8px; }
.table-column .acf__table-table tr:nth-child(even) { background-color: #f2f2f2; }
.table-column .acf__table-table tr:hover { background-color: rgba(51, 38, 143, 0.2); }
.table-column .acf__table-table th { padding-top: 10px; padding-bottom: 10px; text-align: center; background-color: #000; color: white; border: none; }

@media (max-width: 767.98px) { div.table-wrap + div.table-wrap { margin-top: 3rem; } }
/*--------------------------------------------------------------
## Food and Drink Menu Block
--------------------------------------------------------------*/
.food-drink-menu .food-img { height: 225px; background-size: cover; background-position: center; }
.food-drink-menu .col-wrap { margin-top: 15px; padding-bottom: 15px; }
.food-drink-menu .col-wrap .col-wrap-inner { -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1); box-shadow: 0 0 5px rgba(0, 0, 0, 0.1); }
.food-drink-menu .col-wrap .content-wrap { padding: 1rem; }

/* Video Banner */
.video-embed-section .video-wrap { position: relative; width: 100%; height: 0; padding-bottom: 600px; }
.video-embed-section iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.video-embed-section.is-admin:before { display: block; content: ""; top: 60px; left: 0; right: 0; bottom: 50px; position: absolute; z-index: 1; }

/*--------------------------------------------------------------
## Logo Carousel Block
--------------------------------------------------------------*/
.logo-carousel { padding: 0 0 5px; background-color: #474747; }
.logo-carousel .slides img { max-height: 200px; width: auto; margin: 0 auto; padding: 20px; }
.logo-carousel .slick-track { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; min-height: 150px; }
.logo-carousel.is-admin:before { display: block; content: ""; top: 0; left: 0; right: 0; bottom: 40px; position: absolute; z-index: 1; }

/*--------------------------------------------------------------
## Page Feature Block
--------------------------------------------------------------*/
.page-feature { margin-top: 2rem; margin-bottom: 2rem; /* Prevent user from accidently clicking URL when trying to select block on editor */ }
.page-feature a { text-decoration: none; }
.page-feature .img-wrap { height: 200px; background-size: cover; background-position: center; z-index: 0; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
.page-feature .img-wrap h3 { color: #fff; text-shadow: 0 0 10px rgba(0, 0, 0, 0.6); z-index: 2; margin: 0; padding: 0 20px; }
.page-feature .img-wrap .overlay { position: absolute; top: 0; bottom: 0; left: 0; right: 0; height: 100%; width: 100%; opacity: 0.5; background-color: #000022; z-index: -1; border-top: 0px solid #33268f; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
.page-feature .img-wrap:hover { -webkit-transform: scale(1.05); transform: scale(1.05); }
.page-feature .img-wrap:hover .overlay { position: absolute; background-color: transparent; opacity: 1; top: 0; bottom: 0; left: 0; right: 0; height: 100%; width: 100%; border-top: 10px solid #33268f; }
.page-feature .content-wrap { padding-top: 20px; }
.page-feature.is-admin .img-wrap:before { display: block; content: ""; top: 0; left: 0; right: 0; bottom: 0; position: absolute; z-index: 1; }
@media (max-width: 991.98px) { .page-feature .col-lg { margin-bottom: 0; }
  .page-feature .col-lg:not(:last-child) .wrapper { margin-bottom: 2rem; }
  .page-feature .col-lg + .page-feature .col-lg { margin-top: 0; } }
@media (max-width: 991.98px) { .page-feature .col-md { margin-bottom: 0; }
  .page-feature .col-md:not(:last-child) .wrapper { margin-bottom: 2rem; }
  .page-feature .col-md + .page-feature .col-md { margin-top: 0; } }

.page-feature + *:not(.page-feature) { margin-top: 3rem; }

*:not(.page-feature) + .page-feature { margin-top: 3rem; }

/*--------------------------------------------------------------
## 3 Column Image and Description Block
--------------------------------------------------------------*/
.img-desc { margin-top: 2rem; margin-bottom: 2rem; }
.img-desc .img-wrap { height: 300px; background-size: cover; background-position: center; z-index: 1; }
.img-desc .img-wrap h3 { color: #fff; text-shadow: 0 0 10px rgba(0, 0, 0, 0.5); z-index: 2; margin: 0; padding: 0 20px; }
.img-desc .img-wrap .overlay-1 { position: absolute; top: 0; bottom: 0; left: 0; right: 0; height: 100%; width: 100%; opacity: 0.5; background-color: #000022; z-index: -1; }
.img-desc .img-wrap .overlay-2 { position: absolute; top: 0; bottom: 0; left: 0; right: 0; height: 100%; width: 100%; border-top: 8px solid #33268f; }
.img-desc .img-wrap a { text-decoration: none; }
.img-desc .content-wrap { padding-top: 20px; }
.img-desc .col-lg-4 { margin-bottom: 0; }
.img-desc .col-lg-4:not(:last-child) .wrapper { margin-bottom: 2rem; }
.img-desc .col-lg-4 + .img-desc .col-lg-4 { margin-top: 0; }
@media (max-width: 991.98px) { .img-desc .col-md { margin-bottom: 0; }
  .img-desc .col-md:not(:last-child) .wrapper { margin-bottom: 2rem; }
  .img-desc .col-md + .img-desc .col-md { margin-top: 0; } }

.img-desc + *:not(.img-desc) { margin-top: 3rem; }

:not(.img-desc) + .img-desc { margin-top: 3rem; }

/*--------------------------------------------------------------
## Taxonomy Display Block
--------------------------------------------------------------*/
.taxonomy-display { margin-top: 2rem; margin-bottom: 2rem; /* Prevent user from accidently clicking URL when trying to select block on editor */ }
.taxonomy-display a { text-decoration: none; }
.taxonomy-display .img-wrap { height: 200px; background-size: cover; background-position: center; z-index: 0; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
.taxonomy-display .img-wrap h3 { color: #fff; text-shadow: 0 0 10px rgba(0, 0, 0, 0.6); z-index: 2; margin: 0; padding: 0 20px; }
.taxonomy-display .img-wrap .overlay { position: absolute; top: 0; bottom: 0; left: 0; right: 0; height: 100%; width: 100%; opacity: 0.5; background-color: #000022; z-index: -1; border-top: 0px solid #33268f; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
.taxonomy-display .img-wrap:hover { -webkit-transform: scale(1.05); transform: scale(1.05); }
.taxonomy-display .img-wrap:hover .overlay { position: absolute; background-color: transparent; opacity: 1; top: 0; bottom: 0; left: 0; right: 0; height: 100%; width: 100%; border-top: 10px solid #33268f; }
.taxonomy-display .content-wrap { padding-top: 20px; }
.taxonomy-display.is-admin:before { display: block; content: ""; top: 0; left: 0; right: 0; bottom: 0; position: absolute; z-index: 9; }
.taxonomy-display .col-wrap .wrapper { margin-bottom: 2rem; }
@media (max-width: 767.98px) { .taxonomy-display .col-wrap { margin-bottom: 0; }
  .taxonomy-display .col-wrap:not(:last-child) .wrapper { margin-bottom: 2rem; }
  .taxonomy-display .col-wrap + .taxonomy-display .col-wrap { margin-top: 0; } }

/*--------------------------------------------------------------
## Horizontal Separator Block
--------------------------------------------------------------*/
.h-separator hr { background-color: inherit; margin: 0; }
.h-separator hr.separator-1 { border-top: 1px dotted #000022; border-width: 2px; }
.h-separator hr.separator-2 { border-top: 1px solid #000022; }
.h-separator hr.separator-3 { border-top: 1px dashed #000022; border-width: 2px; }

/*--------------------------------------------------------------
## Slider Gallery Block
--------------------------------------------------------------*/
.slider-gallery { padding: 0 0 5px; width: calc(100vw - $size__sidebar-menu); }
.slider-gallery .slides img { height: 50vh; width: auto; padding: 0 10px; }
.slider-gallery .slides img:focus { outline: none; }
.slider-gallery .slick-prev { left: 0; }
.slider-gallery .slick-prev:before { content: "\2039"; font-size: 5rem; font-family: sans-serif; }
.slider-gallery .slick-next { right: 0; }
.slider-gallery .slick-next:before { content: "\203A"; font-size: 5rem; font-family: sans-serif; }
.slider-gallery .slick-prev, .slider-gallery .slick-prev:focus, .slider-gallery .slick-next, .slider-gallery .slick-next:focus { height: 100%; background-color: rgba(0, 0, 34, 0.5); width: 40px; z-index: 1; border-radius: 0; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
@media (min-width: 576px) { .slider-gallery .slick-prev, .slider-gallery .slick-prev:focus, .slider-gallery .slick-next, .slider-gallery .slick-next:focus { width: 50px; } }
@media (min-width: 992px) { .slider-gallery .slick-prev, .slider-gallery .slick-prev:focus, .slider-gallery .slick-next, .slider-gallery .slick-next:focus { width: 120px; } }
.slider-gallery .slick-prev:hover, .slider-gallery .slick-next:hover { background-color: rgba(91, 91, 91, 0.6); }
.slider-gallery .slick-slide:focus { outline: none; }
.slider-gallery.is-admin:before { display: block; content: ""; top: 0; left: 0; right: 0; bottom: 40px; position: absolute; z-index: 1; }

/*--------------------------------------------------------------
## Contact Bar Block
--------------------------------------------------------------*/
.contact-bar { height: 150px; }
.contact-bar h3 { margin: 0; }
.contact-bar.is-admin { color: inherit; }

/*--------------------------------------------------------------
## Contact Form Block
--------------------------------------------------------------*/
.contact-form .gform_wrapper { margin: 0; }
.contact-form .gform_wrapper .gform_fields > li:first-child { margin-top: 0; }

/*--------------------------------------------------------------
## Product Category Selector Block
--------------------------------------------------------------*/
.product-cat-select .product-wrap a { margin-bottom: 1rem; padding: 1rem 2rem 1rem; display: block; background-color: #000022; color: #fff; -webkit-transition: all 0.1s ease; transition: all 0.1s ease; }
.product-cat-select .product-wrap a:hover { background-color: #5b5b5b; text-decoration: none; }
@media (max-width: 767.98px) { .product-cat-select .product-wrap a { text-align: center; } }
.product-cat-select.is-admin .product-wrap:before { display: block; content: ""; top: 0; left: 0; right: 0; bottom: 0; position: absolute; z-index: 1; }

.product-cat-select + .contact-bar { margin-top: 3rem; }

/*--------------------------------------------------------------
## Product PDF Selector
--------------------------------------------------------------*/
.pdf-selector .product-wrap a { margin-bottom: 1rem; text-decoration: none; }
.pdf-selector .product-wrap a .txt-wrap, .pdf-selector .product-wrap a .img-wrap { background-color: #6b6b6b; -webkit-transition: all 0.1s ease; transition: all 0.1s ease; }
.pdf-selector .product-wrap a .txt-wrap { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; margin-right: 10px; padding: 0 2rem; color: #fff; }
.pdf-selector .product-wrap a .img-wrap { padding: 10px 20px; }
.pdf-selector .product-wrap a .img-wrap svg { height: 50px; width: auto; fill: #fff; }
.pdf-selector .product-wrap a .img-wrap svg .inner path, .pdf-selector .product-wrap a .img-wrap svg polygon { fill: #e05850; }
.pdf-selector .product-wrap a:hover .txt-wrap, .pdf-selector .product-wrap a:hover .img-wrap { background-color: #808080; }
.pdf-selector.is-admin .product-wrap:before { display: block; content: ""; top: 0; left: 0; right: 0; bottom: 0; position: absolute; z-index: 1; }

.pdf-selector + .contact-bar { margin-top: 3rem; }

/*--------------------------------------------------------------
## PDF Info
--------------------------------------------------------------*/
.pdf-info .pdf-title { font-size: 1.1rem; font-weight: 700; }

/*--------------------------------------------------------------
## Custom Page Selector
--------------------------------------------------------------*/
.page-selector .product-wrap a { margin-bottom: 1rem; padding: 1rem 2rem 1rem; display: block; background-color: #000022; color: #fff; -webkit-transition: all 0.1s ease; transition: all 0.1s ease; }
.page-selector .product-wrap a:hover { background-color: #5b5b5b; text-decoration: none; }
@media (max-width: 767.98px) { .page-selector .product-wrap a { text-align: center; } }
.page-selector .product-wrap span:after { content: "\203A"; margin-left: 15px; font-size: 2rem; display: inline-block; line-height: 1.4rem; float: right; }
.page-selector.is-admin .product-wrap:before { display: block; content: ""; top: 0; left: 0; right: 0; bottom: 0; position: absolute; z-index: 1; }

.page-selector + .contact-bar { margin-top: 3rem; }

/*--------------------------------------------------------------
## Locations Display Block
--------------------------------------------------------------*/
.location-display { text-align: center; }
.location-display iframe { margin-bottom: 20px; }

/*--------------------------------------------------------------
## Custom List Class - used on wysiwyg editor block
--------------------------------------------------------------*/
.custom-bullets h3 + ol { margin-top: 30px; }
.custom-bullets ul { list-style: none; }
.custom-bullets ul li { margin-bottom: 35px; }
.custom-bullets ul li:before { margin-right: 20px; margin-left: -68px; margin-top: -15px; content: "\203A"; background: #33268f; border-radius: 100%; color: white; width: 3rem; text-align: center; vertical-align: middle; font-size: 2rem; display: inline-block; position: absolute; }
.custom-bullets ol { list-style: none; counter-reset: item; }
.custom-bullets ol li { counter-increment: item; margin-bottom: 35px; }
.custom-bullets ol li:before { margin-right: 20px; margin-left: -68px; margin-top: -15px; content: counter(item); background: #33268f; border-radius: 100%; color: white; width: 3rem; height: 3rem; text-align: center; vertical-align: middle; display: inline-block; padding-top: 13px; position: absolute; }
.custom-bullets ul li ul, .custom-bullets ol li ol { margin-top: 20px; margin-bottom: 25px; }
.custom-bullets ol ul { margin-top: 1rem; }
.custom-bullets ol ul li { margin-bottom: 15px; }
.custom-bullets ol ul li:before { margin-right: 20px; margin-left: -68px; content: ""; background: #33268f; border-radius: 100%; color: white; width: 1.2rem; height: 1.2rem; text-align: center; vertical-align: middle; font-size: 1rem; display: inline-block; }

/*--------------------------------------------------------------
## Locations Display Block
--------------------------------------------------------------*/
.img-tooltip img { height: auto; width: 100%; }
.img-tooltip .mag-tooltip { width: 16px; height: 16px; border-radius: 10px; border: 2px solid #000; position: absolute; background: rgba(51, 38, 143, 0.5); }
.img-tooltip .mag-tooltip:hover { -webkit-animation-play-state: paused; }
.img-tooltip .mag-tooltip:hover .info { visibility: visible; }
.img-tooltip .info { width: 250px; padding: 10px; background: white; border-radius: 3px; position: absolute; visibility: hidden; bottom: 20px; right: -119px; -webkit-box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.5); box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.5); z-index: 9999; }
.img-tooltip .arrow { position: absolute; margin: 10px 0 0 105px; width: 0; height: 0; border-left: 10px solid transparent; border-right: 10px solid transparent; border-top: 10px solid #fff; }

#container-new { background: url(https://lh3.ggpht.com/PQXITv6h0hTZLqlvlni7RSN2rE70QytYeNAtngBc3wKQuq8g5gH28EUDqYKgCPkWfQ=h900-rw) no-repeat; background-size: 500px 293px; width: 500px; height: 293px; margin: 25px auto; }
#container-new .mag-tooltip { width: 16px; height: 16px; border-radius: 10px; border: 2px solid #fff; position: absolute; background: rgba(255, 255, 255, 0.5); }
#container-new .mag-tooltip:hover { -webkit-animation-play-state: paused; }
#container-new .mag-tooltip:hover .info { visibility: visible; }
#container-new #first { margin: 200px 0 0 200px !important; }
#container-new #second { margin: 75px 0 0 52px !important; }
#container-new #third { margin: 158px 0 0 425px !important; }
#container-new .info { width: 200px; padding: 10px; background: white; border-radius: 3px; position: absolute; visibility: hidden; margin: -105px 0 0 -100px; -webkit-box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.5); box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.5); }
#container-new .info h3 { font-family: 'Roboto', sans-serif; font-weight: 100; font-size: 20px; margin: 0 0 5px 0; }
#container-new .info p { font-family: 'Roboto', sans-serif; font-weight: 400; font-size: 12px; }
#container-new .arrow { position: absolute; margin: 10px 0 0 88px; width: 0; height: 0; border-left: 10px solid transparent; border-right: 10px solid transparent; border-top: 10px solid #fff; }

/*--------------------------------------------------------------
## Custom Image Block
--------------------------------------------------------------*/
.custom-image img { width: 100%; -o-object-fit: cover; object-fit: cover; }

/*--------------------------------------------------------------
## Default - Gravity Forms Block
--------------------------------------------------------------*/

/*# sourceMappingURL=style.css.map */