/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/


/*
Grindstone Design - https://grindstone.design

Global Ele Vars
--e-global-color-primary
--e-global-color-secondary
--e-global-color-text
--e-global-color-accent
--e-global-color-custom
--e-global-font-family
--e-global-font-size
--e-global-line-height
--e-global-letter-spacing

Custom Global Ele Vars
Very Light Gray: 	--e-global-color-8bebe98	#EFEFEF
Neutral Light Gray:	--e-global-color-af861f2	#DCDDDE
Medium Gray: 		--e-global-color-1140061	#9D9FA2
Dark Gray: 			--e-global-color-93c4931	#656565
White Text:			--e-global-color-870352d	#FFFFFF

To Investigate Maybe Use:

--e-global-typography-primary-font-family
--e-global-typography-primary-font-weight
--e-global-typography-secondary-font-family
--e-global-typography-secondary-font-weight
--e-global-typography-accent-font-family
--e-global-typography-accent-font-weight

--e-a-border-radius
*/

/***********Main Container Paddings / Breakpoints***********/
/**TODO: decide if -top, -right, -bottom, -left can be removed;**/
/**Desktop Container | 1600px - Padded to 1400px**/
/*100px by 60px - 100px by 30px (x2)*/
/*6.25rem by 3.75rem - 6.25rem by 1.875rem (x2)*/
@media all and (min-width: 1621px) {
	.e-con > .e-con-inner {
		margin-top: 10px; /*net 30px, 10px of .e-con padding x 2 (outter+inner container)*/
		margin-block-start: 10px;
		margin-bottom: 10px;
		margin-block-end: 10px;
		padding-left: 90px; /*net 100px, 10px of .e-con*/
		padding-inline-start: 90px;
		padding-right: 90px;
		padding-inline-end: 90px;
	}
	/*TODO, remove where set on 1600px only things, make permanent somehow.... this class is needed in general .gd-nopadding-col.e-con { /*maybe should be permanent... yeah... for gd-no-con-padding it should be for ?
		padding-left: 0 !important;
		padding-right: 0 !important;
	}*/
}
@media all and (max-width: 1620px) and (min-width: 1441px) {
	.e-con > .e-con-inner {
		margin-top: 10px; /*net 30px*/
		margin-block-start: 10px;
		margin-bottom: 10px;
		margin-block-end: 10px;
		padding-left: 80px;
		padding-inline-start: 80px; /*net 100px*/
		padding-right: 80px;
		padding-inline-end: 80px;
	}
}
/**Laptop Container | 1440px - Padded to 1344px**/
/*48px by 40px - 48px by 20px (x2)*/
/*3rem by 2.5rem - 3rem by 1.25rem (x2)*/
/**Said another way.... 40px between sections, 20px each side (10px Outter Ele Container, 10px Inner Ele Container, 10px added here to .e-con-inner / 2)**/
@media all and (max-width: 1440px) {
	.e-con > .e-con-inner {
		margin-top: 5px;
		margin-block-start: 5px;
		margin-bottom: 5px;
		margin-block-end: 5px;
	}
}
@media all and (max-width: 1440px) and (min-width: 1025px) {
	.e-con > .e-con-inner {
		padding-left: 28px;
		padding-inline-start: 28px;
		padding-right: 28px;
		padding-inline-end: 28px;
	}
}
/**Tablet Portrait Container | 1024px - Padded to 960px**/
/*32px x 40px - 32px by 20px (x2)*/
/*2rem by 2.5rem - 2rem by 1.25rem (x2)*/
@media all and (max-width: 1024px) and (min-width: 768px) {
	.e-con > .e-con-inner {
		padding-left: 12px;
		padding-inline-start: 12px;
		padding-right: 12px;
		padding-inline-end: 12px;
	}
}
/**Mobile Portraint Container | 767px - Padded to 719px**/
/*24px x 40px - 24px by 20px (x2)*/
/*1.5rem by 2.5rem - 1.5rem by 1.25rem (x2)*/
/*potentially move to 1.5rem by 2rem ~ would require maring top/bottom 6px (3px each) statements*/
@media all and (max-width: 767px) {
	.e-con > .e-con-inner {
		padding-left: 4px;
		padding-inline-start: 4px;
		padding-right: 4px;
		padding-inline-end: 4px;
	}
}
/*Sometimes containers need to create a top/bottom margin to properly "pad" adjacent, non-seamless, containers*/
/*Sometimes containers need to create a top/bottom padding when they have a full color/image background and no inner-container(s)*/
@media all and (min-width: 1441px) {
	.gd-extra-margin-top.e-con {
		margin-block-start: 30px;
		margin-top: 30px;
	}
	.gd-extra-margin-bottom.e-con {
		margin-block-end: 30px;
		margin-bottom: 30px;
	}
	.gd-extra-padding-top.e-con {
		padding-block-start: 30px;
		padding-top: 30px;
	}
	.gd-extra-padding-bottom.e-con {
		padding-block-end: 30px;
		padding-bottom: 30px;
	}
}
@media all and (max-width: 1440px) {
	.gd-extra-margin-top.e-con {
		margin-block-start: 20px;
		margin-top: 20px;
	}
	.gd-extra-margin-bottom.e-con {
		margin-block-end: 20px;
		margin-bottom: 20px;
	}
	.gd-extra-padding-top.e-con {
		padding-block-start: 15px;
		padding-top: 15px;
	}
	.gd-extra-padding-bottom.e-con {
		padding-block-end: 15px;
		padding-bottom: 15px;
	}
}

