/**
 * Wire archive hero — structural parity only.
 * Visual typography/breadcrumb styling should come from Divi Theme Builder classes.
 */

body .dda-custom-hero.et_pb_section.et_pb_with_background.et_section_regular {
	background-size: cover !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-blend-mode: multiply !important;
	background-color: rgba(57, 36, 37, 0.7) !important;
	box-sizing: border-box !important;
}

/* Desktop: match TB section_0_tb_body. */
@media only screen and (min-width: 981px) {
	body .dda-custom-hero.et_pb_section.et_pb_with_background.et_section_regular,
	body #page-container .dda-custom-hero.et_pb_section.et_pb_section_0_tb_body.et_section_regular {
		padding-top: 155px !important;
		padding-bottom: 20px !important;
	}
}

/*
 * Fixed header clearance (always on this stylesheet — wire hero lives in main#primary,
 * not .et-l--body; do not rely on dda-wire-page-title-banner.css alone).
 */
@media only screen and (max-width: 980px) {
	body .dda-custom-hero.et_pb_section.et_pb_with_background.et_section_regular,
	body #page-container .dda-custom-hero.et_pb_section.et_pb_section_0_tb_body.et_section_regular,
	body #page-container main#primary .dda-custom-hero.et_pb_section.et_section_regular,
	body #main-content .dda-custom-hero.et_pb_section.et_section_regular {
		padding-top: 136px !important;
		padding-bottom: 0 !important;
		min-height: 0 !important;
		position: relative;
		z-index: 1;
	}
}

/*
 * Wire custom hero on phones (TB section_0 in .et-l--body stays at 100px / 767px).
 */
@media only screen and (max-width: 767px) {
	body .dda-custom-hero.et_pb_section.et_pb_with_background.et_section_regular,
	body #page-container .dda-custom-hero.et_pb_section.et_pb_section_0_tb_body.et_section_regular,
	body #page-container main#primary .dda-custom-hero.et_pb_section.et_section_regular,
	body #main-content .dda-custom-hero.et_pb_section.et_section_regular {
		padding-top: 136px !important;
		padding-bottom: 10px !important;
	}
}

body .dda-custom-hero .et_pb_post_title_dda_wire .et_pb_title_container,
body .dda-custom-hero .dda-hero-title-shared .et_pb_title_container {
	position: relative;
	z-index: 2;
}

body .dda-custom-hero .et_pb_column_dda_wire.et_pb_column_4_4 {
	width: 100% !important;
	max-width: 100% !important;
}

/*
 * TB parity: full-bleed hero background, centered 80% content band (section_0_tb_body row).
 * Strip Divi row/column padding that inflates mobile banner height on wire routes.
 */
body .dda-custom-hero.et_pb_section.et_pb_with_background.et_section_regular {
	min-height: 0 !important;
}

body .dda-custom-hero .et_pb_row,
body .dda-custom-hero .et_pb_row_dda_wire {
	width: 80% !important;
	max-width: 1080px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	box-sizing: border-box !important;
}

/*
 * Horizontal inset: TB columns keep side padding so title/breadcrumbs clear the garabato art on the right.
 * Matches wire content band (clamp) and news-detail hero inner (1.5rem cap).
 */
