/**
 * EventCore — Page title bar.
 */

.eventcore-pt {
	position: relative;
	overflow: hidden;
	color: inherit;
}

.eventcore-pt:not(.wd-page-title) {
	padding: 4em 1.5em;
	margin: 0 0 2em;
	background: var(--ec-pt-bg, #f8fafc);
	min-height: 200px;
	display: flex;
	align-items: center;
}

.eventcore-pt__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.eventcore-pt__bg-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.eventcore-pt__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: rgba(0, 0, 0, var(--eventcore-pt-overlay, 0));
	pointer-events: none;
}

.eventcore-pt__inner {
	position: relative;
	z-index: 2;
	width: 100%;
}

.eventcore-pt__title {
	margin: 0;
	line-height: 1.1;
	color: inherit;
	display: block;
	width: 100%;
}

.eventcore-pt__date {
	margin-top: 0.5em;
	font-size: 1.1em;
	opacity: 0.9;
	color: inherit;
	display: block;
	width: 100%;
}

.eventcore-pt__breadcrumbs {
	margin-top: 0.75em;
	font-size: 0.9em;
	opacity: 0.85;
}

/* ============================================================
   ALIGNMENT — high specificity to defeat Woodmart's CSS
   ============================================================ */

/* Generic case (no Woodmart) */
.eventcore-pt-align-left .eventcore-pt__inner    { text-align: left; }
.eventcore-pt-align-center .eventcore-pt__inner  { text-align: center; }
.eventcore-pt-align-right .eventcore-pt__inner   { text-align: right; }

/* Force breadcrumbs container to be a centerable block.
   Without this, Woodmart's `.wd-breadcrumbs` stays inline-flex aligned
   to the start regardless of parent text-align. */
.eventcore-pt.eventcore-pt-align-left .wd-breadcrumbs,
.eventcore-pt.eventcore-pt-align-left .yoast-breadcrumb,
.eventcore-pt.eventcore-pt-align-left .eventcore-pt__breadcrumbs {
	display: block !important;
	text-align: left !important;
	width: 100%;
}

.eventcore-pt.eventcore-pt-align-center .wd-breadcrumbs,
.eventcore-pt.eventcore-pt-align-center .yoast-breadcrumb,
.eventcore-pt.eventcore-pt-align-center .eventcore-pt__breadcrumbs {
	display: block !important;
	text-align: center !important;
	width: 100%;
}

.eventcore-pt.eventcore-pt-align-right .wd-breadcrumbs,
.eventcore-pt.eventcore-pt-align-right .yoast-breadcrumb,
.eventcore-pt.eventcore-pt-align-right .eventcore-pt__breadcrumbs {
	display: block !important;
	text-align: right !important;
	width: 100%;
}

/* High-specificity overrides for the title and other inline content */
.eventcore-pt.eventcore-pt-align-left .container,
.eventcore-pt.eventcore-pt-align-left .container h1,
.eventcore-pt.eventcore-pt-align-left h1.entry-title,
.eventcore-pt.eventcore-pt-align-left h1.title,
.eventcore-pt.eventcore-pt-align-left .eventcore-pt__title,
.eventcore-pt.eventcore-pt-align-left .eventcore-pt__date {
	text-align: left !important;
	justify-content: flex-start !important;
}

.eventcore-pt.eventcore-pt-align-center .container,
.eventcore-pt.eventcore-pt-align-center .container h1,
.eventcore-pt.eventcore-pt-align-center h1.entry-title,
.eventcore-pt.eventcore-pt-align-center h1.title,
.eventcore-pt.eventcore-pt-align-center .eventcore-pt__title,
.eventcore-pt.eventcore-pt-align-center .eventcore-pt__date {
	text-align: center !important;
	justify-content: center !important;
	align-self: center !important;
}

/* Date container also needs to be a centerable block — same root cause as
   breadcrumbs: parent .container may use flex layout. */
.eventcore-pt.eventcore-pt-align-center .eventcore-pt__date {
	display: block !important;
	width: 100% !important;
}
.eventcore-pt.eventcore-pt-align-left .eventcore-pt__date,
.eventcore-pt.eventcore-pt-align-right .eventcore-pt__date {
	display: block !important;
	width: 100% !important;
}

.eventcore-pt.eventcore-pt-align-right .container,
.eventcore-pt.eventcore-pt-align-right .container h1,
.eventcore-pt.eventcore-pt-align-right h1.entry-title,
.eventcore-pt.eventcore-pt-align-right h1.title,
.eventcore-pt.eventcore-pt-align-right .eventcore-pt__title,
.eventcore-pt.eventcore-pt-align-right .eventcore-pt__date {
	text-align: right !important;
	justify-content: flex-end !important;
}

