/**
 * Accessibility fixes — tap targets and contrast.
 * Scoped to the audited header icon boxes, homepage slides widget, and three homepage buttons.
 */

/* -------------------------------------------------------------------------
   1. Header labels: "Drop a Line" and "E-mail Address"
   Source: Elementor Header Footer template 7950, icon-box widgets
   8c269b0 and 0fc773e. Title color #82828A on section #EEEEEE is 3.29:1.
   HFE prints those colors inline, so !important is required to override.
   ------------------------------------------------------------------------- */
.elementor-7950 .elementor-element.elementor-element-8c269b0 .elementor-icon-box-title,
.elementor-7950 .elementor-element.elementor-element-8c269b0:has(:hover) .elementor-icon-box-title,
.elementor-7950 .elementor-element.elementor-element-8c269b0:has(:focus) .elementor-icon-box-title,
.elementor-7950 .elementor-element.elementor-element-0fc773e .elementor-icon-box-title,
.elementor-7950 .elementor-element.elementor-element-0fc773e:has(:hover) .elementor-icon-box-title,
.elementor-7950 .elementor-element.elementor-element-0fc773e:has(:focus) .elementor-icon-box-title {
	color: #67676f !important; /* HFE inlines the original #82828A after theme CSS */
}

/* -------------------------------------------------------------------------
   2. Homepage Elementor Slides (widget d9fd650) button contrast
   White text on #63AB45 is 2.82:1. Nearby darker green keeps white-on-green.
   Hover/focus/active stay filled so they do not fall back to transparent
   (Elementor widget-slides.css) over photographic slide backgrounds.
   ------------------------------------------------------------------------- */
.elementor-7922 .elementor-element.elementor-element-d9fd650 .swiper-slide-inner .elementor-slide-button,
.elementor-7922 .elementor-element.elementor-element-d9fd650 .swiper-slide-inner .elementor-slide-button:hover,
.elementor-7922 .elementor-element.elementor-element-d9fd650 .swiper-slide-inner .elementor-slide-button:focus,
.elementor-7922 .elementor-element.elementor-element-d9fd650 .swiper-slide-inner .elementor-slide-button:active {
	background-color: #457a31;
	color: #ffffff;
}

.elementor-7922 .elementor-element.elementor-element-d9fd650 .swiper-slide-inner .elementor-slide-button:hover,
.elementor-7922 .elementor-element.elementor-element-d9fd650 .swiper-slide-inner .elementor-slide-button:focus,
.elementor-7922 .elementor-element.elementor-element-d9fd650 .swiper-slide-inner .elementor-slide-button:focus-visible,
.elementor-7922 .elementor-element.elementor-element-d9fd650 .swiper-slide-inner .elementor-slide-button:active {
	background-color: #3e702c;
	color: #ffffff;
}

.elementor-7922 .elementor-element.elementor-element-d9fd650 .swiper-slide-inner .elementor-slide-button:focus-visible {
	outline: 2px solid #ffffff;
	outline-offset: 2px;
}

/* -------------------------------------------------------------------------
   3. Swiper pagination tap targets (Elementor Slides widget d9fd650)
   Elementor sets bullets to 15px desktop / 9px mobile. Keep the visible
   dot at those sizes; expand the clickable span to 44x44px.
   ------------------------------------------------------------------------- */
.elementor-7922 .elementor-element.elementor-element-d9fd650.elementor-widget-slides .swiper-pagination-bullets {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	column-gap: 4px;
	--swiper-pagination-bullet-size: 44px;
	--swiper-pagination-bullet-width: 44px;
	--swiper-pagination-bullet-height: 44px;
	--swiper-pagination-bullet-horizontal-gap: 0px;
}

.elementor-7922 .elementor-element.elementor-element-d9fd650.elementor-widget-slides .swiper-pagination-bullet,
.elementor-7922 .elementor-element.elementor-element-d9fd650.elementor-widget-slides .swiper-pagination-bullet:not(.swiper-pagination-bullet-active),
.elementor-7922 .elementor-element.elementor-element-d9fd650.elementor-widget-slides .swiper-pagination-bullet-active {
	box-sizing: border-box;
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 44px;
	min-width: 44px;
	height: 44px;
	min-height: 44px;
	margin: 0;
	padding: 0;
	background: transparent;
	background-color: transparent;
	opacity: 1;
	border-radius: 0;
	vertical-align: middle;
}

