/*
 * Isabelle Carapinha Advocacia — acabamento do site.
 * Cores, fontes, textos e espaçamentos ficam no Elementor (Kit global e
 * painel de cada bloco). Aqui só o que o Elementor gratuito não faz:
 * cabeçalho fixo, texto vertical, numeral de fundo, moldura das fotos,
 * formulário, lista de artigos, artigo do blog, WhatsApp e cookies.
 */

:root {
	--ic-oliva: var(--e-global-color-primary, #596340);
	--ic-ouro: var(--e-global-color-secondary, #CBAA6D);
	--ic-grafite: var(--e-global-color-text, #33352E);
	--ic-ambar: var(--e-global-color-accent, #86612A);
	--ic-profundo: var(--e-global-color-icprof, #4B5537);
	--ic-off: var(--e-global-color-icoff, #F5F3F0);
	--ic-areia: var(--e-global-color-icarcl, #EAE3D8);
	--ic-linha: rgba(51, 53, 46, 0.14);
	--ic-conteudo: 1200px;
	--ic-barra: 38px;
}

html { scroll-padding-top: 110px; }
html, body.ic-site { overflow-x: clip; }
body.ic-site { background: var(--ic-off); -webkit-font-smoothing: antialiased; }
::selection { background: rgba(203, 170, 109, 0.35); }
.ic-site a { text-underline-offset: 3px; }

/* Marcador de dado a confirmar: impossível publicar sem ver. */
.ic-confirmar {
	font-family: ui-monospace, Consolas, monospace !important;
	font-size: 0.82em;
	font-style: normal;
	letter-spacing: 0;
	text-transform: none;
	background: #FFE45C;
	color: #33352E !important;
	padding: 1px 5px;
	white-space: nowrap;
}

/* ---------- Cabeçalho fixo: a barra superior rola, a principal fica ---------- */
body.ic-site #masthead {
	position: sticky;
	top: calc(-1 * var(--ic-barra));
	z-index: 90;
}
body.ic-site.admin-bar #masthead { top: calc(32px - var(--ic-barra)); }
@media (max-width: 782px) { body.ic-site.admin-bar #masthead { top: calc(46px - var(--ic-barra)); } }
@media (max-width: 767px) {
	body.ic-site #masthead { top: 0; }
	body.ic-site.admin-bar #masthead { top: 0; }
}
.ic-cabecalho { transition: box-shadow 0.3s ease; }
.ic-rolou .ic-cabecalho { box-shadow: 0 10px 30px -18px rgba(51, 53, 46, 0.35); }
.ic-barra-topo .elementor-icon-list-text { white-space: nowrap; }
.ic-logo img { display: block; width: 100%; height: auto; }

/* Menu do Header Footer Elementor */
.ic-menu .hfe-nav-menu > li > a { white-space: nowrap; }
.ic-menu .sub-menu { box-shadow: 0 18px 40px -24px rgba(51, 53, 46, 0.45); }
.ic-menu .hfe-nav-menu__toggle { cursor: pointer; }
@media (max-width: 1024px) {
	.ic-menu { margin-left: auto; }
	.ic-menu .hfe-nav-menu__layout-horizontal,
	.ic-menu nav.hfe-dropdown { border-top: 1px solid var(--ic-linha); }
	.ic-menu nav.hfe-dropdown .menu-item a { font-family: Montserrat, sans-serif; text-transform: none; letter-spacing: 0; }
}

/* ---------- Texto vertical na margem (como o portfólio) ---------- */
.ic-vertical {
	writing-mode: vertical-rl;
	transform: rotate(180deg);
	left: max(10px, calc((100% - var(--ic-conteudo)) / 2 - 58px)) !important;
	right: auto !important;
	pointer-events: none;
	white-space: nowrap;
}
.ic-vertical .elementor-heading-title { white-space: nowrap; }
@media (max-width: 1320px) { .ic-vertical { display: none; } }

/* ---------- Numeral grande de fundo ---------- */
.ic-numeral { pointer-events: none; user-select: none; z-index: 0; }
.ic-numeral .elementor-heading-title { white-space: nowrap; }
.ic-cabeca > :not(.ic-numeral),
.ic-topo-texto > :not(.ic-numeral),
.ic-contato-final .e-con > :not(.ic-numeral) { position: relative; z-index: 1; }

/* ---------- Fotos ---------- */
.ic-foto img { display: block; width: 100%; }
.ic-foto--moldura { position: relative; isolation: isolate; }
.ic-foto--moldura::after {
	content: "";
	position: absolute;
	inset: 22px -22px -22px 22px;
	border: 1px solid var(--ic-ouro);
	z-index: -1;
	pointer-events: none;
}
@media (max-width: 767px) {
	.ic-foto--moldura::after { inset: 14px -10px -14px 10px; }
}
.ic-heroi__foto { position: relative; }
.ic-heroi__foto .ic-foto { z-index: 1; }
.ic-marca-dagua { opacity: 0.16; pointer-events: none; }
.ic-marca-dagua img { width: 100%; height: auto; }

/* Frase com fio dourado à esquerda */
.ic-frase--fio { border-left: 1px solid var(--ic-ouro); padding-left: 22px; }

/* ---------- Listas ---------- */
.ic-pontos .elementor-icon-list-icon { align-self: flex-start; margin-top: 0.62em; }
.ic-pontos .elementor-icon-list-icon i { font-size: 6px !important; }
.ic-pontos--linhas .elementor-icon-list-item { padding-bottom: 13px; border-bottom: 1px solid var(--ic-linha); }
.ic-pontos--linhas .elementor-icon-list-item:last-child { border-bottom: 0; padding-bottom: 0; }
.ic-pontos--escuro .elementor-icon-list-item { border-color: rgba(245, 243, 240, 0.16); }
@media (min-width: 768px) {
	.ic-pontos--2col .elementor-icon-list-items { display: grid; grid-template-columns: 1fr 1fr; column-gap: 28px; }
	.ic-pontos--2col .elementor-icon-list-item { align-items: flex-start !important; margin: 0 !important; padding: 11px 0 !important; border-bottom: 1px solid rgba(245, 243, 240, 0.16) !important; }
}
.ic-canais .elementor-icon-list-icon { align-self: flex-start; margin-top: 0.28em; min-width: 18px; }
.ic-canais .elementor-icon-list-text { word-break: break-word; }

/* ---------- Cartões de área ---------- */
.ic-area { transition: transform 0.35s ease, box-shadow 0.35s ease; }
@media (hover: hover) {
	.ic-area:hover { transform: translateY(-4px); box-shadow: 0 26px 50px -34px rgba(51, 53, 46, 0.5); }
}

/* ---------- Botões ---------- */
.ic-btn .elementor-button { transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease; }
.ic-btn--link .elementor-button { border-bottom: 1px solid currentColor !important; border-radius: 0; }
.ic-btn--link .elementor-button-icon { transition: transform 0.25s ease; }
.ic-btn--link .elementor-button:hover .elementor-button-icon { transform: translateX(4px); }
.ic-btn--link .elementor-button:hover .fa-whatsapp,
.ic-btn--link .elementor-button:hover .fa-instagram,
.ic-btn--link .elementor-button:hover .fa-map-marker-alt { transform: none; }
.elementor-button { white-space: normal; }

/* ---------- Faixa de fatos ---------- */
.ic-fato + .ic-fato { border-left: 1px solid rgba(245, 243, 240, 0.18); }
@media (max-width: 767px) {
	.ic-fato { border-left: 0 !important; padding-left: 0 !important; }
	.ic-fato + .ic-fato { border-top: 1px solid rgba(245, 243, 240, 0.16) !important; padding-top: 22px !important; }
}

/* ---------- Itens numerados ---------- */
.ic-item { height: 100%; }

/* ---------- FAQ (acordeão aninhado) ---------- */
.ic-faq .e-n-accordion-item { border-bottom: 1px solid var(--ic-linha); }
.ic-faq .e-n-accordion-item:first-child { border-top: 1px solid var(--ic-linha); }
.ic-faq .e-n-accordion-item-title { cursor: pointer; }
.ic-faq .e-n-accordion-item-title-icon { color: var(--ic-ouro); }
.ic-faq .e-n-accordion-item > .e-con { max-width: 760px; }

/* ---------- Links sobre fundo verde ---------- */
.ic-escuro a:not(.elementor-button):not(.elementor-icon) { color: inherit; }
.ic-link-claro a { color: var(--ic-off) !important; text-decoration: none; border-bottom: 1px solid rgba(203, 170, 109, 0.6); }
.ic-link-claro a:hover { color: var(--ic-ouro) !important; }
.ic-quebra, .ic-quebra a { word-break: break-all; }

/* ---------- Rodapé ---------- */
.ic-rodape .elementor-icon-list-item a { transition: color 0.2s ease; }
.ic-linha-final a { color: inherit; text-decoration: underline; text-decoration-color: rgba(203, 170, 109, 0.6); }
.ic-linha-final a:hover { color: var(--ic-ouro); }
.ic-credito { margin: 0; }
.ic-credito a { display: inline-flex; align-items: center; gap: 8px; color: inherit; text-decoration: none; opacity: 0.8; transition: opacity 0.2s ease; }
.ic-credito a:hover { opacity: 1; }
.ic-credito img { display: inline-block; width: 96px; height: auto; }

/* ---------- Mapa ---------- */
.ic-mapa iframe { display: block; filter: grayscale(0.85) sepia(0.08); transition: filter 0.4s ease; }
.ic-mapa:hover iframe { filter: none; }
.ic-mapa-caixa, .ic-mapa-caixa .ic-mapa { height: 100%; }

/* ---------- Texto longo (política) ---------- */
.ic-texto-longo h2 {
	font-family: Cinzel, serif;
	font-size: 22px;
	font-weight: 500;
	color: var(--ic-oliva);
	margin: 2.2em 0 0.6em;
	line-height: 1.3;
}
.ic-texto-longo ul { padding-left: 1.2em; }
.ic-texto-longo li { margin-bottom: 0.4em; }
.ic-texto-longo li::marker { color: var(--ic-ouro); }

/* ---------- Formulário ---------- */
.ic-form {
	--icf-campo: transparent;
	--icf-linha: rgba(51, 53, 46, 0.28);
	--icf-texto: var(--ic-grafite);
	--icf-rot: #62655A;
	--icf-foco: var(--ic-oliva);
	--icf-botao: var(--ic-oliva);
	--icf-botao-txt: #FFFFFF;
	--icf-erro: #A33A2B;
	color: var(--icf-texto);
	font-family: Montserrat, sans-serif;
}
.ic-form--escuro {
	--icf-linha: rgba(245, 243, 240, 0.32);
	--icf-texto: #F5F3F0;
	--icf-rot: rgba(245, 243, 240, 0.72);
	--icf-foco: var(--ic-ouro);
	--icf-botao: var(--ic-ouro);
	--icf-botao-txt: var(--ic-profundo);
	--icf-erro: #F2B8A8;
}
.ic-form__corpo { display: grid; grid-template-columns: 1fr 1fr; gap: 26px 28px; }
.ic-form__campo--largo { grid-column: 1 / -1; }
@media (max-width: 600px) { .ic-form__corpo { grid-template-columns: 1fr; gap: 22px; } }
.ic-form__campo { position: relative; margin: 0; }
.ic-form .ic-form__campo input,
.ic-form .ic-form__campo select,
.ic-form .ic-form__campo textarea {
	display: block;
	width: 100%;
	background: var(--icf-campo);
	border: 0;
	border-bottom: 1px solid var(--icf-linha);
	border-radius: 0;
	color: var(--icf-texto);
	font: inherit;
	font-size: 16px;
	padding: 22px 0 9px;
	outline: none;
	box-shadow: none;
	transition: border-color 0.2s ease;
	appearance: none;
	-webkit-appearance: none;
}
.ic-form .ic-form__campo textarea { resize: vertical; min-height: 104px; line-height: 1.55; }
.ic-form .ic-form__campo select { cursor: pointer; padding-right: 26px; background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%); background-position: calc(100% - 12px) 60%, calc(100% - 7px) 60%; background-size: 5px 5px; background-repeat: no-repeat; }
.ic-form .ic-form__campo select option { color: #33352E; background: #fff; }
.ic-form .ic-form__campo select.is-vazio { color: var(--icf-rot); }
.ic-form__rot {
	position: absolute;
	left: 0;
	top: 22px;
	font-size: 15px;
	color: var(--icf-rot);
	pointer-events: none;
	transform-origin: left top;
	transition: transform 0.2s ease, color 0.2s ease;
}
.ic-form__campo input:focus + .ic-form__rot,
.ic-form__campo input:not(:placeholder-shown) + .ic-form__rot,
.ic-form__campo textarea:focus + .ic-form__rot,
.ic-form__campo textarea:not(:placeholder-shown) + .ic-form__rot,
.ic-form__campo--sel .ic-form__rot {
	transform: translateY(-20px) scale(0.78);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.ic-form .ic-form__campo input:focus,
.ic-form .ic-form__campo select:focus,
.ic-form .ic-form__campo textarea:focus { border-bottom-color: var(--icf-foco); }
.ic-form__campo input:focus + .ic-form__rot,
.ic-form__campo textarea:focus + .ic-form__rot { color: var(--icf-foco); }
.ic-form__campo.is-erro input,
.ic-form__campo.is-erro select { border-bottom-color: var(--icf-erro); }
.ic-form__campo.is-erro .ic-form__rot { color: var(--icf-erro); }
.ic-form__campo.is-erro, .ic-form__consent.is-erro { animation: ic-tremer 0.35s ease; }
@keyframes ic-tremer { 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }

.ic-form__consent { display: flex; gap: 12px; align-items: flex-start; font-size: 13.5px; line-height: 1.55; cursor: pointer; color: var(--icf-rot); }
.ic-form__consent input { flex: none; width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--icf-foco); cursor: pointer; }
.ic-form__consent a { color: inherit; text-decoration: underline; }
.ic-form__consent.is-erro span { color: var(--icf-erro); }
.ic-form__isca { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.ic-form__erro { margin: 0; color: var(--icf-erro); font-size: 14px; }
.ic-form__base { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 26px; }
.ic-form .ic-form__enviar {
	background: var(--icf-botao);
	color: var(--icf-botao-txt);
	border: 1px solid var(--icf-botao);
	border-radius: 0;
	padding: 17px 34px;
	font-family: Montserrat, sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	cursor: pointer;
	transition: background-color 0.25s ease, color 0.25s ease;
}
.ic-form .ic-form__enviar:hover,
.ic-form .ic-form__enviar:focus { background: transparent; color: var(--icf-botao); }
.ic-form.is-enviando .ic-form__enviar { opacity: 0.7; pointer-events: none; }
.ic-form__sigilo { margin: 0; flex: 1 1 240px; font-size: 12.5px; line-height: 1.5; color: var(--icf-rot); }
@media (max-width: 600px) { .ic-form .ic-form__enviar { width: 100%; } }
.ic-form__ok { padding: 12px 0; outline: none; }
.ic-form__ok-t { font-family: Cinzel, serif; font-size: 26px; margin: 0 0 10px; color: var(--icf-foco); }
.ic-form__ok-x { margin: 0 0 22px; }
.ic-form__wa { display: inline-block; padding: 14px 26px; border: 1px solid var(--icf-foco); color: var(--icf-texto) !important; text-decoration: none; font-size: 12px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; }
.ic-form__wa:hover { background: var(--icf-foco); color: var(--icf-botao-txt) !important; }

/* ---------- Lista de artigos ---------- */
.ic-artigos { display: grid; grid-template-columns: repeat(3, 1fr); gap: 44px 32px; }
@media (max-width: 1024px) { .ic-artigos { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .ic-artigos { grid-template-columns: 1fr; } }
.ic-artigo { display: flex; flex-direction: column; }
.ic-artigo__foto { display: block; aspect-ratio: 3 / 2; overflow: hidden; background: var(--ic-areia); margin-bottom: 20px; }
.ic-artigo__foto img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.6s ease; }
.ic-artigo:hover .ic-artigo__foto img { transform: scale(1.03); }
.ic-artigo__sem-foto { display: grid; place-items: center; width: 100%; height: 100%; }
.ic-artigo__sem-foto img { width: 34% !important; height: auto !important; opacity: 0.55; }
.ic-artigo__meta { display: flex; gap: 14px; margin: 0 0 10px; font-size: 11px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: var(--ic-ambar); }
.ic-artigo__titulo { font-family: Cinzel, serif; font-size: 21px; font-weight: 500; line-height: 1.32; margin: 0 0 12px; }
.ic-artigo__titulo a { color: var(--ic-oliva); text-decoration: none; }
.ic-artigo__titulo a:hover { color: var(--ic-ambar); }
.ic-artigo__resumo { margin: 0 0 16px; font-size: 14.5px; line-height: 1.65; color: #62655A; }
.ic-artigo__ler { margin-top: auto; align-self: flex-start; font-size: 12px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: var(--ic-ambar); text-decoration: none; border-bottom: 1px solid currentColor; padding-bottom: 3px; }
.ic-artigos__vazio { margin: 0; padding: 36px 32px; border: 1px dashed rgba(134, 97, 42, 0.45); color: #62655A; font-size: 15px; text-align: center; }
.ic-artigos__nav { display: flex; justify-content: space-between; margin-top: 48px; padding-top: 22px; border-top: 1px solid var(--ic-linha); }
.ic-artigos__nav a { color: var(--ic-oliva); font-weight: 600; text-decoration: none; }

/* ---------- Menu lateral (celular e tablet) ---------- */
.ic-abre-menu .elementor-icon { display: flex; }
.ic-cabecalho__nav { margin-left: auto; }
@media (max-width: 1024px) {
	.ic-cabecalho__nav { flex: 0 0 auto !important; width: auto !important; }
}
body.ic-site .ic-gaveta {
	position: fixed !important;
	top: 0;
	right: 0;
	bottom: 0;
	left: auto;
	width: min(400px, 88vw) !important;
	max-width: none;
	z-index: 1001;
	overflow-y: auto;
	overflow-x: hidden;
	flex-wrap: nowrap !important;
	justify-content: flex-start !important;
	overscroll-behavior: contain;
	transform: translateX(105%);
	visibility: hidden;
	transition: transform 0.38s cubic-bezier(0.2, 0.7, 0.2, 1), visibility 0s linear 0.38s;
	box-shadow: -30px 0 60px -30px rgba(0, 0, 0, 0.5);
}
.ic-menu-aberto body.ic-site .ic-gaveta { transform: none; visibility: visible; transition-delay: 0s; }
.ic-gaveta-veu {
	position: fixed;
	inset: 0;
	z-index: 1000;
	background: rgba(35, 38, 28, 0.55);
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}
.ic-menu-aberto .ic-gaveta-veu { opacity: 1; visibility: visible; transition-delay: 0s; }
.ic-menu-aberto, .ic-menu-aberto body { overflow: hidden; }
.ic-menu-aberto body.ic-site #masthead { z-index: 1000; }
@media (min-width: 1025px) {
	body.ic-site .ic-gaveta, .ic-gaveta-veu { display: none !important; }
}
/* No editor do Elementor a gaveta aparece no fluxo, para editar. */
body.elementor-editor-active.single-elementor-hf .ic-gaveta {
	position: relative !important;
	transform: none;
	visibility: visible;
	width: 400px !important;
	margin: 20px 0 20px auto;
	display: flex !important;
}
.ic-gaveta__fechar .elementor-icon { display: flex; }
.ic-menu--gaveta, .ic-menu--gaveta .elementor-widget-container, .ic-menu--gaveta nav, .ic-menu--gaveta .hfe-nav-menu { width: 100% !important; max-width: 100%; }
.ic-menu--gaveta .hfe-nav-menu { display: block !important; text-align: left; }
.ic-menu--gaveta .hfe-has-submenu-container, .ic-menu--gaveta .menu-item > a { justify-content: space-between !important; width: 100%; }
.ic-menu--gaveta .hfe-nav-menu__layout-vertical,
.ic-menu--gaveta nav { display: block !important; }
.ic-menu--gaveta .menu-item { border-bottom: 1px solid rgba(245, 243, 240, 0.12); }
.ic-menu--gaveta .menu-item:last-child { border-bottom: 0; }
.ic-menu--gaveta .sub-menu {
	position: static !important;
	display: none !important;
	visibility: visible !important;
	opacity: 1 !important;
	transform: none !important;
	box-shadow: none !important;
	border: 0 !important;
	padding: 0 0 10px !important;
	width: auto !important;
}
.ic-menu--gaveta .ic-sub-aberto > .sub-menu,
.ic-menu--gaveta .menu-item-has-children:focus-within > .sub-menu { display: block !important; }
.ic-menu--gaveta .sub-menu .menu-item { border: 0; }
.ic-menu--gaveta .sub-menu a { position: relative; padding-left: 18px !important; }
.ic-menu--gaveta .sub-menu a::before { content: ""; position: absolute; left: 0; top: 50%; width: 8px; height: 1px; background: var(--ic-ouro); }
.ic-menu--gaveta .hfe-menu-toggle { transition: transform 0.25s ease; }
.ic-menu--gaveta .ic-sub-aberto > a .hfe-menu-toggle { transform: rotate(180deg); }
.ic-menu--gaveta .hfe-pointer__none a { justify-content: space-between; }

/* ---------- Carrossel de artigos ---------- */
.ic-carrossel { position: relative; }
.ic-artigos--trilho {
	display: grid !important;
	grid-template-columns: none !important;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - 64px) / 3);
	gap: 32px !important;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	scrollbar-width: none;
	padding-bottom: 4px;
	outline: none;
}
.ic-artigos--trilho::-webkit-scrollbar { display: none; }
.ic-artigos--trilho > .ic-artigo { scroll-snap-align: start; }
@media (max-width: 1024px) { .ic-artigos--trilho { grid-auto-columns: calc((100% - 32px) / 2); } }
@media (max-width: 640px) { .ic-artigos--trilho { grid-auto-columns: 84%; gap: 18px !important; } }
.ic-carrossel__nav { display: flex; align-items: center; gap: 18px; margin-top: 34px; }
.ic-carrossel__seta {
	flex: none;
	width: 48px;
	height: 48px;
	display: grid;
	place-items: center;
	background: transparent !important;
	color: var(--ic-oliva) !important;
	border: 1px solid rgba(89, 99, 64, 0.45) !important;
	border-radius: 0 !important;
	padding: 0 !important;
	font-size: 18px;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease, opacity 0.2s ease;
}
.ic-carrossel__seta:hover { background: var(--ic-oliva) !important; color: #fff !important; }
.ic-carrossel.is-inicio [data-ic-anterior],
.ic-carrossel.is-fim [data-ic-proximo] { opacity: 0.35; pointer-events: none; }
.ic-carrossel.is-parado .ic-carrossel__nav { display: none; }
.ic-carrossel__barra { flex: 1; height: 1px; background: var(--ic-linha); position: relative; }
.ic-carrossel__barra span { position: absolute; left: 0; top: -1px; height: 3px; width: 33%; background: var(--ic-ouro); transition: width 0.3s ease; }

/* ---------- Artigo: blocos do texto ---------- */
.ic-post__conteudo .ic-atencao {
	position: relative;
	margin: 2em 0;
	padding: 20px 24px 20px 58px;
	background: var(--ic-areia);
	border-left: 2px solid var(--ic-ambar);
	font-size: 15.5px;
	line-height: 1.65;
}
.ic-post__conteudo .ic-atencao::before {
	content: "!";
	position: absolute;
	left: 20px;
	top: 20px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: var(--ic-ambar);
	color: #fff;
	font: 700 13px/22px Montserrat, sans-serif;
	text-align: center;
}

/* ---------- Página do artigo ---------- */
.ic-leitura { position: fixed; top: 0; left: 0; right: 0; height: 3px; z-index: 1002; pointer-events: none; }
.ic-leitura span { display: block; height: 100%; background: var(--ic-ouro); transform: scaleX(0); transform-origin: left; }
.admin-bar .ic-leitura { top: 32px; }

.ic-post { background: var(--ic-off); }
.ic-post__topo {
	max-width: 1240px;
	margin: 0 auto;
	padding: 64px 20px 0;
	display: grid;
	grid-template-columns: 1.05fr 0.95fr;
	gap: 56px;
	align-items: center;
}
.ic-trilha { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 22px; font-family: Montserrat, sans-serif; font-size: 11px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: #62655A; }
.ic-trilha a { color: var(--ic-oliva); text-decoration: none; }
.ic-trilha a:hover { color: var(--ic-ambar); }
.ic-trilha span:not([aria-hidden]) { color: var(--ic-ambar); }
.ic-post .ic-post__titulo {
	font-family: Cinzel, serif;
	font-weight: 400;
	font-size: clamp(30px, 3.6vw, 46px);
	line-height: 1.16;
	color: var(--ic-oliva);
	margin: 0 0 20px;
}
.ic-post .ic-post__resumo { font-family: Montserrat, sans-serif; font-weight: 300; font-size: 18px; line-height: 1.65; color: var(--ic-grafite); margin: 0 0 28px; }
.ic-post__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 14px; padding-top: 22px; border-top: 1px solid var(--ic-linha); }
.ic-post__meta img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; object-position: center 20%; }
.ic-post__meta p { margin: 0; display: flex; flex-direction: column; font-size: 13px; line-height: 1.35; color: #62655A; }
.ic-post__meta strong { font-family: Cinzel, serif; font-weight: 500; font-size: 15px; color: var(--ic-oliva); }
.ic-post__dados { margin-left: auto !important; text-align: right; font-size: 12px !important; letter-spacing: 0.08em; text-transform: uppercase; }
.ic-post__capa { margin: 0; position: relative; isolation: isolate; }
.ic-post__capa::after { content: ""; position: absolute; inset: 18px -18px -18px 18px; border: 1px solid var(--ic-ouro); z-index: -1; }
.ic-post__capa img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
@media (max-width: 900px) {
	.ic-post__topo { grid-template-columns: 1fr; gap: 36px; padding-top: 40px; }
	.ic-post__capa { margin-right: 10px; }
	.ic-post__capa::after { inset: 10px -10px -10px 10px; }
	.ic-post__dados { margin-left: 0 !important; text-align: left; width: 100%; flex-direction: row !important; gap: 14px; }
}

.ic-post__grade {
	max-width: 1240px;
	margin: 0 auto;
	padding: 72px 20px 88px;
	display: grid;
	grid-template-columns: minmax(0, 740px) 300px;
	justify-content: space-between;
	gap: 64px;
}
@media (max-width: 1024px) { .ic-post__grade { grid-template-columns: 1fr; padding-top: 48px; } .ic-post__lateral { display: none; } }
.ic-post__conteudo { font-family: Montserrat, sans-serif; font-size: 17px; line-height: 1.85; color: var(--ic-grafite); }
.ic-post__conteudo > p:first-child::first-letter { font-family: Cinzel, serif; float: left; font-size: 64px; line-height: 0.9; padding: 6px 12px 0 0; color: var(--ic-oliva); }
.ic-post__conteudo p { margin: 0 0 1.3em; }
.ic-post .ic-post__conteudo h2 { font-family: Cinzel, serif; font-weight: 500; font-size: 26px; line-height: 1.3; color: var(--ic-oliva); margin: 2.1em 0 0.7em; scroll-margin-top: 110px; }
.ic-post__conteudo h3 { font-family: Cinzel, serif; font-weight: 500; font-size: 20px; color: var(--ic-oliva); margin: 1.8em 0 0.5em; }
.ic-post__conteudo a { color: var(--ic-ambar); }
.ic-post__conteudo ul, .ic-post__conteudo ol { margin: 0 0 1.5em; padding-left: 0; list-style: none; }
.ic-post__conteudo ul li { position: relative; padding: 9px 0 9px 22px; border-bottom: 1px solid var(--ic-linha); }
.ic-post__conteudo ul li::before { content: ""; position: absolute; left: 2px; top: 1.15em; width: 6px; height: 6px; border-radius: 50%; background: var(--ic-ouro); }
.ic-post__conteudo blockquote,
.ic-post__conteudo .wp-block-quote {
	margin: 2em 0;
	padding: 6px 0 6px 26px;
	border-left: 1px solid var(--ic-ouro);
}
.ic-post__conteudo blockquote p { font-family: "Cormorant Garamond", serif; font-style: italic; font-size: 28px; line-height: 1.3; color: var(--ic-ambar); margin: 0; }
.ic-post__conteudo img { height: auto; max-width: 100%; }
.ic-post__aviso { margin: 40px 0 0; font-size: 13px; color: #62655A; font-style: italic; }

.ic-cta-meio { margin: 2.4em 0; padding: 30px 32px; background: var(--ic-profundo); color: var(--ic-off); position: relative; }
.ic-cta-meio::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--ic-ouro); }
.ic-post__conteudo .ic-cta-meio p { margin: 0; }
.ic-post .ic-cta-meio__t { font-family: Cinzel, serif; font-size: 22px; line-height: 1.3; color: #fff; }
.ic-cta-meio__x { font-size: 15px; line-height: 1.6; color: #E6E3DA; margin: 10px 0 20px !important; }
.ic-cta-meio__acoes { display: flex; flex-wrap: wrap; gap: 14px 22px; align-items: center; }
.ic-post__conteudo .ic-cta-meio__btn,
.ic-post__conteudo .ic-cta-meio__wa { text-decoration: none; font-size: 12px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; }
.ic-post__conteudo .ic-cta-meio__btn { background: var(--ic-ouro); color: var(--ic-profundo); padding: 14px 24px; transition: background-color 0.2s ease; }
.ic-post__conteudo .ic-cta-meio__btn:hover { background: var(--ic-off); }
.ic-post__conteudo .ic-cta-meio__wa { color: var(--ic-ouro); border-bottom: 1px solid currentColor; padding-bottom: 2px; }

.ic-indice--movel { margin: 0 0 36px; border: 1px solid var(--ic-linha); background: #fff; }
.ic-indice--movel summary { cursor: pointer; padding: 16px 20px; font-size: 12px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ic-ambar); list-style: none; display: flex; justify-content: space-between; }
.ic-indice--movel summary::after { content: "+"; font-size: 18px; line-height: 1; color: var(--ic-ouro); }
.ic-indice--movel[open] summary::after { content: "−"; }
.ic-indice--movel ol { margin: 0; padding: 0 20px 16px 38px; }
.ic-indice--movel li { padding: 5px 0; font-size: 15px; }
.ic-indice--movel a { color: var(--ic-oliva); text-decoration: none; }
@media (min-width: 1025px) { .ic-indice--movel { display: none; } }

.ic-lateral { position: sticky; top: 110px; display: flex; flex-direction: column; gap: 28px; }
.admin-bar .ic-lateral { top: 142px; }
.ic-indice__t, .ic-lateral__rot { margin: 0 0 12px; font-size: 11px; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; color: var(--ic-ambar); }
.ic-indice ol { list-style: none; margin: 0; padding: 0; counter-reset: ic; border-left: 1px solid var(--ic-linha); }
.ic-indice li { counter-increment: ic; }
.ic-indice a { display: block; padding: 7px 0 7px 16px; margin-left: -1px; border-left: 1px solid transparent; font-size: 14px; line-height: 1.4; color: #62655A; text-decoration: none; transition: color 0.2s ease, border-color 0.2s ease; }
.ic-indice a:hover { color: var(--ic-oliva); }
.ic-indice a.is-ativo { color: var(--ic-oliva); border-left-color: var(--ic-ouro); font-weight: 600; }
.ic-lateral__cta { padding: 26px 24px; background: #fff; border-top: 2px solid var(--ic-ouro); }
.ic-lateral__t { font-family: Cinzel, serif; font-size: 19px; line-height: 1.35; color: var(--ic-oliva); margin: 0 0 18px; }
.ic-lateral__btn { display: block; text-align: center; background: var(--ic-oliva); color: #fff !important; text-decoration: none; padding: 14px 16px; font-size: 11.5px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; transition: background-color 0.2s ease; }
.ic-lateral__btn:hover { background: var(--ic-profundo); }
.ic-lateral__wa { display: block; text-align: center; margin-top: 10px; padding: 12px; border: 1px solid rgba(89, 99, 64, 0.4); color: var(--ic-oliva) !important; text-decoration: none; font-size: 11.5px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; }
.ic-lateral__wa:hover { border-color: var(--ic-oliva); }
.ic-lateral__nota { margin: 14px 0 0; font-size: 12.5px; line-height: 1.5; color: #62655A; }

.ic-compartilhar { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 12px; margin-top: 36px; padding: 18px 0; border-top: 1px solid var(--ic-linha); border-bottom: 1px solid var(--ic-linha); }
.ic-compartilhar span { font-size: 11px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: var(--ic-ambar); margin-right: auto; }
.ic-compartilhar a, .ic-compartilhar button {
	background: transparent !important;
	border: 1px solid rgba(89, 99, 64, 0.35) !important;
	border-radius: 0 !important;
	color: var(--ic-oliva) !important;
	padding: 9px 14px !important;
	font: 600 11px/1 Montserrat, sans-serif !important;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
}
.ic-compartilhar a:hover, .ic-compartilhar button:hover { background: var(--ic-oliva) !important; color: #fff !important; }

.ic-autora { display: flex; gap: 26px; align-items: flex-start; margin-top: 40px; padding: 32px; background: #fff; border-top: 2px solid var(--ic-ouro); }
.ic-autora__foto { flex: none; width: 112px; height: 112px; object-fit: cover; object-position: center 20%; border-radius: 50%; }
.ic-autora p { margin: 0; }
.ic-autora__rot { font-size: 11px; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; color: var(--ic-ambar); }
.ic-autora__nome { font-family: Cinzel, serif; font-size: 24px; color: var(--ic-oliva); margin: 4px 0 8px !important; }
.ic-autora__txt { font-size: 15px; line-height: 1.65; color: #4A4D44; }
.ic-autora__acoes { display: flex; flex-wrap: wrap; gap: 10px 20px; margin-top: 14px !important; }
.ic-autora__acoes a { font-size: 12px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ic-ambar); text-decoration: none; border-bottom: 1px solid currentColor; }
@media (max-width: 600px) { .ic-autora { flex-direction: column; padding: 24px 20px; } .ic-autora__foto { width: 84px; height: 84px; } }

.ic-relacionados { background: #fff; padding: 88px 20px; }
.ic-relacionados__in { max-width: 1200px; margin: 0 auto; }
.ic-relacionados__rot, .ic-post__final-rot { margin: 0 0 12px; font-size: 11px; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--ic-ambar); }
.ic-post .ic-relacionados__t { font-family: Cinzel, serif; font-weight: 400; font-size: clamp(26px, 3vw, 36px); line-height: 1.2; color: var(--ic-oliva); margin: 0 0 40px; }
.ic-post__final { background: var(--ic-oliva); padding: 80px 20px; }
.ic-post__final-in { max-width: 1200px; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 30px 60px; }
.ic-post__final-in > div { flex: 1 1 520px; }
.ic-post__final-rot { color: var(--ic-ouro); }
.ic-post .ic-post__final-t { font-family: Cinzel, serif; font-weight: 400; font-size: clamp(26px, 3vw, 36px); line-height: 1.2; color: var(--ic-off); margin: 0 0 12px; }
.ic-post__final-x { margin: 0; color: #E6E3DA; font-size: 16px; line-height: 1.65; max-width: 620px; }
.ic-post__final-acoes { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; margin: 0; }
.ic-post__final-btn { background: var(--ic-ouro); color: var(--ic-profundo) !important; text-decoration: none; padding: 17px 28px; font-size: 12px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; transition: background-color 0.2s ease; }
.ic-post__final-btn:hover { background: var(--ic-off); }
.ic-post__final-wa { color: var(--ic-ouro) !important; font-size: 12px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; text-decoration: none; border-bottom: 1px solid currentColor; }

.ic-barra-post {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 94;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 12px 88px 12px 20px;
	background: rgba(75, 85, 55, 0.97);
	border-top: 1px solid rgba(203, 170, 109, 0.4);
	color: var(--ic-off);
	font-size: 14px;
	animation: ic-sobe 0.35s ease;
}
.ic-barra-post[hidden] { display: none; }
.ic-barra-post span { font-family: Cinzel, serif; line-height: 1.3; }
.ic-barra-post a { flex: none; background: var(--ic-ouro); color: var(--ic-profundo) !important; text-decoration: none; padding: 11px 16px; font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; }
@keyframes ic-sobe { from { transform: translateY(100%); } to { transform: none; } }
@media (min-width: 1025px) { .ic-barra-post { display: none !important; } }
@media (max-width: 480px) { .ic-barra-post span { font-size: 12.5px; } }
.ic-artigo-single .ic-wa { bottom: 22px; }
@media (max-width: 1024px) { .ic-artigo-single .ic-wa { bottom: 84px; } }

/* ---------- WhatsApp flutuante ---------- */
.ic-wa {
	position: fixed;
	right: 22px;
	bottom: 22px;
	z-index: 95;
	display: flex;
	align-items: center;
	gap: 0;
	height: 56px;
	padding: 0 16px;
	background: var(--ic-profundo);
	color: var(--ic-off) !important;
	border: 1px solid rgba(203, 170, 109, 0.55);
	border-radius: 28px;
	box-shadow: 0 16px 34px -16px rgba(51, 53, 46, 0.6);
	text-decoration: none !important;
	transition: background-color 0.25s ease, bottom 0.3s ease;
}
.ic-wa svg { flex: none; }
.ic-wa span { max-width: 0; overflow: hidden; white-space: nowrap; font-family: Montserrat, sans-serif; font-size: 12px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; transition: max-width 0.35s ease, margin 0.35s ease; }
.ic-wa:hover { background: var(--ic-oliva); }
.ic-wa:hover span, .ic-wa:focus span { max-width: 120px; margin-left: 10px; }
.ic-com-cookies .ic-wa { bottom: 96px; }
@media (max-width: 767px) {
	.ic-wa { right: 16px; bottom: 16px; }
	.ic-com-cookies .ic-wa { bottom: 150px; }
}

/* ---------- Aviso de cookies ---------- */
.ic-cookies {
	position: fixed;
	left: 22px;
	bottom: 22px;
	z-index: 96;
	display: flex;
	align-items: center;
	gap: 20px;
	max-width: 620px;
	padding: 16px 18px 16px 22px;
	background: #fff;
	border-left: 2px solid var(--ic-ouro);
	box-shadow: 0 18px 40px -20px rgba(51, 53, 46, 0.45);
	font-family: Montserrat, sans-serif;
}
.ic-cookies[hidden] { display: none; }
.ic-cookies p { margin: 0; font-size: 13px; line-height: 1.55; color: var(--ic-grafite); }
.ic-cookies a { color: var(--ic-ambar); }
.ic-cookies button { flex: none; background: var(--ic-oliva); color: #fff; border: 0; border-radius: 0; padding: 12px 20px; font: 600 11.5px/1 Montserrat, sans-serif; letter-spacing: 0.14em; text-transform: uppercase; cursor: pointer; }
.ic-cookies button:hover { background: var(--ic-profundo); }
@media (max-width: 767px) {
	.ic-cookies { left: 12px; right: 12px; bottom: 12px; flex-direction: column; align-items: stretch; gap: 12px; }
}

/* ---------- Movimento reduzido ---------- */
@media (prefers-reduced-motion: reduce) {
	.ic-site *, .ic-site *::before, .ic-site *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
	.elementor-invisible { visibility: visible !important; }
}

/* No editor, nada escondido. */
.ic-no-editor .ic-cookies { display: none !important; }

/* Galeria do escritório (home): a foto principal ocupa a linha inteira; as vagas ficam lado a lado. */
@media (min-width: 768px) {
  .ic-galeria__principal { grid-column: 1 / -1; }
}
.ic-vaga-foto .elementor-heading-title { padding: 0 12px; }
