.hec-service-pillars {
	--hec-pillar-text: #ffffff;
	--hec-pillar-icon: #ffffff;
	position: relative;
	width: 100%;
	padding-block: 8px 12px;
	overflow: hidden;
}

.hec-service-pillars .swiper-wrapper {
	align-items: stretch;
}

.hec-service-pillars .swiper-slide {
	display: flex;
	height: auto;
}

.hec-service-pillar-card {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 12px;
	width: 100%;
	min-width: 0;
	min-height: 390px;
	padding: 22px 20px;
	border: 0;
	border-radius: 18px;
	background-color: var(--hec-pillar-gold, #c4a035);
	background-image: linear-gradient(180deg, rgba(13, 27, 51, 0.08), rgba(13, 27, 51, 0.42));
	background-repeat: no-repeat;
	box-shadow: 0 18px 40px rgba(110, 90, 20, 0.16);
	color: var(--hec-pillar-text);
	text-align: left;
	text-decoration: none;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

a.hec-service-pillar-card {
	cursor: pointer;
}

.hec-service-pillar-card:hover {
	color: var(--hec-pillar-text);
	box-shadow: 0 24px 48px rgba(110, 90, 20, 0.24);
	transform: translateY(-6px);
}

.hec-service-pillar-card:focus-visible {
	color: var(--hec-pillar-text);
	box-shadow: 0 24px 48px rgba(110, 90, 20, 0.24);
	outline: 3px solid #0d1b33;
	outline-offset: -3px;
	transform: translateY(-4px);
}

.hec-service-pillar-icon {
	display: grid;
	flex: 0 0 46px;
	width: 46px;
	height: 46px;
	border-radius: 14px;
	background: rgba(13, 27, 51, 0.18);
	color: var(--hec-pillar-icon);
	place-items: center;
}

.hec-service-pillar-icon i,
.hec-service-pillar-icon svg {
	width: 22px;
	height: 22px;
	color: inherit;
	fill: currentColor;
}

.hec-service-pillar-card h3 {
	margin: 0;
	color: var(--hec-pillar-text);
	font-family: "Outfit", system-ui, sans-serif;
	font-size: 19.5px;
	font-weight: 700;
	line-height: 1.25;
}

.hec-service-pillar-card p {
	margin: 0;
	color: rgba(255, 255, 255, 0.9);
	font-family: "Outfit", system-ui, sans-serif;
	font-size: 14.4px;
	font-weight: 400;
	line-height: 1.5;
}

.hec-service-pillar-link {
	margin-top: auto;
	color: var(--hec-pillar-text);
	font-family: "Outfit", system-ui, sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
}

.hec-service-pillars-arrow {
	position: absolute;
	top: 50%;
	z-index: 5;
	display: grid;
	width: 42px;
	height: 42px;
	margin: 0;
	padding: 0;
	border: 1px solid rgba(255, 255, 255, 0.55);
	border-radius: 50%;
	background: rgba(87, 32, 116, 0.92);
	box-shadow: 0 8px 22px rgba(13, 27, 51, 0.2);
	color: #ffffff;
	cursor: pointer;
	place-items: center;
	transform: translateY(-50%);
	transition: background-color 0.2s ease, opacity 0.2s ease, transform 0.2s ease;
}

.hec-service-pillars-prev {
	left: 8px;
}

.hec-service-pillars-next {
	right: 8px;
}

.hec-service-pillars-arrow svg {
	width: 20px;
	height: 20px;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2;
}

.hec-service-pillars-arrow:hover,
.hec-service-pillars-arrow:focus-visible {
	background: #572074;
	transform: translateY(-50%) scale(1.06);
}

.hec-service-pillars-arrow:focus-visible {
	outline: 3px solid rgba(196, 160, 53, 0.75);
	outline-offset: 2px;
}

.hec-service-pillars-arrow.swiper-button-disabled {
	opacity: 0.35;
	cursor: not-allowed;
}

.hec-service-pillars-arrow.swiper-button-lock {
	display: none;
}

@media (max-width: 1024px) {
	.hec-service-pillar-card {
		min-height: 340px;
	}
}

@media (max-width: 767px) {
	.hec-service-pillar-card {
		min-height: 320px;
	}

	.hec-service-pillars-arrow {
		width: 38px;
		height: 38px;
	}

	.hec-service-pillars-prev {
		left: 6px;
	}

	.hec-service-pillars-next {
		right: 6px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.hec-service-pillar-card {
		transition: none;
	}

	.hec-service-pillar-card:hover,
	.hec-service-pillar-card:focus-visible {
		transform: none;
	}
}