.nps-section {
	--nps-section-background: #eef7f4;
	--nps-brand-green: #249a78;
	--nps-brand-dark: #15584c;
	--nps-brand-orange: #57b8a4;
	--nps-panel-background: #15584c;
	--nps-image-overlay: rgba(21, 88, 76, 0.72);
	position: relative;
	width: 100%;
	padding: clamp(56px, 6vw, 92px) 0 clamp(48px, 5vw, 76px);
	overflow: hidden;
	background:
		radial-gradient(circle at 9% 17%, rgba(36,154,120,.10), transparent 25%),
		radial-gradient(circle at 91% 82%, rgba(36,154,120,.08), transparent 28%),
		var(--nps-section-background);
	isolation: isolate;
}

.nps-section::before,
.nps-section::after {
	content: "";
	position: absolute;
	z-index: -1;
	width: 330px;
	height: 330px;
	border: 1px solid rgba(36,154,120,.10);
	border-radius: 45% 55% 62% 38% / 52% 42% 58% 48%;
	pointer-events: none;
}

.nps-section::before {
	top: 36px;
	inset-inline-start: -170px;
	transform: rotate(28deg);
}

.nps-section::after {
	bottom: -185px;
	inset-inline-end: -125px;
	transform: rotate(-24deg) scale(1.25);
}

.nps-section--full {
	width: 100vw;
	max-width: 100vw;
	margin-inline: calc(50% - 50vw);
}

.elementor-editor-active .nps-section--full {
	width: 100vw;
	max-width: 100vw;
	margin-inline: calc(50% - 50vw);
}

.nps-section--full .nps-section__inner {
	width: calc(100% - clamp(18px, 2.2vw, 38px));
	max-width: none;
}

.nps-section *,
.nps-section *::before,
.nps-section *::after {
	box-sizing: border-box;
}

.nps-section__inner {
	--nps-max-width: 1760px;
	position: relative;
	width: min(calc(100% - clamp(28px, 5vw, 88px)), var(--nps-max-width));
	margin-inline: auto;
}

.nps-section__header {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 108px;
	margin-bottom: 34px;
	text-align: center;
}

.nps-section__heading {
	position: relative;
	max-width: min(960px, 100%);
	margin-inline: auto;
	padding: clamp(22px, 2.3vw, 32px) clamp(24px, 3.2vw, 42px);
	border: 1px solid rgba(36,154,120,.12);
	border-radius: 28px;
	background: linear-gradient(135deg, rgba(255,255,255,.84), rgba(236,247,243,.92));
	box-shadow: 0 18px 42px rgba(21,88,76,.08);
	backdrop-filter: blur(10px);
	overflow: hidden;
}

.nps-section__heading::before {
	content: "";
	position: absolute;
	inset-inline-end: -40px;
	top: -38px;
	width: 180px;
	height: 180px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(87,184,164,.18), rgba(87,184,164,0) 68%);
	pointer-events: none;
}

.nps-section__heading::after {
	content: "";
	position: absolute;
	inset-inline-start: -28px;
	bottom: -44px;
	width: 140px;
	height: 140px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(36,154,120,.10), rgba(36,154,120,0) 70%);
	pointer-events: none;
}

.nps-section__kicker {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-bottom: 14px;
	padding: 9px 18px;
	border: 1px solid rgba(36,154,120,.12);
	border-radius: 999px;
	background: rgba(36,154,120,.08);
	color: var(--nps-brand-dark);
	font-size: 14px;
	font-weight: 800;
	letter-spacing: .02em;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.5);
}

.nps-section__kicker::before,
.nps-section__kicker::after {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: currentColor;
	opacity: .55;
}

.nps-section__title {
	margin: 0;
	color: #173f37;
	font-size: clamp(34px, 4vw, 58px);
	font-weight: 900;
	line-height: 1.18;
	letter-spacing: -.025em;
}

.nps-section__description {
	max-width: 760px;
	margin: 14px auto 0;
	color: #5c726c;
	font-size: clamp(15px, 1.4vw, 19px);
	line-height: 1.95;
}

.nps-section__all {
	position: absolute;
	inset-inline-end: 0;
	bottom: 5px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 48px;
	padding: 10px 20px;
	border: 1px solid currentColor;
	border-radius: 999px;
	color: var(--nps-brand-dark);
	font-size: 14px;
	font-weight: 800;
	text-decoration: none !important;
	transition: color .25s ease, background-color .25s ease, border-color .25s ease, transform .25s ease;
}

.nps-section__all:hover {
	color: #fff;
	background: linear-gradient(135deg, var(--nps-brand-green), var(--nps-brand-orange));
	border-color: transparent;
	transform: translateY(-2px);
}

.nps-slider {
	--nps-gap: 0px;
	position: relative;
	width: 100%;
	padding: 0 0 26px;
	isolation: isolate;
}

.nps-viewport {
	width: 100%;
	overflow: hidden;
	border-radius: inherit;
}

.nps-track {
	display: flex;
	gap: var(--nps-gap);
	will-change: transform;
	transition-property: transform;
	transition-timing-function: cubic-bezier(.22,.68,0,1);
}

.nps-slider.is-rtl .nps-track {
	direction: rtl;
}

.nps-slide {
	flex: 0 0 100%;
	min-width: 0;
	opacity: .55;
	transition: opacity .45s ease;
}

.nps-slide.is-active {
	opacity: 1;
}

.nps-card {
	--nps-image-width: 58%;
	position: relative;
	direction: ltr;
	display: grid;
	grid-template-columns: var(--nps-image-width) calc(100% - var(--nps-image-width));
	grid-template-rows: 1fr;
	width: 100%;
	height: min(74vh, 820px);
	min-height: 620px;
	overflow: hidden;
	background: var(--nps-panel-background);
	border: 1px solid rgba(255,255,255,.14);
	border-radius: 34px;
	box-shadow: 0 34px 80px rgba(18,65,55,.20), 0 10px 28px rgba(20,50,43,.11);
	transform: translateZ(0);
}

.nps-card::after {
	content: "";
	position: absolute;
	z-index: 4;
	inset: 0;
	border-radius: inherit;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
	pointer-events: none;
}

.nps-card__image {
	position: relative;
	z-index: 0;
	grid-column: 1;
	grid-row: 1;
	overflow: hidden;
	background: #dcebe6;
}

.nps-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	transform: scale(1.01);
	transition: transform 1.2s cubic-bezier(.2,.7,.2,1), filter .45s ease;
}

.nps-image-zoom-yes .nps-slide.is-active .nps-card__image img {
	transform: scale(1.055);
}

.nps-card__overlay {
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	left: 0;
	width: var(--nps-image-width);
	background:
		linear-gradient(90deg, rgba(6,35,29,.05) 0%, rgba(6,35,29,.18) 48%, var(--nps-image-overlay) 100%),
		linear-gradient(180deg, rgba(6,35,29,.05) 40%, rgba(6,35,29,.26) 100%);
	pointer-events: none;
}

