/*********************************************************************************************************************
 * Theme Name: Improvise
 * Description: A simple, Gutenberg supported WordPress custom theme built by Crack Ajax as a starter theme to quickly develop children themes for clients.
 * Author: Crack-Ajax Web Technologies
 * Author URI: http://improvise.com
 * Text Domain: improvise
 * Version: 1.5.8
 ********************************************************************************************************************/

/****************************************** WordPress User Edit Link ************************************************/

.edit-this-link {
    display: none;
    width: 100%;
}

/*********************************************************************************************************************
 *********** General Purpose Classes
 *
 * @class .no-margin-top			| Sets margin-top to 0 !important
 * @class .no-margin-bottom			| Sets margin-bottom to 0 !important
 * @class .restricted-width			| Sets the user defined restricted width to a block
 * @class .portrait-image			| Centers image and limits width to 450px
 * 
 *********** Media Text Block Custom Classes ( styling for plugin /inc/gutenberg//blocks/block-media-text.js )
 *
 * @class .media-text-cta 			| Create polished CTA for the Media-Text block
 * @class .media-padded				| Media image has padding around the outside edges, good for background color
 * @class .content-flush			| If no background-color & no alignfull, removes outside edge padding of content
 *
 *********** Cover Block Custom Classes ( styling for plugin /inc/gutenberg//blocks/block-cover.js )
 *
 * @class .is-style-cover-cta		| Cover Block with Resticted Width for CTA setup
 * @class .a-left					| Align the CTA to the left
 * @class .a-right					| Align the CTA to the right
 *
 ********************************************************************************************************************/

.no-margin-top {
	margin-top: 0!important;
}

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

.restricted-width {
	max-width: var(--restricted-width);
	margin-left: auto;
    margin-right: auto;
}

.portrait-image {
	margin: 0 auto;
	max-width: 450px;
}

/****************************************** Text and Anchor Tag Settings ******************************************/
*,
*::after,
*::before {
	box-sizing: border-box;
}

h1, h2, h3, h4, p, a, span, div, label {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased;
}

h1 {
	color: var(--color-dark-text);
	font-family: var(--font-primary-heading);
	margin-bottom: var(--m-spacing);
}

h2, h3, h4, h5, h6 {
	color: var(--color-dark-text);
	font-family: var(--font-secondary-heading);
	margin-bottom: var(--s-spacing);
}

h1, h2, h3, h4, h5, h6, p {
	margin-top: 0;
	line-height: 1.2;
}

h1.has-background,
h2.has-background,
h3.has-background,
h4.has-background,
h5.has-background,
h6.has-background {
	padding: var(--l-spacing);
}

h2[id]:not(.block-editor-rich-text__editable):before {
	display: block;
    content: " ";
    margin-top: calc( calc( var(--s-spacing) + var(--xl-spacing) ) * -1 );
    height: calc( var(--s-spacing) + var(--xl-spacing) );
    visibility: hidden;
    pointer-events: none;
}

p, li, pre, .wp-block-verse {
	color: var(--color-light-text);
	font-family: var(--font-primary);
	font-size: var(--fontsize-base);
	line-height: 1.6;
}

p, pre, .wp-block-verse {
	margin-bottom: var(--s-spacing);
}

sup {
	font-size: 0.5em;
    font-weight: bold;
}

article li {
	margin: 10px 0;
}

.wp-block-verse {
	font-style: italic;
    font-weight: 600;
}

h1 { font-size: 2rem; }


h2 { font-size: 1.5rem; }

h3 { font-size: 1.25rem; }

h4 { font-size: 1.125rem; }

h5 { font-size: 1rem; }

h6 { font-size: 0.8rem; }

a {
	font-weight: 500;
	text-decoration: none;
}

article a {
	text-decoration: underline;
}

a:link {
	color: var(--color-light-text);
}

a:visited {
	color: var(--color-dark-text);
}

a:hover,
a:active {
	color: var(--color-accent);
}

.wp-block-group.has-text-color *,
.wp-block-media-text.has-text-color * {
	color: inherit;
}

@media (max-width: 992px) {
	
	h1.has-background,
	h2.has-background,
	h3.has-background,
	h4.has-background,
	h5.has-background,
	h6.has-background {
		padding: var(--m-spacing);
	}
}

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

	h2 { font-size: 1.625rem; }

	h3 { font-size: 1.375rem; }

	h4 { font-size: 1.125rem; }

	h5 { font-size: 1rem; }
	
	h6 { font-size: 1rem; }
}

@media (max-width: 480px) {
	
	h1.has-background,
	h2.has-background,
	h3.has-background,
	h4.has-background,
	h5.has-background,
	h6.has-background {
		padding: var(--s-spacing);
	}
}

/******************************************* Text Selection Option Settings *******************************************/

/* Selected text has big drop shadow 
p::selection {
    color: #444444;
    background: #ffffff;
    text-shadow: 1px 0px 1px #cccccc, 0px 1px 1px #eeeeee, 2px 1px 1px #cccccc, 1px 2px 1px #eeeeee, 3px 2px 1px #cccccc, 2px 3px 1px #eeeeee, 4px 3px 1px #cccccc, 3px 4px 1px #eeeeee, 5px 4px 1px #cccccc, 4px 5px 1px #eeeeee, 6px 5px 1px #cccccc, 5px 6px 1px #eeeeee, 7px 6px 1px #cccccc;
}*/

/* Selected text has outline
p::selection {
    color: #fff;
    text-shadow: 
        -1px -1px 0 #000,  
        1px -1px 0 #000,
        -1px 1px 0 #000,
        1px 1px 0 #000;
} */

/* Selected text is blured
p::selection {
  color: transparent;
  text-shadow: 0 0 3px var(--color-dark-text);
} */

/******************************************* WordPress Alignment Settings *******************************************/

.alignright {
	float: right;
	max-width: 100%;
}

.alignleft {
	float: left;
	max-width: 100%;
}

.aligncenter {
    display: block;
    margin: 0 auto;
	max-width: 100%;
}

.alignwide {
	width: calc(100% + calc(var(--xl-spacing) * 2)); /* 100% width plus the left & right margin of the article padding */
    max-width: var(--wide-width); /* same as the max-width set in .row */
    margin-left: calc(var(--xl-spacing) * -1); /* minus the left margin on the article */
}

.alignfull {
    margin-left: calc( -100vw / 2 + 100% / 2 );
    margin-right: calc( -100vw / 2 + 100% / 2 );
    max-width: 100vw !important;
	width: 100vw !important;
}

img.alignleft {
	margin-top: var(--s-spacing);
	margin-right: var(--s-spacing);
	margin-bottom: var(--s-spacing);
}

img.center {
	margin-top: var(--s-spacing);
	margin-bottom: var(--s-spacing);
}

img.alignright {
	margin-top: var(--s-spacing);
	margin-left: var(--s-spacing);
	margin-bottom: var(--s-spacing);
}

@media (max-width: 1200px) {
	
	.alignwide {
	    width: calc(100% + calc(var(--l-spacing) * 2));
	    max-width: var(--wide-width);
	    margin-left: calc(var(--l-spacing) * -1);
	}
	
	.alignfull .alignfull {
		margin-left: 0;
		margin-right: 0;
		max-width: 100% !important;
	}
}

@media (max-width: 992px) {
	
	.alignwide {
	    width: calc(100% + calc(var(--s-spacing) * 2));
	    max-width: var(--wide-width);
	    margin-left: calc(var(--s-spacing) * -1);
	}
	
}

@media (max-width: 768px) {
	/*.wp-block-image .alignright, .wp-block-image .alignleft {
		display: block;
		float: none;
		margin: 0;
		max-width: 100%;
	} */
}

@media (max-width: 480px) {
	.alignwide {
		width: calc(100% + calc(calc(var(--s-spacing) / 2) * 2)); 
		margin-left: calc(calc(var(--s-spacing) / 2) * -1); 
	}

	.wp-block-image .alignright {
		display: block;
		margin-left: 0;
		float: none;
		width: 100%;
	}

	.wp-block-image .alignleft {
		display: block;
		margin-right: 0;
		float: none;
		width: 100%;
	}

	.wp-block-group__inner-container .alignwide {
		max-width: 100%;
		margin-left: 0;
	}
	
	.no-margin-bottom-mobile {
		margin-bottom: 0;
	}
}

.inherit-color p, .inherit-color a, .inherit-color li, .inherit-color li::before {
	color: inherit!important;
}

/****************************************** Image & Video Default Settings *******************************************/

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

.wp-block-image figure {
	margin-bottom: 1em!important;
}

.wp-block-image .aligncenter>figcaption {
	text-align: center;
}

video {
    -webkit-mask-image: -webkit-radial-gradient(white, black);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
	/*-webkit-appearance: none;    Try this if still don't work */
}

iframe {
	max-width: 100%;
	width: 100%;
}

figcaption {
	font-size: 0.8rem;
	font-family: var(--font-accent);
}

@media (max-width: 540px) {
	
	.wp-block-image figure {
		display: block;
	}
}

/********************************************* Blockquotes & Pullquotes **********************************************/

caption,
blockquote,
blockquote p {
	font-family: var(--font-accent);
}

blockquote {
	position: relative;
    border: none;
	max-width: var(--restricted-width);
    quotes: "\201C""\201D""\2018""\2019";
}

blockquote.is-style-default {
	margin: calc(var(--l-spacing) + var(--m-spacing)) auto;
}

blockquote.is-style-default:before,
blockquote.is-style-default:after {
    content: '';
	border: 5px solid var(--color-accent);
    width: calc(100% + calc(var(--m-spacing) * 2));
    position: absolute;
    left: calc(var(--m-spacing) * -1);
    height: var(--s-spacing);
}

blockquote.is-style-default:before {
	top: calc(var(--m-spacing) * -1);
	border-bottom: 0;
}

blockquote.is-style-default:after {
    border-top: 0;
    bottom: calc(var(--m-spacing) * -1);
}

.wp-block-quote p:before,
.wp-block-quote p:after,
.wp-block-pullquote blockquote:before,
.wp-block-pullquote blockquote:after {
    color: var(--color-accent);
    content: open-quote;
    font-size: 3.5em;
    line-height: 0.1em;
    margin-right: 0.25em;
    vertical-align: -0.4em;
}

.wp-block-quote p:after,
.wp-block-pullquote blockquote:after {
    content: close-quote;
    -margin-left: 0.25em;
    margin-right: 0;
}

blockquote cite {
	font-family: var(--font-primary);
	font-size: 0.8rem;
}

blockquote a,
blockquote cite {
    color: var(--color-accent) !important;
	text-decoration: none;
}

blockquote a:hover {
	text-decoration: underline;
}

.wp-block-quote.is-style-large cite {
	display: block;
}

.wp-block-quote,
.wp-block-quote.is-style-large {
	margin: var(--l-spacing) auto;
}

.wp-block-pullquote {
	position: relative;
	margin: var(--l-spacing) auto;
    padding: 0;
	max-width: var(--restricted-width);
}

.wp-block-pullquote blockquote p {
	display: block;
	font-size: 1.5rem;
}

.wp-block-pullquote:not(.is-style-solid-color) {
	border-top: 3px solid var(--color-dark-text);
	border-bottom: 3px solid var(--color-dark-text);
	padding: var(--xl-spacing) 0 var(--m-spacing);
}

.wp-block-pullquote:not(.is-style-solid-color) blockquote:before {
	content: open-quote;
    quotes: "\201C""\201D""\2018""\2019";
	font-size: 10rem;
    position: absolute;
    left: 0;
	width: 100%;
}

.wp-block-pullquote blockquote:after {
	position: absolute;
	opacity: 0;
}

.wp-block-pullquote.alignwide:not(.is-style-solid-color) blockquote {
	margin: 1em auto;
}

.wp-block-pullquote.alignfull:not(.is-style-solid-color) blockquote {
	max-width: var(--restricted-width);
	margin: 0 auto;
}

.wp-block-pullquote.alignright,
.wp-block-pullquote.alignleft {
	margin-top: var(--m-spacing);
	margin-bottom: var(--m-spacing);
	max-width: var(--restricted-width);
}

.wp-block-pullquote.alignright {
	margin-left: var(--m-spacing);
}

.wp-block-pullquote.alignleft {
	margin-right: var(--m-spacing);
}

.wp-block-pullquote.alignwide {
	margin: var(--l-spacing) calc(var(--xl-spacing) * -1);
	max-width: none;
}

.wp-block-pullquote.is-style-solid-color.alignwide blockquote {
	max-width: none;
}

.wp-block-pullquote.alignfull {
	margin: var(--l-spacing) calc( -100vw / 2 + 100% / 2 );
	max-width: none;
}

.wp-block-pullquote.is-style-solid-color.alignfull blockquote {
	margin: 0;
	padding: var(--xl-spacing);
	max-width: none;
}

.wp-block-pullquote.is-style-solid-color blockquote:before {
	font-size: 8em;
	color: var(--color-accent);
    position: absolute;
    left: var(--m-spacing);
    top: var(--xl-spacing);
}

.wp-block-pullquote.is-style-solid-color blockquote {
	position: relative;
	background-color: #eee;
	padding: var(--l-spacing);
	max-width: var(--restricted-width);
	margin: 0;
}

.wp-block-pullquote.is-style-solid-color blockquote p {
	padding-left: var(--xl-spacing);
	font-size: 1.3rem;
	text-align: left;
	margin-bottom: var(--s-spacing);
}

.wp-block-pullquote.is-style-solid-color blockquote p:last-child {
	margin-bottom: 0;
}

.wp-block-pullquote.is-style-solid-color cite,
.wp-block-pullquote.is-style-solid-color .wp-block-pullquote__citation {
	display: block;
    text-align: right;
}

@media (max-width: 1200px) {
	
	.wp-block-pullquote.alignwide {
		margin: var(--l-spacing) auto;
    	margin-left: calc(var(--l-spacing) * -1);
	}
	
}

@media (max-width: 992px) {
	
	.wp-block-pullquote.alignwide {
		margin: var(--l-spacing) auto;
    	margin-left: calc(var(--s-spacing) * -1);
	}
	
	.wp-block-pullquote.is-style-solid-color.alignfull blockquote {
		padding: var(--l-spacing);
	}
	
	blockquote.is-style-default {
		max-width: calc(100% - calc(var(--m-spacing) * 2));
	}
	
}

@media (max-width: 768px) {
	
	.wp-block-pullquote.is-style-solid-color blockquote,
	.wp-block-pullquote.is-style-solid-color.alignfull blockquote {
		padding: var(--s-spacing);
	}
	
	.wp-block-pullquote.is-style-solid-color blockquote p {
		padding-left: var(--l-spacing);
	}
	
	.wp-block-pullquote.is-style-solid-color blockquote:before {
		left: 0;
		top: calc(var(--l-spacing) + var(--s-spacing));
	}
	
}

