/**
 * NT Projektai – homepage "NT statistika – Titulinis" widget.
 *
 * Every value below is a default that the widget's Style controls override
 * through the custom properties (or direct selectors for typography).
 */

.nt-home-stats {
	--nths-width: 1300px;
	--nths-pad-y: 96px;
	--nths-pad-x: 20px;
	--nths-cols: 4;
	--nths-gap: 24px;
	--nths-align: left;
	--nths-items: flex-start;
	--nths-card-bg: rgba(255, 255, 255, 0.78);
	--nths-card-border-color: #e9e3d8;
	--nths-card-border-width: 1px;
	--nths-card-radius: 20px;
	--nths-icon-color: #2f5e46;
	--nths-icon-bg: #e7ede4;
	--nths-icon-size: 28px;
	--nths-icon-circle: 64px;
	--nths-label-gap: 28px;
	--nths-number-gap: 24px;
	--nths-accent: #a3b18a;
	--nths-accent-width: 40px;
	--nths-accent-height: 2px;
	--nths-accent-gap: 24px;
	--nths-font-heading: var(--e-global-typography-secondary-font-family, "Libre Franklin"), sans-serif;
	--nths-font-body: var(--e-global-typography-text-font-family, "Roboto"), sans-serif;
	box-sizing: border-box;
	display: block;
	width: 100%;
	padding: var(--nths-pad-y) var(--nths-pad-x);
	background-color: #f7f4ee;
}

.nt-home-stats *,
.nt-home-stats *::before,
.nt-home-stats *::after {
	box-sizing: border-box;
}

.nt-home-stats__inner {
	width: 100%;
	max-width: var(--nths-width);
	margin: 0 auto;
}

.nt-home-stats .nt-home-stats__grid {
	display: grid;
	grid-template-columns: repeat(var(--nths-cols), minmax(0, 1fr));
	gap: var(--nths-gap);
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Grid rows stretch, so every card in a row has the same height. */
.nt-home-stats .nt-home-stats__card {
	display: flex;
	flex-direction: column;
	align-items: var(--nths-items);
	min-width: 0;
	margin: 0;
	padding: 40px 32px 36px;
	border: var(--nths-card-border-width) solid var(--nths-card-border-color);
	border-radius: var(--nths-card-radius);
	background-color: var(--nths-card-bg);
	box-shadow: 0 1px 2px rgba(38, 41, 42, 0.04), 0 18px 40px -24px rgba(38, 41, 42, 0.16);
	text-align: var(--nths-align);
}

/* ------------------------------------------------------------------ */
/* Icon                                                                */
/* ------------------------------------------------------------------ */

.nt-home-stats__icon {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: var(--nths-icon-circle);
	height: var(--nths-icon-circle);
	border-radius: 50%;
	background-color: var(--nths-icon-bg);
	color: var(--nths-icon-color);
	line-height: 1;
}

.nt-home-stats__icon .ntp-icon {
	display: block;
	width: var(--nths-icon-size);
	height: var(--nths-icon-size);
}

.nt-home-stats__icon--library i {
	font-size: var(--nths-icon-size);
	color: inherit;
}

.nt-home-stats__icon--library svg {
	display: block;
	width: var(--nths-icon-size);
	height: var(--nths-icon-size);
	fill: currentColor;
}

/* ------------------------------------------------------------------ */
/* Text                                                                */
/* ------------------------------------------------------------------ */

/* The label grows, which keeps every number and accent line on one baseline. */
.nt-home-stats .nt-home-stats__label {
	flex: 1 0 auto;
	width: 100%;
	margin: var(--nths-label-gap) 0 0;
	padding: 0;
	color: #26292a;
	font-family: var(--nths-font-body);
	font-size: 17px;
	font-weight: 500;
	line-height: 1.45;
	letter-spacing: 0;
	text-transform: none;
	text-wrap: balance;
	overflow-wrap: break-word;
}

.nt-home-stats .nt-home-stats__value {
	margin: var(--nths-number-gap) 0 0;
	padding: 0;
	color: #1f2b25;
	font-family: var(--nths-font-heading);
	font-size: 56px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: -0.02em;
	white-space: nowrap;
	font-variant-numeric: lining-nums tabular-nums;
}

.nt-home-stats__suffix {
	margin-left: 0.04em;
}

.nt-home-stats__accent {
	display: block;
	flex: 0 0 auto;
	width: var(--nths-accent-width);
	max-width: 100%;
	height: var(--nths-accent-height);
	margin-top: var(--nths-accent-gap);
	border-radius: var(--nths-accent-height);
	background-color: var(--nths-accent);
}

/* ------------------------------------------------------------------ */
/* Responsive (Elementor breakpoints)                                  */
/* ------------------------------------------------------------------ */

@media (max-width: 1024px) {
	.nt-home-stats {
		--nths-pad-y: 72px;
		--nths-pad-x: 32px;
		--nths-cols: 2;
		--nths-gap: 20px;
	}

	.nt-home-stats .nt-home-stats__card {
		padding: 36px 28px 32px;
	}

	.nt-home-stats .nt-home-stats__value {
		font-size: 52px;
	}
}

@media (max-width: 767px) {
	.nt-home-stats {
		--nths-pad-y: 56px;
		--nths-pad-x: 20px;
		--nths-cols: 1;
		--nths-gap: 16px;
		--nths-icon-circle: 56px;
		--nths-icon-size: 26px;
		--nths-label-gap: 22px;
		--nths-number-gap: 18px;
	}

	.nt-home-stats .nt-home-stats__card {
		padding: 28px 24px;
	}

	.nt-home-stats .nt-home-stats__label {
		font-size: 16px;
	}

	.nt-home-stats .nt-home-stats__value {
		font-size: 44px;
	}
}
