.crdlab-unich-slider {
	position: relative;
	width: 100%;
	height: 620px;
	overflow: hidden;
	background: #f5f8ff;
	isolation: isolate;
}

.crdlab-unich-slider,
.crdlab-unich-slider * {
	box-sizing: border-box;
}

.crdlab-unich-slider__track,
.crdlab-unich-slider__slide {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.crdlab-unich-slider__slide {
	opacity: 0;
	pointer-events: none;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	transform: translate3d(0, 0, 0) scale(1);
	clip-path: inset(0 0 0 0);
	will-change: opacity, transform, clip-path;
	z-index: 1;
}

.crdlab-unich-slider__slide.is-active {
	opacity: 1;
	pointer-events: auto;
	z-index: 3;
}

.crdlab-unich-slider__slide.is-leaving {
	opacity: 1;
	pointer-events: none;
	z-index: 2;
}

/* Stato iniziale prima del JS */

.crdlab-unich-slider.is-loading .crdlab-unich-slider__slide {
	opacity: 0;
}

/* Overlay */

.crdlab-unich-slider__overlay {
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	display: block;
	background: linear-gradient(
		90deg,
		rgba(255, 255, 255, 0.82) 0%,
		rgba(255, 255, 255, 0.55) 42%,
		rgba(255, 255, 255, 0.05) 100%
	);
}

.crdlab-unich-slider[data-overlay-enabled="no"] .crdlab-unich-slider__overlay {
	display: none;
}

/* Contenuto */

.crdlab-unich-slider__content {
	position: absolute;
	top: 50%;
	left: 20%;
	transform: translateY(-50%);
	z-index: 4;
	max-width: 640px;
	padding: 20px;
}

.crdlab-unich-slider__title-wrap {
	border-left-style: solid;
	border-left-width: 5px;
	border-left-color: #2f6fd6;
	padding-left: 22px;
	margin-bottom: 22px;
}

.crdlab-unich-slider__title {
	margin: 0;
	color: #12336f;
	font-size: clamp(36px, 4vw, 64px);
	font-weight: 800;
	line-height: 1.15;
	letter-spacing: -0.03em;
}

.crdlab-unich-slider__title strong {
	color: #2f6fd6;
	font-weight: inherit;
}

.crdlab-unich-slider__description {
	width: 100%;
	max-width: 100%;
	margin: 0 0 28px;
	color: #5d6f91;
	font-size: 18px;
	line-height: 1.7;
	background-clip: padding-box;
}

.crdlab-unich-slider__buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

.crdlab-unich-slider__button,
.crdlab-unich-slider__button:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 13px 28px;
	color: #ffffff;
	background: #2f6fd6;
	border: 1px solid #2f6fd6;
	border-radius: 4px;
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
	text-underline-offset: 0;
	transition:
		transform 220ms ease,
		background-color 220ms ease,
		color 220ms ease,
		border-color 220ms ease;
}

.crdlab-unich-slider__button:hover,
.crdlab-unich-slider__button:focus,
.crdlab-unich-slider__button:active {
	transform: translateY(-2px);
	text-decoration: none;
}

/* Frecce */

.crdlab-unich-slider__arrow {
	--crdlab-arrow-icon-offset-y: 0px;
	position: absolute;
	top: 50%;
	z-index: 10;
	width: 58px;
	height: 58px;
	padding: 0;
	border-style: solid;
	border-width: 0;
	border-color: transparent;
	border-radius: 0;
	background: #ffffff;
	color: #2f6fd6;
	font-size: 34px;
	line-height: 1;
	cursor: pointer;
	transform: translateY(-50%);
	box-shadow: 0 10px 30px rgba(18, 51, 111, 0.12);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	outline: none;
	appearance: none;
	-webkit-appearance: none;
	transition:
		transform 220ms ease,
		opacity 220ms ease,
		background-color 220ms ease,
		color 220ms ease,
		border-color 220ms ease;
}

.crdlab-unich-slider__arrow-icon {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: auto;
	height: auto;
	font-size: inherit;
	font-weight: inherit;
	font-family: Arial, Helvetica, sans-serif;
	line-height: 0.75;
	color: inherit;
	transform: translate(-50%, calc(-50% + var(--crdlab-arrow-icon-offset-y)));
	pointer-events: none;
}

.crdlab-unich-slider__arrow:hover {
	transform: translateY(-50%) scale(1.04);
}

.crdlab-unich-slider__arrow:focus,
.crdlab-unich-slider__arrow:focus-visible,
.crdlab-unich-slider__arrow:active {
	outline: none;
	box-shadow: 0 10px 30px rgba(18, 51, 111, 0.12);
}

.crdlab-unich-slider .crdlab-unich-slider__arrow {
	border-color: transparent;
}

.crdlab-unich-slider__arrow--prev {
	left: 24px;
}

.crdlab-unich-slider__arrow--next {
	right: 24px;
}

/* Animazione contenuti */

