.b-ext {
/* -----------------------------------------------------
 * Pattern: Dental Company en cifras
 * ----------------------------------------------------- */

.dc-stats{
	position: relative;
	overflow: hidden;
	padding-block: var(--wp--preset--spacing--60, 4rem);
	background: var(--wp--preset--gradient--overlay-gradient);
	
	.dc-stats__inner{
		position: relative;
		z-index: 1;
		padding-inline: var(--wp--preset--spacing--30, 1.5rem);
	}
	
	.dc-stats__title{
		text-align: center;
		margin: 0 0 var(--wp--preset--spacing--50, 3rem);
	}
	
	.dc-stats__grid{
		gap: var(--wp--preset--spacing--40, 2rem);
		align-items: stretch;
		margin: 0;

		> .dc-stats__column{
			flex-basis: initial !important;
		}
	}
	
	
	/* Card */
	.dc-stat{
		position: relative;
		min-height: 170px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		text-align: center;
	}
	
	.dc-stat::before{
		content: "";
		position: absolute;
		width: 10em;
		height: 6em;
		background: var(--wp--preset--gradient--overlay-gradient);
		border-radius: calc(var(--wp--custom--radius--xl, 28px) - 10px);
		pointer-events: none;
		transform: translate(calc(-50% + 1em), -1em);
	}
	
	.dc-stat::after{
		content: "";
		position: absolute;
		width: 10em;
		height: 6em;
		border-radius: calc(var(--wp--custom--radius--xl, 28px) - 10px);
		border: 2px dashed rgba(0,156,166,.12);
		pointer-events: none;
		transform: translate(0, 1em);
	}
	
	/* Headline: numero + label */
	.dc-stat__headline{
		margin: 0;
		display: inline-flex;
		align-items: baseline;
		justify-content: space-between;
		gap: .75rem;
		flex-wrap: wrap;
	}
	
	.dc-stat__value{
		font-size: clamp(2.6rem, 4.4vw, 4.25rem);
		line-height: 1;
		font-weight: 800;
		letter-spacing: -0.02em;
		color: var(--wp--preset--color--accent, #CE0F69);
	}
	
	.dc-stat__label{
		font-size: var(--wp--preset--font-size--lg, 1.25rem);
		line-height: 1.1;
		font-weight: 700;
		color: var(--wp--preset--color--accent, #CE0F69);
	}
	
	.dc-stat__sub{
		margin: var(--wp--preset--spacing--20, .75rem) 0 0;
		font-size: var(--wp--preset--font-size--sm, 1rem);
		line-height: 1.3;
		font-weight: 600;
		color: var(--wp--preset--color--contrast, #333333);
		opacity: .9;
	}
	
	/* Responsive tweak: reduce padding on small screens */
	@media (max-width: 600px){
		.dc-stats{
			padding-block: var(--wp--preset--spacing--50, 3rem);
		}
		.dc-stat{
			padding: var(--wp--preset--spacing--30, 1.5rem);
		}
	}
}

}