/*
Theme Name: OceanWP Child
Theme URI: https://welldesignstudio.com/
Description: Well Design Studios take on the OceanWP theme.
Author: Well Design Studio
Author URI: https://welldesignstudio.com/
Template: oceanwp
Version: 1.6
*/

/* OceanWP Resets */
body {
	overflow-x: hidden;
}
body ul, body ol {
	margin-top: 0;
}

h1, h2, h3, h4, h5, h6 {
	color: unset;
}

body #site-header.transparent-header {
	border: none;
}

body #site-header #site-logo #site-logo-inner a img {
	width: 100%;
}
@-moz-document url-prefix() {
	body #site-header #site-logo #site-logo-inner a img[src$=".svg"] {
		height: 100%;
	}
}
body #site-header #site-logo #site-logo-inner a:hover img {
	opacity: 1;
}

body.boxed-layout.wrap-boxshadow #wrap {
  -webkit-box-shadow: 0 0 30px -10px rgba(0, 0, 0, 0.5);
  -moz-box-shadow: 0 0 30px -10px rgba(0, 0, 0, 0.5);
	box-shadow: 0 0 30px -10px rgba(0, 0, 0, 0.5);
}
.boxed-layout #wrap #site-header-inner.container {
  max-width: 1400px;
}
.content-full-screen #site-header-inner.container {
	max-width: 100%;
	padding: 0 20px;
}

.page-header, .has-transparent-header .page-header {
	/* display: none; */
}
.elementor-page header.page-header, .single-post header.page-header {
  /* display: none; */
}

/* Focus Outline */
body a:focus, body .focus a {
	outline: none !important;
}

/* Set's placeholder color globally */
::placeholder {
	color: #939393;
}


/* Elementor Resets */
section.elementor-section.elementor-top-section {
	padding: 60px 0px;
}

body.has-transparent-header #main section.elementor-section.elementor-top-section:first-child {
	padding-top: 160px;
	padding-top: calc(100px + 60px);
}

body .elementor-element.elementor-widget-spacer, body .elementor-widget.elementor-widget-divider {
  margin-bottom: 0 !important;
}
body .elementor-widget-divider .elementor-divider {
	overflow: hidden;
}

body .elementor-element.elementor-widget-icon {
	line-height: 1em;
}

body .elementor-widget p:last-child {
	margin: 0;
}

body .elementor-widget-wrap > aside.elementor-section {
	width: auto;
}

body.elementor-widget-nav-menu li.menu-item > a.elementor-item > span.hidden {
	display: none;
}

.elementor a, .elementor a:hover {
	color: unset;
}

.elementor-widget-icon-box p.elementor-icon-box-description a {
	color: inherit;
}


/* Menu tweaks - Main Menu */
body.has-transparent-header #site-navigation-wrap ul.dropdown-menu > li.menu-item > a.menu-link {
	color: #fff;
}
body.has-transparent-header .mobile-menu .hamburger-inner,
body.has-transparent-header .mobile-menu .hamburger-inner::before,
body.has-transparent-header .mobile-menu .hamburger-inner::after {
	background-color: #ffffff;
}

body #site-navigation-wrap .dropdown-menu > li > a .nav-arrow {
	padding: 0 0 0 3px;
}

.effect-two #site-navigation-wrap .dropdown-menu>li.current-menu-item>a.menu-link>span:after,
.effect-two #site-navigation-wrap .dropdown-menu>li>a.menu-link>span:after {
	height: 1px;
}
.effect-three #site-navigation-wrap .dropdown-menu>li.current-menu-item>a.menu-link>span:after,
.effect-three #site-navigation-wrap .dropdown-menu>li>a.menu-link>span:after {
	height: 2px;
}

body.has-transparent-header .effect-two #site-navigation-wrap .dropdown-menu>li>a.menu-link>span:after,
body.has-transparent-header .effect-eight #site-navigation-wrap .dropdown-menu>li>a.menu-link>span:before,
body.has-transparent-header .effect-eight #site-navigation-wrap .dropdown-menu>li>a.menu-link>span:after {
	background-color: #fff;
}

#site-header.is-transparent .mobile-menu .hamburger-inner,
#site-header.is-transparent .mobile-menu .hamburger-inner::before,
#site-header.is-transparent .mobile-menu .hamburger-inner::after {
	background-color: #fff;
}

/* Menu tweaks - Sub Menu */
#site-navigation-wrap ul.dropdown-menu li.dropdown > ul.sub-menu {
	padding: 10px 0;
	border-radius: 20px;
	margin-top: -10px;
	padding: 10px 15px;
}
#site-navigation-wrap ul.dropdown-menu li.dropdown > ul.sub-menu > li.menu-item > a {
	font-size: 14px;
	line-height: 1.4em;
	padding: 8px 15px;
	transition: .25s;
	text-transform: uppercase;
	padding: 8px 0;
	color: #4a4a4a;
	text-decoration: unset;
}
#site-navigation-wrap ul.dropdown-menu li.dropdown > ul.sub-menu > li.menu-item > a:hover {
	background: transparent;
	transition: .25s;
	text-decoration: underline;
}


