/*
 * PRAXIS FCLAr: componentes do site.
 * Cores, fontes e espaçamentos vêm do theme.json (variáveis --wp--preset--*).
 * Alvos de toque com pelo menos 24 px (WCAG 2.5.8); foco visível no theme.json.
 */

:root {
	--praxis-petroleo: var(--wp--preset--color--petroleo);
	--praxis-nevoa: var(--wp--preset--color--nevoa);
	--praxis-suave: var(--wp--preset--color--texto-suave);
	--praxis-link: var(--wp--preset--color--cor-link);
	--praxis-rotulo: var(--wp--preset--color--rotulo);
	--praxis-coral: var(--wp--preset--color--coral);
	--praxis-coral-claro: var(--wp--preset--color--coral-claro);
	--praxis-fio: var(--wp--preset--color--divisoria);
	--praxis-pequeno: var(--wp--preset--font-size--pequeno);
}

.screen-reader-text {
	border: 0;
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

/* Cabeçalho: atalhos (eMAG) à esquerda, utilidades à direita */
.praxis-utilidades {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	font-size: var(--praxis-pequeno);
	gap: 8px 24px;
	justify-content: space-between;
}
.praxis-utilidades__ferramentas {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 24px;
	justify-content: flex-end;
	margin-left: auto;
}
.praxis-atalhos ul {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 16px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.praxis-atalhos a {
	align-items: center;
	color: var(--praxis-suave);
	display: inline-flex;
	gap: 6px;
	min-height: 28px;
	text-decoration: none;
}
.praxis-atalhos a:hover {
	color: var(--praxis-petroleo);
}
.praxis-atalhos__tecla {
	border: 1px solid var(--praxis-fio);
	border-radius: 3px;
	color: var(--praxis-petroleo);
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	padding: 3px 6px;
}
@media (max-width: 1023px) {
	.praxis-atalhos:not(:focus-within) {
		clip-path: inset(50%);
		height: 1px;
		overflow: hidden;
		position: absolute;
		white-space: nowrap;
		width: 1px;
	}
}
.praxis-busca {
	display: flex;
}
.praxis-busca input[type="search"] {
	border: 1px solid var(--praxis-suave);
	border-radius: 0;
	font: inherit;
	min-height: 36px;
	padding: 4px 10px;
	width: 9.5rem;
}
.praxis-busca button,
.praxis-menu__botao {
	background: var(--praxis-petroleo);
	border: 0;
	border-radius: 0;
	color: var(--praxis-nevoa);
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	min-height: 36px;
	padding: 4px 14px;
}
.praxis-utilidades a,
.praxis-idiomas a {
	display: inline-block;
	padding: 4px 0;
}
.praxis-idiomas ul {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 16px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.praxis-idiomas a[aria-current] {
	color: var(--praxis-petroleo);
	font-weight: 700;
	text-decoration: none;
}
.praxis-idiomas a {
	align-items: center;
	display: inline-flex;
	gap: 6px;
}
.praxis-idiomas__bandeira {
	flex: none;
	height: 14px;
	width: 21px;
}

/* Cabeçalho: menu principal */
.praxis-menu {
	position: relative;
}
.praxis-menu__botao {
	display: none;
}
.praxis-menu__lista {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 32px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.praxis-menu__lista a {
	border-bottom: 3px solid transparent;
	color: var(--praxis-petroleo);
	display: inline-block;
	font-weight: 700;
	padding: 8px 0 5px;
	text-decoration: none;
}
.praxis-menu__lista a:hover {
	color: var(--praxis-petroleo);
}
.praxis-menu__lista a[aria-current] {
	border-bottom-color: var(--praxis-coral);
}
/* Sete itens no primeiro nível: espaço menor entre 1024 e 1279 px para o menu
 * caber ao lado do logo a partir de cerca de 1090 px. */
@media (min-width: 1024px) and (max-width: 1279px) {
	.praxis-menu__lista {
		column-gap: 20px;
	}
}
@media (max-width: 1023px) {
	.praxis-menu--js .praxis-menu__botao {
		display: inline-flex;
		align-items: center;
	}
	.praxis-menu--js .praxis-menu__lista {
		display: none;
	}
	.praxis-menu--aberto .praxis-menu__lista {
		background: var(--praxis-nevoa);
		border: 1px solid var(--praxis-fio);
		display: flex;
		flex-direction: column;
		box-sizing: border-box;
		max-height: calc(100vh - 140px);
		overflow-y: auto;
		padding: 16px 24px;
		width: min(calc(100vw - 32px), 360px);
		position: absolute;
		right: 0;
		top: calc(100% + 8px);
		z-index: 20;
	}
}

/* Trilha */
.wp-block-breadcrumbs {
	color: var(--praxis-suave);
	font-size: var(--praxis-pequeno);
}

/* Rótulo, abertura e fios */
.praxis-rotulo {
	margin: 0 0 8px;
}
.praxis-frase-guia {
	color: var(--praxis-suave);
}

/* Seções e listas */
.praxis-secao {
	margin-top: var(--wp--preset--spacing--64);
}
.praxis-secao__titulo {
	margin: 0 0 var(--wp--preset--spacing--24);
}
.praxis-secao__mais {
	margin: var(--wp--preset--spacing--24) 0 0;
}
.praxis-lista__contagem,
.praxis-atualizado {
	color: var(--praxis-suave);
	font-size: var(--praxis-pequeno);
}
.praxis-lista__contagem {
	margin: 0 0 var(--wp--preset--spacing--24);
}
.praxis-atualizado {
	margin-top: var(--wp--preset--spacing--64);
}
.praxis-vazio {
	color: var(--praxis-suave);
}
.praxis-alem-das-vagas {
	margin-block: var(--wp--preset--spacing--32) 0;
	max-width: 70ch;
}

/* Cartões */
.praxis-cartoes {
	display: grid;
	gap: var(--wp--preset--spacing--32);
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}
.praxis-cartao,
.praxis-publicacao {
	border-top: 1px solid var(--praxis-fio);
	padding-top: var(--wp--preset--spacing--16);
}
.praxis-cartao p,
.praxis-publicacao p {
	margin: 0 0 8px;
}
.praxis-cartao__titulo {
	font-size: var(--wp--preset--font-size--titulo-3);
	margin: 0 0 8px;
}
.praxis-cartao__titulo a {
	color: var(--praxis-petroleo);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.15em;
}
.praxis-cartao__titulo a:hover {
	color: var(--praxis-link);
}
.praxis-cartao__meta,
.praxis-cartao__legenda,
.praxis-cartao__data {
	color: var(--praxis-suave);
	font-size: var(--praxis-pequeno);
}
.praxis-cartao__data {
	color: var(--praxis-petroleo);
	font-weight: 700;
}
.praxis-cartoes--publicacoes,
.praxis-novidades .praxis-cartoes {
	grid-template-columns: 1fr;
}

/* Pessoas: foto ou avatar com iniciais */
.praxis-cartoes--pessoas {
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr));
}
.praxis-cartao-pessoa {
	align-items: flex-start;
	display: flex;
	gap: var(--wp--preset--spacing--16);
}
.praxis-cartao-pessoa .praxis-cartao__titulo {
	font-size: var(--wp--preset--font-size--corpo);
}
.praxis-retrato {
	align-items: center;
	background: #e1e8e9;
	border-radius: 50%;
	color: var(--praxis-petroleo);
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 22px;
	font-weight: 700;
	height: 72px;
	justify-content: center;
	letter-spacing: 0.02em;
	overflow: hidden;
	width: 72px;
}
.praxis-retrato img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}
.praxis-cartoes--compacto {
	gap: var(--wp--preset--spacing--24);
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr));
}
.praxis-cartoes--compacto .praxis-cartao {
	border-top: 0;
	padding-top: 0;
}
.praxis-cartoes--compacto .praxis-retrato {
	font-size: 18px;
	height: 56px;
	width: 56px;
}