.nps-card__content {
	position: relative;
	z-index: 2;
	direction: rtl;
	grid-column: 2;
	grid-row: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	min-width: 0;
	padding: clamp(42px, 4.6vw, 76px);
	text-align: right;
	background:
		radial-gradient(circle at 85% 12%, rgba(255,255,255,.12), transparent 22%),
		linear-gradient(160deg, color-mix(in srgb, var(--nps-panel-background) 95%, #082721 5%), color-mix(in srgb, var(--nps-panel-background) 88%, #0d3a32 12%));
}

@supports not (background: color-mix(in srgb, #000 50%, #fff 50%)) {
	.nps-card__content {
		background: linear-gradient(145deg, #174f45, var(--nps-panel-background));
	}
}

.nps-card__content::before,
.nps-card__content::after {
	content: "";
	position: absolute;
	pointer-events: none;
}

.nps-card__content::before {
	width: 230px;
	height: 230px;
	inset-inline-end: -95px;
	top: -95px;
	border: 1px solid rgba(255,255,255,.08);
	border-radius: 44% 56% 63% 37% / 57% 38% 62% 43%;
	transform: rotate(28deg);
}

.nps-card__content::after {
	inset-inline: 12%;
	bottom: 11%;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(255,255,255,.08), transparent);
}

.nps-card__topline,
.nps-card__title,
.nps-card__divider,
.nps-card__excerpt,
.nps-card__button {
	position: relative;
	z-index: 2;
}

.nps-card__topline {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	gap: 18px;
	margin-bottom: 24px;
}

.nps-card__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	max-width: 70%;
	min-height: 36px;
	padding: 8px 18px;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--nps-brand-green), var(--nps-brand-orange));
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	line-height: 1;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	box-shadow: 0 12px 24px rgba(36,154,120,.24);
}

.nps-card__meta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	border-radius: 999px;
	background: rgba(255,255,255,.06);
	border: 1px solid rgba(255,255,255,.08);
	color: var(--nps-meta-color, rgba(255,255,255,.88));
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
	white-space: nowrap;
}

.nps-card__meta::before {
	content: "";
	width: 16px;
	height: 16px;
	border: 1.5px solid currentColor;
	border-radius: 4px;
	box-shadow: inset 0 3px 0 -1px currentColor;
	opacity: .9;
}

.nps-card__title {
	max-width: 680px;
	margin: 0;
	color: var(--nps-title-color, #fff);
	font-size: clamp(32px, 3vw, 54px);
	font-weight: 900;
	line-height: 1.28;
	letter-spacing: -.028em;
	text-shadow: 0 3px 18px rgba(0,0,0,.18);
}

.nps-card__title a,
.nps-card__title a:visited,
.nps-card__title a:hover {
	color: inherit !important;
	text-decoration: none !important;
}

.nps-card__divider {
	display: flex;
	align-items: center;
	width: min(100%, 420px);
	height: 18px;
	margin: 22px 0 18px;
}

.nps-card__divider::before,
.nps-card__divider::after {
	content: "";
	flex: 1;
	height: 1px;
	background: linear-gradient(90deg, rgba(255,255,255,.08), var(--nps-brand-green));
}

.nps-card__divider::after {
	background: linear-gradient(90deg, var(--nps-brand-green), rgba(255,255,255,.08));
}

.nps-card__divider span {
	width: 12px;
	height: 12px;
	margin-inline: 12px;
	border-radius: 2px 9px 2px 9px;
	background: var(--nps-brand-green);
	transform: rotate(45deg);
	box-shadow: 0 0 0 5px rgba(36,154,120,.13);
}

.nps-card__excerpt {
	max-width: 650px;
	margin: 0 0 30px;
	color: var(--nps-excerpt-color, rgba(255,255,255,.92));
	font-size: clamp(15px, 1.24vw, 18px);
	line-height: 1.9;
	text-shadow: 0 2px 10px rgba(0,0,0,.10);
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}

.nps-card__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	align-self: flex-start;
	min-height: 50px;
	padding: 13px 25px;
	border: 1px solid rgba(255,255,255,.10);
	border-radius: 999px;
	background: linear-gradient(135deg, var(--nps-brand-green), var(--nps-brand-orange));
	color: #fff;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.2;
	text-decoration: none !important;
	box-shadow: 0 14px 28px rgba(36,154,120,.24);
	transition: color .25s ease, background-color .25s ease, border-color .25s ease, transform .25s ease, box-shadow .25s ease;
}

.nps-card__button:hover {
	color: #fff;
	background: linear-gradient(135deg, color-mix(in srgb, var(--nps-brand-dark) 88%, #000 12%), var(--nps-brand-green));
	border-color: rgba(255,255,255,.18);
	transform: translateY(-3px);
	box-shadow: 0 18px 35px rgba(7,38,32,.22);
}

.nps-card__button-icon {
	font-size: 18px;
	line-height: 1;
	transition: transform .25s ease;
}

.nps-slider.is-rtl .nps-card__button:hover .nps-card__button-icon {
	transform: translateX(-4px);
}

.nps-arrow {
	position: absolute;
	top: 50%;
	z-index: 8;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	padding: 0;
	border: 1px solid rgba(21,88,76,.10);
	border-radius: 50%;
	background: rgba(255,255,255,.96);
	color: var(--nps-brand-dark);
	font-size: 25px;
	line-height: 1;
	cursor: pointer;
	box-shadow: 0 16px 36px rgba(15,68,57,.18);
	backdrop-filter: blur(10px);
	transform: translateY(-50%);
	transition: color .25s ease, background-color .25s ease, border-color .25s ease, transform .25s ease, opacity .25s ease;
}

.nps-arrow:hover {
	color: #fff;
	background: linear-gradient(135deg, var(--nps-brand-green), var(--nps-brand-orange));
	border-color: transparent;
	transform: translateY(-50%) scale(1.07);
}

.nps-arrow:disabled {
	opacity: .35;
	cursor: not-allowed;
}

.nps-arrow--prev { right: 14px; }
.nps-arrow--next { left: 14px; }

.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 14px; right: auto; }
.nps-slider:not(.is-rtl) .nps-arrow--next { right: 14px; left: auto; }

.nps-arrow:focus-visible,
.nps-dot:focus-visible,
.nps-slider:focus-visible,
.nps-section__all:focus-visible,
.nps-card__button:focus-visible {
	outline: 3px solid rgba(36,154,120,.35);
	outline-offset: 4px;
}

.nps-dots {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 18px;
	margin-top: 16px;
}

.nps-dot {
	position: relative;
	width: 8px;
	height: 8px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(21,88,76,.18);
	cursor: pointer;
	transition: transform .25s ease, background-color .25s ease, box-shadow .25s ease;
}

.nps-dot:hover {
	transform: scale(1.14);
}

.nps-dot.is-active {
	background: var(--nps-brand-green);
	box-shadow: 0 0 0 5px rgba(36,154,120,.16);
	transform: scale(1.05);
}

.nps-progress {
	position: absolute;
	inset-inline: 0;
	bottom: 0;
	height: 3px;
	overflow: hidden;
	border-radius: 999px;
	background: rgba(21,88,76,.09);
}

.nps-progress__bar {
	display: block;
	width: 0;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, var(--nps-brand-green), var(--nps-brand-orange));
	transition: width .35s ease;
}

.nps-empty {
	padding: 30px;
	border: 1px dashed rgba(21,88,76,.28);
	border-radius: 18px;
	background: #f7fbf9;
	color: #47665d;
	text-align: center;
}