.crdlab-unich-slider__content > * {
	opacity: 0;
	will-change: opacity, transform;
	transition:
		opacity 800ms cubic-bezier(0.22, 1, 0.36, 1),
		transform 800ms cubic-bezier(0.22, 1, 0.36, 1);
}

.crdlab-unich-slider[data-content-animation="up"] .crdlab-unich-slider__content > * {
	transform: translateY(45px);
}

.crdlab-unich-slider[data-content-animation="left"] .crdlab-unich-slider__content > * {
	transform: translateX(-45px);
}

.crdlab-unich-slider[data-content-animation="fade"] .crdlab-unich-slider__content > * {
	transform: translateY(0);
}

.crdlab-unich-slider__slide.is-active .crdlab-unich-slider__content > * {
	opacity: 1;
	transform: translate(0, 0);
}

.crdlab-unich-slider__slide.is-leaving .crdlab-unich-slider__content > * {
	opacity: 0;
	transform: translateY(-25px);
	transition-duration: 350ms;
}

.crdlab-unich-slider__slide.is-active .crdlab-unich-slider__title-wrap {
	transition-delay: 180ms;
}

.crdlab-unich-slider__slide.is-active .crdlab-unich-slider__description {
	transition-delay: 330ms;
}

.crdlab-unich-slider__slide.is-active .crdlab-unich-slider__buttons {
	transition-delay: 480ms;
}

/* Effetti tipo Slider Revolution */