/*IF Mobile frame changes to 24px by 32px*/
/*
@media all and (max-width: 767px) {
	.gd-extra-margin-top.e-con {
		margin-block-start: 6px;
		margin-top: 6px;
	}
	.gd-extra-margin-bottom.e-con {
		margin-block-end: 6px;
		margin-bottom: 6px;
	}
	.gd-extra-padding-top.e-con {
		padding-block-start: 6px;
		padding-top: 6px;
	}
	.gd-extra-padding-bottom.e-con {
		padding-block-end: 6px;
		padding-bottom: 6px;
	}
}
*/


/*Remove left/right Container Padding - For 1600px Wide Things (Boxed Containers)*/
/*Use an inner Boxed Container w/ gd-nopadding-col for proper Content margins/paddings -- is this still true?*/
.gd-no-con-padding.e-con {
	padding-left: 0;
	padding-inline-start: 0;
	padding-right: 0;
	padding-inline-end: 0;
}
.gd-no-con-padding.e-con > .e-con-inner {
	padding-left: 0;
	padding-inline-start: 0;
	padding-right: 0;
	padding-inline-end: 0;
}
/*Sometimes Adjacent 1600px or Full Width containers needs to have a seamless top or bottom edge*/
.gd-no-con-padding.seamless-top.e-con > .e-con-inner {
	margin-top: 0;
	margin-block-start: 0;
	padding-top: 0;
	padding-block-start: 0;
}
.gd-no-con-padding.seamless-bottom.e-con > .e-con-inner {
	margin-bottom: 0;
	margin-block-end: 0;
	padding-bottom: 0;
	padding-block-end: 0;
}

/*Sometimes the container needs to be seamless on Mobile, regardless  if gd-no-con-padding was used*/
@media all and (max-width: 767px) {
	.gd-seamless-top-mobile.e-con > .e-con-inner {
		margin-top: 0;
		margin-block-start: 0;
		padding-top: 0;
		padding-block-start: 0;
	}
	.gd-seamless-bottom-mobile.e-con > .e-con-inner {
		margin-bottom: 0;
		margin-block-end: 0;
		padding-bottom: 0;
		padding-block-end: 0;
	}
}


/***********Globals**********/
html {
	scroll-behavior: smooth;
}
/*a {
	transition: 0.3s;
}*/

/***********Header***********/
/**Mega Menu**/
/*Search Box*/
#gd-mobile-search .e-search .e-search-form {
	margin-bottom: 0;
}
/*Parent Items*/
#gd-plus-megamenu .plus-navigation-wrap ul.navbar-nav > li {
	/*position: relative;*/
}
@media all and (min-width: 1601px) {
	#gd-plus-megamenu .plus-navigation-wrap .plus-navigation-menu ul.navbar-nav > li > a {
		padding: 40px !important;
	}
}