body .dda-custom-hero .et_pb_column,
body .dda-custom-hero .et_pb_column_dda_wire {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	padding-left: clamp(1rem, 4vw, 1.5rem) !important;
	padding-right: clamp(1rem, 4vw, 1.5rem) !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

body .dda-custom-hero .et_pb_module.et_pb_post_title_dda_wire,
body .dda-custom-hero .et_pb_module.dsm_breadcrumbs_dda_wire,
body .dda-custom-hero .et_pb_post_title_dda_wire,
body .dda-custom-hero .dsm_breadcrumbs_dda_wire {
	margin: 0 !important;
	padding: 0 !important;
}

body .dda-custom-hero .et_pb_post_title_dda_wire .et_pb_title_container h1.entry-title,
body .dda-custom-hero .dda-hero-title-shared .et_pb_title_container h1.entry-title {
	margin: 0 0 18px !important;
}

/* Fallback only if TB module class rules are missing. */
body .dda-custom-hero .dda-hero-title-shared .et_pb_title_container h1.entry-title {
	color: #fff !important;
	font-size: 65px !important;
	line-height: 1.05 !important;
	font-weight: 400 !important;
	font-style: normal !important;
	font-synthesis: none;
	word-break: normal !important;
	overflow-wrap: normal !important;
	hyphens: none !important;
}

@media (max-width: 980px) {
	body .dda-custom-hero .dda-hero-title-shared .et_pb_title_container h1.entry-title {
		font-size: 40px !important;
		line-height: 1.1 !important;
	}
}

/* Wire archive compact headers: match site body weight (not bold display heading). */
.dda-news-wire__standard-head .entry-title,
.dda-resources-wire__standard-head .entry-title,
.dda-meetings-wire__standard-head .entry-title,
.dda-events-rss__standard-head .entry-title {
	font-weight: 400;
}

/* Remove duplicate top padding when hero handles offset above the listing. */
.dda-news-wire.dda-news-wire--archive-hero {
	padding-top: 0 !important;
}

.dda-resources-wire.dda-resources-wire--archive-hero {
	padding-top: 0 !important;
}

.dda-meetings-wire.dda-meetings-wire--archive-hero {
	padding-top: 0 !important;
}

.dda-events-rss.dda-events-rss--archive-hero {
	padding-top: 0 !important;
}

/*
 * Legacy Theme Builder pages use ~52px top padding on the first body section after the hero
 * (see et_pb_section_1_tb_body). Recreate that gap between the custom hero and wire content.
 */
.dda-news-wire.dda-news-wire--archive-hero > .container,
.dda-meetings-wire.dda-meetings-wire--archive-hero > .container {
	padding-top: 52px;
	box-sizing: border-box;
}

.dda-news-wire.dda-news-wire--archive-hero > .dda-news-wire__layout,
body.dda-news-wire-page--with-sidebar .dda-news-wire.dda-news-wire--archive-hero > .dda-news-wire__layout,
.dda-meetings-wire.dda-meetings-wire--archive-hero > .dda-meetings-wire__layout,
body.dda-meetings-wire-page--with-sidebar .dda-meetings-wire.dda-meetings-wire--archive-hero > .dda-meetings-wire__layout,
.dda-resources-wire.dda-resources-wire--archive-hero > .container,
.dda-resources-wire.dda-resources-wire--archive-hero > .dda-resources-wire__layout,
body.dda-resources-wire-page--with-sidebar .dda-resources-wire.dda-resources-wire--archive-hero > .dda-resources-wire__layout,
.dda-events-rss.dda-events-rss--archive-hero > .container,
.dda-events-rss.dda-events-rss--archive-hero > .dda-events-rss__layout,
body.dda-events-rss-page--with-sidebar .dda-events-rss.dda-events-rss--archive-hero > .dda-events-rss__layout {
	padding-top: 52px !important;
	box-sizing: border-box;
}

@media only screen and (max-width: 980px) {
	body .dda-custom-hero .et_pb_post_title_dda_wire .et_pb_title_container h1.entry-title,
	body .dda-custom-hero .dda-hero-title-shared .et_pb_title_container h1.entry-title {
		margin: 0 0 8px !important;
	}

}

/*
 * Hero (dark overlay): breadcrumb links — underline on hover / focus (DSM defaults are weak here).
 * Mirrored in wp_head/wp_footer critical CSS with !important where Divi wins specificity.
 */
body .dda-custom-hero .dsm_breadcrumbs_dda_wire a {
	text-decoration: none;
	transition: color 0.15s ease, text-decoration-color 0.15s ease;
}

body .dda-custom-hero .dsm_breadcrumbs_dda_wire a:hover,
body .dda-custom-hero .dsm_breadcrumbs_dda_wire a:focus-visible {
	color: #fff;
	text-decoration: underline;
	text-underline-offset: 0.2em;
	text-decoration-thickness: 1px;
}

body .dda-custom-hero .dsm_breadcrumbs_dda_wire a:focus-visible {
	outline: 2px solid rgba(255, 255, 255, 0.88);
	outline-offset: 3px;
}

/* Wire standard head (no hero): same hover affordance on light background. */
.dda-news-wire__standard-head .dsm_breadcrumbs a,
.dda-resources-wire__standard-head .dsm_breadcrumbs a,
.dda-meetings-wire__standard-head .dsm_breadcrumbs a,
.dda-events-rss__standard-head .dsm_breadcrumbs a {
	text-decoration: none;
	transition: color 0.15s ease, text-decoration-color 0.15s ease;
}

.dda-news-wire__standard-head .dsm_breadcrumbs a:hover,
.dda-news-wire__standard-head .dsm_breadcrumbs a:focus-visible,
.dda-resources-wire__standard-head .dsm_breadcrumbs a:hover,
.dda-resources-wire__standard-head .dsm_breadcrumbs a:focus-visible,
.dda-meetings-wire__standard-head .dsm_breadcrumbs a:hover,
.dda-meetings-wire__standard-head .dsm_breadcrumbs a:focus-visible,
.dda-events-rss__standard-head .dsm_breadcrumbs a:hover,
.dda-events-rss__standard-head .dsm_breadcrumbs a:focus-visible {
	color: #0f172a;
	text-decoration: underline;
	text-underline-offset: 0.2em;
	text-decoration-thickness: 1px;
}

.dda-news-wire__standard-head .dsm_breadcrumbs a:focus-visible,
.dda-resources-wire__standard-head .dsm_breadcrumbs a:focus-visible,
.dda-meetings-wire__standard-head .dsm_breadcrumbs a:focus-visible,
.dda-events-rss__standard-head .dsm_breadcrumbs a:focus-visible {
	outline: 2px solid #392425;
	outline-offset: 2px;
}

/*
 * Separators: mirror Divi Supreme (`dsm_sep_arrow_icon` + `et-pb-icon dsm_separator_icon`).
 * Force body/text font for &rsaquo; so EtModules does not substitute a different glyph.
 */
.dsm_breadcrumbs_separator .dsm_separator_icon.et-pb-icon,
.dsm_breadcrumbs.dda-wire-breadcrumbs--css-sep > li + li::before {
	font-family: inherit !important;
	font-weight: 400;
	font-style: normal;
}