/* Fichas */
.praxis-ficha__destaque {
	color: var(--praxis-petroleo);
	font-size: var(--wp--preset--font-size--titulo-3);
	line-height: 1.35;
}
.praxis-ficha-pessoa {
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--32);
}
.praxis-ficha-pessoa > .praxis-retrato {
	font-size: 56px;
	height: 200px;
	width: 200px;
}
.praxis-ficha-pessoa__dados {
	flex: 1 1 300px;
}
.praxis-ficha-pessoa__dados .praxis-ficha__destaque {
	margin-top: 0;
}
.praxis-ficha__links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 24px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.praxis-dados {
	border-top: 1px solid var(--praxis-fio);
	display: grid;
	gap: 8px 24px;
	grid-template-columns: minmax(9rem, max-content) 1fr;
	margin: var(--wp--preset--spacing--24) 0;
	padding-top: var(--wp--preset--spacing--16);
}
.praxis-dados > div {
	display: contents;
}
.praxis-dados dt {
	font-weight: 700;
}
.praxis-dados dd {
	margin: 0;
}
@media (max-width: 600px) {
	.praxis-dados {
		grid-template-columns: 1fr;
		gap: 0;
	}
	.praxis-dados dd {
		margin-bottom: 12px;
	}
}
.praxis-ficha-noticia__autoria {
	color: var(--praxis-suave);
	font-size: var(--praxis-pequeno);
}

/* Selo de status: a palavra sempre aparece; o ponto só reforça (cheio para
 * "Em andamento" e "Aberta", vazado em coral para "Previsto", vazado em cinza
 * para "Concluído" e "Encerrada"). */
.praxis-selo {
	align-items: center;
	color: var(--praxis-petroleo);
	display: inline-flex;
	font-weight: 700;
	gap: 6px;
}
.praxis-selo::before {
	background: var(--praxis-coral);
	border: 2px solid var(--praxis-coral);
	border-radius: 50%;
	box-sizing: border-box;
	content: "";
	flex: 0 0 auto;
	height: 10px;
	width: 10px;
}
.praxis-selo--previsto::before {
	background: transparent;
}
.praxis-selo--concluido::before,
.praxis-selo--encerrada::before {
	background: transparent;
	border-color: var(--praxis-suave);
}

/* Aviso de item de teste */
.praxis-aviso-teste {
	background: var(--praxis-coral-claro);
	color: var(--praxis-petroleo);
	display: inline-block;
	font-size: var(--wp--preset--font-size--rotulo);
	font-weight: 700;
	letter-spacing: 0.08em;
	padding: 2px 8px;
	text-transform: uppercase;
}