#gd-plus-megamenu .plus-navigation-wrap .plus-navigation-menu ul.navbar-nav > li.menu-item-has-children.open-menu a.dropdown-toggle::after {
	content: "\f106";
}
/*Inside - Expanded*/
#gd-plus-megamenu .gd-submenu-title .elementor-heading-title a:hover {
	color: var(--e-global-color-accent);
}
#gd-plus-megamenu .elementor-widget-nav-menu .elementor-nav-menu a {
	padding: 0.75rem 0.75rem 0.75rem 0;
}
#gd-plus-megamenu .gd-flex-2col .elementor-nav-menu > li {
	width: 50%;
	flex-basis: 50%;
}
/*Mobile*/
@media all and (max-width: 1024px) {

}
#gd-plus-megamenu .plus-mobile-nav-toggle {
	padding-right: 1rem;
}
#gd-plus-megamenu .plus-mobile-menu {
	/*z-index: 3; -- needed for pages with no content where sticky footer gets parked and the links end up on top of the mobile menu*/
}
/*First Level*/
/*whack box-shadows*/
#gd-plus-megamenu .plus-mobile-menu ul.navbar-nav li.depth-0 {
	box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.15);
}
#gd-plus-megamenu .plus-mobile-menu ul.navbar-nav li.depth-0:first-child {
	z-index: 6;
}
#gd-plus-megamenu .plus-mobile-menu ul.navbar-nav li.depth-0:nth-child(2) {
	z-index: 5;
}
#gd-plus-megamenu .plus-mobile-menu ul.navbar-nav li.depth-0:nth-child(3) {
	z-index: 4;
}
#gd-plus-megamenu .plus-mobile-menu ul.navbar-nav li.depth-0:nth-child(4) {
	z-index: 3;
}
#gd-plus-megamenu .plus-mobile-menu ul.navbar-nav li.depth-0:nth-child(5) {
	z-index: 2;
}
/*END whack box-shadows*/
/*Second Level*/
#gd-plus-megamenu .plus-mobile-menu .plus-megamenu-content > .elementor > .elementor-element {
	background-color: #d9d9d9; /*Neutral Gray is closest var --e-global-color-af861f2*/
}
#gd-plus-megamenu .plus-mobile-menu .plus-megamenu-content .elementor-widget-heading a, #gd-plus-megamenu .plus-mobile-menu .plus-megamenu-content .elementor-widget-nav-menu li.menu-item a {
	color: var(--e-global-color-primary);
}	
#gd-plus-megamenu .plus-mobile-menu .plus-megamenu-content .e-con-inner {
	padding: 0;
}

/**Top Nav Icons + Quick Nav**/
.gd-topnav-buttons .elementor-icon-wrapper {
	background: var(--e-global-color-accent);
    padding: 0.65rem;
    border-radius: 50%;
    width: 45px;
    height: 45px;
}
.gd-topnav-buttons .elementor-widget-nav-menu .elementor-nav-menu li:first-child a {
	padding-left: 0;
}
.gd-topnav-buttons .elementor-widget-nav-menu .elementor-nav-menu li:last-child a {
	padding-right: 0;
}
@media all and (max-width: 1440px) {
	.gd-topnav-buttons .elementor-widget-nav-menu .elementor-nav-menu a {
		padding: 13px 10px;
	}
}

/***********Footer***********/
#gd-footer {
	z-index: 100;
}
.gd-footer-col-nav .elementor-nav-menu li.menu-item a {
	padding: 0.6rem 20px 0.6rem 0;
}

.gd-footer-form .gform_body .ginput_container_email > input {
	text-align: center;
}

.gd-footer-form  .gform_wrapper .gform_footer {
    justify-content: center;
}

#lp-footer-copyright .elementor-shortcode {
	color: #FFFFFF;
	text-align: center;
	font-size: 13px;
}

/*Mobile*/
@media all and (max-width: 767px) {
	.gd-footer-quicknav .elementor-widget-container {
		margin-left: -20px;
		margin-right: -20px;
	}
	/*#gd-footer > .e-con-inner > .elementor-element {
		padding-left: 0;
		padding-right: 0;
	}*/
	#gd-footer .elementor-widget-nav-menu:not(.gd-footer-quicknav) ul.elementor-nav-menu {
		display: flex;
		flex-wrap: wrap;
	}

	#gd-footer .elementor-widget-nav-menu:not(.gd-footer-quicknav) ul.elementor-nav-menu > li {
		width: 50%;
    	flex-basis: 50%;
	}

	#gd-footer .elementor-heading-title {
		text-align: center;
	}
}

/******************************Pages / Page Templates*****************************/
/****************************/
/**********Home Page*********/

@media all and (max-width: 767px) {
	.gd-home-hero-text h1.elementor-heading-title {
		font-size: 82px; /*goes to 3 lines at ~465px*/
	}
}
/*Background Triangle Accent - Move to Modules?*/
.gd-background-accent::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.gd-background-accent.primary::before {
	background-color: var(--e-global-color-primary);
}
.gd-background-accent.secondary::before {
	background-color: var(--e-global-color-secondary);
}
@media all and (min-width: 768px) {
	.gd-background-accent.left::before {
		clip-path: polygon(30% 0, 100% 0, 100% 100%, 0% 100%);
	}
	.gd-background-accent.right::before {
		clip-path: polygon(0 0, 100% 0, 70% 100%, 0% 100%);
	}
}
@media all and (max-width: 767px) {
	.gd-background-accent.mobile-remove-bg::before {
		display: none;
	}
}