@media (max-width: 1180px) {
	.nps-section__all {
		position: static;
		margin-top: 20px;
	}

	.nps-section__header {
		flex-direction: column;
	}

	.nps-card {
		--nps-image-width: 52%;
		min-height: 540px;
	}

	.nps-card__content {
		padding: 42px;
	}

	.nps-card__title {
		font-size: clamp(29px, 3.4vw, 45px);
	}

	.nps-arrow--prev { right: 12px; }
	.nps-arrow--next { left: 12px; }
	.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 12px; }
	.nps-slider:not(.is-rtl) .nps-arrow--next { right: 12px; }
}

@media (max-width: 767px) {
	.nps-section {
		padding: 48px 0 40px;
	}

	.nps-section__inner {
		width: min(calc(100% - 24px), var(--nps-max-width));
	}

	.nps-section__header {
		min-height: 0;
		margin-bottom: 22px;
	}

	.nps-section__kicker::before,
	.nps-section__kicker::after {
		width: 18px;
	}

	.nps-section__title {
		font-size: clamp(27px, 8vw, 38px);
	}

	.nps-section__description {
		font-size: 15px;
		line-height: 1.75;
	}

	.nps-section__all {
		min-height: 44px;
		padding: 9px 17px;
	}

	.nps-slider {
		padding-bottom: 50px;
	}

	.nps-card {
		display: flex;
		flex-direction: column;
		height: auto;
		min-height: 700px;
		border-radius: 24px;
	}

	.nps-card__image {
		flex: 0 0 43%;
		min-height: 270px;
	}

	.nps-card__overlay {
		top: 0;
		left: 0;
		right: 0;
		bottom: auto;
		width: 100%;
		height: 44%;
		background: linear-gradient(180deg, rgba(6,35,29,.02) 25%, var(--nps-image-overlay) 100%);
	}

	.nps-card__content {
		flex: 1;
		width: 100%;
		padding: 32px 25px 36px;
		justify-content: flex-start;
	}

	.nps-card__topline {
		margin-bottom: 18px;
	}

	.nps-card__badge {
		min-height: 32px;
		padding: 7px 13px;
		font-size: 12px;
	}

	.nps-card__meta {
		font-size: 12px;
	}

	.nps-card__title {
		font-size: clamp(26px, 7.6vw, 36px);
		line-height: 1.32;
	}

	.nps-card__divider {
		margin: 16px 0 13px;
	}

	.nps-card__excerpt {
		margin-bottom: 22px;
		font-size: 14px;
		line-height: 1.75;
		-webkit-line-clamp: 3;
	}

	.nps-card__button {
		min-height: 46px;
		padding: 12px 20px;
		font-size: 14px;
	}

	.nps-arrow {
		top: auto;
		bottom: 0;
		width: 42px;
		height: 42px;
		font-size: 20px;
		transform: none;
	}

	.nps-arrow:hover {
		transform: scale(1.05);
	}

	.nps-arrow--prev { right: 0; }
	.nps-arrow--next { left: 0; }
	.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 0; }
	.nps-slider:not(.is-rtl) .nps-arrow--next { right: 0; }

	.nps-dots {
		padding-inline: 54px;
		margin-top: 17px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.nps-track,
	.nps-slide,
	.nps-card__image img,
	.nps-arrow,
	.nps-dot,
	.nps-card__button,
	.nps-section__all {
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
	}
}


/* v1.4 integrated section intro inside the slide */
.nps-slider--has-intro .nps-card__content {
	justify-content: flex-start;
	padding-top: clamp(34px, 3.2vw, 46px);
}

.nps-card__intro {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 700px;
	margin: 0 0 22px;
	padding: 0 0 16px;
	border-bottom: 1px solid rgba(255,255,255,.10);
}

.nps-card__intro .nps-section__kicker {
	justify-content: flex-start;
	margin-bottom: 12px;
	padding: 8px 16px;
	border-color: rgba(255,255,255,.12);
	background: rgba(255,255,255,.08);
	color: #dff7ef;
	box-shadow: none;
}

.nps-card__intro .nps-section__kicker::before,
.nps-card__intro .nps-section__kicker::after {
	background: currentColor;
	opacity: .8;
}

.nps-card__intro .nps-section__title {
	margin: 0;
	color: #fff;
	font-size: clamp(24px, 2.1vw, 33px);
	font-weight: 900;
	line-height: 1.3;
	letter-spacing: -.02em;
}

.nps-card__intro .nps-section__description {
	max-width: 100%;
	margin: 10px 0 0;
	color: rgba(255,255,255,.82);
	font-size: clamp(13.5px, 0.98vw, 16px);
	line-height: 1.85;
}

.nps-slider--has-intro .nps-card__topline {
	margin-top: 2px;
}

.nps-dots {
	gap: 6px;
	min-height: 18px;
	margin-top: 16px;
}

.nps-dot {
	width: 8px;
	height: 8px;
	background: rgba(21,88,76,.16);
}

.nps-dot.is-active {
	width: 20px;
	background: var(--nps-brand-green);
}

@media (max-width: 767px) {
	.nps-card__intro {
		margin-bottom: 18px;
		padding-bottom: 14px;
	}
	.nps-card__intro .nps-section__title {
		font-size: clamp(22px, 6vw, 30px);
	}
	.nps-card__intro .nps-section__description {
		font-size: 13.5px;
		line-height: 1.75;
	}
	.nps-dots {
		gap: 5px;
		min-height: 16px;
		margin-top: 14px;
		padding-inline: 46px;
	}
	.nps-dot {
		width: 7px;
		height: 7px;
	}
	.nps-dot.is-active {
		box-shadow: 0 0 0 4px rgba(36,154,120,.14);
	}
}


/* v1.6 full-bleed refinements */
.nps-section {
	padding: 0 !important;
	background: transparent;
}

.nps-section__inner {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

.nps-section--full,
.elementor-editor-active .nps-section--full {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-inline: calc(50% - 50vw) !important;
}

.nps-section--full .nps-section__inner {
	width: 100vw !important;
	max-width: 100vw !important;
	margin-inline: calc(50% - 50vw) !important;
}

.nps-slider {
	padding: 0 !important;
}

.nps-viewport,
.nps-section--full .nps-card,
.nps-section--full .nps-card::after {
	border-radius: 0 !important;
}

.nps-section--full .nps-card {
	border: 0 !important;
	box-shadow: none !important;
	height: min(80vh, 900px);
	min-height: 700px;
}

.nps-section--full .nps-card__content {
	padding-inline: clamp(34px, 4vw, 68px);
}

.nps-card__overlay {
	background:
		linear-gradient(90deg, rgba(6,35,29,.08) 0%, rgba(6,35,29,.24) 44%, rgba(21,88,76,.78) 100%),
		linear-gradient(180deg, rgba(6,35,29,.06) 30%, rgba(6,35,29,.30) 100%);
}

.nps-card__content {
	background:
		radial-gradient(circle at 85% 12%, rgba(255,255,255,.10), transparent 20%),
		linear-gradient(160deg, rgba(11,71,60,.98), rgba(9,90,75,.97));
}

.nps-card__title {
	font-size: clamp(30px, 2.7vw, 50px);
	line-height: 1.24;
}

.nps-card__excerpt {
	max-width: 700px;
	-webkit-line-clamp: 4;
}

.nps-card__button {
	margin-bottom: 6px;
}

.nps-arrow {
	width: 50px;
	height: 50px;
}

.nps-arrow--prev { right: 18px; }
.nps-arrow--next { left: 18px; }
.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 18px; right: auto; }
.nps-slider:not(.is-rtl) .nps-arrow--next { right: 18px; left: auto; }