@media (max-width: 480px) {
	
	blockquote {
		margin: 1em 0;
	}
	
	blockquote.is-style-default {
		margin: calc(var(--m-spacing) + var(--m-spacing)) auto;
	}
	
	.wp-block-quote, .wp-block-quote.is-style-large {
		margin: var(--m-spacing) auto;
	}
	
	.wp-block-pullquote:not(.is-style-solid-color) blockquote:before {
    	left: 0;
		transform: translate(-5%);
	}
	
	.wp-block-pullquote.alignwide,
	.wp-block-pullquote.alignfull  {
		margin: var(--m-spacing) auto;
    	margin-left: calc(calc(var(--s-spacing) / 2) * -1);
	}
	
	.wp-block-pullquote.alignwide:not(.is-style-solid-color) blockquote,
	.wp-block-pullquote.alignfull:not(.is-style-solid-color) blockquote {
		    padding: 0 var(--s-spacing);
	}
	
}

/********************************************** Verse Block Styles ***********************************************/
.wp-block-verse.has-background {
	padding: var(--s-spacing);
}

/********************************************** Block Separator Styles ***********************************************/

.wp-block-separator.has-primary-background-color {
	border-color: var(--color-primary) !important;
}

.wp-block-separator.has-secondary-background-color {
	border-color: var(--color-secondary) !important;
}

.wp-block-separator.has-accent-background-color {
	border-color: var(--color-accent) !important;
}

.wp-block-separator.has-dark-text-background-color {
	border-color: var(--color-dark-text) !important;
}

.wp-block-separator.has-light-text-background-color {
	border-color: var(--color-light-text) !important;
}

.wp-block-separator.has-primary-color {
	border-color: var(--color-primary) !important;
}

.wp-block-separator.has-secondary-color {
	border-color: var(--color-secondary) !important;
}

.wp-block-separator.has-accent-color {
	border-color: var(--color-accent) !important;
}

.wp-block-separator.has-dark-text-color {
	border-color: var(--color-dark-text) !important;
}

.wp-block-separator.has-light-text-color {
	border-color: var(--color-light-text) !important;
}

.wp-block-separator.has-background {
	border-color: inherit;
}

.wp-block-separator.has-primary-color.is-style-dots:before {
	color: var(--color-primary) !important;
}

.wp-block-separator.has-secondary-color.is-style-dots:before {
	color: var(--color-secondary) !important;
}

.wp-block-separator.has-accent-color.is-style-dots:before {
	color: var(--color-accent) !important;
}

.wp-block-separator.has-dark-text-color.is-style-dots:before {
	color: var(--color-dark-text) !important;
}

.wp-block-separator.has-light-text-color.is-style-dots:before {
	color: var(--color-light-text) !important;
}

hr.wp-block-separator.has-text-color.has-background[style*=background-color] {
	border-color: transparent;
}

hr.wp-block-separator.has-text-color.has-background[style*=color] {
	border-color: transparent;
}

.wp-block-separator {
	color: var(--color-accent);
	border-color: var(--color-accent);
	margin: var(--l-spacing) auto;
	border-style: solid;
}

.wp-block-separator:not(.is-style-dots):not(.is-style-wide),
.wp-block-separator.is-style-default {
	max-width: calc(var(--xl-spacing) * 2);
}

.wp-block-separator.is-style-wide {
	border-color: var(--color-accent);
}

.wp-block-separator.is-style-dots {
	margin: var(--m-spacing) auto;
}

.wp-block-separator.is-style-dots:before {
	font-size: 2.5rem;
}

.wp-block-separator.is-style-dots:not([style*=color]):before {
	color: var(--color-accent);
}



@media (max-width: 480px) {
	
	.wp-block-separator.is-style-dots:before {
		letter-spacing: 1em;
		padding-left: 1em;
	}
	
}

/****************************************** Gutenberg Color Palette Styles *******************************************/

:root .has-white-background-color { background-color: var(--color-white); }

.has-white-color { color: var(--color-white); }

:root .has-black-background-color { background-color: var(--color-black); }

.has-black-color { color: var(--color-black); }

:root .has-primary-background-color { background-color: var(--color-primary); }

.has-primary-color { color: var(--color-primary); }

:root .has-secondary-background-color { background-color: var(--color-secondary); }

.has-secondary-color { color: var(--color-secondary); }

:root .has-accent-background-color { background-color: var(--color-accent); }

.has-accent-color { color: var(--color-accent); }

:root .has-light-text-background-color { background-color: var(--color-light-text); }

.has-light-text-color { color: var(--color-light-text); }

:root .has-dark-text-background-color { background-color: var(--color-dark-text); }

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

/********************************************** Gutenberg Button Styles ***********************************************/

.wp-block-buttons,
.wp-block-buttons.aligncenter {
	margin: var(--l-spacing) auto;
}

.button:not(.read-more),
.wp-block-button__link,
.wp-block-button__link.add_to_cart_button,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit.disabled,
.woocommerce #respond input#submit:disabled,
.woocommerce #respond input#submit:disabled[disabled],
.woocommerce a.button.disabled,
.woocommerce a.button:disabled,
.woocommerce a.button:disabled[disabled],
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button.disabled,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled],
#add_payment_method .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce button.button.alt.disabled {
	display: inline-block;
	border: 2px solid white;
	border-radius: 0;
	background-color: var(--color-primary);
	color: white;
	font-family: var(--font-primary-heading);
	padding: calc(var(--s-spacing) / 2 ) var(--m-spacing);
	text-decoration: none;
	transition: none;
}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit.disabled,
.woocommerce #respond input#submit:disabled,
.woocommerce #respond input#submit:disabled[disabled],
.woocommerce a.button.disabled,
.woocommerce a.button:disabled,
.woocommerce a.button:disabled[disabled],
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button.disabled,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled],
.woocommerce div.product form.cart .button,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
	border-color: var(--color-primary);
}

#add_payment_method .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button {
	display: block;
	padding: 1em;
}

@media (max-width: 480px) {
	.button:not(.read-more),
	.wp-block-button__link {
		padding: 10px 15px;
	}
}

.button:not(.read-more):hover,
.wp-block-button__link:hover,
.wp-block-button__link.add_to_cart_button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit.disabled:hover,
.woocommerce #respond input#submit:disabled:hover,
.woocommerce #respond input#submit:disabled[disabled]:hover,
.woocommerce a.button.disabled:hover,
.woocommerce a.button:disabled:hover,
.woocommerce a.button:disabled[disabled]:hover,
.woocommerce button.button.disabled:hover,
.woocommerce button.button:disabled:hover,
.woocommerce button.button:disabled[disabled]:hover,
.woocommerce input.button.disabled:hover,
.woocommerce input.button:disabled:hover,
.woocommerce input.button:disabled[disabled]:hover,
#add_payment_method .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
	border: 2px solid white;
	background-color: var(--color-accent);
	color: white;
	text-decoration: none;
	transition: all .2s ease-in;
}

.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit.disabled:hover,
.woocommerce #respond input#submit:disabled:hover,
.woocommerce #respond input#submit:disabled[disabled]:hover,
.woocommerce a.button.disabled:hover,
.woocommerce a.button:disabled:hover,
.woocommerce a.button:disabled[disabled]:hover,
.woocommerce button.button.disabled:hover,
.woocommerce button.button:disabled:hover,
.woocommerce button.button:disabled[disabled]:hover,
.woocommerce input.button.disabled:hover,
.woocommerce input.button:disabled:hover,
.woocommerce input.button:disabled[disabled]:hover,
.woocommerce div.product form.cart .button:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
	border-color: var(--color-accent);
}

.is-style-outline .wp-block-button__link {
	border: 2px solid;
}

/** Button Black & White Color Combinations */
.wp-block-button__link.has-white-color.has-black-background-color,
.wp-block-button__link.has-black-color.has-white-background-color:hover {
	color: var(--color-white) !important;
	border-color: var(--color-white) !important;
	background-color: var(--color-black) !important;
}

.wp-block-button__link.has-black-color.has-white-background-color ,
.wp-block-button__link.has-white-color.has-black-background-color:hover {
	color: var(--color-black) !important;
	border-color: var(--color-black) !important;
	background-color: var(--color-white) !important;
}

/** Button Primary & White Color Combinations */
.wp-block-button__link.has-white-color.has-primary-background-color,
.wp-block-button__link.has-primary-color.has-white-background-color:hover {
	color: var(--color-white) !important;
	border-color: var(--color-white) !important;
	background-color: var(--color-primary) !important;
}

.wp-block-button__link.has-primary-color.has-white-background-color ,
.wp-block-button__link.has-white-color.has-primary-background-color:hover {
	color: var(--color-primary) !important;
	border-color: var(--color-primary) !important;
	background-color: var(--color-white) !important;
}

/** Button Secondary & White Color Combinations */
.wp-block-button__link.has-white-color.has-secondary-background-color,
.wp-block-button__link.has-secondary-color.has-white-background-color:hover {
	color: var(--color-white) !important;
	border-color: var(--color-white) !important;
	background-color: var(--color-secondary) !important;
}

.wp-block-button__link.has-secondary-color.has-white-background-color ,
.wp-block-button__link.has-white-color.has-secondary-background-color:hover {
	color: var(--color-secondary) !important;
	border-color: var(--color-secondary) !important;
	background-color: var(--color-white) !important;
}

/** Button Accent & White Color Combinations */
.wp-block-button__link.has-white-color.has-accent-background-color,
.wp-block-button__link.has-accent-color.has-white-background-color:hover {
	color: var(--color-white) !important;
	border-color: var(--color-white) !important;
	background-color: var(--color-accent) !important;
}

.wp-block-button__link.has-accent-color.has-white-background-color ,
.wp-block-button__link.has-white-color.has-accent-background-color:hover {
	color: var(--color-accent) !important;
	border-color: var(--color-accent) !important;
	background-color: var(--color-white) !important;
}

/** Button Light Text & White Color Combinations */
.wp-block-button__link.has-white-color.has-light-text-background-color,
.wp-block-button__link.has-light-text-color.has-white-background-color:hover {
	color: var(--color-white) !important;
	border-color: var(--color-white) !important;
	background-color: var(--color-light-text) !important;
}

.wp-block-button__link.has-light-text-color.has-white-background-color ,
.wp-block-button__link.has-white-color.has-light-text-background-color:hover {
	color: var(--color-light-text) !important;
	border-color: var(--color-light-text) !important;
	background-color: var(--color-white) !important;
}

/** Button Dark Text & White Color Combinations */
.wp-block-button__link.has-white-color.has-dark-text-background-color,
.wp-block-button__link.has-dark-text-color.has-white-background-color:hover {
	color: var(--color-white) !important;
	border-color: var(--color-white) !important;
	background-color: var(--color-dark-text) !important;
}

.wp-block-button__link.has-dark-text-color.has-white-background-color ,
.wp-block-button__link.has-white-color.has-dark-text-background-color:hover {
	color: var(--color-dark-text) !important;
	border-color: var(--color-dark-text) !important;
	background-color: var(--color-white) !important;
}

/** Button Primary & Black Color Combinations */
.wp-block-button__link.has-black-color.has-primary-background-color,
.wp-block-button__link.has-primary-color.has-black-background-color:hover {
	color: var(--color-black) !important;
	border-color: var(--color-black) !important;
	background-color: var(--color-primary) !important;
}

.wp-block-button__link.has-primary-color.has-black-background-color ,
.wp-block-button__link.has-black-color.has-primary-background-color:hover {
	color: var(--color-primary) !important;
	border-color: var(--color-primary) !important;
	background-color: var(--color-black) !important;
}

/** Button Secondary & Black Color Combinations */
.wp-block-button__link.has-black-color.has-secondary-background-color,
.wp-block-button__link.has-secondary-color.has-black-background-color:hover {
	color: var(--color-black) !important;
	border-color: var(--color-black) !important;
	background-color: var(--color-secondary) !important;
}

.wp-block-button__link.has-secondary-color.has-black-background-color ,
.wp-block-button__link.has-black-color.has-secondary-background-color:hover {
	color: var(--color-secondary) !important;
	border-color: var(--color-secondary) !important;
	background-color: var(--color-black) !important;
}

/** Button Accent & Black Color Combinations */
.wp-block-button__link.has-black-color.has-accent-background-color,
.wp-block-button__link.has-accent-color.has-black-background-color:hover {
	color: var(--color-black) !important;
	border-color: var(--color-black) !important;
	background-color: var(--color-accent) !important;
}

.wp-block-button__link.has-accent-color.has-black-background-color ,
.wp-block-button__link.has-black-color.has-accent-background-color:hover {
	color: var(--color-accent) !important;
	border-color: var(--color-accent) !important;
	background-color: var(--color-black) !important;
}

/** Button Light Text & Black Color Combinations */
.wp-block-button__link.has-black-color.has-light-text-background-color,
.wp-block-button__link.has-light-text-color.has-black-background-color:hover {
	color: var(--color-black) !important;
	border-color: var(--color-black) !important;
	background-color: var(--color-light-text) !important;
}

.wp-block-button__link.has-light-text-color.has-black-background-color ,
.wp-block-button__link.has-black-color.has-light-text-background-color:hover {
	color: var(--color-light-text) !important;
	border-color: var(--color-light-text) !important;
	background-color: var(--color-black) !important;
}

/** Button Dark Text & Black Color Combinations */
.wp-block-button__link.has-black-color.has-dark-text-background-color,
.wp-block-button__link.has-dark-text-color.has-black-background-color:hover {
	color: var(--color-black) !important;
	border-color: var(--color-black) !important;
	background-color: var(--color-dark-text) !important;
}

.wp-block-button__link.has-dark-text-color.has-black-background-color ,
.wp-block-button__link.has-black-color.has-dark-text-background-color:hover {
	color: var(--color-dark-text) !important;
	border-color: var(--color-dark-text) !important;
	background-color: var(--color-black) !important;
}

/** Button Primary & Secondary Color Combinations */
.wp-block-button__link.has-secondary-color.has-primary-background-color,
.wp-block-button__link.has-primary-color.has-secondary-background-color:hover {
	color: var(--color-secondary) !important;
	border-color: var(--color-secondary) !important;
	background-color: var(--color-primary) !important;
}

.wp-block-button__link.has-primary-color.has-secondary-background-color ,
.wp-block-button__link.has-secondary-color.has-primary-background-color:hover {
	color: var(--color-primary) !important;
	border-color: var(--color-primary) !important;
	background-color: var(--color-secondary) !important;
}

/** Button Primary & Accent Color Combinations */
.wp-block-button__link.has-accent-color.has-primary-background-color,
.wp-block-button__link.has-primary-color.has-accent-background-color:hover {
	color: var(--color-accent) !important;
	border-color: var(--color-accent) !important;
	background-color: var(--color-primary) !important;
}

