/**
 * HVL Accessibility Pack — CSS fixes.
 * Scoped by body classes added when each toggle is enabled.
 */

/* #18 — Favorites control contrast (business-listing template).
   Darkened to meet 4.5:1 against a white card background. */
body.hvl-a11y-fav-contrast .bbd-fav > span {
	color: #595959 !important; /* 7.0:1 on #fff */
}
body.hvl-a11y-fav-contrast .bbd-fav:hover > span,
body.hvl-a11y-fav-contrast .bbd-fav:focus > span {
	color: #3d3d3d !important;
}

/* #4 — In-text links should not rely on color alone. */
body.hvl-a11y-link-underline .entry-content p a:not(.et_pb_button),
body.hvl-a11y-link-underline .entry-content li a:not(.et_pb_button),
body.hvl-a11y-link-underline .tribe-events-single-event-description a,
body.hvl-a11y-link-underline .tribe-events-content a {
	text-decoration: underline !important;
	text-underline-offset: 2px;
}

/* #3 — Optional scrim to protect white text over light photos.
   Applied to common Divi hero/fullwidth-header and slider text areas.
   Review visually before enabling site-wide (off by default). */
body.hvl-a11y-photo-scrim .et_pb_fullwidth_header .et_pb_fullwidth_header_overlay {
	background: linear-gradient(
		to bottom,
		rgba(0, 0, 0, 0.35),
		rgba(0, 0, 0, 0.55)
	) !important;
}
body.hvl-a11y-photo-scrim .et_pb_slide .et_pb_slide_overlay_container {
	background-color: rgba(0, 0, 0, 0.4) !important;
}
body.hvl-a11y-photo-scrim .et_pb_slide_description {
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
}

/* #21 — Slider pause button (injected by JS). */
.et_pb_slider .hvl-a11y-pause {
	position: absolute;
	right: 12px;
	bottom: 12px;
	z-index: 50;
	width: 40px;
	height: 40px;
	border: 2px solid #fff;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.65);
	color: #fff;
	font-size: 14px;
	line-height: 1;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}
.et_pb_slider .hvl-a11y-pause:hover,
.et_pb_slider .hvl-a11y-pause:focus {
	background: rgba(0, 0, 0, 0.85);
}
.et_pb_slider .hvl-a11y-pause:focus-visible {
	outline: 3px solid #ffd200;
	outline-offset: 2px;
}

/* Utility: visually hidden text (available for template use). */
.hvl-visually-hidden {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}
