/* ============================================================
 * TTMHN site-wide page components (loaded on every page).
 * Brand: purple #7F4182, gold #D09B2C.
 * ============================================================ */

/* Standalone gold CTA button, usable in any Text/Code module:
   <a class="ttmhn-btn-gold" href="...">Label</a> */
a.ttmhn-btn-gold,
.ttmhn-btn-gold {
	display: inline-block;
	padding: 12px 26px;
	background: #D09B2C;
	color: #FFFFFF !important;
	font-weight: 700;
	font-size: 15px;
	letter-spacing: 1px;
	text-transform: uppercase;
	text-decoration: none;
	border: 0;
	border-radius: 8px;
	line-height: 1.3;
	cursor: pointer;
	transition: background-color .2s ease;
}
a.ttmhn-btn-gold:hover,
a.ttmhn-btn-gold:focus,
.ttmhn-btn-gold:hover,
.ttmhn-btn-gold:focus {
	background: #B9861F;
	color: #FFFFFF !important;
}

/* Mailchimp signup card (Join the Network page) */
.ttmhn-signup {
	background: #F8F4F9;
	border-top: 4px solid #7F4182;
	border-radius: 10px;
	padding: 28px 28px 30px;
}
.ttmhn-signup h2 {
	color: #7F4182;
	font-size: 24px;
	font-weight: 700;
	margin: 0 0 6px;
	padding: 0;
}
.ttmhn-signup .indicates-required {
	font-size: 13px;
	color: #5A4A5B;
	margin-bottom: 14px;
}
.ttmhn-signup .asterisk { color: #7F4182; font-weight: 700; }
.ttmhn-signup .mc-field-group { margin-bottom: 14px; }
.ttmhn-signup label {
	display: block;
	font-weight: 600;
	font-size: 14px;
	color: #2B2B2B;
	margin-bottom: 5px;
}
.ttmhn-signup input[type="email"],
.ttmhn-signup input[type="text"] {
	width: 100%;
	box-sizing: border-box;
	padding: 11px 12px;
	font-size: 16px; /* 16px stops iOS zooming on focus */
	border: 1px solid #CBBCCC;
	border-radius: 6px;
	background: #FFFFFF;
	color: #2B2B2B;
}
.ttmhn-signup input[type="email"]:focus,
.ttmhn-signup input[type="text"]:focus {
	outline: 2px solid #7F4182;
	outline-offset: 1px;
	border-color: #7F4182;
}
.ttmhn-signup input[type="submit"] {
	margin-top: 6px;
	width: 100%;
	-webkit-appearance: none;
	appearance: none;
}
.ttmhn-signup .ttmhn-signup-note {
	font-size: 13px;
	color: #5A4A5B;
	margin: 12px 0 0;
	padding: 0;
}

/* Referral cards (Refer to Phoenix Centre page) */
.ttmhn-ref-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 24px;
	margin-top: 10px;
}
.ttmhn-ref-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	background: #FFFFFF;
	border: 1px solid #E6DCE7;
	border-radius: 10px;
	padding: 26px 20px 24px;
	text-decoration: none;
	color: #2B2B2B;
	transition: box-shadow .2s ease, transform .2s ease;
}
a.ttmhn-ref-card:hover,
a.ttmhn-ref-card:focus {
	box-shadow: 0 8px 22px rgba(127, 65, 130, .16);
	transform: translateY(-2px);
	color: #2B2B2B;
}
.ttmhn-ref-card img {
	width: 96px;
	height: 96px;
	object-fit: contain;
	margin-bottom: 14px;
}
.ttmhn-ref-card h3 {
	color: #7F4182;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0 0 8px;
	padding: 0;
}
.ttmhn-ref-card p {
	font-size: 15px;
	line-height: 1.5;
	margin: 0 0 16px;
	padding: 0;
	flex-grow: 1;
}
.ttmhn-ref-card .ttmhn-ref-cta {
	font-weight: 700;
	font-size: 14px;
	letter-spacing: .5px;
	text-transform: uppercase;
	color: #D09B2C;
}

/* Global footer (Theme Builder layout 232): on phones the logo /
   tagline / Join button row stacks instead of squeezing the tagline. */