.nps-dots {
	position: absolute;
	left: 50%;
	bottom: 18px;
	z-index: 10;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: auto;
	margin: 0 !important;
	padding: 9px 12px;
	border-radius: 999px;
	background: rgba(7, 47, 39, .28);
	border: 1px solid rgba(255,255,255,.10);
	backdrop-filter: blur(8px);
	transform: translateX(-50%);
}

.nps-dot {
	width: 7px !important;
	height: 7px !important;
	background: rgba(255,255,255,.35) !important;
	box-shadow: none !important;
	transform: none !important;
}

.nps-dot:hover {
	transform: scale(1.1) !important;
}

.nps-dot.is-active {
	width: 7px !important;
	height: 7px !important;
	background: #ffffff !important;
	box-shadow: 0 0 0 4px rgba(87,184,164,.28) !important;
}

@media (max-width: 1180px) {
	.nps-section--full .nps-card {
		min-height: 620px;
	}
}

@media (max-width: 767px) {
	.nps-section,
	.nps-slider {
		padding: 0 !important;
	}

	.nps-section__inner,
	.nps-section--full .nps-section__inner {
		width: 100vw !important;
		max-width: 100vw !important;
		margin-inline: calc(50% - 50vw) !important;
	}

	.nps-section--full .nps-card,
	.nps-card {
		border-radius: 0 !important;
		min-height: 620px;
	}

	.nps-card__image {
		min-height: 250px;
	}

	.nps-card__content {
		padding: 26px 20px 76px !important;
	}

	.nps-card__intro {
		margin-bottom: 14px;
		padding-bottom: 12px;
	}

	.nps-card__title {
		font-size: clamp(24px, 7vw, 32px) !important;
	}

	.nps-card__excerpt {
		font-size: 13.5px;
		line-height: 1.75;
	}

	.nps-arrow {
		bottom: 16px;
		width: 40px;
		height: 40px;
		font-size: 18px;
	}

	.nps-arrow--prev { right: 14px; }
	.nps-arrow--next { left: 14px; }
	.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 14px; }
	.nps-slider:not(.is-rtl) .nps-arrow--next { right: 14px; }

	.nps-dots {
		bottom: 16px;
		padding: 8px 10px;
		gap: 7px;
	}
}

/* v1.8 balanced compact composition
 * Natural image proportions, smaller typography, strict RTL alignment,
 * and refined glass navigation controls.
 */
.nps-section--full .nps-card,
.nps-card {
	height: min(var(--nps-card-height, 480px), 520px) !important;
	min-height: 440px !important;
	max-height: 520px;
}

.nps-card {
	--nps-effective-image-width: min(var(--nps-image-width, 44%), 46%);
	grid-template-columns: var(--nps-effective-image-width) minmax(0, 1fr) !important;
}

.nps-card__image {
	width: 100%;
	min-width: 0;
	background:
		linear-gradient(145deg, rgba(8, 55, 46, .18), rgba(8, 55, 46, .04)),
		#dcebe6;
}

.nps-card__image img,
.nps-card__image .nps-card__img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	max-height: none !important;
	object-fit: var(--nps-image-fit, cover) !important;
	aspect-ratio: auto !important;
	transform: translateZ(0) scale(1.001);
}

.nps-image-zoom-yes .nps-slide.is-active .nps-card__image img {
	transform: translateZ(0) scale(1.025);
}

.nps-card__overlay {
	width: var(--nps-effective-image-width) !important;
	background:
		linear-gradient(90deg, rgba(6, 35, 29, .03) 0%, rgba(6, 35, 29, .10) 62%, var(--nps-image-overlay) 100%),
		linear-gradient(180deg, rgba(6, 35, 29, .02) 45%, rgba(6, 35, 29, .20) 100%);
}

.nps-card__content,
.nps-slider--has-intro .nps-card__content {
	direction: rtl;
	align-items: flex-start !important;
	justify-content: center !important;
	padding: clamp(24px, 2.15vw, 34px) clamp(28px, 3vw, 46px) !important;
	text-align: right !important;
	overflow: hidden;
}

.nps-card__intro,
.nps-card__title,
.nps-card__divider,
.nps-card__excerpt {
	align-self: flex-start;
	margin-left: auto;
	margin-right: 0;
	text-align: right !important;
}

.nps-card__intro {
	width: 100%;
	max-width: none;
	margin-bottom: 10px;
	padding-bottom: 9px;
	border-bottom-color: rgba(255, 255, 255, .09);
}

.nps-card__intro .nps-section__kicker {
	justify-content: flex-start;
	min-height: 28px;
	margin: 0 0 7px auto;
	padding: 6px 12px;
	font-size: 11.5px;
	line-height: 1;
}

.nps-card__intro .nps-section__title {
	width: 100%;
	margin: 0;
	font-size: clamp(20px, 1.45vw, 25px) !important;
	font-weight: 800;
	line-height: 1.32;
	text-align: right !important;
}