/* Bootstrap Resets for OceanWP */
#content div#blog-entries .blog-entry.col-1 {
	max-width: inherit;
}
body #site-navigation-wrap ul.main-menu.dropdown-menu > li.menu-item > ul.megamenu.sub-menu {
	max-width: inherit;
	flex: initial;
}
.woocommerce-checkout .col-1, .woocommerce-checkout .col-2 {
	max-width: 100%;
}
body.single-product .elementor.elementor-location-single.product.col {
	padding: 0;
}
body .woocommerce-MyAccount-content .addresses > * {
	max-width: unset;
	flex: unset;
}

body .woocommerce-MyAccount-content .col-1, .woocommerce-MyAccount-content .col-2 {
	width: unset;
	flex: unset;
}


/* Gravity form tweaks */
@media only screen and (min-width: 641px) {
	body .gform_wrapper.gravity-theme .gform_fields {
		grid-row-gap: 30px;
	}
}

body .gform_wrapper .top_label .gfield_label, body .gform_wrapper legend.gfield_label {
	display: block;
	border: none;
	line-height: 1.2em;
	font-weight: 500;
}

body .gform_wrapper .gfield input:not([type="checkbox"]):not([type="radio"]),
body .gform_wrapper .gfield textarea,
body .gform_wrapper .gfield select {
  padding: 6px 12px;
	background: #fff;
	border-color: #939393;
}
body .gform_wrapper .gfield input:not([type="checkbox"]):not([type="radio"]),
body .gform_wrapper .gfield select {
	min-height: 46px;
}
body .gform_wrapper .gfield .gfield_required {
	line-height: 1em;
}

body .gform_wrapper .gform_footer input.button, .gform_wrapper .gform_footer input[type=submit], body .gform_wrapper .gform_page_footer input.button, body .gform_wrapper .gform_page_footer input[type=submit], .gform_wrapper div#field_submit input[type=submit] {
	padding: 10px 20px;
	font-size: 16px;
	line-height: 1.2em;
	-webkit-border-radius: 100px;
	border-radius: 100px;
	color: #ffffff;
	background: var(--e-global-color-primary);
	font-family: "Poppins", Sans-serif;
	text-transform: capitalize;
	margin-bottom: 0px;
	min-width: 120px;
}

.gform_wrapper.gravity-theme .gfield_password_strength {
	padding: 4px 8px;
	border: none;
	border-radius: 3px;
}
.gform_wrapper.gravity-theme .gfield_password_strength.bad {
	background: #f44336;
	color: #fff;
}
.gform_wrapper.gravity-theme .gfield_password_strength.good {
	background: #fbc02d;
	color: #fff;
}
.gform_wrapper.gravity-theme .gfield_password_strength.strong {
	background: #4caf50;
	color: #fff;
}

/* Custom Specific Gravity Form Edits */
.gform_wrapper.gravity-theme.subscribe_wrapper .gform_footer {
	margin: unset;
	padding: unset;
}

.gform_wrapper.gravity-theme #gform_2 .gform_footer {
	justify-content: flex-end;
}
.gform_wrapper #gform_3 div#field_submit input[type=submit] {
	background: #ffffff;
	color: var(--e-global-color-primary);
}

body .gform_wrapper.gravity-theme .ginput_container_date input {
	width: 100%;
}

body .gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-title {
	font-size: 13px;
}
body .gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-title select {
	font-size: inherit;
	background-size: 20px 20px;
	background-position: calc(100% - 2px) 50%;
}
body .gform-theme-datepicker:not(.gform-legacy-datepicker) .ui-datepicker-calendar tr :is(span, a) {
	font-size: 12px;
}

body .gform_wrapper.gravity-theme .gfield.time .ginput_complex {
	row-gap: 10px;
	align-items: center;
}
body .gform_wrapper.gravity-theme .gfield.time .ginput_container_time {
	flex: 1;
	margin: 0;
	max-width: calc(100% - 20px);
}
body .gform_wrapper.gravity-theme .gfield.time .ginput_container_time.gfield_time_minute {
	margin-right: 20px;
}

body .gform_wrapper.gravity-theme .gfield.toggle-style .gfield_radio {
	display: inline-flex;
	border: 1px solid var( --e-global-color-primary );
	border-radius: 100px;
}
body .gform_wrapper.gravity-theme .gfield.toggle-style .gfield_radio .gchoice {
	padding: unset;
}
body .gform_wrapper.gravity-theme .gfield.toggle-style .gfield_radio .gchoice input {
	display: none;
}
body .gform_wrapper.gravity-theme .gfield.toggle-style .gfield_radio .gchoice label {
	padding: 8px 20px;
	min-width: 80px;
	text-align: center;
	border-radius: 100px;
	transition: .25s;
}
body .gform_wrapper.gravity-theme .gfield.toggle-style .gfield_radio .gchoice input:checked ~ label {
	background: var( --e-global-color-primary );
	color: #fff;
}

body #gform_wrapper_5.gform_wrapper .gform_heading {
	margin-bottom: 20px;
}

body .gform_wrapper .gfield .ginput_container_fileupload input[type="file"] {
	padding: unset;
	min-height: unset;
	width: auto;
	cursor: pointer;
}




/* Woo & Other Plugin Resets */
body.woocommerce div.product.elementor form.cart table.variations td.value:before {
	content: "" !important;
	margin: 0 !important;
}

