.wp-block-inca-hero-slider.inca-hero-slider {
	position: relative;
	overflow: hidden;
	color: #ffffff;
	background-image: url('/wp-content/uploads/inca-community-services-background.webp');
	background-size: cover;
	background-position: center;
}

.inca-hero-slider__overlay {
	position: absolute;
	inset: 0;
	background-color: rgba(152, 0, 49, 0.8); /* #980031 at 0.8 opacity */
	pointer-events: none;
}

.inca-hero-slider__inner {
	position: relative;
	z-index: 1;
	max-width: 1200px;
	margin: 0 auto;
	padding: 4rem 1.5rem;
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.2fr);
	column-gap: 3rem;
	row-gap: 2rem;
	align-items: center;
}

.inca-hero-slider__hero-title {
	margin: 0 0 1rem;
	font-family: 'Public Sans', system-ui, -apple-system, BlinkMacSystemFont,
		'Segoe UI', sans-serif;
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 1.2;
}

.inca-hero-slider__hero-body {
	margin: 0 0 1.5rem;
	font-family: 'Public Sans', system-ui, -apple-system, BlinkMacSystemFont,
		'Segoe UI', sans-serif;
	font-size: 1.0625rem;
	line-height: 1.6;
	max-width: 34rem;
}

.inca-hero-slider__hero-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.85rem 1.75rem;
	background-color: #006599;
	color: #ffffff;
	text-decoration: none;
	border-radius: 0;
	font-weight: 600;
	font-size: 1rem;
	border: none;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.25);
	transition:
		background-color 180ms ease-out,
		box-shadow 180ms ease-out,
		transform 180ms ease-out;
}

.inca-hero-slider__hero-button:hover,
.inca-hero-slider__hero-button:focus-visible {
	background-color: #004a70;
	color: #ffffff;
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.3);
	transform: translateY(-1px);
	text-decoration: underline;
}

.inca-hero-slider__hero-cta {
	margin-top: 0.5rem;
}

.inca-hero-slider__slides {
	position: relative;
	min-height: 320px;
}

.inca-hero-slider__slide {
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	height: 320px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	border: 20px solid #ffffff;
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.3);
	background-color: #000000;
	opacity: 0;
	transform: translate(30px, -50%);
	transition:
		opacity 320ms ease-out,
		transform 320ms ease-out;
}

/* No border variant */
.inca-hero-slider.no-border .inca-hero-slider__slide {
	border: none;
}

/* Default slide animation */
.inca-hero-slider__slide.is-active {
	opacity: 1;
	transform: translate(0, -50%);
	z-index: 2;
}

.inca-hero-slider__slide.is-previous {
	opacity: 0;
	transform: translate(-30px, -50%);
	z-index: 1;
}

.inca-hero-slider__slide.is-next {
	opacity: 0;
	transform: translate(30px, -50%);
	z-index: 1;
}

/* Fade animation variant */
.inca-hero-slider.animation-fade .inca-hero-slider__slide {
	transform: translateY(-50%);
	transition: opacity 500ms ease-in-out;
}

.inca-hero-slider.animation-fade .inca-hero-slider__slide.is-active {
	opacity: 1;
	transform: translateY(-50%);
	z-index: 2;
}

.inca-hero-slider.animation-fade .inca-hero-slider__slide.is-previous,
.inca-hero-slider.animation-fade .inca-hero-slider__slide.is-next {
	opacity: 0;
	transform: translateY(-50%);
	z-index: 1;
}

@media (prefers-reduced-motion: reduce) {
	.inca-hero-slider__slide,
	.inca-hero-slider.animation-fade .inca-hero-slider__slide {
		transition: opacity 100ms ease-out;
	}
	
	.inca-hero-slider__slide.is-active,
	.inca-hero-slider.animation-fade .inca-hero-slider__slide.is-active {
		transform: translateY(-50%);
	}
	
	.inca-hero-slider__slide.is-previous,
	.inca-hero-slider__slide.is-next,
	.inca-hero-slider.animation-fade .inca-hero-slider__slide.is-previous,
	.inca-hero-slider.animation-fade .inca-hero-slider__slide.is-next {
		transform: translateY(-50%);
	}
}

.inca-hero-slider__slide-media {
	position: relative;
	height: 100%;
	overflow: hidden;
}

.inca-hero-slider__slide-image {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.inca-hero-slider__slide-gradient {
	position: absolute;
	inset: auto 0 0 0;
	height: 100%;
	background: linear-gradient(
		to top,
		rgba(0, 101, 153, 0.95),
		rgba(0, 101, 153, 0.6),
		transparent
	);
}

.inca-hero-slider__slide-content {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 1rem 1.5rem 1.25rem;
	color: #ffffff;
}

.inca-hero-slider__slide-title {
	margin: 0 0 0.4rem;
	font-family: 'Public Sans', system-ui, -apple-system, BlinkMacSystemFont,
		'Segoe UI', sans-serif;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.3;
}

.inca-hero-slider__slide-text {
	margin: 0;
	font-size: 0.98rem;
	line-height: 1.6;
	max-width: 30rem;
}

.inca-hero-slider__slide-cta {
	margin-top: 1rem;
	display: none;
}

.inca-hero-slider__slide-cta .inca-hero-slider__hero-button {
	box-shadow: 0 10px 26px rgba(0, 0, 0, 0.35);
}

/* Ensure slide-level CTA buttons can be selectively hidden on mobile */
.inca-hero-slider__slide-content .inca-hero-slider__hero-button {
	display: inline-flex;
}

.inca-hero-slider__mobile-heading {
	display: none;
	margin: 0 0 1rem;
	color: #ffffff;
	text-align: left;
}

.inca-hero-slider__mobile-title {
	margin: 0;
	font-family: 'Public Sans', system-ui, -apple-system, BlinkMacSystemFont,
		'Segoe UI', sans-serif;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.3;
}

.inca-hero-slider__mobile-cta {
	display: none;
	margin-top: 1.25rem;
	text-align: center;
}

/* Mobile layout: single-column focus on slider content */
@media (max-width: 768px) {
	.inca-hero-slider__inner {
		padding: 2rem 1.25rem 1.5rem;
		grid-template-columns: minmax(0, 1fr);
	}

	.inca-hero-slider__hero {
		display: none;
	}

	.inca-hero-slider__mobile-heading {
		display: block;
		margin: 0 0 0.75rem;
	}

	.inca-hero-slider__slides {
		min-height: 320px;
	}

	.inca-hero-slider__slide {
		height: 300px;
	}

	.inca-hero-slider__slide-text {
		display: none;
	}

	/* Hide any CTA button that may be inside a slide on mobile */
	.inca-hero-slider__slide-content .inca-hero-slider__hero-button {
		display: none;
	}

	.inca-hero-slider__mobile-cta {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		margin-top: 0rem;
		padding: 0 1.25rem;
		position: relative;
		z-index: 10;
	}

	.inca-hero-slider__mobile-cta .inca-hero-slider__hero-button {
		display: inline-flex !important;
	}

	.inca-hero-slider__slide-content {
		padding: 1.5rem 1.5rem 1.75rem;
	}

}

/* Medium screens: adjust layout and sizing */
@media (max-width: 1024px) {
	.inca-hero-slider__inner {
		column-gap: 2rem;
	}

	.inca-hero-slider__hero-title {
		font-size: 2.1rem;
	}
}