.wp-block-button__link.has-primary-color.has-accent-background-color ,
.wp-block-button__link.has-accent-color.has-primary-background-color:hover {
	color: var(--color-primary) !important;
	border-color: var(--color-primary) !important;
	background-color: var(--color-accent) !important;
}

/** Button Primary & Light Text Color Combinations */
.wp-block-button__link.has-light-text-color.has-primary-background-color,
.wp-block-button__link.has-primary-color.has-light-text-background-color:hover {
	color: var(--color-light-text) !important;
	border-color: var(--color-light-text) !important;
	background-color: var(--color-primary) !important;
}

.wp-block-button__link.has-primary-color.has-light-text-background-color ,
.wp-block-button__link.has-light-text-color.has-primary-background-color:hover {
	color: var(--color-primary) !important;
	border-color: var(--color-primary) !important;
	background-color: var(--color-light-text) !important;
}

/** Button Primary & Dark Text Color Combinations */
.wp-block-button__link.has-dark-text-color.has-primary-background-color,
.wp-block-button__link.has-primary-color.has-dark-text-background-color:hover {
	color: var(--color-dark-text) !important;
	border-color: var(--color-dark-text) !important;
	background-color: var(--color-primary) !important;
}

.wp-block-button__link.has-primary-color.has-dark-text-background-color ,
.wp-block-button__link.has-dark-text-color.has-primary-background-color:hover {
	color: var(--color-primary) !important;
	border-color: var(--color-primary) !important;
	background-color: var(--color-dark-text) !important;
}

/** Button Secondary & Accent Color Combinations */
.wp-block-button__link.has-accent-color.has-secondary-background-color,
.wp-block-button__link.has-secondary-color.has-accent-background-color:hover {
	color: var(--color-accent) !important;
	border-color: var(--color-accent) !important;
	background-color: var(--color-secondary) !important;
}

.wp-block-button__link.has-secondary-color.has-accent-background-color ,
.wp-block-button__link.has-accent-color.has-secondary-background-color:hover {
	color: var(--color-secondary) !important;
	border-color: var(--color-secondary) !important;
	background-color: var(--color-accent) !important;
}

/** Button Secondary & Light Text Color Combinations */
.wp-block-button__link.has-light-text-color.has-secondary-background-color,
.wp-block-button__link.has-secondary-color.has-light-text-background-color:hover {
	color: var(--color-light-text) !important;
	border-color: var(--color-light-text) !important;
	background-color: var(--color-secondary) !important;
}

.wp-block-button__link.has-secondary-color.has-light-text-background-color ,
.wp-block-button__link.has-light-text-color.has-secondary-background-color:hover {
	color: var(--color-secondary) !important;
	border-color: var(--color-secondary) !important;
	background-color: var(--color-light-text) !important;
}

/** Button Secondary & Dark Text Color Combinations */
.wp-block-button__link.has-dark-text-color.has-secondary-background-color,
.wp-block-button__link.has-secondary-color.has-dark-text-background-color:hover {
	color: var(--color-dark-text) !important;
	border-color: var(--color-dark-text) !important;
	background-color: var(--color-secondary) !important;
}

.wp-block-button__link.has-secondary-color.has-dark-text-background-color ,
.wp-block-button__link.has-dark-text-color.has-secondary-background-color:hover {
	color: var(--color-secondary) !important;
	border-color: var(--color-secondary) !important;
	background-color: var(--color-dark-text) !important;
}

/** Button Accent & Light Text Color Combinations */
.wp-block-button__link.has-light-text-color.has-accent-background-color,
.wp-block-button__link.has-accent-color.has-light-text-background-color:hover {
	color: var(--color-light-text) !important;
	border-color: var(--color-light-text) !important;
	background-color: var(--color-accent) !important;
}

.wp-block-button__link.has-accent-color.has-light-text-background-color ,
.wp-block-button__link.has-light-text-color.has-accent-background-color:hover {
	color: var(--color-accent) !important;
	border-color: var(--color-accent) !important;
	background-color: var(--color-light-text) !important;
}

/** Button Accent & Dark Text Color Combinations */
.wp-block-button__link.has-dark-text-color.has-accent-background-color,
.wp-block-button__link.has-accent-color.has-dark-text-background-color:hover {
	color: var(--color-dark-text) !important;
	border-color: var(--color-dark-text) !important;
	background-color: var(--color-accent) !important;
}

.wp-block-button__link.has-accent-color.has-dark-text-background-color ,
.wp-block-button__link.has-dark-text-color.has-accent-background-color:hover {
	color: var(--color-accent) !important;
	border-color: var(--color-accent) !important;
	background-color: var(--color-dark-text) !important;
}

/** Button Light Text & Dark Text Color Combinations */
.wp-block-button__link.has-dark-text-color.has-light-text-background-color,
.wp-block-button__link.has-light-text-color.has-dark-text-background-color:hover {
	color: var(--color-dark-text) !important;
	border-color: var(--color-dark-text) !important;
	background-color: var(--color-light-text) !important;
}

.wp-block-button__link.has-light-text-color.has-dark-text-background-color ,
.wp-block-button__link.has-dark-text-color.has-light-text-background-color:hover {
	color: var(--color-light-text) !important;
	border-color: var(--color-light-text) !important;
	background-color: var(--color-dark-text) !important;
}

/** Black Border with is-style-fill class */
.is-style-fill .wp-block-button__link.has-white-color.has-black-background-color,
.is-style-fill .wp-block-button__link.has-black-color.has-white-background-color:hover,
.is-style-fill .wp-block-button__link.has-primary-color.has-black-background-color,
.is-style-fill .wp-block-button__link.has-black-color.has-primary-background-color:hover,
.is-style-fill .wp-block-button__link.has-secondary-color.has-black-background-color,
.is-style-fill .wp-block-button__link.has-black-color.has-secondary-background-color:hover,
.is-style-fill .wp-block-button__link.has-accent-color.has-black-background-color,
.is-style-fill .wp-block-button__link.has-black-color.has-accent-background-color:hover,
.is-style-fill .wp-block-button__link.has-light-text-color.has-black-background-color,
.is-style-fill .wp-block-button__link.has-black-color.has-light-text-background-color:hover,
.is-style-fill .wp-block-button__link.has-dark-text-color.has-black-background-color,
.is-style-fill .wp-block-button__link.has-black-color.has-dark-text-background-color:hover {
	border-color: var(--color-black) !important;
}

/** White Border with is-style-fill class */
.is-style-fill .wp-block-button__link.has-black-color.has-white-background-color,
.is-style-fill .wp-block-button__link.has-white-color.has-black-background-color:hover,
.is-style-fill .wp-block-button__link.has-primary-color.has-white-background-color,
.is-style-fill .wp-block-button__link.has-white-color.has-primary-background-color:hover,
.is-style-fill .wp-block-button__link.has-secondary-color.has-white-background-color,
.is-style-fill .wp-block-button__link.has-white-color.has-secondary-background-color:hover,
.is-style-fill .wp-block-button__link.has-accent-color.has-white-background-color,
.is-style-fill .wp-block-button__link.has-white-color.has-accent-background-color:hover,
.is-style-fill .wp-block-button__link.has-light-text-color.has-white-background-color,
.is-style-fill .wp-block-button__link.has-white-color.has-light-text-background-color:hover,
.is-style-fill .wp-block-button__link.has-dark-text-color.has-white-background-color,
.is-style-fill .wp-block-button__link.has-white-color.has-dark-text-background-color:hover {
	border-color: var(--color-white) !important;
}

/** Primary Border with is-style-fill class */
.is-style-fill .wp-block-button__link.has-white-color.has-primary-background-color,
.is-style-fill .wp-block-button__link.has-primary-color.has-white-background-color:hover,
.is-style-fill .wp-block-button__link.has-black-color.has-primary-background-color,
.is-style-fill .wp-block-button__link.has-primary-color.has-black-background-color:hover,
.is-style-fill .wp-block-button__link.has-secondary-color.has-primary-background-color,
.is-style-fill .wp-block-button__link.has-primary-color.has-secondary-background-color:hover,
.is-style-fill .wp-block-button__link.has-accent-color.has-primary-background-color,
.is-style-fill .wp-block-button__link.has-primary-color.has-accent-background-color:hover,
.is-style-fill .wp-block-button__link.has-light-text-color.has-primary-background-color,
.is-style-fill .wp-block-button__link.has-primary-color.has-light-text-background-color:hover,
.is-style-fill .wp-block-button__link.has-dark-text-color.has-primary-background-color,
.is-style-fill .wp-block-button__link.has-primary-color.has-dark-text-background-color:hover {
	border-color: var(--color-primary) !important;
}

/** Secondary Border with is-style-fill class */
.is-style-fill .wp-block-button__link.has-white-color.has-secondary-background-color,
.is-style-fill .wp-block-button__link.has-secondary-color.has-white-background-color:hover,
.is-style-fill .wp-block-button__link.has-black-color.has-secondary-background-color,
.is-style-fill .wp-block-button__link.has-secondary-color.has-black-background-color:hover,
.is-style-fill .wp-block-button__link.has-primary-color.has-secondary-background-color,
.is-style-fill .wp-block-button__link.has-secondary-color.has-primary-background-color:hover,
.is-style-fill .wp-block-button__link.has-accent-color.has-secondary-background-color,
.is-style-fill .wp-block-button__link.has-secondary-color.has-accent-background-color:hover,
.is-style-fill .wp-block-button__link.has-light-text-color.has-secondary-background-color,
.is-style-fill .wp-block-button__link.has-secondary-color.has-light-text-background-color:hover,
.is-style-fill .wp-block-button__link.has-dark-text-color.has-secondary-background-color,
.is-style-fill .wp-block-button__link.has-secondary-color.has-dark-text-background-color:hover {
	border-color: var(--color-secondary) !important;
}

/** Accent Border with is-style-fill class */
.is-style-fill .wp-block-button__link.has-white-color.has-accent-background-color,
.is-style-fill .wp-block-button__link.has-accent-color.has-white-background-color:hover,
.is-style-fill .wp-block-button__link.has-black-color.has-accent-background-color,
.is-style-fill .wp-block-button__link.has-accent-color.has-black-background-color:hover,
.is-style-fill .wp-block-button__link.has-primary-color.has-accent-background-color,
.is-style-fill .wp-block-button__link.has-accent-color.has-primary-background-color:hover,
.is-style-fill .wp-block-button__link.has-secondary-color.has-accent-background-color,
.is-style-fill .wp-block-button__link.has-accent-color.has-secondary-background-color:hover,
.is-style-fill .wp-block-button__link.has-light-text-color.has-accent-background-color,
.is-style-fill .wp-block-button__link.has-accent-color.has-light-text-background-color:hover,
.is-style-fill .wp-block-button__link.has-dark-text-color.has-accent-background-color,
.is-style-fill .wp-block-button__link.has-accent-color.has-dark-text-background-color:hover {
	border-color: var(--color-accent) !important;
}

/** Light Text Border with is-style-fill class */
.is-style-fill .wp-block-button__link.has-white-color.has-light-text-background-color,
.is-style-fill .wp-block-button__link.has-light-text-color.has-white-background-color:hover,
.is-style-fill .wp-block-button__link.has-black-color.has-light-text-background-color,
.is-style-fill .wp-block-button__link.has-light-text-color.has-black-background-color:hover,
.is-style-fill .wp-block-button__link.has-primary-color.has-light-text-background-color,
.is-style-fill .wp-block-button__link.has-light-text-color.has-primary-background-color:hover,
.is-style-fill .wp-block-button__link.has-secondary-color.has-light-text-background-color,
.is-style-fill .wp-block-button__link.has-light-text-color.has-secondary-background-color:hover,
.is-style-fill .wp-block-button__link.has-accent-color.has-light-text-background-color,
.is-style-fill .wp-block-button__link.has-light-text-color.has-accent-background-color:hover,
.is-style-fill .wp-block-button__link.has-dark-text-color.has-light-text-background-color,
.is-style-fill .wp-block-button__link.has-light-text-color.has-dark-text-background-color:hover {
	border-color: var(--color-light-text) !important;
}

/** Dark Text Border with is-style-fill class */
.is-style-fill .wp-block-button__link.has-white-color.has-dark-text-background-color,
.is-style-fill .wp-block-button__link.has-dark-text-color.has-white-background-color:hover,
.is-style-fill .wp-block-button__link.has-black-color.has-dark-text-background-color,
.is-style-fill .wp-block-button__link.has-dark-text-color.has-black-background-color:hover,
.is-style-fill .wp-block-button__link.has-primary-color.has-dark-text-background-color,
.is-style-fill .wp-block-button__link.has-dark-text-color.has-primary-background-color:hover,
.is-style-fill .wp-block-button__link.has-secondary-color.has-dark-text-background-color,
.is-style-fill .wp-block-button__link.has-dark-text-color.has-secondary-background-color:hover,
.is-style-fill .wp-block-button__link.has-accent-color.has-dark-text-background-color,
.is-style-fill .wp-block-button__link.has-dark-text-color.has-accent-background-color:hover,
.is-style-fill .wp-block-button__link.has-light-text-color.has-dark-text-background-color,
.is-style-fill .wp-block-button__link.has-dark-text-color.has-light-text-background-color:hover {
	border-color: var(--color-dark-text) !important;
}

@media (max-width: 480px) {
	
	.wp-block-buttons,
	.wp-block-buttons.aligncenter {
		margin: var(--s-spacing) auto;
	}
}

/********************************************* Popup and Overlay **********************************************/

.overlay,
.custom-message {
	display: none;
}

.no-scroll .overlay,
.no-scroll .custom-message {
	display: block;
}

.overlay {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background: rgba(0,0,0,0.8);
	z-index: 1000;
	cursor: pointer;
}

.pop-up {
	position: fixed;
	width: 100%;
	max-width: 500px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	padding: var(--l-spacing);
	z-index: 10000;
}

.custom-message {
	background: var(--color-primary);
	box-shadow: 0px 0px 10px 8px var(--color-secondary);
}

.custom-message h1,
.custom-message h2,
.custom-message h3,
.custom-message h4,
.custom-message h5,
.custom-message h6,
.custom-message p,
.custom-message li,
.custom-message a {
	color: white;
}

.custom-message :last-child {
	margin-bottom: 0;
}

.close-x {
	position: absolute;
	right: var(--s-spacing);
	top: var(--s-spacing);
}

@media (max-width: 768px) {
	
	.custom-message {
		max-width: 90%;
		padding: var(--l-spacing) 10px var(--m-spacing);
	}
	
}

/********************************************* Primary Content Styling **********************************************/

html {
	font-size: var(--fontsize-base);
	font-family: var(--font-primary);
	line-height: 1.6rem;
	color: var(--color-dark-text);
	overflow-x: hidden;
}

body.improvise {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	margin: 0;
	min-height: 100vh;
	overflow-x: hidden;
	font-size: var(--fontsize-base);
}

body.menu-open {
	overflow: hidden;
}

.document-header {
	position: fixed;
	width: 100%;
}