/*Flipbox Program Blocks*/
.gd-program-flipbox.elementor-widget-flip-box .elementor-widget-container .elementor-flip-box {
	max-width: 260px;
	margin: 0 auto;
}
.gd-program-flipbox .elementor-flip-box__layer {
	box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
}

/*Front*/
.gd-program-flipbox .elementor-flip-box__front .elementor-flip-box__layer__inner {
	height: 100%;
}

.gd-program-flipbox .elementor-flip-box__front .elementor-flip-box__image {
	position: relative;
}
.gd-program-flipbox .elementor-flip-box__front .elementor-flip-box__image::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 4px 4px 0 0;
	background-color: var(--e-global-color-primary);
	opacity: 0.25;
}


.gd-program-flipbox .elementor-flip-box__front .elementor-flip-box__layer__title {
	/*font-family: "Metropolis Black", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;*/
	padding-top: 0.5rem;
}
.gd-program-flipbox .elementor-flip-box__front .elementor-flip-box__layer__description {
	padding: 0 1.25rem;
}

/*Back*/
.gd-program-flipbox .elementor-flip-box__back .elementor-flip-box__layer__title {
	text-align: center;
}
.gd-program-flipbox .elementor-flip-box__back .elementor-flip-box__layer__description h4 {
	font-family: "Metropolis", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
	font-size: 20px;
	font-weight: 500;
	letter-spacing: -0.02em;
	text-transform: initial;
	text-align: center;
	min-height: 40px;
	margin-top: 0;
	margin-bottom: 0.5rem;
}
.gd-program-flipbox .elementor-flip-box__back .elementor-flip-box__layer__description div {
	width: 50%;
	display: inline-block;
}
.gd-program-flipbox .elementor-flip-box__back .elementor-flip-box__layer__description div:last-child {
	float: right;
	padding-left:1.25rem;
}

.gd-program-flipbox .elementor-flip-box__back .elementor-flip-box__layer__description strong {
	font-family: "Metropolis Black", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
}
.gd-program-flipbox .elementor-flip-box__back .elementor-flip-box__layer__description p {
	margin-bottom: 0.5rem;
}
.gd-program-flipbox  .elementor-flip-box__back .elementor-flip-box__button {
	display: block;
	margin-top: 0.5rem;
	padding-left: 0;
	padding-right: 0;
}
.gd-program-flipbox  .elementor-flip-box__back .elementor-flip-box__button:hover {
	background-color: #D3470B;
}



/*Program Blocks - Non-Flipbox - Large Blocks + Mobile Blocks*/

.gd-program-block.gd-260 {
	max-width: 260px !important;
}
@media all and (min-width: 768px) {
	.gd-program-block.gd-530 {
		max-width: 530px !important;
	}
}
.gd-program-block {
	padding: 0;
	border-radius: 4px;
}
.gd-program-block .elementor-widget-image img {
	border-radius: 4px 4px 0 0;
	position: relative;
}
@media all and (max-width: 767px) {
	.gd-program-block.gd-530 .elementor-widget-image img {
		border-radius: 0;
	}
}
.gd-program-block .elementor-widget-image::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 4px 4px 0 0;
	background-color: var(--e-global-color-primary);
	opacity: 0.25;
	transition: 0.3s;
}
.gd-program-block .elementor-widget-text-editor .elementor-widget-container {
	background-color: var(--e-global-color-primary);
	padding-top: 0.6rem;
	transition: 0.3s;
}
.gd-program-block .elementor-widget-text-editor p {
	margin-bottom: 0;
}
.gd-program-block .elementor-widget-heading .elementor-widget-container {
	background-color: var(--e-global-color-primary);
	padding-bottom: 0;
	padding-right: 1.25rem;
	padding-left: 1.25rem;
	transition: 0.3s;
	flex-grow: 1;
	min-height: 52px; /*For CSS Grid to force 2 lines -- 3 lines = 72px*/
	/*Chrome bug <div>'s not seamless
	padding-top: 1px;
	margin-top: -1px;
	*/
}
.gd-program-block .elementor-element:last-child .elementor-widget-container {
	border-radius: 0 0 4px 4px;
}
.gd-program-block .elementor-widget-button .elementor-widget-container {
	background-color: var(--e-global-color-primary);
	border-radius: 0 0 4px 4px;
	transition: 0.3s;
}
/*Hover*/
.gd-program-block.gd-hover:hover .elementor-widget-image::after {
	opacity: 0;
	transition: 0.3s;
}
.gd-program-block.gd-hover:hover .elementor-widget-text-editor .elementor-widget-container, .gd-program-block.gd-hover:hover .elementor-widget-heading .elementor-widget-container, .gd-program-block.gd-hover:hover .elementor-widget-button .elementor-widget-container {
	background-color: var(--e-global-color-af861f2) !important;
	transition: 0.3s;
}
.gd-program-block.gd-hover:hover .elementor-widget-text-editor p, .gd-program-block.gd-hover:hover .elementor-widget-heading .elementor-heading-title {
	color: var(--e-global-color-primary) !important;
	transition: 0.3s;
}
/*Mobile Sliders*/
.gd-program-block-mobile-container {
	padding: 0 0 0 10px;
}

