.eiaw,
.eiaw * {
	box-sizing: border-box;
}

.eiaw {
	--eiaw-max-width: 1470px;
	--eiaw-content-width: 40%;
	--eiaw-edge-bleed: 0px;
	--eiaw-number-size: 40px;
	--eiaw-number-gap: 20px;
	--eiaw-item-gap: 26px;
	--eiaw-connector-width: 1px;
	--eiaw-connector-color: #d9d9d9;
	--eiaw-connector-active-color: #111111;
	--eiaw-duration: 300ms;
	--eiaw-image-zoom: 1.05;
	--eiaw-slide-width: 100%;
	--eiaw-preview-width: 0px;
	--eiaw-image-gap: 20px;
	--eiaw-preview-shadow-width: 170px;
	--eiaw-preview-shadow-color: rgba(245, 245, 245, 1);
	--eiaw-active-edge-shadow-size: 34px;
	--eiaw-active-edge-shadow-color: rgba(0, 0, 0, 0.32);
	position: relative;
	width: 100%;
	min-width: 0;
}

.eiaw__container {
	position: relative;
	width: min(calc(100% - 30px), var(--eiaw-max-width));
	max-width: var(--eiaw-max-width);
	margin-inline: auto;
}

.eiaw__shell {
	position: relative;
	z-index: 0;
	background: #f5f5f5;
	border-radius: 10px;
	padding-block: 120px;
}

.eiaw__shell::before,
.eiaw__shell::after {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	bottom: 0;
	width: var(--eiaw-edge-bleed);
	pointer-events: none;
	background: inherit;
	display: none;
}

.eiaw--media-end.is-bleeding .eiaw__shell::after {
	display: block;
	inset-inline-end: calc(0px - var(--eiaw-edge-bleed));
}

.eiaw--media-start.is-bleeding .eiaw__shell::before {
	display: block;
	inset-inline-start: calc(0px - var(--eiaw-edge-bleed));
}

.eiaw__grid {
	display: grid;
	grid-template-columns: minmax(0, var(--eiaw-content-width)) minmax(0, calc(100% - var(--eiaw-content-width)));
	align-items: center;
	gap: 0;
	min-width: 0;
}

.eiaw--media-start .eiaw__grid {
	grid-template-columns: minmax(0, calc(100% - var(--eiaw-content-width))) minmax(0, var(--eiaw-content-width));
}

.eiaw__content {
	position: relative;
	z-index: 3;
	min-width: 0;
	padding-inline: 70px;
	padding-block: 0;
	background: inherit;
	text-align: left;
}

.eiaw--media-start .eiaw__content {
	grid-column: 2;
}

.eiaw__heading {
	margin: 0 0 40px;
}

.eiaw__subtitle {
	margin: 0 0 4px;
	padding: 0;
	font-size: 10px;
	font-weight: 500;
	line-height: 12px;
	letter-spacing: 1px;
	text-transform: uppercase;
	color: #b7b7b7;
}

.eiaw__title {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 24px;
	font-weight: 600;
	line-height: 1.25;
	color: #111;
}

.eiaw__list {
	display: flex;
	flex-direction: column;
	gap: var(--eiaw-item-gap);
	min-width: 0;
}

.eiaw__item {
	position: relative;
	min-width: 0;
	padding-inline-start: calc(var(--eiaw-number-size) + var(--eiaw-number-gap));
}

/* خط پایه‌ای که دایره هر مرحله را به مرحله بعد متصل می‌کند. */
.eiaw__item:not(:last-child)::before,
.eiaw__item:not(:last-child)::after {
	content: "";
	position: absolute;
	z-index: 0;
	inset-inline-start: 0;
	top: var(--eiaw-number-size);
	bottom: calc(0px - var(--eiaw-item-gap));
	width: var(--eiaw-number-size);
	pointer-events: none;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: var(--eiaw-connector-width) 100%;
}

.eiaw__item:not(:last-child)::before {
	background-image: linear-gradient(var(--eiaw-connector-color), var(--eiaw-connector-color));
}

