/* services */
.services {
	width: 100%;
	position: relative;
	margin-bottom: 45px;
}

.services-left {
	font-size: 1.125rem;
	line-height: 1.5;
	letter-spacing: 0;
	font-weight: 500;
	position: relative;
	z-index: 1;
	margin-bottom: 20px;
}

.services-left h2 {
	font-size: 4.063rem;
	font-weight: 400;
	font-style: normal;
	line-height: .85;
	letter-spacing: -0.03em;
	color: var(--color-primary);
	margin-bottom: 15px;
}

.services-left h2 span {
	font-size: 2.5rem;
	color: var(--color-black);
	font-style: italic;
	display: block;
	font-weight: 600;
	letter-spacing: -0.02em;
}

.services-list {
	margin-bottom: 0;
}

.services-list li {
	width: 100%;
	font-size: 1.125rem;
	border-bottom: 1px solid var(--color-black);
}

.services-list li a {
	text-decoration: none;
	display: block;
	line-height: 1.2;
	padding: 18px 0;
	font-weight: 500;
	position: relative;
	z-index: 1;
}

.services-list li a:after {
	content: '';
	position: absolute;
	top: -1px;
	left: -10px;
	width: calc(100% + 20px);
	height: calc(100% + 2px);
	background: var(--color-primary);
	opacity: 0;
	z-index: -1;
	transition: opacity 0.3s ease;
}

.services-list li a:focus,
.services-list li a:hover {
	color: var(--color-white);
}

.services-list li a:focus:after,
.services-list li a:hover:after {
	opacity: 1;
}

@media screen and (min-width: 768px) {
	.services-list {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		grid-column-gap: 70px;
		align-items: flex-start;
	}
}

@media screen and (min-width: 1025px) {
	.services {
		margin-bottom: 90px;
	}

	.services-inner {
		display: flex;
	}

	.services-left {
		width: 30%;
	}

	.services-right {
		width: 65%;
		margin-left: auto;
		position: relative;
	}
}