body:not(.has-top-bar) .document-header,
body.has-top-bar .document-header .main-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: var(--xl-spacing);
	max-height: var(--xl-spacing);
	padding: 0 var(--l-spacing);
    background-color:  var(--color-header-bg);
	border-bottom: 1px solid var(--color-header-text);
	z-index: 99999;
	transition: all 0.5s ease;
}

body.has-top-bar .document-header {
	display: flex;
	flex-direction: column;
	z-index: 99999;
}

.document-header * {
	transition: all 0.5s ease;
}

.fixed .document-header {
	position: fixed;
	min-height: var(--l-spacing) !important;
	max-height: var(--l-spacing) !important;
	top: 0;
}

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

.document-header div.social {
    width: 25%;
    max-width: 50%;
}

main {
    position: relative;
	transition: top 0.5s ease;
	padding-top: var(--xl-spacing);
	transition: padding 0.5s ease;
}

.has-top-bar main {
	padding-top: calc( var(--xl-spacing) + var(--m-spacing) );
}

.fixed main {
	padding-top: var(--l-spacing);
}

.has-top-bar.fixed main {
	padding-top: calc( var(--l-spacing) + var(--m-spacing) );
}

article {
    position: relative;
   	padding: 0 var(--xl-spacing) var(--xl-spacing);
}

.page-title {
	padding-top: var(--xl-spacing);
}

.row  {
	margin: 0 auto;
	max-width: var(--wide-width);
}

@media (max-width: 1200px) {
	
	article {
		padding: 0 var(--l-spacing) var(--l-spacing);
	}
	
}

@media (max-width: 992px) {
	
	article {
		padding: 0 var(--s-spacing) var(--l-spacing);
	}
	
	.page-title {
		padding-top: var(--l-spacing);
	}
	
}

@media (max-width: 782px) {
	
	.admin-bar.fixed .document-header {
		top: 46px;
	}
}

@media (max-width: 600px) {
	
	#wpadminbar {
		position: fixed;
	}
}

@media (max-width: 480px) {
	
	.row {
		max-width: 100%;
	}

	article {
		padding: 0 calc(var(--s-spacing) / 2);
	}

	article ul {
		padding-left: var(--s-spacing);
	}
	
}

/******************************************** Site Logo Styling ********************************************/

.site-info {
	height: var(--xl-spacing);
	max-height: 100px;
    display: flex;
    flex-direction: column;
    justify-content: center;
	color: var(--color-header-text);
	transition: max-height 0.5s ease;
}

.fixed .site-info {
	max-height: 50px;
	flex-direction: row;
    justify-content: space-between;
	align-items: center;
}

.site-info a,
.site-info p {
	color: var(--color-header-text);
	line-height: calc(var(--l-spacing) / 2);
	font-size: 1.125rem;
	margin-bottom: 0;
	text-decoration: none;
}

.site-info p {
	font-size: 0.9rem;
	max-height: var(--xl-spacing);
}

.fixed .site-info p {
	display: none;
}

.document-header .logo {
    max-width: 250px;
	padding: 5px 0;
}

.document-header .logo a {
	display: block;
	position: relative;
	z-index: 999;
}

.document-header .logo img {
	max-height: calc(var(--xl-spacing) - 10px);
	width: auto;
	height: 100%;
	margin-bottom: 0;
	transition: all 0.5s ease;
	vertical-align: middle;
}

.fixed .document-header .logo img {
    max-height: calc(var(--l-spacing) - 10px);
}

@media (max-width: 1200px) {
	body:not(.has-top-bar) .document-header,
	body.has-top-bar .document-header .main-bar{
		flex-wrap: wrap;
		padding: 0 var(--l-spacing);
	}
}

@media (max-width: 992px) {
	body:not(.has-top-bar) .document-header,
	body.has-top-bar .document-header .main-bar{
		padding: 0 var(--s-spacing);
	}
}

@media (max-width: 480px) {
	body:not(.has-top-bar) .document-header,
	body.has-top-bar .document-header .main-bar{
		padding: 0 calc(var(--s-spacing) / 2);
	}
}

/******************************************** Primary Navigation Styling ********************************************/
.primary-nav,
.top-bar {
	align-items: center;
	display: flex;
    position: relative;
}

.primary-nav .navbar-nav,
.top-bar .top-nav {
	display: flex;
	justify-content: space-between;
	margin: 0;
}

.primary-nav div.navbar-header {
    display: none;
}

.primary-nav ul,
.top-bar .top-nav {
    list-style-type: none;
}

.primary-nav .dropdown.inactive {
	background-color: transparent;
}

.primary-nav ul li,
.top-bar .top-nav li {
	line-height: normal;
	position: relative;
	margin-bottom: 0;
}

.primary-nav.tab-underline ul li {
	padding: 0 15px;
}

.primary-nav ul li a {
	color: var(--color-header-text);
	font-size: 1rem;
	font-family: var(--font-primary-nav);
	font-weight: 600;
	text-decoration: none;
}

.primary-nav:not(.tab-underline) ul li a,
.top-bar .top-nav li a {
	display: block;
	padding: 0 15px;
	line-height: calc(var(--xl-spacing) - 1px);
	max-height: calc(var(--xl-spacing) - 1px);
}

.fixed .primary-nav:not(.tab-underline) ul li a {
	line-height: calc(var(--l-spacing) - 1px);
	max-height: calc(var(--l-spacing) - 1px);
}

.primary-nav .dropdown.inactive a {
	background-color: transparent;
}

.primary-nav.tab-underline ul li:not(.touch-start):hover a,
.primary-nav.tab-underline ul li.current-menu-item a {
    border-bottom: 2px solid var(--color-header-text);
}

.primary-nav.tab-underline ul li.current-menu-item a[href*='#'] {
    border-bottom: none;
}

.primary-nav.tab-hover ul li:not(.touch-start):hover a,
.primary-nav.tab-hover ul li.current-menu-item a {
	color: var(--color-header-hover);
}

.primary-nav.tab-hover ul li.current-menu-item a[href*='#'] {
	color: inherit;
}

.primary-nav.tab-button ul li:not(.touch-start):hover a,
.primary-nav.tab-button ul li.current-menu-item a {
	color: var(--color-header-bg);
	background-color: var(--color-header-text);
}

.primary-nav .dropdown .caret,
.primary-nav .dropdown.inactive .caret {
	margin-left: 5px;
    transform: rotate(90deg);
    display: inline-block;
	font-size: 0.8rem;
	transition: transform 0.25s linear;
}

.primary-nav.tab-underline .dropdown .caret,
.primary-nav.tab-underline .dropdown.inactive .caret {
	vertical-align: text-bottom;
}

.primary-nav ul li:not(.touch-start):hover .caret,
.primary-nav .dropdown.active .caret{
	transform: rotate(270deg);
	margin-right: 3px;
	margin-left: 2px;
}

.primary-nav .dropdown .dropdown-menu {
	display: flex;
	width: 300px;
	width: max-content;
	opacity: 0;
	visibility: hidden;
	overflow: hidden;
	flex-direction: column;
	justify-content: center;
	position: absolute;
	left: 0;
	right: auto;
	z-index: 100;
	padding: 0;
	background-color: transparent;
	z-index: -1;
	transition: all 0.25s linear;
	margin-left: -2px;
	border: 2px solid rgba(255,255,255,0.1);
	border-top: 0;
}

.primary-nav.tab-underline .dropdown .dropdown-menu {
	padding-top: 37px;
}

.fixed .primary-nav.tab-underline .dropdown .dropdown-menu {
	padding: 11px 0 0;
}

.primary-nav ul li:nth-last-child(-n+2) .dropdown-menu {
    right: 0;
	left: auto;
	text-align: right;
}

.primary-nav ul li:not(.touch-start):hover .dropdown-menu,
.primary-nav .dropdown.active .dropdown-menu {
	visibility: visible;
	opacity: 1;
	z-index: 10;
}

.primary-nav .dropdown-menu li {
	background-color: var(--color-header-text);
}

.primary-nav.tab-underline .dropdown-menu li {
	padding: 10px 15px;
}

.primary-nav.tab-underline li.dropdown .dropdown-menu li:last-child {
	padding-bottom: var(--s-spacing);
}

.primary-nav .dropdown-menu li a {
	position: relative;
    z-index: 99;
}

.primary-nav:not(.tab-underline) .dropdown:not(.touch-start) .dropdown-menu li a {
	line-height: var(--l-spacing);
	background-color: var(--color-header-dropdown);
}

.primary-nav.tab-button:not(.tab-underline) .dropdown:not(.touch-start) .dropdown-menu li a  {
	color: var(--color-header-dropdown-text);
	background-color: var(--color-header-dropdown);
}

.primary-nav .dropdown-menu li a {
	color: var(--color-header-bg);
}

.primary-nav.tab-hover .dropdown:not(.touch-start) .dropdown-menu li a {
	color: var(--color-header-text);
}

.primary-nav.tab-underline .dropdown-menu li.current-menu-item a {
	border-bottom: 2px solid var(--color-header-bg);
}

.primary-nav.tab-underline :not(.touch-start) .dropdown-menu li:hover a {
	border-color: var(--color-header-bg);
}

.primary-nav.tab-hover :not(.touch-start) .dropdown-menu li:hover a,
.primary-nav.tab-hover .dropdown:not(.touch-start) .dropdown-menu li.current-menu-item a {
	color: var(--color-header-hover);
}

.primary-nav.tab-button:not(.tab-underline) ul li:not(.touch-start) .dropdown-menu li:hover a,
.primary-nav.tab-button:not(.tab-underline) .dropdown:not(.touch-start) .dropdown-menu li.current-menu-item a {
	color: var(--color-header-dropdown);
	background-color: var(--color-header-dropdown-text);
}

.primary-nav .dropdown-menu .dropdown-submenu .caret,
.primary-nav .dropdown-menu ul.dropdown-submenu {
	display: none;
}

@media (max-width: 1200px) {
	
	.primary-nav {
		position: absolute;
		top: var(--xl-spacing);
		left: 0;
		width: 100%;
		height: auto;
		max-height: 0;
		background-color: var(--color-header-bg);
		overflow: hidden;
	    z-index: 9;
		transition: all 0.25s linear;
	}
	
	.fixed .primary-nav {
		top: var(--l-spacing);
	}
	
	.menu-open .primary-nav {
		overflow: visible;
		height: var(--l-spacing);
		max-height: var(--l-spacing);
	}

	.navbar-collapse .navbar-nav {
		justify-content: space-around;
		align-items: center;
		height: 100%;
		width: 100%;
		padding: 0;
		border-bottom: 1px solid var(--color-header-text);
	}
	
	.primary-nav ul li a {
		color: var(--color-header-text);
	}
	
	.primary-nav:not(.tab-underline) ul li a {
		height: auto;
		max-height: 0;
		line-height: calc(var(--l-spacing) - 1px);
		overflow: hidden;
		transition: max-height 0.25s linear;
	}
	
	.menu-open .primary-nav:not(.tab-underline) ul li a {
		max-height: calc(var(--l-spacing) - 1px);
		height: calc(var(--l-spacing) - 1px);
	}
	
	.primary-nav ul li:not(.touch-start):hover a,
	.primary-nav ul li.current-menu-item a {
		border-color: var(--color-header-text);
	}
	
	.menu-open .primary-nav.tab-underline .dropdown .dropdown-menu {
		padding: 12px 0 0;
	}
	
	.menu-open .primary-nav.tab-underline .dropdown.active .dropdown-menu,
	.menu-open .primary-nav.tab-underline .dropdown:not(.touch-start):hover .dropdown-menu {
		border-bottom: 1px solid var(--color-header-bg);
	}
	
	.primary-nav ul li:not(.touch-start):hover .dropdown-menu li a {
		border-color: var(--color-header-text);
	}
	
	.primary-nav ul li:not(.touch-start) .dropdown-menu li:hover a,
	.primary-nav ul li .dropdown-menu li.current-menu-item a {
		border-color: var(--color-header-bg);
	}
	
	.primary-nav.tab-underline ul li:not(.touch-start):hover .dropdown-menu li,
	.primary-nav.tab-underline .dropdown.active .dropdown-menu li {
		border-left: 1px solid var(--color-header-bg);
		border-right: 1px solid var(--color-header-bg);
	}
}

@media (max-width: 850px) { 
	
	.primary-nav {
		border-bottom: 0;;
		transition: max-height 0.25s linear;
		background-color: none;
	}
	
	.menu-open .primary-nav {
		height: auto;
		max-height: 100vh;
		overflow: auto;
	}
	
	.navbar-collapse .navbar-nav {
		flex-direction: column;
		align-items: normal;
		background-color: var(--color-header-bg);
		border-bottom: 0;
	}
	
	.primary-nav ul li,
	.primary-nav.tab-underline ul li {
		padding: 0;
	}
	
	.primary-nav ul.navbar-nav>li {
		border-bottom: 1px solid var(--color-header-text);
		border-top: 1px solid transparent;
	}
	
	.primary-nav ul.navbar-nav>li:hover {
		border-top: 1px solid var(--color-header-bg);
	}
	
	.primary-nav ul.navbar-nav>li a {
		line-height: 45px;
	}
	
	.primary-nav ul li a {
		display: block;
		width: 100%;
		padding: 0 0 0 20px;
		border: 0 !important;
	}
	
	.menu-open .primary-nav:not(.tab-underline) ul li a {
		height: auto;
	}
	
	.primary-nav:not(.tab-button) li:not(.touch-start) a:hover {
		font-weight: bold !important;
	}
	
	/* Extra space above the caret block to separate from no-border
	.primary-nav .dropdown > a,
	.primary-nav:not(.tab-underline) ul li a {
		padding-top: 1px;
	} */
	
	/* On Mobile menu do not hover drop down menu item
	.primary-nav.tab-button ul li.dropdown:not(.touch-start):hover>a {
		color: var(--color-header-text);
    	background-color: var(--color-header-bg);
	}  */
	
	.primary-nav .dropdown .dropdown-toggle {
		display: flex;
		justify-content: space-between;
		padding-right: 0;
	}
	
	.primary-nav .dropdown .dropdown-menu {
		position: relative;
		width: 100%;
		height: auto;
		max-height: 0;
		opacity: 1;
    	box-shadow: none;
		margin-left: 0;
    	text-align: left;
		transition: all 0.25s linear;
	}
	
	.primary-nav.tab-underline .dropdown .dropdown-menu,
	.menu-open .primary-nav.tab-underline .dropdown .dropdown-menu,
	.fixed .primary-nav.tab-underline .dropdown .dropdown-menu {
		padding: 0;	
	}
	
	.menu-open .primary-nav .dropdown.active .dropdown-menu {
		border-bottom: 0;
		border-top-color: var(--color-header-bg);
	}
	
	.primary-nav .dropdown.active .dropdown-menu, 
	.primary-nav ul li:not(.touch-start):hover .dropdown-menu {
    	padding: 0;
		height: auto;
		max-height: 100vh;
		border-bottom: 0;
		border-top: 1px solid var(--color-header-bg);
	}
	
	.primary-nav ul li:nth-last-child(-n+2) .dropdown-menu {
		text-align: left;
	}
	
	.primary-nav .navbar-nav .dropdown .dropdown-menu li {
		border-bottom: 1px solid var(--color-header-bg);
		padding: 0 0 0 20px;
	}
	
	.primary-nav:not(.tab-underline) .navbar-nav .dropdown .dropdown-menu li  {
		background-color: var(--color-header-hover);
	}
	
	.primary-nav.tab-underline ul li:not(.touch-start):hover .dropdown-menu li,
	.primary-nav.tab-underline .dropdown.active .dropdown-menu li {
		border-left: 0;
		border-right: 0;
    	width: 100%;
		padding: 0 0 0 20px;
	}
	
	.primary-nav.tab-underline li.dropdown .dropdown-menu li:last-child,
	.primary-nav.tab-underline .dropdown.active .dropdown-menu li:last-child,
	.primary-nav.tab-underline li:not(.touch-start):hover .dropdown-menu li:last-child,
	.primary-nav.tab-underline .dropdown.active .dropdown-menu li:last-child {
		padding-bottom: 0;
		border-bottom: 0;
	}
	
	.primary-nav.tab-button :not(.touch-start) .dropdown-menu li:hover,
	.primary-nav.tab-button .dropdown-menu li.current-menu-item {
	    background-color: var(--color-header-text);
	}
	
	.primary-nav .dropdown .dropdown-menu li a {
		padding: 0 0 0 20px;
	}
	
	.primary-nav.tab-button :not(.touch-start) .dropdown-menu li:hover a,
	.primary-nav.tab-button .dropdown-menu li.current-menu-item a {
	    background-color: inherit;
	}
	
	.primary-nav .dropdown .caret {
		height: 45px;
    	width: 45px;
		margin: 0;
    	text-align: center;
    	position: relative;
		background: var(--color-header-text);
    	color: var(--color-header-bg);
    	font-size: 20px;
		transition: none !important;
	}
	
	.primary-nav ul li:not(.touch-start):hover .caret,
	.primary-nav .dropdown.active .caret {
		margin: 0;
	}
	
	.primary-nav .dropdown .caret,
	.primary-nav .dropdown.inactive .caret {
		margin-left: 0;
	}
	
}

