/**
 * EPIC skin on top of BFG services-widget CSS — do not change steps-v2.css (BFG verbatim).
 */

section.services[data-epic-steps-v2] {
	background: #101010;
	color: var(--epic-white);
	font-family: var(--epic-font);
	padding-bottom: 0;
}

section.services[data-epic-steps-v2] .services__head {
	margin-bottom: clamp(3rem, 6vw, 5rem);
}

section.services[data-epic-steps-v2] .services__title {
	max-width: none;
	margin-left: 0;
	margin-right: 0;
}

section.services[data-epic-steps-v2] .services__title h3 {
	margin: 0;
	color: #bf3d29;
	font-family: var(--epic-font-heading);
	font-size: clamp(2rem, 4vw, 3rem);
	line-height: 1.1;
}

section.services[data-epic-steps-v2] .epic-steps-v2__subheading {
	margin: clamp(0.75rem, 2vw, 1rem) 0 0;
	max-width: 765px;
	color: var(--epic-muted);
	font-size: 18px;
	line-height: 1.9;
}

section.services[data-epic-steps-v2] .services__body-item {
	border: 0;
	background: #101010;
	border-radius: 0;
}

section.services[data-epic-steps-v2] .services__body-item:nth-child(4n + 2) {
	background: #161616;
}

section.services[data-epic-steps-v2] .services__body-item:nth-child(4n + 3) {
	background: #0d0d0d;
}

section.services[data-epic-steps-v2] .services__body-item:nth-child(4n + 4) {
	background: #161210;
}

section.services[data-epic-steps-v2] .services__body-item-content h2 {
	color: #bf3d29;
	font-family: var(--epic-font-heading);
	font-size: clamp(2.5rem, 6vw, 5.625rem);
	line-height: 0.98;
}

@media screen and (min-width: 1200px) {
	section.services[data-epic-steps-v2] .services__body-item-content h2 {
		font-size: 60px;
	}
}

section.services[data-epic-steps-v2] .services__body-item-content-text p {
	color: var(--epic-white);
	font-family: var(--epic-font);
	font-size: 16px;
	line-height: 1.9;
}

section.services[data-epic-steps-v2] .epic-steps-v2__letter-wrap {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

section.services[data-epic-steps-v2] .epic-steps-v2__card-inner {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	transform-origin: top center;
}

section.services[data-epic-steps-v2] .epic-steps-v2__letter {
	color: transparent;
	font-family: var(--epic-font-heading);
	font-size: min(calc(320 / 1440 * 100vw), 320px);
	font-weight: 900;
	line-height: 0.97;
	text-transform: uppercase;
	-webkit-text-stroke: 1.5px var(--epic-white);
	paint-order: stroke fill;
}

@media screen and (min-width: 992px) {
	section.services[data-epic-steps-v2] .epic-steps-v2__card-inner .epic-steps-v2__letter-wrap {
		position: absolute;
		right: 0;
		top: 0;
		height: 100%;
		width: min(42vw, 520px);
		pointer-events: none;
	}
}

@media screen and (max-width: 991px) {
	section.services[data-epic-steps-v2] .services__title-mobile {
		display: block;
	}

	section.services[data-epic-steps-v2] .services__title-desktop {
		display: none;
	}

	section.services[data-epic-steps-v2] .services__body-item {
		border-radius: 0;
	}

	section.services[data-epic-steps-v2] .epic-steps-v2__letter {
		font-size: min(18vw, 88px);
	}

	section.services[data-epic-steps-v2] .services__title h3 {
		font-size: clamp(2rem, 11vw, 4rem);
	}

	section.services[data-epic-steps-v2] .services__body-item-content h2 {
		font-size: clamp(2rem, 11vw, 4rem);
	}

	section.services[data-epic-steps-v2] .services__body-item-content {
		max-width: 90%;
	}

	section.services[data-epic-steps-v2] .services__body-item-image,
	section.services[data-epic-steps-v2] .epic-steps-v2__letter-wrap {
		display: none;
	}
}

@media screen and (min-width: 992px) {
	section.services[data-epic-steps-v2] .services__title-mobile {
		display: none;
	}
}

/* TEST: full-width layout — revert: copy steps-v2-epic.css.baseline → steps-v2-epic.css */
section.services[data-epic-steps-v2] .services__container.epic-container {
	width: 100%;
	max-width: none;
	margin-inline: 0;
}

section.services[data-epic-steps-v2] .services__body.services__body-items {
	width: 100vw;
	margin-left: calc(50% - 50vw);
}

section.services[data-epic-steps-v2] .services__body-item {
	width: 100%;
	max-width: 100vw;
	border: 0;
	transform: none !important;
}

section.services[data-epic-steps-v2] .services__head {
	width: min(100% - 2.5rem, var(--epic-container));
	margin-inline: auto;
	padding-inline: 0;
}

@media screen and (min-width: 992px) {
	section.services[data-epic-steps-v2] .epic-steps-v2__card-inner {
		width: min(100% - 2.5rem, var(--epic-container));
		margin-inline: auto;
	}
}
