/* Themed buttons + image overlay */

.ws-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 0;
	text-decoration: none;
	cursor: pointer;
	transition: opacity 0.25s ease, background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.ws-btn.ws-btn--1 {
	color: var(--ws-btn-1-color, #fff);
	background: var(--ws-btn-1-bg, #111);
	border: 1px solid var(--ws-btn-1-border, #111);
}

.ws-btn.ws-btn--2 {
	color: var(--ws-btn-2-color, #fff);
	background: var(--ws-btn-2-bg, transparent);
	border: 1px solid var(--ws-btn-2-border, #fff);
}

.ws-btn.ws-btn--1:hover,
.ws-btn.ws-btn--1:focus-visible,
.ws-btn.ws-btn--2:hover,
.ws-btn.ws-btn--2:focus-visible {
	opacity: 0.88;
}

.ws-header-cta.ws-btn {
	padding: 12px 24px;
	font-size: 0.875rem;
	font-weight: 600;
	font-family: inherit;
}

.has-ws-overlay {
	position: relative;
	overflow: hidden;
}

.has-ws-overlay::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: var(--ws-overlay-fill, rgba(0, 0, 0, 0.45));
}

.ws-about-deco.has-ws-overlay,
.ws-features-split-overlay.has-ws-overlay,
.ws-contact-deco.has-ws-overlay,
.ws-testimonials-deco.has-ws-overlay {
	overflow: hidden;
}

.ws-about-deco.has-ws-overlay,
.ws-features-split-overlay.has-ws-overlay {
	position: absolute;
}

.ws-features-split-overlay.has-ws-overlay {
	z-index: 2;
}

.has-ws-overlay::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background: var(--ws-overlay-fill, rgba(0, 0, 0, 0.45));
}

.ws-hero.has-ws-overlay .ws-hero-overlay {
	background: var(--ws-overlay-fill, rgba(0, 0, 0, 0.45));
}

.ws-hero:not(.has-ws-overlay) .ws-hero-overlay {
	background: transparent;
}

.ws-hero.has-ws-overlay::after {
	display: none;
}

.ws-features-split-overlay {
	z-index: 2;
}

.ws-team-overlay,
.ws-gallery-accordion-body,
.ws-cases-card-foot {
	position: relative;
	z-index: 2;
}

@media (prefers-reduced-motion: reduce) {
	.ws-btn {
		transition: none;
	}
}