/* ============================================================
   SIZE / HEIGHT
   ============================================================ */
.eventcore-pt-size-small:not(.wd-page-title)  { padding: 2em 1.5em; min-height: 120px; }
.eventcore-pt-size-medium:not(.wd-page-title) { padding: 4em 1.5em; min-height: 200px; }
.eventcore-pt-size-large:not(.wd-page-title)  { padding: 6em 1.5em; min-height: 320px; }

.eventcore-pt-size-small.wd-page-title  .container { padding-top: 1.5em; padding-bottom: 1.5em; }
.eventcore-pt-size-medium.wd-page-title .container { padding-top: 3em;   padding-bottom: 3em; }
.eventcore-pt-size-large.wd-page-title  .container { padding-top: 5em;   padding-bottom: 5em; }

/* ============================================================
   TITLE COLOR PRESETS
   ============================================================ */
.eventcore-pt-color-light .eventcore-pt__title,
.eventcore-pt-color-light .eventcore-pt__date,
.eventcore-pt-color-light .eventcore-pt__breadcrumbs,
.eventcore-pt-color-light .entry-title,
.eventcore-pt-color-light .wd-breadcrumbs,
.eventcore-pt-color-light .wd-breadcrumbs *,
.eventcore-pt-color-light .wd-breadcrumbs a,
.eventcore-pt-color-light .yoast-breadcrumb,
.eventcore-pt-color-light .yoast-breadcrumb *,
.eventcore-pt-color-light .yoast-breadcrumb a {
	color: #ffffff !important;
}

.eventcore-pt-color-light .wd-breadcrumbs a:hover,
.eventcore-pt-color-light .yoast-breadcrumb a:hover {
	color: rgba(255, 255, 255, 0.75) !important;
}

.eventcore-pt-color-dark .eventcore-pt__title,
.eventcore-pt-color-dark .eventcore-pt__date,
.eventcore-pt-color-dark .eventcore-pt__breadcrumbs,
.eventcore-pt-color-dark .entry-title,
.eventcore-pt-color-dark .wd-breadcrumbs,
.eventcore-pt-color-dark .wd-breadcrumbs *,
.eventcore-pt-color-dark .wd-breadcrumbs a,
.eventcore-pt-color-dark .yoast-breadcrumb,
.eventcore-pt-color-dark .yoast-breadcrumb *,
.eventcore-pt-color-dark .yoast-breadcrumb a {
	color: #1d2327 !important;
}

.eventcore-pt-color-dark .wd-breadcrumbs a:hover,
.eventcore-pt-color-dark .yoast-breadcrumb a:hover {
	color: #555c61 !important;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 600px) {
	.eventcore-pt-size-small:not(.wd-page-title),
	.eventcore-pt-size-medium:not(.wd-page-title),
	.eventcore-pt-size-large:not(.wd-page-title) {
		padding: 2em 1em;
		min-height: 140px;
	}
}

/* ============================================================
   HIDE POST META — activated by body class when the setting is on
   ============================================================ */
body.eventcore-hide-post-meta.single-eventcore_event .entry-meta,
body.eventcore-hide-post-meta.single-eventcore_event .post-meta,
body.eventcore-hide-post-meta.single-eventcore_event .author-meta,
body.eventcore-hide-post-meta.single-eventcore_event .posted-on,
body.eventcore-hide-post-meta.single-eventcore_event .byline,
body.eventcore-hide-post-meta.single-eventcore_event .wd-entities-title + .wd-post-meta,
body.eventcore-hide-post-meta.single-eventcore_event .wd-post-meta,
body.eventcore-hide-post-meta.single-eventcore_event .meta-post-categories {
	display: none !important;
}

/* ============================================================
   HIDE DUPLICATE TITLE — when our page title bar is rendered,
   the theme's content-area title is a duplicate H1. Hide it
   universally on event single pages (SEO + a11y fix).
   ============================================================ */
body.eventcore-has-page-title.single-eventcore_event .wd-entities-title,
body.eventcore-has-page-title.single-eventcore_event .site-content > h1.entry-title,
body.eventcore-has-page-title.single-eventcore_event .wd-content-area > article > h1.entry-title,
body.eventcore-has-page-title.single-eventcore_event .entry-content > h1.entry-title,
body.eventcore-has-page-title.single-eventcore_event article.post > header > h1,
body.eventcore-has-page-title.single-eventcore_event .post-template > article > h1 {
	display: none !important;
}
