/**
Theme Name: Mafac
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.2.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mafac
Template: astra
*/

:root {
	--mafac-nav-header-surface: #ffffff;
	--mafac-nav-header-text: #38464d;
	--mafac-nav-hover-text: #182126;
	--mafac-nav-hover-accent: #007b7a;
	--mafac-nav-hover-surface: #f3eaf7;
	--mafac-nav-current-text: #7a378f;
	--mafac-nav-current-accent: #9b4dba;
	--mafac-nav-focus: #182126;
	--mafac-nav-focus-offset: #ffffff;
	--mafac-nav-border: #dce5e8;
	--mafac-nav-footer-surface: #ffffff;
	--mafac-nav-cta-surface: #9b4dba;
	--mafac-nav-cta-hover-surface: #8640a3;
	--mafac-nav-cta-active-surface: #7a378f;
	--mafac-nav-cta-text: #ffffff;
	--mafac-nav-transition-duration: 160ms;
	--mafac-event-surface: #ffffff;
	--mafac-event-surface-muted: #f4f7f6;
	--mafac-event-featured-surface: #faf6fb;
	--mafac-event-border: #d7e1e3;
	--mafac-event-featured-border: #d8c2e1;
	--mafac-event-meta: #4d5c63;
	--mafac-event-radius: 14px;
	--mafac-event-shadow: 0 8px 24px rgba(24, 33, 38, 0.08);
}

/* Filled Elementor content buttons are not ordinary inline content links. */
#content .elementor-widget-button .elementor-button,
#content .elementor-widget-button .elementor-button:visited {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-surface);
	background-color: var(--mafac-nav-cta-surface);
}

#content .elementor-widget-button .elementor-button:hover {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-hover-surface);
	background-color: var(--mafac-nav-cta-hover-surface);
}

#content .elementor-widget-button .elementor-button:focus,
#content .elementor-widget-button .elementor-button:focus-visible {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-surface);
	background-color: var(--mafac-nav-cta-surface);
}

#content .elementor-widget-button .elementor-button:focus-visible {
	outline: none;
	box-shadow:
		0 0 0 2px var(--mafac-nav-focus-offset),
		0 0 0 4px var(--mafac-nav-focus);
}

#content .elementor-widget-button .elementor-button:hover:focus-visible {
	border-color: var(--mafac-nav-cta-hover-surface);
	background-color: var(--mafac-nav-cta-hover-surface);
}

#content .elementor-widget-button .elementor-button:active {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-active-surface);
	background-color: var(--mafac-nav-cta-active-surface);
}

/* Editorial links keep a visible underline and exclude component/image links. */
#content :is(
	.entry-content > p,
	.entry-content > blockquote,
	.entry-content > ul li,
	.entry-content > ol li,
	.elementor-widget-text-editor p,
	.elementor-widget-text-editor li,
	.elementor-widget-theme-post-content p,
	.elementor-widget-theme-post-content li,
	.tribe-events-single-event-description p,
	.tribe-events-single-event-description li
) a:any-link:not(:is(
	.elementor-button,
	.wp-block-button__link,
	.wp-element-button,
	.ast-button,
	.button
)):not(:has(img)) {
	color: var(--mafac-nav-hover-accent);
	text-decoration-color: currentColor;
	text-decoration-line: underline;
	text-decoration-thickness: 1.5px;
	text-underline-offset: 0.18em;
}

#content :is(
	.entry-content > p,
	.entry-content > blockquote,
	.entry-content > ul li,
	.entry-content > ol li,
	.elementor-widget-text-editor p,
	.elementor-widget-text-editor li,
	.elementor-widget-theme-post-content p,
	.elementor-widget-theme-post-content li,
	.tribe-events-single-event-description p,
	.tribe-events-single-event-description li
) a:any-link:not(:is(
	.elementor-button,
	.wp-block-button__link,
	.wp-element-button,
	.ast-button,
	.button
)):not(:has(img)):hover {
	color: var(--mafac-nav-hover-text);
	text-decoration-color: var(--mafac-nav-hover-accent);
	text-decoration-thickness: 2px;
}

#content :is(
	.entry-content > p,
	.entry-content > blockquote,
	.entry-content > ul li,
	.entry-content > ol li,
	.elementor-widget-text-editor p,
	.elementor-widget-text-editor li,
	.elementor-widget-theme-post-content p,
	.elementor-widget-theme-post-content li,
	.tribe-events-single-event-description p,
	.tribe-events-single-event-description li
) a:any-link:not(:is(
	.elementor-button,
	.wp-block-button__link,
	.wp-element-button,
	.ast-button,
	.button
)):not(:has(img)):focus-visible {
	color: var(--mafac-nav-hover-text);
	outline: 2px solid var(--mafac-nav-focus);
	outline-offset: 3px;
	text-decoration-color: var(--mafac-nav-hover-accent);
}

#content :is(
	.entry-content > p,
	.entry-content > blockquote,
	.entry-content > ul li,
	.entry-content > ol li,
	.elementor-widget-text-editor p,
	.elementor-widget-text-editor li,
	.elementor-widget-theme-post-content p,
	.elementor-widget-theme-post-content li,
	.tribe-events-single-event-description p,
	.tribe-events-single-event-description li
) a:any-link:not(:is(
	.elementor-button,
	.wp-block-button__link,
	.wp-element-button,
	.ast-button,
	.button
)):not(:has(img)):active {
	color: var(--mafac-nav-current-text);
	text-decoration-color: var(--mafac-nav-hover-accent);
}

/* Inline editor color spans must inherit the editorial link state. */
#content :is(
	.entry-content > p,
	.entry-content > blockquote,
	.entry-content > ul li,
	.entry-content > ol li,
	.elementor-widget-text-editor p,
	.elementor-widget-text-editor li,
	.elementor-widget-theme-post-content p,
	.elementor-widget-theme-post-content li,
	.tribe-events-single-event-description p,
	.tribe-events-single-event-description li
) a:any-link:not(:is(
	.elementor-button,
	.wp-block-button__link,
	.wp-element-button,
	.ast-button,
	.button
)):not(:has(img)) [style*="color" i] {
	color: inherit !important;
}

/* Preserve the established homepage Style 1 hierarchy while isolating Style 2. */
#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-simple-event .ectbe-date-area {
	background-color: #00a7a5;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-featured-event .ectbe-date-area {
	background-color: var(--mafac-nav-current-accent);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-date-area,
#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-date-area :is(
	.ectbe-ev-day,
	.ectbe-ev-mo,
	.ectbe-ev-yr,
	.ectbe-week-day,
	.ectbe-evt-time
) {
	color: var(--mafac-nav-cta-text);
}