.crdlab-unich-slider__slide--fade.is-entering {
	animation: crdlabFadeIn 1100ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.crdlab-unich-slider__slide--fade.is-leaving {
	animation: crdlabFadeOut 900ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.crdlab-unich-slider__slide--slide-left.is-entering {
	animation: crdlabSlideLeftIn 1200ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.crdlab-unich-slider__slide--slide-left.is-leaving {
	animation: crdlabSlideLeftOut 950ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.crdlab-unich-slider__slide--slide-up.is-entering {
	animation: crdlabSlideUpIn 1200ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.crdlab-unich-slider__slide--slide-up.is-leaving {
	animation: crdlabSlideUpOut 950ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.crdlab-unich-slider__slide--zoom-in.is-entering {
	animation: crdlabZoomIn 1300ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.crdlab-unich-slider__slide--zoom-in.is-leaving {
	animation: crdlabZoomInOut 900ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.crdlab-unich-slider__slide--zoom-out.is-entering {
	animation: crdlabZoomOut 1300ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.crdlab-unich-slider__slide--zoom-out.is-leaving {
	animation: crdlabFadeOut 900ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.crdlab-unich-slider__slide--parallax.is-entering {
	animation: crdlabParallaxIn 1300ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.crdlab-unich-slider__slide--parallax.is-leaving {
	animation: crdlabParallaxOut 1000ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.crdlab-unich-slider__slide--clip-reveal.is-entering {
	animation: crdlabClipRevealIn 1200ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.crdlab-unich-slider__slide--clip-reveal.is-leaving {
	animation: crdlabClipRevealOut 900ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.crdlab-unich-slider__slide--rotate-scale.is-entering {
	animation: crdlabRotateScaleIn 1300ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.crdlab-unich-slider__slide--rotate-scale.is-leaving {
	animation: crdlabRotateScaleOut 900ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

/* Keyframes */

@keyframes crdlabFadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@keyframes crdlabFadeOut {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}

@keyframes crdlabSlideLeftIn {
	from {
		opacity: 0;
		transform: translate3d(90px, 0, 0) scale(1.04);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0) scale(1);
	}
}

@keyframes crdlabSlideLeftOut {
	from {
		opacity: 1;
		transform: translate3d(0, 0, 0) scale(1);
	}
	to {
		opacity: 0;
		transform: translate3d(-70px, 0, 0) scale(1.02);
	}
}

@keyframes crdlabSlideUpIn {
	from {
		opacity: 0;
		transform: translate3d(0, 90px, 0) scale(1.04);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0) scale(1);
	}
}

@keyframes crdlabSlideUpOut {
	from {
		opacity: 1;
		transform: translate3d(0, 0, 0) scale(1);
	}
	to {
		opacity: 0;
		transform: translate3d(0, -70px, 0) scale(1.02);
	}
}

@keyframes crdlabZoomIn {
	from {
		opacity: 0;
		transform: scale(1.18);
	}
	to {
		opacity: 1;
		transform: scale(1);
	}
}

@keyframes crdlabZoomInOut {
	from {
		opacity: 1;
		transform: scale(1);
	}
	to {
		opacity: 0;
		transform: scale(1.12);
	}
}

@keyframes crdlabZoomOut {
	from {
		opacity: 0;
		transform: scale(0.86);
	}
	to {
		opacity: 1;
		transform: scale(1);
	}
}

@keyframes crdlabParallaxIn {
	from {
		opacity: 0;
		transform: translate3d(120px, 0, 0) scale(1.12);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0) scale(1);
	}
}

@keyframes crdlabParallaxOut {
	from {
		opacity: 1;
		transform: translate3d(0, 0, 0) scale(1);
	}
	to {
		opacity: 0;
		transform: translate3d(-90px, 0, 0) scale(1.08);
	}
}

@keyframes crdlabClipRevealIn {
	from {
		opacity: 1;
		clip-path: inset(0 100% 0 0);
		transform: scale(1.08);
	}
	to {
		opacity: 1;
		clip-path: inset(0 0 0 0);
		transform: scale(1);
	}
}

@keyframes crdlabClipRevealOut {
	from {
		opacity: 1;
		clip-path: inset(0 0 0 0);
	}
	to {
		opacity: 0;
		clip-path: inset(0 0 0 100%);
	}
}

@keyframes crdlabRotateScaleIn {
	from {
		opacity: 0;
		transform: scale(1.18) rotate(2deg);
	}
	to {
		opacity: 1;
		transform: scale(1) rotate(0deg);
	}
}

@keyframes crdlabRotateScaleOut {
	from {
		opacity: 1;
		transform: scale(1) rotate(0deg);
	}
	to {
		opacity: 0;
		transform: scale(0.94) rotate(-1.5deg);
	}
}

/* Accessibilità */

@media (prefers-reduced-motion: reduce) {
	.crdlab-unich-slider__slide,
	.crdlab-unich-slider__content > * {
		animation: none !important;
		transition: none !important;
	}

	.crdlab-unich-slider__slide {
		opacity: 0;
	}

	.crdlab-unich-slider__slide.is-active {
		opacity: 1;
	}
}

/* Responsive */

@media (max-width: 1024px) {
	.crdlab-unich-slider {
		height: 560px;
	}

	.crdlab-unich-slider__content {
		left: 8%;
		right: 8%;
		width: auto;
		max-width: 720px;
		padding: 20px;
	}

	.crdlab-unich-slider__title {
		font-size: clamp(34px, 6vw, 54px);
	}

	.crdlab-unich-slider__description {
		font-size: 17px;
	}
}

@media (max-width: 767px) {
	.crdlab-unich-slider {
		height: 520px;
		min-height: 520px;
	}

	.crdlab-unich-slider__slide {
		background-position: center center;
	}

	.crdlab-unich-slider__overlay {
		background: linear-gradient(
			90deg,
			rgba(255, 255, 255, 0.90) 0%,
			rgba(255, 255, 255, 0.78) 55%,
			rgba(255, 255, 255, 0.45) 100%
		);
	}

	.crdlab-unich-slider__content {
		top: 50%;
		left: 50%;
		right: auto;
		width: calc(100% - 72px);
		max-width: calc(100% - 72px);
		padding: 0;
		transform: translate(-50%, -50%);
		text-align: left;
	}

	.crdlab-unich-slider__title-wrap {
		padding-left: 14px;
		margin-bottom: 16px;
	}

	.crdlab-unich-slider__title {
		max-width: 100%;
		font-size: clamp(27px, 8vw, 38px);
		line-height: 1.12;
		letter-spacing: -0.02em;
		overflow-wrap: break-word;
		word-break: normal;
		hyphens: auto;
	}

	.crdlab-unich-slider__description {
		width: 100%;
		max-width: 100%;
		margin-bottom: 20px;
		font-size: 16px;
		line-height: 1.55;
		overflow-wrap: break-word;
	}

	.crdlab-unich-slider__buttons {
		gap: 10px;
	}

	.crdlab-unich-slider__button,
	.crdlab-unich-slider__button:visited {
		min-height: 44px;
		padding: 11px 18px;
		font-size: 14px;
	}

	.crdlab-unich-slider__arrow {
		width: 38px;
		height: 38px;
		font-size: 24px;
	}

	.crdlab-unich-slider__arrow--prev {
		left: 12px;
	}

	.crdlab-unich-slider__arrow--next {
		right: 12px;
	}
}

@media (max-width: 480px) {
	.crdlab-unich-slider {
		height: 500px;
		min-height: 500px;
	}

	.crdlab-unich-slider__content {
		width: calc(100% - 64px);
		max-width: calc(100% - 64px);
	}

	.crdlab-unich-slider__title {
		font-size: clamp(25px, 8.5vw, 34px);
	}

	.crdlab-unich-slider__description {
		font-size: 15px;
		line-height: 1.5;
	}

	.crdlab-unich-slider__buttons {
		flex-direction: column;
		align-items: flex-start;
	}

	.crdlab-unich-slider__button,
	.crdlab-unich-slider__button:visited {
		width: auto;
		max-width: 100%;
	}

	.crdlab-unich-slider__arrow {
		width: 34px;
		height: 34px;
		font-size: 22px;
	}

	.crdlab-unich-slider__arrow--prev {
		left: 8px;
	}

	.crdlab-unich-slider__arrow--next {
		right: 8px;
	}
}