/* Pagina: index */

body.home_page {
	--text: #10253e;
	--muted: rgba(16,37,62,.74);
	--muted2: rgba(16,37,62,.56);
	--border: rgba(16,37,62,.16);
	--shadow: 0 12px 32px rgba(9,30,66,.10);
	background: #ffffff;
	color: var(--text);
	min-height: 100vh;
}

body.home_page main {
	flex: 1;
	margin-top: 82px;
	background: transparent;
}

.barra_top {
	background: var(--header-bg) !important;
	height: 82px;
	padding: 0 34px !important;
	justify-content: space-between !important;
	align-items: center;
	border-bottom: 1px solid rgba(255,255,255,.12);
}

.logo_reuni {
	width: 165px;
}

body.home_page .nav_esquerda a {
	display: inline-flex;
	align-items: center;
	padding: 7px 12px;
	border-radius: 12px;
	background: linear-gradient(180deg, rgba(255,255,255,.95), rgba(245,249,255,.90));
	border: 1px solid rgba(255,255,255,.52);
	box-shadow: 0 6px 18px rgba(0,0,0,.26);
}

.nav_links {
	gap: 34px;
}

.nav_links a {
	color: rgba(255,255,255,.86);
	font-weight: 700;
	letter-spacing: .2px;
	font-size: 15.5px;
	padding: 8px 12px;
}

.nav_links a:hover {
	color: #ffffff;
}

.nav_btn {
	padding: 9px 22px;
	border-radius: 12px;
	font-size: 15.5px;
}

.footer_geral {
	background: var(--header-bg) !important;
}

.footer_svg path {
	fill: var(--header-bg) !important;
}

.watermark {
	left: 0;
	top: 0;
	background-position: 132% 54%;
	background-size: clamp(620px, 84vmin, 980px);
	opacity: .37;
	mix-blend-mode: normal;
	filter: saturate(1.35) contrast(1.10);
}

.hero_section,
.section_bloco,
.section_bloco_alt {
	background: transparent;
}

.hero_section {
	min-height: calc(100vh - 82px);
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 42px 0 36px;
}

.hero_content {
	max-width: 780px;
	padding: 0 6px;
	margin: 0 auto;
}

.hero_badge {
	display: inline-flex;
	align-items: center;
	padding: 7px 11px;
	border-radius: 999px;
	background: rgba(31,47,74,.08);
	border: 1px solid rgba(31,47,74,.14);
	font-size: 13px;
	font-weight: 700;
	color: rgba(16,37,62,.82);
}

.hero_title {
	margin: 12px 0 14px;
	font-size: clamp(38px, 5.1vw, 58px);
	line-height: 1.05;
	letter-spacing: -.8px;
	color: #10253e;
}

.hero_sub {
	margin: 0;
	max-width: 720px;
	font-size: 22px;
	line-height: 1.6;
	color: var(--muted);
}

.hero_actions {
	margin-top: 28px;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
}

.btn_hero_primary,
.btn_hero_outline {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 18px;
	border-radius: 12px;
	font-size: 15px;
	font-weight: 800;
	text-decoration: none;
	transition: transform .15s, background .2s, color .2s, border-color .2s;
}

.btn_hero_primary {
	background: var(--header-bg);
	border: 1px solid var(--header-bg);
	color: #ffffff;
}

.btn_hero_primary:hover {
	background: #263b5d;
	transform: translateY(-1px);
}

.btn_hero_outline {
	background: #ffffff;
	border: 1px solid rgba(36,92,168,.35);
	color: #245ca8;
}

.btn_hero_outline:hover {
	background: rgba(36,92,168,.08);
	transform: translateY(-1px);
}

.section_bloco {
	padding: 84px 0 18px;
}

.section_bloco_alt {
	padding-top: 62px;
}

#sobre.section_bloco_alt {
	padding-top: 52px;
	padding-bottom: 26px;
}

#sobre .container {
	background: linear-gradient(180deg, rgba(244,248,255,.95), rgba(236,243,255,.92));
	border: 1px solid rgba(16,37,62,.12);
	border-radius: 24px;
	padding: 34px 36px;
	box-shadow: 0 12px 28px rgba(13,47,89,.10);
}

#sobre .section_titulo {
	margin-bottom: 18px;
}

