/* ==========================================================================
   Aghosh Story Widget
   Base layout only — colors, fonts, spacing come from Elementor controls.
   ========================================================================== */

.aghosh-story {
	width: 100%;
	box-sizing: border-box;
	--aghosh-stat-divider-color: rgba(255, 255, 255, 0.25);
}

.aghosh-story *,
.aghosh-story *::before,
.aghosh-story *::after {
	box-sizing: border-box;
}

.aghosh-story__title {
	margin: 0 0 30px;
	line-height: 1.2;
}

/* --- Top row: image + description ---------------------------------------- */
.aghosh-story__top {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 40px;
}

.aghosh-story__media {
	flex: 0 0 100%;
	max-width: 100%;
	display: flex;
	justify-content: center;
}

.aghosh-story__media img {
	width: 100%;
	max-width: 100%;
	height: auto;
	display: block;
}

.aghosh-story__panel {
	flex: 1 1 0;
	min-width: 0;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.aghosh-story__card {
	line-height: 1.8;
}

.aghosh-story__card p {
	margin: 0 0 1em;
}

.aghosh-story__card p:last-child {
	margin-bottom: 0;
}

/* --- Dotted decorations -------------------------------------------------- */
.aghosh-story__dots {
	display: block;
	width: 120px;
	max-width: 60%;
	height: 0;
	border-top: 2px dashed #9DBDE3;
}

.aghosh-story__dots--top {
	align-self: flex-end;
	margin-bottom: 20px;
}

.aghosh-story__dots--bottom {
	align-self: flex-end;
	margin-top: 20px;
}

/* --- Stats bar ----------------------------------------------------------- */
.aghosh-story__stats {
	display: flex;
	flex-wrap: wrap;
	margin-top: 30px;
	background-color: #1A4E9B;
	border-radius: 6px;
	overflow: hidden;
}

.aghosh-story__stat {
	flex: 1 1 0;
	min-width: 140px;
	text-align: center;
	padding: 6px 16px;
	border-right: 0;
}


.aghosh-story__stat-number {
	display: block;
	line-height: 1.1;
	font-weight: 700;
}

.aghosh-story__stat-label {
	display: block;
	margin-top: 6px;
	line-height: 1.3;
}

/* --- Responsive ---------------------------------------------------------- */
/* Desktop & laptop: image left, description card overlapping its right edge. */
@media (min-width: 1025px) {
	.aghosh-story--dividers-desktop .aghosh-story__stat:not(:last-child) {
		border-right: 1px solid var(--aghosh-stat-divider-color);
	}

	.aghosh-story__top {
		align-items: stretch;
	}

	.aghosh-story__media {
		flex: 0 0 50%;
		max-width: 50%;
		align-self: flex-start;
	}

	.aghosh-story__panel {
		z-index: 2;
	}

	/* Pull the card left so it sits on top of the image's right edge.
	   Right edge stays put (no horizontal overflow); only the left side
	   extends over the image. ~120px clears the column gap + overlaps. */
	.aghosh-story__card {
		position: relative;
		z-index: 2;
		margin-left: -120px;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.aghosh-story .aghosh-story__stat {
		border-right: 0;
	}

	.aghosh-story--dividers-tablet .aghosh-story__stat:not(:last-child) {
		border-right: 1px solid var(--aghosh-stat-divider-color);
	}
}

@media (max-width: 767px) {
	.aghosh-story .aghosh-story__stat {
		flex: 1 1 50%;
		min-width: 50%;
		border-right: 0;
		padding: 14px 10px;
	}

	.aghosh-story--dividers-mobile .aghosh-story__stat:not(:last-child) {
		border-right: 1px solid var(--aghosh-stat-divider-color);
	}
}

@media (max-width: 480px) {
	.aghosh-story__stat {
		flex: 1 1 100%;
		min-width: 100%;
	}
}