.gd-program-block-mobile-container .slick-list {
	padding: 0 30% 0 0 !important;
}

@media all and (max-width: 480px) {
	.gd-program-block-mobile-container .slick-list {
		padding: 0 20% 0 0 !important;
	}
}

/*Checkmark Items*/
.gd-checkmark-items .elementor-icon-list-icon svg {
	filter: drop-shadow(0px 2px 7px rgba(0, 0, 0, 0.09));
}

/********Programs Page*******/
/*Program Cards*/

.gd-program-card {
	max-width: 380px !important;
	padding: 0;
	border-radius: 4px;
	box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.25);
	/*margin: 0.7rem;*/
}

.gd-program-card .elementor-widget-image img {
	border-radius: 4px 4px 0 0;
	position: relative;
}
.gd-program-card .elementor-widget-image::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 4px 4px 0 0;
	background-color: var(--e-global-color-primary);
	opacity: 0.25;
	/*transition: 0.3s;*/
}
/*.gd-program-card .gd-program-card-facts {

}*/

.gd-program-card-mobile-container {
	padding: 0 0 0 10px;
}

.gd-program-card-mobile-container .slick-list {
	padding: 0 10% 0 0 !important;
}

.gd-program-card .elementor-widget-button {
	flex-grow: 1;
}

.gd-program-card .elementor-widget-button .elementor-button-wrapper a.elementor-button:hover {
	background-color: var(--e-global-color-93c4931);
}

.gd-program-card .elementor-widget-button .elementor-widget-container {
	display: flex;
    align-items: flex-end;
    justify-content: center;
	border-radius: 0 0 4px 4px;
}

/*media all and (min-width: 768px) {
	.flex-33-50 .gd-program-card{
		flex-basis: 33.3%;
	}
}*/


/*******Program Pages********/

.gd-quick-facts-apply {
	padding: 0 0 1rem 0;
}

/*******Admissions Page******/
.gd-icon-info-box .info-icon-content .service-icon {
	width: 125px;
	height: 125px;
}


/*******Blog - Main List Page********/
.gd-blog-filter .e-filter button.e-filter-item::after {
	padding-left: 24px;
}
.gd-blog-filter .e-filter button.e-filter-item[aria-pressed="false"]::after {
	content: url("/wp-content/uploads/gd-theme/inactive-enable.svg");
}

.gd-blog-filter .e-filter button.e-filter-item[aria-pressed="true"]::after {
	content: url("/wp-content/uploads/gd-theme/active-disable.svg");
}


/***********************************Modules***************************************/

/******Ele Widget Styles*****/
/*Accordion*/
.gd-accordion .elementor-accordion .elementor-accordion-item .elementor-tab-title:not(.elementor-active) {
	background-color: var(--e-global-color-93c4931);
}
.gd-accordion .elementor-accordion .elementor-accordion-item {
	border: none;
}
.gd-accordion .elementor-accordion .elementor-accordion-item .elementor-tab-title:hover {
	background-color: var(--e-global-color-accent);
}
.gd-accordion.flush-left .elementor-accordion .elementor-tab-content {
	padding-left: 0;
}

/*Testimonial Carousel*/
.gd-testimonial-carousel .elementor-swiper .elementor-swiper-button {
    background-color: var(--e-global-color-primary);
    border-radius: 50%;
    padding: 1rem;
}
.gd-testimonial-carousel .elementor-swiper .elementor-testimonial {
	align-items: center;
}
@media all and (max-width: 1024px) {
	.gd-testimonial-carousel .elementor-swiper .elementor-testimonial {
		flex-direction: column-reverse;
		text-align: center;
	}
	.gd-testimonial-carousel .elementor-swiper .elementor-testimonial__footer {
		padding-bottom: 1.75rem;
		padding-right: 0 !important;
	}
}
@media all and (max-width: 767px) {
	/*.gd-testimonial-carousel .elementor-testimonial__image {
		display: none;
	}*/
	.gd-testimonial-carousel .elementor-swiper .elementor-swiper-button {
		display: none;
	}
	.gd-testimonial-carousel .elementor-main-swiper .swiper-slide {
		padding: 1rem !important;
	}
}

