/*
Theme Name: Ankh Soluções
Theme URI: https://ankhsolucoes.com.br/
Author: Ankh Soluções
Description: Tema institucional da Ankh Soluções (Eventos, Digital, Mídia e Negócios). Tema-filho de blocos do Twenty Twenty-Five com a identidade visual V3 aprovada. Mobile first, sem bibliotecas externas. Textos ficam no WordPress; o tema cuida só da apresentação.
Template: twentytwentyfive
Requires at least: 6.7
Requires PHP: 7.4
Version: 3.18.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ankh
*/

/* =========================================================
   Tokens
   ========================================================= */
:root {
	/* Ligadas à paleta do tema: mudam em Aparência → Editor → Estilos → Cores. */
	--ankh-petroleo: var(--wp--preset--color--petroleo, #102D3A);
	--ankh-petroleo-2: #0B2230;
	--ankh-dourado: var(--wp--preset--color--dourado, #977343);
	--ankh-dourado-claro: var(--wp--preset--color--dourado-claro, #C7A574);
	/* Dourado um tom mais fechado para textos pequenos e fundos de botão: contraste AA (4,5:1) no claro e com letra branca. */
	--ankh-dourado-forte: #836338;
	--ankh-offwhite: var(--wp--preset--color--offwhite, #FAFAF8);
	--ankh-mineral: var(--wp--preset--color--mineral, #E9EEEC);
	--ankh-grafite: var(--wp--preset--color--grafite, #303A40);
	--ankh-suave: #5B666C;
	--ankh-linha: rgba(16, 45, 58, 0.1);
	--ankh-gutter: clamp(1rem, 4.5vw, 2.5rem);
	--ankh-max: 1180px;
	--ankh-text: 720px;
	--ankh-radius: 16px;
	--ankh-radius-s: 10px;
	--ankh-shadow: 0 1px 2px rgba(16, 45, 58, 0.04), 0 8px 24px rgba(16, 45, 58, 0.06);
	--ankh-shadow-hover: 0 2px 4px rgba(16, 45, 58, 0.05), 0 18px 40px rgba(16, 45, 58, 0.12);
	--ankh-ease: cubic-bezier(0.22, 1, 0.36, 1);
	/* Escala única de títulos: todo H1 tem o mesmo tamanho, todo H2 também, e todo H3 também. */
	--ankh-h1: clamp(1.85rem, 1.25rem + 2.6vw, 3.1rem);
	--ankh-h2: clamp(1.3rem, 1.1rem + 0.9vw, 1.75rem);
	--ankh-h3: 1.125rem;
	/* Escala única de textos (fora os títulos). Nenhum texto do site usa outro tamanho. */
	--ankh-fs-destaque: clamp(1.0625rem, 1rem + 0.3vw, 1.1875rem); /* 17→19px: frase de abertura, faixa que acende, subtítulo da home */
	--ankh-fs-lead: 1.0625rem;  /* 17px: parágrafo de apoio abaixo do título (hero, seção) */
	--ankh-fs-body: 1.0625rem;  /* 17px: texto corrido */
	--ankh-fs-small: 0.95rem;   /* 15,2px: texto de cartão, etapas, listas, rodapé */
	--ankh-fs-meta: 0.875rem;   /* 14px: datas, cargos, trilha de navegação */
	--ankh-fs-label: 0.8rem;    /* 12,8px: etiquetas e botões em caixa alta */
	/* Espaçamento vertical por função da seção */
	--ankh-pad-s: clamp(2.5rem, 6vw, 3.75rem);
	--ankh-pad-m: clamp(3.25rem, 8vw, 5.25rem);
	--ankh-pad-l: clamp(4rem, 10vw, 7rem);
	--ankh-header-h: 68px;
}
@media (min-width: 1024px) { :root { --ankh-header-h: 76px; } }

/* =========================================================
   Base
   ========================================================= */
html { scroll-behavior: smooth; scroll-padding-top: calc(var(--ankh-header-h) + 16px); overflow-x: clip; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: clip; }
::selection { background: var(--ankh-dourado); color: #fff; }
:where(a, button, summary, input, select, textarea):focus-visible {
	outline: 2px solid var(--ankh-dourado);
	outline-offset: 3px;
	border-radius: 6px;
}
img { height: auto; }
.ankh-sr-only {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
.wp-site-blocks > main, .ankh-main { margin-block: 0 !important; }
/* Sem faixa entre o conteúdo e o rodapé (espaço padrão entre blocos do tema-pai). */
.wp-site-blocks > .wp-block-template-part, .wp-site-blocks > footer { margin-block: 0 !important; }
.ankh-main > .entry-content > *, .ankh-main .wp-block-post-content > * { margin-block: 0 !important; }
.ankh-main .wp-block-post-content { margin-top: 0 !important; }

.ankh-wrap {
	width: 100%;
	max-width: var(--ankh-max);
	margin-inline: auto !important;
	padding-inline: var(--ankh-gutter);
	box-sizing: border-box;
}
.ankh-wrap--text { max-width: calc(var(--ankh-text) + var(--ankh-gutter) * 2); }

/* Tipografia de apoio (capitalização de frase, sem caixa alta massiva) */
.ankh-eyebrow, .ankh-kicker {
	margin: 0 0 0.75rem !important;
	font-family: var(--wp--preset--font-family--geist);
	font-size: 0.8rem !important;
	font-weight: 600;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--ankh-dourado-forte);
}
.ankh-eyebrow { display: inline-flex; align-items: center; gap: 0.55rem; }
.ankh-eyebrow::before { content: ""; width: 18px; height: 1.5px; background: currentColor; }
.ankh-section-title {
	font-size: var(--ankh-h2) !important;
	line-height: 1.15 !important;
	letter-spacing: -0.03em !important;
	text-wrap: balance;
	margin: 0 !important;
	max-width: 24ch;
}
.ankh-section-intro {
	margin: 0.75rem 0 0 !important;
	max-width: 60ch;
	font-size: var(--ankh-fs-lead);
	color: var(--ankh-suave);
	text-wrap: pretty;
}
.ankh-section-head { margin-bottom: clamp(1.5rem, 4vw, 2.25rem); }
.ankh-more { margin-top: 1.5rem !important; }
.ankh-group-title {
	margin: 2rem 0 1rem !important;
	font-size: var(--ankh-h3) !important;
	font-weight: 600 !important;
	color: var(--ankh-suave) !important;
	letter-spacing: 0 !important;
}
.ankh-section-head + .ankh-group-title { margin-top: 0 !important; }

/* =========================================================
   Seções e espaçamento
   ========================================================= */
.ankh-section { position: relative; margin: 0 !important; }
.ankh-pad-s { padding-block: var(--ankh-pad-s); }
.ankh-pad-m { padding-block: var(--ankh-pad-m); }
.ankh-pad-l { padding-block: var(--ankh-pad-l); }
.ankh-services, .ankh-faq-section, .ankh-portfolio, .ankh-subpages { background: var(--ankh-offwhite); }
.ankh-editorial, .ankh-blog, .ankh-legal, .ankh-story, .ankh-bloglist, .ankh-areas-rows { background: var(--ankh-offwhite); }
.ankh-services + .ankh-editorial { padding-top: 0; }
.ankh-pillars, .ankh-process { background: var(--ankh-offwhite); }
.ankh-testimonials-section { background: var(--ankh-mineral); }
/* Duas seções seguidas com o mesmo fundo ficam unidas, sem vão duplo. */
.ankh-services + .ankh-subpages, .ankh-faq-section + .ankh-faq-section { padding-top: 0; }

/* =========================================================
   Cabeçalho e menu
   ========================================================= */
.ankh-header {
	position: sticky;
	top: 0;
	z-index: 50;
	margin: 0 !important;
	/* Fundo sólido: desfoque (backdrop-filter) prenderia a gaveta do menu dentro do cabeçalho. */
	background: #fff !important;
	border-bottom: 1px solid var(--ankh-linha);
}
.admin-bar .ankh-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .ankh-header { top: 46px; } }
@media (max-width: 600px) { .admin-bar .ankh-header { top: 0; } }
.ankh-header-inner {
	display: flex !important;
	align-items: center;
	gap: 1rem;
	max-width: var(--ankh-max);
	min-height: var(--ankh-header-h);
	margin-inline: auto;
	padding-inline: var(--ankh-gutter);
	box-sizing: border-box;
}
.ankh-header-inner > * { margin: 0 !important; }
.ankh-logo { display: block; margin-right: auto !important; }
.ankh-logo img { height: 34px !important; width: auto !important; display: block; }
.ankh-logo a { display: block; }
@media (min-width: 1024px) { .ankh-logo img { height: 40px; } }
.ankh-header-cta { display: none !important; }
/* Mesmo botão principal do resto do site: dourado, letra branca, mesmo tamanho de rótulo. */
.ankh-header-cta .wp-block-button__link { padding: 0.7rem 1.2rem !important; background: var(--ankh-dourado-forte) !important; color: #fff !important; }
.ankh-header-cta .wp-block-button__link:hover { background: var(--ankh-petroleo) !important; }

.ankh-menu { list-style: none; margin: 0; padding: 0; }
.ankh-menu a { text-decoration: none; }
.ankh-subtoggle {
	display: inline-grid; place-items: center;
	width: 36px; height: 36px; padding: 0;
	border: 0; border-radius: 8px; background: transparent;
	color: inherit; cursor: pointer;
}
.ankh-subtoggle svg, .ankh-menu-close svg { width: 20px; height: 20px; }
.ankh-subtoggle svg, .ankh-menu-close svg { fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.ankh-subtoggle svg { transition: transform 0.25s var(--ankh-ease); }
.ankh-subtoggle[aria-expanded="true"] svg { transform: rotate(180deg); }

/* Botão de menu (celular): três barras à direita, mesmo lado em que a gaveta abre */
.ankh-menu-open {
	display: inline-grid; place-items: center;
	width: 44px; height: 44px; padding: 0; margin-right: -10px !important;
	border: 0; border-radius: 12px;
	background: transparent; color: var(--ankh-petroleo); cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	transition: background-color 0.2s ease, color 0.2s ease;
}
.ankh-menu-open svg { width: 26px; height: 26px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.ankh-menu-open:hover, .ankh-menu-open[aria-expanded="true"] { background: var(--ankh-offwhite); color: var(--ankh-dourado); }

/* Gaveta (celular): tela cheia no azul da marca, abre pela direita;
   os itens entram em sequência e o rodapé traz o botão principal e os ícones. */
.ankh-drawer {
	position: fixed;
	inset: 0;
	z-index: 70;
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
	padding: 0.85rem var(--ankh-gutter) calc(1.5rem + env(safe-area-inset-bottom));
	background:
		radial-gradient(80% 50% at 100% 0%, rgba(199, 165, 116, 0.18), transparent 70%),
		radial-gradient(60% 40% at 0% 100%, rgba(255, 255, 255, 0.05), transparent 70%),
		var(--ankh-petroleo);
	color: #fff;
	clip-path: circle(0% at calc(100% - 40px) 34px);
	visibility: hidden;
	transition: clip-path 0.6s var(--ankh-ease), visibility 0s linear 0.6s;
	overflow-y: auto;
	box-sizing: border-box;
}
.ankh-drawer.is-open { clip-path: circle(150% at calc(100% - 40px) 34px); visibility: visible; transition: clip-path 0.7s var(--ankh-ease), visibility 0s; }
.ankh-drawer-backdrop { display: none; }
.ankh-drawer-head { display: flex; align-items: center; justify-content: space-between; min-height: 52px; }
.ankh-drawer-title {
	font-family: var(--wp--preset--font-family--geist);
	font-size: 0.75rem; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase;
	color: var(--ankh-dourado-claro);
}
.ankh-menu-close {
	display: inline-grid; place-items: center;
	width: 44px; height: 44px; padding: 0;
	border: 1px solid rgba(255, 255, 255, 0.25); border-radius: 50%;
	background: transparent; color: #fff; cursor: pointer;
	transition: transform 0.4s var(--ankh-ease), border-color 0.2s ease;
}
.ankh-drawer.is-open .ankh-menu-close { transform: rotate(90deg); }
.ankh-drawer .ankh-menu > li {
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	opacity: 0; transform: translateX(28px);
	transition: opacity 0.5s ease, transform 0.6s var(--ankh-ease);
}
.ankh-drawer.is-open .ankh-menu > li { opacity: 1; transform: none; }
.ankh-drawer.is-open .ankh-menu > li:nth-child(1) { transition-delay: 0.15s; }
.ankh-drawer.is-open .ankh-menu > li:nth-child(2) { transition-delay: 0.21s; }
.ankh-drawer.is-open .ankh-menu > li:nth-child(3) { transition-delay: 0.27s; }
.ankh-drawer.is-open .ankh-menu > li:nth-child(4) { transition-delay: 0.33s; }
.ankh-drawer.is-open .ankh-menu > li:nth-child(5) { transition-delay: 0.39s; }
.ankh-drawer.is-open .ankh-menu > li:nth-child(6) { transition-delay: 0.45s; }
.ankh-drawer .ankh-menu-item { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; }
.ankh-drawer .ankh-menu-item > a {
	flex: 1;
	padding: 0.95rem 0;
	font-family: var(--wp--preset--font-family--geist);
	font-size: 1.125rem;
	font-weight: 500;
	letter-spacing: -0.01em;
	color: #fff;
	transition: color 0.2s ease, padding 0.3s var(--ankh-ease);
}
.ankh-drawer .ankh-menu-item > a:active, .ankh-drawer .ankh-menu-item > a:hover { color: var(--ankh-dourado-claro); padding-left: 0.35rem; }
.ankh-drawer .ankh-subtoggle { width: 36px; height: 36px; border: 1px solid rgba(255, 255, 255, 0.22); border-radius: 50%; color: #fff; }
.ankh-drawer .ankh-subtoggle:focus:not(:focus-visible) { outline: none; }
/* Áreas dentro de Soluções: lista simples e recuada, com um fio dourado à esquerda (sem caixas). */
.ankh-drawer .ankh-submenu { flex-basis: 100%; list-style: none; margin: -0.35rem 0 0.9rem; padding: 0 0 0 1rem; border-left: 1px solid rgba(199, 165, 116, 0.45); }
.ankh-drawer .ankh-submenu a {
	display: block; padding: 0.55rem 0;
	font-size: 1rem; font-weight: 400; color: rgba(255, 255, 255, 0.78);
}
.ankh-drawer .ankh-submenu a:hover { color: var(--ankh-dourado-claro); }
.ankh-drawer .is-current > a { color: var(--ankh-dourado-claro); }
.ankh-drawer .ankh-submenu[hidden] { display: none; }
.ankh-drawer-foot {
	margin-top: auto;
	display: grid; gap: 1.1rem;
	opacity: 0; transform: translateY(16px);
	transition: opacity 0.5s ease 0.45s, transform 0.6s var(--ankh-ease) 0.45s;
}
.ankh-drawer.is-open .ankh-drawer-foot { opacity: 1; transform: none; }
.ankh-drawer-cta { display: block; text-align: center; padding: 0.9rem 1.25rem !important; border-radius: 999px; text-decoration: none; background: var(--ankh-dourado-forte) !important; color: #fff !important; }
.ankh-drawer .ankh-social a { color: #fff !important; }
/* No menu o botão já é dourado e cheio: sem o contorno animado, que ali parecia um botão duplo. */
.ankh-drawer a.ankh-drawer-cta::before { content: none; }
.ankh-menu-close:focus:not(:focus-visible) { outline: none; }
.ankh-drawer .ankh-social { flex-wrap: nowrap; gap: 0.4rem; justify-content: center; }
.ankh-drawer-foot { justify-items: center; text-align: center; }
.ankh-drawer-cta { width: 100%; box-sizing: border-box; }
.ankh-drawer .ankh-social a { width: 40px; height: 40px; }
/* Celular e tablet: o menu é um cartão que desce do canto do botão, do tamanho do conteúdo
   (não ocupa a tela toda), com o site escurecido ao fundo. Se o conteúdo passar da tela, rola por dentro. */
@media (max-width: 1023px) {
	.ankh-drawer {
		inset: 8px 8px auto auto;
		width: min(400px, calc(100% - 16px));
		height: auto;
		max-height: calc(100dvh - 16px);
		gap: 0.75rem;
		padding: 0.75rem 1.25rem 1.25rem;
		border-radius: 22px;
		box-shadow: 0 24px 60px rgba(11, 34, 48, 0.45);
	}
	.ankh-drawer-foot { margin-top: 0.5rem; gap: 1rem; }
	.ankh-drawer .ankh-social { margin: 0; }
	.ankh-drawer-foot > p:empty { display: none; }
	.ankh-drawer .ankh-menu-item > a { padding-block: 0.8rem; }
	.ankh-drawer-backdrop:not([hidden]) { display: block; position: fixed; inset: 0; z-index: 69; background: rgba(11, 34, 48, 0.5); opacity: 0; transition: opacity 0.3s ease; }
	.ankh-drawer-backdrop.is-open { opacity: 1; }
	/* Com a barra do WordPress (usuário logado), o cartão começa abaixo dela. */
	.admin-bar .ankh-drawer { top: 54px; max-height: calc(100dvh - 62px); }
}
@media (min-width: 783px) and (max-width: 1023px) {
	.admin-bar .ankh-drawer { top: 40px; max-height: calc(100dvh - 48px); }
}
body.ankh-lock { overflow: hidden; }

/* Desktop: menu em linha, submenu suspenso */
@media (min-width: 1024px) {
	.ankh-header-cta { display: flex !important; }
	.ankh-menu-open, .ankh-drawer-head, .ankh-drawer-cta, .ankh-drawer-backdrop { display: none !important; }
	.ankh-drawer {
		position: static; width: auto; padding: 0; background: none; box-shadow: none; color: inherit;
		transform: none; visibility: visible; transition: none; overflow: visible; display: block; clip-path: none;
	}
	.ankh-drawer-foot { display: none !important; }
	.ankh-drawer .ankh-menu > li { opacity: 1; transform: none; border: 0; transition: none; }
	.ankh-drawer .ankh-menu-item > a { letter-spacing: 0; }
	.ankh-drawer .ankh-menu-item > a:hover { padding-left: 0.7rem; }
	.ankh-drawer .ankh-subtoggle { color: inherit; }
	.ankh-drawer .ankh-submenu { display: block; grid-template-columns: none; gap: 0; border-left: 0; }
	.ankh-drawer .ankh-submenu[hidden] { display: none; }
	.ankh-drawer .ankh-submenu a { border: 0; }
	.ankh-nav .ankh-menu { display: flex; align-items: center; gap: 0.25rem; }
	.ankh-nav .ankh-menu-item { position: relative; display: flex; align-items: center; }
	.ankh-nav .ankh-menu-item > a {
		padding: 0.5rem 0.7rem;
		border-radius: 8px;
		font-size: 0.95rem;
		font-weight: 500;
		color: var(--ankh-grafite);
		transition: color 0.2s ease;
	}
	.ankh-nav .ankh-menu-item > a:hover, .ankh-nav .is-current > a { color: var(--ankh-dourado); }
	.ankh-nav .has-children > a { padding-right: 0.15rem; }
	.ankh-nav .ankh-subtoggle { width: 28px; height: 28px; margin-left: -0.15rem; }
	.ankh-nav .ankh-submenu {
		position: absolute;
		top: calc(100% + 8px);
		left: 0;
		min-width: 220px;
		list-style: none;
		margin: 0;
		padding: 0.4rem;
		background: #fff;
		border: 1px solid var(--ankh-linha);
		border-radius: var(--ankh-radius);
		box-shadow: var(--ankh-shadow-hover);
	}
	.ankh-nav .ankh-submenu a { display: block; padding: 0.6rem 0.8rem; border-radius: 9px; font-size: 0.95rem; color: var(--ankh-grafite); }
	.ankh-nav .ankh-submenu a:hover { background: var(--ankh-mineral); color: var(--ankh-petroleo); }
	.ankh-nav .has-children:hover > .ankh-submenu,
	.ankh-nav .has-children:focus-within > .ankh-submenu { display: block !important; }
	.ankh-nav .has-children::after { content: ""; position: absolute; left: 0; right: 0; top: 100%; height: 10px; }
}

/* Trilha de navegação */
.ankh-breadcrumbs {
	max-width: var(--ankh-max);
	margin: 0 auto;
	padding: 0.7rem var(--ankh-gutter);
	box-sizing: border-box;
	font-size: var(--ankh-fs-meta);
	color: var(--ankh-suave);
}
.ankh-breadcrumbs a { color: var(--ankh-suave); text-decoration: none; }
.ankh-breadcrumbs a:hover { color: var(--ankh-petroleo); text-decoration: underline; }
.ankh-breadcrumbs .breadcrumb_last { color: var(--ankh-petroleo); }
p:has(> .ankh-breadcrumbs) { margin: 0; }

/* =========================================================
   Abertura (hero)
   ========================================================= */
.ankh-hero {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	margin: 0 !important;
	padding-block: clamp(3rem, 9vw, 5.5rem) clamp(2.75rem, 7vw, 4.5rem);
}
.ankh-hero-inner { position: relative; z-index: 2; }
.ankh-hero h1 {
	font-size: var(--ankh-h1) !important;
	line-height: 1.08 !important;
	letter-spacing: -0.035em !important;
	max-width: 22ch;
	margin: 0 !important;
	text-wrap: balance;
}
.ankh-hero .ankh-lead {
	margin: 1.1rem 0 0 !important;
	max-width: 58ch;
	font-size: var(--ankh-fs-lead) !important;
	line-height: 1.6;
	text-wrap: pretty;
}
.ankh-tagline {
	margin: 0 0 0.6rem !important;
	font-family: var(--wp--preset--font-family--geist);
	font-size: var(--ankh-fs-lead) !important;
	font-weight: 500;
	color: var(--ankh-dourado);
}
.ankh-hero-actions { margin-top: 1.75rem !important; gap: 0.65rem !important; }

/* Página inicial: assinatura em destaque */
.ankh-display {
	margin: 0 0 1rem !important;
	font-family: var(--wp--preset--font-family--geist);
	font-weight: 600;
	font-size: var(--ankh-h1) !important;
	line-height: 1.05;
	letter-spacing: -0.045em;
	max-width: 15ch;
	text-wrap: balance;
}
.ankh-display em {
	font-style: normal;
	background: linear-gradient(100deg, #E7CFA5 0%, var(--ankh-dourado-claro) 35%, #F5E6C8 50%, var(--ankh-dourado-claro) 65%, #B48A55 100%);
	background-size: 220% 100%;
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	animation: ankh-shine 8s ease-in-out infinite;
}
.ankh-hero h1.ankh-h1-sub {
	font-size: var(--ankh-fs-destaque) !important;
	font-weight: 500 !important;
	letter-spacing: -0.01em !important;
	line-height: 1.4 !important;
	max-width: 46ch;
	opacity: 0.92;
}
@keyframes ankh-shine { 0%, 100% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } }

/* Variante escura */
.ankh-hero--dark { background: var(--ankh-petroleo); color: #fff; }
.ankh-hero--dark h1, .ankh-hero--dark .ankh-display { color: #fff; }
.ankh-hero--dark .ankh-lead { color: rgba(255, 255, 255, 0.78); }
.ankh-hero--dark .ankh-eyebrow, .ankh-hero--dark .ankh-tagline { color: var(--ankh-dourado-claro); }
.ankh-hero--dark::before {
	content: "";
	position: absolute;
	z-index: 0;
	width: min(110vw, 860px);
	aspect-ratio: 1;
	right: -30%;
	top: -45%;
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(151, 115, 67, 0.38), rgba(151, 115, 67, 0) 70%);
	pointer-events: none;
	animation: ankh-float 18s ease-in-out infinite alternate;
}
.ankh-hero--dark .ankh-hero-inner::after {
	content: "";
	position: absolute;
	z-index: -1;
	right: var(--ankh-gutter);
	bottom: -2.5rem;
	width: clamp(150px, 26vw, 320px);
	aspect-ratio: 387 / 480;
	background: url("assets/img/simbolo-dourado.webp") center / contain no-repeat;
	opacity: 0.08;
	pointer-events: none;
}
@keyframes ankh-float { from { transform: translate3d(0, 0, 0); } to { transform: translate3d(-6%, 8%, 0) scale(1.06); } }

/* Variante clara */
.ankh-hero--light {
	background:
		radial-gradient(55% 90% at 100% 0%, rgba(151, 115, 67, 0.1), transparent 60%),
		#fff;
	border-bottom: 1px solid var(--ankh-linha);
	padding-block: clamp(2.5rem, 7vw, 4.25rem) clamp(2.25rem, 6vw, 3.5rem);
}

/* Botões */
/* Rótulos curtos em caixa alta e espaçados (botões, links de cartão, políticas):
   leitura rápida e acabamento mais institucional. Textos e títulos seguem normais. */
.wp-element-button, .wp-block-button__link, .ankh-drawer-cta, .ankh-readmore, div.wpforms-container-full button[type=submit], .ankh-card-link {
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-size: 0.8rem !important;
	font-weight: 600 !important;
}


/* Botões com resposta ao toque: sobem um pouco no hover e "afundam e voltam" ao clicar. */
.wp-element-button, .wp-block-button__link, .ankh-arrow, .ankh-consent-btn, .ankh-social a, div.wpforms-container-full button[type=submit] {
	transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}
@media (hover: hover) {
	.wp-element-button:hover, .wp-block-button__link:hover, div.wpforms-container-full button[type=submit]:hover { transform: translateY(-2px); }
}
.wp-element-button:active, .wp-block-button__link:active, .ankh-arrow:active, .ankh-consent-btn:active, .ankh-social a:active, div.wpforms-container-full button[type=submit]:active {
	transform: scale(0.95);
	transition-duration: 0.1s;
}

/* Botão principal (Solicitar proposta): contorno com uma luz dourada que percorre a borda. */
@property --ankh-angle { syntax: "<angle>"; initial-value: 0deg; inherits: false; }
a.wp-block-button__link[href*="solicitar-proposta"], a.ankh-drawer-cta { position: relative; isolation: isolate; }
a.wp-block-button__link[href*="solicitar-proposta"]::before, a.ankh-drawer-cta::before {
	content: "";
	position: absolute; inset: -5px; z-index: -1;
	padding: 1.5px;
	border-radius: 999px;
	background: conic-gradient(from var(--ankh-angle), rgba(199, 165, 116, 0.18) 0 35%, var(--ankh-dourado-claro) 60%, #fff 72%, var(--ankh-dourado-claro) 84%, rgba(199, 165, 116, 0.18) 100%);
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
	animation: ankh-orbit 3.5s linear infinite;
	pointer-events: none;
}
@keyframes ankh-orbit { to { --ankh-angle: 360deg; } }
/* Quando há dois botões juntos, o de contorno também ganha a luz que gira (em sentido contrário),
   para os dois terem o mesmo peso e o mesmo tamanho visual. Dourada no claro, branca no escuro. */
.wp-block-buttons:has(> .wp-block-button + .wp-block-button) .is-style-outline > a.wp-block-button__link { position: relative; isolation: isolate; }
.wp-block-buttons:has(> .wp-block-button + .wp-block-button) .is-style-outline > a.wp-block-button__link::before {
	content: "";
	position: absolute; inset: -5px; z-index: -1;
	padding: 1.5px;
	border-radius: 999px;
	background: conic-gradient(from var(--ankh-angle), rgba(131, 99, 56, 0.12) 0 40%, rgba(131, 99, 56, 0.85) 70%, rgba(131, 99, 56, 0.12) 100%);
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
	animation: ankh-orbit 5s linear infinite reverse;
	pointer-events: none;
}
:is(.ankh-hero--dark, .ankh-cta-band, .ankh-contact) .wp-block-buttons .is-style-outline > a.wp-block-button__link::before {
	background: conic-gradient(from var(--ankh-angle), rgba(255, 255, 255, 0.08) 0 40%, rgba(255, 255, 255, 0.75) 70%, rgba(255, 255, 255, 0.08) 100%);
}
/* Botão principal: sempre dourado, em qualquer fundo (no claro, escurece no hover). */
.wp-block-button:not(.is-style-outline) > .wp-block-button__link { background: var(--ankh-dourado-forte); color: #fff; }
.wp-block-button:not(.is-style-outline) > .wp-block-button__link:hover { background: var(--ankh-petroleo); color: #fff; }
/* Dois botões juntos: mesma largura, um ao lado do outro. No celular a letra fica um pouco mais justa
   para caber; abaixo de 360px eles empilham, ainda com a mesma largura. */
main .wp-block-buttons:has(> .wp-block-button + .wp-block-button) {
	display: inline-grid !important;
	grid-auto-flow: column;
	grid-auto-columns: 1fr;
	gap: 0.9rem !important;
}
main .wp-block-buttons:has(> .wp-block-button + .wp-block-button) > .wp-block-button { width: auto; margin: 0; }
main .wp-block-buttons:has(> .wp-block-button + .wp-block-button) .wp-block-button__link { display: block; width: 100%; box-sizing: border-box; text-align: center; white-space: nowrap; padding: 0.85rem 1.5rem !important; line-height: 1.2; }
/* Mesma borda nos dois, para terem exatamente a mesma altura. */
.wp-block-button:not(.is-style-outline) > .wp-block-button__link { border: 1.5px solid transparent; }
@media (max-width: 600px) {
	main .wp-block-buttons:has(> .wp-block-button + .wp-block-button) { display: grid !important; grid-auto-flow: row; grid-template-columns: 1fr; width: 100%; gap: 0.75rem !important; }
}
.is-style-outline > .wp-block-button__link { border-width: 1.5px !important; background: transparent; }
.ankh-hero--dark .wp-block-button:not(.is-style-outline) > .wp-block-button__link,
.ankh-cta-band .wp-block-button:not(.is-style-outline) > .wp-block-button__link,
.ankh-contact .wp-block-button:not(.is-style-outline) > .wp-block-button__link { background: var(--ankh-dourado-forte); color: #fff; }
.ankh-hero--dark .wp-block-button:not(.is-style-outline) > .wp-block-button__link:hover,
.ankh-cta-band .wp-block-button:not(.is-style-outline) > .wp-block-button__link:hover { background: #fff; color: var(--ankh-petroleo); }
.ankh-hero--dark .is-style-outline > .wp-block-button__link,
.ankh-cta-band .is-style-outline > .wp-block-button__link { color: #fff !important; border-color: rgba(255, 255, 255, 0.4) !important; }
.ankh-hero--dark .is-style-outline > .wp-block-button__link:hover,
.ankh-cta-band .is-style-outline > .wp-block-button__link:hover { background: #fff !important; color: var(--ankh-petroleo) !important; border-color: #fff !important; }

/* =========================================================
   Faixa animada: Eventos · Digital · Mídia · Negócios
   ========================================================= */
.ankh-marquee {
	margin: 0 !important;
	background: var(--ankh-dourado-claro);
	color: var(--ankh-petroleo);
	overflow: hidden;
	padding-block: clamp(0.7rem, 1.8vw, 0.9rem);
}
.ankh-marquee-text {
	display: flex;
	width: max-content;
	margin: 0 !important;
	font-family: var(--wp--preset--font-family--geist);
	font-size: clamp(0.78rem, 0.72rem + 0.25vw, 0.9rem) !important;
	font-weight: 600;
	line-height: 1 !important;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	white-space: nowrap;
	animation: ankh-marquee 45s linear infinite;
}
.ankh-marquee-set { display: flex; }
.ankh-marquee-set span { display: inline-flex; align-items: center; color: var(--ankh-petroleo); }
.ankh-marquee-set span::after {
	/* Símbolo da Ankh em branco (a imagem dourada serve de máscara). */
	content: "";
	width: 1.35em; height: 1.35em;
	margin-inline: 1.6em 1.4em;
	background: #fff;
	-webkit-mask: url("assets/img/simbolo-dourado.webp") center / contain no-repeat;
	mask: url("assets/img/simbolo-dourado.webp") center / contain no-repeat;
}
.ankh-marquee:hover .ankh-marquee-text { animation-play-state: paused; }
@keyframes ankh-marquee { to { transform: translate3d(-50%, 0, 0); } }

/* =========================================================
   Carrossel (CSS scroll-snap + ankh.js)
   ========================================================= */
.ankh-carousel { position: relative; }
.ankh-carousel .ankh-track {
	display: flex !important;
	gap: 1rem;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	scroll-padding-inline: var(--ankh-gutter);
	padding: 0.25rem var(--ankh-gutter) 1.25rem !important;
	margin: 0 calc(var(--ankh-gutter) * -1) !important;
	list-style: none;
	scrollbar-width: none;
}
.ankh-carousel .ankh-track::-webkit-scrollbar { display: none; }
.ankh-carousel .ankh-track > * {
	flex: 0 0 82%;
	scroll-snap-align: start;
	margin: 0 !important;
	box-sizing: border-box;
}
@media (min-width: 640px) { .ankh-carousel .ankh-track > * { flex-basis: calc((100% - 1rem) / 2); } }
@media (min-width: 1024px) {
	.ankh-carousel .ankh-track { gap: 1.25rem; }
	.ankh-carousel .ankh-track > * { flex-basis: calc((100% - 2.5rem) / 3); }
	.ankh-cards .ankh-track > * { flex-basis: calc((100% - 3.75rem) / 4); }
}
.ankh-carousel-ui { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.ankh-carousel-ui[hidden] { display: none; }
.ankh-dots { display: flex; gap: 0.5rem; flex-wrap: wrap; }
.ankh-dot {
	position: relative;
	width: 8px; height: 24px; padding: 0; border: 0; background: none; cursor: pointer;
	transition: width 0.35s var(--ankh-ease);
}
/* Bolinha de 8px, mas a área de toque tem 24px (WCAG 2.2). */
.ankh-dot::before { content: ""; position: absolute; left: 0; right: 0; top: 8px; height: 8px; border-radius: 99px; background: rgba(16, 45, 58, 0.18); transition: background-color 0.35s ease; }
.ankh-dot::after { content: ""; position: absolute; inset: 0 -8px; }
.ankh-dot[hidden] { display: none; }
.ankh-dot[aria-current="true"] { width: 24px; }
.ankh-dot[aria-current="true"]::before { background: var(--ankh-dourado); }
.ankh-arrows { display: flex; gap: 0.5rem; }
.ankh-arrow {
	display: grid; place-items: center;
	width: 44px; height: 44px; padding: 0;
	border: 1px solid var(--ankh-linha); border-radius: 50%;
	background: #fff; color: var(--ankh-petroleo); cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
}
.ankh-arrow:hover { background: var(--ankh-petroleo); color: #fff; border-color: var(--ankh-petroleo); }
.ankh-arrow[disabled] { opacity: 0.35; pointer-events: none; }
.ankh-arrow svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

/* Cartões (áreas e serviços) */
.ankh-cards .ankh-slide {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 100%;
	padding: 1.5rem !important;
	border-radius: var(--ankh-radius);
	background: #fff;
	border: 1px solid var(--ankh-linha);
	transition: transform 0.4s var(--ankh-ease), box-shadow 0.4s var(--ankh-ease), border-color 0.3s ease;
}
.ankh-cards .ankh-track { align-items: stretch; }
/* Cartão com foto (imagem destacada da página de destino): foto com zoom lento e texto claro por cima. */
.ankh-cards .ankh-slide.has-photo {
	min-height: clamp(340px, 52vw, 440px);
	justify-content: flex-end;
	overflow: hidden;
	isolation: isolate;
	border: 0;
	background: var(--ankh-petroleo);
	color: #fff;
}
.ankh-slide-photo {
	position: absolute; inset: 0; z-index: -1;
	background-size: cover; background-position: center;
	filter: saturate(0.75) contrast(1.05);
	animation: ankh-kenburns 14s ease-in-out infinite alternate;
}
/* Máscara de cor da marca sobre as fotos: um véu azul-petróleo com um toque dourado
   (modo "color") puxa qualquer foto para a paleta do site; o degradê garante a leitura do texto. */
.ankh-slide-photo::before, .ankh-album-item::before, .ankh-post-media:not(:empty)::before, .ankh-post-card .wp-block-post-featured-image::before {
	content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
	background: linear-gradient(135deg, rgba(16, 45, 58, 0.55), rgba(16, 45, 58, 0.25) 55%, rgba(151, 115, 67, 0.35));
	mix-blend-mode: color;
}
.ankh-slide-photo::after {
	content: ""; position: absolute; inset: 0; z-index: 2;
	background: linear-gradient(to top, rgba(11, 34, 48, 0.94) 0%, rgba(11, 34, 48, 0.55) 45%, rgba(11, 34, 48, 0.12) 100%);
}
@keyframes ankh-kenburns { from { transform: scale(1); } to { transform: scale(1.1); } }
.ankh-cards .ankh-slide.has-photo h3 { margin-top: auto !important; }
.ankh-cards .ankh-slide.has-photo h3, .ankh-cards .ankh-slide.has-photo h3 a, .ankh-cards .ankh-slide.has-photo .ankh-card-link, .ankh-cards .ankh-slide.has-photo .ankh-card-link a { color: #fff !important; }
.ankh-cards .ankh-slide.has-photo .ankh-card-link { margin-top: 1rem !important; }
.ankh-cards .ankh-slide.has-photo p { color: rgba(255, 255, 255, 0.82); }
.ankh-cards .ankh-slide.has-photo::before { z-index: 1; }
.ankh-cards .ankh-slide::before {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 3px;
	border-radius: var(--ankh-radius) var(--ankh-radius) 0 0;
	background: linear-gradient(90deg, var(--ankh-dourado), var(--ankh-dourado-claro));
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.5s var(--ankh-ease);
}
/* Brilho dourado que acompanha o mouse dentro do cartão (só com mouse; ver ankh.js). */
@media (hover: hover) and (pointer: fine) {
	.ankh-cards .ankh-slide, .ankh-pillar, .ankh-post-card > a { --mx: 50%; --my: 0%; }
	.ankh-cards .ankh-slide:hover, .ankh-pillar:hover {
		background: radial-gradient(420px circle at var(--mx) var(--my), rgba(199, 165, 116, 0.18), transparent 45%), #fff;
		border-color: rgba(151, 115, 67, 0.4);
	}
}
.ankh-cards .ankh-slide:hover { transform: translateY(-3px); box-shadow: var(--ankh-shadow-hover); border-color: rgba(151, 115, 67, 0.35); }
.ankh-cards .ankh-slide:hover::before, .ankh-cards .ankh-slide:focus-within::before { transform: scaleX(1); }
.ankh-cards h3 { margin: 0 0 0.5rem !important; font-size: var(--ankh-h3) !important; letter-spacing: -0.015em; line-height: 1.25; }
.ankh-cards h3 a { color: inherit; text-decoration: none; }
.ankh-cards h3 a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.ankh-cards .ankh-slide p { margin: 0; font-size: 0.95rem; line-height: 1.55; color: var(--ankh-suave); }
/* Link do cartão: mesmo rótulo de 12,8px dos botões e etiquetas, em dourado, para ler como ação secundária. */
.ankh-card-link { margin-top: auto !important; padding-top: 1rem; font-weight: 600; font-size: 0.8rem !important; }
.ankh-card-link a { color: var(--ankh-dourado-forte) !important; text-decoration: none; }
.ankh-card-link span { display: inline-block; transition: transform 0.3s var(--ankh-ease); }
.ankh-cards .ankh-slide:hover .ankh-card-link span { transform: translateX(4px); }
.ankh-card-num, .ankh-step-num {
	font-family: var(--wp--preset--font-family--geist);
	color: var(--ankh-dourado-forte) !important;
	font-weight: 600;
	font-size: var(--ankh-fs-label) !important;
	letter-spacing: 0.06em;
}

/* =========================================================
   Grades: pilares, etapas
   ========================================================= */
.ankh-grid { display: grid !important; gap: 1rem; grid-template-columns: 1fr; }
@media (min-width: 640px) { .ankh-grid--4, .ankh-grid--3 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) {
	.ankh-grid { gap: 1.25rem; }
	.ankh-grid--4 { grid-template-columns: repeat(4, 1fr); }
	.ankh-grid--3 { grid-template-columns: repeat(3, 1fr); }
}
.ankh-grid > * { margin: 0 !important; }
.ankh-pillar { padding: 1.35rem 1.35rem 1.5rem !important; border-radius: var(--ankh-radius); background: #fff; border: 1px solid var(--ankh-linha); }
.ankh-pillar h3 { margin: 0 0 0.45rem !important; font-size: var(--ankh-h3) !important; }
.ankh-pillar h3::before { content: ""; display: block; width: 22px; height: 2px; background: var(--ankh-dourado); margin-bottom: 0.9rem; }
.ankh-pillar p { margin: 0; font-size: 0.95rem; color: var(--ankh-suave); }

.ankh-step { position: relative; padding: 1.1rem 0 0 !important; border-top: 1px solid var(--ankh-linha); }
.ankh-step::before { content: ""; position: absolute; top: -1px; left: 0; width: 40px; height: 2px; background: var(--ankh-dourado); transition: width 0.9s var(--ankh-ease) var(--ankh-d, 0s); }
.ankh-step.is-visible::before { width: 100%; }
/* Com JavaScript: cada etapa abre depois da anterior (fio primeiro, depois número, título e texto). */
.ankh-js .ankh-step.ankh-reveal { opacity: 1; transform: none; }
.ankh-js .ankh-step::before { width: 0; }
.ankh-js .ankh-step.is-visible::before { width: 100%; }
.ankh-js .ankh-step > * { opacity: 0; transform: translateY(12px); transition: opacity 0.6s ease, transform 0.7s var(--ankh-ease); }
.ankh-js .ankh-step.is-visible > * { opacity: 1; transform: none; }
.ankh-js .ankh-step.is-visible > :nth-child(1) { transition-delay: calc(var(--ankh-d, 0s) + 0.35s); }
.ankh-js .ankh-step.is-visible > :nth-child(2) { transition-delay: calc(var(--ankh-d, 0s) + 0.5s); }
.ankh-js .ankh-step.is-visible > :nth-child(3) { transition-delay: calc(var(--ankh-d, 0s) + 0.65s); }
@media (prefers-reduced-motion: reduce) {
	.ankh-js .ankh-step > * { opacity: 1; transform: none; }
	.ankh-js .ankh-step::before { width: 100%; }
}
.ankh-step h3 { margin: 0.4rem 0 0.35rem !important; font-size: var(--ankh-h3) !important; }
.ankh-step p { margin: 0; font-size: var(--ankh-fs-small); color: var(--ankh-suave); }

/* Áreas em linhas (A Ankh e Atuação) */
.ankh-arealist { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--ankh-linha); }
.ankh-arealist li { border-bottom: 1px solid var(--ankh-linha); }
.ankh-arealist a {
	display: grid;
	grid-template-columns: 2.5rem 1fr auto;
	grid-template-areas: "num name go" "num desc go";
	align-items: center;
	column-gap: 1rem;
	padding: 1.1rem 0.25rem;
	text-decoration: none;
	color: inherit;
	transition: background-color 0.25s ease, padding 0.3s var(--ankh-ease);
}
.ankh-arealist a:hover { background: #fff; padding-inline: 0.75rem; }
.ankh-al-num { grid-area: num; font: 600 var(--ankh-fs-label)/1 var(--wp--preset--font-family--geist); color: var(--ankh-dourado-forte); }
.ankh-al-name { grid-area: name; font: 600 var(--ankh-h3)/1.3 var(--wp--preset--font-family--geist); color: var(--ankh-petroleo); letter-spacing: -0.015em; }
.ankh-al-desc { grid-area: desc; font-size: 0.95rem; color: var(--ankh-suave); margin-top: 0.15rem; }
.ankh-al-go { grid-area: go; color: var(--ankh-dourado); font-size: 1.2rem; transition: transform 0.3s var(--ankh-ease); }
.ankh-arealist a:hover .ankh-al-go { transform: translateX(4px); }
@media (min-width: 782px) {
	.ankh-arealist a { grid-template-columns: 3rem minmax(180px, 0.6fr) 1fr auto; grid-template-areas: "num name desc go"; }
	.ankh-arealist--large a { padding-block: 1.6rem; }
	.ankh-al-desc { margin-top: 0; }
}

/* Subpáginas de serviço (lista automática nas áreas) */
.ankh-subgroup { margin: 1.75rem 0 0.75rem !important; font-size: var(--ankh-h3) !important; color: var(--ankh-suave) !important; font-weight: 600 !important; }
.ankh-sublist { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.75rem; }
@media (min-width: 640px) { .ankh-sublist { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .ankh-sublist { grid-template-columns: repeat(3, 1fr); } }
.ankh-sublist a {
	display: block; height: 100%; box-sizing: border-box;
	padding: 1.1rem 1.25rem; border-radius: var(--ankh-radius-s);
	background: #fff; border: 1px solid var(--ankh-linha);
	text-decoration: none; color: inherit;
	transition: border-color 0.2s ease, box-shadow 0.3s ease;
}
.ankh-sublist a:hover { border-color: rgba(151, 115, 67, 0.45); box-shadow: var(--ankh-shadow); }
.ankh-sublist strong { display: block; color: var(--ankh-petroleo); font-family: var(--wp--preset--font-family--geist); font-weight: 600; }
.ankh-sublist span { display: block; margin-top: 0.3rem; font-size: var(--ankh-fs-small); color: var(--ankh-suave); }
.ankh-sublist--compact a { padding: 0.85rem 1rem; }

/* =========================================================
   Texto editorial (áreas) e texto corrido (A Ankh, legais, artigos)
   ========================================================= */
.ankh-ed-intro {
	max-width: 900px;
	margin: 0 0 clamp(2.25rem, 5vw, 3.5rem) !important;
	font-family: var(--wp--preset--font-family--geist);
	font-size: var(--ankh-fs-destaque);
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: -0.022em;
	color: var(--ankh-petroleo);
	text-wrap: pretty;
}
.ankh-ed-intro p { margin: 0 0 1rem; }
.ankh-ed-intro p:last-child { margin-bottom: 0; }

/* Faixa de destaque: a frase de abertura em tela cheia, no azul do topo.
   As palavras acendem conforme a pessoa rola a página (ankh.js). */
.ankh-statement {
	background:
		radial-gradient(60% 80% at 85% 0%, rgba(199, 165, 116, 0.16), transparent 70%),
		radial-gradient(50% 70% at 0% 100%, rgba(255, 255, 255, 0.05), transparent 70%),
		var(--ankh-petroleo);
	color: #fff;
	overflow: hidden;
}
.ankh-statement .ankh-ed-intro {
	max-width: 760px;
	margin: 0 !important;
	font-size: var(--ankh-fs-destaque);
	line-height: 1.55;
	letter-spacing: -0.015em;
	color: #fff;
}
.ankh-statement .ankh-ed-intro::before {
	content: "";
	display: block;
	width: 56px; height: 3px;
	margin-bottom: clamp(1.5rem, 4vw, 2.25rem);
	border-radius: 3px;
	background: var(--ankh-dourado-claro);
}
.ankh-js .ankh-statement .ankh-w { color: rgba(255, 255, 255, 0.2); transition: color 0.35s ease; }
.ankh-js .ankh-statement .ankh-w.is-on { color: #fff; }
.ankh-js .ankh-statement .ankh-s2 .ankh-w.is-on { color: var(--ankh-dourado-claro); }

.ankh-ed-row {
	gap: clamp(0.25rem, 4vw, 3.5rem) !important;
	padding-block: clamp(1.5rem, 4vw, 2.5rem);
	border-top: 1px solid var(--ankh-linha);
	margin: 0 !important;
}
.ankh-ed-row > .wp-block-column:first-child { flex-basis: 36% !important; }
.ankh-ed-row > .wp-block-column:last-child { flex-basis: 64% !important; }
.ankh-ed-title { font-size: var(--ankh-h3) !important; letter-spacing: -0.025em !important; line-height: 1.25 !important; text-wrap: balance; margin: 0 !important; }
@media (min-width: 782px) { .ankh-ed-title { position: sticky; top: calc(var(--ankh-header-h) + 24px); } }
.ankh-ed-row p { margin: 0 0 1rem; text-wrap: pretty; }
.ankh-ed-row p:last-child { margin-bottom: 0; }
/* Perguntas do texto longo como itens que abrem e fecham (ankh.js), no padrão das perguntas frequentes. */
.ankh-js .ankh-ed-row.ankh-acc {
	display: block !important;
	padding: 0;
	border: 1px solid var(--ankh-linha);
	border-radius: 16px;
	background: #fff;
	transition: box-shadow 0.35s ease, border-color 0.35s ease;
}
.ankh-js .ankh-ed-row.ankh-acc + .ankh-ed-row.ankh-acc { margin-top: 0.6rem !important; }
.ankh-js .ankh-ed-row.ankh-acc.is-open { border-color: rgba(151, 115, 67, 0.4); box-shadow: var(--ankh-shadow); }
.ankh-js .ankh-ed-row.ankh-acc > .wp-block-column { flex-basis: auto !important; }
.ankh-js .ankh-acc .ankh-ed-title { position: static; }
.ankh-acc-btn {
	position: relative; display: block; width: 100%;
	padding: 1.15rem 3.5rem 1.15rem 1.25rem;
	border: 0; background: none; text-align: left;
	font: inherit; color: var(--ankh-petroleo); cursor: pointer;
	-webkit-tap-highlight-color: transparent;
}
.ankh-acc-btn:focus { outline: none; }
.ankh-acc-btn:focus-visible { outline: 2px solid var(--ankh-dourado); outline-offset: -2px; border-radius: 16px; }
.ankh-acc-btn::after {
	content: ""; position: absolute; right: 1.35rem; top: 50%;
	width: 9px; height: 9px;
	border-right: 2px solid var(--ankh-dourado); border-bottom: 2px solid var(--ankh-dourado);
	transform: translateY(-70%) rotate(45deg); transition: transform 0.4s var(--ankh-ease);
}
.ankh-acc-btn[aria-expanded="true"]::after { transform: translateY(-30%) rotate(-135deg); }
.ankh-acc-body { overflow: hidden; padding: 0 1.25rem 1.25rem; color: var(--ankh-grafite); }
.ankh-acc-body[hidden] { display: none !important; }
.ankh-editorial a, .ankh-prose a { text-decoration-color: rgba(151, 115, 67, 0.55); text-underline-offset: 0.2em; }
.ankh-closing {
	margin: clamp(1.5rem, 4vw, 2.25rem) 0 0 !important;
	padding: clamp(1.25rem, 3vw, 1.75rem);
	border-radius: var(--ankh-radius);
	background: #fff;
	border: 1px solid var(--ankh-linha);
	font-family: var(--wp--preset--font-family--geist);
	font-size: var(--ankh-fs-lead);
	line-height: 1.55;
	color: var(--ankh-petroleo);
}
.ankh-closing::before { content: ""; display: block; width: 40px; height: 2px; margin-bottom: 0.9rem; border-radius: 2px; background: var(--ankh-dourado); }
.ankh-fade { position: relative; max-height: 300px; overflow: hidden; }
.ankh-fade::after { content: ""; position: absolute; inset: auto 0 0; height: 120px; background: linear-gradient(rgba(255, 255, 255, 0), #fff); }
.ankh-editorial [hidden] { display: none !important; }
.ankh-readmore {
	display: block; width: 100%; margin-top: 1rem; padding: 0.85rem 1.25rem;
	border: 1.5px solid var(--ankh-petroleo); border-radius: 999px;
	background: #fff; color: var(--ankh-petroleo);
	font: 500 0.98rem/1 var(--wp--preset--font-family--geist); cursor: pointer;
}

.ankh-prose { max-width: var(--ankh-text); margin-inline: auto; }
.ankh-prose > * + * { margin-top: 1rem; }
.ankh-prose h2 { font-size: var(--ankh-h2) !important; margin: 2.25rem 0 0.75rem !important; letter-spacing: -0.025em; }
.ankh-prose h3 { font-size: var(--ankh-h3) !important; margin: 1.75rem 0 0.5rem !important; }
.ankh-prose p, .ankh-prose li { text-wrap: pretty; }
.ankh-story .ankh-prose > p:first-child { font-size: var(--ankh-fs-destaque); color: var(--ankh-petroleo); }
.ankh-checklist { list-style: none; padding-left: 0 !important; }
.ankh-checklist li { position: relative; padding-left: 1.6rem; margin: 0.5rem 0; }
.ankh-checklist li::before { content: ""; position: absolute; left: 0; top: 0.55em; width: 10px; height: 6px; border-left: 2px solid var(--ankh-dourado); border-bottom: 2px solid var(--ankh-dourado); transform: rotate(-45deg); }
.ankh-toc { padding: 1rem 1.25rem; border-radius: var(--ankh-radius-s); background: #fff; border: 1px solid var(--ankh-linha); font-size: 0.95rem; }
.ankh-toc p { margin: 0 0 0.4rem; font-weight: 600; color: var(--ankh-petroleo); }
.ankh-toc ol { margin: 0; padding-left: 1.2rem; }
.ankh-toc li { margin: 0.25rem 0; }

/* =========================================================
   Depoimentos
   ========================================================= */
.ankh-t {
	display: flex;
	flex-direction: column;
	margin: 0;
	padding: clamp(1.35rem, 3vw, 1.75rem) !important;
	border-radius: var(--ankh-radius);
	background: #fff;
	box-shadow: var(--ankh-shadow);
}
.ankh-t-service { margin: 0 0 0.75rem !important; font-size: var(--ankh-fs-label); font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ankh-dourado-forte); }
.ankh-t-text { margin: 0 0 1.25rem; padding: 0; border: 0; font-size: var(--ankh-fs-body); line-height: 1.6; color: var(--ankh-grafite); }
.ankh-t-text p { margin: 0 0 0.6rem; }
.ankh-t-who { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: auto; padding-top: 1rem; border-top: 1px solid var(--ankh-linha); }
.ankh-t-id { display: flex; flex-direction: column; font-size: var(--ankh-fs-meta); color: var(--ankh-suave); line-height: 1.4; }
.ankh-t-id strong { color: var(--ankh-petroleo); font-size: var(--ankh-fs-small); }
.ankh-t-photo { flex: 0 0 48px; width: 48px; height: 48px; border-radius: 50%; object-fit: cover; }
.ankh-t-initials { display: grid; place-items: center; background: var(--ankh-mineral); color: var(--ankh-petroleo); font: 600 0.9rem/1 var(--wp--preset--font-family--geist); }

/* =========================================================
   Álbum de fotos (página A Ankh): carrossel de fotos grandes, legenda sobre a foto
   ========================================================= */
.ankh-album-section { background: var(--ankh-petroleo); color: #fff; }
.ankh-album-section .ankh-section-title { color: #fff; }
.ankh-album-section .ankh-eyebrow { color: var(--ankh-dourado-claro); }
.ankh-album .ankh-track > * { flex-basis: 86%; }
@media (min-width: 640px) { .ankh-album .ankh-track > * { flex-basis: calc((100% - 1rem) / 2); } }
@media (min-width: 1024px) { .ankh-album .ankh-track > * { flex-basis: calc((100% - 1.25rem) / 2); } }
.ankh-album-item { position: relative; margin: 0; aspect-ratio: 3 / 2; overflow: hidden; border-radius: var(--ankh-radius); background: var(--ankh-petroleo-2); }
.ankh-album-item img, .ankh-post-media img, .ankh-post-card .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; display: block; filter: saturate(0.8) contrast(1.05); transform: scale(1.04); transition: transform 1.2s var(--ankh-ease); }
.ankh-album-item:hover img { transform: scale(1.09); }
.ankh-album-item figcaption {
	position: absolute; left: 0; right: 0; bottom: 0; z-index: 2;
	padding: 2.5rem 1.1rem 0.9rem;
	background: linear-gradient(to top, rgba(11, 34, 48, 0.85), transparent);
	font-family: var(--wp--preset--font-family--geist);
	font-size: 0.8rem; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase;
	color: #fff;
}
.ankh-album-section .ankh-dot::before { background: rgba(255, 255, 255, 0.25); }
.ankh-album-section .ankh-dot[aria-current="true"]::before { background: var(--ankh-dourado-claro); }
@media (prefers-reduced-motion: reduce) { .ankh-album-item img { transform: none; transition: none; } }

/* =========================================================
   Blog: vitrine editorial e lista
   ========================================================= */
.ankh-post-card { margin: 0; }
.ankh-posts-carousel .ankh-post-card > a { padding-bottom: 0.25rem; }
/* Celular: dois artigos por vez (carrossel e lista do Blog), com data e categoria mais compactas. */
@media (max-width: 639px) {
	.ankh-posts-carousel .ankh-track { gap: 0.75rem; }
	.ankh-posts-carousel .ankh-track > * { flex-basis: calc((100% - 0.75rem) / 2); }
	.ankh-posts-grid { grid-template-columns: 1fr 1fr !important; gap: 1.5rem 0.75rem !important; }
	:is(.ankh-posts-carousel, .ankh-posts-grid) .ankh-post-card :is(.ankh-post-media, .wp-block-post-featured-image) { margin-bottom: 0.7rem !important; }
	:is(.ankh-posts-carousel, .ankh-posts-grid) .ankh-kicker { margin-bottom: 0.35rem !important; letter-spacing: 0.1em; }
	/* Em meia tela, o título do artigo usa 16px (no tamanho normal ficaria com 5 ou 6 linhas). */
	:is(.ankh-posts-carousel, .ankh-posts-grid) .ankh-post-body :is(h3, .wp-block-post-title) { font-size: 1rem !important; line-height: 1.3; }
	:is(.ankh-posts-carousel, .ankh-posts-grid) .ankh-post-body :is(time, .wp-block-post-date) { font-size: 0.8rem; }
}
.ankh-post-card > a, .ankh-post-card.wp-block-group { display: flex; flex-direction: column; height: 100%; text-decoration: none; color: inherit; }
.ankh-post-media, .ankh-post-card .wp-block-post-featured-image {
	position: relative;
	margin: 0 0 1rem !important;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	border-radius: var(--ankh-radius-s);
	background: linear-gradient(140deg, var(--ankh-mineral), #f3f5f4);
}
.ankh-post-media:empty {
	/* Artigo sem imagem destacada: painel com o símbolo da Ankh. */
	background: radial-gradient(circle at 75% 20%, rgba(199, 165, 116, 0.22), transparent 55%), var(--ankh-petroleo) url("assets/img/simbolo-dourado.webp") center / 56px no-repeat;
}
.ankh-post-media img, .ankh-post-card .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.7s var(--ankh-ease); }
.ankh-post-card:hover img { transform: scale(1.03); }
.ankh-post-body { display: flex; flex-direction: column; gap: 0.35rem; }
.ankh-post-body .ankh-kicker { margin: 0 !important; font-size: 0.8rem !important; }
.ankh-post-body .ankh-kicker a { color: inherit; text-decoration: none; }
.ankh-post-body h3, .ankh-post-body .wp-block-post-title { margin: 0 !important; font-size: var(--ankh-h3) !important; line-height: 1.3; letter-spacing: -0.015em; }
.ankh-post-body h3 a, .ankh-post-body .wp-block-post-title a { color: var(--ankh-petroleo); text-decoration: none; }
.ankh-post-card:hover h3, .ankh-post-body .wp-block-post-title a:hover { color: var(--ankh-dourado); }
.ankh-post-body time, .ankh-post-body .wp-block-post-date { font-size: var(--ankh-fs-meta); color: var(--ankh-suave); }
.ankh-pagination { margin-top: 2rem; gap: 0.5rem; font-weight: 500; }
.ankh-pagination .page-numbers { display: inline-grid; place-items: center; min-width: 40px; height: 40px; padding: 0 0.6rem; border-radius: 999px; border: 1px solid var(--ankh-linha); text-decoration: none; box-sizing: border-box; }
.ankh-pagination .page-numbers.current { background: var(--ankh-petroleo); border-color: var(--ankh-petroleo); color: #fff; }
.ankh-empty { padding: 1.5rem; border-radius: var(--ankh-radius); border: 1px dashed rgba(151, 115, 67, 0.5); background: #fff; color: var(--ankh-petroleo); }
.ankh-bloglist .wp-block-query { margin: 0; }

/* Artigo */
.ankh-article-head { padding-block: clamp(1.5rem, 4vw, 2.5rem) 1.5rem; }
.ankh-article-head .wp-block-post-title { font-size: var(--ankh-h1) !important; line-height: 1.12; letter-spacing: -0.035em; margin: 0.25rem 0 0.75rem !important; text-wrap: balance; }
.ankh-article-head .ankh-kicker a { display: inline-block; padding-block: 0.4rem; color: inherit; text-decoration: none; }
.ankh-article-meta * { font-size: inherit !important; }
.ankh-article-meta { gap: 0.75rem; font-size: var(--ankh-fs-meta); color: var(--ankh-suave); }
.ankh-article-meta > * { margin: 0 !important; }
.ankh-article-image { margin: 0 auto 2rem !important; }
.ankh-article-image img { border-radius: var(--ankh-radius); width: 100%; }
.ankh-article .ankh-prose { padding-bottom: var(--ankh-pad-m); font-size: var(--ankh-fs-body); line-height: 1.75; }
/* Artigos: devolve o ritmo do texto que a regra das páginas (seções coladas) zera. */
.ankh-article .ankh-prose .wp-block-post-content > * + * { margin-block-start: 1rem !important; }
.ankh-article .ankh-prose .wp-block-post-content > h2 { margin-block: 2.25rem 0.75rem !important; }
.ankh-article .ankh-prose .wp-block-post-content > h3 { margin-block: 1.75rem 0.5rem !important; }
.ankh-article .ankh-prose .wp-block-post-content > :is(ul, ol) { padding-left: 1.25rem; }
.ankh-archive-head { padding-block: clamp(1.5rem, 4vw, 2.5rem) 2rem; }
.ankh-archive-head h1 { font-size: var(--ankh-h1) !important; margin: 0 !important; }
.ankh-archive .ankh-wrap + .ankh-wrap { padding-bottom: var(--ankh-pad-m); }

/* =========================================================
   Portfólio
   ========================================================= */
.ankh-filters { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 0 0 1.5rem; }
.ankh-chip {
	padding: 0.5rem 1rem; border-radius: 99px;
	border: 1px solid var(--ankh-linha); background: #fff; color: var(--ankh-grafite);
	font: 500 0.92rem/1 var(--wp--preset--font-family--inter); cursor: pointer; transition: all 0.2s ease;
}
.ankh-chip:hover { border-color: var(--ankh-dourado); }
.ankh-chip.is-active { background: var(--ankh-petroleo); color: #fff; border-color: var(--ankh-petroleo); }
.ankh-project[hidden] { display: none !important; }
/* Filtros: rolam de lado no celular, sem quebrar em várias linhas. */
@media (max-width: 639px) {
	.ankh-filters { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-inline: calc(var(--ankh-gutter) * -1); padding-inline: var(--ankh-gutter); }
	.ankh-filters::-webkit-scrollbar { display: none; }
	.ankh-chip { flex: none; }
}
.ankh-chip { font-size: var(--ankh-fs-small) !important; min-height: 40px; }
.ankh-filter-search { position: relative; display: flex; align-items: center; flex: 1 1 220px; max-width: 320px; margin-left: auto; }
.ankh-filter-search svg { position: absolute; left: 0.9rem; width: 18px; height: 18px; color: var(--ankh-suave); pointer-events: none; }
.ankh-filter-search input { width: 100%; min-height: 40px; padding: 0.5rem 1rem 0.5rem 2.5rem; border: 1px solid var(--ankh-linha); border-radius: 99px; background: #fff; font: 400 var(--ankh-fs-small)/1.2 var(--wp--preset--font-family--inter); color: var(--ankh-grafite); box-sizing: border-box; }
.ankh-filter-search input::-webkit-search-cancel-button { filter: grayscale(1); opacity: 0.6; }
.ankh-filter-search input:focus { outline: 2px solid var(--ankh-dourado); outline-offset: 1px; border-color: transparent; }
@media (max-width: 639px) { .ankh-filter-search { flex: none; order: -1; width: calc(100vw - var(--ankh-gutter) * 2); max-width: none; margin: 0 0 0.25rem; } .ankh-filters:has(.ankh-filter-search) { flex-wrap: wrap; overflow: visible; margin-inline: 0; padding-inline: 0; } }
.ankh-filter-empty { margin: 0 0 1rem; color: var(--ankh-suave); font-size: var(--ankh-fs-small); }
.ankh-posts-grid > li[hidden], .ankh-services-list > li[hidden] { display: none !important; }
/* Lista de todos os serviços (página Soluções) */
.ankh-services-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.75rem; }
@media (min-width: 640px) { .ankh-services-list { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .ankh-services-list { grid-template-columns: repeat(3, 1fr); } }
.ankh-services-list a { display: flex; flex-direction: column; gap: 0.35rem; height: 100%; box-sizing: border-box; padding: 1.1rem 1.25rem; border: 1px solid var(--ankh-linha); border-radius: var(--ankh-radius); background: #fff; color: inherit; text-decoration: none; transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.3s var(--ankh-ease); }
.ankh-services-list a:hover { border-color: rgba(151, 115, 67, 0.45); box-shadow: var(--ankh-shadow); transform: translateY(-2px); }
.ankh-services-list .ankh-kicker { margin: 0 !important; }
.ankh-services-list strong { font: 600 var(--ankh-h3)/1.3 var(--wp--preset--font-family--geist); color: var(--ankh-petroleo); }
.ankh-svc-desc { font-size: var(--ankh-fs-small); color: var(--ankh-suave); }
.ankh-project-link { display: flex; flex-direction: column; height: 100%; text-decoration: none; color: inherit; border-radius: var(--ankh-radius); background: #fff; border: 1px solid var(--ankh-linha); overflow: hidden; transition: box-shadow 0.3s ease, transform 0.4s var(--ankh-ease); }
.ankh-project-link:hover { transform: translateY(-3px); box-shadow: var(--ankh-shadow-hover); }
.ankh-project-media { aspect-ratio: 4 / 3; background: var(--ankh-mineral); }
.ankh-project-media img { width: 100%; height: 100%; object-fit: cover; }
.ankh-project-body { padding: 1.1rem 1.25rem 1.35rem; }
.ankh-project-body h3 { margin: 0.2rem 0 0.35rem !important; font-size: var(--ankh-h3) !important; color: var(--ankh-petroleo); }
.ankh-project-meta { margin: 0; font-size: var(--ankh-fs-meta); color: var(--ankh-suave); }
.ankh-project-layout { display: grid !important; gap: 2rem; padding-bottom: var(--ankh-pad-m); }
@media (min-width: 1024px) { .ankh-project-layout { grid-template-columns: 1fr 320px; align-items: start; } }
.ankh-project-facts { padding: 1.25rem 1.35rem; border-radius: var(--ankh-radius); background: #fff; border: 1px solid var(--ankh-linha); }
.ankh-project-facts h2 { margin: 0 0 0.75rem !important; font-size: var(--ankh-h2) !important; }
.ankh-project-facts dt { font-weight: 600; color: var(--ankh-petroleo); font-size: var(--ankh-fs-meta); margin-top: 0.75rem; }
.ankh-project-facts dd { margin: 0.15rem 0 0; font-size: var(--ankh-fs-small); }

/* =========================================================
   Perguntas frequentes
   ========================================================= */
.ankh-faq { max-width: 820px; }
.ankh-faq-group { margin: 2rem 0 0.5rem !important; font-size: var(--ankh-h2) !important; }
.ankh-faq-page .ankh-faq-group:first-child { margin-top: 0 !important; }
.ankh-faq-item {
	margin: 0 !important;
	border-radius: var(--ankh-radius);
	background: transparent;
	transition: background-color 0.35s ease, box-shadow 0.35s ease;
}
.ankh-faq-item:nth-of-type(odd) { background: var(--ankh-mineral); }
.ankh-faq-item + .ankh-faq-item { margin-top: 4px !important; }
.ankh-faq-item[open] { background: #fff; box-shadow: 0 0 0 1px rgba(151, 115, 67, 0.35), var(--ankh-shadow); }
.ankh-faq-item summary {
	position: relative; list-style: none; cursor: pointer;
	padding: 1.05rem 3.25rem 1.05rem 1.15rem;
	border-radius: var(--ankh-radius);
	font-family: var(--wp--preset--font-family--geist);
	font-size: var(--ankh-h3); font-weight: 600; line-height: 1.35; letter-spacing: -0.01em;
	color: var(--ankh-petroleo);
	-webkit-tap-highlight-color: transparent;
}
.ankh-faq-item summary:focus { outline: none; }
.ankh-faq-item summary:focus-visible { outline: 2px solid var(--ankh-dourado); outline-offset: -2px; border-radius: var(--ankh-radius); }
.ankh-faq-item summary::-webkit-details-marker { display: none; }
.ankh-faq-item summary::after {
	content: ""; position: absolute; right: 1.25rem; top: 50%;
	width: 9px; height: 9px;
	border-right: 2px solid var(--ankh-dourado); border-bottom: 2px solid var(--ankh-dourado);
	transform: translateY(-70%) rotate(45deg); transition: transform 0.4s var(--ankh-ease);
}
.ankh-faq-item[open] summary::after { transform: translateY(-30%) rotate(-135deg); }
.ankh-faq-answer { box-sizing: border-box; overflow: hidden; padding: 0 1.15rem 1.15rem; max-width: 68ch; color: var(--ankh-grafite); line-height: 1.6; }
.ankh-faq-answer p { margin: 0 0 0.6rem; }
.ankh-faq-answer p:last-child { margin-bottom: 0; }

/* =========================================================
   Fale conosco + formulário (compacto)
   ========================================================= */
.ankh-contact { background: var(--ankh-petroleo); color: #fff; overflow: hidden; }
.ankh-contact .ankh-section-title { color: #fff; }
.ankh-contact .ankh-section-intro { color: rgba(255, 255, 255, 0.72); }
.ankh-contact .ankh-eyebrow { color: var(--ankh-dourado-claro); }
.ankh-contact-cols { gap: clamp(1.5rem, 5vw, 4rem) !important; align-items: flex-start !important; margin: 0 !important; }
@media (min-width: 782px) {
	.ankh-contact-cols > .wp-block-column:first-child { flex-basis: 38% !important; }
	.ankh-contact-cols > .wp-block-column:last-child { flex-basis: 62% !important; }
}
.ankh-channels { display: grid; gap: 0.6rem; margin-top: 1.5rem; }
.ankh-channel { margin: 0 !important; padding: 0.8rem 1rem; border-radius: var(--ankh-radius-s); background: rgba(255, 255, 255, 0.06); border: 1px solid rgba(255, 255, 255, 0.1); font-size: 0.95rem; color: rgba(255, 255, 255, 0.85); }
.ankh-channel a { color: #fff; text-decoration: none; font-weight: 500; }
.ankh-channel a:hover { color: var(--ankh-dourado-claro); }
.ankh-ch-label { display: block; font-size: var(--ankh-fs-label); font-weight: 600; color: var(--ankh-dourado-claro); margin-bottom: 0.15rem; }
.ankh-form-card { padding: clamp(1.15rem, 3vw, 1.75rem) !important; border-radius: calc(var(--ankh-radius) + 2px); background: #fff; color: var(--ankh-grafite); box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22); }

/* WPForms */
.ankh-form-card .wpforms-container { margin: 0 !important; }
.ankh-form-card .wpforms-field-container { display: grid; grid-template-columns: 1fr; column-gap: 0.75rem; }
@media (min-width: 640px) {
	.ankh-form-card .wpforms-field-container { grid-template-columns: 1fr 1fr; }
	.ankh-form-card .wpforms-field { grid-column: 1 / -1; }
	.ankh-form-card .wpforms-field.ankh-half { grid-column: auto; }
}
.ankh-form-card .wpforms-field { padding: 0 0 0.8rem !important; }
.ankh-form-card .wpforms-field-hidden { display: none !important; }
.ankh-form-card .wpforms-field-label { font: 600 0.84rem/1.3 var(--wp--preset--font-family--inter) !important; color: var(--ankh-petroleo) !important; margin-bottom: 0.3rem !important; }
.ankh-form-card input[type="text"], .ankh-form-card input[type="email"], .ankh-form-card input[type="tel"], .ankh-form-card input[type="url"], .ankh-form-card select, .ankh-form-card textarea {
	width: 100% !important; max-width: 100% !important; min-height: 46px;
	padding: 0.65rem 0.85rem !important;
	border: 1px solid rgba(16, 45, 58, 0.18) !important; border-radius: var(--ankh-radius-s) !important;
	background: var(--ankh-offwhite) !important;
	font: 400 1rem/1.4 var(--wp--preset--font-family--inter) !important; color: var(--ankh-grafite) !important;
	box-shadow: none !important; transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}
.ankh-form-card textarea { min-height: 96px !important; height: 96px; }
.ankh-form-card input:focus, .ankh-form-card select:focus, .ankh-form-card textarea:focus { border-color: var(--ankh-dourado) !important; background: #fff !important; box-shadow: 0 0 0 4px rgba(151, 115, 67, 0.15) !important; outline: none; }
.ankh-form-card .wpforms-field-checkbox ul { margin: 0 !important; }
.ankh-form-card .wpforms-field-checkbox li label { font-size: 0.86rem !important; }
.ankh-form-card .wpforms-field-description { font-size: 0.8rem !important; color: var(--ankh-suave) !important; margin-top: 0.25rem !important; }
.ankh-form-card .wpforms-submit-container { padding-top: 0.25rem !important; }
.ankh-form-card button[type="submit"] {
	width: 100%; min-height: 50px; padding: 0.8rem 1.5rem !important;
	border: 0 !important; border-radius: 999px !important;
	background: var(--ankh-petroleo) !important; color: #fff !important;
	font: 500 1rem/1 var(--wp--preset--font-family--geist) !important; cursor: pointer;
	transition: background-color 0.25s ease;
}
.ankh-form-card button[type="submit"]:hover { background: var(--ankh-dourado) !important; }
.ankh-form-card .wpforms-confirmation-container-full { border: 0 !important; border-radius: var(--ankh-radius-s); background: var(--ankh-mineral) !important; color: var(--ankh-petroleo) !important; padding: 1.1rem !important; }
.ankh-form-card .wpforms-error-container, .ankh-form-card label.wpforms-error, .ankh-form-card em.wpforms-error { color: #A33A2B !important; font-size: 0.84rem !important; }
.ankh-form-fallback p { margin: 0 0 0.6rem; }

/* =========================================================
   Chamadas finais
   ========================================================= */
.ankh-cta-band { background: radial-gradient(60% 120% at 100% 0%, rgba(151, 115, 67, 0.35), transparent 60%), var(--ankh-petroleo); color: #fff; }
.ankh-cta-band .ankh-section-title { color: #fff; max-width: 22ch; }
.ankh-cta-band .ankh-section-intro { color: rgba(255, 255, 255, 0.75); }
.ankh-cta-band .ankh-eyebrow { color: var(--ankh-dourado-claro); }
.ankh-cta-band .wp-block-buttons { margin-top: 1.5rem; gap: 0.65rem; }

.ankh-cta-strip { background: var(--ankh-offwhite); border-top: 1px solid var(--ankh-linha); padding-block: var(--ankh-pad-s); }
.ankh-cta-strip-inner { display: flex !important; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.25rem; }
.ankh-cta-strip-inner > * { margin: 0 !important; }
.ankh-cta-strip p { margin: 0.4rem 0 0; color: var(--ankh-suave); }

/* Subpágina de serviço */
.ankh-service-hero { padding-block: clamp(1.25rem, 4vw, 2.25rem) clamp(1.5rem, 4vw, 2.25rem); background: var(--ankh-offwhite); border-bottom: 1px solid var(--ankh-linha); }
.ankh-service-hero .wp-block-post-title { font-size: var(--ankh-h1) !important; line-height: 1.1; letter-spacing: -0.035em; margin: 0 !important; max-width: 24ch; text-wrap: balance; }
.ankh-service-hero .ankh-lead { margin: 0.9rem 0 0; max-width: 60ch; font-size: var(--ankh-fs-lead); color: var(--ankh-suave); }
.ankh-service-body { background: var(--ankh-offwhite); padding-block: var(--ankh-pad-s); }
.ankh-service-related { background: #fff; padding-block: var(--ankh-pad-s); }
.ankh-service-related .ankh-section-title { margin-bottom: 1rem !important; }
.ankh-steps-list { padding-left: 1.25rem; }
.ankh-steps-list li { margin: 0.5rem 0; }

/* =========================================================
   Rodapé compacto
   ========================================================= */
.ankh-footer { background: var(--ankh-petroleo); color: rgba(255, 255, 255, 0.78); font-size: var(--ankh-fs-small); margin: 0 !important; }
.ankh-footer a { color: rgba(255, 255, 255, 0.82); text-decoration: none; transition: color 0.2s ease; }
.ankh-footer a:hover { color: var(--ankh-dourado-claro); }
.ankh-footer-inner {
	display: grid !important;
	gap: 1.75rem 3rem;
	max-width: var(--ankh-max);
	margin: 0 auto;
	padding: clamp(2.25rem, 5vw, 3.25rem) var(--ankh-gutter) 1.75rem;
	box-sizing: border-box;
}
.ankh-footer-inner > * { margin: 0 !important; }
@media (min-width: 782px) {
	.ankh-footer-inner { grid-template-columns: auto 1fr; align-items: start; }
	.ankh-footer-inner > .ankh-footer-nav { justify-self: end; }
}
.ankh-footer-logo img { height: 34px; width: auto; display: block; }
.ankh-footer-about { margin: 1rem 0 0 !important; max-width: 46ch; line-height: 1.55; color: rgba(255, 255, 255, 0.72); }
.ankh-footer-brand .ankh-social { margin-top: 1.25rem; }
.ankh-footer-address { margin: 1rem 0 0 !important; font-size: 0.8rem; color: rgba(255, 255, 255, 0.5); }
.ankh-footer-nav ul { list-style: none; margin: 0; padding: 0; }
.ankh-footer-inner > .ankh-footer-nav ul { display: grid; grid-template-columns: repeat(2, max-content); gap: 0 2.5rem; }
/* Links do rodapé com área de toque confortável (mínimo de 24px; aqui ~34px). */
.ankh-footer-inner > .ankh-footer-nav a { display: inline-block; padding-block: 0.45rem; }
@media (min-width: 782px) { .ankh-footer-inner > .ankh-footer-nav ul { grid-template-columns: repeat(3, max-content); } }
.ankh-footer-legal {
	max-width: var(--ankh-max);
	margin: 0 auto;
	padding: 1.25rem var(--ankh-gutter) 1.5rem;
	box-sizing: border-box;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
}
.ankh-footer-legal > * { margin: 0 !important; }
.ankh-footer-policies { display: flex !important; flex-wrap: wrap; gap: 0.5rem; }
.ankh-footer-policies > * { margin: 0 !important; }
/* Os links legais e o de cookies fluem juntos, como uma única fileira. */
.ankh-footer-policies .ankh-footer-nav, .ankh-footer-policies .ankh-footer-nav ul { display: contents; }
.ankh-footer-policies li { list-style: none; }
.ankh-footer-policies a {
	display: inline-block;
	padding: 0.4rem 0.8rem;
	border: 1px solid rgba(199, 165, 116, 0.35);
	border-radius: 999px;
	font-size: 0.8rem;
	color: rgba(255, 255, 255, 0.88);
	transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}
.ankh-footer-policies a:hover { border-color: var(--ankh-dourado-claro); background: rgba(199, 165, 116, 0.1); color: #fff; }
.ankh-footer-copy { margin-top: 1rem !important; font-size: var(--ankh-fs-label); line-height: 1.6; color: rgba(255, 255, 255, 0.5); }
@media (max-width: 599px) { .ankh-footer { padding-bottom: 72px; } }

/* =========================================================
   Ícones de contato e redes sociais
   ========================================================= */
.ankh-social { display: flex; flex-wrap: wrap; gap: 0.6rem; margin: 0; padding: 0; list-style: none; }
.ankh-social a {
	display: inline-grid; place-items: center;
	width: 44px; height: 44px;
	border-radius: 50%;
	border: 1px solid rgba(199, 165, 116, 0.4);
	color: #fff !important;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.25s var(--ankh-ease);
}
.ankh-social a:hover { background: var(--ankh-dourado); border-color: var(--ankh-dourado); transform: translateY(-2px); }
.ankh-social svg { width: 20px; height: 20px; }
.ankh-social .ankh-social-sep { width: 1px; height: 24px; align-self: center; margin-inline: 0.15rem; background: rgba(199, 165, 116, 0.35); }
/* No menu do celular cabem os 7 ícones numa linha só. */
@media (max-width: 420px) {
	.ankh-drawer .ankh-social { gap: 0.3rem; }
	.ankh-drawer .ankh-social a { width: 33px; height: 33px; }
	.ankh-drawer .ankh-social svg { width: 15px; height: 15px; }
	.ankh-drawer .ankh-social .ankh-social-sep { height: 18px; margin-inline: 0.15rem; }
}

/* Ícones de WhatsApp, telefone e e-mail na seção Fale conosco */
.ankh-contact .ankh-social { margin-top: 1.5rem; }

/* Canais de contato por extenso (página Contato): WhatsApp, telefone e e-mail */
.ankh-channels { list-style: none; margin: 1.75rem 0 0; padding: 0; display: grid; gap: 0.6rem; max-width: 26rem; }
.ankh-channels a {
	display: flex;
	align-items: center;
	gap: 0.9rem;
	padding: 0.7rem 1rem 0.7rem 0.7rem;
	border: 1px solid rgba(199, 165, 116, 0.28);
	border-radius: var(--ankh-radius);
	color: #fff;
	text-decoration: none;
	transition: background-color 0.25s ease, border-color 0.25s ease, transform 0.3s var(--ankh-ease);
}
.ankh-channels a:hover, .ankh-channels a:focus-visible { background: rgba(255, 255, 255, 0.06); border-color: var(--ankh-dourado); transform: translateX(4px); }
.ankh-channel-icon {
	flex: none;
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: rgba(199, 165, 116, 0.14);
	color: var(--ankh-dourado-claro);
	transition: background-color 0.25s ease, color 0.25s ease;
}
.ankh-channels a:hover .ankh-channel-icon { background: var(--ankh-dourado); color: #fff; }
.ankh-channel-icon svg { width: 19px; height: 19px; }
.ankh-channel-text { display: grid; min-width: 0; line-height: 1.3; }
.ankh-channel-name { font-size: var(--ankh-fs-label); font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ankh-dourado-claro); }
.ankh-channel-value { font-size: var(--ankh-fs-body); overflow-wrap: anywhere; }

/* =========================================================
   WhatsApp flutuante (verde)
   ========================================================= */
.ankh-whatsapp {
	position: fixed;
	right: 14px;
	bottom: calc(14px + env(safe-area-inset-bottom));
	z-index: 60;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.85rem;
	border-radius: 999px;
	background: #1C8A5A;
	color: #fff !important;
	font-weight: 600;
	font-size: var(--ankh-fs-small);
	text-decoration: none !important;
	box-shadow: 0 10px 26px rgba(16, 45, 58, 0.28);
	transition: transform 0.3s var(--ankh-ease), background-color 0.2s ease;
}
.ankh-whatsapp:hover { transform: translateY(-2px); background: #167149; }
.ankh-whatsapp svg { width: 24px; height: 24px; fill: currentColor; }
.ankh-whatsapp span { display: none; }
@media (min-width: 782px) { .ankh-whatsapp { padding: 0.75rem 1.1rem; right: 24px; bottom: 24px; } .ankh-whatsapp span { display: inline; } }
body.ankh-lock .ankh-whatsapp { visibility: hidden; }

/* =========================================================
   Consentimento de cookies
   ========================================================= */
.ankh-consent { position: fixed; left: 12px; right: 12px; bottom: calc(12px + env(safe-area-inset-bottom)); z-index: 80; display: flex; justify-content: center; }
.ankh-consent[hidden] { display: none; }
.ankh-consent-box { width: 100%; max-width: 560px; padding: 1.1rem 1.15rem; border-radius: var(--ankh-radius); background: #fff; border: 1px solid var(--ankh-linha); box-shadow: 0 20px 50px rgba(16, 45, 58, 0.22); font-size: 0.92rem; }
@media (min-width: 782px) { .ankh-consent { left: 24px; right: auto; bottom: 24px; } }
.ankh-consent-title { margin: 0 0 0.35rem; font: 600 1rem/1.3 var(--wp--preset--font-family--geist); color: var(--ankh-petroleo); }
.ankh-consent-text { margin: 0 0 0.85rem; color: var(--ankh-grafite); line-height: 1.5; }
.ankh-consent-prefs { display: grid; gap: 0.6rem; margin: 0 0 0.9rem; padding: 0.75rem; border-radius: var(--ankh-radius-s); background: var(--ankh-offwhite); }
.ankh-consent-prefs[hidden] { display: none; }
.ankh-consent-opt { display: flex; gap: 0.6rem; align-items: flex-start; line-height: 1.4; }
.ankh-consent-opt strong { display: block; color: var(--ankh-petroleo); }
.ankh-consent-opt input { margin-top: 0.2rem; accent-color: var(--ankh-petroleo); }
.ankh-consent-actions { display: flex; flex-wrap: wrap; gap: 0.5rem; }
.ankh-consent-btn { padding: 0.6rem 1rem; border-radius: 999px; border: 1.5px solid var(--ankh-petroleo); background: #fff; color: var(--ankh-petroleo); font: 500 0.9rem/1 var(--wp--preset--font-family--geist); cursor: pointer; }
.ankh-consent-btn.is-primary { background: var(--ankh-petroleo); color: #fff; }
.ankh-consent-btn.is-link { border-color: transparent; text-decoration: underline; text-underline-offset: 0.2em; }
.ankh-consent-btn[hidden] { display: none; }

/* =========================================================
   Animação de entrada (só com JavaScript)
   ========================================================= */
.ankh-js .ankh-reveal { opacity: 0; transform: translate3d(0, 18px, 0); transition: opacity 0.8s var(--ankh-ease), transform 0.8s var(--ankh-ease); }
.ankh-js .ankh-reveal.is-visible { opacity: 1; transform: none; }
.ankh-js .ankh-hero-inner > * { animation: ankh-rise 0.9s var(--ankh-ease) both; }
.ankh-js .ankh-hero-inner > *:nth-child(2) { animation-delay: 0.06s; }
.ankh-js .ankh-hero-inner > *:nth-child(3) { animation-delay: 0.12s; }
.ankh-js .ankh-hero-inner > *:nth-child(4) { animation-delay: 0.18s; }
.ankh-js .ankh-hero-inner > *:nth-child(5) { animation-delay: 0.24s; }
@keyframes ankh-rise { from { opacity: 0; transform: translate3d(0, 14px, 0); } to { opacity: 1; transform: none; } }

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation: none !important; transition: none !important; }
	.ankh-js .ankh-reveal { opacity: 1; transform: none; }
	.ankh-marquee-text { transform: none; }
}

/* Ícones de linha próprios da Ankh (Setor Público), em dourado, dentro de uma caixa suave. */
.ankh-ico::before { content: ""; display: block; width: 46px; height: 46px; margin-bottom: 1.1rem; border-radius: 12px; background: rgba(151, 115, 67, 0.1) var(--ankh-ico) center / 24px 24px no-repeat; }
.ankh-ico--predio { --ankh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23836338%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2021h18M5%2021V10m14%2011V10M4%2010l8-6%208%206M9%2021v-6h6v6M9%2010h.01M15%2010h.01%22/%3E%3C/svg%3E"); }
.ankh-ico--pasta { --ankh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23836338%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%227%22%20width%3D%2218%22%20height%3D%2213%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M8%207V5a2%202%200%200%201%202-2h4a2%202%200%200%201%202%202v2M3%2013h18%22/%3E%3C/svg%3E"); }
.ankh-ico--colunas { --ankh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23836338%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2021h18M4%2018h16M12%203l9%205H3l9-5zM6%208v10m4-10v10m4-10v10m4-10v10%22/%3E%3C/svg%3E"); }
.ankh-ico--escudo { --ankh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23836338%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203l8%203v6c0%204.5-3.4%208.3-8%209-4.6-.7-8-4.5-8-9V6l8-3z%22/%3E%3Cpath%20d%3D%22M9%2012l2%202%204-4%22/%3E%3C/svg%3E"); }
.ankh-ico--capelo { --ankh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23836338%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2%209l10-5%2010%205-10%205L2%209z%22/%3E%3Cpath%20d%3D%22M6%2011v5c3%202%209%202%2012%200v-5M22%209v6%22/%3E%3C/svg%3E"); }
.ankh-ico--rede { --ankh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23836338%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%225%22%20r%3D%222.5%22/%3E%3Ccircle%20cx%3D%225%22%20cy%3D%2219%22%20r%3D%222.5%22/%3E%3Ccircle%20cx%3D%2219%22%20cy%3D%2219%22%20r%3D%222.5%22/%3E%3Cpath%20d%3D%22M12%207.5v4M12%2011.5l-5.5%205.5M12%2011.5l5.5%205.5%22/%3E%3C/svg%3E"); }
.ankh-ico--megafone { --ankh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23836338%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2011v2a1%201%200%200%200%201%201h2l5%204V6L6%2010H4a1%201%200%200%200-1%201z%22/%3E%3Cpath%20d%3D%22M15%208a5%205%200%200%201%200%208M18%205a9%209%200%200%201%200%2014%22/%3E%3C/svg%3E"); }
.ankh-ico--balao { --ankh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23836338%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21%2012a8%208%200%200%201-11.6%207.1L4%2020l1-4.4A8%208%200%201%201%2021%2012z%22/%3E%3Cpath%20d%3D%22M8.5%2012h.01M12%2012h.01M15.5%2012h.01%22/%3E%3C/svg%3E"); }
.ankh-ico--camadas { --ankh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23836338%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203l9%205-9%205-9-5%209-5z%22/%3E%3Cpath%20d%3D%22M3%2013l9%205%209-5%22/%3E%3Cpath%20d%3D%22M3%2017.5l9%205%209-5%22/%3E%3C/svg%3E"); }
.ankh-ico--tela { --ankh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23836338%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%224%22%20width%3D%2218%22%20height%3D%2212%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M8%2020h8M12%2016v4M7%209l2%202-2%202M11%2013h4%22/%3E%3C/svg%3E"); }
.ankh-ico--palco { --ankh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23836338%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3%2020h18M5%2020v-4h14v4%22/%3E%3Cpath%20d%3D%22M12%204l1.8%203.7%204%20.6-2.9%202.8.7%204L12%2013.2%208.4%2015l.7-4-2.9-2.8%204-.6L12%204z%22/%3E%3C/svg%3E"); }
.ankh-ico--camera { --ankh-ico: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23836338%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%222%22%20y%3D%227%22%20width%3D%2214%22%20height%3D%2212%22%20rx%3D%222%22/%3E%3Cpath%20d%3D%22M16%2011l6-3v10l-6-3%22/%3E%3Ccircle%20cx%3D%229%22%20cy%3D%2213%22%20r%3D%222.5%22/%3E%3C/svg%3E"); }

/* =========================================================
   Setor Público
   ========================================================= */
/* Topo com foto: texto à esquerda, foto à direita com a máscara da marca (celular: foto abaixo do texto). */
.ankh-hero--media { position: relative; }
.ankh-hero-media { position: relative; margin: 2rem var(--ankh-gutter) 0; aspect-ratio: 16 / 10; overflow: hidden; border-radius: var(--ankh-radius); }
.ankh-hero-media img { width: 100%; height: 100%; object-fit: cover; display: block; filter: saturate(0.8) contrast(1.05); }
.ankh-hero-media::before { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(135deg, rgba(16, 45, 58, 0.55), rgba(16, 45, 58, 0.25) 55%, rgba(151, 115, 67, 0.35)); mix-blend-mode: color; }
.ankh-hero-media figcaption, .ankh-figure figcaption {
	position: absolute; right: 0.75rem; bottom: 0.75rem; z-index: 2; padding: 0.3rem 0.6rem; border-radius: 99px;
	background: rgba(11, 34, 48, 0.6); color: rgba(255, 255, 255, 0.85); font-size: var(--ankh-fs-label); letter-spacing: 0.02em;
}
@media (min-width: 1024px) {
	.ankh-hero--media .ankh-hero-inner > * { max-width: 50%; }
	.ankh-hero-media { position: absolute; top: 0; right: 0; bottom: 0; width: 44%; margin: 0; aspect-ratio: auto; border-radius: 0; }
	.ankh-hero-media::after { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, var(--ankh-petroleo) 0%, rgba(16, 45, 58, 0) 35%); pointer-events: none; }
}
.ankh-aud-grid, .ankh-family-grid, .ankh-cap-grid { gap: 1rem !important; }
.ankh-aud, .ankh-family {
	padding: 1.4rem; border: 1px solid var(--ankh-linha); border-radius: var(--ankh-radius); background: #fff;
	transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.3s var(--ankh-ease);
}
.ankh-aud > *, .ankh-family > * { margin: 0 !important; }
.ankh-aud h3, .ankh-family h3 { margin-bottom: 0.4rem !important; }
.ankh-aud p, .ankh-family p { font-size: var(--ankh-fs-small); color: var(--ankh-suave); }
.ankh-family { display: flex; flex-direction: column; }
.ankh-family .ankh-card-link { margin-top: auto !important; padding-top: 1rem; }
.ankh-family:hover { border-color: rgba(151, 115, 67, 0.45); box-shadow: var(--ankh-shadow); transform: translateY(-2px); }
.ankh-family-head { display: grid; gap: 1.5rem; align-items: end; margin-bottom: clamp(1.5rem, 4vw, 2.25rem); }
.ankh-family-head .ankh-section-head { margin-bottom: 0; }
@media (min-width: 900px) { .ankh-family-head { grid-template-columns: 1.1fr 0.9fr; } }
.ankh-figure { position: relative; margin: 0; aspect-ratio: 16 / 10; overflow: hidden; border-radius: var(--ankh-radius); }
.ankh-figure img { width: 100%; height: 100%; object-fit: cover; display: block; filter: saturate(0.8) contrast(1.05); }
.ankh-figure::before { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(135deg, rgba(16, 45, 58, 0.55), rgba(16, 45, 58, 0.25) 55%, rgba(151, 115, 67, 0.35)); mix-blend-mode: color; }
.ankh-family-section { background: var(--ankh-mineral); }
.ankh-cap-section .ankh-pillar { padding: 1.4rem; border: 1px solid var(--ankh-linha); border-radius: var(--ankh-radius); background: #fff; }

/* Menu: item em destaque (Setor Público) separado das áreas, com selo. */
.ankh-menu-special { border-top: 1px solid var(--ankh-linha); margin-top: 0.3rem; padding-top: 0.3rem; }
.ankh-menu-special > a { display: flex !important; flex-direction: column; gap: 0.15rem; }
.ankh-nav .ankh-submenu:has(.ankh-menu-special) { min-width: 270px; }
.ankh-menu-badge { white-space: nowrap; font-size: var(--ankh-fs-label); font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ankh-dourado-forte); }
.ankh-drawer .ankh-menu-special { border-top-color: rgba(199, 165, 116, 0.35); }
.ankh-drawer .ankh-menu-badge { color: var(--ankh-dourado-claro); }

/* Depoimentos: cartões de diferenciais (sem pessoa) e etiqueta DEMO (só no painel). */
.ankh-t--dif h3 { margin: 0.35rem 0 0.6rem !important; }
.ankh-t--dif .ankh-t-text { margin: 0; color: var(--ankh-suave); font-size: var(--ankh-fs-small); line-height: 1.6; }
.ankh-t--dif .ankh-t-text p { margin: 0; }
.ankh-t-demo { margin: 0 0 0.9rem !important; padding: 0.45rem 0.7rem; border-radius: 8px; background: #FFF4D6; color: #6B4E12; font-size: var(--ankh-fs-meta); font-weight: 600; line-height: 1.4; }
.ankh-t--demo { outline: 2px dashed rgba(151, 115, 67, 0.6); outline-offset: -2px; }

/* Portfólio: selo do tipo de projeto sobre a imagem; documentos na ficha. */
.ankh-project-media { position: relative; }
.ankh-project-type { position: absolute; left: 0.75rem; top: 0.75rem; z-index: 2; padding: 0.3rem 0.65rem; border-radius: 99px; background: rgba(255, 255, 255, 0.92); color: var(--ankh-petroleo); font-size: var(--ankh-fs-label); font-weight: 600; letter-spacing: 0.04em; }
.ankh-project-type--conceitual { background: var(--ankh-petroleo); color: #fff; }
.ankh-docs { margin: 0; padding-left: 1.1rem; }
