/* ==========================================================================
   TextCRM Features Widget
   Mirrors demo-html/home page.html → "Everything you need to grow /
   Powerful Features That Drive Revenue" section + its metric counter strip.
   ========================================================================== */

.textcrm-features {
	position: relative;
	width: 100%;
	padding-top: 96px;                /* py-24 */
	padding-bottom: 96px;
	background-color: #060e20;        /* bg-[#060e20] */
	font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	color: #f3f4f6;
	-webkit-font-smoothing: antialiased;
	box-sizing: border-box;

	/* Tunables driven by the Style tab. */
	--tf-feature-bg: rgba(255, 255, 255, 0.03);
	--tf-feature-border: rgba(255, 255, 255, 0.1);
	--tf-feature-radius: 8px;
	--tf-feature-box: 48px;
	--tf-feature-glyph: 24px;
	--tf-feature-glyph-color: #00f5a0;

	--tf-stat-icon-bg: rgba(0, 245, 160, 0.1);
	--tf-stat-icon-color: #00f5a0;
	--tf-stat-icon-pad: 12px;
	--tf-stat-glyph: 24px;

	--tf-divider: rgba(255, 255, 255, 0.05);
}

.textcrm-features *,
.textcrm-features *::before,
.textcrm-features *::after {
	box-sizing: border-box;
}

.textcrm-features__container {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	padding-left: 24px;
	padding-right: 24px;
}

/* --------------------------------------------------------------------------
   Header (eyebrow + heading)
   -------------------------------------------------------------------------- */
.textcrm-features__header {
	text-align: center;
	margin-bottom: 64px;              /* mb-16 */
}

.textcrm-features__eyebrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;                         /* gap-2 */
	margin-bottom: 16px;              /* mb-4 */
	font-size: 10px;
	font-weight: 700;
	line-height: 1.4;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: #00f5a0;
}

.textcrm-features__eyebrow-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 16px;
	height: 16px;
	flex-shrink: 0;
	color: currentColor;
}

.textcrm-features__eyebrow-icon svg,
.textcrm-features__eyebrow-icon i {
	width: 100%;
	height: 100%;
	font-size: 16px;
	line-height: 1;
}

.textcrm-features__title {
	margin: 0;
	font-size: 36px;
	line-height: 1.1;
	font-weight: 700;
	color: #ffffff;
	letter-spacing: -0.01em;
}

.textcrm-features__title-accent {
	color: #00f5a0;
}

/* --------------------------------------------------------------------------
   Features grid (6 items in the reference)
   -------------------------------------------------------------------------- */
.textcrm-features__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 32px;                        /* gap-8 */
	margin-bottom: 80px;              /* mb-20 */
	text-align: center;
}

.textcrm-features__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;                        /* gap-4 */
}

.textcrm-features__item-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: var(--tf-feature-box, 48px);
	height: var(--tf-feature-box, 48px);
	background: var(--tf-feature-bg, rgba(255, 255, 255, 0.03));
	border: 1px solid var(--tf-feature-border, rgba(255, 255, 255, 0.1));
	border-radius: var(--tf-feature-radius, 8px);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	color: var(--tf-feature-glyph-color, #00f5a0);
	flex-shrink: 0;
}

.textcrm-features__item-icon svg {
	display: block;
	width: var(--tf-feature-glyph, 24px);
	height: var(--tf-feature-glyph, 24px);
	color: currentColor;
}

.textcrm-features__item-icon i {
	font-size: var(--tf-feature-glyph, 24px);
	line-height: 1;
	color: currentColor;
}

.textcrm-features__item-title {
	margin: 0;
	font-size: 14px;                  /* text-sm */
	line-height: 1.3;
	font-weight: 700;                 /* font-bold */
	color: #ffffff;
}

.textcrm-features__item-desc {
	margin: 0;
	font-size: 10px;                  /* text-[10px] */
	line-height: 1.25;                /* leading-tight */
	color: #6b7280;                   /* text-gray-500 */
}

/* --------------------------------------------------------------------------
   Metric Counter Strip (4 stats)
   -------------------------------------------------------------------------- */
.textcrm-features__stats {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 32px;                        /* gap-8 */
	padding-top: 40px;                /* py-10 */
	padding-bottom: 40px;
	border-top: 1px solid var(--tf-divider, rgba(255, 255, 255, 0.05));
}

.textcrm-features__stats--no-divider {
	border-top: 0;
}

.textcrm-features__stat {
	display: flex;
	align-items: center;
	gap: 16px;                        /* gap-4 */
}

.textcrm-features__stat-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: var(--tf-stat-icon-pad, 12px); /* p-3 */
	border-radius: 9999px;            /* rounded-full */
	background-color: var(--tf-stat-icon-bg, rgba(0, 245, 160, 0.1));
	color: var(--tf-stat-icon-color, #00f5a0);
	flex-shrink: 0;
}

.textcrm-features__stat-icon svg {
	display: block;
	width: var(--tf-stat-glyph, 24px);
	height: var(--tf-stat-glyph, 24px);
	color: currentColor;
}

.textcrm-features__stat-icon i {
	font-size: var(--tf-stat-glyph, 24px);
	line-height: 1;
	color: currentColor;
}

.textcrm-features__stat-content {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.textcrm-features__stat-value {
	font-size: 24px;                  /* text-2xl */
	line-height: 1.1;
	font-weight: 700;
	color: #ffffff;
}

.textcrm-features__stat-label {
	font-size: 10px;                  /* text-[10px] */
	line-height: 1.3;
	color: #6b7280;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 0.1em;
}

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */

/* md+ — 6-col features, 4-col stats, larger heading */
@media (min-width: 768px) {
	.textcrm-features__title {
		font-size: 48px;
	}
	.textcrm-features__grid {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}
	.textcrm-features__stats {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

/* Phones — tighten padding, allow stacking */
@media (max-width: 480px) {
	.textcrm-features {
		padding-top: 64px;
		padding-bottom: 64px;
	}
	.textcrm-features__container {
		padding-left: 16px;
		padding-right: 16px;
	}
	.textcrm-features__title {
		font-size: 30px;
	}
	.textcrm-features__header {
		margin-bottom: 48px;
	}
	.textcrm-features__grid {
		gap: 24px;
		margin-bottom: 56px;
	}
	.textcrm-features__stats {
		gap: 24px;
	}
}