body.woocommerce div.product.elementor form.cart table.variations .reset_variations {
	display: flex !important;
	flex-direction: row;
	gap: 5px;
	justify-content: center;
	align-items: center;
	line-height: 1em;
	padding: unset;
	float: unset;
	margin: unset;
	border: unset;
}
body.woocommerce div.product.elementor form.cart table.variations .reset_variations[style="visibility: hidden;"] {
	max-height: 0px;
	opacity: 0;
	transition: .25s;
}
body.woocommerce div.product.elementor form.cart table.variations .reset_variations[style="visibility: visible;"] {
	max-height: 40px;
	opacity: 1;
	transform: translateY(8px);
}

body.woocommerce.single-product .single_variation .woocommerce-variation-price .price {
	display: block !important;
	text-align: center;
	font-size: 20px;
}

body #user_switching_switch_on {
	position: fixed !important;
	bottom: 10px !important;
	left: 10px !important;
	padding: 10px 20px !important;
	font-size: 16px !important;
	line-height: 1.2em;
	background: #2f4858;
	color: #fff;
	border-radius: 100px;
	box-shadow: 0px 0px 15px -4px rgb(0 0 0 / 25%);
}
body #user_switching_switch_on a {
	color: unset;
}

html.pum-open.pum-open-overlay.pum-open-scrollable body>[aria-hidden] {
	padding: 0 !important;
}


/* Breakpoint based tweaks */
@media only screen and (max-width: 959px) {
	body #site-header-inner.container, body.content-full-screen .elementor-section-wrap>.elementor-section.elementor-section-boxed>.elementor-container {
		max-width: 100%;
	}
}


@media only screen and (max-width: 767px) {
  section.elementor-section.elementor-top-section {
		padding: 50px 0;
  }
	body.has-transparent-header #main section.elementor-section.elementor-top-section:first-child {
		padding-top: 130px;
		padding-top: calc(80px + 50px);
	}

  body .elementor-posts .elementor-post {
    display: block;
  }
  body .elementor-post__text {
    margin: 15px 0;
  }
}

body #site-navigation-wrap .dropdown-menu>li>a.menu-link {
	font-family: "Poppins", Sans-serif !important;
	text-decoration: unset;
	color: #000000;
}

body .wcmenucart-details.count {
	padding: 0 0 0 2px;
	background: #A843A5;
	border-radius: 100px;
	min-width: 17px;
	min-height: 18px;
	line-height: 18px;
	text-align: center;
}
body .wcmenucart-details.count:before {
	border-color: #A843A5;
}

#site-header-inner .oceanwp-mobile-menu-icon a.wcmenucart {
	text-decoration: unset;
}
#site-header-inner :is(.dropdown-menu>li>a.wcmenucart, .oceanwp-mobile-menu-icon ) i {
	color: #522971;
}


/* Generic Loop Styles */
.post-type-container span.date-meta {
	display: block;
	text-transform: uppercase;
	color: var(--e-global-color-34fc943);
	font-size: 12px;
	line-height: 1.6em;
	letter-spacing: 1px;
}

.post-type-container .post-title {
	color: var(--e-global-color-primary);
	text-decoration: unset;
	margin-bottom: 10px;
}

.post-type-container .post-title a {
	color: inherit;
	text-decoration: unset;
}

.post-type-container .actions {
	display: flex;
	flex-flow: row wrap;
	gap: 10px 20px;
	margin-top: 20px;
}

.post-type-container a.read-more {
	display: flex;
	align-items: baseline;
	text-decoration: unset;
	color: var(--e-global-color-primary);
}
.post-type-container a.read-more span {
	text-decoration: underline;
}
.post-type-container a.read-more i.fas.fa-chevron-right {
	margin-left: 6px;
	font-size: 80%;
}

/* Row Style Loop Tweaks - Pertains to Blog and Directory Archives */
.post-type-container.row-style .row.post-row {
	padding: 15px;
	border-radius: 20px;
	border: 1px solid #F4F4F4;
	box-shadow: 0px 4px 20px -8px rgb(0 0 0 / 25%);
	margin-bottom: 30px;
}

.post-type-container .image-container {
	display: block;
	aspect-ratio: 3/2;
}
.post-type-container .image-container img.featured-img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.post-type-container.row-style .image-container {
	/* aspect-ratio: 1/1; */
	aspect-ratio: 4/3;
	max-width: 300px;
}
.post-type-container.blog-slider .image-container {
	aspect-ratio: 5/2;
}

.business-meta-details .address-group {
	line-height: 1.4em;
	gap: 5px;
	display: flex;
	flex-flow: column;
}

.business-meta-details > *:not(:last-child) {
	margin-bottom: 12px;
}

.business-meta-details > .email {
	/* text-overflow: ellipsis; */
	/* white-space: nowrap; */
	/* overflow: hidden; */
	/* width: auto; */
	white-space: break-spaces;
	word-break: break-all;
}

/* Directory Specific Styles */
#directory.post-type-container h3.post-title {
	color: var(--e-global-color-ca2f613);
}
#directory.post-type-container a.read-more {
	color: var(--e-global-color-ca2f613);
}


