main.legal{
	padding:60px 0 80px;
	min-height:60vh;
	color:var(--text-green);
}

main.legal section.legal-section{
	padding:24px 28px;
	min-height:auto;
	display:block;
	align-items:initial;
	justify-content:initial;
	text-align:left;
	color:var(--text-green);
}

.legal-article{
	max-width:780px;
	margin:0 auto;
	color:var(--text-green);
}

/* Neutraliza a regra global header{position:fixed;background:--brand-700;
   z-index:1000} que e do nav do site mas vazava pro <header class=
   "legal-header"> do titulo da pagina (dark-on-dark, ilegivel). */
main.legal header.legal-header{
	position:static;
	width:auto;
	z-index:auto;
	transform:none;
	box-shadow:none;
	font-size:inherit;
	margin:0 0 40px;
	padding:40px 28px 36px;
	text-align:center;
	background:linear-gradient(180deg, rgba(47,125,76,.10) 0%, rgba(47,125,76,.03) 100%);
	border:1px solid var(--line-light);
	border-radius:16px;
}

main.legal .legal-header::after{
	content:"";
	display:block;
	width:64px;
	height:4px;
	margin:18px auto 0;
	border-radius:999px;
	background:var(--cta);
}

.legal-title{
	margin:0 0 14px;
	font-size:calc(34px * var(--font-scale));
	font-weight:800;
	letter-spacing:-.5px;
	line-height:1.15;
	color:var(--brand-700);
}

.legal-intro{
	margin:0 auto;
	max-width:62ch;
	font-size:calc(16.5px * var(--font-scale));
	line-height:1.6;
	color:#3a4d44;
}

.legal-section{
	margin:30px 0;
	background:#fff;
	border:1px solid var(--line-light);
	border-radius:14px;
	box-shadow:0 6px 16px rgba(15,59,46,.05);
}

.legal-section h2{
	margin:0 0 14px;
	font-size:calc(20px * var(--font-scale));
	font-weight:800;
	letter-spacing:-.2px;
	color:var(--brand-700);
}

.legal-section p,
.legal-section li{
	font-size:calc(15.5px * var(--font-scale));
	line-height:1.65;
}

.legal-section p{
	margin:0 0 10px;
}

.legal-section p:last-child{
	margin-bottom:0;
}

.legal-section ul{
	margin:0 0 10px;
	padding-left:22px;
}

.legal-section ul li{
	margin-bottom:6px;
}

.legal-section ul li:last-child{
	margin-bottom:0;
}

.legal-section a{
	color:var(--brand);
	text-decoration:underline;
	text-underline-offset:2px;
	font-weight:600;
}

.legal-section a:hover{
	color:var(--brand-700);
}

.legal-section em{
	background:rgba(47,125,76,.08);
	padding:1px 6px;
	border-radius:4px;
	font-style:normal;
	font-family:monospace;
	font-size:.92em;
}

.legal-updated{
	margin:36px 0 0;
	padding:18px 24px;
	background:var(--bg-soft);
	border-radius:12px;
	text-align:center;
	color:#3a4d44;
}

.legal-updated h2{
	margin:0 0 6px;
	font-size:calc(13px * var(--font-scale));
	font-weight:700;
	text-transform:uppercase;
	letter-spacing:1.2px;
	color:#5a6b62;
}

.legal-updated p{
	margin:0;
	font-size:calc(14.5px * var(--font-scale));
	font-weight:600;
}

.legal-back{
	margin-top:36px;
	display:flex;
	justify-content:center;
}

.legal-back-link{
	min-width:200px;
	justify-content:center;
}

@media (max-width:640px){
	main.legal{
		padding:36px 0 56px;
	}
	.legal-title{
		font-size:calc(26px * var(--font-scale));
	}
	.legal-intro{
		font-size:calc(15px * var(--font-scale));
	}
	.legal-section{
		padding:18px 18px;
		border-radius:12px;
	}
	.legal-section h2{
		font-size:calc(17px * var(--font-scale));
	}
	.legal-section p,
	.legal-section li{
		font-size:calc(15px * var(--font-scale));
	}
}