/*Icon List*/
.gd-icon-list .elementor-icon-list-items .elementor-icon-list-item {
	padding: 0.6rem 0;
}
.gd-icon-list .elementor-icon-list-icon {
	background: var(--e-global-color-primary);
	padding: 1.2rem;
	border-radius: 50%;
	width: 86px;
	height: 86px;
}
.gd-icon-list.elementor-widget-icon-list .elementor-icon-list-icon svg {
	display: block;
	margin: auto !important;
}
.gd-icon-list.elementor-widget .elementor-icon-list-icon + .elementor-icon-list-text {
	align-self: flex-start;
	padding-left: 1.5rem;
}
@media all and (min-width: 768px) {
	.gd-icon-list.elementor-widget .elementor-icon-list-icon + .elementor-icon-list-text {
		max-width: 85%;
	}
}
.gd-icon-list .elementor-icon-list-text h4 {
	margin-bottom: 0;
}
@media all and (max-width: 767px) {
	.gd-icon-list .elementor-icon-list-item {
		flex-direction: column;
	}
	.gd-icon-list.elementor-widget .elementor-icon-list-item .elementor-icon-list-text {
		text-align: center;
		padding: 1rem 0 !important;
	}
}

/*Tabs - tabbed content*/
.gd-tabs .elementor-tabs .elementor-tab-title:hover  {
	background-color: var(--e-global-color-accent);
	color: var(--e-global-color-870352d); /*FFFFFF*/
	box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.15);
}
.gd-tabs.dark .elementor-tabs .elementor-tab-title.elementor-active  {
	background-color: var(--e-global-color-af861f2);
	box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.15);
}
.gd-tabs.light .elementor-tabs .elementor-tab-title.elementor-active  {
	background-color: var(--e-global-color-primary);
	box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.15);
}

@media all and (min-width: 768px) {
	.gd-tabs.elementor-widget-tabs.elementor-tabs-view-vertical .elementor-tabs-content-wrapper {
		padding-left: 10%;
	}
	.gd-tabs.elementor-widget-tabs .elementor-tabs-content-wrapper .elementor-tab-content, .gd-tabs-form .elementor-widget-container {
		padding-left: 1.2rem;
	}
}
.gd-tabs .elementor-tabs .elementor-tab-title  {
	padding-top: 1rem;/*are the mobile settings fine for desktop too?*/
    padding-bottom: 1rem;
    margin: 0.25rem 0;
	border-radius: 4px;
}

@media all and (max-width: 767px) {

	.gd-tabs .elementor-tabs .elementor-tab-title.elementor-tab-mobile-title {
		padding: 0.8rem;
		margin: 0.5rem 0;
		position: relative;
	}
	.gd-tabs.dark .elementor-tabs .elementor-tab-title.elementor-tab-mobile-title:not(.elementor-active) {
		background-color: var(--e-global-color-1140061);
	}
	.gd-tabs.light .elementor-tabs .elementor-tab-title.elementor-tab-mobile-title:not(.elementor-active) {
		background-color: var(--e-global-color-af861f2);
	}
	.gd-tabs .elementor-tabs .elementor-tab-title.elementor-tab-mobile-title::after {
		content: "\f107";
		right: 12px;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	    display: inline-block;
	    font: normal normal normal 14px / 1 'Font Awesome 5 Free';
	    font-weight: 600;
	    font-size: inherit;
	    vertical-align: middle;
	    padding-left: 5px;
	    transition: all 0.3s ease-in-out;
	}
	.gd-tabs .elementor-tabs .elementor-tab-title.elementor-tab-mobile-title.elementor-active::after {
		content: "\f106";
	}
}

/***********Forms************/
/*Landing Page*/
.gd-landing-form form {
	margin-block-end: 0;
}

.gd-landing-form form input::placeholder, .gd-landing-form form select::placeholder {
	/*color: var(--e-global-color-primary);*/
	/*color: red; I guess there's something about ::placeholder that I don't understand*/
}

.gd-landing-form form select {
	background-color: var(--e-global-color-af861f2) !important;
}

.gd-landing-form .gform_footer.before {
	justify-content: center;
	padding-top: 2rem !important;
}