@media (max-width: 767px) {
	.et-l--footer .et_pb_row_0_tb_footer {
		flex-wrap: wrap !important;
		row-gap: 18px;
	}
	.et-l--footer .et_pb_row_0_tb_footer > .et_pb_column {
		flex: 0 0 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		margin-right: 0 !important;
		text-align: center;
	}
	.et-l--footer .et_pb_row_0_tb_footer .et_pb_image,
	.et-l--footer .et_pb_row_0_tb_footer .et_pb_button_module_wrapper {
		margin-left: auto !important;
		margin-right: auto !important;
		text-align: center;
	}
}

/* The Events Calendar views (/events/ list, month, day): TEC pads its
   container ~80px top / ~120px bottom, which left a big empty band under
   the header. */
.tribe-events .tribe-events-l-container,
.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container {
	padding-top: 40px !important;
	padding-bottom: 64px !important;
}
@media (max-width: 767px) {
	.tribe-events .tribe-events-l-container {
		padding-top: 24px !important;
		padding-bottom: 40px !important;
	}
}

/* Post listings run full width (see ttmhn_full_width_listings() in
   functions.php); stretch featured images to the content width instead
   of stopping at their 1080px source size. */
.et_full_width_page #left-area .entry-featured-image-url {
	display: block;
}
.et_full_width_page #left-area .entry-featured-image-url img {
	width: 100%;
	height: auto;
	max-height: 560px !important; /* portrait report covers would otherwise be ~1500px tall */
	object-fit: cover !important;
	object-position: center top !important;
}

/* ------------------------------------------------------------
 * Page banner for templates outside the Divi builder
 * (used by tribe/events/v2/default-template.php). Matches the
 * builder banners on the resource pages: same image, purple
 * fallback, 110/70 padding, white 40px heading.
 * ------------------------------------------------------------ */
.ttmhn-page-banner {
	/* left-side purple shade keeps the white intro text readable over the busy artwork */
	background:
		linear-gradient(90deg, rgba(64, 26, 66, .72) 0%, rgba(64, 26, 66, .38) 55%, rgba(64, 26, 66, 0) 85%),
		#7F4182 url("/wp-content/uploads/2026/06/tim-mossholder-Pur8iZHqMG4-unsplash-e1594121185391.jpg") center / cover no-repeat;
	padding: 110px 0 70px;
}
.ttmhn-page-banner__inner {
	width: 80%;
	max-width: 1240px;
	margin: 0 auto;
}
.ttmhn-page-banner__title {
	color: #FFFFFF;
	font-family: var(--et_global_heading_font), sans-serif;
	font-size: 40px;
	font-weight: 700;
	line-height: 1.2em;
	margin: 0;
	padding: 0;
	text-shadow: 0 2px 12px rgba(0, 0, 0, .35);
}
.ttmhn-page-banner__text {
	color: #FFFFFF;
	font-size: 18px;
	line-height: 1.6;
	max-width: 720px;
	margin: 14px 0 0;
	padding: 0;
	text-shadow: 0 1px 8px rgba(0, 0, 0, .4);
}
@media (max-width: 767px) {
	.ttmhn-page-banner {
		padding: 64px 0 44px;
		background:
			linear-gradient(rgba(64, 26, 66, .62), rgba(64, 26, 66, .62)),
			#7F4182 url("/wp-content/uploads/2026/06/tim-mossholder-Pur8iZHqMG4-unsplash-e1594121185391.jpg") center / cover no-repeat;
	}
	.ttmhn-page-banner__inner { width: auto; margin: 0 16px; }
	.ttmhn-page-banner__title { font-size: 28px; }
	.ttmhn-page-banner__text { font-size: 16px; }
}

/* The Events Calendar — TTMHN brand. TEC exposes its palette and fonts as
   CSS custom properties; override them rather than individual selectors. */