/* Filtros como links */
.praxis-filtros {
	border-bottom: 1px solid var(--praxis-fio);
	border-top: 1px solid var(--praxis-fio);
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--16);
	margin: 0 0 var(--wp--preset--spacing--24);
	padding: var(--wp--preset--spacing--16) 0;
}
.praxis-filtros__grupo {
	align-items: baseline;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 16px;
}
.praxis-filtros__rotulo {
	font-size: var(--praxis-pequeno);
	font-weight: 700;
	margin: 0;
	min-width: 10rem;
}
.praxis-filtros ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.praxis-filtros a {
	border: 1px solid var(--praxis-fio);
	border-radius: 999px;
	color: var(--praxis-petroleo);
	display: inline-block;
	font-size: var(--praxis-pequeno);
	padding: 4px 12px;
	text-decoration: none;
}
.praxis-filtros a:hover {
	border-color: var(--praxis-petroleo);
}
.praxis-filtros a[aria-current] {
	background: var(--praxis-petroleo);
	border-color: var(--praxis-petroleo);
	color: var(--praxis-nevoa);
	font-weight: 700;
}

/* Números do grupo */
.praxis-numeros {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--16) var(--wp--preset--spacing--48);
	list-style: none;
	margin: 0 0 var(--wp--preset--spacing--32);
	padding: 0;
}
.praxis-numeros__valor {
	color: var(--praxis-petroleo);
	display: block;
	font-size: var(--wp--preset--font-size--titulo-1);
	font-weight: 700;
	line-height: 1;
}
.praxis-numeros__legenda {
	color: var(--praxis-suave);
}
.has-petroleo-background-color .praxis-numeros__valor,
.has-petroleo-background-color .praxis-numeros__legenda {
	color: var(--praxis-nevoa);
}

/* Notícias e agenda */
.praxis-novidades {
	display: grid;
	gap: var(--wp--preset--spacing--48);
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
}
.praxis-novidades h3 {
	margin: 0 0 var(--wp--preset--spacing--16);
}

/* Botão de contorno (segunda chamada) */
.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent;
	border: 2px solid currentColor;
	color: var(--praxis-petroleo);
	padding: 12px 22px;
}
.has-petroleo-background-color .wp-block-button.is-style-outline > .wp-block-button__link {
	color: var(--praxis-nevoa);
}

/* Lista numerada (01, 02, 03 separados por fios) */
.praxis-lista-numerada {
	counter-reset: praxis;
	list-style: none;
	padding: 0;
}
.praxis-lista-numerada > li {
	border-top: 1px solid var(--praxis-fio);
	counter-increment: praxis;
	padding: var(--wp--preset--spacing--16) 0 var(--wp--preset--spacing--16) 3.5rem;
	position: relative;
}
.praxis-lista-numerada > li::before {
	color: var(--praxis-rotulo);
	content: counter(praxis, decimal-leading-zero);
	font-weight: 700;
	left: 0;
	position: absolute;
}

/* Prévia dos blocos no editor */
.praxis-previa {
	border: 1px dashed var(--praxis-suave);
	display: flex;
	flex-direction: column;
	font-size: 14px;
	gap: 4px;
	padding: 16px;
}

/* Texto alinhado à coluna larga, com medida de leitura confortável */
.praxis-texto > :not(.alignwide):not(.alignfull),
.praxis-bloco-ficha > p,
.praxis-bloco-ficha > .praxis-dados,
.praxis-secao > p,
.praxis-abertura .praxis-frase-guia,
.praxis-abertura .wp-block-post-excerpt {
	max-width: 760px;
}
.praxis-texto > * + * {
	margin-top: var(--wp--preset--spacing--24);
}
.praxis-abertura .wp-block-post-excerpt__excerpt {
	margin: 0;
}

/* Rodapé */
.praxis-rodape-links ul {
	display: flex;
	flex-direction: column;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.praxis-rodape-links a {
	display: inline-block;
	padding: 2px 0;
}

/* Listas montadas pelo WordPress (notícias, busca) com o visual dos cartões */
.praxis-cartoes--loop > li {
	border-top: 1px solid var(--praxis-fio);
	padding-top: var(--wp--preset--spacing--16);
}
.praxis-cartoes--loop .wp-block-post-title {
	font-size: var(--wp--preset--font-size--titulo-3);
	margin: 4px 0 8px;
}
.praxis-cartoes--loop .wp-block-post-title a {
	color: var(--praxis-petroleo);
}
.praxis-cartoes--loop .wp-block-post-excerpt__excerpt {
	color: var(--praxis-suave);
	margin: 0;
}
.wp-block-query-pagination {
	margin-top: var(--wp--preset--spacing--48);
}


/* Busca nas páginas de busca e de erro */
.praxis-busca--pagina {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: var(--wp--preset--spacing--24) 0;
	max-width: 560px;
}
.praxis-busca--pagina label {
	font-weight: 700;
}
.praxis-busca__campo {
	display: flex;
}
.praxis-busca--pagina input[type="search"] {
	flex: 1 1 auto;
	min-height: 44px;
	min-width: 0;
	width: auto;
}
.praxis-busca--pagina button {
	min-height: 44px;
}
.praxis-lista-links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 24px;
	list-style: none;
	padding: 0;
}


/* Itens das listas do WordPress alinhados pelo topo da grade */
.praxis-cartoes > li {
	margin-block-start: 0;
}

@media (max-width: 600px) {
	.praxis-ficha-pessoa > .praxis-retrato {
		font-size: 36px;
		height: 120px;
		width: 120px;
	}
}