/* Custom Component Styling */
.taxonomy-row {
	position: relative;
	margin-bottom: 10px;
}
.taxonomy-row:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
	width: 50px;
	background: linear-gradient(90deg, transparent, #ffffff);
	pointer-events: none;
}
.taxonomy-row .inner {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
	padding-right: 50px;
	overflow-x: scroll;
}
.taxonomy-row .inner::-webkit-scrollbar {
	display: none;
}
.taxonomy-row a.term-btn {
	display: inline-block;
	color: var( --e-global-color-text );
	text-decoration: unset;
	font-size: 14px;
	line-height: 1.6em;
	padding: 4px 10px;
	background: #F4F4F4;
	border-radius: 100px;
	text-align: center;
	white-space: nowrap;
}
.taxonomy-row a.term-btn.organization {
	color: #fff;
}

.taxonomy-row.mini .inner {
	gap: 5px;
}
.taxonomy-row.mini a.term-btn {
	font-size: 11px;
	padding: 2px 10px;
}

.simple-grid .taxonomy-row {
	margin-bottom: 5px;
}

#business-intro .taxonomy-row:after {
	/* background: linear-gradient(90deg, transparent, #522971); */
	background: unset;
}
#business-intro .taxonomy-row .inner {
	flex-flow: row wrap;
	padding-right: unset;
}
#business-intro .taxonomy-row a.term-btn {
	background: #fff;
}



.social_row {
	display: flex;
	align-items: center;
	gap: 10px;
}
.social_row > a.social-link {
	color: unset;
	line-height: 1em;
	text-decoration: unset;
}
.social_row > a.social-link > i {
	font-size: 22px;
	height: 36px;
	width: 36px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: var(--e-global-color-ca2f613);
	color: #fff;
	border-radius: 100px;
}


/* Directory Filter Bar */
form.searchandfilter {
	padding: 8px 10px;
	border-radius: 15px;
	background: #fff;
}
form.searchandfilter > ul {
	margin: unset;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-flow: row wrap;
	margin: 0;
}

form.searchandfilter>ul>li {
	padding: unset;
}
form.searchandfilter>ul>li input,
form.searchandfilter>ul>li select {
	border: unset;
	border-radius: 0;
	min-height: 32px;
	padding-block: unset;
	padding: 0 10px;
}

form.searchandfilter>ul>li:last-child label input {
	border-right: unset;
}


form.searchandfilter>ul>li.sf-field-search {
	flex: 1;
}
form.searchandfilter>ul>li.sf-field-search label {
	width: 100%;
}

form.searchandfilter>ul>li label select {
	-moz-appearance: unset;
	-webkit-appearance: unset;
	appearance: unset;
	padding: 0 32px 0 10px;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 448 448' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m207 349.5-194.3-194.4c-9.4-9.4-9.4-24.6 0-33.9l22.7-22.7c9.4-9.4 24.5-9.4 33.9 0l154.7 154 154.7-154c9.4-9.3 24.5-9.3 33.9 0l22.7 22.7c9.4 9.4 9.4 24.6 0 33.9l-194.3 194.4c-9.4 9.3-24.6 9.3-34 0z'/%3E%3C/svg%3E");
	background-size: 12px;
	background-repeat: no-repeat;
	background-position: right center;
	background-position: calc(100% - 10px) center;
	min-width: 170px !important;
}

body #main form.searchandfilter>ul>li.sf-field-submit input[type="submit"] {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	background: unset;
	color: #33273E;
	padding: 5px 20px;
	border-radius: unset;
	font-size: 16px;
}

/* Generic Simple Grid Tweaks */
.simple-grid .post-column {
	margin-bottom: 20px;
}

.simple-grid .post-container {
	background: #fff;
	box-shadow: 0 3px 12px -6px rgb(0 0 0 / 50%);
	border-radius: 15px;
	overflow: hidden;
	height: 100%;
}

.simple-grid .post-details {
	padding: 20px;
	background: #ffffff;
}

.simple-grid .post-details .post-title {
	font-size: 18px;
}
.simple-grid .post-details .post-excerpt {
	font-size: 14px;
	line-height: 1.6em;
}

.simple-grid .post-details .date-meta, .simple-grid .post-details .post-title, .simple-grid .post-details .post-excerpt, .simple-grid .post-details .read-more {
	color: var(--e-global-color-c784688);
}


.lf_branded .simple-grid .taxonomy-row a.term-btn.category {
	background: var( --e-global-color-ca2f613 );
	color: white;
}

/* Blog Slider Tweaks */
.blog-slider .post-details {
	background: var( --e-global-color-34fc943 );
}
.blog-slider .post-details .date-meta, .blog-slider .post-details .post-title, .blog-slider .post-details .post-excerpt, .blog-slider .post-details .read-more {
	color: #ffffff;
}

/* Good For Michigan Branding - blog slide styles */
.gfm_branded .blog-slider .post-details {
	background: var( --e-global-color-0622921 );
}

/* Local First Branding - blog slide styles */
.lf_branded .blog-slider .post-details {
	background: var(--e-global-color-ca2f613);
}
.lf_branded .blog-slider .post-details .post-title {
	color: var( --e-global-color-4a29dcc );
}

.slickify.blog-slider .slick-slider .slick-list {
	overflow: visible;
}
.slickify.blog-slider .post-column {
	padding: 0 15px;
}

.gfm_branded .simple-grid .post-details .post-title {
	/* color: var(--e-global-color-0622921); */
	color: #ffffff;
}


/* custom programs logo */
div#programs_picker {
	display: table-cell;
	vertical-align: middle;
	position: relative;
}
div#programs_picker .inner {
	display: flex;
	align-items: center;
	height: 100%;
	min-width: 180px;
}