/****************************************** Transparent Nav Styling ******************************************/

.has-transparent-nav:not(.fixed) .document-header,
.has-transparent-nav:not(.fixed) .document-header .main-bar {
	background-color: transparent !important;
}

.has-transparent-nav .document-header,
.has-transparent-nav .document-header .main-bar {
	border-bottom: 0 !important;
}

.has-transparent-nav main {
	padding-top: 0;
}

.has-transparent-nav .primary-nav.tab-underline .dropdown .dropdown-menu {
	padding-top: 0;
	margin-top: 10px;
}

.has-transparent-nav .primary-nav.tab-hover .dropdown .dropdown-menu {
	margin-top: -27px;
}

.has-transparent-nav .primary-nav:not(.tab-underline) ul li a {
	-border-bottom: 1px solid;
}

/******************************************** Top Bar Nav Styling ********************************************/
.top-bar {
	background-color: var(--color-topbar-bg);
	justify-content: flex-end;
	max-height: var(--m-spacing);
	min-height: var(--m-spacing);
}

.top-bar .top-nav {
	margin: 0;
	padding: 0 var(--l-spacing)
}

.top-bar .top-nav li a {
	color: var(--color-topbar-text);
	line-height: calc(var(--m-spacing) - 1px);
}

.top-bar .top-nav li:not(.touch-start):hover a {
	color: var(--color-topbar-text-hover);
	background-color: var(--color-topbar-bg-hover);
}

@media (max-width: 1200px) {

	.top-bar {
		justify-content: center;
	}

	body.has-top-bar .document-header .primary-nav {
		top: calc(var(--xl-spacing) + var(--m-spacing));
	}

	.fixed.has-top-bar .document-header .primary-nav {
		top: calc(var(--l-spacing) + var(--m-spacing));
	}
}

@media (max-width: 500px) {

	.top-bar .top-nav li a {
		font-size: 14px;
	}
}

/******************************************** Mobile Hamburger Styling ********************************************/

.mobile-hamburger {
	display: none;
}

@media (max-width: 1200px) {

	.mobile-hamburger {
		display: flex;
		flex-direction: column;
    	justify-content: space-evenly;
		width: 40px;
		height: 40px;
		position: relative;
		overflow: hidden;
		cursor: pointer;
		transform: rotate(0deg);
		transition: 0.25s ease-in-out;
		z-index: 2;
		padding: 0;
		background: transparent;
		border: 0;
	}
	
	.fixed .mobile-hamburger {
		margin-top: -5px;
	}

	.mobile-hamburger span {
		position: relative;
		background: var(--color-header-text);
		border-radius: 9px;
		height: 3px;
		width: 40px;
		transform: rotate(0deg);
		transition: .25s ease-in-out;
	}
	
	.primary-nav:not(.tab-underline) .mobile-hamburger:hover span {
		background: var(--color-header-hover);
	}

	.mobile-hamburger.toggled .wrapper {
		max-height: 1000px;
	}

	.mobile-hamburger.toggled span:nth-child(1) {
		top: 11px;
		transform: rotate(135deg);
	}

	.mobile-hamburger.toggled span:nth-child(2) {
		transform: rotate(495deg);
	}

	.mobile-hamburger.toggled span:nth-child(3) {
		top: -10px;
    	transform: rotate(-135deg);
	}
	
}

/******************************************** Mobile Telephone Styling ********************************************/

.mobile-telephone-button {
	background-color: var(--color-accent);
	display: none;
	position: fixed;
	bottom: 0;
	text-align: center;
	width: 100%;
	z-index: 99;
}

.mobile-telephone-button .glyphicon:before {
	color: white;
	margin-left: 15px;
}

@media (max-width: 480px) {
	.mobile-telephone-button {
		box-shadow: 0 -1px 3px rgba(0, 0, 0, 0.2);
		display: block;
	}
	
	.mobile-telephone-button a {
		color: var(--color-white);
		display: block;
		font-size: 1.125rem;
		padding: 10px;
		text-decoration: none;
	}
	
	.mobile-telephone-button a .glyphicon {
		vertical-align: middle;
		top: -5px;
	}
}

/******************************************** Section Styling ********************************************/

.image-slider {
	margin-bottom: var(--l-spacing);
}

.image-slider h2 {
	font-size: 2.25rem;
}

.image-slider .blurb-back {
	display: flex;
    flex-direction: column;
	justify-content: center;
	height: 100%;
	padding: 0 var(--l-spacing);
}

.image-slider .blurb-back a {
	max-width: 300px;
	width: 100%;
}

@media (max-width: 1020px) {
	.wp-block-columns.three-column-background {
		flex-direction: column;
	}

	.three-column-background .wp-block-column {
		margin-left: 0;
	}

	.wp-block-columns.three-column-background .wp-block-column:not(:last-of-type) {
		margin: 0 0 var(--l-spacing);
	}

	.wp-block-columns.three-column-background .wp-block-buttons {
		margin: 0 auto;
		max-width: 300px;
		width: 100%;
	}
}

.three-column-background .wp-block-column {
	border: 1px solid black;
	border-radius: 5px;
	box-shadow: 0 5px 14px rgba(0, 0, 0, 0.6);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: var(--s-spacing) var(--m-spacing);
	text-align: center;
}

@media (max-width: 480px) {
	.three-column-background .wp-block-column {
		padding: var(--s-spacing);
	}

	article .image-slider {
		display: block;
	}
}

.three-column-background .wp-block-column .wp-block-button, .three-column-background .wp-block-column .wp-block-button a {
	display: block;
} 

.three-column-background .wp-block-column p {
	padding: 0;
}

.heading-column {
	display: flex;
	align-items: center;
}

/******************************************** Footer Styling ********************************************/

.document-footer {
    position: relative;
    clear: both;
	padding: var(--l-spacing) 0 var(--m-spacing);
    background-color: var(--color-footer-bg);
}

.document-footer a,
.document-footer p,
.document-footer li,
.document-footer h2,
.document-footer table {
	color: var(--color-footer-text);
}

.document-footer a:hover {
	text-decoration: underline;
	opacity: 0.7;
}

.footer-widgets {
    display: grid;
    grid-template-columns: repeat(3, 32%);
    grid-gap: 2%;
    list-style: none;
    padding: 0;
    margin: 0;
	margin-bottom: var(--l-spacing);
}

.footer-widgets > li {
	margin-bottom: 0;
}

.widget-area .widgets:not(:last-child) {
	margin-bottom: var(--s-spacing);
}

.textwidget *:last-child {
	margin-bottom: 0;
}

.widget-area .widgets ul {
	padding: 0;
	list-style-type: none;
}
 
.widget-area .widgets .menu ul {
	list-style-type: square;
    padding-left: 40px;
}

.widget-area .widgets li {
	margin-bottom: 0;
}

.widgets select[name=archive-dropdown],
.widgets select[name=cat] {
	max-width: 240px;
    width: 100%;
    height: 35px;
    font-size: 0.8em;
    background: var(--color-footer-bg);
    color: var(--color-footer-text);
}

.widgets .calendar_wrap {
	margin-right: var(--m-spacing);
    border: 1px solid var(--color-footer-text);
    padding: 10px;
}

.widgets .calendar_wrap table {
	width: 100%;
}

.widgets .wp-calendar-nav span {
	color: var(--color-footer-text);
}

.widgets .searchform {
	display: grid;
	grid-template-columns: calc(100% - 35px) 35px;
}

.widgets .searchform input[type=text] {
	height: 35px;
	font-size: 0.8rem;
	padding: 0 15px;
}

.widgets .searchform .glyphicon-search {
	background-color: var(--color-primary);
	border-color: var(--color-white);
	color: var(--color-white);
	top: auto;
	font-size: 1rem;
}

.widgets .searchform .glyphicon-search:hover {
	background-color: var(--color-dark-text);
}

.widget-area .wp-block-social-links .wp-social-link {
	background: none;
}

.widget-area .wp-block-social-links .wp-social-link:not(:last-child) {
	margin-right: 20px;
}

.widget-area .wp-block-social-links a,
.widget-area .wp-block-social-links a:hover {
	background: var(--color-light-text);
	opacity: 1;
	padding: 0;
}

.widget-area .wp-block-social-links svg {    
	height: 32px;
    width: 32px;
    filter: grayscale(100%);
}

.widget-area .wp-block-social-links a:hover svg {
	opacity: 0.7;
}

.widget-area .wp-block-social-links a[aria-label=LinkedIn] svg {
	height: 34px;
    width: 34px;
}

.widget-area .wp-block-social-links a[aria-label=YouTube] svg {
	height: 36px;
    width: 36px;
}

@media (max-width: 1300px) {
	
	.document-footer {
		padding: var(--m-spacing) var(--l-spacing);
	}
	
}

@media (max-width: 992px) {
	
	.document-footer {
		padding: var(--m-spacing) var(--s-spacing);
	}
	
	.footer-widgets {
		grid-template-columns: repeat(2, 48%);
		grid-row-gap: var(--l-spacing);
	}
	
	.footer-widgets>li:first-child {
		grid-row: 2/3;
		grid-column: 1/3;
		text-align: center;
	}
	
	.widget-area .widgets ul.wp-block-social-links {
		justify-content: center;
	}
}

@media (max-width: 768px) {
	
	.footer-widgets {
		max-width: 350px;
		margin: 0 auto var(--l-spacing);
	}
	
	.footer-widgets {
		grid-template-columns: 100%;
		grid-column-gap: 0;
	}
	
	.footer-widgets>li:first-child {
		grid-row: 3/4;
		grid-column: 1/2;
	}
}

@media (max-width: 540px) {
	
	.footer-widgets {
		grid-template-columns: repeat(1, 100%);
	}

	.footer-widgets >li {
		width: 100%;
	}

	.footer-widgets >li:first-of-type {
		width: 100%;
	}
}

@media (max-width: 480px) {
	
	.document-footer {
		padding: var(--m-spacing) calc(var(--s-spacing) / 2) 80px;
	}
}

/******************************************** Footer Social ********************************************/

.document-footer .social-menu li a[href*="facebook.com"]::before,
.document-footer .social-menu li a[href*="instagram.com"]::before,
.document-footer .social-menu li a[href*="pinterest.com"]::before {
	color: var(--color-footer-text);
}

/******************************************** Footer Bottom ********************************************/

.footer-bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
	padding-top: 10px;
	border-top: 1px solid var(--color-footer-text);
}

.footer-bottom a {
	color: var(--color-footer-text);
	text-decoration: none;
	font-size: 0.8rem;
	line-height: 1rem;
}

.footer-bottom .copyright {
	display: flex;
}

.footer-bottom .legal-menu-items {
	margin: 0;
    padding: 0;
    list-style-type: none;
    display: flex;
}

.footer-bottom .legal-menu-items .menu-item {
	margin-bottom: 0;
	line-height: 1;
}

.footer-bottom .pipe {
	color: var(--color-footer-text);
	padding: 0 8px;
	vertical-align: text-top;
    display: inline-block;
}

.crack-ajax-plug {
	padding-left: 8px;
}

@media (max-width: 1200px) {
	
	.footer-bottom {
		flex-wrap: wrap;
	}
	
	.footer-bottom .copyright,
	.crack-ajax-plug {
		justify-content: center;
    	flex-basis: 100%;
	}
	
	.footer-bottom .copyright {
		margin-bottom: var(--m-spacing);
	}
	
	.crack-ajax-plug {
		padding-left: 0;
	}
	
	.crack-ajax-plug {
		padding-left: 0;
		text-align: center;
	}
}

@media (max-width: 768px) {
	.footer-bottom {
		flex-direction: column;
	}

	.footer-bottom .copyright {
		flex-direction: column;
		align-items: center;
	}

	.footer-bottom .copyright a {
		margin-top: calc(var(--s-spacing) / 2);
		order: 1;
	}
	
	.footer-bottom li:first-child .pipe {
		display: none;
	}
}

@media (max-width: 365px) {
	
	.footer-bottom .legal-menu-items {
	    display: flex;
	    flex-direction: column;
		align-items: center;
	}
	
	.footer-bottom .legal-menu-items .menu-item {
		margin-bottom: calc(var(--s-spacing) / 2);
	}
	
	.footer-bottom li .pipe {
		display: none;
	}
	
}

/******************************************** Blog Styling ********************************************/
.blog:not(.search) > .row {
	padding: var(--l-spacing) var(--xl-spacing) var(--xl-spacing);
}

.blog:not(.search) .row .page-title  {
	text-align: center;
}