.elementor-7922 .elementor-element.elementor-element-d9fd650.elementor-widget-slides .swiper-pagination-bullet::after {
	content: "";
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background-color: #3a8a45;
	pointer-events: none;
}

.elementor-7922 .elementor-element.elementor-element-d9fd650.elementor-widget-slides .swiper-pagination-bullet-active::after {
	background-color: #ffffff;
}

.elementor-7922 .elementor-element.elementor-element-d9fd650.elementor-widget-slides .swiper-pagination-bullet:focus {
	outline: none;
}

.elementor-7922 .elementor-element.elementor-element-d9fd650.elementor-widget-slides .swiper-pagination-bullet:focus-visible {
	outline: 2px solid #3a8a45;
	outline-offset: -2px;
}

@media (max-width: 767px) {
	.elementor-7922 .elementor-element.elementor-element-d9fd650.elementor-widget-slides .swiper-pagination-bullet::after {
		width: 9px;
		height: 9px;
	}
}

/* -------------------------------------------------------------------------
   4. Homepage Elementor Button widgets a8d358f, 6fc82eb6, 75a4d306
   White text on #48AA43 is 2.96:1. Same-hue darker greens keep white-on-green
   without changing size, padding, typography, or radius.
   ------------------------------------------------------------------------- */
.elementor-7922 .elementor-element.elementor-element-a8d358f .elementor-button,
.elementor-7922 .elementor-element.elementor-element-a8d358f .elementor-button:visited,
.elementor-7922 .elementor-element.elementor-element-6fc82eb6 .elementor-button,
.elementor-7922 .elementor-element.elementor-element-6fc82eb6 .elementor-button:visited,
.elementor-7922 .elementor-element.elementor-element-75a4d306 .elementor-button,
.elementor-7922 .elementor-element.elementor-element-75a4d306 .elementor-button:visited {
	background-color: #357e32;
	color: #ffffff;
}

.elementor-7922 .elementor-element.elementor-element-a8d358f .elementor-button:hover,
.elementor-7922 .elementor-element.elementor-element-a8d358f .elementor-button:focus,
.elementor-7922 .elementor-element.elementor-element-a8d358f .elementor-button:focus-visible,
.elementor-7922 .elementor-element.elementor-element-a8d358f .elementor-button:active,
.elementor-7922 .elementor-element.elementor-element-a8d358f .elementor-button:visited:hover,
.elementor-7922 .elementor-element.elementor-element-a8d358f .elementor-button:visited:focus,
.elementor-7922 .elementor-element.elementor-element-6fc82eb6 .elementor-button:hover,
.elementor-7922 .elementor-element.elementor-element-6fc82eb6 .elementor-button:focus,
.elementor-7922 .elementor-element.elementor-element-6fc82eb6 .elementor-button:focus-visible,
.elementor-7922 .elementor-element.elementor-element-6fc82eb6 .elementor-button:active,
.elementor-7922 .elementor-element.elementor-element-6fc82eb6 .elementor-button:visited:hover,
.elementor-7922 .elementor-element.elementor-element-6fc82eb6 .elementor-button:visited:focus,
.elementor-7922 .elementor-element.elementor-element-75a4d306 .elementor-button:hover,
.elementor-7922 .elementor-element.elementor-element-75a4d306 .elementor-button:focus,
.elementor-7922 .elementor-element.elementor-element-75a4d306 .elementor-button:focus-visible,
.elementor-7922 .elementor-element.elementor-element-75a4d306 .elementor-button:active,
.elementor-7922 .elementor-element.elementor-element-75a4d306 .elementor-button:visited:hover,
.elementor-7922 .elementor-element.elementor-element-75a4d306 .elementor-button:visited:focus {
	background-color: #30712d;
	color: #ffffff;
}

/* -------------------------------------------------------------------------
   5. Homepage Image Box d935598 (USGBC blurb)
   White text on widget-container #48AA43 is 2.96:1. Use the same-hue
   accessible green already approved for nearby homepage buttons.
   This widget is not a link; no Elementor hover/focus background is set.
   ------------------------------------------------------------------------- */
.elementor-7922 .elementor-element.elementor-element-d935598 > .elementor-widget-container,
.elementor-7922 .elementor-element.elementor-element-d935598:hover > .elementor-widget-container,
.elementor-7922 .elementor-element.elementor-element-d935598:focus-within > .elementor-widget-container {
	background-color: #357e32;
}