/* Formulário de contato */
.praxis-contato {
	max-width: 640px;
}
.praxis-form .praxis-campo {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin: 0 0 var(--wp--preset--spacing--24);
}
.praxis-form label {
	font-weight: 700;
}
.praxis-form input[type="text"],
.praxis-form input[type="email"],
.praxis-form select,
.praxis-form textarea {
	background: #fff;
	border: 1px solid var(--praxis-suave);
	border-radius: 0;
	box-sizing: border-box;
	color: var(--praxis-petroleo);
	font: inherit;
	min-height: 44px;
	padding: 8px 12px;
	width: 100%;
}
.praxis-form textarea {
	resize: vertical;
}
.praxis-form .praxis-campo--erro input,
.praxis-form .praxis-campo--erro select,
.praxis-form .praxis-campo--erro textarea {
	border: 2px solid var(--praxis-rotulo);
}
.praxis-campo__erro {
	color: var(--praxis-rotulo);
	font-size: var(--praxis-pequeno);
	font-weight: 700;
}
.praxis-form__nota {
	color: var(--praxis-suave);
	font-size: var(--praxis-pequeno);
}
.praxis-form button {
	border: 0;
	cursor: pointer;
}
.praxis-isca {
	height: 1px;
	left: -10000px;
	overflow: hidden;
	position: absolute;
	width: 1px;
}
.praxis-aviso {
	border-left: 4px solid var(--praxis-petroleo);
	margin: 0 0 var(--wp--preset--spacing--24);
	padding: var(--wp--preset--spacing--16) var(--wp--preset--spacing--24);
	background: #fff;
}
.praxis-aviso--erro {
	border-left-color: var(--praxis-rotulo);
}
.praxis-aviso p,
.praxis-aviso ul {
	margin: 0;
}
.praxis-aviso ul {
	margin-top: 8px;
	padding-left: 1.2em;
}
.praxis-whatsapp {
	border-top: 1px solid var(--praxis-fio);
	margin-top: var(--wp--preset--spacing--48);
	padding-top: var(--wp--preset--spacing--24);
}
.praxis-botao-contorno.wp-element-button {
	background: transparent;
	border: 2px solid var(--praxis-petroleo);
	color: var(--praxis-petroleo);
	display: inline-block;
	padding: 12px 22px;
	text-decoration: none;
}

/* =====================================================================
 * 0.5.0: sistema visual (símbolo, glifos das linhas e faixas)
 * ===================================================================== */

:root {
	--praxis-branco: #fff;
	--praxis-destaque: var(--wp--preset--color--destaque);
	--praxis-tri-apagada: #dbe4e5;
	--praxis-fio-escuro: #33525a;
	--praxis-faixa-y: clamp(64px, 8vw, 112px);
}
.has-petroleo-background-color {
	--praxis-tri-apagada: #284249;
}

/* Símbolo e glifos */
.praxis-simbolo {
	display: block;
	height: auto;
	overflow: visible;
	width: 100%;
}
.praxis-tri--teal {
	fill: var(--wp--preset--color--teal);
}
.praxis-tri--coral {
	fill: var(--wp--preset--color--coral);
}
.praxis-tri--apagada {
	fill: var(--praxis-tri-apagada);
}
.praxis-glifo {
	flex: 0 0 auto;
	width: 48px;
}
.praxis-rotulo--linhas {
	align-items: center;
	display: flex;
	gap: 10px;
}
.praxis-rotulo--linhas .praxis-glifo {
	width: 26px;
}

/* Faixas de largura total: cada seção da página inicial é uma faixa */
.praxis-faixa.praxis-faixa {
	margin-block: 0;
	padding-block: var(--praxis-faixa-y);
}
.praxis-bloco.praxis-faixa {
	padding-left: var(--wp--style--root--padding-left);
	padding-right: var(--wp--style--root--padding-right);
}
.praxis-faixa__interna {
	margin-inline: auto;
	max-width: var(--wp--style--global--wide-size);
}
.praxis-faixa__interna > .praxis-secao {
	margin-top: 0;
}
.praxis-faixa .praxis-secao__titulo,
.praxis-faixa h2.wp-block-heading {
	margin: 0 0 var(--wp--preset--spacing--48);
}
.wp-site-blocks > footer.wp-block-template-part {
	margin-block-start: 0;
}

/* Abertura da página inicial: texto e símbolo grande */
.praxis-inicio-abertura.praxis-faixa {
	overflow: clip;
	padding-block: clamp(40px, 6vw, 88px) clamp(64px, 9vw, 128px);
}
.praxis-inicio-abertura__grade {
	align-items: center;
	column-gap: clamp(32px, 6vw, 80px);
	display: grid;
	grid-template-columns: minmax(0, 1fr) clamp(200px, 27vw, 344px);
}
.praxis-inicio-abertura__grade > * {
	grid-column: 1;
	margin: 0;
	max-width: 760px;
}
.praxis-inicio-abertura__grade > * + * {
	margin-top: var(--wp--preset--spacing--24);
}
.praxis-inicio-abertura__grade > .wp-block-buttons {
	margin-top: var(--wp--preset--spacing--32);
}
.praxis-inicio-abertura__grade > .praxis-bloco-simbolo {
	grid-column: 2;
	grid-row: 1 / span 4;
	margin: 0;
}
.praxis-inicio-abertura h1 {
	letter-spacing: -0.035em;
	line-height: 1.02;
}
.praxis-inicio-abertura__lead {
	line-height: 1.4;
}
@media (max-width: 781px) {
	.praxis-inicio-abertura__grade {
		grid-template-columns: minmax(0, 1fr);
	}
	.praxis-inicio-abertura__grade > .praxis-bloco-simbolo {
		grid-column: 1;
		grid-row: auto;
		justify-self: end;
		margin-top: var(--wp--preset--spacing--48);
		width: clamp(140px, 48vw, 240px);
	}
}