.section_titulo {
	margin: 0;
	font-size: clamp(34px, 4.2vw, 46px);
	line-height: 1.08;
	letter-spacing: -.5px;
	color: #10253e;
}

.section_sub {
	margin: 10px 0 0;
	font-size: 20px;
	line-height: 1.45;
	color: var(--muted);
}

#time .section_sub {
	padding-left: 16px;
	border-left: 4px solid #245ca8;
}

.passos_grid {
	margin-top: 40px;
	display: grid;
	grid-template-columns: repeat(3, minmax(210px, 1fr));
	gap: 26px;
	justify-items: center;
}

.passo_card {
	position: relative;
	width: 100%;
	max-width: 250px;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	background: var(--header-bg);
	border: 1px solid rgba(255,255,255,.18);
	box-shadow: 0 10px 26px rgba(13,47,89,.22);
	padding: 26px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.passo_num {
	display: block;
	margin-bottom: 10px;
	font-size: 52px;
	font-weight: 900;
	letter-spacing: .6px;
	color: rgba(106,164,255,.36);
}

.passo_card h3 {
	margin: 0;
	font-size: 22px;
	line-height: 1.1;
	letter-spacing: -.4px;
	color: rgba(255,255,255,.94);
}

.passo_card p {
	margin: 10px 0 0;
	font-size: 16px;
	line-height: 1.5;
	max-width: 180px;
	color: rgba(255,255,255,.92);
}

.sobre {
	margin-top: 18px;
	font-size: 22px;
	line-height: 1.55;
	color: var(--muted);
	text-indent: 0;
	max-width: 980px;
}

#sobre .sobre + .sobre {
	margin-top: 14px;
}


.time_intro {
	margin-top: 12px;
	max-width: 820px;
	text-indent: 0;
	padding-left: 16px;
	border-left: 4px solid #245ca8;
}