div#programs_picker a.logo-container  {
	text-decoration: unset;
}
div#programs_picker a.logo-container img.program-logo {
	width: auto;
	max-width: 120px;
	height: 40px;
}

div#programs_picker a.logo-container.selected {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-left: 20px;
	padding-left: 20px;
	border-left: 1px solid #707070;
	height: 40px;
}
div#programs_picker a.logo-container.selected i {
	cursor: pointer;
	transition: .25s;
}

.gfm_branded div#programs_picker a.logo-container.selected i {
	color: var( --e-global-color-0622921 );
}
.lf_branded div#programs_picker a.logo-container.selected i {
	color: var( --e-global-color-ca2f613 );
}

div#programs_picker .logo_picker_dropdown {
	display: flex;
	flex-flow: column wrap;
	position: absolute;
	top: 100%;
	left: 20px;
	height: auto;
	width: 100%;
	background: #ffffff;
	padding: 0px 15px;
	border-radius: 20px;
	box-shadow: 0 2px 6px rgb(0 0 0 / 10%);
	margin-top: -10px;
	opacity: 0;
	transition: .25s;
	visibility: hidden;
	pointer-events: none;
}
div#programs_picker .inner:hover .logo_picker_dropdown {
	opacity: 1;
	transition: .25s;
	visibility: visible;
	pointer-events: all;
}

div#programs_picker .logo_picker_dropdown a.logo-container {
	padding: 15px 0;
	text-align: center;
}

div#programs_picker .logo_picker_dropdown a.logo-container:not(:last-child) {
	border-bottom: 1px solid #f1f1f1;
}

body #site-header #site-logo #site-logo-inner a.minimal-logo img {
	height: 40px;
}


/* Events Tweaks */
.event-meta-details {
	display: grid;
	gap: 10px;
}

.event-meta-details .event-meta {
	display: flex;
	align-items: baseline;
	gap: 10px;
	font-size: 14px;
	line-height: 1.5em;
}

.event-meta-details .event-meta > i {
	color: var( --e-global-color-1e6a873 );
}
.event-meta-details .event-meta > span {
	color: var(--e-global-color-primary);
}


/* Business Directory Detail Page Tweaks */
section#slider-nav > .elementor-container > .elementor-column > .elementor-widget-wrap {
	gap: 10px;
}
section#slider-nav .elementor-widget-heading {
	text-align: center;
	/* padding: 0 10px; */
}
section#slider-nav .elementor-widget-heading a {
	display: inline-block;
	padding: 6px 12px;
	background: transparent;
	border-radius: 100px;
	text-decoration: none;
	text-align: center;
	white-space: nowrap;
	transition: .25s;
}

section#slider-nav > .elementor-container > .elementor-column > .elementor-widget-wrap.slick-slider .slick-track {
	width: auto !important;
	transform: unset !important;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px 30px;
	flex-flow: row wrap;
}
section#slider-nav .slick-track:before, section#slider-nav .slick-track:after {
	display: none;
}

section#slider-nav .slick-slide.slick-current .elementor-widget-heading a {
	background: #ffffff;
	color: var(--e-global-color-primary);
}


/* Events Single Template Tweaks */
.single-tribe_events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button-text, .tribe-events .tribe-events-c-subscribe-dropdown .tribe-events-c-subscribe-dropdown__button-text {
	color: var(--tec-color-accent-primary);
	font-size: inherit;
}


.no-posts {
	text-align: center;
}
:is(.events-section, .promos-section) .no-posts {
	text-align: left;
}
.my_account-wrap .no-posts {
	text-align: left;
}

.gap-10px > .elementor-widget-wrap {
	gap: 10px;
}


/* Donation Form Tweaks */
body .donate_wrapper .gfield_radio .gchoice input {
	display: none;
}

body .donate_wrapper .gfield_radio .gchoice input~label {
	padding: 10px 20px;
	width: 100%;
	max-width: 100%;
	background: transparent;
	color: var(--e-global-color-primary);
	border: 1px solid var(--e-global-color-primary);
	border-radius: 100px;
	line-height: 1.2em;
	font-weight: 600;
	text-align: center;
	transition: .25s;
}

body .donate_wrapper .gfield_radio .gchoice input:checked~label {
	background: var(--e-global-color-primary);
	color: #fff;
	transition: .25s;
}

body .gform_wrapper .gfield.gf_list_2col .gfield_checkbox,
body .gform_wrapper .gfield.gf_list_2col .gfield_radio {
	gap: 2rem;
}
body .gform_wrapper.donate_wrapper .gform_footer input.button, .gform_wrapper.donate_wrapper .gform_footer input[type=submit] {
	width: 100%;
}

body .gform_wrapper.donate_wrapper .gform_fields {
	grid-row-gap: 0;
}
body .gform_wrapper.donate_wrapper .gform_fields .gfield:first-child {
	border-top: 1px solid #D6D6D6;
}
body .gform_wrapper.donate_wrapper .gform_fields .gfield {
	padding-block: 20px;
	border-bottom: 1px solid #D6D6D6;
}


/* Woocommerce Tweaks */
table.shop_table.shop_table_responsive.cart.woocommerce-cart-form__contents .product-thumbnail {
	display: none;
}
table.shop_table.shop_table_responsive.cart.woocommerce-cart-form__contents a.remove {
	text-decoration: none;
	line-height: 27px;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	color: #fff;
	border-radius: 100px;
	text-decoration: none;
}