/* O único movimento do site: os triângulos convergem ao abrir a página inicial */
@media (prefers-reduced-motion: no-preference) {
	.praxis-simbolo--marca .praxis-tri {
		animation: praxis-convergir 1100ms cubic-bezier(0.16, 0.84, 0.3, 1) both;
	}
	.praxis-simbolo--marca .praxis-tri--cima {
		--praxis-de: 0 -56px;
	}
	.praxis-simbolo--marca .praxis-tri--direita {
		--praxis-de: 56px 0;
		animation-delay: 90ms;
	}
	.praxis-simbolo--marca .praxis-tri--baixo {
		--praxis-de: 0 56px;
		animation-delay: 180ms;
	}
	.praxis-simbolo--marca .praxis-tri--esquerda {
		--praxis-de: -56px 0;
		animation-delay: 270ms;
	}
}
@keyframes praxis-convergir {
	from {
		opacity: 0;
		translate: var(--praxis-de, 0 0);
	}
	to {
		opacity: 1;
		translate: 0 0;
	}
}

/* Quatro perguntas: grade 2 x 2 com o glifo de cada linha */
.praxis-perguntas {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	list-style: none;
	margin: 0;
	padding: 0;
}
.praxis-pergunta {
	border-top: 1px solid var(--praxis-fio);
	column-gap: var(--wp--preset--spacing--24);
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	margin: 0;
	padding: var(--wp--preset--spacing--32) var(--wp--preset--spacing--48) var(--wp--preset--spacing--48) 0;
	position: relative;
}
.praxis-pergunta:nth-child(even) {
	border-left: 1px solid var(--praxis-fio);
	padding-left: var(--wp--preset--spacing--48);
	padding-right: 0;
}
.praxis-pergunta .praxis-glifo {
	grid-row: 1 / span 2;
	margin-top: 6px;
	width: clamp(44px, 5vw, 64px);
}
.praxis-pergunta__titulo {
	font-size: clamp(22px, 2.3vw, 30px);
	font-weight: 400;
	letter-spacing: -0.005em;
	line-height: 1.3;
	margin: 0;
}
.praxis-pergunta__titulo a {
	color: var(--praxis-petroleo);
	text-decoration-color: var(--praxis-fio);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.2em;
}
.praxis-pergunta__titulo a::after {
	content: "";
	inset: 0;
	position: absolute;
}
.praxis-pergunta__titulo a:hover {
	text-decoration-color: currentColor;
}
.praxis-pergunta__linha {
	color: var(--praxis-suave);
	font-size: var(--praxis-pequeno);
	line-height: 1.5;
	margin: 12px 0 0;
}
.has-petroleo-background-color .praxis-pergunta {
	border-color: var(--praxis-fio-escuro);
}
.has-petroleo-background-color .praxis-pergunta__titulo a {
	color: var(--praxis-nevoa);
	text-decoration-color: #5e7c83;
}
.has-petroleo-background-color .praxis-pergunta__titulo a:hover {
	color: var(--praxis-nevoa);
	text-decoration-color: currentColor;
}
.has-petroleo-background-color .praxis-pergunta__linha {
	color: #bbced1;
}
.praxis-pergunta:focus-within {
	outline: 2px solid var(--wp--preset--color--cor-link);
	outline-offset: -2px;
}
.has-petroleo-background-color .praxis-pergunta:focus-within {
	outline-color: var(--wp--preset--color--destaque-claro);
}
.praxis-pergunta__titulo a:focus-visible {
	outline: none;
}
@media (max-width: 781px) {
	.praxis-perguntas {
		grid-template-columns: minmax(0, 1fr);
	}
	.praxis-pergunta,
	.praxis-pergunta:nth-child(even) {
		border-left: 0;
		padding: var(--wp--preset--spacing--24) 0 var(--wp--preset--spacing--32);
	}
}
.praxis-bloco-subpaginas .praxis-perguntas + .praxis-cartoes {
	margin-top: var(--wp--preset--spacing--64);
}

/* Por onde começar: título à esquerda, três portas à direita */
.praxis-portas-grade {
	column-gap: clamp(32px, 5vw, 64px);
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 3fr);
}
.praxis-portas-grade > * {
	margin: 0;
}
.praxis-faixa .praxis-portas-grade > h2.wp-block-heading {
	margin: 0 0 var(--wp--preset--spacing--32);
}
.praxis-portas.wp-block-columns {
	gap: clamp(24px, 3vw, 40px);
	margin: 0;
}
.praxis-porta {
	border-top: 3px solid var(--praxis-petroleo);
	display: flex;
	flex-direction: column;
	padding-top: var(--wp--preset--spacing--24);
}
.praxis-porta > * {
	margin: 0;
}
.praxis-porta > * + * {
	margin-top: var(--wp--preset--spacing--16);
}
.praxis-porta > :last-child {
	margin-top: auto;
	padding-top: var(--wp--preset--spacing--16);
}
@media (max-width: 960px) {
	.praxis-portas-grade {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Faixas brancas (projetos e pessoas) e notícias */
.praxis-faixa.praxis-bloco-projetos-destaque,
.praxis-faixa.praxis-bloco-pessoas-resumo {
	background: var(--praxis-branco);
}
.praxis-bloco-projetos-destaque + .praxis-bloco-pessoas-resumo {
	padding-top: 0;
}
.praxis-bloco-projetos-destaque + .praxis-bloco-pessoas-resumo .praxis-faixa__interna {
	border-top: 1px solid var(--praxis-fio);
	padding-top: var(--praxis-faixa-y);
}

/* Seções em duas colunas (padrão do deck: fio de largura total, título curto
 * à esquerda e conteúdo à direita). Abaixo de 960 px, uma coluna. */
@media (min-width: 960px) {
	.praxis-secao {
		align-items: start;
		column-gap: clamp(32px, 5vw, 64px);
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 3fr);
	}
	.praxis-secao > * {
		grid-column: 2;
		min-width: 0;
	}
	.praxis-secao > .praxis-secao__titulo {
		grid-column: 1;
		grid-row: 1 / span 6;
		position: sticky;
		top: var(--wp--preset--spacing--24);
	}
	.praxis-secao--quem-faz > .praxis-secao__titulo {
		grid-row: 1;
		position: static;
	}
	.praxis-secao--quem-faz > .praxis-numeros {
		grid-column: 1;
		grid-row: 2;
	}
	.praxis-secao--quem-faz > .praxis-expediente {
		grid-row: 1 / span 3;
	}
	.praxis-secao--quem-faz > .praxis-secao__mais {
		grid-column: 1;
		grid-row: 3;
	}
}
:where(main) .praxis-secao {
	border-top: 1px solid var(--praxis-fio);
	padding-top: var(--wp--preset--spacing--24);
}
.praxis-secao__titulo {
	font-size: clamp(22px, 2.1vw, 28px);
	letter-spacing: -0.01em;
	line-height: 1.2;
}
.praxis-faixa .praxis-secao {
	border-top: 0;
	padding-top: 0;
}
.praxis-faixa .praxis-secao__titulo {
	font-size: var(--wp--preset--font-size--titulo-2);
	letter-spacing: -0.02em;
	line-height: 1.1;
}
.praxis-secao .praxis-cartoes {
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr));
}
.praxis-secao .praxis-cartoes--publicacoes,
.praxis-secao .praxis-cartoes--projetos,
.praxis-secao .praxis-novidades .praxis-cartoes {
	grid-template-columns: minmax(0, 1fr);
}

