.bf-trz-form {
	max-width: 520px;
	margin: 0 auto;
	font-family: inherit;
}

.bf-trz-form p {
	margin-bottom: 14px;
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.bf-trz-form label {
	font-weight: 600;
	color: #1f5c4a;
}

.bf-trz-form input,
.bf-trz-form select,
.bf-trz-form textarea {
	padding: 10px 12px;
	border: 1px solid #cdd7d3;
	border-radius: 6px;
	font-size: 15px;
}

.bf-trz-boton {
	background: #1f5c4a;
	color: #fff;
	border: none;
	padding: 12px 24px;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
}

.bf-trz-boton:hover {
	background: #164638;
}

.bf-trz-mensaje {
	padding: 14px 18px;
	border-radius: 8px;
	margin-bottom: 16px;
}

.bf-trz-exito {
	background: #e6f4ea;
	color: #1e4620;
	border: 1px solid #b7dfc0;
}

.bf-trz-error {
	background: #fdecea;
	color: #611a15;
	border: 1px solid #f3c2bd;
}

.bf-trz-resultado {
	max-width: 520px;
	margin: 24px auto 0;
}

.bf-trz-timeline-publico {
	list-style: none;
	margin: 16px 0 0;
	padding: 0;
	counter-reset: paso;
}

.bf-trz-timeline-publico li {
	position: relative;
	padding: 10px 0 10px 34px;
	border-left: 3px solid #cdd7d3;
	margin-left: 10px;
	color: #7a8a84;
}

.bf-trz-timeline-publico li::before {
	counter-increment: paso;
	content: counter(paso);
	position: absolute;
	left: -14px;
	top: 6px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: #cdd7d3;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	line-height: 22px;
}

.bf-trz-timeline-publico li.bf-paso-completo {
	border-left-color: #1f5c4a;
	color: #1f5c4a;
}

.bf-trz-timeline-publico li.bf-paso-completo::before {
	background: #1f5c4a;
}

.bf-trz-timeline-publico li.bf-paso-actual {
	font-weight: 700;
}

.bf-trz-timeline-publico li small {
	display: block;
	font-weight: 400;
	color: #7a8a84;
	font-size: 12px;
}