#content .ectbe-wrapper.ectbe-list-wrapper .ectbe-evt-title > .tribe-events-status-label {
	display: block;
	margin: 0 0 0.25rem;
	line-height: 1.2;
}

#content .ectbe-wrapper.ectbe-list-wrapper .ectbe-evt-title > .tribe-events-status-label .tribe-events-status-label__text--canceled {
	color: var(--tec-color-icon-error, #da394d);
	font-size: 1em;
	font-weight: 700;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-featured-event :is(
	.ectbe-each-cate a,
	.ectbe-evt-url
),
#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-featured-event :is(
	.ectbe-each-cate a,
	.ectbe-evt-url
):visited {
	color: var(--mafac-nav-current-accent);
	text-decoration-color: currentColor;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-featured-event .ectbe-each-cate a {
	border-color: var(--mafac-nav-current-accent);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-featured-event :is(
	.ectbe-each-cate a,
	.ectbe-evt-url
):hover {
	color: var(--mafac-nav-hover-text);
	text-decoration-color: var(--mafac-nav-current-accent);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-featured-event :is(
	.ectbe-each-cate a,
	.ectbe-evt-url
):focus-visible {
	color: var(--mafac-nav-current-text);
	outline: 2px solid var(--mafac-nav-focus);
	outline-offset: 3px;
	text-decoration-color: var(--mafac-nav-current-accent);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-featured-event :is(
	.ectbe-each-cate a,
	.ectbe-evt-url
):active {
	color: var(--mafac-nav-current-text);
	text-decoration-color: var(--mafac-nav-current-accent);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-evt-more-box,
#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-evt-more-box:hover {
	background-color: var(--mafac-event-surface);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 a.ectbe-evt-read-more,
#content .ectbe-wrapper.ectbe-list-wrapper.style-1 a.ectbe-evt-read-more:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 10px 16px;
	color: var(--mafac-nav-cta-text);
	border: 1px solid var(--mafac-nav-cta-surface);
	border-radius: 9px;
	background-color: var(--mafac-nav-cta-surface);
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	text-transform: none;
	transition:
		color var(--mafac-nav-transition-duration) ease,
		background-color var(--mafac-nav-transition-duration) ease,
		border-color var(--mafac-nav-transition-duration) ease;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-simple-event a.ectbe-evt-read-more,
#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-simple-event a.ectbe-evt-read-more:visited {
	border-color: #00a7a5;
	background-color: #00a7a5;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 a.ectbe-evt-read-more:hover {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-hover-surface);
	background-color: var(--mafac-nav-cta-hover-surface);
	text-decoration: none;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-simple-event a.ectbe-evt-read-more:hover {
	border-color: var(--mafac-nav-hover-accent);
	background-color: var(--mafac-nav-hover-accent);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 a.ectbe-evt-read-more:focus,
#content .ectbe-wrapper.ectbe-list-wrapper.style-1 a.ectbe-evt-read-more:focus-visible {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-surface);
	background-color: var(--mafac-nav-cta-surface);
	text-decoration: none;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-simple-event a.ectbe-evt-read-more:focus,
#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-simple-event a.ectbe-evt-read-more:focus-visible {
	border-color: #00a7a5;
	background-color: #00a7a5;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 a.ectbe-evt-read-more:focus-visible {
	outline: 2px solid var(--mafac-nav-focus);
	outline-offset: 3px;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 a.ectbe-evt-read-more:active {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-active-surface);
	background-color: var(--mafac-nav-cta-active-surface);
	text-decoration: none;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-simple-event a.ectbe-evt-read-more:active {
	border-color: #006c6b;
	background-color: #006c6b;
}

/* MAFAC treatment for the Events Calendar Addon list Style 2 only. */
#content .ectbe-wrapper.ectbe-list-wrapper.style-2 {
	--e-ectbe-date-area-background: var(--mafac-nav-hover-accent);
	--e-ectbe-date-area-color: var(--mafac-event-meta);
	--e-ectbe-evt-title-color: var(--mafac-nav-hover-text);
	--e-ectbe-evt-venue-color: var(--mafac-event-meta);
	--e-ectbe-evt-description-color: var(--mafac-event-meta);
	--e-ectbe-evt-read-more-color: var(--mafac-nav-hover-text);
	--ectbe-featd-evt-bg-color: var(--mafac-nav-current-accent);
	--ectbe-featd-evt-color: var(--mafac-nav-current-text);
	padding: 8px 0;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-month-header {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 26px 0 12px;
	padding: 11px 16px;
	color: var(--mafac-nav-hover-text);
	border: 1px solid var(--mafac-event-border);
	border-radius: 10px;
	background: var(--mafac-event-surface-muted);
	box-shadow: 0 3px 12px rgba(24, 33, 38, 0.06);
	font-size: clamp(1rem, 0.96rem + 0.25vw, 1.125rem);
	font-weight: 700;
	letter-spacing: 0.035em;
	line-height: 1.25;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-month-header:first-child {
	margin-top: 0;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-month-header::after {
	flex: 1 1 auto;
	height: 1px;
	margin: 0;
	background: rgba(0, 123, 122, 0.36);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-inner-wrapper {
	position: relative;
	min-width: 0;
	margin: 14px 0 0;
	overflow: hidden;
	color: var(--mafac-nav-header-text);
	border: 1px solid var(--mafac-event-border);
	border-radius: var(--mafac-event-radius);
	background: var(--mafac-event-surface);
	box-shadow: 0 3px 14px rgba(24, 33, 38, 0.06);
	word-break: normal;
	overflow-wrap: anywhere;
	transition:
		transform var(--mafac-nav-transition-duration) ease,
		border-color var(--mafac-nav-transition-duration) ease,
		box-shadow var(--mafac-nav-transition-duration) ease;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-inner-wrapper:is(:hover, :focus-within) {
	border-color: #a7c8c8;
	box-shadow: var(--mafac-event-shadow);
	transform: translateY(-2px);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-inner-wrapper.ectbe-featured-event {
	border-color: var(--mafac-event-featured-border);
	background: var(--mafac-event-featured-surface);
	box-shadow: 0 8px 24px rgba(122, 55, 143, 0.1);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-inner-wrapper.ectbe-featured-event:is(:hover, :focus-within) {
	border-color: #bd96cc;
	box-shadow: 0 10px 28px rgba(122, 55, 143, 0.15);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-inner-wrapper > .ectbe-date-area {
	box-sizing: border-box;
	flex: 0 0 106px;
	align-self: flex-start;
	min-width: 106px;
	margin: 18px 0 18px 18px;
	padding: 15px 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 2px;
	color: var(--mafac-nav-hover-text);
	border: 1px solid #c7dddd;
	border-radius: 11px;
	background: var(--mafac-event-surface-muted);
	line-height: 1;
	text-align: center;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-inner-wrapper > .ectbe-date-area .ectbe-ev-day {
	order: 1;
	margin: 0;
	color: var(--mafac-nav-hover-text);
	font-size: 1.9rem;
	font-weight: 750;
	line-height: 1;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-inner-wrapper > .ectbe-date-area .ectbe-ev-mo {
	order: 2;
	margin: 0;
	color: var(--mafac-nav-hover-accent);
	font-size: 0.75rem;
	font-weight: 750;
	letter-spacing: 0.09em;
	line-height: 1.2;
	text-transform: uppercase;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event > .ectbe-date-area {
	border-color: var(--mafac-event-featured-border);
	background: var(--mafac-nav-hover-surface);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event > .ectbe-date-area :is(
	.ectbe-ev-day,
	.ectbe-ev-mo
) {
	color: var(--mafac-nav-current-text);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-content-box {
	box-sizing: border-box;
	flex: 1 1 auto;
	min-width: 0;
	padding: 20px 22px;
	border: 0;
	background: transparent;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-content-box > .ectbe-date-area {
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: flex-start;
	gap: 0.3rem;
	min-width: 0;
	margin: 0 0 10px;
	padding: 0 0 10px;
	color: var(--mafac-event-meta);
	border-bottom: 1px solid var(--mafac-event-border);
	font-size: 0.875rem;
	font-weight: 650;
	line-height: 1.45;
	text-align: left;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-content-box > .ectbe-date-area :is(
	.ectbe-ev-day,
	.ectbe-ev-mo,
	.ectbe-ev-yr,
	.ectbe-week-day,
	.ectbe-evt-time
) {
	margin: 0;
	color: var(--mafac-event-meta);
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	text-transform: none;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-evt-category {
	gap: 6px;
	margin: 0 0 8px;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-evt-category li {
	padding: 0;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-each-cate a,
#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-each-cate a:visited {
	padding: 4px 8px;
	color: #006c6b;
	border: 1px solid #8dbcbc;
	border-radius: 999px;
	background: transparent;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.25;
	text-decoration-color: currentColor;
	text-decoration-line: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.14em;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event .ectbe-each-cate a,
#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event .ectbe-each-cate a:visited {
	color: var(--mafac-nav-current-text);
	border-color: #c9aad5;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-evt-title {
	margin: 0 0 9px;
	line-height: 1.25;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-evt-title .ectbe-evt-url,
#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-evt-title .ectbe-evt-url:visited {
	color: var(--mafac-nav-hover-text);
	font-size: clamp(1.15rem, 1.05rem + 0.35vw, 1.4rem);
	font-weight: 750;
	line-height: 1.25;
	text-decoration-color: rgba(0, 123, 122, 0.55);
	text-decoration-line: underline;
	text-decoration-thickness: 1.5px;
	text-underline-offset: 0.16em;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event .ectbe-evt-title .ectbe-evt-url,
#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event .ectbe-evt-title .ectbe-evt-url:visited {
	color: var(--mafac-nav-current-text);
	text-decoration-color: rgba(155, 77, 186, 0.58);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 :is(
	.ectbe-evt-time,
	.ectbe-evt-venue,
	.ectbe-evt-cost,
	.ectbe-evt-description
) {
	color: var(--mafac-event-meta);
	font-size: 0.925rem;
	line-height: 1.6;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-evt-venue {
	align-items: flex-start;
	gap: 7px;
	margin: 0 0 10px;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 :is(
	.ectbe-evt-time,
	.ectbe-evt-venue
) .ectbe-icon,
#content .ectbe-wrapper.ectbe-list-wrapper.style-2 :is(
	.ectbe-evt-time,
	.ectbe-evt-venue
) > i {
	color: var(--mafac-nav-hover-accent);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event :is(
	.ectbe-evt-time,
	.ectbe-evt-venue
) .ectbe-icon,
#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event :is(
	.ectbe-evt-time,
	.ectbe-evt-venue
) > i {
	color: var(--mafac-nav-current-text);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-evt-description {
	margin: 0 0 14px;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-evt-more-box {
	justify-content: flex-start;
	min-width: 0;
	margin-top: auto;
	padding-top: 2px;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 a.ectbe-evt-read-more,
#content .ectbe-wrapper.ectbe-list-wrapper.style-2 a.ectbe-evt-read-more:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 9px 14px;
	color: var(--mafac-nav-hover-text);
	border: 1px solid #8dbcbc;
	border-radius: 999px;
	background: var(--mafac-event-surface);
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	text-transform: none;
	transition:
		color var(--mafac-nav-transition-duration) ease,
		background-color var(--mafac-nav-transition-duration) ease,
		border-color var(--mafac-nav-transition-duration) ease;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event a.ectbe-evt-read-more,
#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event a.ectbe-evt-read-more:visited {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-surface);
	background: var(--mafac-nav-cta-surface);
	text-decoration: none;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 :is(
	.ectbe-each-cate a,
	.ectbe-evt-url
):hover {
	color: var(--mafac-nav-hover-text);
	text-decoration-color: currentColor;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-each-cate a:hover,
#content .ectbe-wrapper.ectbe-list-wrapper.style-2 a.ectbe-evt-read-more:hover {
	border-color: var(--mafac-nav-hover-accent);
	background: #eaf4f3;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 a.ectbe-evt-read-more:hover {
	color: var(--mafac-nav-hover-text);
	text-decoration: none;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event a.ectbe-evt-read-more:hover {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-hover-surface);
	background: var(--mafac-nav-cta-hover-surface);
	text-decoration: none;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 :is(
	.ectbe-each-cate a,
	.ectbe-evt-url
):focus-visible {
	color: var(--mafac-nav-hover-text);
	outline: 2px solid var(--mafac-nav-focus);
	outline-offset: 3px;
	text-decoration-color: currentColor;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 a.ectbe-evt-read-more:focus-visible {
	color: var(--mafac-nav-hover-text);
	outline: 2px solid var(--mafac-nav-focus);
	outline-offset: 3px;
	text-decoration: none;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event a.ectbe-evt-read-more:focus-visible {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-surface);
	background: var(--mafac-nav-cta-surface);
	text-decoration: none;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 :is(
	.ectbe-each-cate a,
	.ectbe-evt-url
):active {
	color: var(--mafac-nav-current-text);
	text-decoration-color: currentColor;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 a.ectbe-evt-read-more:active {
	color: var(--mafac-nav-hover-text);
	border-color: var(--mafac-nav-hover-accent);
	background: #dfeeed;
	text-decoration: none;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event a.ectbe-evt-read-more:active {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-active-surface);
	background: var(--mafac-nav-cta-active-surface);
	text-decoration: none;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-evt-img {
	box-sizing: border-box;
	align-self: stretch;
	width: 34%;
	min-width: 250px;
	height: auto;
	padding: 0;
	overflow: hidden;
	background: var(--mafac-event-surface-muted);
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event .ectbe-evt-img {
	width: 38%;
}

#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-evt-img img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 240px;
	border-radius: 0;
	object-fit: cover;
}

@media (max-width: 767px) {
	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 {
		padding: 6px 0;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-month-header {
		gap: 10px;
		margin: 22px 0 10px;
		padding: 10px 13px;
		border-radius: 9px;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-inner-wrapper {
		margin-bottom: 14px;
		border-radius: 12px;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-inner-wrapper > .ectbe-date-area {
		flex: 0 0 auto;
		align-self: flex-start;
		min-width: 0;
		margin: 15px 15px 0;
		padding: 9px 12px;
		flex-direction: row;
		gap: 6px;
		border-radius: 999px;
		text-align: left;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-inner-wrapper > .ectbe-date-area .ectbe-ev-day {
		font-size: 1.1rem;
		line-height: 1.1;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-inner-wrapper > .ectbe-date-area .ectbe-ev-mo {
		font-size: 0.75rem;
		line-height: 1.1;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-evt-img,
	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event .ectbe-evt-img {
		align-self: auto;
		width: auto;
		min-width: 0;
		height: clamp(180px, 50vw, 250px);
		margin: 12px 15px 0;
		border-radius: 10px;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-evt-img img {
		min-height: 0;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-content-box {
		padding: 17px 15px 20px;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-content-box > .ectbe-date-area {
		gap: 0.25rem;
		margin-bottom: 9px;
		padding-bottom: 9px;
		font-size: 0.875rem;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-evt-title .ectbe-evt-url {
		font-size: 1.125rem;
	}
}

@media (max-width: 420px) {
	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-inner-wrapper > .ectbe-date-area {
		margin: 13px 13px 0;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-evt-img,
	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-featured-event .ectbe-evt-img {
		margin: 10px 13px 0;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-content-box {
		padding: 16px 13px 18px;
	}
}

/* MAFAC treatment for The Events Calendar primary archive and list view. */
body.post-type-archive-tribe_events #content .tribe-events {
	color: var(--mafac-nav-header-text);
	font-family: inherit;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-events-bar {
	min-height: 60px;
	overflow: hidden;
	border: 1px solid var(--mafac-event-border);
	border-radius: 12px;
	background: var(--mafac-event-surface);
	box-shadow: 0 3px 14px rgba(24, 33, 38, 0.06);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-search__input {
	min-height: 52px;
	color: var(--mafac-nav-hover-text);
	background: transparent;
	font-family: inherit;
	font-size: 1rem;
	line-height: 1.35;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-search__input::placeholder {
	color: var(--mafac-event-meta);
	opacity: 1;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-search__button,
body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-search__button:visited {
	min-height: 44px;
	margin: 8px;
	padding: 10px 18px;
	color: var(--mafac-nav-cta-text);
	border: 1px solid var(--mafac-nav-cta-surface);
	border-radius: 8px;
	background: var(--mafac-nav-cta-surface);
	font-family: inherit;
	font-weight: 700;
	line-height: 1.2;
	transition:
		color var(--mafac-nav-transition-duration) ease,
		background-color var(--mafac-nav-transition-duration) ease,
		border-color var(--mafac-nav-transition-duration) ease;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-search__button:hover {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-hover-surface);
	background: var(--mafac-nav-cta-hover-surface);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-search__button:focus,
body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-search__button:focus-visible {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-surface);
	background: var(--mafac-nav-cta-surface);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-search__button:focus-visible {
	outline: 2px solid var(--mafac-nav-focus);
	outline-offset: 2px;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-search__button:active {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-active-surface);
	background: var(--mafac-nav-cta-active-surface);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-view-selector__list {
	align-items: center;
	gap: 4px;
	padding: 7px;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-view-selector__list-item::after,
body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-view-selector__list-item--active::after,
body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link::after {
	display: none;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-view-selector__list-item-link {
	min-height: 44px;
	padding: 10px 12px;
	color: var(--mafac-nav-header-text);
	border: 1px solid transparent;
	border-radius: 8px;
	font-weight: 650;
	line-height: 1.2;
	text-decoration: none;
	transition:
		color var(--mafac-nav-transition-duration) ease,
		background-color var(--mafac-nav-transition-duration) ease,
		border-color var(--mafac-nav-transition-duration) ease;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-view-selector__list-item-link:hover {
	color: var(--mafac-nav-hover-text);
	border-color: var(--mafac-event-border);
	background: var(--mafac-event-surface-muted);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-view-selector__list-item-link:focus-visible {
	color: var(--mafac-nav-hover-text);
	outline: 2px solid var(--mafac-nav-focus);
	outline-offset: 2px;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-view-selector__list-item--active .tribe-events-c-view-selector__list-item-link {
	color: var(--mafac-nav-current-text);
	border-color: var(--mafac-event-featured-border);
	background: var(--mafac-nav-hover-surface);
	font-weight: 750;
}

body.post-type-archive-tribe_events #content .tribe-events :is(
	.tribe-events-c-events-bar__search-button,
	.tribe-events-c-view-selector__button,
	.tribe-events-c-top-bar__nav-link,
	.tribe-events-c-top-bar__today-button,
	.tribe-events-c-top-bar__datepicker-button
) {
	min-height: 44px;
	color: var(--mafac-nav-hover-text);
	border: 1px solid transparent;
	border-radius: 8px;
	background: transparent;
	font-family: inherit;
	transition:
		color var(--mafac-nav-transition-duration) ease,
		background-color var(--mafac-nav-transition-duration) ease,
		border-color var(--mafac-nav-transition-duration) ease;
}

body.post-type-archive-tribe_events #content .tribe-events :is(
	.tribe-events-c-events-bar__search-button,
	.tribe-events-c-view-selector__button,
	.tribe-events-c-top-bar__nav-link,
	.tribe-events-c-top-bar__today-button,
	.tribe-events-c-top-bar__datepicker-button
):hover {
	color: var(--mafac-nav-current-text);
	border-color: var(--mafac-event-border);
	background: var(--mafac-event-surface-muted);
}

body.post-type-archive-tribe_events #content .tribe-events :is(
	.tribe-events-c-events-bar__search-button,
	.tribe-events-c-view-selector__button,
	.tribe-events-c-top-bar__nav-link,
	.tribe-events-c-top-bar__today-button,
	.tribe-events-c-top-bar__datepicker-button
):focus-visible {
	color: var(--mafac-nav-hover-text);
	outline: 2px solid var(--mafac-nav-focus);
	outline-offset: 2px;
	background: var(--mafac-event-surface-muted);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-top-bar {
	align-items: center;
	gap: 6px;
	margin: 24px 0 30px;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-top-bar__nav-list {
	align-items: center;
	gap: 4px;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-top-bar__nav-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	padding: 9px;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-top-bar__nav-link[disabled] {
	opacity: 0.42;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-top-bar__today-button {
	padding: 9px 12px;
	border-color: var(--mafac-event-border);
	background: var(--mafac-event-surface);
	font-weight: 700;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-top-bar__datepicker-button {
	padding: 8px 10px;
	font-size: clamp(1.25rem, 1.1rem + 0.45vw, 1.625rem);
	font-weight: 700;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__month-separator {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 34px 0 16px;
	padding: 0;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__month-separator h3 {
	flex: 0 0 auto;
	margin: 0;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__month-separator-text {
	color: var(--mafac-nav-hover-text);
	font-size: clamp(1rem, 0.96rem + 0.2vw, 1.125rem);
	font-weight: 750;
	letter-spacing: 0.025em;
	line-height: 1.3;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__month-separator::after {
	flex: 1 1 auto;
	height: 1px;
	background: var(--mafac-event-border);
	content: "";
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-row {
	display: flex;
	align-items: stretch;
	flex-wrap: nowrap;
	min-width: 0;
	margin: 0 0 22px;
	overflow: hidden;
	border: 1px solid var(--mafac-event-border);
	border-radius: var(--mafac-event-radius);
	background: var(--mafac-event-surface);
	box-shadow: 0 3px 14px rgba(24, 33, 38, 0.055);
	transition:
		transform var(--mafac-nav-transition-duration) ease,
		border-color var(--mafac-nav-transition-duration) ease,
		box-shadow var(--mafac-nav-transition-duration) ease;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-row:is(:hover, :focus-within) {
	border-color: #a7c8c8;
	box-shadow: var(--mafac-event-shadow);
	transform: translateY(-1px);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-row--featured {
	border-color: var(--mafac-event-featured-border);
	background: var(--mafac-event-featured-surface);
	box-shadow: 0 6px 20px rgba(122, 55, 143, 0.08);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-row--featured:is(:hover, :focus-within) {
	border-color: #bd96cc;
	box-shadow: 0 8px 24px rgba(122, 55, 143, 0.12);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-date-tag {
	display: block;
	flex: 0 0 104px;
	width: 104px;
	min-width: 104px;
	margin: 0;
	padding: 20px 12px;
	border-right: 1px solid var(--mafac-event-border);
	background: var(--mafac-event-surface-muted);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-row--featured .tribe-events-calendar-list__event-date-tag {
	border-right-color: var(--mafac-event-featured-border);
	background: var(--mafac-nav-hover-surface);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-date-tag-datetime {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-direction: column;
	gap: 4px;
	height: auto;
	min-height: 100%;
	text-align: center;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-row--featured .tribe-events-calendar-list__event-date-tag-datetime::after {
	display: none;
	content: none;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-date-tag-weekday {
	color: #006c6b;
	font-size: 0.75rem;
	font-weight: 750;
	letter-spacing: 0.08em;
	line-height: 1.2;
	text-transform: uppercase;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-date-tag-daynum {
	color: var(--mafac-nav-hover-text);
	font-size: clamp(1.75rem, 1.55rem + 0.45vw, 2.1rem);
	font-weight: 750;
	line-height: 1;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-row--featured :is(
	.tribe-events-calendar-list__event-date-tag-weekday,
	.tribe-events-calendar-list__event-date-tag-daynum
) {
	color: var(--mafac-nav-current-text);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-wrapper {
	flex: 1 1 auto;
	width: auto;
	min-width: 0;
	padding: 0;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event {
	display: flex;
	align-items: flex-start;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-start;
	gap: 24px;
	width: 100%;
	min-width: 0;
	height: 100%;
	margin: 0;
	padding: 22px;
	border: 0;
	background: transparent;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-details {
	order: 1;
	flex: 1 1 auto;
	width: auto;
	min-width: 0;
	padding: 2px 0;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-featured-image-wrapper {
	order: 2;
	flex: 0 1 30%;
	width: 30%;
	max-width: 300px;
	margin: 0;
	padding: 0;
	overflow: hidden;
	border-radius: 10px;
	background: var(--mafac-event-surface-muted);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-featured-image {
	display: block;
	width: 100%;
	height: auto;
	max-height: 260px;
	border-radius: 10px;
	object-fit: contain;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-title {
	margin: 0 0 9px;
	line-height: 1.25;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-title-link,
body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-title-link:visited {
	color: #006c6b;
	font-size: clamp(1.15rem, 1.05rem + 0.35vw, 1.45rem);
	font-weight: 750;
	line-height: 1.3;
	text-decoration-color: rgba(0, 123, 122, 0.58);
	text-decoration-line: underline;
	text-decoration-thickness: 1.5px;
	text-underline-offset: 0.16em;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-row--featured .tribe-events-calendar-list__event-title-link,
body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-row--featured .tribe-events-calendar-list__event-title-link:visited {
	color: var(--mafac-nav-current-text);
	text-decoration-color: rgba(155, 77, 186, 0.58);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-title-link:hover {
	color: var(--mafac-nav-hover-text);
	text-decoration-color: var(--mafac-nav-hover-accent);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-title-link:focus-visible {
	color: var(--mafac-nav-hover-text);
	outline: 2px solid var(--mafac-nav-focus);
	outline-offset: 3px;
	text-decoration-color: var(--mafac-nav-hover-accent);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-datetime-wrapper {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0 0 10px;
	color: var(--mafac-event-meta);
	font-size: 0.875rem;
	font-weight: 650;
	line-height: 1.45;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-datetime-featured-icon {
	display: none;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-datetime-featured-text.tribe-common-a11y-visual-hide {
	position: static;
	display: inline-flex;
	align-items: center;
	width: auto;
	height: auto;
	margin: 0;
	padding: 4px 8px;
	overflow: visible;
	clip: auto;
	color: var(--mafac-nav-current-text);
	border: 1px solid var(--mafac-event-featured-border);
	border-radius: 999px;
	background: var(--mafac-nav-hover-surface);
	font-size: 0.75rem;
	font-style: normal;
	font-weight: 750;
	letter-spacing: 0.025em;
	line-height: 1.2;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-datetime {
	color: var(--mafac-event-meta);
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-venue {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	gap: 2px;
	margin: 0;
	color: var(--mafac-event-meta);
	font-size: 0.9rem;
	font-style: normal;
	line-height: 1.5;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-venue-title {
	color: var(--mafac-nav-hover-text);
	font-weight: 750;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-venue-address {
	display: block;
	max-width: 100%;
	overflow-wrap: anywhere;
}

body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-description {
	margin-top: 12px;
	color: var(--mafac-event-meta);
	font-size: 0.925rem;
	line-height: 1.6;
}

@media (max-width: 767px) {
	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-events-bar {
		min-height: 54px;
		border-radius: 10px;
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-events-bar__search-button,
	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-view-selector__button {
		min-width: 44px;
		margin: 5px;
		padding: 9px;
		border-color: var(--mafac-event-border);
		background: var(--mafac-event-surface-muted);
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-events-bar__search-container {
		padding: 12px;
		background: var(--mafac-event-surface);
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-search {
		align-items: stretch;
		flex-direction: column;
		gap: 10px;
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-search__button {
		width: 100%;
		margin: 0;
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-top-bar {
		align-items: center;
		flex-wrap: wrap;
		gap: 4px;
		margin: 18px 0 24px;
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-c-top-bar__datepicker-button {
		min-height: 44px;
		padding: 8px;
		font-size: 1.2rem;
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__month-separator {
		gap: 12px;
		margin: 28px 0 13px;
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-row {
		flex-direction: column;
		margin-bottom: 16px;
		border-radius: 12px;
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-date-tag,
	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-row--featured .tribe-events-calendar-list__event-date-tag {
		flex: 0 0 auto;
		width: 100%;
		min-width: 0;
		padding: 11px 15px;
		border-right: 0;
		border-bottom: 1px solid var(--mafac-event-border);
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-row--featured .tribe-events-calendar-list__event-date-tag {
		border-bottom-color: var(--mafac-event-featured-border);
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-date-tag-datetime {
		align-items: baseline;
		justify-content: flex-start;
		flex-direction: row;
		gap: 8px;
		min-height: 0;
		text-align: left;
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-date-tag-daynum {
		font-size: 1.35rem;
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event {
		align-items: stretch;
		flex-direction: column;
		gap: 16px;
		padding: 18px 15px 20px;
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-details {
		order: 1;
		padding: 0;
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-featured-image-wrapper {
		order: 2;
		flex: 0 0 auto;
		width: 100%;
		max-width: none;
		border-radius: 9px;
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-featured-image {
		max-height: 300px;
		border-radius: 9px;
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-title-link,
	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-title-link:visited {
		font-size: 1.15rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	#content .ectbe-wrapper.ectbe-list-wrapper.style-1 a.ectbe-evt-read-more,
	body.post-type-archive-tribe_events #content .tribe-events :is(
		.tribe-events-c-search__button,
		.tribe-events-c-view-selector__list-item-link,
		.tribe-events-c-events-bar__search-button,
		.tribe-events-c-view-selector__button,
		.tribe-events-c-top-bar__nav-link,
		.tribe-events-c-top-bar__today-button,
		.tribe-events-c-top-bar__datepicker-button,
		.tribe-events-calendar-list__event-row
	) {
		transition-delay: 0s;
		transition-duration: 0s;
	}

	body.post-type-archive-tribe_events #content .tribe-events .tribe-events-calendar-list__event-row:is(:hover, :focus-within) {
		transform: none;
	}
}

/* The child theme is the canonical owner of Astra navigation state styling. */
.site-header {
	background: var(--mafac-nav-header-surface);
	border-bottom: 1px solid var(--mafac-nav-border);
}

#masthead a,
#masthead a *,
#masthead button,
#masthead button *,
#colophon .widget_nav_menu a,
#colophon .ast-footer-social-1-wrap .ast-builder-social-element,
#colophon .ast-footer-social-1-wrap .ast-builder-social-element * {
	transition-delay: 0s;
	transition-duration: var(--mafac-nav-transition-duration);
	transition-property:
		color,
		background-color,
		border-color,
		box-shadow,
		text-decoration-color,
		opacity;
	transition-timing-function: ease;
}

/* Preserve the accepted desktop fit safeguards. */
#ast-desktop-header #menu-item-329 > .menu-link,
#ast-desktop-header .ast-header-button-1 .ast-custom-button-link,
#ast-desktop-header .ast-header-button-1 .ast-custom-button {
	white-space: nowrap;
}

#ast-desktop-header .ast-header-button-1,
#ast-desktop-header .ast-header-button-1 .ast-builder-button-wrap {
	flex: 0 0 auto;
	min-width: max-content;
}

/* Gallery Line: desktop primary navigation. */
#primary-site-navigation-desktop .main-header-menu > .menu-item > .menu-link {
	position: relative;
	color: var(--mafac-nav-header-text);
	text-decoration: none;
}

#primary-site-navigation-desktop .main-header-menu > .menu-item > .menu-link::after {
	position: absolute;
	right: 1em;
	bottom: 20px;
	left: 1em;
	height: 3px;
	background: transparent;
	content: "";
	opacity: 1;
	pointer-events: none;
}

#primary-site-navigation-desktop .main-header-menu > .menu-item:hover > .menu-link,
#primary-site-navigation-desktop .main-header-menu > .menu-item > .menu-link:hover {
	color: var(--mafac-nav-hover-text);
}

#primary-site-navigation-desktop .main-header-menu > .menu-item:hover > .menu-link::after,
#primary-site-navigation-desktop .main-header-menu > .menu-item > .menu-link:hover::after {
	height: 2px;
	background: var(--mafac-nav-hover-accent);
}

#primary-site-navigation-desktop .main-header-menu > .current-menu-item > .menu-link,
#primary-site-navigation-desktop .main-header-menu > .current_page_item > .menu-link,
#primary-site-navigation-desktop .main-header-menu > .menu-item > .menu-link[aria-current="page"] {
	color: var(--mafac-nav-current-text);
}

#primary-site-navigation-desktop .main-header-menu > .current-menu-item > .menu-link::after,
#primary-site-navigation-desktop .main-header-menu > .current_page_item > .menu-link::after,
#primary-site-navigation-desktop .main-header-menu > .menu-item > .menu-link[aria-current="page"]::after {
	height: 3px;
	background: var(--mafac-nav-current-accent);
}

#primary-site-navigation-desktop .main-header-menu > .menu-item > .menu-link:focus-visible,
#masthead .custom-logo-link:focus-visible {
	color: var(--mafac-nav-header-text);
	outline: 2px solid var(--mafac-nav-focus);
	outline-offset: -4px;
}

#primary-site-navigation-desktop .main-header-menu > .current-menu-item > .menu-link:focus-visible,
#primary-site-navigation-desktop .main-header-menu > .current_page_item > .menu-link:focus-visible,
#primary-site-navigation-desktop .main-header-menu > .menu-item > .menu-link[aria-current="page"]:focus-visible {
	color: var(--mafac-nav-current-text);
}

#primary-site-navigation-desktop .main-header-menu > .menu-item > .menu-link:active {
	color: var(--mafac-nav-current-text);
}

/* Give remains a prominent link with a two-part focus indicator. */
#masthead .ast-header-button-1 .ast-custom-button-link {
	border-radius: 8px;
	color: var(--mafac-nav-cta-text);
	text-decoration: none;
}

#masthead .ast-header-button-1 .ast-custom-button {
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--mafac-nav-cta-text);
	background: var(--mafac-nav-cta-surface);
}

#masthead .ast-header-button-1 .ast-custom-button-link:hover .ast-custom-button {
	color: var(--mafac-nav-cta-text);
	background: var(--mafac-nav-cta-hover-surface);
}

#masthead .ast-header-button-1 .ast-custom-button-link:active .ast-custom-button {
	color: var(--mafac-nav-cta-text);
	background: var(--mafac-nav-cta-active-surface);
	box-shadow: inset 0 0 0 2px rgba(24, 33, 38, 0.35);
	transform: none;
}

#masthead .ast-header-button-1 .ast-builder-button-wrap:has(.ast-custom-button-link:focus-visible),
#masthead .ast-header-button-1 .ast-custom-button-link:focus,
#masthead .ast-header-button-1 .ast-custom-button-link:focus-visible {
	outline: none;
}

#masthead .ast-header-button-1 .ast-custom-button-link:focus-visible {
	box-shadow:
		0 0 0 2px var(--mafac-nav-focus-offset),
		0 0 0 4px var(--mafac-nav-focus);
}

/* Native Astra hamburger/close disclosure. */
#ast-mobile-header .main-header-menu-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	min-width: 44px;
	padding: 0;
	color: var(--mafac-nav-cta-text);
	border: 1px solid var(--mafac-nav-cta-surface);
	border-radius: 6px;
	background: var(--mafac-nav-cta-surface);
	transform: none;
}

#ast-mobile-header .main-header-menu-toggle:hover {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-hover-surface);
	background: var(--mafac-nav-cta-hover-surface);
	transform: none;
}

#ast-mobile-header .main-header-menu-toggle:active,
#ast-mobile-header .main-header-menu-toggle[aria-expanded="true"] {
	color: var(--mafac-nav-cta-text);
	border-color: var(--mafac-nav-cta-active-surface);
	background: var(--mafac-nav-cta-active-surface);
	box-shadow: inset 0 0 0 2px rgba(24, 33, 38, 0.35);
	transform: none;
}

#ast-mobile-header .main-header-menu-toggle:focus,
#ast-mobile-header .main-header-menu-toggle:focus-visible {
	outline: none;
}

#ast-mobile-header .main-header-menu-toggle:focus-visible {
	box-shadow:
		inset 0 0 0 2px var(--mafac-nav-focus-offset),
		0 0 0 3px var(--mafac-nav-focus);
}

#ast-mobile-header .main-header-menu-toggle[aria-expanded="false"] .ast-close-svg,
#ast-mobile-header .main-header-menu-toggle[aria-expanded="true"] .ast-menu2-svg {
	display: none;
}

#ast-mobile-header .main-header-menu-toggle[aria-expanded="false"] .ast-menu2-svg,
#ast-mobile-header .main-header-menu-toggle[aria-expanded="true"] .ast-close-svg {
	display: block;
}

#ast-mobile-header .main-header-menu-toggle svg {
	width: 24px;
	height: 24px;
	fill: currentColor;
}

/* Gallery Line: full-width mobile links with an unclipped inset focus box. */
#ast-mobile-site-navigation .main-header-menu > .menu-item > .menu-link {
	position: relative;
	min-height: 59px;
	color: var(--mafac-nav-header-text);
	border-left: 4px solid transparent;
	background: var(--mafac-nav-header-surface);
	text-decoration-color: transparent;
	text-decoration-line: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 0.22em;
}

#ast-mobile-site-navigation .main-header-menu > .menu-item:hover > .menu-link,
#ast-mobile-site-navigation .main-header-menu > .menu-item > .menu-link:hover {
	color: var(--mafac-nav-hover-text);
	border-left-color: transparent;
	background: var(--mafac-nav-header-surface);
	text-decoration-color: var(--mafac-nav-hover-accent);
}

#ast-mobile-site-navigation .main-header-menu > .current-menu-item > .menu-link,
#ast-mobile-site-navigation .main-header-menu > .current_page_item > .menu-link,
#ast-mobile-site-navigation .main-header-menu > .menu-item > .menu-link[aria-current="page"] {
	color: var(--mafac-nav-current-text);
	border-left-color: var(--mafac-nav-current-accent);
	background: var(--mafac-nav-header-surface);
	text-decoration-color: transparent;
}

#ast-mobile-site-navigation .main-header-menu > .menu-item > .menu-link:focus-visible {
	color: var(--mafac-nav-header-text);
	outline: 2px solid var(--mafac-nav-focus);
	outline-offset: -4px;
}

#ast-mobile-site-navigation .main-header-menu > .current-menu-item > .menu-link:focus-visible,
#ast-mobile-site-navigation .main-header-menu > .current_page_item > .menu-link:focus-visible,
#ast-mobile-site-navigation .main-header-menu > .menu-item > .menu-link[aria-current="page"]:focus-visible {
	color: var(--mafac-nav-current-text);
	border-left-color: var(--mafac-nav-current-accent);
}

#ast-mobile-site-navigation .main-header-menu > .menu-item > .menu-link:active {
	color: var(--mafac-nav-current-text);
	background: var(--mafac-nav-hover-surface);
}

/* Astra renders the shared Give component once after the mobile menu. */
#ast-mobile-header .ast-header-button-1 {
	padding: 12px 24px 20px;
}

#ast-mobile-header .ast-header-button-1,
#ast-mobile-header .ast-header-button-1 .ast-builder-button-wrap,
#ast-mobile-header .ast-header-button-1 .ast-custom-button-link {
	width: 100%;
}

#ast-mobile-header .ast-header-button-1 .ast-custom-button {
	min-height: 44px;
}

/* Native WordPress footer navigation widgets. */
#colophon {
	background: var(--mafac-nav-footer-surface);
}

#colophon .widget_nav_menu .widget-title {
	margin: 0 0 0.65rem;
	color: var(--mafac-nav-hover-text);
	font-size: 1.125rem;
	line-height: 1.3;
}

#colophon .widget_nav_menu ul {
	margin: 0;
	list-style: none;
}

#colophon .widget_nav_menu li {
	margin: 0 0 0.3rem;
}

#colophon .widget_nav_menu a {
	position: relative;
	display: inline-block;
	min-height: 28px;
	color: var(--mafac-nav-header-text);
	text-decoration-color: transparent;
	text-decoration-line: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 0.2em;
}

#colophon .widget_nav_menu a:hover {
	color: var(--mafac-nav-hover-text);
	text-decoration-color: var(--mafac-nav-hover-accent);
}

#colophon .widget_nav_menu a[aria-current="page"],
#colophon .widget_nav_menu .current-menu-item > a,
#colophon .widget_nav_menu .current_page_item > a {
	color: var(--mafac-nav-current-text);
	text-decoration-color: var(--mafac-nav-current-accent);
	text-decoration-thickness: 3px;
}

#colophon .widget_nav_menu a[aria-current="page"]::before,
#colophon .widget_nav_menu .current-menu-item > a::before,
#colophon .widget_nav_menu .current_page_item > a::before {
	position: absolute;
	top: 0.2em;
	bottom: 0.2em;
	left: -0.65rem;
	width: 3px;
	background: var(--mafac-nav-current-accent);
	content: "";
}

#colophon .widget_nav_menu a:focus-visible {
	color: var(--mafac-nav-hover-text);
	outline: 2px solid var(--mafac-nav-focus);
	outline-offset: 3px;
}

#colophon .widget_nav_menu a[aria-current="page"]:focus-visible,
#colophon .widget_nav_menu .current-menu-item > a:focus-visible,
#colophon .widget_nav_menu .current_page_item > a:focus-visible {
	color: var(--mafac-nav-current-text);
}

#colophon .widget_nav_menu a:active {
	color: var(--mafac-nav-current-text);
}

/* Retained social destinations use large targets and restrained icons. */
#colophon .ast-footer-social-1-wrap .ast-builder-social-element {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	padding: 0;
	color: var(--mafac-nav-header-text);
	border-radius: 6px;
	background: transparent;
	text-decoration: none;
}

#colophon .ast-footer-social-1-wrap .ast-builder-social-element svg {
	width: 20px;
	height: 20px;
	fill: currentColor;
}

#colophon .ast-footer-social-1-wrap .ast-builder-social-element:hover {
	color: var(--mafac-nav-current-text);
	background: var(--mafac-nav-hover-surface);
}

#colophon .ast-footer-social-1-wrap .ast-builder-social-element:active {
	color: var(--mafac-nav-cta-text);
	background: var(--mafac-nav-cta-active-surface);
}

#colophon .ast-footer-social-1-wrap .ast-builder-social-element:focus,
#colophon .ast-footer-social-1-wrap .ast-builder-social-element:focus-visible {
	outline: none;
}

#colophon .ast-footer-social-1-wrap .ast-builder-social-element:focus-visible {
	box-shadow:
		0 0 0 2px var(--mafac-nav-focus-offset),
		0 0 0 4px var(--mafac-nav-focus);
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto !important;
	}

	#masthead a,
	#masthead a *,
	#masthead button,
	#masthead button *,
	#colophon .widget_nav_menu a,
	#colophon .ast-footer-social-1-wrap .ast-builder-social-element,
	#colophon .ast-footer-social-1-wrap .ast-builder-social-element *,
	#content .elementor-widget-button .elementor-button,
	#content .entry-content a,
	#content .elementor-widget-text-editor a,
	#content .elementor-widget-theme-post-content a,
	#content .tribe-events-single-event-description a,
	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-inner-wrapper,
	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 :is(
		.ectbe-each-cate a,
		.ectbe-evt-url,
		.ectbe-evt-read-more
	) {
		transition-delay: 0s;
		transition-duration: 0s;
	}

	#content .elementor-widget-button .elementor-button:hover,
	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-inner-wrapper:is(:hover, :focus-within) {
		transform: none;
	}
}

@media (forced-colors: active) {
	#primary-site-navigation-desktop .main-header-menu > .menu-item > .menu-link::after,
	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 .ectbe-month-header::after,
	#colophon .widget_nav_menu a[aria-current="page"]::before,
	#colophon .widget_nav_menu .current-menu-item > a::before,
	#colophon .widget_nav_menu .current_page_item > a::before {
		background: currentColor;
	}

	#ast-mobile-site-navigation .main-header-menu > .current-menu-item > .menu-link,
	#ast-mobile-site-navigation .main-header-menu > .current_page_item > .menu-link,
	#ast-mobile-site-navigation .main-header-menu > .menu-item > .menu-link[aria-current="page"] {
		border-left-color: currentColor;
	}

	#masthead .ast-header-button-1 .ast-custom-button,
	#content .elementor-widget-button .elementor-button,
	#content .ectbe-wrapper.ectbe-list-wrapper.style-1 a.ectbe-evt-read-more,
	#ast-mobile-header .main-header-menu-toggle,
	#colophon .ast-footer-social-1-wrap .ast-builder-social-element {
		border: 2px solid ButtonText;
		forced-color-adjust: auto;
	}

	#primary-site-navigation-desktop .main-header-menu > .menu-item > .menu-link:focus-visible,
	#masthead .custom-logo-link:focus-visible,
	#ast-mobile-site-navigation .main-header-menu > .menu-item > .menu-link:focus-visible,
	#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-featured-event :is(
		.ectbe-each-cate a,
		.ectbe-evt-url
	):focus-visible,
	#content .ectbe-wrapper.ectbe-list-wrapper.style-1 a.ectbe-evt-read-more:focus-visible,
	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 :is(
		.ectbe-each-cate a,
		.ectbe-evt-url,
		.ectbe-evt-read-more
	):focus-visible,
	#colophon .widget_nav_menu a:focus-visible {
		outline-color: Highlight;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-featured-event :is(
		.ectbe-each-cate a,
		.ectbe-evt-url,
		.ectbe-evt-read-more
	),
	#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-featured-event :is(
		.ectbe-each-cate a,
		.ectbe-evt-url,
		.ectbe-evt-read-more
	):is(
		:visited,
		:hover,
		:focus-visible,
		:active
	),
	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 :is(
		.ectbe-each-cate a,
		.ectbe-evt-url,
		.ectbe-evt-read-more
	),
	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 :is(
		.ectbe-each-cate a,
		.ectbe-evt-url,
		.ectbe-evt-read-more
	):is(
		:visited,
		:hover,
		:focus-visible,
		:active
	) {
		text-decoration-color: LinkText !important;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-2 :is(
		.ectbe-month-header,
		.ectbe-inner-wrapper,
		.ectbe-date-area,
		.ectbe-each-cate a,
		.ectbe-evt-read-more
	) {
		border-color: currentColor;
	}

	#content .ectbe-wrapper.ectbe-list-wrapper.style-1 .ectbe-featured-event .ectbe-each-cate a {
		border-color: currentColor;
	}

	#masthead .ast-header-button-1 .ast-custom-button-link:focus-visible,
	#content .elementor-widget-button .elementor-button:focus-visible,
	#ast-mobile-header .main-header-menu-toggle:focus-visible,
	#colophon .ast-footer-social-1-wrap .ast-builder-social-element:focus-visible {
		outline: 2px solid Highlight;
		outline-offset: 2px;
		box-shadow: none;
	}
}
