/* hyp/numeros — protótipo linhas 281–298, spec 05. Breakpoints: mobile < 768 · tablet 768–1079 · desktop ≥ 1080. */

.hyp-numeros {
	padding-top: 104px;
}

.hyp-numeros .hyp-numeros__head {
	max-width: 800px;
}

.hyp-numeros .hyp-sh__lead {
	margin-top: 20px;
}

.hyp-numeros .hyp-numeros__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	background: #ffffff;
	margin: 56px 0 0;
	padding: 0;
	list-style: none;
	/* Grelha fechada nos 4 lados (pedido do cliente, 29 set 2026; no protótipo só tinha linha em cima e em baixo). */
	border: 1px solid var(--hyp-border-card);
	overflow: hidden;
}

/*
 * Separadores desenhados em cada número (linha à direita e em baixo), e não com o fundo da grelha a espreitar
 * pelo gap: com um nº de números que não enche a última linha (4, 5, 7…), as células vazias ficam brancas em vez
 * de um bloco cinzento. A margem de −1px leva as linhas da última coluna/linha para cima da borda da grelha,
 * onde o overflow as corta (sem linha dupla).
 */
.hyp-numeros .hyp-numeros__item {
	padding: 44px 34px 42px;
	margin: 0 -1px -1px 0;
	list-style: none;
	box-shadow: inset -1px 0 0 var(--hyp-border-card), inset 0 -1px 0 var(--hyp-border-card);
}

.hyp-numeros .hyp-numeros__figure {
	display: flex;
	align-items: baseline;
	gap: 8px;
	flex-wrap: wrap;
}

.hyp-numeros .hyp-numeros__value {
	font-size: clamp(38px, 5vw, 58px);
	font-weight: 600;
	color: var(--hyp-navy);
	line-height: 1;
	letter-spacing: -0.03em;
}

.hyp-numeros .hyp-numeros__unit {
	font-size: 20px;
	font-weight: 500;
	color: var(--hyp-orange);
}

.hyp-numeros .hyp-numeros__label {
	font-size: 15px;
	color: var(--hyp-navy);
	font-weight: 500;
	margin-top: 16px;
}

.hyp-numeros .hyp-numeros__note {
	font-size: 13.5px;
	color: var(--hyp-text-note);
	font-weight: 300;
	margin-top: 6px;
	line-height: 1.6;
}

@media (max-width: 1079.98px) {
	.hyp-numeros .hyp-numeros__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767.98px) {
	.hyp-numeros .hyp-numeros__grid {
		grid-template-columns: minmax(0, 1fr);
	}
}