.woocommerce-checkout .woocommerce-privacy-policy-text {
	margin-bottom: 20px;
}
.woocommerce-checkout #payment ul.payment_methods li {
	padding: 10px;
	border: 1px solid #eaeaea;
}

body .woocommerce table.shop_table :is(a.remove, .product-quantity .quantity a),
body .woocommerce-notices-wrapper .woocommerce-message a,
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
body .woocommerce a.wcs-switch-link,
body .woocommerce .shop_table a.button {
	text-decoration: unset;
}

/* Makes attribute label and value on subscriptions page display: inline-block */
body .woocommerce ul.wc-item-meta strong.wc-item-meta-label ~ p {
	display: inline-block;
}

/* Theme / Elementor Button Resets - Maybe causing a bit of harm because of the lack of specificity */
body #main .theme-button,
body #main input[type="submit"],
body #main button[type="submit"],
body #main button,
body #main .button {
	color: #fff;
}
body #main .mce-toolbar .mce-btn-group .mce-btn button {
	color: inherit;
	background: inherit;
}


/* My Account Tweaks */
.my_account-wrap .post-type-container .post-title :is(a[href*='#']) {
	pointer-events: none;
}

.my_account-wrap.my_events .event-meta-details {
	grid-template-columns: repeat(auto-fill, minmax(calc(50% - 10px), 1fr));
	column-gap: 20px;
	margin-bottom: 20px;
}
.my_account-wrap.my_events .event-meta-details .event-meta.categories {
	order: 3;
}

/* General custom button styles */
body a.custom-btn, body button.custom-btn, body button.gpnf-add-entry {
	display: inline-block;
	padding: 8px 20px;
	background: var(--e-global-color-primary);
	border-radius: 100px;
	border: unset;
	line-height: 1.2em;
	color: #fff !important;
	text-decoration: unset;
}

body .gpnf-nested-entries {
	margin-bottom: 0;
}

.edit_business-container button#edit_business {
	width: 100%;
}

/* Promos and Discounts */
#promo_discounts .members-only-container {
	display: inline-block;
	padding: 6px 10px;
	font-size: 12px;
	line-height: 1em;
	text-transform: uppercase;
	letter-spacing: 1px;
	background: var( --e-global-color-primary );
	color: #fff;
	border-radius: 100px;
}

#promo_discounts h3.discount-title a {
	color: var( --e-global-color-primary );
}

#promo_discounts .expiration {
	font-weight: bold;
	color: var(--e-global-color-primary);
}

#promo_discounts .promo-details {
	text-align: center;
}

#promo_discounts .discount_code-container {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-flow: column wrap;
	padding: 13px 24px 10px;
	border: 2px dashed var( --e-global-color-primary );
	font-size: 18px;
	line-height: 1.2em;
	border-radius: 10px;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: var( --e-global-color-primary );
	background: transparent;
	transition: .25s;
	cursor: pointer;
}
#promo_discounts .discount_code-container:hover, #promo_discounts .discount_code-container.tooltip-active {
	color: #fff;
	background: var( --e-global-color-primary );
	z-index: 10;
}

#promo_discounts .discount_code-container:before {
	content: attr(data-onsuccess);
	position: absolute;
	top: 0px;
	left: 0px;
	height: 100%;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--e-global-color-primary);
	border: 2px solid var(--e-global-color-primary);
	color: #ffffff;
	padding: 5px 10px;
	border-radius: 10px;
	font-size: 12px;
	line-height: 1.2em;
	text-transform: capitalize;
	white-space: nowrap;
	pointer-events: none;
	z-index: 10;
	transition: .25s;
	opacity: 0;
}
#promo_discounts .discount_code-container.tooltip-active:before {
	opacity: 1;
}

#promo_discounts .discount_code-container .label {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	display: inline-block;
	padding: 0 5px;
	font-size: 12px;
	line-height: 1.4em;
	text-transform: initial;
	background: #fff;
	color: #522971;
	text-align: center;
	white-space: nowrap;
	border: 1px dashed transparent;
	border-radius: 100px;
	transition: .25s;
	z-index: 5;
}
#promo_discounts .discount_code-container:hover .label {
	border-color: var( --e-global-color-primary );
}
#promo_discounts .discount_code-container.tooltip-active .label {
	opacity: 0;
	transform: translate(-50%, -100%);
}

#promo_discounts .discount_code-container .discount_code {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}


body .popup-container {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 100;
	opacity: 0;
	pointer-events: none;
	transition: .25s;
}
body .popup-container.active {
	opacity: 1;
	pointer-events: all;
	transition: .25s;
}

body .popup-container .shade {
	position: absolute;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: .25;
}
body .popup-container .popups-inner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: min(100% - 30px, 800px);
	/* max-height: calc(100% - 30px); */
	max-height: 100%;
	overflow: auto;
}
body .popup-container .popups-inner.xsmall {
	width: min(100% - 30px, 450px);
}
body .popup-container .popups-inner.small {
	width: min(100% - 30px, 650px);
}
body .popup-container .popups-inner .results-container {
	position: relative;
	width: 100%;
	background: #fff;
	padding: 30px;
	display: flex;
	flex-wrap: wrap;
	/* align-self: flex-start; */
	box-shadow: 0 2px 10px -2px rgb(0 0 0 / 25%);
	border-radius: 20px;
}
body.admin-bar .popup-container .popups-inner .results-container {
	margin-top: 50px !important;
}