/* Quem faz o PRAXIS: números e expediente */
.praxis-secao--quem-faz .praxis-numeros {
	flex-direction: column;
	gap: var(--wp--preset--spacing--24);
	margin: 0 0 var(--wp--preset--spacing--32);
}
.praxis-secao--quem-faz .praxis-numeros__valor {
	font-size: clamp(48px, 5.5vw, 72px);
	letter-spacing: -0.04em;
}
.praxis-expediente {
	column-gap: clamp(24px, 3vw, 40px);
	columns: 3 200px;
}
.praxis-expediente__grupo {
	break-inside: avoid;
	padding-bottom: var(--wp--preset--spacing--32);
}
.praxis-expediente__grupo h3 {
	border-top: 3px solid var(--praxis-petroleo);
	font-size: var(--praxis-pequeno);
	letter-spacing: 0;
	margin: 0 0 12px;
	padding-top: 12px;
}
.praxis-expediente__grupo ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.praxis-expediente__grupo li {
	margin: 0;
	padding: 3px 0;
}
.praxis-expediente__grupo a {
	color: var(--praxis-petroleo);
}
.praxis-expediente__grupo a:hover {
	color: var(--praxis-link);
}
@media (max-width: 959px) {
	.praxis-secao--quem-faz .praxis-numeros {
		flex-direction: row;
		gap: var(--wp--preset--spacing--24) var(--wp--preset--spacing--48);
	}
}

/* Aberturas das páginas internas: glifo da linha ou do projeto à direita */
.praxis-abertura {
	column-gap: clamp(24px, 5vw, 64px);
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
}
.praxis-abertura > * {
	grid-column: 1;
}
.praxis-abertura > .praxis-bloco-simbolo {
	align-self: center;
	grid-column: 2;
	grid-row: 1 / span 3;
	margin: 0;
}
.praxis-glifo--abertura {
	width: clamp(88px, 12vw, 168px);
}