.eiaw__item:not(:last-child)::after {
	background-image: linear-gradient(var(--eiaw-connector-active-color), var(--eiaw-connector-active-color));
	transform: scaleY(0);
	transform-origin: center top;
	transition: transform var(--eiaw-duration) ease;
}

.eiaw__item.is-active:not(:last-child)::after {
	transform: scaleY(1);
}

.eiaw__trigger,
.eiaw__trigger:hover,
.eiaw__trigger:focus,
.eiaw__trigger:active {
	appearance: none !important;
	-webkit-appearance: none !important;
	position: relative !important;
	z-index: 1 !important;
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	font: inherit !important;
	line-height: inherit !important;
	text-align: inherit !important;
	text-decoration: none !important;
	text-transform: none !important;
	color: inherit !important;
	cursor: pointer;
}

.eiaw__trigger:focus-visible {
	outline: 2px solid currentColor !important;
	outline-offset: 5px !important;
}

.eiaw__number {
	position: absolute;
	z-index: 2;
	inset-inline-start: calc(0px - var(--eiaw-number-size) - var(--eiaw-number-gap));
	top: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--eiaw-number-size);
	height: var(--eiaw-number-size);
	border-radius: 999px;
	background: #d9d9d9;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	transition: background-color var(--eiaw-duration) ease, transform var(--eiaw-duration) ease;
}

.eiaw__item-title {
	display: block;
	margin: 0;
	padding: 0;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.35;
	color: #ababab;
	transition: color var(--eiaw-duration) ease;
}

.eiaw__panel {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-rows: 0fr;
	opacity: 0;
	visibility: hidden;
	transition:
		grid-template-rows var(--eiaw-duration) ease,
		opacity var(--eiaw-duration) ease,
		visibility 0s linear var(--eiaw-duration);
}

.eiaw__panel-inner {
	min-height: 0;
	overflow: hidden;
}

.eiaw__description {
	margin: 0;
	padding-top: 2px;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.65;
	color: #666;
}

.eiaw__description p,
.eiaw__description > :first-child,
.eiaw__description > :last-child {
	margin: 0 !important;
}

.eiaw__item.is-active .eiaw__number {
	background: #111;
}

.eiaw__item.is-active .eiaw__item-title {
	color: #111;
}

.eiaw__item.is-active .eiaw__panel {
	grid-template-rows: 1fr;
	opacity: 1;
	visibility: visible;
	transition:
		grid-template-rows var(--eiaw-duration) ease,
		opacity var(--eiaw-duration) ease,
		visibility 0s linear 0s;
}

.eiaw__media {
	position: relative;
	z-index: 1;
	grid-column: 2;
	height: 420px;
	min-width: 0;
	overflow: hidden;
	border-radius: 5px;
	isolation: isolate;
}

.eiaw--media-start .eiaw__media {
	grid-column: 1;
	grid-row: 1;
}

.eiaw--media-end.is-bleeding .eiaw__media {
	width: calc(100% + var(--eiaw-edge-bleed));
	margin-inline-end: calc(0px - var(--eiaw-edge-bleed));
}

.eiaw--media-start.is-bleeding .eiaw__media {
	width: calc(100% + var(--eiaw-edge-bleed));
	margin-inline-start: calc(0px - var(--eiaw-edge-bleed));
}

/* اسلایدها روی یک Track واقعی قرار می‌گیرند تا تصویر بعدی نیمه‌نمایان بماند. */
.eiaw__track {
	position: absolute;
	z-index: 1;
	inset-block: 0;
	inset-inline-start: 0;
	display: flex;
	flex-flow: row nowrap;
	gap: var(--eiaw-image-gap);
	width: max-content;
	height: 100%;
	will-change: transform;
	transform: translate3d(0, 0, 0);
	transition: transform var(--eiaw-duration) cubic-bezier(0.22, 0.61, 0.36, 1);
}

.eiaw__track.is-jumping {
	transition: none !important;
}

.eiaw__slide {
	position: relative;
	z-index: 0;
	flex: 0 0 var(--eiaw-slide-width);
	width: var(--eiaw-slide-width);
	height: 100%;
	min-width: 0;
	overflow: hidden;
	border-radius: 5px;
	transform: translateZ(0);
}

.eiaw__slide.is-active {
	z-index: 2;
}