.blog:not(.search) .row .article-container {
	display: grid;
    grid-template-columns: repeat(3, 31%);
	grid-column-gap: 3.5%;
	grid-row-gap: var(--l-spacing);
	margin-bottom: var(--l-spacing);
}

.blog:not(.search) .row article {
	background: var(--color-primary);
	border-radius: 10px;
	padding: 0;
	transition: all .1s ease-in;
}

.blog:not(.search) .row article:hover {
	box-shadow:   5px 5px 8px 0px rgba(0,0,0,0.4);
	transform: scale(1.05, 1.05);
}

.blog:not(.search) .row article .post-content{
	padding: 25px 25px 75px;
}

.blog:not(.search) .row article h1 {
	line-height: 1;
	width: 100%;
	cursor: pointer;
	text-align: center;
}

.blog:not(.search) .row article h1 a {
	border-radius: 10px;
	color: var(--color-white);
	font-size: 1.625rem;
	padding: 0;
	text-align: center;
	text-decoration: none;
}

.blog:not(.search) .row article .post-thumbnail img {
	border-radius: 10px 10px 0 0;
}

.blog:not(.search) .row article:not(.has-post-thumbnail) {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 0;
}

.blog:not(.search) .row article:not(.has-post-thumbnail) h1 {
	padding: 0;
	text-align: center;
}

.blog:not(.search) .row article:not(.has-post-thumbnail) .post-info {
	margin-left: 0!important;
}

.blog:not(.search) .row article:not(.has-post-thumbnail) .post-info p {
	margin-top: 0;
}

.blog:not(.search) .row article .post-header {
	display: flex;
	flex-wrap: wrap;
}

.blog:not(.search) .row article .post-thumbnail {
	min-height: 200px;
	max-height: 200px;
	overflow-y: hidden;
}

.blog:not(.search) .row article .post-thumbnail img{
	min-height: 200px;
	width: 100%;
}

.blog:not(.search) .row article .post-content {
	max-width: var(--restricted-width);
}

.blog:not(.search) .row article .post-content p {
	color: var(--color-white);
}

.blog:not(.search) .row article .post-content .read-more {
	border: 2px solid var(--color-white);
	color: var(--color-white);
	font-weight: 700;
	padding: 10px;
	position: absolute;
	bottom: 25px;
	left: 25px; 
	text-align: center;
	text-decoration: none;
	width: calc(100% - var(--l-spacing));
}

.blog:not(.search) .row article .post-content .read-more:hover {
	background: var(--color-dark-text);
}

.blog .pagination {
	margin: var(--l-spacing) auto;
    display: inline-block;
    text-align: center;
    width: 100%;
}

.blog .pagination a {
	background-color: var(--color-primary);
	color: var(--color-white);
	font-size: 1.375rem;
	padding: 10px;
}

.blog .pagination a:hover {
	background-color: var(--color-dark-text);
}

.blog .pagination span {
	border: 2px solid var(--color-primary);
	font-size: 1.375rem;
	padding: 8px;
}

@media (max-width: var(--wide-width)) {
	.blog:not(.search) .row .article-container {
		grid-template-columns: repeat(2, 46%);
		grid-column-gap: 8%;
	}

	.blog:not(.search) .row article .post-thumbnail {
		max-height: 275px;
		overflow-y: hidden;
	}
	
	.blog:not(.search) .row article .post-thumbnail img{
		min-height: 275px;
	}
}

@media (max-width: 996px) {
	.blog:not(.search) > .row {
		padding: var(--l-spacing);
	}

	.blog:not(.search) .row article .post-thumbnail {
		max-height: 225px;
		overflow-y: hidden;
	}
	
	.blog:not(.search) .row article .post-thumbnail img{
		min-height: 225px;
	}
}

@media (max-width: 768px) {
	.blog:not(.search) .row .article-container {
		grid-template-columns: repeat(1, 100%);
		width: 100%;
	}

	.blog:not(.search) .row article {
		width: 100%;
	}

	.blog:not(.search) .row article:hover {
		box-shadow:   0 var(--s-spacing) var(--l-spacing) 10px rgba(0,0,0,0.4);
		transform: none;
	}

	.blog:not(.search) .row article .post-header .post-info {
		margin-left: 0;
		width: 100%;
	}

	.blog:not(.search) .row article .post-thumbnail {
		max-height: 275px;
		overflow-y: hidden;
	}
	
	.blog:not(.search) .row article .post-thumbnail img{
		min-height: 275px;
	}
}

@media (max-width: 480px) {
	.blog:not(.search) > .row {
		padding: var(--l-spacing) 15px;
	}

	.blog:not(.search) .row article .post-thumbnail {
		max-height: 200px;
		overflow-y: hidden;
	}
	
	.blog:not(.search) .row article .post-thumbnail img{
		min-height: 200px;
	}
}

/******************************************** Blog Single Styling ********************************************/
.single-post .row {
	max-width: 996px;
}

.single-post article {
	padding-bottom: var(--l-spacing);
}

.single-post .hero-image-container{
	align-items: center;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	min-height: 70vh;
}

.single-post .post-header.has-featured-image .header-wrapper h1 {
	padding: 0 var(--xl-spacing);
}

@media (max-width: 996px) {
	.single-post .post-header.has-featured-image .header-wrapper h1 {
		padding: 0 var(--l-spacing);
	}
}

@media (max-width: 480px) {
	.single-post .post-header.has-featured-image .header-wrapper h1 {
		padding: 0 15px;
	}
}
.single-post .has-featured-image h1 {
	color: var(--color-white);
	position: relative;
	z-index: 4;
}

.single-post .has-featured-image .post-info p, .single-post .has-featured-image .post-info a {
	color: var(--color-dark-text);
}

.single-post .post-header:not(.has-featured-image) {
	margin: 0 auto;
}

.single-post .post-header:not(.has-featured-image) h1 {
	margin: var(--l-spacing) auto var(--m-spacing);
}

.single-post  h1{
	margin: 0;
}

.single-post .wp-block-cover h2 {
	font-size: 2.25rem;
}

.single-post .posts .post-footer {
	margin-top: var(--xl-spacing);
}

.single-post .post-footer .wrapper {
	display: flex;
}

.single-post .post-footer .wrapper a {
	cursor: pointer;
	font-family: var(--font-primary-heading);
	font-size: 1.375rem;
	font-weight: 700;
	margin: 0 10px;
	text-decoration: none;
}

.single-post .post-footer .wrapper .navigation {
	display: flex;
	justify-content: space-between;
	text-decoration: underline;
	width: 100%;
}

.single-post .post-footer .wrapper .navigation .next-post {
	text-align: right;
}

.single-post .post-footer .wrapper .navigation a:hover {
	text-decoration: underline;
}

@media (max-width: 480px) {
	.single-post .posts .post-footer {
		margin-top: var(--l-spacing);
	}

	.single-post .post-footer .wrapper .navigation {
		flex-direction: column;
	}

	.single-post .post-footer .wrapper .alignleft {
		margin-bottom: var(--m-spacing);
	}

	.single-post .post-footer .wrapper .alignright {
		text-align: right;
	}
}

.single-post .posts .comments-section {
	max-width: var(--wide-width);
	margin: var(--m-spacing) auto 0;
}

/**************************************** Blog Single Styling with Sidebar *****************************************/
.row.sidebar-layout {
	max-width: var(--wide-width);
}
.post-content.right-sidebar,
.post-content.left-sidebar {
	display: flex;
	flex-wrap: nowrap;
	gap: var(--l-spacing);
}
.sidebar-right,
.sidebar-left {
	flex-basis: calc( 100% - calc( 70% + var(--l-spacing) ) );
}
.sidebar-layout .full-post {
	flex-basis: 70%;
}
.sidebar-layout #sidebar #search-2 {
	margin-bottom: var(--m-spacing);
}

@media (max-width: 850px) {
	.post-content.right-sidebar,
	.post-content.left-sidebar {
		flex-wrap: wrap;
	}
	.post-content.left-sidebar {
		flex-direction: column-reverse;
	}
	.sidebar-layout .full-post,
	.sidebar-right,
	.sidebar-left {
		flex-basis: 100%;
	}
}

/********************************************* Search Page Styling *************************************************/
.search > .row {
	padding: 0 var(--xl-spacing) var(--xl-spacing);
}

.search article {
	padding: 0;
}

.search .row article a {
	font-family: var(--font-primary-heading);
}

@media (max-width: 996px) {
	.search > .row {
		padding: 0 var(--l-spacing) var(--l-spacing);
	}
}

@media (max-width: 480px) {
	.search > .row {
		padding: 0 var(--l-spacing) 15px;
	}
}

/***************************************** Gravity Forms Default Styling ******************************************/

:focus {
	outline-color: var(--color-accent);
}

.improvise .gform_wrapper {
	overflow-x: hidden;
}

.left-half,
.right-half {
	display: inline-block;
	width: 50%;
}

.full-width {
	display: inline-block;
	width: 100%;
}

.left-half.block,
.right-half.block {
	display: block;
}

.improvise .gform_wrapper ul.gform_fields li:first-child {
	margin-top: 0;
}

.improvise .gform_wrapper ul.gform_fields li.gfield {
	padding-right: 0;
}

.improvise .gform_wrapper ul.gform_fields li.gfield.left-half {
	padding-right: 8px;
}

.improvise .gform_wrapper ul.gform_fields li.gfield.right-half {
	padding-left: 8px;
}

.improvise .gform_wrapper ul.gform_fields li.gfield .gfield_label {
	color: var(--color-dark-text);
	font-size: 1.25rem;
	font-family: var(--font-primary-heading);
}

.improvise .gform_wrapper ul.gform_fields li.gfield span label {
	color: var(--color-dark-text);
	font-size: 0.75rem;
	font-family: var(--font-primary-heading);
}

.improvise .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.improvise .gform_wrapper textarea {
	color: var(--color-dark-text);
    background-color: transparent;
    font-size: 1rem;
	padding: 16px;
	margin: 0;
	border: 2px solid var(--color-primary);
}

.improvise .gform_wrapper input:focus:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.improvise .gform_wrapper textarea:focus,
.improvise .gform_wrapper input[type=submit]:focus {
	outline-color: var(--color-accent);
}

.improvise .gform_wrapper input {
	color: var(--color-dark-text);
	font-family: var(--font-primary)!important;
	width: 100%!important;
}

.improvise .gform_wrapper select {
	-webkit-appearance: none;
	appearance: none;
	background-color: transparent;
	border: 2px solid var(--color-primary);
	border-radius: 0!important;
	color: var(--color-dark-text);
	font-family: var(--font-primary)!important;
	font-size: 1rem;
	margin: 0!important;
	position: relative;
	padding: 14px 16px!important;
	width: 100%!important;
	z-index: 9;
}

.improvise .gform_wrapper .ginput_container_select {
	position: relative;
}

.improvise .gform_wrapper .ginput_container_select:after {
	background-image: url('images/down-arrow-black.png');
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: inline-block;
	height: 18px;
	position: absolute;
	right: 16px;
	top: 16px;
	width: 18px;
}

.improvise .gform_wrapper .ginput_container_select::placeholder {
	font-family: var(--font-primary)!important;
}

.improvise .gform_wrapper textarea {
	height: 150px;
}

.improvise .gform_wrapper input[type=submit] {
	font-size: 1.25rem !important;
	width: 100% !important;
	max-width: 300px;
}

.improvise .gform_wrapper div.ginput_complex.ginput_container_address {
	flex-wrap: wrap;
	gap: 2%;
}

.improvise .gform_wrapper .full-width div.ginput_complex.ginput_container_address .address_line_1,
.improvise .gform_wrapper .full-width div.ginput_complex.ginput_container_address .address_line_2 {
	flex-basis: 49%;
	margin-bottom: 16px;
}

.improvise .gform_wrapper .left-half div.ginput_complex.ginput_container_address .address_line_1,
.improvise .gform_wrapper .right-half div.ginput_complex.ginput_container_address .address_line_1,
.improvise .gform_wrapper .left-half div.ginput_complex.ginput_container_address .address_line_2,
.improvise .gform_wrapper .right-half div.ginput_complex.ginput_container_address .address_line_2 {
	flex-basis: 100%;
	margin-bottom: 16px;
}

.improvise .gform_wrapper .left-half div.ginput_complex.ginput_container_address .address_city,
.improvise .gform_wrapper .right-half div.ginput_complex.ginput_container_address .address_city,
.improvise .gform_wrapper .full-width div.ginput_complex.ginput_container_address .address_city,
.improvise .gform_wrapper .left-half div.ginput_complex.ginput_container_address .address_state,
.improvise .gform_wrapper .right-half div.ginput_complex.ginput_container_address .address_state,
.improvise .gform_wrapper .full-width div.ginput_complex.ginput_container_address .address_state,
.improvise .gform_wrapper .left-half div.ginput_complex.ginput_container_address .address_zip,
.improvise .gform_wrapper .right-half div.ginput_complex.ginput_container_address .address_zip,
.improvise .gform_wrapper .full-width div.ginput_complex.ginput_container_address .address_zip {
	flex-basis: 32%;
	padding: 0 !important;
	margin: 0 !important;
}

.improvise .gform_wrapper .address_country {
	margin-top: 0;
}

.improvise .gform_wrapper div.ginput_complex {
	display: flex;
	justify-content: space-between;
	width: 100%!important;
}

.improvise .gform_wrapper div.ginput_complex span {
	width: 49%!important;
	padding: 0!important;
	margin: 0;
}

.improvise .gform_wrapper .flex-row ul.gfield_radio,
.improvise .gform_wrapper .flex-column ul.gfield_radio {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 2%;
	max-width: 100%;
}

.improvise .gform_wrapper .left-half.flex-row,
.improvise .gform_wrapper .left-half.flex-column {
	float: left;
}

.improvise .gform_wrapper .right-half.flex-row,
.improvise .gform_wrapper .right-half.flex-column {
	float: right;
}

.improvise .gform_wrapper .flex-row ul.gfield_radio {
	flex-direction: row;
}

.improvise .gform_wrapper .flex-column ul.gfield_radio {
	flex-direction: column;
}

.improvise .gform_wrapper ul.gform_fields .flex-row .gfield_radio li,
.improvise .gform_wrapper ul.gform_fields .flex-column .gfield_radio li {
	flex-grow: 1;
	margin-left: 0 !important;
}

.improvise .gform_wrapper ul.gfield_radio li {
	display: inline-block;
}

.improvise .gform_wrapper .gfield_radio li label, 
.gform_wrapper ul.gfield_checkbox li label {
	font-size: 1rem;
}

.gform_wrapper ul.gform_fields .gfield_radio li:not(:first-child) {
	margin-left: var(--m-spacing)!important;
}

.gform_wrapper ul.gform_fields li.gfield input[type=radio] {
	margin-top: 1px;
}