body .popup-container .close {
	position: absolute;
	top: 30px;
	right: 30px;
	width: 30px;
	height: 30px;
	font-size: 14px;
	line-height: 26px;
	text-align: center;
	border-radius: 100px;
	/* box-shadow: 0 0 10px -2px rgb(0 0 0 / 10%); */
	background: transparent;
	color: var( --e-global-color-primary );
	border: 2px solid var( --e-global-color-primary );
	cursor: pointer;
	transition: .25s;
}
body .popup-container .close:hover {
	background: var( --e-global-color-primary );
	color: #ffffff;
	transition: .25s;
}
body .popup-container .close i:before {
	margin-right: -1px;
}

body .popup-container .results {
	width: 100%;
}
body .popup-container .results a.popup-btn {
display: inline-block;
padding: 5px 10px;
margin-top: 30px;
background: var( --e-global-color-primary );
color: #fff;
border-radius: 8px;
padding: 7px 20px 8px 20px;
}

body .popup-container .popup-header {
	margin-bottom: 30px;
	border-bottom: 2px solid var( --e-global-color-primary );
	padding: 0px 40px 15px 0px;
	color: var( --e-global-color-primary );
}
body .popup-container.closing-disallowed .popup-header {
padding: 0px 0px 15px 0px;
}
body .popup-container .popup-header .heading {
	display: inline-block;
	font-size: 30px;
	line-height: 1em;
}
body .popup-container .popup-header .heading.lg {
	font-size: 50px;
}
body .popup-container .popup-header .heading.sm {
	font-size: 20px;
	text-transform: uppercase;
	letter-spacing: 2px;
}

body .popup-container .popup-body {
	color: #85ADC3;
}

body .popup-container .results > h2 {
	padding-right: 40px;
}

/* Front-end ACF form tweaks */
body .acf-fields > .acf-tab-wrap {
	background: unset;
}
body .acf-fields > .acf-tab-wrap .acf-tab-group {
	padding-top: unset;
	border: unset;
	margin-bottom: 0px;
}
body .acf-fields > .acf-tab-wrap .acf-tab-group li.active a {
	padding-bottom: 5px;
	margin-bottom: unset;
}

body .acf-fields a.acf-button {
	color: #fff;
	text-decoration: unset;
}

body .acf-field .acf-input>.acf-input-wrap.acf-url i {
	top: 50%;
	margin-top: -10px;
}
body .acf-repeater .acf-row-handle.remove > a {
	text-decoration: unset;
}
body .acf-google-map .title .acf-actions a {
	text-decoration: unset;
	line-height: 24px;
}

#update_business_info .acf-fields > .acf-tab-wrap .acf-tab-group a.acf-tab-button:is([data-key="field_636d9cad58700"], [data-key="field_636d187ec737a"]) {
	display: none;
}


/* ACF Google Map Rendering */
body .acf-map {
	width: 100%;
	height: 300px;
}
body .acf-map img {
	max-width: inherit !important;
}

body .gm-style .gm-style-mtc button {
	border-radius: 2px;
}

body .acf-map .marker-inner {
	padding: 10px;
	text-align: center;
}

body .acf-map .marker-inner h4 {
	margin-bottom: 10px;
}

/* Google Map - Makes zoom and fullscreen same color */
.gm-control-active>img {
	display: none;
}

@media only screen and (max-width: 1200px) {
	body #site-navigation-wrap .dropdown-menu>li>a.menu-link {
		font-size: 15px;
		padding: 0 12px;
	}
}

/* Mobile Menu Tweaks - Not finalized */
#sidr .sidr-inner a.sidr-class-toggle-sidr-close {
	background: var(--e-global-color-primary);
	color: #fff;
	text-decoration: unset;
}
#sidr .sidr-inner li.sidr-class-menu-item>a.sidr-class-menu-link {
	text-decoration: unset;
}
#sidr .sidr-inner li.sidr-class-menu-item:hover>a.sidr-class-menu-link {
	background: var(--e-global-color-1e6a873);
	color: #fff;
}
#sidr .sidr-inner li.sidr-class-menu-item:hover>a.sidr-class-menu-link .sidr-class-dropdown-toggle {
	color: #fff;
}


#mobile-dropdown ul > li > a {
	text-decoration: unset;
	color: var( --e-global-color-primary );
}
#mobile-dropdown ul > li > a .dropdown-toggle {
	color: var( --e-global-color-primary );
}
#mobile-dropdown ul.menu > li.menu-item > a {
	font-weight: 600;
}

#mobile-dropdown ul.menu > li.menu-item > ul.sub-menu > li {
	background: #522971;
	border-bottom: 1px solid rgb(255 255 255 / 4%);
}
#mobile-dropdown ul.menu > li.menu-item > ul.sub-menu > li > a {
	color: #ffffff;
}


body figcaption.wp-caption-text {
	/* font-family: "Roboto", Sans-serif; */
	font-size: 12px;
	font-style: italic;
	color: #4a4a4a;
}