.nps-card__intro .nps-section__description {
	width: 100%;
	max-width: none;
	margin: 6px 0 0;
	font-size: clamp(12.5px, .82vw, 14px) !important;
	line-height: 1.65;
	text-align: right !important;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.nps-card__topline {
	width: 100%;
	justify-content: flex-start;
	gap: 8px;
	margin: 0 0 10px;
	text-align: right;
}

.nps-card__badge,
.nps-card__meta {
	min-height: 29px;
	padding: 6px 11px;
	font-size: 11.5px !important;
}

.nps-card__meta::before {
	width: 14px;
	height: 14px;
}

.nps-card__title {
	width: 100%;
	max-width: none;
	font-size: clamp(24px, 1.85vw, 34px) !important;
	font-weight: 850;
	line-height: 1.32;
	letter-spacing: -.018em;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}

.nps-card__divider {
	width: min(100%, 310px);
	height: 12px;
	margin: 10px 0 9px auto;
}

.nps-card__divider span {
	width: 9px;
	height: 9px;
	margin-inline: 9px;
	box-shadow: 0 0 0 4px rgba(36, 154, 120, .12);
}

.nps-card__excerpt {
	width: 100%;
	max-width: none;
	margin: 0 0 13px;
	font-size: clamp(12.8px, .9vw, 14.5px) !important;
	line-height: 1.7;
	-webkit-line-clamp: 2;
}

.nps-card__button {
	align-self: flex-start !important;
	min-height: 40px;
	margin: 0 0 0 auto;
	padding: 9px 17px;
	gap: 9px;
	font-size: 13px !important;
	box-shadow: 0 10px 22px rgba(36, 154, 120, .20);
}

.nps-card__button-icon {
	font-size: 15px;
}

.nps-arrow {
	top: 50%;
	width: 42px;
	height: 42px;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 13px;
	background: rgba(7, 55, 46, .78);
	color: #fff;
	font-size: 0;
	box-shadow: 0 12px 26px rgba(4, 35, 29, .22), inset 0 1px 0 rgba(255, 255, 255, .10);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.nps-arrow__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
}

.nps-arrow__icon svg {
	display: block;
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2.2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.nps-arrow:hover {
	background: linear-gradient(135deg, var(--nps-brand-green), var(--nps-brand-orange));
	border-color: rgba(255, 255, 255, .34);
	transform: translateY(-50%) scale(1.04);
	box-shadow: 0 15px 30px rgba(4, 35, 29, .28), 0 0 0 4px rgba(255, 255, 255, .08);
}

.nps-arrow--prev { right: 16px; }
.nps-arrow--next { left: 16px; }
.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 16px; right: auto; }
.nps-slider:not(.is-rtl) .nps-arrow--next { right: 16px; left: auto; }

.nps-dots {
	position: absolute;
	left: 50%;
	bottom: 11px;
	z-index: 10;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	min-height: auto;
	margin: 0 !important;
	padding: 6px 9px;
	border: 1px solid rgba(255, 255, 255, .10);
	border-radius: 999px;
	background: rgba(7, 47, 39, .28);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	transform: translateX(-50%);
}

.nps-dot {
	width: 6px !important;
	height: 6px !important;
	background: rgba(255, 255, 255, .38) !important;
	box-shadow: none !important;
	transform: none !important;
}

.nps-dot:hover {
	background: rgba(255, 255, 255, .72) !important;
}

.nps-dot.is-active {
	width: 17px !important;
	height: 6px !important;
	border-radius: 999px;
	background: #fff !important;
	box-shadow: none !important;
}

@media (min-width: 768px) and (max-width: 1180px) {
	.nps-section--full .nps-card,
	.nps-card {
		height: min(var(--nps-card-height, 470px), 500px) !important;
		min-height: 450px !important;
		max-height: 500px;
	}

	.nps-card {
		--nps-effective-image-width: min(var(--nps-image-width, 46%), 47%);
	}

	.nps-card__content,
	.nps-slider--has-intro .nps-card__content {
		padding: 23px 28px !important;
	}

	.nps-card__intro .nps-section__title {
		font-size: clamp(19px, 2.2vw, 23px) !important;
	}

	.nps-card__title {
		font-size: clamp(23px, 2.8vw, 31px) !important;
	}
}

@media (max-width: 767px) {
	.nps-section--full .nps-card,
	.nps-card {
		display: flex;
		flex-direction: column;
		height: auto !important;
		min-height: 590px !important;
		max-height: none;
	}

	.nps-card__image {
		flex: 0 0 225px;
		min-height: 225px;
		max-height: 250px;
	}

	.nps-card__overlay {
		width: 100% !important;
		height: 225px;
		background: linear-gradient(180deg, rgba(6, 35, 29, .02) 28%, var(--nps-image-overlay) 100%);
	}

	.nps-card__content,
	.nps-slider--has-intro .nps-card__content {
		flex: 1;
		justify-content: flex-start !important;
		padding: 21px 18px 64px !important;
	}

	.nps-card__intro {
		margin-bottom: 9px;
		padding-bottom: 8px;
	}

	.nps-card__intro .nps-section__title {
		font-size: clamp(19px, 5.8vw, 24px) !important;
	}

	.nps-card__intro .nps-section__description {
		font-size: 12.5px !important;
	}

	.nps-card__topline {
		flex-wrap: wrap;
		margin-bottom: 9px;
	}

	.nps-card__title {
		font-size: clamp(21px, 6.4vw, 28px) !important;
		line-height: 1.35;
	}

	.nps-card__excerpt {
		font-size: 12.8px !important;
		line-height: 1.65;
	}

	.nps-arrow {
		top: auto;
		bottom: 13px;
		width: 38px;
		height: 38px;
		border-radius: 12px;
		transform: none;
	}

	.nps-arrow:hover {
		transform: scale(1.04);
	}

	.nps-arrow--prev { right: 13px; }
	.nps-arrow--next { left: 13px; }
	.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 13px; }
	.nps-slider:not(.is-rtl) .nps-arrow--next { right: 13px; }

	.nps-dots {
		bottom: 14px;
		padding: 6px 8px;
	}
}


/* v1.9 slightly reduced vertical footprint
 * Keeps the same visual design while making the slider noticeably shorter.
 * The cap also affects widgets saved previously with the old 480px default.
 */
.nps-section--full .nps-card,
.nps-card {
	height: min(var(--nps-card-height, 440px), 450px) !important;
	min-height: 410px !important;
	max-height: 450px !important;
}

.nps-card__content,
.nps-slider--has-intro .nps-card__content {
	padding-block: clamp(20px, 1.8vw, 29px) !important;
}

@media (min-width: 768px) and (max-width: 1180px) {
	.nps-section--full .nps-card,
	.nps-card {
		height: min(var(--nps-card-height, 425px), 435px) !important;
		min-height: 395px !important;
		max-height: 435px !important;
	}
}

@media (max-width: 767px) {
	.nps-section--full .nps-card,
	.nps-card {
		height: auto !important;
		min-height: 540px !important;
		max-height: none !important;
	}

	.nps-card__image {
		flex-basis: 205px;
		min-height: 205px;
		max-height: 225px;
	}

	.nps-card__overlay {
		height: 205px;
	}
}


/* v2.0 balanced width and safer navigation
 * Keeps the background full-width while constraining the actual slider card.
 * Desktop arrows sit outside the card, so they never cover the headline or text.
 */
.nps-section--full .nps-section__inner,
.nps-section__inner {
	width: min(calc(100% - clamp(48px, 8vw, 160px)), var(--nps-max-width, 1380px)) !important;
	max-width: 1380px !important;
	margin-inline: auto !important;
}

.nps-slider {
	overflow: visible;
}

@media (min-width: 1181px) {
	.nps-arrow {
		top: 50% !important;
		bottom: auto !important;
		width: 46px;
		height: 46px;
		border-radius: 50%;
		transform: translateY(-50%) !important;
	}

	.nps-arrow:hover {
		transform: translateY(-50%) scale(1.05) !important;
	}

	.nps-arrow--prev {
		right: -23px !important;
		left: auto !important;
	}

	.nps-arrow--next {
		left: -23px !important;
		right: auto !important;
	}

	.nps-slider:not(.is-rtl) .nps-arrow--prev {
		left: -23px !important;
		right: auto !important;
	}

	.nps-slider:not(.is-rtl) .nps-arrow--next {
		right: -23px !important;
		left: auto !important;
	}
}