.improvise .gform_wrapper .gfield_checkbox li input[type=checkbox] {
	vertical-align: unset;
	margin-top: 2px;
}

.improvise .gform_wrapper .gform_footer .gform_button {
	background: white;
	border: 2px solid var(--color-dark-text);
	color: var(--color-dark-text);
	cursor: pointer;
	font-family: var(--font-primary-heading);
}

.improvise .gform_wrapper .gform_footer .gform_button:hover {
	background: var(--color-dark-text);
	border: 2px solid var(--color-dark-text);
	color: white;
}

.improvise .gform_confirmation_message {
	margin-top: var(--m-spacing);
}

.improvise .ginput_container_creditcard  {
	flex-wrap: wrap;
}

.improvise .gform_wrapper div.ginput_complex.ginput_container_creditcard span.ginput_full {
	width: 100% !important;
}

.improvise .gform_card_icon_container {
	width: 100%	;
}

.improvise .ginput_container_creditcard .ginput_cardextras  {
	flex-basis: 100%;
	flex-grow: 1;
	display: flex !important;
	gap: 2%;
}

.improvise .ginput_container_creditcard .ginput_cardextras span.ginput_cardinfo_left span.ginput_card_expiration_container,
.improvise .ginput_container_creditcard .ginput_cardextras span.ginput_cardinfo_right {
	display: flex;
	flex-basis: 100%;
    justify-content: space-between;
	align-items: center;
	width: auto !important;
	margin: 8px 0;
}

.improvise .ginput_container_creditcard .ginput_cardextras span.ginput_cardinfo_left,
.improvise .ginput_container_creditcard .ginput_cardextras span.ginput_cardinfo_right {
	display: flex;
	flex-basis: 33%;
    gap: 2%;
}

.improvise .ginput_container_creditcard .ginput_cardextras span.ginput_cardinfo_left {
	flex-basis: 65%;
}

.improvise .ginput_container_creditcard .ginput_cardextras span.ginput_cardinfo_left span.ginput_card_expiration_container .ginput_card_expiration {
	flex-basis: 48%;
	font-size: 1rem;
	padding: 14px 15px !important;
}

.improvise .ginput_container_creditcard select {
	margin-bottom: 0;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #999;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #999;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #999;
}
:-moz-placeholder { /* Firefox 18- */
  color: #999;
}

@media only screen and (max-width: 641px) {
	.improvise .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]) {
		line-height: 1;
		min-height: auto;
	}
	
	.improvise .gform_wrapper .ginput_container span:not(.ginput_price) {
		margin-bottom: 24px;
	}
	
	.improvise .gform_wrapper .ginput_container span.name_last {
		margin-bottom: 0;
	}
	
	.improvise .gform_wrapper ul.gform_fields li.gfield.left-half,
	.improvise .gform_wrapper ul.gform_fields li.gfield.right-half,
	.improvise div.ginput_complex.ginput_container.gf_name_has_2 span,
	.improvise .top_label div.ginput_complex.ginput_container.gf_name_has_1,
	.improvise .top_label div.ginput_complex.ginput_container.gf_name_has_2,
	.improvise .top_label div.ginput_complex.ginput_container.gf_name_has_3 {
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}
}



@media (max-width: 480px) {
	.improvise .gform_wrapper .gform_footer input[type=submit] {
		margin-bottom: 0;
	}

	.improvise .gform_wrapper div.ginput_complex {
		flex-direction: column;
	}

	.improvise .gform_wrapper div.ginput_complex span {
		width: 100%!important;
		padding: 0!important;
	}
}

/****************************************** Social Media Genericon Styling ******************************************/

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	width: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
}

.social-menu {
    margin: 0 auto;
    width: 65%;
}

	.social-menu ul {
		list-style: none;
		padding: 0;
		margin: 0;
		text-align: center;
	}

		.social-menu ul li {
			display:  inline-block;
			position: relative;
			-width: 20% !important;
		}

			.social-menu li a::before {
				content:        '\f408';
				display:        inline-block;
				padding:        0 5px;
				font-family:    'Genericons';
				font-size:      2em;
				vertical-align: top;
				-webkit-font-smoothing: antialiased;
			}

			.social-menu li a[href*="wordpress.org"]::before,
			.social-menu li a[href*="wordpress.com"]::before {
				content: '\f205';
				color:   #21759b;
			}

			.social-menu li a[href*="facebook.com"]::before {
				content: '\f203';
				color:   #3b5998;
			}

			.social-menu li a[href*="twitter.com"]::before {
				content: '\f202';
				color:   #33ccff;
			}

			.social-menu li a[href*="pinterest.com"]::before {
				content: '\f210';
				color:   #c8232c;
			}

			.social-menu li a[href*="github.com"]::before {
				content: '\f200';
				color:   #171515;
			}

			.social-menu li a[href*="tumblr.com"]::before {
				content: '\f214';
				color:   #34526f;
			}

			.social-menu li a[href*="youtube.com"]::before {
				content: '\f213';
				color:   #c4302b;
			}
			.social-menu li a[href*="vimeo.com"]::before {
				content: '\f212';
				color:   #1AB7EA;
			}

			.social-menu li a[href*="instagram.com"]::before {
				content: '\f215';
				color:   #3f729b;
			}

			.social-menu li a[href*="codepen.io"]::before {
				content: '\f216';
				color:   #000;
			}

			.social-menu li a[href*="linkedin.com"]::before {
				content: '\f208';
				color:   #0e76a8;
			}

/**************************************** Gutenberg Block (Frontend) Styles *****************************************/

/************************************* WP Cover Block Restricted Width Class **************************************/
			
.wp-block-cover {
	margin-bottom: var(--l-spacing);
	padding: 0;
	overflow: hidden;
}

.wp-block-cover .wp-block-cover__image-background {
	max-height: 100%
}

.wp-block-cover :last-child {
	margin-bottom: 0 !important;
}

.page-content>.wp-block-cover:first-child {
	margin-bottom: var(--xl-spacing);
}

.alignfull > .wp-block-cover__inner-container {
	margin: 0 auto;
	max-width: var(--wide-width);
    padding: var(--l-spacing) var(--xl-spacing);
	box-sizing: border-box;
	width: 100%;
}

.is-style-cover-cta .wp-block-cover__inner-container {
	max-width: var(--restricted-width) !important;
}

.is-style-cover-cta.a-left .wp-block-cover__inner-container {
	margin-left: 0;
}

.is-style-cover-cta.a-left.cols-left .wp-block-cover__inner-container  {
	max-width: 100% !important;
}

.is-style-cover-cta.a-left.cols-left .wp-block-cover__inner-container .wp-block-columns .wp-block-column:first-child {
	max-width: var(--restricted-width) !important;
	padding-right: calc(var(--xl-spacing) * 2);
}

.is-style-cover-cta.a-right .wp-block-cover__inner-container {
	margin-right: 0;
}

.is-style-cover-cta.a-right.cols-right .wp-block-cover__inner-container  {
	max-width: 100% !important;
}

.is-style-cover-cta.a-left.cols-left .wp-block-cover__inner-container .wp-block-columns .wp-block-column:last-child img ,
.is-style-cover-cta.a-right.cols-right .wp-block-cover__inner-container .wp-block-columns .wp-block-column:first-child img {
	filter: drop-shadow(10px 10px 35px #333);
	max-height: 23rem;
}

.is-style-cover-cta.a-right.cols-right .wp-block-cover__inner-container .wp-block-columns .wp-block-column:last-child {
	max-width: var(--restricted-width) !important;
	padding-left: calc(var(--xl-spacing) * 2);
}

.is-style-cover-cta .wp-block-cover__inner-container h1 {
	margin-bottom: 1em;
}

.is-style-cover-cta .wp-block-cover__inner-container p:last-of-type {
	margin-bottom: 4em;
}

.is-style-cover-cta .wp-block-cover__inner-container .wp-block-buttons {
	margin-top: 0;
}

@media (max-width: 1200px) {
	
	.alignfull > .wp-block-cover__inner-container {
		padding: var(--l-spacing);
	}
}

@media (max-width: 480px) {
	
	.page-content>.wp-block-cover:first-child {
		    margin-bottom: var(--l-spacing);
	}
	
	.alignfull > .wp-block-cover__inner-container {
		padding: var(--l-spacing) var(--s-spacing);
	}
	
	.is-style-cover-cta .wp-block-cover__inner-container p:last-of-type {
		margin-bottom: 3em;
	}
	
}

/**************************************** Gutenberg Media Text Block Styles *****************************************/

.wp-block-media-text {
	margin-top: var(--l-spacing);
	margin-bottom: var(--l-spacing);
}
			
.wp-block-media-text .wp-block-media-text__content {
	padding: var(--l-spacing);
}

.wp-block-media-text.is-image-fill:not(.has-background) .wp-block-media-text__content {
	padding: 0 var(--l-spacing);
}

.wp-block-media-text__content :last-child {
	margin-bottom: 0;
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media {
	text-align: right;
}

.wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__media {
	text-align: left;
}

.wp-block-media-text .wp-block-media-text__media img {
	max-width: 100%;
	max-height: 600px;
	width: auto;
}

.wp-block-media-text .wp-block-buttons .wp-block-button {
	margin-bottom: 0;
}

.wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__content .wp-block-button:last-child {
	margin-right: 0;
}

.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content .wp-block-button:first-child {
	margin-left: 0;
}

@media (min-width: 1800px) {
	
	.wp-block-media-text .wp-block-media-text__media img {
    	width: 100%;
    	object-fit: cover;
	}
}

@media (min-width: 769px) and (max-width: 992px) {
	
	.wp-block-media-text[style*=grid-template-columns] {
		grid-template-columns: 50% auto !important;
	}
	
	.wp-block-media-text .wp-block-buttons .wp-block-button + .wp-block-button {
		margin-top: calc(var(--s-spacing) / 2);
	}
	
	.wp-block-media-text .wp-block-buttons.alignright .wp-block-button {
		float: right;
		clear: right;
		margin-right: 0;
	}
	
	.wp-block-media-text .wp-block-buttons.alignleft .wp-block-button {
		float: left;
		clear: left;
		margin-left: 0;
	}
	
	.wp-block-media-text .wp-block-buttons.aligncenter .wp-block-button {
		margin-left: 0;
		margin-right: 0;
	}
	
}

@media (max-width: 768px) {
	
	.wp-block-media-text.is-stacked-on-mobile {
		grid-template-columns: 100% !important;
		justify-items: center;
	}
	
	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media {
		grid-column: 1/2;
		grid-row: 1/2;
		text-align: center;
	}
	
	.wp-block-media-text.is-stacked-on-mobile.is-image-fill figure.wp-block-media-text__media {
		min-height: 500px;
		width: 100%;
	}
	
	.wp-block-media-text.is-stacked-on-mobile.has-media-on-the-right .wp-block-media-text__media {
		grid-row: 1;
	}
	
	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media img {
		max-height: 500px;
	}
	
	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
		grid-column: 1/2;
		grid-row: 2/3;
	}
	
	.wp-block-media-text.is-stacked-on-mobile:not(.has-background) .wp-block-media-text__content {
		padding: var(--l-spacing) var(--l-spacing) 0;
	}
	
	.wp-block-media-text.is-stacked-on-mobile.no-margin-bottom:not(.has-background):not(.alignwide):not(.alignfull) .wp-block-media-text__content {
		padding: var(--m-spacing) 0 var(--m-spacing);
	}
	
	.wp-block-media-text.is-stacked-on-mobile.alignwide.no-margin-bottom:not(.has-background) .wp-block-media-text__content,
	.wp-block-media-text.is-stacked-on-mobile.alignfull.no-margin-bottom:not(.has-background) .wp-block-media-text__content {
		padding-bottom: var(--m-spacing);
	}
	
	.wp-block-media-text.is-stacked-on-mobile.has-media-on-the-right .wp-block-media-text__content {
		grid-row: 2;
	}
	
	.wp-block-media-text.is-stacked-on-mobile .wp-block-buttons .wp-block-button {
		margin-left: 0;
	}
	
	.wp-block-media-text.is-stacked-on-mobile .wp-block-buttons .wp-block-button:last-child {
		margin-right: 0;
	}
	
}

@media (max-width: 480px) {
	
	.wp-block-media-text {
		margin-top: var(--m-spacing);
		margin-bottom: var(--m-spacing);
	}
	
	.wp-block-media-text.is-stacked-on-mobile:not(.media-padded) .wp-block-media-text__media img {
		object-fit: cover;
		width: 100%;
	}
	
	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
		padding: var(--l-spacing) var(--s-spacing);
	}
	
	.wp-block-media-text.is-stacked-on-mobile:not(.has-background) .wp-block-media-text__content {
		padding: var(--m-spacing) calc(var(--m-spacing) / 2) 0;
	}
	
	.wp-block-media-text.is-stacked-on-mobile.no-margin-bottom:not(.has-background):not(.alignwide):not(.alignfull) .wp-block-media-text__content {
		padding: var(--m-spacing) 0 calc(var(--m-spacing) / 2);
	}
	
	.wp-block-media-text.is-stacked-on-mobile.alignwide.no-margin-bottom:not(.has-background) .wp-block-media-text__content,
	.wp-block-media-text.is-stacked-on-mobile.alignfull.no-margin-bottom:not(.has-background) .wp-block-media-text__content {
		padding-bottom: var(--s-spacing);
	}
	
	.wp-block-media-text .wp-block-buttons .wp-block-button + .wp-block-button {
		margin-top: calc(var(--s-spacing) / 2);
	}
	
	.wp-block-media-text.is-stacked-on-mobile .wp-block-buttons.alignright .wp-block-button {
		float: right;
		clear: right;
		margin-right: 0;
	}
	
	.wp-block-media-text.is-stacked-on-mobile .wp-block-buttons.alignleft .wp-block-button {
		float: left;
		clear: left;
		margin-left: 0;
	}
	
	.wp-block-media-text.is-stacked-on-mobile .wp-block-buttons.aligncenter .wp-block-button {
		margin-left: 0;
		margin-right: 0;
	}
	
}

@media (max-width: 375px) {
	
	.wp-block-media-text.is-stacked-on-mobile .wp-block-buttons,
	.wp-block-media-text.is-stacked-on-mobile .wp-block-buttons .wp-block-button {
		width: 100%;
	}
	
	.wp-block-media-text.is-stacked-on-mobile .wp-block-buttons .wp-block-button .wp-block-button__link {
		display: block;
	}
	
}

/************************************* WP Block Media Text CTA Class **************************************/

.media-text-cta .wp-block-media-text__content {
	max-width: var(--restricted-width);
	box-sizing: content-box;
}

.media-text-cta .wp-block-media-text__content h1,
.media-text-cta .wp-block-media-text__content h2,
.media-text-cta .wp-block-media-text__content h3,
.media-text-cta .wp-block-media-text__content h4,
.media-text-cta .wp-block-media-text__content h5,
.media-text-cta .wp-block-media-text__content h6 {
	margin-bottom: 1em;
}