@media only screen and (max-width: 640px) {
	body .gform_wrapper #gform_4 .gfield.gf_list_2col .gfield_checkbox, body .gform_wrapper #gform_4 .gfield.gf_list_2col .gfield_radio {
    gap: 1rem;
    display: grid;
    grid-template-columns: repeat(2,1fr);
    grid-template-rows: repeat(auto-fill,auto);
	}
}

form.searchandfilter>ul {
	gap: 10px;
}

form.searchandfilter>ul>li {
	background: #f0f0f0;
	background: rgb(83 41 113 / 10%);
	border-radius: 10px;
	flex: min-content 10 1;
}
form.searchandfilter>ul>li label {
	width: 100%;
}

form.searchandfilter>ul>li.sf-field-search {
	flex: 300px 5 1;
}
form.searchandfilter>ul>li.sf-field-submit {
	flex: min-content 1 1;
}

body #main form.searchandfilter>ul>li.sf-field-submit input[type="submit"] {
	background: #532971;
	color: white;
	border-radius: 100px;
	width: 100%;
	height: 100%;
}

@media only screen and (max-width: 767px) {
	form.searchandfilter>ul>li.sf-field-submit {
		flex: min-content 1 1;
	}
}

/* Removes quantity column on cart page - comment out if PFE starts selling merch or tickets */
th.product-quantity, td.product-quantity {
    display: none !important;
}
/* Adds a buffer ahead of order title on the checkout page on mobile */
@media (max-width: 959px){
	h3#order_review_heading {
    	padding-top: 20px;
	}
}
/* Adjust sizes of quick links on contact page for better UI */
.quick-links-height .elementor-column {
    min-height: 118px;
}
@media (max-width:767px){
	.quick-links-height .elementor-column {
		max-width: 350px;
		margin: auto;
	}
	#business-intro .taxonomy-row .inner {
		justify-content: center;
	}
}
/* Adjusts size of search box on events page for better UI */
@media (max-width: 767px){
	form.searchandfilter>ul>li.sf-field-search {
		flex: 370px 5 1;
	}
	div#directory.row-style .meta-column {
    display: none;
	}
}

/* Adjusts columns for checkboxes to make form more compact */
/* @media (min-width: 550px){
	.hbspt-form ul.inputs-list.multi-container {
		columns: 2 !important;
	}
} */
/* Adjust column height on celebrating business columns grid */
@media (max-width:1150px){
	.custom-height-mobile .elementor-widget-wrap.elementor-element-populated {
		max-height: 420px
	}
}

body a.button.wc-backward.wp-element-button {
	display: none;
}


.gform_wrapper.gravity-theme .gsection h3.gsection_title {
	margin-bottom: 0;
}
.gform_wrapper.gravity-theme .gfield.field_description_above .gfield_description {
	font-size: 14px;
	line-height: 1.4em;
	font-style: italic;
	color: #707070;
	padding-bottom: 8px;
}

body .post_owner_actions-container {
	display: flex;
	flex-flow: column wrap;
	align-items: start;
	gap: 10px;
}
body .post_owner_actions-container .custom-btn {
	font-weight: 500;
}


.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart form.cart {
	border: unset;
	padding: unset;
	text-align: center;
}
.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart form.cart table.variations tbody {
	display: block;
	background: rgb(83 41 113 / 10%);
	padding: 15px;
	border-radius: 15px;
}
.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart form.cart table.variations tr {
	display: flex;
	flex-flow: column wrap;
	margin: 10px;
}
.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart form.cart table.variations tr:last-child {
	margin: unset;
}
.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart form.cart table.variations :is(th, td) {
	border: unset;
	padding: 0 0 5px;
}
.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart form.cart table.variations :is(th, td).label {
	width: 100%;
	text-align: center;
}
.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart form.cart table.variations :is(th, td).label label {
	color: #522971;
}
.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart form.cart table.variations :is(th, td) select {
	border: unset;
	background: #ffffff;
	border-radius: 10px;
}

.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart form.cart .woocommerce-variation.single_variation {
	width: 100%;
}


body .elementor-widget-heading .associated_businesses-container a.business-link {
	color: unset;
}

body button.button.wp-element-button {
	white-space: nowrap;
}


/* Search and Filter Pagination */
body .post-type-container #pagination {
	gap: 20px;
}
body .post-type-container #pagination > div > a {
	padding: 8px 12px;
	color: #fff;
	text-decoration: none;
	background-color: var( --e-global-color-primary );
	border-radius: 999px;
	transition: all 0.3s;
}
body .post-type-container #pagination>div > a:hover {
	opacity: 0.8;
}

/* Stories Grid Styles */
body.page-id-109891 .taxonomy-row .inner {
	flex-flow: row wrap;
}
body.page-id-109891 .post-type-container .image-container img.featured-img {
	object-fit: contain;
}

@media (max-width: 1204px) {
	#podcast-container + p {
		margin-top: -45px
	}
}


/* White Space No Wrap Class */
.no-wrap {
	white-space: nowrap;
}

/* Hide Woo Account Membership Management (Cancel) */
.woocommerce .my_account_orders .my-membership-detail-user-membership-actions {
	display: none !important;
}


/* Photo Gallery */
.pfe-photo-gallery-item {
	position: relative;
}

body .popup-container .pfe-photo-gallery-item .close {
	top: -7px;
	right: 1px;
	width: 15px;
	height: 15px;
	font-size: 7px;
	line-height: 11px;
	background: var(--e-global-color-primary);
	color: #fff;
	z-index: 1;
}