@media (min-width: 768px) and (max-width: 1180px) {
	.nps-section--full .nps-section__inner,
	.nps-section__inner {
		width: min(calc(100% - 44px), var(--nps-max-width, 1040px)) !important;
		max-width: 1040px !important;
	}

	.nps-slider {
		padding-bottom: 56px !important;
	}

	.nps-arrow {
		top: auto !important;
		bottom: 0 !important;
		width: 42px;
		height: 42px;
		border-radius: 50%;
		transform: none !important;
	}

	.nps-arrow:hover {
		transform: scale(1.05) !important;
	}

	.nps-arrow--prev { right: 0 !important; left: auto !important; }
	.nps-arrow--next { left: 0 !important; right: auto !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 0 !important; right: auto !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--next { right: 0 !important; left: auto !important; }
}

@media (max-width: 767px) {
	.nps-section--full .nps-section__inner,
	.nps-section__inner {
		width: calc(100% - 24px) !important;
		max-width: none !important;
		margin-inline: auto !important;
	}

	.nps-section--full .nps-card,
	.nps-card {
		border-radius: 22px !important;
		min-height: 520px !important;
	}

	.nps-slider {
		padding: 0 0 54px !important;
	}

	.nps-card__content,
	.nps-slider--has-intro .nps-card__content {
		padding-bottom: 24px !important;
	}

	.nps-arrow {
		top: auto !important;
		bottom: 0 !important;
		width: 40px;
		height: 40px;
		border-radius: 50%;
		transform: none !important;
	}

	.nps-arrow:hover {
		transform: scale(1.05) !important;
	}

	.nps-arrow--prev { right: 0 !important; left: auto !important; }
	.nps-arrow--next { left: 0 !important; right: auto !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 0 !important; right: auto !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--next { right: 0 !important; left: auto !important; }
}

/* v2.1 integrated stage + narrower professional composition
 * - removes the harsh white side gaps by adding a soft integrated backdrop
 * - keeps the card narrower and more balanced
 * - gives the image a little more room and keeps arrows outside the text area
 */
.nps-section {
	padding: clamp(18px, 2vw, 28px) 0 !important;
	background: transparent !important;
}

.nps-section--full .nps-section__inner,
.nps-section__inner {
	position: relative;
	width: min(calc(100% - 18px), var(--nps-max-width, 1280px)) !important;
	max-width: 1280px !important;
	margin-inline: auto !important;
	padding: clamp(10px, 1.2vw, 16px) clamp(10px, 1.5vw, 18px) !important;
}

.nps-section__inner::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 30px;
	background:
		radial-gradient(circle at 12% 18%, rgba(36,154,120,.10), transparent 26%),
		radial-gradient(circle at 88% 78%, rgba(36,154,120,.08), transparent 28%),
		linear-gradient(135deg, rgba(238,247,244,.96), rgba(230,243,238,.98));
		box-shadow: inset 0 0 0 1px rgba(21,88,76,.06);
	z-index: 0;
	pointer-events: none;
}

.nps-slider {
	position: relative;
	z-index: 1;
	padding: 0 54px 24px !important;
}

.nps-card {
	--nps-effective-image-width: 50% !important;
	height: min(var(--nps-card-height, 430px), 430px) !important;
	min-height: 390px !important;
	max-height: 430px !important;
	border-radius: 28px !important;
	box-shadow: 0 26px 58px rgba(18,65,55,.16), 0 8px 22px rgba(20,50,43,.09) !important;
}

.nps-card__image,
.nps-card__overlay,
.nps-viewport {
	border-radius: inherit;
}

.nps-card__image img,
.nps-card__image .nps-card__img {
	object-position: center center !important;
}

.nps-card__content,
.nps-slider--has-intro .nps-card__content {
	padding: clamp(22px, 2vw, 30px) clamp(26px, 2.4vw, 40px) !important;
}

.nps-card__title {
	font-size: clamp(22px, 1.7vw, 31px) !important;
	line-height: 1.28 !important;
}

.nps-card__excerpt {
	font-size: clamp(12.6px, .86vw, 14px) !important;
	line-height: 1.68 !important;
}

@media (min-width: 1181px) {
	.nps-arrow {
		top: 50% !important;
		bottom: auto !important;
		width: 44px !important;
		height: 44px !important;
		border-radius: 50% !important;
		transform: translateY(-50%) !important;
	}

	.nps-arrow:hover {
		transform: translateY(-50%) scale(1.05) !important;
	}

	.nps-arrow--prev {
		right: 6px !important;
		left: auto !important;
	}

	.nps-arrow--next {
		left: 6px !important;
		right: auto !important;
	}

	.nps-slider:not(.is-rtl) .nps-arrow--prev {
		left: 6px !important;
		right: auto !important;
	}

	.nps-slider:not(.is-rtl) .nps-arrow--next {
		right: 6px !important;
		left: auto !important;
	}
}

@media (min-width: 768px) and (max-width: 1180px) {
	.nps-section--full .nps-section__inner,
	.nps-section__inner {
		width: min(calc(100% - 16px), 1080px) !important;
		max-width: 1080px !important;
		padding: 10px 12px !important;
	}

	.nps-slider {
		padding: 0 44px 22px !important;
	}

	.nps-card {
		--nps-effective-image-width: 51% !important;
		height: min(var(--nps-card-height, 400px), 400px) !important;
		min-height: 365px !important;
		max-height: 400px !important;
	}

	.nps-card__content,
	.nps-slider--has-intro .nps-card__content {
		padding: 20px 24px !important;
	}

	.nps-arrow {
		top: 50% !important;
		bottom: auto !important;
		width: 40px !important;
		height: 40px !important;
		transform: translateY(-50%) !important;
	}

	.nps-arrow:hover {
		transform: translateY(-50%) scale(1.05) !important;
	}

	.nps-arrow--prev { right: 2px !important; left: auto !important; }
	.nps-arrow--next { left: 2px !important; right: auto !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 2px !important; right: auto !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--next { right: 2px !important; left: auto !important; }
}

@media (max-width: 767px) {
	.nps-section--full .nps-section__inner,
	.nps-section__inner {
		width: calc(100% - 10px) !important;
		max-width: none !important;
		padding: 8px !important;
	}

	.nps-section__inner::before {
		border-radius: 24px;
	}

	.nps-slider {
		padding: 0 0 50px !important;
	}

	.nps-card {
		display: flex !important;
		flex-direction: column !important;
		height: auto !important;
		min-height: 540px !important;
		max-height: none !important;
		border-radius: 22px !important;
	}

	.nps-card__image {
		flex: 0 0 235px !important;
		min-height: 235px !important;
		max-height: 235px !important;
	}

	.nps-card__overlay {
		width: 100% !important;
		height: 235px !important;
	}

	.nps-card__content,
	.nps-slider--has-intro .nps-card__content {
		padding: 18px 16px 60px !important;
	}

	.nps-arrow {
		top: auto !important;
		bottom: 10px !important;
		width: 38px !important;
		height: 38px !important;
		transform: none !important;
	}

	.nps-arrow:hover {
		transform: scale(1.04) !important;
	}

	.nps-arrow--prev { right: 10px !important; left: auto !important; }
	.nps-arrow--next { left: 10px !important; right: auto !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 10px !important; right: auto !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--next { right: 10px !important; left: auto !important; }
}

/* v2.2 full-width dark background
 * Replace the light surrounding backdrop with a full-width background
 * matching the text panel tone, for a cleaner integrated look.
 */
.nps-section {
	background:
		radial-gradient(circle at 18% 20%, rgba(66, 183, 151, .10), transparent 26%),
		radial-gradient(circle at 82% 78%, rgba(66, 183, 151, .08), transparent 30%),
		linear-gradient(135deg, #0d4d42 0%, #11584b 42%, #0f5246 100%) !important;
	padding: clamp(18px, 2vw, 28px) 0 !important;
}

.nps-section::before,
.nps-section::after {
	opacity: .22;
}

.nps-section--full .nps-section__inner,
.nps-section__inner {
	width: min(calc(100% - 24px), var(--nps-max-width, 1280px)) !important;
	max-width: 1280px !important;
	margin-inline: auto !important;
	padding: 0 !important;
}

.nps-section__inner::before {
	display: none !important;
}

.nps-slider {
	position: relative;
	z-index: 1;
	padding: 0 54px 24px !important;
}

.nps-card {
	--nps-effective-image-width: 50% !important;
	height: min(var(--nps-card-height, 430px), 430px) !important;
	min-height: 390px !important;
	max-height: 430px !important;
	border-radius: 28px !important;
}

@media (min-width: 768px) and (max-width: 1180px) {
	.nps-section--full .nps-section__inner,
	.nps-section__inner {
		width: min(calc(100% - 20px), 1080px) !important;
		max-width: 1080px !important;
	}

	.nps-slider {
		padding: 0 44px 22px !important;
	}
}

@media (max-width: 767px) {
	.nps-section--full .nps-section__inner,
	.nps-section__inner {
		width: calc(100% - 12px) !important;
		max-width: none !important;
	}

	.nps-slider {
		padding: 0 0 50px !important;
	}
}

/* v2.3 smoother visual merge + refined arrows
 * - softer transition between image and content panel
 * - cleaner, more premium navigation controls
 */
.nps-card {
	--nps-effective-image-width: 51.5% !important;
	background: linear-gradient(135deg, #0b4a40 0%, #11584b 48%, #0d5145 100%) !important;
	box-shadow: 0 28px 64px rgba(7, 42, 36, .24), 0 10px 26px rgba(5, 26, 22, .12) !important;
}

.nps-card::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: calc(var(--nps-effective-image-width) - 9%);
	width: 18%;
	background: linear-gradient(90deg, rgba(8, 50, 43, 0) 0%, rgba(8, 50, 43, .18) 24%, rgba(8, 50, 43, .62) 56%, rgba(8, 50, 43, .88) 78%, rgba(8, 50, 43, 0) 100%);
	z-index: 1;
	pointer-events: none;
}

.nps-card__overlay {
	width: calc(var(--nps-effective-image-width) + 4%) !important;
	background:
		linear-gradient(90deg, rgba(6,35,29,.02) 0%, rgba(6,35,29,.10) 52%, rgba(10,69,59,.42) 76%, rgba(12,79,68,.82) 100%),
		linear-gradient(180deg, rgba(6,35,29,.02) 40%, rgba(6,35,29,.20) 100%) !important;
}

.nps-card__content,
.nps-slider--has-intro .nps-card__content {
	background:
		radial-gradient(circle at 82% 12%, rgba(255,255,255,.09), transparent 20%),
		linear-gradient(90deg, rgba(12,79,68,.14) 0%, rgba(12,79,68,.86) 12%, rgba(12,79,68,.96) 22%, rgba(12,79,68,1) 100%) !important;
}

.nps-card__content::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	inset-inline-start: -78px;
	width: 118px;
	background: linear-gradient(90deg, rgba(12,79,68,0) 0%, rgba(12,79,68,.40) 35%, rgba(12,79,68,.95) 100%);
	border: 0 !important;
	border-radius: 0 !important;
	transform: none !important;
}

.nps-card__content::after {
	inset-inline: 14%;
	bottom: 14%;
	height: 1px;
	background: linear-gradient(90deg, transparent, rgba(255,255,255,.12), transparent) !important;
}

.nps-arrow {
	background: rgba(255,255,255,.12) !important;
	border: 1px solid rgba(255,255,255,.18) !important;
	color: #ffffff !important;
	box-shadow: 0 12px 30px rgba(4, 28, 24, .22), inset 0 1px 0 rgba(255,255,255,.14) !important;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.nps-arrow__icon svg {
	width: 17px !important;
	height: 17px !important;
	stroke-width: 2.4 !important;
}

.nps-arrow:hover {
	background: linear-gradient(135deg, rgba(74,194,159,.95), rgba(22,145,118,.95)) !important;
	border-color: rgba(255,255,255,.30) !important;
	box-shadow: 0 16px 34px rgba(4, 28, 24, .28), 0 0 0 4px rgba(255,255,255,.08) !important;
}

@media (min-width: 1181px) {
	.nps-arrow {
		width: 48px !important;
		height: 48px !important;
	}

	.nps-arrow--prev { right: 10px !important; }
	.nps-arrow--next { left: 10px !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 10px !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--next { right: 10px !important; }
}

@media (min-width: 768px) and (max-width: 1180px) {
	.nps-card {
		--nps-effective-image-width: 52% !important;
	}

	.nps-card::before {
		left: calc(var(--nps-effective-image-width) - 10%);
		width: 20%;
	}

	.nps-arrow {
		width: 42px !important;
		height: 42px !important;
	}

	.nps-arrow--prev { right: 6px !important; }
	.nps-arrow--next { left: 6px !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 6px !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--next { right: 6px !important; }
}

@media (max-width: 767px) {
	.nps-card::before {
		display: none !important;
	}

	.nps-card__overlay {
		background: linear-gradient(180deg, rgba(6,35,29,.04) 20%, rgba(12,79,68,.82) 100%) !important;
	}

	.nps-arrow {
		background: rgba(255,255,255,.14) !important;
		border-color: rgba(255,255,255,.18) !important;
	}
}

/* v2.4 refined arrows + subtle artistic background
 * - arrows moved away from the edges and given a cleaner glass style
 * - section background gets a subtle decorative feel without noise
 */
.nps-section {
	background:
		radial-gradient(circle at 14% 18%, rgba(77, 193, 162, .10), transparent 24%),
		radial-gradient(circle at 86% 76%, rgba(77, 193, 162, .08), transparent 28%),
		linear-gradient(135deg, #0b463d 0%, #105549 45%, #0d4d42 100%) !important;
	position: relative;
	overflow: hidden;
}

.nps-section::before,
.nps-section::after {
	content: "";
	position: absolute;
	pointer-events: none;
	z-index: 0;
}

.nps-section::before {
	inset-inline-start: -80px;
	top: 38px;
	width: 340px;
	height: 340px;
	border-radius: 50%;
	background:
		radial-gradient(circle at center, rgba(255,255,255,0) 58%, rgba(255,255,255,.055) 59%, rgba(255,255,255,0) 60%),
		radial-gradient(circle at center, rgba(255,255,255,0) 73%, rgba(99, 220, 187, .07) 74%, rgba(255,255,255,0) 75%);
	opacity: .6;
	transform: rotate(9deg);
}

.nps-section::after {
	inset-inline-end: 58px;
	bottom: 34px;
	width: 190px;
	height: 190px;
	background:
		linear-gradient(45deg, rgba(255,255,255,.06) 1px, transparent 1px),
		linear-gradient(-45deg, rgba(255,255,255,.04) 1px, transparent 1px);
	background-size: 18px 18px, 18px 18px;
	mask-image: radial-gradient(circle at center, #000 52%, transparent 78%);
	opacity: .18;
	border-radius: 50%;
}

.nps-section--full .nps-section__inner,
.nps-section__inner {
	position: relative;
	z-index: 1;
}

.nps-slider {
	padding: 0 86px 26px !important;
}

.nps-card {
	box-shadow: 0 28px 64px rgba(7, 42, 36, .24), 0 10px 26px rgba(5, 26, 22, .12) !important;
}

.nps-arrow {
	background: linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.08)) !important;
	border: 1px solid rgba(255,255,255,.18) !important;
	box-shadow: 0 14px 34px rgba(4, 28, 24, .22), inset 0 1px 0 rgba(255,255,255,.16) !important;
	backdrop-filter: blur(12px) saturate(120%);
	-webkit-backdrop-filter: blur(12px) saturate(120%);
}

.nps-arrow:hover {
	background: linear-gradient(135deg, rgba(85, 207, 174, .96), rgba(28, 153, 126, .96)) !important;
	box-shadow: 0 18px 36px rgba(4, 28, 24, .28), 0 0 0 4px rgba(255,255,255,.08) !important;
}

.nps-arrow__icon svg {
	width: 18px !important;
	height: 18px !important;
}

@media (min-width: 1181px) {
	.nps-arrow {
		width: 50px !important;
		height: 50px !important;
	}

	.nps-arrow--prev { right: 24px !important; left: auto !important; }
	.nps-arrow--next { left: 24px !important; right: auto !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 24px !important; right: auto !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--next { right: 24px !important; left: auto !important; }
}

@media (min-width: 768px) and (max-width: 1180px) {
	.nps-slider {
		padding: 0 62px 24px !important;
	}

	.nps-arrow {
		width: 44px !important;
		height: 44px !important;
	}

	.nps-arrow--prev { right: 14px !important; left: auto !important; }
	.nps-arrow--next { left: 14px !important; right: auto !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 14px !important; right: auto !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--next { right: 14px !important; left: auto !important; }

	.nps-section::before {
		width: 280px;
		height: 280px;
		inset-inline-start: -90px;
		top: 48px;
	}

	.nps-section::after {
		width: 150px;
		height: 150px;
		inset-inline-end: 32px;
		bottom: 24px;
	}
}

@media (max-width: 767px) {
	.nps-slider {
		padding: 0 0 54px !important;
	}

	.nps-arrow {
		bottom: 10px !important;
		width: 40px !important;
		height: 40px !important;
	}

	.nps-arrow--prev { right: 14px !important; left: auto !important; }
	.nps-arrow--next { left: 14px !important; right: auto !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--prev { left: 14px !important; right: auto !important; }
	.nps-slider:not(.is-rtl) .nps-arrow--next { right: 14px !important; left: auto !important; }

	.nps-section::before {
		width: 210px;
		height: 210px;
		inset-inline-start: -70px;
		top: 34px;
		opacity: .45;
	}

	.nps-section::after {
		width: 110px;
		height: 110px;
		inset-inline-end: 14px;
		bottom: 68px;
		opacity: .14;
	}
}


/* v2.5 compact vertical layout
 * Noticeably reduces the news strip from top to bottom while preserving
 * the current visual identity, image/text balance, and navigation styling.
 */
.nps-section {
	padding: clamp(9px, 1.05vw, 14px) 0 !important;
}

.nps-slider {
	padding-bottom: 16px !important;
}

.nps-section--full .nps-card,
.nps-card {
	height: min(var(--nps-card-height, 370px), 390px) !important;
	min-height: 350px !important;
	max-height: 390px !important;
}

.nps-card__content,
.nps-slider--has-intro .nps-card__content {
	padding-block: clamp(15px, 1.35vw, 22px) !important;
}

.nps-card__intro {
	margin-bottom: 7px !important;
	padding-bottom: 7px !important;
}

.nps-card__intro .nps-section__kicker {
	margin-bottom: 5px !important;
	padding-block: 5px !important;
}

.nps-card__intro .nps-section__description {
	margin-top: 4px !important;
	line-height: 1.55 !important;
}

.nps-card__topline {
	margin-bottom: 7px !important;
}

.nps-card__divider {
	margin-top: 7px !important;
	margin-bottom: 6px !important;
}

.nps-card__excerpt {
	margin-bottom: 9px !important;
	line-height: 1.58 !important;
}

.nps-dots {
	bottom: 8px !important;
}

@media (min-width: 768px) and (max-width: 1180px) {
	.nps-section {
		padding-block: 8px !important;
	}

	.nps-slider {
		padding-bottom: 14px !important;
	}

	.nps-section--full .nps-card,
	.nps-card {
		height: min(var(--nps-card-height, 360px), 375px) !important;
		min-height: 340px !important;
		max-height: 375px !important;
	}

	.nps-card__content,
	.nps-slider--has-intro .nps-card__content {
		padding-block: 15px !important;
	}
}

@media (max-width: 767px) {
	.nps-section {
		padding-block: 6px !important;
	}

	.nps-slider {
		padding-bottom: 48px !important;
	}

	.nps-section--full .nps-card,
	.nps-card {
		height: auto !important;
		min-height: 485px !important;
		max-height: none !important;
	}

	.nps-card__image {
		flex-basis: 190px !important;
		min-height: 190px !important;
		max-height: 190px !important;
	}

	.nps-card__overlay {
		height: 190px !important;
	}

	.nps-card__content,
	.nps-slider--has-intro .nps-card__content {
		padding: 15px 15px 18px !important;
	}

	.nps-card__intro .nps-section__description,
	.nps-card__excerpt {
		-webkit-line-clamp: 2;
	}
}

/* v2.6 full-image protection
 * Keeps the existing design while forcing every slide image to appear complete.
 * This also overrides old Elementor instances saved with the former cover setting.
 */
.nps-card__image {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	background:
		radial-gradient(circle at 18% 18%, rgba(255,255,255,.46), transparent 34%),
		linear-gradient(145deg, rgba(8,55,46,.13), rgba(8,55,46,.035)),
		#eaf4f0 !important;
}

.nps-card__image picture {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
}

.nps-card__image img,
.nps-card__image .nps-card__img,
.nps-card__image picture img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain !important;
	object-position: center center !important;
	transform: none !important;
	filter: none;
}

.nps-image-zoom-yes .nps-slide.is-active .nps-card__image img,
.nps-image-zoom-yes .nps-slide.is-active .nps-card__image .nps-card__img,
.nps-image-zoom-yes .nps-slide.is-active .nps-card__image picture img {
	transform: none !important;
}

/* v2.6.1 smart full-image background
 * The real image stays 100% visible, while the same image fills the empty sides
 * as a soft blurred backdrop so different image ratios do not create white/gray bands.
 */
.nps-card__image {
	position: relative !important;
	overflow: hidden !important;
	isolation: isolate;
	background:
		linear-gradient(135deg, rgba(9, 66, 55, .82), rgba(14, 91, 77, .68)),
		#0f5b4d !important;
}

.nps-card__image::before {
	content: "";
	position: absolute;
	inset: -26px;
	z-index: 0;
	background-image: var(--nps-image-bg);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	filter: blur(22px) saturate(1.05);
	transform: scale(1.10);
	opacity: .72;
	pointer-events: none;
}

.nps-card__image::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		radial-gradient(circle at 50% 50%, rgba(255,255,255,.07), rgba(255,255,255,0) 48%),
		linear-gradient(90deg, rgba(7, 48, 40, .16), rgba(7, 48, 40, .06));
	pointer-events: none;
}

.nps-card__image picture,
.nps-card__image img,
.nps-card__image .nps-card__img,
.nps-card__image picture img {
	position: relative !important;
	z-index: 2 !important;
}

.nps-card__image img,
.nps-card__image .nps-card__img,
.nps-card__image picture img {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
	object-position: center center !important;
	background: transparent !important;
	box-shadow: none !important;
}