/* Rodapé em três colunas */
.praxis-rodape {
	padding-block: var(--wp--preset--spacing--64);
}
.praxis-rodape__grade {
	column-gap: clamp(32px, 5vw, 64px);
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(0, 1fr);
	row-gap: var(--wp--preset--spacing--48);
}
.praxis-rodape__vinculo {
	color: var(--praxis-nevoa);
	font-size: var(--wp--preset--font-size--titulo-3);
	line-height: 1.4;
	margin: var(--wp--preset--spacing--32) 0 0;
	max-width: 30ch;
}
.praxis-rodape__titulo {
	border-top: 1px solid var(--praxis-fio-escuro);
	color: #bbced1;
	font-size: var(--praxis-pequeno);
	letter-spacing: 0;
	margin: 0 0 12px;
	padding-top: 12px;
}
.praxis-rodape__titulo:not(:first-child) {
	margin-top: var(--wp--preset--spacing--32);
}
.praxis-rodape ul {
	display: flex;
	flex-direction: column;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.praxis-rodape li {
	margin: 0;
}
.praxis-rodape__endereco {
	color: #bbced1;
	font-size: var(--praxis-pequeno);
	margin: var(--wp--preset--spacing--24) 0 0;
	max-width: 28ch;
}
@media (max-width: 960px) {
	.praxis-rodape__grade {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Cartões dentro das seções: o fio da seção já separa; sem fio em cada cartão
 * (deck: nenhum cartão com borda). Listas de uma coluna mantêm o fio entre itens. */
.praxis-secao .praxis-cartao,
.praxis-secao .praxis-publicacao {
	border-top: 0;
	padding-top: 0;
}
.praxis-secao .praxis-cartoes {
	row-gap: var(--wp--preset--spacing--48);
}
.praxis-secao .praxis-cartoes--publicacoes > li + li,
.praxis-secao .praxis-cartoes--projetos > li + li,
.praxis-secao .praxis-novidades .praxis-cartoes > li + li {
	border-top: 1px solid var(--praxis-fio);
	padding-top: var(--wp--preset--spacing--24);
}
.praxis-secao .praxis-cartoes--publicacoes,
.praxis-secao .praxis-cartoes--projetos,
.praxis-secao .praxis-novidades .praxis-cartoes {
	row-gap: var(--wp--preset--spacing--24);
}
/* Projetos dentro de uma seção: um por linha (títulos longos lado a lado
 * ficavam desencontrados), com a linha do título numa medida confortável. */
.praxis-secao .praxis-cartoes--projetos .praxis-cartao__titulo,
.praxis-secao .praxis-cartoes--projetos .praxis-cartao__pergunta {
	max-width: 44em;
}
.praxis-novidades h3 {
	font-size: var(--praxis-pequeno);
}
.praxis-novidades__coluna > h3 {
	border-top: 3px solid var(--praxis-petroleo);
	padding-top: 12px;
}
.praxis-cartao__linhas {
	align-items: center;
	display: flex;
	gap: 8px;
}
.praxis-cartao__linhas .praxis-glifo {
	width: 22px;
}

/* Abertura das páginas de linha: faixa petróleo (deck: petróleo para perguntas) */
.praxis-abertura-faixa.praxis-abertura-faixa {
	margin-block: 0 var(--wp--preset--spacing--64);
	padding-bottom: var(--wp--preset--spacing--48);
}
.praxis-abertura-faixa .wp-block-breadcrumbs {
	color: #bbced1;
}
.praxis-abertura-faixa .praxis-frase-guia {
	color: #e3ecee;
}
.praxis-abertura-faixa h1 {
	color: var(--praxis-nevoa);
}

/* Chamada do fim das páginas de seção: faixa branca encostada no rodapé */
.praxis-chamada.alignfull {
	background: var(--praxis-branco);
	margin-block: var(--wp--preset--spacing--96) calc(-1 * var(--wp--preset--spacing--96));
	padding-block: var(--wp--preset--spacing--64);
}
.praxis-chamada__grade {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--24) var(--wp--preset--spacing--48);
	justify-content: space-between;
}
.praxis-chamada__grade > * {
	margin: 0;
}
.praxis-chamada__texto {
	font-size: clamp(22px, 2.4vw, 30px);
	letter-spacing: -0.005em;
	line-height: 1.3;
	max-width: 30ch;
}

/* =====================================================================
 * 0.5.1: títulos sem sublinhado, submenus, atalhos e voltar ao topo
 * ===================================================================== */

/* 0.5.2: nenhum link sublinhado, em nenhum estado (pedido de Paula).
 * Ao passar o ponteiro, o link muda de cor; no foco, aparece o contorno.
 * Links dentro de texto corrido ficam em negrito: a cor do link tem só
 * 2,4:1 de contraste com o texto, e a WCAG 1.4.1 pede que o link não
 * dependa só da cor. */
a,
a:hover,
a:focus,
.praxis-cartao__titulo a,
.praxis-pergunta__titulo a,
.has-petroleo-background-color .praxis-pergunta__titulo a,
.praxis-cartoes--loop .wp-block-post-title a,
.wp-block-breadcrumbs a {
	text-decoration: none;
}
.praxis-cartao__titulo a:hover,
.praxis-cartoes--loop .wp-block-post-title a:hover,
.praxis-pergunta:hover .praxis-pergunta__titulo a {
	color: var(--praxis-link);
}
.has-petroleo-background-color .praxis-pergunta:hover .praxis-pergunta__titulo a {
	color: var(--wp--preset--color--destaque-claro);
}
.praxis-texto :where(p, li, td, th, blockquote, figcaption) a:not(.wp-element-button),
.praxis-secao > p:not(.praxis-secao__mais) a,
.praxis-bloco-ficha > p a,
.praxis-dados dd a,
.praxis-cartao p a,
.praxis-publicacao p a,
.praxis-rodape__vinculo a,
.praxis-form__nota a,
.praxis-aviso a,
.praxis-whatsapp p a,
.praxis-vazio a,
.praxis-alem-das-vagas a,
.praxis-frase-guia a,
.wp-block-post-excerpt__excerpt a {
	font-weight: 700;
}

/* Submenus (padrão disclosure). Sem JavaScript, ficam ocultos. */
.praxis-menu__lista > li {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	position: relative;
}
.praxis-menu .sub-menu {
	display: none;
	list-style: none;
	margin: 0;
	padding: 0;
}
.praxis-menu--js .praxis-submenu--aberto > .sub-menu {
	display: block;
}
.praxis-submenu__botao {
	align-items: center;
	background: none;
	border: 0;
	color: var(--praxis-petroleo);
	cursor: pointer;
	display: inline-flex;
	justify-content: center;
	margin-left: 2px;
	min-height: 32px;
	min-width: 28px;
	padding: 4px;
}
.praxis-submenu__botao[aria-expanded="true"] svg {
	rotate: 180deg;
}
@media (prefers-reduced-motion: no-preference) {
	.praxis-submenu__botao svg {
		transition: rotate 150ms ease;
	}
}
.praxis-menu .sub-menu a {
	align-items: center;
	border-bottom: 0;
	display: flex;
	font-weight: 400;
	gap: 12px;
	line-height: 1.35;
}
.praxis-menu .sub-menu a[aria-current] {
	font-weight: 700;
}
.praxis-menu .sub-menu .praxis-glifo {
	width: 22px;
}
@media (min-width: 1024px) {
	.praxis-menu .sub-menu {
		background: var(--praxis-branco);
		border: 1px solid var(--praxis-fio);
		border-top: 3px solid var(--praxis-petroleo);
		left: -20px;
		min-width: 320px;
		padding: 8px 0;
		position: absolute;
		top: 100%;
		z-index: 30;
	}
	.praxis-menu__lista > li:nth-last-child(-n+2) > .sub-menu {
		left: auto;
		right: 0;
	}
	.praxis-menu .sub-menu li {
		margin: 0;
	}
	.praxis-menu .sub-menu a {
		padding: 10px 20px;
	}
	.praxis-menu .sub-menu a:hover,
	.praxis-menu .sub-menu a:focus-visible {
		background: var(--praxis-marca);
		border-radius: 0;
	}
	.praxis-menu .sub-menu a[aria-current] {
		box-shadow: inset 3px 0 0 var(--praxis-coral);
	}
}
@media (max-width: 1023px) {
	.praxis-menu__lista > li {
		justify-content: space-between;
	}
	.praxis-menu .sub-menu {
		border-left: 2px solid var(--praxis-fio);
		flex-basis: 100%;
		margin: 4px 0 8px;
		padding: 0 0 0 14px;
	}
	.praxis-menu .sub-menu a {
		padding: 6px 0;
	}
}

/* Destinos dos atalhos recebem o foco sem contorno na página inteira */
#conteudo:focus,
#rodape:focus,
#topo:focus,
#menu-principal:focus {
	outline: none;
}
html {
	scroll-padding-bottom: 80px;
}
@media (prefers-reduced-motion: no-preference) {
	html {
		scroll-behavior: smooth;
	}
}

/* Voltar ao topo: link no rodapé e botão fixo depois de rolar duas telas */
.praxis-rodape__topo {
	border-top: 1px solid var(--praxis-fio-escuro);
	grid-column: 1 / -1;
	margin: 0;
	padding-top: var(--wp--preset--spacing--16);
}
.praxis-topo.praxis-topo {
	align-items: center;
	background: var(--praxis-petroleo);
	border-radius: 50%;
	bottom: 16px;
	box-shadow: 0 0 0 2px var(--praxis-nevoa);
	color: var(--praxis-nevoa);
	display: flex;
	height: 48px;
	justify-content: center;
	margin: 0;
	max-width: none;
	position: fixed;
	right: 16px;
	width: 48px;
	z-index: 40;
}
.praxis-topo[hidden] {
	display: none;
}
.praxis-topo:hover {
	background: var(--praxis-link);
	color: var(--praxis-nevoa);
}
.praxis-topo:focus-visible {
	outline: 2px solid var(--praxis-link);
	outline-offset: 3px;
}

/* Modo de contraste do sistema (Windows e outros): mantém o glifo legível
 * e dá borda aos botões, que perdem o fundo nesse modo. */
@media (forced-colors: active) {
	.praxis-simbolo {
		forced-color-adjust: none;
	}
	.praxis-tri--teal,
	.praxis-tri--coral {
		fill: CanvasText;
	}
	.praxis-tri--apagada {
		fill: Canvas;
		stroke: CanvasText;
		stroke-width: 4;
	}
	.wp-element-button,
	.praxis-busca button,
	.praxis-menu__botao,
	.praxis-topo.praxis-topo {
		border: 1px solid ButtonText;
	}
	.praxis-menu__lista a {
		border-bottom-color: Canvas;
	}
	.praxis-menu__lista a[aria-current] {
		border-bottom-color: Highlight;
	}
	mark.has-inline-color {
		background: transparent !important;
		color: CanvasText !important;
	}
}

/* 0.5.2: ao passar o ponteiro e no foco, os links ganham um fundo teal claro,
 * como um marca-texto, em vez de sublinhado. No foco pelo teclado, o
 * contorno continua (WCAG 2.4.7). Botões, logos e filtros têm estado próprio. */
:root {
	--praxis-marca: #ddf0f2;
}
.has-petroleo-background-color {
	--praxis-marca: rgba(112, 204, 214, 0.24);
}
a:where(:not(.wp-element-button):not(.praxis-topo):not(.praxis-logo):not(.praxis-logo-rodape)):hover,
a:where(:not(.wp-element-button):not(.praxis-topo):not(.praxis-logo):not(.praxis-logo-rodape)):focus-visible {
	-webkit-box-decoration-break: clone;
	background-color: var(--praxis-marca);
	border-radius: 2px;
	box-decoration-break: clone;
	box-shadow: 0 0 0 3px var(--praxis-marca);
}
a:where(:not(.wp-element-button)):focus-visible {
	outline-offset: 4px;
}
.praxis-filtros a:hover,
.praxis-filtros a:focus-visible {
	box-shadow: none;
}
.praxis-filtros a[aria-current]:hover {
	background-color: var(--praxis-petroleo);
}
.praxis-menu .sub-menu a:hover,
.praxis-menu .sub-menu a:focus-visible {
	box-shadow: none;
}
@media (forced-colors: active) {
	a:hover {
		background-color: transparent;
		box-shadow: none;
		outline: 2px solid LinkText;
	}
}

/* 0.5.3: ícone do Instagram no rodapé. Regras da marca: mínimo de 29 px e
 * espaço livre de metade do tamanho (14,5 px) em volta do glifo. */
.praxis-rodape__rede {
	align-items: center;
	display: inline-flex;
	gap: 15px;
	padding-block: 8px;
}
.praxis-icone-instagram {
	display: block;
	flex: 0 0 auto;
	height: 29px;
	width: 29px;
}