.time_grid {
	margin-top: 18px;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.time_card {
	background: linear-gradient(180deg, rgba(244,248,255,.98), rgba(236,243,255,.92));
	border: 1px solid rgba(16,37,62,.12);
	border-radius: 22px;
	padding: 22px 20px 20px;
	box-shadow: 0 10px 24px rgba(13,47,89,.08);
	transition: all .3s cubic-bezier(0.16, 1, 0.3, 1);
}

.time_card:hover {
	transform: translateY(-8px);
	box-shadow: 0 20px 40px rgba(13,47,89,.15);
	border-color: rgba(16,37,62,.22);
}

.time_tag {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px 10px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.time_tag::before {
	display: inline-block;
	font-weight: 900;
	font-size: 11px;
}

.time_card:nth-child(1) .time_tag {
	background: rgba(36,92,168,.14);
	border: 1px solid rgba(36,92,168,.32);
	color: #245ca8;
}

.time_card:nth-child(1) .time_tag::before {
	content: "◆";
	color: #245ca8;
}

.time_card:nth-child(2) .time_tag {
	background: rgba(212,165,116,.14);
	border: 1px solid rgba(212,165,116,.32);
	color: #8b6f47;
}

.time_card:nth-child(2) .time_tag::before {
	content: "⚙";
	color: #8b6f47;
}

.time_card:nth-child(3) .time_tag {
	background: rgba(31,47,74,.14);
	border: 1px solid rgba(31,47,74,.32);
	color: var(--header-bg);
}

.time_card:nth-child(3) .time_tag::before {
	content: "⬢";
	color: var(--header-bg);
}

.fundadora_nome {
	margin: 14px 0 0;
	padding-top: 14px;
	border-top: 1px solid rgba(16,37,62,.12);
	font-size: 28px;
	line-height: 1.1;
	color: #10253e;
}

.fundadora_titulo {
	margin: 14px 0;
	font-size: 14px;
	line-height: 1.35;
	color: #10253e;
	text-transform: uppercase;
	letter-spacing: .35px;
}

.fundadora_texto {
	margin: 0 0 14px;
	font-size: 15px;
	line-height: 1.5;
	color: #10253e;
}

.fundadora_destaque {
	margin: 18px 0 0;
	padding: 16px 18px;
	border-left: 4px solid #245ca8;
	background: rgba(255,255,255,.72);
	border-radius: 14px;
	font-size: 18px;
	line-height: 1.45;
	font-weight: 800;
	color: var(--header-bg);
}

.acesso_grid {
	margin-top: 24px;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.acesso_card {
	background: var(--header-bg);
	border: 1px solid rgba(255,255,255,.18);
	box-shadow: 0 10px 26px rgba(13,47,89,.22);
	padding: 24px;
	border-radius: 16px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.acesso_icone {
	font-size: 28px;
	line-height: 1;
}

.acesso_card h3 {
	margin: 0;
	font-size: 25px;
	color: rgba(255,255,255,.94);
}

.acesso_card p {
	margin: 0;
	font-size: 17px;
	line-height: 1.5;
	color: rgba(255,255,255,.92);
}

.btn_acesso {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 4px;
	padding: 11px 14px;
	border-radius: 10px;
	text-decoration: none;
	font-size: 15px;
	font-weight: 800;
	transition: transform .15s, filter .2s;
}

.btn_acesso:hover {
	transform: translateY(-1px);
	filter: brightness(1.03);
}

.btn_acesso_empresa {
	background: #6aa4ff;
	color: #0b1b2b;
}

.btn_acesso_autonomo {
	background: #56d39c;
	color: #0b1b2b;
}

.link_cad_acesso {
	align-self: flex-start;
	font-size: 14px;
	font-weight: 600;
	color: rgba(255,255,255,.92);
	text-decoration: none;
	border-bottom: 1px solid rgba(255,255,255,.40);
}

.link_cad_acesso:hover {
	color: #ffffff;
	border-bottom-color: rgba(255,255,255,.70);
}

@media (max-width: 1180px) {
	.hero_title { font-size: 48px; }
	.hero_sub { font-size: 18px; }
	.section_titulo { font-size: 38px; }
	.section_sub { font-size: 17px; }
	.passo_card h3 { font-size: 20px; }
	.passo_card p { font-size: 14px; }
	.sobre { font-size: 20px; }
	.time_grid { gap: 16px; }
	.fundadora_nome { font-size: 25px; }
	.fundadora_titulo { font-size: 13px; }
	.fundadora_texto { font-size: 14px; }
	.fundadora_destaque { font-size: 16px; }
	.acesso_card h3 { font-size: 24px; }
	.acesso_card p { font-size: 19px; }
}

@media (max-width: 1024px) {
	.hero_title { font-size: 44px; }
	.hero_sub { font-size: 17px; }
	.section_titulo { font-size: 36px; }
	.passos_grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.passo_card { max-width: 220px; }
	.acesso_grid { grid-template-columns: 1fr; }
}

@media (max-width: 800px) {
	.hero_section { min-height: auto; padding-top: 30px; }
	.hero_title { font-size: 34px; }
	.hero_sub { font-size: 16px; }
	.hero_actions { flex-direction: column; align-items: stretch; }
	.btn_hero_primary,
	.btn_hero_outline { width: 100%; }

	.section_bloco,
	.section_bloco_alt { padding-top: 48px; }
	.section_titulo { font-size: 26px; }
	.section_sub { font-size: 15px; }

	#sobre .container {
		border-radius: 16px;
		padding: 22px 18px;
	}

	#sobre .sobre {
		text-indent: 0;
	}

	.passos_grid { grid-template-columns: 1fr; }
	.passo_card { max-width: 280px; padding: 24px; }
	.passo_num { font-size: 24px; }
	.passo_card h3 { font-size: 20px; }
	.passo_card p { font-size: 15px; max-width: 190px; }

	.sobre { font-size: 16px; text-indent: 0; }
	.time_grid { grid-template-columns: 1fr; }
	.time_card { padding: 18px 16px; }
	.fundadora_nome { font-size: 28px; }
	.fundadora_titulo { font-size: 20px; }
	.fundadora_texto { font-size: 16px; }
	.fundadora_destaque { font-size: 18px; }

	.acesso_grid { grid-template-columns: 1fr; }
	.acesso_card h3 { font-size: 22px; }
	.acesso_card p { font-size: 15px; }

	.watermark {
		background-position: -26vw 56%;
		background-size: clamp(240px, 52vmin, 340px);
		opacity: .22;
		filter: saturate(1.18) contrast(1.04);
	}

	.nav_links { display: none; }
	.barra_top { padding: 0 16px !important; }
}