/* سایه واقعی روی لبه تصویر فعال؛ روی نیمه تصویر بعدی می‌افتد. */
.eiaw.has-preview:not(.is-last-active):not(.is-rtl) .eiaw__slide.is-active {
	box-shadow: var(--eiaw-active-edge-shadow-size) 0 var(--eiaw-active-edge-shadow-size) -8px var(--eiaw-active-edge-shadow-color);
}

.eiaw.has-preview:not(.is-last-active).is-rtl .eiaw__slide.is-active {
	box-shadow: calc(0px - var(--eiaw-active-edge-shadow-size)) 0 var(--eiaw-active-edge-shadow-size) -8px var(--eiaw-active-edge-shadow-color);
}

.eiaw.is-last-active .eiaw__slide.is-active {
	box-shadow: none;
}

.eiaw__image {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	object-fit: cover;
	object-position: center center;
	transform: scale(1);
	transition: transform var(--eiaw-duration) ease;
}

.eiaw__media:hover .eiaw__slide.is-active .eiaw__image {
	transform: scale(var(--eiaw-image-zoom));
}

/* محوشدگی لبه بیرونی نیمه تصویر بعدی؛ مستقل از سایه بین دو تصویر. */
.eiaw__media::after {
	content: "";
	position: absolute;
	z-index: 4;
	inset-block: 0;
	inset-inline-end: 0;
	width: var(--eiaw-preview-shadow-width);
	max-width: var(--eiaw-preview-width);
	pointer-events: none;
	opacity: 0;
	background: linear-gradient(
		to right,
		rgba(245, 245, 245, 0) 0%,
		rgba(245, 245, 245, 0.08) 34%,
		var(--eiaw-preview-shadow-color) 100%
	);
	transition: opacity var(--eiaw-duration) ease;
}

.eiaw.is-rtl .eiaw__media::after {
	background: linear-gradient(
		to left,
		rgba(245, 245, 245, 0) 0%,
		rgba(245, 245, 245, 0.08) 34%,
		var(--eiaw-preview-shadow-color) 100%
	);
}

.eiaw.has-preview:not(.is-last-active) .eiaw__media::after {
	opacity: 1;
}

.eiaw.is-bleeding.eiaw--media-end .eiaw__shell {
	border-start-end-radius: 0 !important;
	border-end-end-radius: 0 !important;
}

.eiaw.is-bleeding.eiaw--media-start .eiaw__shell {
	border-start-start-radius: 0 !important;
	border-end-start-radius: 0 !important;
}

@media (max-width: 1023px) {
	.eiaw {
		--eiaw-edge-bleed: 0px !important;
		--eiaw-preview-width: 0px !important;
	}

	.eiaw__container {
		width: min(calc(100% - 30px), var(--eiaw-max-width));
	}

	.eiaw__shell {
		padding-block: 0;
		border-radius: 10px;
		overflow: hidden;
	}

	.eiaw__shell::before,
	.eiaw__shell::after {
		display: none !important;
	}

	.eiaw__grid,
	.eiaw--media-start .eiaw__grid {
		display: flex;
		flex-direction: column;
	}

	.eiaw__content,
	.eiaw--media-start .eiaw__content {
		order: 2;
		width: 100%;
		padding-inline: 28px;
		padding-block: 0;
	}

	.eiaw__media,
	.eiaw--media-start .eiaw__media,
	.eiaw--media-end.is-bleeding .eiaw__media,
	.eiaw--media-start.is-bleeding .eiaw__media {
		order: 1;
		width: 100%;
		height: 380px;
		margin: 0;
		border-radius: 5px;
	}

	.eiaw__media::after {
		display: none;
	}
}

@media (max-width: 767px) {
	.eiaw {
		--eiaw-item-gap: 22px;
	}

	.eiaw__content,
	.eiaw--media-start .eiaw__content {
		padding-inline: 15px;
		padding-block: 48px;
	}

	.eiaw__heading {
		margin-bottom: 28px;
	}

	.eiaw__media,
	.eiaw--media-start .eiaw__media {
		height: 270px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.eiaw *,
	.eiaw *::before,
	.eiaw *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}