.media-text-cta .wp-block-media-text__content p:last-of-type {
	margin-bottom: 4em;
}

.media-text-cta .wp-block-media-text__content ul {
	padding-left: 20px;
}

.media-text-cta .wp-block-media-text__content p + .wp-block-buttons {
	margin-top: 0;
}

@media (max-width: 480px) {
	
	.media-text-cta .wp-block-media-text__content p:last-of-type {
		margin-bottom: 2em;
	}
	
	.wp-block-media-text:not(.media-text-cta) .wp-block-media-text__content .wp-block-buttons {
		margin-top: var(--s-spacing);
	}
	
}

/************************************* WP Block Media Text Padded Class **************************************/

.media-padded.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media {
	padding-right: var(--l-spacing);
	padding-top: var(--l-spacing);
	padding-bottom: var(--l-spacing);
	text-align: right;
}

.media-padded.wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__media {
	padding-left: var(--l-spacing);
	padding-top: var(--l-spacing);
	padding-bottom: var(--l-spacing);
}

.media-padded.wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__content {
	padding-top: var(--l-spacing);
}

.media-padded.wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__content {
	padding-bottom: var(--l-spacing);
}

@media (max-width: 768px) {
	
	.media-padded.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media,
	.media-padded.wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__media {
		padding-bottom: 0;
		padding-left: var(--l-spacing);
		padding-right: var(--l-spacing);
	}
	
}

@media (max-width: 480px) {
	
	.media-padded.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media,
	.media-padded.wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__media {
		padding-top: var(--m-spacing);
		padding-left: var(--m-spacing);
		padding-right: var(--m-spacing);
	}
	
}

/********************************* WP Block Media Text Content Flush Class ***********************************/

@media (min-width: 1250px) {

	.content-flush.wp-block-media-text:not(.has-media-on-the-right):not(.has-background):not(.alignfull) .wp-block-media-text__content {
		padding-right: 0;
	}

	.content-flush.wp-block-media-text.has-media-on-the-right:not(.has-background):not(.alignfull) .wp-block-media-text__content {
		padding-left: 0;
	}
}

/******************************************* WP Group Block Styling *******************************************/

.wp-block-group {
	margin-top: var(--l-spacing);
	margin-bottom: var(--l-spacing);
}

.wp-block-group.alignfull > .wp-block-group__inner-container  {
	margin: 0 auto;
	max-width: var(--wide-width);
}

.wp-block-group.has-background > .wp-block-group__inner-container,
.wp-block-group.alignwide.has-background > .wp-block-group__inner-container,
.wp-block-group.alignfull.has-background > .wp-block-group__inner-container {
    padding: var(--l-spacing) var(--xl-spacing);
	box-sizing: border-box;
	width: 100%;
}

.wp-block-group.has-background > .wp-block-group__inner-container {
	padding: var(--l-spacing);
}

.wp-block-group.alignfull.has-background > .wp-block-group__inner-container {
	box-sizing: content-box;
}

.wp-block-group.alignfull.has-background > .wp-block-group__inner-container .alignwide {
	margin-left: 0;
}

.wp-block-group > .wp-block-group__inner-container :last-child {
	margin-bottom: 0 !important;
}

.wp-block-group > .wp-block-group__inner-container .wp-block-media-text {
	margin-top: 0;
	margin-bottom: 0;
}

@media (max-width: 1200px) {
	
	.wp-block-group.has-background > .wp-block-group__inner-container,
	.wp-block-group.alignwide.has-background > .wp-block-group__inner-container,
	.wp-block-group.alignfull.has-background > .wp-block-group__inner-container {
	    padding: var(--l-spacing);
	}
	
	.wp-block-group.alignfull.has-background > .wp-block-group__inner-container {
		box-sizing: border-box;
	}
}

@media (max-width: 480px) {

	.wp-block-group.has-background > .wp-block-group__inner-container,
	.wp-block-group.alignwide.has-background > .wp-block-group__inner-container,
	.wp-block-group.alignfull.has-background > .wp-block-group__inner-container {
		max-width: 100%;
		padding: var(--l-spacing) var(--s-spacing);
	}
}

/******************************* WP Group Block with Inner Column Block Styling *******************************/

.wp-block-group .wp-block-columns .wp-block-column .wp-block-buttons:first-child {
	margin-top: 0;
}

@media (max-width: 781px) and (min-width: 600px) {
	
	.wp-block-group .wp-block-columns.has-background {
		padding-bottom: 0;
	}
	
	.wp-block-group .wp-block-columns .wp-block-column,
	.wp-block-group .wp-block-columns .wp-block-column:last-child  {
		margin-bottom: var(--l-spacing) !important;
	}
}

@media (min-width: 600px) {
	
	.wp-block-group.has-background .wp-block-columns .wp-block-column {
		margin-bottom: 0;
	}
}

/***************************** Group Block with Last Block Column Class Styling *******************************/

.wp-block-group.is-style-column-last > .wp-block-group__inner-container {
	padding-bottom: calc(var(--l-spacing) - var(--m-spacing)) !important;
}

.wp-block-group.is-style-column-last > .wp-block-group__inner-container .wp-block-columns:last-child .wp-block-column {
	margin-bottom: var(--m-spacing) !important;
}

/****************************************** WP Column Block Styling *******************************************/

.wp-block-columns {
	margin-bottom: 0;
}

.wp-block-columns.has-background {
	padding: var(--l-spacing) var(--xl-spacing);
}

.wp-block-column {
	margin-bottom: var(--m-spacing);
}

.wp-block-column :last-child,
.wp-block-columns.has-background .wp-block-column:last-child,
.wp-block-group.has-background .wp-block-columns .wp-block-column:last-child {
	margin-bottom: 0 !important;
}

.wp-block-column .wp-block-image,
.wp-block-column .is-type-video {
	margin: 0 0 1em;
	text-align: center;
}

.wp-block-column.has-background,
.block-core-columns.has-background {
	padding: var(--s-spacing);
}

.wp-block-column.has-text-color p,
.wp-block-column.has-text-color h2,
.wp-block-column.has-text-color h3,
.wp-block-column.has-text-color h4, 
.wp-block-column.has-text-color ul,
.wp-block-column.has-text-color li {
	color: inherit;
}

@media (max-width: 1200px) {
	
	.wp-block-columns.has-background {
		padding: var(--l-spacing);
	}
	
	.wp-block-columns.alignwide {
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
	}
	
	.wp-block-cover .wp-block-columns.alignwide {
		width: 100%;
		margin-left: 0;
	}
}

@media (max-width: 781px) and (min-width: 600px) {
	
	.wp-block-group.has-background .wp-block-columns .wp-block-column:last-child  {
		margin-bottom: var(--l-spacing) !important;
	}
}

@media (min-width: 600px) {
	
	.wp-block-columns.has-background .wp-block-column {
		margin-bottom: 0 !important;
	}
}

@media (max-width: 480px) {
	
	.wp-block-columns.has-background {
		padding: var(--l-spacing) var(--s-spacing);
	}
}

/************************************ No Stack on Mobile Columns Design ***************************************/

.wp-block-columns.no-stack-mobile {
	flex-wrap: nowrap !important;
}

@media (min-width: 600px) {
	
	.wp-block-columns.no-stack-mobile .wp-block-column:not(:first-child) {
    	margin-left: 2em;
	}
}

@media (max-width: 600px) {
	
	.wp-block-columns.no-stack-mobile {
    	gap: 4%;
	}
}

/*************************************** Equal Height Columns Design ******************************************/

.wp-block-columns.equal-height .wp-block-column {
	flex: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

/*************************************** WP Is Type Video Block Styling ***************************************/

.is-type-video .wp-block-embed__wrapper {
	position: relative;
    padding-bottom: 177.78%;
}

.is-type-video.wp-embed-aspect-16-9 .wp-block-embed__wrapper {
    padding-bottom: 56.25%; /* 16:9 */
}

.is-type-video .wp-block-embed__wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/******************************************* WP Table Block Styling *******************************************/

@media (max-width: 768px) {
	
	figure.wp-block-table {
		display: block!important;
		max-width: 100%;
		overflow: auto;
	}

	figure.wp-block-table table {
		min-width: var(--restricted-width);
	}
}

/**************************************** WP List Block Column Styling ****************************************/

ul.is-style-two-columns {
	column-count: 2;
	column-gap: 4%;
}

ul.is-style-two-columns li:first-child {
	margin-top: 0;
}

ul.is-style-three-columns {
	column-count: 3;
	column-gap: 4%;
}

ul.is-style-three-columns li:first-child {
	margin-top: 0;
}

ul.is-style-four-columns {
	column-count: 4;
	column-gap: 4%;
}

ul.is-style-four-columns li:first-child {
	margin-top: 0;
}

@media (max-width: 992px) {
	
	ul.is-style-two-columns {
		column-count: 1;
	}
	
	ul.is-style-four-columns {
		column-count: 2;
	}
}

@media (max-width: 768px) {
	
	ul.is-style-three-columns {
		column-count: 2;
	}
}

@media (max-width: 480px) {
	
	ul.is-style-two-columns,
	ul.is-style-three-columns,
	ul.is-style-four-columns {
		column-count: 1;
	}
}

/***************************************** Search Widget Block Styles *****************************************/

.wp-block-search {
	margin: var(--l-spacing) 0;
    max-width: 400px;
}

.wp-block-search .wp-block-search__input {
	color: var(--color-dark-text);
    background-color: transparent;
    font-size: 1rem;
    padding: 12px;
    margin: 0;
    border: 2px solid var(--color-primary)
}

.wp-block-search .wp-block-search__button {
	margin-left: -2px;
	color: var(--color-white);
    border-color: var(--color-primary);
	border-width: 2px;
    background-color: var(--color-primary);
}

.wp-block-search .wp-block-search__button:hover {
	color: var(--color-white);
    background-color: var(--color-accent);
    border-color: var(--color-accent);
}

.wp-block-search .wp-block-search__button svg {
	fill: var(--color-white);
	transform: scale(1.8) rotateY(180deg);
}

.wp-block-search .wp-block-search__button:hover svg {
	fill: var(--color-white);
}

/************************************** Gutenberg Block (Backend) Styles **************************************/
.block-editor-block-list__layout .wp-block-cover.restrict-content .wp-block-cover__inner-container {
	background:rgba(255,255,255, 0.7)!important;
}

/****************************************** New Gravity Form Styling ******************************************/
.improvise .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), .improvise .gform_wrapper textarea {
	padding: 8px 16px !important;
}

.improvise .gform_wrapper fieldset.gfield div.ginput_complex span.name_first,
.improvise .gform_wrapper fieldset.gfield div.ginput_complex span.address_line_1, .improvise .gform_wrapper fieldset.gfield div.ginput_complex span.address_city, .improvise .gform_wrapper fieldset.gfield div.ginput_complex span.address_state {
	padding-right: 1% !important;
}

.improvise .gform_wrapper fieldset.gfield div.ginput_complex span.name_last, .improvise .gform_wrapper fieldset.gfield div.ginput_complex span.address_line_2, .improvise .gform_wrapper fieldset.gfield div.ginput_complex span.address_state, .improvise .gform_wrapper fieldset.gfield div.ginput_complex span.address_zip  {
	padding-left: 1% !important;
}

.improvise .gform_wrapper div.ginput_complex.ginput_container_address {
	gap: 0;
}

.improvise .gform_wrapper fieldset.gfield div.ginput_complex span.address_line_1 {
	max-width: 50% !important;
}

.improvise .gform_wrapper fieldset.gfield div.ginput_complex span.address_line_2 {
	max-width: 50% !important;
}

.improvise .gform_wrapper fieldset.gfield div.ginput_complex span.address_city, .improvise .gform_wrapper fieldset.gfield div.ginput_complex span.address_state, .improvise .gform_wrapper fieldset.gfield div.ginput_complex span.address_zip {
	max-width: 33.33%;
}

.improvise .gform_wrapper fieldset.gfield select, .improvise .gform_wrapper select {
	padding: 8px 16px !important;
	font-size: 1rem;
	border-radius: 5px !important;
}

.improvise .gform_wrapper .ginput_container_select:after {
	height: 13px;
}

.improvise .gform_wrapper fieldset.gfield .ginput_address_state {
	position: relative;
}

.improvise .gform_wrapper fieldset.gfield .ginput_address_state:after {
	height: 13px;
	background-image: url(https://speechprotectionunion.com/wp-content/themes/improvise/images/down-arrow-black.png);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  position: absolute;
  right: 16px;
  top: 16px;
  width: 18px;
}

.improvise .gform_wrapper fieldset.gfield .gfield_radio input,
.improvise .gform_wrapper fieldset.gfield .gfield_checkbox input,
.gform_wrapper.gravity-theme .gfield_checkbox input {
	width: 16px !important;
	height: 16px;
}

.gform_wrapper.gravity-theme .gform_page_footer {
	display: flex;
	justify-content: space-evenly;
	padding-top: 30px;
	margin-top: 30px;
	border-top: 2px solid var(--color-light-text);
}

.improvise .gform_wrapper input[type=submit],
.improvise .gform_wrapper input[type=button],
.gform_wrapper.gravity-theme .gform_previous_button.button {
	color: white;
	max-width: 300px;
	font-size: 1rem !important;
	text-transform: uppercase;
	font-weight: bold;
	border-radius: 5px;
	font-family: var(--font-primary-heading) !important;
	padding: 8px 16px;
}

.gform_wrapper.gravity-theme .gform_previous_button.button {
	background-color: var(--color-primary);
}

.gform_wrapper.gravity-theme .gform_previous_button.button:hover {
	background-color: var(--color-accent);
}

.improvise .gform_wrapper.gravity-theme .ginput_container_address {
	margin-left: 0;
	margin-right: 0;
}

.improvise .gform_wrapper.gravity-theme .gfield {
	padding: 0 2px;
}

.improvise .gform_wrapper div.ginput_complex.ginput_container_password span {
	width: 100% !important;
}

.improvise .gform_wrapper div.ginput_complex.ginput_container_password span.ginput_left {
	padding-right: 8px !important;
}

.improvise .gform_wrapper div.ginput_complex.ginput_container_password span.ginput_right {
	padding-left: 8px !important;
}

.improvise .gfield_password_strength {
	padding: 0;
	border: 0;
	font-weight: bold;
}

.improvise .gfield_password_strength.bad {
	background-color: red;
	color: white;
}

.improvise .gfield_password_strength.short {
	background-color: #e3e3e3;
}

.improvise .gfield_password_strength.good {
	background-color: yellow !important;
}

.improvise .gfield_password_strength.strong {
	background-color: green !important;
	color: white;
}

h3.gsection_title {
	margin-bottom: 0;
	margin-top: var(--m-spacing);
}

.improvise .gform_wrapper.gravity-theme .gfield_label {
	margin-bottom: 0;
}