/* STS homepage polish: scoped to the front page only. */
body.home .entry-content .sts-services-section > .wp-block-columns {
	align-items: stretch;
}

body.home .entry-content .sts-services-section > .wp-block-columns > .wp-block-column {
	display: flex;
}

body.home .entry-content .sts-service-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 100%;
	overflow: hidden;
}

body.home .entry-content .sts-service-card .sts-service-card-image {
	display: block;
	width: 100%;
	height: clamp(210px, 18vw, 250px);
	margin: 0;
	overflow: hidden;
	border-radius: 8px 8px 0 0;
}

body.home .entry-content .sts-service-card .sts-service-card-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: 0;
}

body.home .entry-content .sts-service-card h3 {
	min-height: 3.1em;
}

body.home .entry-content .wp-block-button__link,
body.home #masthead .ast-custom-button-link,
body.home #masthead .ast-button {
	transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

body.home .entry-content .wp-block-button:not(.is-style-outline) .wp-block-button__link,
body.home #masthead .ast-custom-button-link,
body.home #masthead .ast-button {
	background-color: #2ECC40 !important;
	color: #1A1A1A !important;
	border-color: #2ECC40 !important;
}

body.home .entry-content .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
body.home .entry-content .wp-block-button:not(.is-style-outline) .wp-block-button__link:focus-visible,
body.home #masthead .ast-custom-button-link:hover,
body.home #masthead .ast-custom-button-link:focus-visible,
body.home #masthead .ast-button:hover,
body.home #masthead .ast-button:focus-visible {
	background-color: #168a27 !important;
	color: #FFFFFF !important;
	border-color: #168a27 !important;
	box-shadow: 0 10px 22px rgba(26, 26, 26, 0.18);
	transform: translateY(-1px);
}

body.home .entry-content .wp-block-button.is-style-outline .wp-block-button__link:hover,
body.home .entry-content .wp-block-button.is-style-outline .wp-block-button__link:focus-visible {
	background-color: #168a27 !important;
	color: #FFFFFF !important;
	border-color: #168a27 !important;
	box-shadow: 0 10px 22px rgba(26, 26, 26, 0.2);
	transform: translateY(-1px);
}

body.home .entry-content .sts-reveal-image {
	opacity: 1;
	transform: none;
}

body.home.sts-polish-motion .entry-content .sts-reveal-image {
	opacity: 0;
	transform: translateY(20px);
	will-change: opacity, transform;
}

@media (max-width: 921px) {
	body.home .entry-content .sts-services-section > .wp-block-columns {
		flex-wrap: wrap !important;
	}

	body.home .entry-content .sts-services-section > .wp-block-columns > .wp-block-column {
		display: flex;
		flex-basis: calc(50% - 12px) !important;
		flex-grow: 0;
	}

	body.home .entry-content .sts-service-card .sts-service-card-image {
		height: clamp(220px, 34vw, 280px);
	}

	body.home .entry-content .sts-service-card h3 {
		min-height: 3.1em;
	}

}

@media (max-width: 544px) {
	body.home .entry-content .sts-services-section > .wp-block-columns > .wp-block-column {
		flex-basis: 100% !important;
	}

	body.home .entry-content .sts-service-card h3 {
		min-height: 0;
	}

}

@media (prefers-reduced-motion: reduce) {
	body.home .entry-content .sts-reveal-image,
	body.home.sts-polish-motion .entry-content .sts-reveal-image {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}

	body.home .entry-content .wp-block-button__link,
	body.home #masthead .ast-custom-button-link,
	body.home #masthead .ast-button {
		transition: none !important;
	}
}
