/**
 * Energy Coast UTC — high-priority WCAG remediation styles.
 * Targets audit findings: contrast, footer navigation, staff grids, hero overlays.
 */

/* Footer navigation links (menu-item-1813 … 1831) */
#page-footer .w-menu.style_links {
	--main-color: #ffffff;
}

#page-footer .w-menu.style_links a,
#page-footer .w-menu.style_links .menu-item a {
	color: #ffffff !important;
	text-decoration-color: rgba(255, 255, 255, 0.55);
}

#page-footer .w-menu.style_links a:hover,
#page-footer .w-menu.style_links a:focus-visible,
#page-footer .w-menu.style_links .menu-item a:hover,
#page-footer .w-menu.style_links .menu-item a:focus-visible {
	color: #e8f6ff !important;
	text-decoration-color: currentColor;
}

#page-footer .us_custom_8b3d6790,
#page-footer .us_custom_8b3d6790 a {
	color: #ffffff !important;
}

/* Footer / content decorative images — alt handled in JS/PHP */

/* Primary CTA buttons in page content */
#page-content .w-btn .w-btn-label {
	color: #ffffff;
}

#page-content .w-btn.us-btn-style_2 {
	--btn-color: #002f49;
	--btn-hover-color: #001a29;
}

#page-content .w-btn.us-btn-style_2 .w-btn-label {
	color: #ffffff;
}

/* Hero headings on photographic backgrounds */
#page-content h1.vc_custom_heading,
#page-content .us_custom_cda6f729,
#page-content .us_custom_777a5a5b {
	color: #ffffff !important;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.72);
}

#page-content .us_custom_cf389674,
#page-content .us_custom_4b261ef8,
#page-content .us_custom_74e2e327,
#page-content .us_custom_27f484e3 {
	color: #ffffff !important;
}

/* Semi-transparent blue panels — solid enough for AA contrast */
#page-content .us_custom_cf389674,
#page-content .us_custom_4b261ef8 {
	background: rgba(0, 90, 140, 0.96) !important;
}

/* Staff directory grids — text over portrait images */
.layout_2134 .usg_post_title_1,
.layout_2134 .usg_post_title_1 a {
	color: #ffffff !important;
	background: rgba(0, 47, 73, 0.9) !important;
	padding: 0.35rem 0.5rem !important;
	text-decoration: none;
}

.layout_2134 .usg_post_custom_field_1 {
	color: #ffffff !important;
	background: rgba(0, 47, 73, 0.82) !important;
	padding: 0.2rem 0.5rem !important;
}

.layout_2134 .w-grid-item-h {
	isolation: isolate;
}

/* Search submit injected by accessibility-fixes.js */
form.w-form-row[role="search"] .ecutc-a11y-search-submit {
	margin-top: 0.5rem;
	padding: 0.55rem 1rem;
	border: 0;
	border-radius: 4px;
	background: #002f49;
	color: #ffffff;
	font-weight: 600;
	cursor: pointer;
}

form.w-form-row[role="search"] .ecutc-a11y-search-submit:hover,
form.w-form-row[role="search"] .ecutc-a11y-search-submit:focus-visible {
	background: #00486e;
	outline: 2px solid #ffffff;
	outline-offset: 2px;
}

/* Cookie consent */
#us-set-cookie,
#us-set-cookie a,
#us-set-cookie .w-btn-label {
	color: #ffffff !important;
}

#us-set-cookie {
	background: rgba(0, 47, 73, 0.96) !important;
}

/* Facebook feed plugin contrast */
#eapps-facebook-feed-1,
#eapps-facebook-feed-1 a {
	color: #002f49 !important;
}

/* Legacy Impreza header (if present in DOM on cached/old templates) */
#page-header .w-btn .w-btn-label {
	color: #ffffff !important;
}

#page-header .w-image-h img[alt=""] {
	/* Handled in JS from aria-label */
}

/* Social icons: presentation SVG fix handled in JS; ensure link contrast */
#page-footer .w-socials-item-link {
	color: #ffffff !important;
}

/* Visually hidden text (skip link, new-window hints) */
.ecutc-a11y-visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.ecutc-a11y-skip-link {
	position: absolute;
	left: 0.75rem;
	top: -100px;
	z-index: 100000;
	padding: 0.65rem 1rem;
	background: #002f49;
	color: #ffffff;
	font-weight: 600;
	text-decoration: none;
	border-radius: 0 0 6px 6px;
}

.ecutc-a11y-skip-link:focus {
	top: 0;
	outline: 3px solid #a0b342;
	outline-offset: 2px;
}

/* Medium: remaining text contrast on inherited link colours */
#page-content a:not(.w-btn):not(.ecutc-mega__link) {
	text-decoration-thickness: from-font;
}

#page-content .color_link_inherit,
#page-content .w-text a {
	color: #00486e;
}

#page-footer .w-text a {
	color: #e8f6ff;
}

/* Focus visibility for keyboard navigation */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: 2px solid #a0b342;
	outline-offset: 2px;
}