/*Refer a Friend*/
.gd-refer-friend-form .gfield_consent_label {
	color: var(--e-global-color-870352d);
	font-size: 14px;
    display: inline;
}
@media all and (min-width: 1441px) {
	.gd-refer-friend-form .gfield--type-consent {
		width: 50%;
	}
	.gd-refer-friend-form .gform_footer {
		justify-content: flex-end;
		position: relative;
	}
	.gd-refer-friend-form .gform_footer > .gform_button {
		/*position: absolute;*/
		/*right: 0;*/
		/*top: -50px;*/
	}
}
@media all and (max-width: 767px) {
	.gd-background-accent.mobile-remove-bg .gd-refer-friend-form .gfield_consent_label {
		color: #656565;
	}
	.gd-refer-friend-form .gform_footer {
		justify-content: center;
	}
}

/*Tabbed Content - Embedded Form*/
/*BEGIN Hacky Code For The Love Of Design*/
.gd-embedded-form .gform_wrapper > form {
	display: flex;
	align-items: center;
}
.gd-embedded-form .gform_wrapper .gform_body #field_2_1 {
	width: 518px;
}
.gd-embedded-form .gform_wrapper .gform_body, .gd-embedded-form .gform_wrapper .gform_body #field_2_3 {
	width: 375px;
}
.gd-embedded-form .gform_wrapper > form .gform_footer {
	padding-left: 1rem;
	padding-bottom: 21px;
}
@media all and (max-width: 1024px) {
	.gd-embedded-form .gform_wrapper > form {
		display: inherit;
	}
	.gd-embedded-form .gform_wrapper .gform_body #field_2_1 {
		width: 100%;
	}
	.gd-embedded-form .gform_wrapper .gform_body, .gd-embedded-form .gform_wrapper .gform_body #field_2_3 {
		width: 100%;
	}
	.gd-embedded-form .gform_wrapper > form .gform_footer {
		padding-left: 0;
		padding-bottom: 0;
		justify-content: center;
	}
}
/*END Hacky Code For The Love Of Design*/
.gd-embedded-form .gform_wrapper > form input[type="submit"] {
    padding: 0.6rem 2rem 0.6rem 2rem;
    margin-bottom: 3px;
}
.gd-embedded-form .gform_wrapper > form .gform-field-label--type-inline.gfield_consent_label {
	font-family: 'Metropolis';
	font-size: 14px;
	display: inline;
}

.gd-embedded-form.dark .gform_wrapper > form .gform-field-label--type-inline.gfield_consent_label {
	color: var(--e-global-color-870352d);
}

/******Layout Adjustments****/
/*Basic Margins/Paddings*/
.gd-nomargin-all {
	margin: 0 !important;
}
.gd-nomargin-bottom {
	margin-bottom: 0 !important;
}
.gd-nomargin-bottom.p p {
	margin-block-end: 0;
}
.gd-nomargin-top {
	margin-top: 0 !important;
}
.gd-nopadding-all {
	padding: 0 !important;
}
.gd-nopadding-bottom { /*do this for all? use .elementor-widget-container instread? ---- , .gd-nopadding-bottom > .elementor-widget-wrap*/
	padding-bottom: 0 !important;
	padding-inline-end: 0 !important;/*do for all?*/
}
.gd-nopadding-top {
	padding-top: 0 !important;
}
.gd-nopadding-left {
	padding-left: 0 !important;
}
.gd-nopadding-right {
	padding-right: 0 !important;
}
.gd-nopadding-col.e-con {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

@media all and (min-width: 768px) {
	.gd-onepadding-top {
		padding-top: 1.75rem;
	}
	.gd-onepadding-bottom {
		padding-bottom: 1.75rem;
	}
	.gd-onepadding-right {
		padding-right: 1.75rem !important;
	}
	.gd-onepadding-left {
		padding-left: 1.75rem !important;
	}
	.gd-onemargin-top {
		padding-bottom: 1.75rem;
	}
	.gd-onemargin-bottom {
		padding-bottom: 1.75rem;
	}
}
@media all and (max-width: 767px) {
	.gd-mobile-force-fw {
	    width: 100vw;
	    margin-left: -24px;
	}
}

/*CSS Grid Non-Mobile*/
@media all and (min-width: 768px) {
	.gd-justify-self-end {
		justify-self: end;
	}
	.gd-justify-self-start {
		justify-self: start;
	}
	.gd-grid-col-1-3 {
		grid-column: 1 / 3;
		width: 50%; /*maybe be it's own class*/
	}
}

/*CSS Grid Tablet Only*/
@media all and (max-width: 1024px) and (min-width: 768px) {
	.gd-grid-col-1-3-tablet {
		grid-column: 1 / 3;
		width: 50%; /*maybe be it's own class*/
	}
}

/*Hide Background Image on Mobile*/
@media all and (max-width: 767px) {
	.gd-no-bg-mobile {
		background-image: none !important;
	}
	.gd-no-bg-mobile.dark {
		background-color: var(--e-global-color-primary); 
	}
	.gd-no-bg-mobile.light {
		background-color: var(--e-global-color-8bebe98);
	}
	.gd-no-bg-mobile.dark .elementor-widget-text-editor, .gd-no-bg-mobile.dark .elementor-widget-heading .elementor-heading-title {
		color: var(--e-global-color-870352d); /*FFFFFF*/
	}
	.gd-no-bg-mobile.light .elementor-widget-heading .elementor-heading-title, .gd-no-bg-mobile.light .elementor-widget-text-editor {
		color: var(--e-global-color-primary);
	}
	.gd-no-bg-mobile.dark.home .elementor-widget-heading .elementor-heading-title span {
		color: var(--e-global-color-1140061); /*9D9FA2*/
	}
	.gd-no-bg-mobile.dark.home .elementor-widget-heading .elementor-heading-title {
		color: var(--e-global-color-af861f2); /*DCDDDE*/
	}
}
/*Gravity Forms Overrides*/
@media only screen and (max-width: 641px) {
    .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]) {
        line-height: inherit !important;
        min-height: inherit !important;
    }
}
/*********Box Stylers*******/
.gd-box-drop-shadow {
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.15);
}

