:root {
	--sg-accessible-green-text: #3b7a17;
	--sg-focus-inner: #000;
	--sg-focus-outer: #fff;
}

/* Keep the brand green for backgrounds, but use a darker green for text. */
:is(main, [role="main"]) a:not(.elementor-button):not(.button),
.woocommerce-LostPassword a,
.woocommerce-breadcrumb a,
.page-numbers.next,
.error404 :is(h1, h2, a) {
	color: var(--sg-accessible-green-text) !important;
}

.woocommerce ul.products li.product .price {
	color: var(--sg-accessible-green-text) !important;
}

main .elementor-widget-text-editor p a,
main .elementor-widget-text-editor li a,
.woocommerce-breadcrumb a {
	text-decoration: underline;
	text-decoration-thickness: 0.12em;
	text-underline-offset: 0.15em;
}

.woocommerce-privacy-policy-link {
	text-decoration: underline !important;
	text-decoration-thickness: 0.12em !important;
	text-underline-offset: 0.15em !important;
}

.woocommerce-checkout .payment_box p {
	color: #4c5157;
}

.page-id-9936 main a[href^="mailto:"] {
	direction: ltr;
	display: inline-block;
	max-width: 100%;
	overflow-wrap: anywhere;
	unicode-bidi: isolate;
	word-break: break-word;
}

.e-search-submit,
.elementor-search-form__submit {
	color: #0a0b0c !important;
	fill: #0a0b0c !important;
}

.e-search-submit svg,
.elementor-search-form__submit svg {
	fill: currentColor !important;
}

.jet-range__slider .jet-range__slider__input:focus-visible {
	outline: 3px solid var(--sg-focus-inner) !important;
	outline-offset: 4px !important;
	box-shadow: 0 0 0 6px var(--sg-focus-outer) !important;
}

.jet-range__slider
	.jet-range__slider__input:focus-visible::-webkit-slider-thumb {
	outline: 3px solid var(--sg-focus-inner) !important;
	outline-offset: 3px !important;
	box-shadow: 0 0 0 5px var(--sg-focus-outer) !important;
}

.jet-range__slider
	.jet-range__slider__input:focus-visible::-moz-range-thumb {
	outline: 3px solid var(--sg-focus-inner) !important;
	outline-offset: 3px !important;
	box-shadow: 0 0 0 5px var(--sg-focus-outer) !important;
}

/* JetWoo can leave the PhotoSwipe root with an inline hidden state even after
 * the library marks it open. Limit the override to the confirmed open state. */
.jet-woo-product-gallery-pswp.pswp--open[aria-hidden="false"] {
	visibility: visible !important;
	z-index: 2147483647 !important;
}

/* A two-tone indicator remains visible on light, dark, and image backgrounds. */
:where(
	a,
	button,
	input,
	textarea,
	select,
	summary,
	[role="button"],
	[role="link"],
	[tabindex]:not([tabindex="-1"])
):focus-visible {
	outline: 3px solid var(--sg-focus-inner) !important;
	outline-offset: 3px !important;
	box-shadow: 0 0 0 5px var(--sg-focus-outer) !important;
}

.sg-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;
}

/* Keep the legacy Pojo toolbar hidden on flagged preview requests if it is
 * temporarily reactivated during testing. */
.wpsite-accessibility-preview #pojo-a11y-toolbar {
	display: none !important;
}

.sg-document-heading {
	margin-block: 1.5em 0.5em;
	font: inherit;
	font-size: 1.35em;
	font-weight: 700;
	color: inherit;
}

/* JetWoo dims readable text while its initial layout settles. */
.jet-woo-products-wrapper.jet-layout-loading {
	opacity: 1 !important;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}