.tribe-common,
.tribe-events {
	--tec-color-accent-primary: #7F4182;
	--tec-color-accent-primary-hover: #6A3570;
	--tec-color-accent-primary-active: #5A2D60;
	--tec-color-accent-primary-background: rgba(127, 65, 130, .07);
	--tec-color-accent-primary-background-datepicker: #7F4182;
	--tec-color-accent-primary-multiday: rgba(127, 65, 130, .24);
	--tec-color-accent-primary-multiday-hover: rgba(127, 65, 130, .34);
	--tec-color-button-primary: #7F4182;
	--tec-color-button-primary-hover: #6A3570;
	--tec-color-button-primary-active: #5A2D60;
	--tec-color-button-primary-background: rgba(127, 65, 130, .07);
	--tec-color-link-accent: #7F4182;
	--tec-color-link-accent-hover: #6A3570;
	--tec-color-day-marker-current-month: #7F4182;
	--tec-color-day-marker-current-month-hover: #6A3570;
	--tec-color-background-events-bar-submit-button: #7F4182;
	--tec-color-background-events-bar-submit-button-hover: #6A3570;
	--tec-color-background-events-bar-submit-button-active: #5A2D60;
	--tec-color-border-active: #7F4182;
	--tec-font-family-sans-serif: var(--et_global_body_font), sans-serif;
	--tec-font-family-base: var(--et_global_body_font), sans-serif;
}
/* Headings in the site heading font, purple like the rest of the site */
.tribe-events .tribe-events-calendar-list__event-title,
.tribe-events .tribe-events-calendar-list__event-title-link,
.tribe-events .tribe-events-c-top-bar__datepicker-button,
.tribe-events .tribe-events-calendar-list__month-separator-text,
.tribe-events .tribe-events-calendar-month__header-column-title,
.tribe-events .tribe-events-calendar-day__type-separator-text,
.tribe-events .tribe-events-calendar-list__event-date-tag-daynum {
	font-family: var(--et_global_heading_font), sans-serif;
}
.tribe-events .tribe-events-calendar-list__event-title-link,
.tribe-events .tribe-events-calendar-list__event-title-link:visited {
	color: #7F4182;
}
.tribe-events .tribe-events-calendar-list__event-title-link:hover,
.tribe-events .tribe-events-calendar-list__event-title-link:focus {
	color: #6A3570;
	border-bottom-color: #D09B2C;
}
.tribe-events .tribe-events-calendar-list__event-date-tag-daynum {
	color: #7F4182;
}
.tribe-events .tribe-events-calendar-list__month-separator-text {
	color: #7F4182;
	font-weight: 700;
}
/* "Find Events" submit: gold, like the site's other primary CTAs */
.tribe-common .tribe-events-c-search__button,
.tribe-common button.tribe-events-c-search__button {
	background-color: #D09B2C;
	border-radius: 8px;
	font-weight: 700;
	letter-spacing: .5px;
}
.tribe-common .tribe-events-c-search__button:hover,
.tribe-common .tribe-events-c-search__button:focus {
	background-color: #B9861F;
}
/* Event cards: soft rounded featured images */
.tribe-events .tribe-events-calendar-list__event-featured-image {
	border-radius: 10px;
}

/* Single event pages (TEC single-event template) */
#tribe-events-pg-template,
.tribe-events-single {
	font-family: var(--et_global_body_font), sans-serif;
}
.tribe-events-single .tribe-events-single-event-title {
	font-family: var(--et_global_heading_font), sans-serif;
	color: #7F4182;
	font-weight: 700;
}
.tribe-events-single .tribe-events-back a,
.tribe-events-single .tribe-events-back a:visited {
	color: #7F4182;
	font-weight: 600;
}
.tribe-events-single .tribe-events-back a:hover {
	color: #D09B2C;
}
.tribe-events-single .tribe-events-schedule h2,
.tribe-events-single .tribe-event-date-start {
	color: #5A4A5B;
}
.tribe-events-single .tribe-events-single-section-title {
	font-family: var(--et_global_heading_font), sans-serif;
	color: #7F4182;
}
.tribe-events-single .tribe-events-event-meta a,
.tribe-events-single .tribe-events-content a,
.tribe-events-single .tribe-events-nav-pagination a {
	color: #7F4182;
}
.tribe-events-single .tribe-events-event-image img {
	border-radius: 10px;
}

/* Single posts run full width too: featured image matches the content width */
.single-post.et_full_width_page .et_post_meta_wrapper img {
	width: 100%;
	height: auto;
	max-height: 560px !important;
	object-fit: cover !important;
	object-position: center top !important;
}

/* Search results: pages have no author/date worth showing ("by | date") */
.search-results #left-area .type-page .post-meta {
	display: none;
}