/*********Text Stylers*******/

.gd-header-drop-shadow {
	text-shadow: 0px 1px 2.5px rgba(0, 0, 0, 0.1);
}

.gd-button-no-box-shadow .elementor-button {
	box-shadow: none !important;
}

.gd-h3-minus, h3.gd-h3-minus {
	font-family: var(--e-global-typography-ef3ae66-font-family), -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
    font-size: var(--e-global-typography-ef3ae66-font-size);
    font-weight: var(--e-global-typography-ef3ae66-font-weight);
    text-transform: var(--e-global-typography-ef3ae66-text-transform);
    line-height: var(--e-global-typography-ef3ae66-line-height);
    letter-spacing: var(--e-global-typography-ef3ae66-letter-spacing);
}

ul.gd-ul-indent-20 {
	padding-inline-start: 20px;
}

li.gd-marker-30::marker {
	font-size: 30px;
}

.gd-button2link.dark a.elementor-button {
    padding: 0;
    background-color: transparent;
    color: var(--e-global-color-primary);
    border-radius: 0;
    border-bottom: 2px solid var(--e-global-color-primary);
}

strong.metro-black {
	font-family: "Metropolis Black", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
}
.gd.nomargin {
	margin: 0; /*mostly for inline p tags*/
}
.gd-underline {
	text-decoration: underline !important;
}
.gd-linkify {
	font-family: "din-2014", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
	font-size: 18px;
	font-weight: 800;
	text-transform: uppercase;
	border-bottom: 2px solid;
	letter-spacing: 0em;
}
.gd-linkify.accent {
	color: var(--e-global-color-accent);
}
.gd-linkify.accent:hover {
	color: var(--e-global-color-870352d);
}

.gd-linkify.white {
	color: var(--e-global-color-870352d);
}

.gd-linkify.white:hover {
	color: var(--e-global-color-accent);
}
a.gd-primary-link {
	color: var(--e-global-color-primary);
	text-decoration: underline;
}
a.gd-primary-link:hover {
	color: var(--e-global-color-accent);
	text-decoration: underline;
}

@media only screen and (max-width: 767px) {
	.gd-mobile-unbutton .elementor-button {
		background: transparent;
	}
	.gd-mobile-unbutton .elementor-button .elementor-button-text {
		border-bottom: 2px solid;
	}
}
/********Image Stylers*******/
.gd-logo-220 img {
	width: 100%;
	max-width: 220px;
}

.gd-logo-250 img {
	width: 100%;
	max-width: 250px;
}

.gd-logo-245 img {
	width: 100%;
	max-width: 245px;
}

/********Elementor Overrides {*******/
.elementor-kit-8 button:focus {
    background-color: inherit;
}
.elementor-widget-image a img[src$=".svg"] {
    width: inherit;
}
/****eicons example****/
/*
https://github.com/elementor/elementor-icons/blob/master/scss/_icons.scss
#gd-plus-megamenu .plus-navigation-wrap ul.navbar-nav li.menu-item-has-children::after {
	content: '\e92a';
	font-family: 'eicons';
	color: var(--e-global-color-870352d);
	position: absolute;
    right: -10px;
    bottom: 25%;
}

#gd-plus-megamenu .plus-navigation-wrap ul.navbar-nav li.menu-item-has-children.open-menu::after {
	content: '\e90b';
}
*/