@import url("https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600&family=Montserrat:wght@300;400;500;600;700&display=swap");

:root {
	--gf-ink: #0d1c2b;
	--gf-ink-soft: #122536;
	--gf-copper: #a86315;
	--gf-gold: #c68a3d;
	--gf-paper: #f6f7f8;
	--gf-white: #fff;
	--gf-muted: #596064;
	--gf-line: #e1e4e6;
	--gf-serif: "Cinzel", Georgia, serif;
	--gf-sans: "Montserrat", sans-serif;
	--gf-shell: min(1200px, calc(100vw - 48px));
	--gf-ease: cubic-bezier(.2, .7, .2, 1);
}

html {
	scroll-behavior: smooth;
}

body.gf-site {
	margin: 0;
	color: var(--gf-ink);
	background: var(--gf-white);
	font-family: var(--gf-sans);
	-webkit-font-smoothing: antialiased;
}

body.gf-site *,
body.gf-site *::before,
body.gf-site *::after {
	box-sizing: border-box;
}

/* Contêineres técnicos guardam CSS/JS e nunca devem ocupar espaço visual. */
body .htec-css-engine,
body .elementor-element.htec-css-engine {
	display: none !important;
	position: absolute !important;
	width: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

body.gf-site a {
	color: inherit;
}

.gf-shell {
	width: var(--gf-shell);
	margin-inline: auto;
}

.gf-shell--narrow {
	width: min(820px, calc(100vw - 48px));
	margin-inline: auto;
}

.gf-main {
	min-height: 55vh;
}

/* Páginas nativas simples (page.php) — Código de Ética, Política de Privacidade/LGPD. */
.gf-page-article {
	width: min(820px, calc(100vw - 48px));
	margin: 64px auto 96px;
	color: #35393D;
	font-family: Montserrat, sans-serif;
}

.gf-page-article__title {
	margin: 0 0 32px;
	color: #0D1C2B;
	font: 600 clamp(28px, 4vw, 40px)/1.2 Cinzel, Georgia, serif;
}

.gf-page-article__body h2 {
	margin: 40px 0 14px;
	color: #0D1C2B;
	font: 600 20px/1.3 Cinzel, Georgia, serif;
}

.gf-page-article__body p,
.gf-page-article__body li {
	font-size: 15px;
	line-height: 1.75;
}

.gf-page-article__body p {
	margin: 0 0 16px;
}

.gf-page-article__body ul {
	margin: 0 0 20px;
	padding-left: 20px;
}

.gf-page-article__body li {
	margin-bottom: 12px;
}

.gf-page-article__body li::marker {
	color: #A86315;
}

.gf-page-article__body strong {
	color: #0D1C2B;
}

.gf-page-article__body a {
	color: #A86315;
}

.gf-page-article__body a:hover {
	text-decoration: underline;
}

/* Protege cabeçalhos internos contra regras antigas aplicadas ao elemento <header>. */
.gf2907-home-blog-head {
	position: relative !important;
	inset: auto !important;
	z-index: auto !important;
	background: transparent !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	box-shadow: none !important;
	transform: none !important;
}

/* Cabeçalho Elementor da Home: uma linha, hover contido e login independente. */
.gf-header,
.gf-header.gf-scrolled,
.gf-header.gf-mini {
	background: rgba(13, 28, 43, .97) !important;
}

.gf-header .gf-nav {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: clamp(14px, 1.5vw, 28px) !important;
	width: min(100%, 1440px) !important;
	max-width: 1440px !important;
	margin-inline: auto !important;
	padding-inline: clamp(20px, 2.8vw, 48px) !important;
}

.gf-header .gf-brand {
	flex: 0 1 360px !important;
	width: clamp(270px, 22vw, 360px) !important;
	min-width: 250px !important;
	max-width: 360px !important;
	margin: 0 !important;
	padding: 0 !important;
	justify-content: flex-start !important;
}

.gf-header .gf-brand img {
	width: 100% !important;
	max-width: 340px !important;
	height: auto !important;
	transition: max-width .25s var(--gf-ease);
}

.gf-header.gf-mini .gf-brand img {
	max-width: 272px !important;
}

.gf-header .gf-menu {
	display: flex !important;
	flex: 1 1 auto !important;
	flex-flow: row nowrap !important;
	align-items: center !important;
	justify-content: center !important;
	gap: clamp(15px, 1.65vw, 30px) !important;
	width: auto !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.gf-header .gf-menu > .elementor-element {
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: max-content !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.gf-header .gf-menu p,
.gf-header .gf-menu a {
	margin: 0 !important;
	white-space: nowrap !important;
	line-height: 1.2 !important;
}

.gf-header .gf-menu a {
	display: inline-block !important;
	position: relative !important;
	padding: 7px 0 !important;
	background: linear-gradient(#a86315, #a86315) center 100% / 0 1px no-repeat !important;
	text-decoration: none !important;
	transition: color .25s ease, background-size .25s ease !important;
}

.gf-header .gf-menu a:hover,
.gf-header .gf-menu a.gf-ativo {
	color: #c68a3d !important;
	background-size: 100% 1px !important;
}

.gf-header .gf-menu a::before,
.gf-header .gf-menu a::after,
.gf-header .gf-menu > .elementor-element::before,
.gf-header .gf-menu > .elementor-element::after,
.gf-header .gf-nav-cta .elementor-button::before,
.gf-header .gf-nav-cta .elementor-button::after {
	display: none !important;
	content: none !important;
}

.gf-header .gf-nav-cta {
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
}

.gf-header .gf-nav-cta .elementor-button {
	width: auto !important;
	min-width: max-content !important;
	white-space: nowrap !important;
	overflow: hidden !important;
}

.gf-header .gf-nav-login-wrap {
	position: relative !important;
	flex: 0 0 40px !important;
	width: 40px !important;
}

.gf-header .gf-login-btn {
	display: grid !important;
	width: 40px !important;
	height: 40px !important;
	padding: 0 !important;
	place-items: center !important;
	color: #fff !important;
	background: transparent !important;
	border: 1px solid rgba(255, 255, 255, .18) !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	line-height: 1 !important;
}

.gf-header .gf-login-btn:hover,
.gf-header .gf-login-btn:focus-visible {
	color: #c68a3d !important;
	background: rgba(168, 99, 21, .08) !important;
	border-color: #a86315 !important;
}

.gf-header .gf-login-btn {
	position: relative !important;
	border: 0 !important;
}

.gf-header .gf-login-btn .fas,
.gf-header .gf-login-btn .gf-login-icon {
	display: none !important;
}

.gf-header .gf-login-btn::before {
	display: inline-block !important;
	color: currentColor !important;
	content: "\f007" !important;
	font-family: "Font Awesome 5 Free" !important;
	font-size: 17px !important;
	font-style: normal !important;
	font-weight: 900 !important;
	line-height: 1 !important;
}

.gf-header .gf-login-btn::after {
	display: none !important;
	content: none !important;
}

.gf-header .gf-login {
	position: relative;
	display: flex;
	align-items: center;
}

.gf-header .gf-login-menu {
	position: absolute;
	top: calc(100% + 12px);
	right: 0;
	z-index: 220;
	display: none;
	min-width: 188px;
	padding: 10px 0;
	background: #0d1c2b;
	border: 1px solid rgba(198, 138, 61, .32);
	box-shadow: 0 18px 45px rgba(0, 0, 0, .3);
}

.gf-header .gf-login:hover .gf-login-menu,
.gf-header .gf-login:focus-within .gf-login-menu,
.gf-header .gf-login-menu.gf-open {
	display: block;
}

.gf-header .gf-login-menu a {
	display: block;
	padding: 11px 20px;
	color: #fff !important;
	font-size: 13px;
	text-decoration: none !important;
	white-space: nowrap;
}

.gf-header .gf-login-menu a:hover,
.gf-header .gf-login-menu a:focus-visible {
	color: #c68a3d !important;
	background: rgba(168, 99, 21, .1);
}

.gf-login-icon {
	display: block !important;
	width: 19px !important;
	height: 19px !important;
	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 1.7 !important;
	stroke-linecap: round !important;
	stroke-linejoin: round !important;
}

.gf-burger {
	display: none !important;
}

.gf-floating-menu-overlay {
	position: fixed;
	z-index: 209;
	inset: 0;
	background: rgba(4, 12, 19, .68);
	backdrop-filter: blur(5px);
	opacity: 0;
	visibility: hidden;
	transition: .3s;
}

.gf-floating-menu-overlay.gf-open {
	opacity: 1;
	visibility: visible;
}

.gf-floating-menu-panel {
	position: fixed;
	z-index: 210;
	top: 0;
	right: 0;
	width: min(390px, 90vw);
	height: 100dvh;
	padding: 90px 42px 42px;
	overflow-y: auto;
	color: #fff;
	background: #0d1c2b;
	box-shadow: -28px 0 70px rgba(0, 0, 0, .35);
	transform: translateX(102%);
	transition: transform .45s var(--gf-ease);
}

.gf-floating-menu-panel.gf-open {
	transform: none;
}

.gf-floating-menu-close {
	position: absolute;
	top: 24px;
	right: 28px;
	width: 42px;
	height: 42px;
	color: #fff;
	background: transparent;
	border: 1px solid rgba(255, 255, 255, .18);
	font-size: 25px;
	line-height: 1;
	cursor: pointer;
}

.gf-floating-menu-label {
	margin: 0 0 30px;
	color: #c68a3d;
	font: 600 11px/1.2 var(--gf-sans);
	letter-spacing: .18em;
	text-transform: uppercase;
}

.gf-floating-menu-nav {
	display: grid;
}

.gf-floating-menu-nav a {
	padding: 15px 0;
	color: #fff !important;
	border-bottom: 1px solid rgba(255, 255, 255, .1);
	font: 500 15px/1.3 var(--gf-sans);
	text-decoration: none !important;
	white-space: nowrap;
}

.gf-floating-menu-nav a:hover {
	padding-left: 7px;
	color: #c68a3d !important;
}

.gf-floating-menu-actions {
	display: grid;
	gap: 12px;
	margin-top: 34px;
}

.gf-floating-menu-actions a,
.gf-floating-menu-actions button {
	display: block;
	width: 100%;
	padding: 14px 16px;
	color: #fff;
	background: transparent;
	border: 1px solid #a86315;
	font: 600 11px/1 var(--gf-sans);
	letter-spacing: .09em;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	cursor: pointer;
}

.gf-floating-menu-actions a {
	background: #a86315;
}

.gf-side-menu-open {
	overflow: hidden !important;
}

.gf-visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	overflow: hidden !important;
	border: 0 !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
}

/* Remove o primeiro bloco de newsletter legado, inclusive em páginas já importadas. */
.elementor-element-2172fa4 {
	display: none !important;
}

.gf-header .elementor-element.gf-burger,
.gf-header .elementor-element-3a17a0ea {
	display: none !important;
}

.gf-header.gf-oculto {
	transform: translate3d(0, calc(-100% - 52px), 0) !important;
}

.gf-header.gf-oculto:focus-within {
	transform: none !important;
}

@media (max-width: 1280px) {
	.gf-header .gf-nav {
		gap: 14px !important;
		padding-inline: 20px !important;
	}

	.gf-header .gf-brand {
		flex-basis: 270px !important;
		width: 270px !important;
		min-width: 230px !important;
	}

	.gf-header .gf-menu {
		gap: 16px !important;
	}

	.gf-header .gf-menu p,
	.gf-header .gf-menu a {
		font-size: 11px !important;
		letter-spacing: .01em !important;
	}

	.gf-header .gf-nav-cta .elementor-button {
		padding: 11px 14px !important;
		font-size: 10px !important;
	}
}

@media (max-width: 820px) {
	.gf-native-contact__grid,
	.gf-native-footer__grid {
		grid-template-columns: 1fr;
	}

	.gf-native-contact__row {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.gf-native-footer__grid {
		gap: 38px;
	}

	.gf-native-footer .gf-newsletter {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.gf-floating-menu-toggle {
		top: 92px !important;
	}

	.gf-header .gf-nav {
		padding-inline: 18px !important;
	}

	.gf-header .gf-brand {
		flex-basis: auto !important;
		width: min(250px, 65vw) !important;
		min-width: 0 !important;
	}

	.gf-header .gf-menu {
		display: none !important;
		position: fixed !important;
		inset: 84px 0 auto !important;
		flex-direction: column !important;
		align-items: stretch !important;
		width: 100% !important;
		padding: 24px !important;
	}

	.gf-header .gf-menu.gf-open {
		display: flex !important;
	}

	.gf-header .gf-menu > .elementor-element,
	.gf-header .gf-menu a {
		display: block !important;
		width: 100% !important;
	}

	.gf-header .gf-nav-cta {
		margin-left: auto !important;
	}
}

/* v1.0.80 — revisão final: foto do escritório e narração sem rosa. */
.gf-office-photo {
	background-image: url("https://novosite.gouveafranchi.com.br/wp-content/uploads/2026/08/IMG_0808.jpg-scaled.jpeg") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
}

[id^="tts__listent_content"],
[id^="tts__listent_content"]:hover,
[id^="tts__listent_content"]:focus-visible {
	color: #fff !important;
	background: #0d1c2b !important;
	border-color: #a86315 !important;
	box-shadow: none !important;
}

[id^="tts__listent_content"] svg,
[id^="tts__listent_content"] svg * {
	color: #c68a3d !important;
	stroke: currentColor !important;
}

.gf-video-hero .gf-video-hero-open {
	left: auto !important;
	right: 34px !important;
}

.gf-video-hero .gf-video-hero-player iframe,
.gf-video-hero .gf-video-hero-player .elementor-video {
	inset: 0 !important;
	width: 100% !important;
	height: 100% !important;
	min-width: 0 !important;
	min-height: 0 !important;
	object-fit: contain !important;
	transform: scale(var(--gf-video-zoom, 1)) !important;
	transform-origin: center center !important;
	will-change: transform;
}

.gf-video-hero .gf-video-hero-player,
.gf-video-hero .gf-video-hero-player .elementor-widget-container,
.gf-video-hero .gf-video-hero-player .elementor-wrapper {
	background: #05080b !important;
}

/*
 * v1.0.83 — maior área útil possível para o vídeo sem cortar o quadro.
 * A altura acompanha o monitor até um limite confortável e o Hero não soma
 * mais os paddings herdados do modelo original.
 */
body .gf-hero.gf-video-hero {
	height: clamp(520px, 34vw, 720px) !important;
	min-height: clamp(520px, 34vw, 720px) !important;
	margin-top: 84px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	background-color: #05080b !important;
	border-top: 1px solid #0d1c2b !important;
}

body .gf-header,
body .gf-header.gf-scrolled,
body .gf-header.gf-mini {
	border-bottom: 1px solid #0d1c2b !important;
}

body .gf-header::after {
	background: #0d1c2b !important;
}

/*
 * v1.0.86 — Hero do Blog conforme a arte aprovada.
 * Remove a antiga marca d'água ampliada e usa a ilustração arquitetônica
 * com véu Oxford suficiente para preservar o contraste da chamada.
 */
body .gfx-blog-hero {
	position: relative !important;
	isolation: isolate;
	background-color: #0d1c2b !important;
	background-image:
		linear-gradient(90deg, rgba(13, 28, 43, .62) 0%, rgba(13, 28, 43, .43) 48%, rgba(13, 28, 43, .24) 100%),
		url("https://www.gouveafranchi.com.br/wp-content/uploads/2026/08/SITE_ILUSTRACOES-07-1-1-1.webp") !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
}

body .gfx-blog-hero::before {
	content: none !important;
	display: none !important;
	background: none !important;
}

body .gfx-blog-hero > .e-con-inner {
	position: relative;
	z-index: 1;
}

@media (max-width: 767px) {
	body .gfx-blog-hero {
		background-image:
			linear-gradient(180deg, rgba(13, 28, 43, .72), rgba(13, 28, 43, .58)),
			url("https://www.gouveafranchi.com.br/wp-content/uploads/2026/08/SITE_ILUSTRACOES-07-1-1-1.webp") !important;
		background-position: 58% center !important;
	}
}

/* v1.0.84 — atendimento inicial em formato de conversa antes do WhatsApp. */
body.gf-wa-assistant-open {
	overflow: hidden !important;
}

.gf-wa-assistant[hidden] {
	display: none !important;
}

.gf-wa-assistant {
	position: fixed;
	z-index: 1000000;
	inset: 0;
	display: grid;
	place-items: center;
	padding: 24px;
	font-family: Montserrat, sans-serif;
}

.gf-wa-assistant__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(5, 8, 11, .78);
	backdrop-filter: blur(9px);
	-webkit-backdrop-filter: blur(9px);
}

.gf-wa-assistant__dialog {
	position: relative;
	display: grid;
	grid-template-rows: auto 3px minmax(210px, 1fr) auto auto;
	width: min(620px, 100%);
	max-height: calc(100vh - 48px);
	max-height: min(760px, calc(100dvh - 48px));
	overflow: hidden;
	color: #e7ebed;
	background: linear-gradient(145deg, rgba(255, 255, 255, .035), transparent 42%), #0d1c2b;
	border: 1px solid rgba(198, 138, 61, .46);
	box-shadow: 0 35px 100px rgba(0, 0, 0, .5);
	outline: 0;
	animation: gf-wa-dialog-in .32s cubic-bezier(.22, 1, .36, 1) both;
}

.gf-wa-assistant__dialog > header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 22px;
	padding: 26px 28px 21px;
	border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.gf-wa-assistant__dialog > header span {
	display: block;
	margin-bottom: 7px;
	color: #c68a3d;
	font: 600 9px/1.2 Montserrat, sans-serif;
	letter-spacing: .2em;
	text-transform: uppercase;
}

.gf-wa-assistant__dialog > header h2 {
	margin: 0;
	color: #fff;
	font: 600 clamp(20px, 3vw, 27px)/1.2 Cinzel, Georgia, serif;
}

.gf-wa-assistant__dialog > header button {
	display: grid;
	place-items: center;
	flex: 0 0 38px;
	width: 38px;
	height: 38px;
	padding: 0 !important;
	color: #c68a3d !important;
	background: transparent !important;
	border: 1px solid rgba(198, 138, 61, .48) !important;
	border-radius: 50% !important;
	font: 300 25px/1 Montserrat, sans-serif !important;
	cursor: pointer;
}

.gf-wa-assistant__dialog > header button:hover,
.gf-wa-assistant__dialog > header button:focus-visible {
	color: #fff !important;
	background: #a86315 !important;
	outline: 0;
}

.gf-wa-assistant__progress {
	height: 3px;
	background: rgba(255, 255, 255, .08);
}

.gf-wa-assistant__progress i {
	display: block;
	width: 0;
	height: 100%;
	background: linear-gradient(90deg, #a86315, #c68a3d, #25d366);
	transition: width .35s ease;
}

.gf-wa-assistant__transcript {
	display: flex;
	flex-direction: column;
	gap: 10px;
	min-height: 0;
	padding: 24px 28px 16px;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: rgba(198, 138, 61, .6) transparent;
}

.gf-wa-assistant__bubble {
	width: fit-content;
	max-width: 84%;
	padding: 11px 14px;
	font: 400 13.5px/1.55 Montserrat, sans-serif;
	animation: gf-wa-bubble-in .28s ease both;
}

.gf-wa-assistant__bubble--office {
	align-self: flex-start;
	color: #e4e8ea;
	background: #182a3a;
	border-left: 2px solid #c68a3d;
}

.gf-wa-assistant__bubble--visitor {
	align-self: flex-end;
	color: #0d1c2b;
	background: #dce3e5;
	border-right: 2px solid #25d366;
}

.gf-wa-assistant__summary {
	display: grid;
	gap: 6px;
	margin-top: 4px;
	padding: 16px;
	color: #acb9bd;
	background: rgba(255, 255, 255, .035);
	border: 1px solid rgba(255, 255, 255, .1);
	font: 400 12px/1.5 Montserrat, sans-serif;
}

.gf-wa-assistant__summary strong {
	margin-bottom: 3px;
	color: #fff;
	font-family: Cinzel, Georgia, serif;
}

.gf-wa-assistant__question {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 10px 12px;
	padding: 16px 28px 20px;
	background: rgba(5, 8, 11, .22);
	border-top: 1px solid rgba(255, 255, 255, .07);
}

.gf-wa-assistant__question > label:not(.gf-wa-assistant__consent) {
	grid-column: 1 / -1;
	color: #acb9bd;
	font: 600 9px/1.2 Montserrat, sans-serif;
	letter-spacing: .15em;
	text-transform: uppercase;
}

.gf-wa-assistant__question input:not([type="checkbox"]),
.gf-wa-assistant__question select,
.gf-wa-assistant__question textarea {
	width: 100%;
	min-height: 48px;
	margin: 0;
	padding: 12px 14px;
	color: #fff;
	background: #152737;
	border: 1px solid rgba(172, 185, 189, .24);
	border-radius: 0;
	font: 400 13px/1.45 Montserrat, sans-serif;
	box-shadow: none;
}

.gf-wa-assistant__question textarea {
	min-height: 92px;
	resize: vertical;
}

.gf-wa-assistant__question select option {
	color: #fff;
	background: #0d1c2b;
}

.gf-wa-assistant__question input:focus,
.gf-wa-assistant__question select:focus,
.gf-wa-assistant__question textarea:focus {
	border-color: #c68a3d;
	outline: 2px solid rgba(198, 138, 61, .18);
	outline-offset: 0;
}

.gf-wa-assistant__question > button {
	align-self: stretch;
	min-height: 48px;
	padding: 13px 20px !important;
	color: #fff !important;
	background: #a86315 !important;
	border: 1px solid #a86315 !important;
	border-radius: 0 !important;
	font: 600 10px/1.2 Montserrat, sans-serif !important;
	letter-spacing: .1em;
	text-transform: uppercase;
	cursor: pointer;
}

.gf-wa-assistant__question > button:hover,
.gf-wa-assistant__question > button:focus-visible {
	background: #c68a3d !important;
	border-color: #c68a3d !important;
	outline: 0;
}

.gf-wa-assistant__consent {
	grid-column: 1 / -1;
	display: flex;
	align-items: flex-start;
	gap: 9px;
	color: #acb9bd;
	font: 400 11px/1.5 Montserrat, sans-serif;
}

.gf-wa-assistant__consent input {
	flex: 0 0 auto;
	margin-top: 3px;
	accent-color: #a86315;
}

.gf-wa-assistant__consent a {
	color: #c68a3d !important;
	text-decoration: underline !important;
}

.gf-wa-assistant__question [data-gf-wa-finish] {
	grid-column: 1 / -1;
	background: #168c46 !important;
	border-color: #168c46 !important;
}

.gf-wa-assistant__question [data-gf-wa-finish]:hover,
.gf-wa-assistant__question [data-gf-wa-finish]:focus-visible {
	background: #1fb55b !important;
	border-color: #1fb55b !important;
}

.gf-wa-assistant__dialog > footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 13px 28px;
	color: rgba(172, 185, 189, .72);
	background: rgba(5, 8, 11, .25);
	border-top: 1px solid rgba(255, 255, 255, .06);
	font: 500 9px/1.3 Montserrat, sans-serif;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.gf-wa-assistant__dialog > footer button {
	padding: 4px 0 !important;
	color: #c68a3d !important;
	background: transparent !important;
	border: 0 !important;
	font: 600 10px/1.2 Montserrat, sans-serif !important;
	cursor: pointer;
}

@keyframes gf-wa-dialog-in {
	from { opacity: 0; transform: translateY(18px) scale(.985); }
	to { opacity: 1; transform: none; }
}

@keyframes gf-wa-bubble-in {
	from { opacity: 0; transform: translateY(7px); }
	to { opacity: 1; transform: none; }
}

@media (max-width: 640px) {
	.gf-wa-assistant {
		align-items: end;
		padding: 0;
	}

	.gf-wa-assistant__dialog {
		width: 100%;
		max-height: 94vh;
		max-height: min(820px, 94dvh);
		border-right: 0;
		border-bottom: 0;
		border-left: 0;
	}

	.gf-wa-assistant__dialog > header,
	.gf-wa-assistant__transcript,
	.gf-wa-assistant__question {
		padding-right: 20px;
		padding-left: 20px;
	}

	.gf-wa-assistant__question {
		grid-template-columns: 1fr;
	}

	.gf-wa-assistant__question > button {
		width: 100%;
	}

	.gf-wa-assistant__dialog > footer {
		padding-right: 20px;
		padding-left: 20px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.gf-wa-assistant__dialog,
	.gf-wa-assistant__bubble,
	.gf-wa-assistant__progress i {
		animation: none;
		transition: none;
	}
}

/*
 * v1.0.81 — localização das páginas internas com o mesmo plano claro da Home.
 * A faixa começa antes dos cards e alcança o fim da seção sem alterar o bloco
 * de contato escuro imediatamente acima.
 */
.gf-contact--internal-gray .gf-map-wrap {
	position: relative !important;
	z-index: 0 !important;
	isolation: isolate;
}

.gf-contact--internal-gray .gf-map-wrap::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: -42px;
	bottom: -105px;
	left: 50%;
	width: 100vw;
	background: #f6f7f8;
	transform: translateX(-50%);
	pointer-events: none;
}

@media (max-width: 767px) {
	.gf-video-hero .gf-video-hero-open {
		right: 18px !important;
	}

	body .gf-hero.gf-video-hero {
		height: clamp(360px, 100vw, 520px) !important;
		min-height: clamp(360px, 100vw, 520px) !important;
		margin-top: 84px !important;
	}
}

@media (max-width: 1024px) {
	.gf-contact--internal-gray .gf-map-wrap::before {
		bottom: -80px;
	}
}

@media (max-width: 767px) {
	.gf-contact--internal-gray .gf-map-wrap::before {
		bottom: -64px;
	}
}

.gf-skip-link {
	position: fixed;
	z-index: 99999;
	top: 12px;
	left: 12px;
	padding: 10px 16px;
	color: var(--gf-white);
	background: var(--gf-ink);
	transform: translateY(-160%);
}

.gf-skip-link:focus {
	transform: none;
}

.gf-header {
	position: relative;
	z-index: 1000;
	color: var(--gf-ink);
	background: rgba(255, 255, 255, .96);
	border-bottom: 1px solid var(--gf-line);
	backdrop-filter: blur(16px);
}

.gf-header__inner {
	display: grid;
	grid-template-columns: minmax(170px, 1fr) auto minmax(170px, 1fr);
	align-items: center;
	min-height: 82px;
	gap: 28px;
}

.gf-brand {
	line-height: 1;
}

.gf-brand .custom-logo-link {
	display: inline-flex;
}

.gf-brand .custom-logo {
	width: auto;
	max-width: 190px;
	max-height: 52px;
	object-fit: contain;
}

.gf-brand__fallback {
	display: inline-flex;
	flex-direction: column;
	color: var(--gf-ink);
	font-family: var(--gf-serif);
	font-size: 23px;
	line-height: .8;
	text-decoration: none;
}

.gf-brand__fallback strong {
	margin-left: 22px;
	color: var(--gf-copper);
	font-weight: 400;
}

.gf-nav__list,
.gf-footer__menu {
	display: flex;
	align-items: center;
	gap: clamp(18px, 2.2vw, 34px);
	margin: 0;
	padding: 0;
	list-style: none;
}

.gf-nav .gf-menu a {
	position: relative;
	padding: 30px 0;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .035em;
	text-decoration: none;
}

.gf-nav .gf-menu a::after {
	position: absolute;
	right: 0;
	bottom: 22px;
	left: 0;
	height: 1px;
	background: var(--gf-copper);
	content: "";
	transform: scaleX(0);
	transform-origin: right;
	transition: transform .3s var(--gf-ease);
}

.gf-nav .gf-menu a:hover::after,
.gf-nav .current-menu-item a::after {
	transform: scaleX(1);
	transform-origin: left;
}

.gf-login-trigger,
.gf-button {
	justify-self: end;
	padding: 12px 18px;
	color: var(--gf-white);
	background: var(--gf-ink);
	border: 1px solid var(--gf-ink);
	border-radius: 0;
	font: 600 12px/1 var(--gf-sans);
	letter-spacing: .065em;
	text-decoration: none;
	text-transform: uppercase;
	cursor: pointer;
	transition: color .25s, background .25s;
}

.gf-login-trigger:hover,
.gf-button:hover {
	color: var(--gf-ink);
	background: transparent;
}

.gf-menu-toggle {
	display: none;
	padding: 8px;
	background: transparent;
	border: 0;
}

.gf-menu-toggle > span:not(.screen-reader-text) {
	display: block;
	width: 25px;
	height: 1px;
	margin: 6px;
	background: currentColor;
}

.gf-footer {
	margin-top: clamp(70px, 9vw, 140px);
	padding: 72px 0 24px;
	color: #dce2e6;
	background:
		linear-gradient(120deg, rgba(168, 99, 21, .1), transparent 38%),
		var(--gf-ink);
}

.gf-footer__grid {
	display: grid;
	grid-template-columns: 1.6fr 1fr 1fr;
	gap: 70px;
}

.gf-brand--footer .gf-brand__fallback {
	color: var(--gf-white);
}

.gf-brand__fallback {
	display: inline-flex;
	align-items: center;
	max-width: 320px;
}

.gf-brand__image {
	display: block;
	width: min(100%, 310px);
	height: auto;
}

.gf-brand--footer .gf-brand__image {
	width: min(100%, 270px);
}

.gf-footer p {
	max-width: 440px;
	color: #acb9bd;
	font-size: 14px;
	line-height: 1.8;
}

.gf-footer__menu {
	display: grid;
	gap: 12px;
}

.gf-footer a {
	text-decoration-color: rgba(198, 138, 61, .5);
	text-underline-offset: 4px;
}

.gf-footer__label {
	margin: 0 0 8px;
	color: var(--gf-gold) !important;
	font-size: 11px !important;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.gf-footer__bottom {
	display: flex;
	justify-content: space-between;
	margin-top: 56px;
	padding-top: 22px;
	color: #849098;
	border-top: 1px solid rgba(255, 255, 255, .12);
	font-size: 11px;
	letter-spacing: .04em;
}

.gf-native-contact {
	margin-top: clamp(70px, 9vw, 130px);
	padding: clamp(68px, 8vw, 108px) 0;
	color: #d7dde0;
	background:
		linear-gradient(rgba(255, 255, 255, .025) 1px, transparent 1px),
		#35393d;
	background-size: 100% 70px;
}

.gf-native-contact__grid {
	display: grid;
	grid-template-columns: minmax(0, .9fr) minmax(430px, 1.1fr);
	align-items: start;
	gap: clamp(48px, 7vw, 90px);
}

.gf-native-contact__copy h2 {
	max-width: 620px;
	margin: 0 0 24px;
	color: #fff;
	font: 500 clamp(29px, 3.4vw, 44px)/1.18 var(--gf-serif);
}

.gf-native-contact__copy > p:not(.gf-eyebrow) {
	max-width: 590px;
	color: #d7dde0;
	font-size: 15px;
	line-height: 1.75;
}

.gf-native-contact__details,
.gf-native-footer__links,
.gf-native-footer__contact {
	margin: 32px 0 0;
	padding: 0;
	list-style: none;
}

.gf-native-contact__details {
	display: grid;
	gap: 15px;
}

.gf-native-contact__details li,
.gf-native-footer__contact li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	color: #acb9bd;
	font-size: 14px;
	line-height: 1.55;
}

.gf-native-contact__details i,
.gf-native-footer__contact i {
	width: 17px;
	margin-top: 4px;
	color: var(--gf-gold);
	text-align: center;
}

.gf-native-contact__details a,
.gf-native-footer__contact a {
	color: inherit;
	text-decoration: none;
}

.gf-native-contact__card {
	position: relative;
	padding: clamp(30px, 4vw, 48px);
	background: #0d1c2b;
	border: 1px solid rgba(255, 255, 255, .12);
	box-shadow: 0 28px 70px -38px rgba(0, 0, 0, .75);
}

.gf-native-contact__card::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 3px;
	background: var(--gf-copper);
	content: "";
}

.gf-native-contact__card h3 {
	margin: 0 0 8px;
	color: #fff;
	font: 500 25px/1.25 var(--gf-serif);
}

.gf-native-contact__card > p:not(.gf-eyebrow) {
	margin: 0 0 28px;
	color: #acb9bd;
	font-size: 13px;
}

.gf-native-contact__row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.gf-native-contact__form label {
	display: block;
	margin-bottom: 15px;
	color: #acb9bd;
	font-size: 10.5px;
	font-weight: 500;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.gf-native-contact__form input,
.gf-native-contact__form select,
.gf-native-contact__form textarea {
	display: block;
	width: 100%;
	margin-top: 7px;
	padding: 13px 14px;
	color: #fff;
	background: rgba(255, 255, 255, .05);
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 0;
	font: 400 14px/1.4 var(--gf-sans);
	outline: none;
}

.gf-native-contact__form input:focus,
.gf-native-contact__form select:focus,
.gf-native-contact__form textarea:focus {
	background: rgba(255, 255, 255, .08);
	border-color: var(--gf-copper);
}

.gf-native-contact__form select option {
	color: #fff;
	background: #0d1c2b;
}

.gf-native-contact__form button {
	width: 100%;
	padding: 15px 22px;
	color: #fff;
	background: var(--gf-copper);
	border: 0;
	border-radius: 0;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .11em;
	text-transform: uppercase;
	cursor: pointer;
}

.gf-native-contact__form button:hover {
	background: var(--gf-gold);
}

.gf-native-footer {
	margin-top: 0;
	padding-top: 76px;
	background: #161616;
}

.gf-native-footer__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(150px, .72fr) minmax(180px, .9fr) minmax(220px, 1.1fr);
	align-items: start;
	gap: 48px;
}

.gf-native-footer__brand > p {
	margin-top: 22px;
}

.gf-native-footer__social {
	display: flex;
	gap: 10px;
	margin-top: 22px;
}

.gf-native-footer__social a {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	color: #fff;
	border: 1px solid rgba(255, 255, 255, .16);
	text-decoration: none;
	transition: .25s;
}

.gf-native-footer__social a:hover {
	color: #fff;
	background: var(--gf-copper);
	border-color: var(--gf-copper);
	transform: translateY(-3px);
}

.gf-native-footer__links {
	display: grid;
	gap: 11px;
	margin-top: 20px;
}

.gf-native-footer__links a {
	color: #acb9bd;
	font-size: 13px;
	font-weight: 300;
	text-decoration: none;
	transition: .25s;
}

.gf-native-footer__links a:hover {
	color: var(--gf-gold);
	padding-left: 5px;
}

.gf-native-footer__contact {
	display: grid;
	gap: 13px;
	margin-top: 20px;
}

.gf-native-footer .gf-newsletter {
	width: 100%;
	margin: 64px 0 0;
	padding: 34px 0;
	background: transparent;
	border-top: 1px solid rgba(255, 255, 255, .11);
	border-bottom: 1px solid rgba(255, 255, 255, .11);
}

.gf-native-footer .gf-newsletter h2 {
	font-size: clamp(25px, 3vw, 36px);
}

.gf-native-footer .gf-footer__bottom {
	margin-top: 0;
	border-top: 0;
}

.gf-map-wrap {
	overflow: visible !important;
}

.gf-map-wrap .gf-office-photo.gf-office-photo {
	flex: 0 0 auto !important;
}

.gf-office-stack {
	display: flex !important;
	flex-direction: column !important;
	align-self: stretch !important;
	background: none !important;
}

.gf-office-photo {
	flex: 0 0 auto !important;
	width: 100% !important;
	min-height: 340px !important;
}

.gf-office-stack > .gf-map-note {
	position: relative !important;
	inset: auto !important;
	top: auto !important;
	left: auto !important;
	width: 100% !important;
	max-width: none !important;
	transform: none !important;
	box-shadow: none !important;
}

.gf-map-wrap > .e-con:last-child {
	align-self: stretch !important;
}

.gf-map-wrap > .e-con:last-child .elementor-widget-google_maps,
.gf-map-wrap > .e-con:last-child .elementor-widget-container {
	height: 100% !important;
}

.gf-map-wrap > .e-con:last-child iframe {
	height: 100% !important;
	min-height: 560px !important;
}

.gfx-card:hover .elementor-icon-box-title,
.gfx-card:hover .elementor-icon-box-title a,
.gfx-card:hover .elementor-heading-title {
	color: #0d1c2b !important;
}

.gfx-dif-card:hover .elementor-icon-box-title,
.gfx-dif-card:hover .elementor-icon-box-title a,
.gfx-dif-card:hover .elementor-heading-title {
	color: #fff !important;
}

.gfx-dark-actions .elementor-button,
.gfx-dark-actions .elementor-button:hover,
.gfx-dark-actions .elementor-button:focus-visible,
.gfx-hero .elementor-button {
	color: #fff !important;
}

.gfx-dark-actions .elementor-button {
	border-color: rgba(255, 255, 255, .46) !important;
}

.gfx-dark-actions .elementor-button:hover {
	background: #a86315 !important;
	border-color: #a86315 !important;
}

.gf-contact--internal-gray {
	background: #35393d !important;
}

.gf-contact--internal-gray .elementor-heading-title {
	color: #fff !important;
}

.gf-contact--internal-gray .elementor-widget-text-editor,
.gf-contact--internal-gray .elementor-widget-text-editor p,
.gf-contact--internal-gray .elementor-icon-box-title,
.gf-contact--internal-gray .elementor-icon-box-title a,
.gf-contact--internal-gray .elementor-icon-box-description {
	color: #d7dde0 !important;
}

.gf-contact--internal-gray .gf-form-card {
	background: #0d1c2b !important;
	border-color: rgba(255, 255, 255, .12) !important;
}

.gf-contact--internal-gray .gf-map-note .elementor-heading-title {
	color: #c68a3d !important;
}

.gf-contact--internal-gray .gf-map-note,
.gf-contact--internal-gray .gf-map-note p {
	color: #ccc !important;
}

@media (max-width: 820px) {
	.gf-office-photo {
		min-height: 260px !important;
	}

	.gf-map-wrap > .e-con:last-child iframe {
		min-height: 360px !important;
	}
}

.gf-blog,
.gf-listing {
	width: var(--gf-shell);
	margin: 0 auto;
	padding: clamp(64px, 9vw, 128px) 0;
}

.gf-blog__intro {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(280px, 380px);
	align-items: end;
	gap: 70px;
}

.gf-eyebrow {
	margin: 0 0 15px;
	color: var(--gf-copper);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.gf-blog h1,
.gf-listing h1,
.gf-article h1,
.gf-error h1 {
	max-width: 850px;
	margin: 0;
	font-family: var(--gf-serif);
	font-size: clamp(42px, 6vw, 82px);
	font-weight: 400;
	line-height: .99;
	letter-spacing: -.035em;
}

.gf-search {
	display: grid;
	grid-template-columns: 1fr auto;
	border-bottom: 1px solid var(--gf-ink);
}

.gf-search input {
	width: 100%;
	padding: 14px 0;
	background: transparent;
	border: 0;
	border-radius: 0;
	outline: none;
	font: 14px var(--gf-sans);
}

.gf-search button {
	padding: 10px;
	color: var(--gf-copper);
	background: transparent;
	border: 0;
	font-size: 19px;
	cursor: pointer;
}

.gf-categories {
	display: flex;
	gap: 8px;
	margin: 46px 0;
	padding-bottom: 14px;
	overflow-x: auto;
}

.gf-categories a {
	flex: 0 0 auto;
	padding: 8px 12px;
	color: var(--gf-muted);
	border: 1px solid var(--gf-line);
	font-size: 12px;
	text-decoration: none;
	transition: .2s ease;
}

.gf-categories a:hover,
.gf-categories .is-active {
	color: var(--gf-white);
	background: var(--gf-ink);
	border-color: var(--gf-ink);
}

.gf-card-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 52px 28px;
}

.gf-card {
	min-width: 0;
}

.gf-card--featured {
	display: grid;
	grid-template-columns: 1.3fr 1fr;
	margin-bottom: 72px;
	background: var(--gf-paper);
}

.gf-card__media {
	display: block;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: var(--gf-ink-soft);
}

.gf-card--featured .gf-card__media {
	aspect-ratio: 16 / 10;
}

.gf-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .8s var(--gf-ease), filter .4s;
}

.gf-card:hover .gf-card__media img {
	filter: saturate(.8);
	transform: scale(1.035);
}

.gf-card__placeholder {
	display: block;
	width: 100%;
	height: 100%;
	background:
		linear-gradient(135deg, transparent 35%, rgba(198, 138, 61, .18)),
		repeating-linear-gradient(90deg, transparent 0 13%, rgba(255, 255, 255, .035) 13% 13.3%),
		var(--gf-ink);
}

.gf-card__body {
	padding-top: 22px;
}

.gf-card--featured .gf-card__body {
	align-self: center;
	padding: clamp(30px, 5vw, 72px);
}

.gf-card__meta {
	margin: 0 0 14px;
	color: var(--gf-muted);
	font-size: 11px;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.gf-card__meta span {
	color: var(--gf-copper);
	font-weight: 600;
}

.gf-card h2 {
	margin: 0 0 14px;
	font-family: var(--gf-serif);
	font-size: clamp(25px, 2.6vw, 38px);
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: -.02em;
}

.gf-card h2 a {
	text-decoration: none;
}

.gf-card__body > p:not(.gf-card__meta) {
	color: var(--gf-muted);
	font-size: 14px;
	line-height: 1.7;
}

.gf-text-link,
.gf-back {
	display: inline-flex;
	gap: 7px;
	color: var(--gf-ink);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .04em;
	text-decoration-color: var(--gf-gold);
	text-underline-offset: 5px;
}

.gf-pagination {
	margin-top: 64px;
}

.gf-pagination ul {
	display: flex;
	justify-content: center;
	gap: 8px;
	padding: 0;
	list-style: none;
}

.gf-pagination a,
.gf-pagination span {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border: 1px solid var(--gf-line);
	text-decoration: none;
}

.gf-pagination .current {
	color: var(--gf-white);
	background: var(--gf-ink);
	border-color: var(--gf-ink);
}

.gf-listing__header {
	max-width: 820px;
	margin-bottom: 46px;
}

.gf-listing__header h1 {
	font-size: clamp(30px, 3.5vw, 44px);
	line-height: 1.15;
}

.gf-listing__description {
	max-width: 620px;
	color: var(--gf-muted);
}

.gf-empty {
	padding: 72px;
	text-align: center;
	background: var(--gf-paper);
}

.gf-empty h2 {
	margin: 0;
	font-family: var(--gf-serif);
	font-size: 32px;
	font-weight: 400;
}

.gf-article {
	padding-top: clamp(70px, 9vw, 130px);
}

.gf-article__header {
	text-align: center;
}

.gf-article__header .gf-back {
	margin-bottom: 52px;
}

.gf-article__header h1 {
	font-size: clamp(30px, 3.5vw, 44px);
	line-height: 1.15;
}

.gf-article__meta {
	display: flex;
	justify-content: center;
	gap: 24px;
	margin-top: 30px;
	color: var(--gf-muted);
	font-size: 12px;
	text-transform: uppercase;
}

.gf-article__hero {
	margin-top: 64px;
}

.gf-article__hero img {
	display: block;
	width: 100%;
	max-height: 680px;
	object-fit: cover;
}

.gf-prose {
	min-width: 0;
	color: #35393d;
	font: 15.5px/1.78 var(--gf-sans);
}

.gf-prose > p:first-child::first-letter {
	float: left;
	margin: 9px 10px 0 0;
	color: var(--gf-copper);
	font: 68px/.72 var(--gf-serif);
}

.gf-prose h1,
.gf-prose h2,
.gf-prose h3 {
	margin: 1.7em 0 .6em;
	color: var(--gf-ink);
	font-family: var(--gf-serif);
	font-weight: 400;
	line-height: 1.15;
}

.gf-prose h1 {
	padding-bottom: .18em;
	border-bottom: 1px solid rgba(13, 28, 43, .2);
	font-size: 32px;
}

.gf-prose h2 {
	font-size: 25px;
}

.gf-prose h3 {
	font-size: 20px;
}

/* Linha de apoio (kicker) logo abaixo de um subtítulo — antes saía do mesmo
   tamanho/peso do texto corrido do artigo, sem nenhuma distinção visual. */
.gf-prose h1 + p,
.gf-prose h2 + p,
.gf-prose h3 + p {
	margin-top: -.5em;
	color: var(--gf-copper);
	font: 600 15px/1.5 var(--gf-sans);
	font-style: italic;
}

.gf-prose blockquote {
	margin: 2.5em 0;
	padding: 10px 0 10px 28px;
	color: var(--gf-ink);
	border-left: 2px solid var(--gf-copper);
	font: 20px/1.5 var(--gf-serif);
}

/* Bloco nativo "Citação em destaque" (Pullquote) do WordPress — usar para
   caixas de destaque tipo "Exemplo prático na mídia", em cinza, distinto da
   citação (blockquote) comum usada para as falas do Dr. Thiago. */
.gf-prose .wp-block-pullquote {
	margin: 2.5em 0;
	padding: 30px 34px;
	background: #f6f7f8;
	border: 1px solid var(--gf-line);
	border-left: 3px solid var(--gf-copper);
}

.gf-prose .wp-block-pullquote blockquote {
	margin: 0;
	padding: 0;
	border: 0;
	color: var(--gf-ink-soft);
	font: 15.5px/1.78 var(--gf-sans);
}

.gf-prose .wp-block-pullquote p {
	margin-bottom: 0;
}

.gf-prose .wp-block-pullquote cite {
	display: block;
	margin-top: 14px;
	color: var(--gf-copper);
	font: 600 11px var(--gf-sans);
	font-style: normal;
	letter-spacing: .08em;
	text-transform: uppercase;
}

/* Bloco nativo "Detalhes" (Details) do WordPress — usar para cada pergunta
   do FAQ: pergunta em negrito (summary), resposta em peso normal por baixo,
   no mesmo estilo do acordeão já usado no restante do site. */
.gf-prose .wp-block-details {
	margin: 0 0 14px;
	background: #fafafa;
	border: 1px solid var(--gf-line);
}

.gf-prose .wp-block-details summary {
	cursor: pointer;
	list-style: none;
	padding: 18px 22px;
	color: var(--gf-ink);
	font: 700 15px/1.4 var(--gf-sans);
}

.gf-prose .wp-block-details summary::-webkit-details-marker {
	display: none;
}

.gf-prose .wp-block-details summary::after {
	float: right;
	color: var(--gf-copper);
	font-weight: 400;
	content: "+";
}

.gf-prose .wp-block-details[open] summary::after {
	content: "\2013";
}

.gf-prose .wp-block-details > :not(summary) {
	margin: 0;
	padding: 0 22px 20px;
	color: var(--gf-muted);
	font: 400 15px/1.7 var(--gf-sans);
}

.gf-prose img {
	max-width: 100%;
	height: auto;
}

.gf-post-nav {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 36px;
	margin-top: 90px;
	padding-top: 30px;
	border-top: 1px solid var(--gf-line);
}

.gf-post-nav__item {
	display: flex;
	align-items: center;
	gap: 16px;
	min-width: 0;
	text-decoration: none !important;
	transition: color .2s ease;
}

.gf-post-nav__next {
	flex-direction: row-reverse;
	text-align: right;
}

.gf-post-nav__img {
	display: block;
	overflow: hidden;
	flex-shrink: 0;
	width: 64px;
	height: 64px;
}

.gf-post-nav__img img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.gf-post-nav__img-empty {
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
	color: var(--gf-white);
	background: var(--gf-ink);
	font: 600 12px var(--gf-serif);
}

.gf-post-nav__copy {
	display: grid;
	min-width: 0;
	gap: 6px;
}

.gf-post-nav__copy > span {
	color: var(--gf-muted);
	font-size: 10px;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.gf-post-nav__copy > strong {
	overflow: hidden;
	color: var(--gf-ink);
	font-family: var(--gf-serif);
	font-weight: 600;
	font-size: 15px;
	line-height: 1.3;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.gf-post-nav__item:hover .gf-post-nav__copy > strong {
	color: var(--gf-copper);
}

@media (max-width: 640px) {
	.gf-post-nav__copy > strong {
		white-space: normal;
	}
}

.gf-newsletter {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: center;
	gap: 60px;
	width: var(--gf-shell);
	margin: 100px auto 0;
	padding: clamp(40px, 6vw, 80px);
	color: var(--gf-white);
	background:
		linear-gradient(135deg, transparent, rgba(168, 99, 21, .2)),
		var(--gf-ink);
}

.gf-newsletter h2 {
	margin: 0;
	font: 400 clamp(34px, 4vw, 56px)/1 var(--gf-serif);
}

.gf-newsletter p {
	color: #acb9bd;
	line-height: 1.65;
}

.gf-newsletter__form label {
	display: block;
	margin-bottom: 9px;
	color: #acb9bd;
	font-size: 11px;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.gf-newsletter__form > div {
	display: grid;
	grid-template-columns: 1fr auto;
}

.gf-newsletter__form input {
	min-width: 0;
	padding: 14px;
	color: var(--gf-white);
	background: transparent;
	border: 1px solid rgba(255, 255, 255, .28);
	border-right: 0;
	border-radius: 0;
	outline: none;
}

.gf-newsletter__form input:focus {
	border-color: var(--gf-gold);
}

.gf-newsletter__form button {
	padding: 14px 18px;
	color: var(--gf-ink);
	background: var(--gf-gold);
	border: 1px solid var(--gf-gold);
	border-radius: 0;
	font-weight: 600;
	cursor: pointer;
}

.gf-newsletter__form button:disabled {
	opacity: .65;
}

.gf-newsletter__form .gf-consent {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	margin-top: 12px;
	color: #acb9bd;
	font-size: 11px;
	line-height: 1.45;
	letter-spacing: 0;
	text-transform: none;
}

.gf-consent input {
	flex: 0 0 auto;
	margin-top: 2px;
	accent-color: var(--gf-gold);
}

.gf-consent a {
	color: var(--gf-gold);
}

.gf-honeypot {
	position: absolute !important;
	left: -10000px !important;
}

.gf-newsletter__status {
	min-height: 1.5em;
	margin: 8px 0 0 !important;
	font-size: 12px;
}

#gf-login.gf-login[hidden] {
	display: none;
}

#gf-login.gf-login {
	position: fixed;
	z-index: 99998;
	inset: 0;
}

.gf-login__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(5, 15, 24, .68);
	backdrop-filter: blur(6px);
	animation: gf-fade .25s both;
}

.gf-login__panel {
	position: fixed;
	z-index: 1;
	top: 0;
	right: 0;
	width: min(400px, 92vw);
	height: 100dvh;
	padding: 90px 40px 42px;
	overflow-y: auto;
	color: var(--gf-white);
	background: #35393d;
	box-shadow: -28px 0 70px rgba(0, 0, 0, .3);
	transform: translateX(102%);
	transition: transform .45s var(--gf-ease);
}

#gf-login.gf-login:not([hidden]) .gf-login__panel {
	transform: none;
}

.gf-login__panel::before {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 4px;
	background: linear-gradient(90deg, var(--gf-copper), var(--gf-gold));
	content: "";
}

.gf-login__panel h2 {
	margin: 0 0 24px;
	color: var(--gf-white);
	font: 700 26px/1.25 var(--gf-sans);
	letter-spacing: 1px;
	text-transform: uppercase;
}

#gf-login .gf-login__close {
	position: absolute;
	top: 24px;
	right: 24px;
	width: 42px;
	height: 42px;
	color: var(--gf-white);
	background: transparent;
	border: 1px solid rgba(255, 255, 255, .3);
	font-size: 25px;
	line-height: 1;
	cursor: pointer;
	transition: color .2s ease, border-color .2s ease, background-color .2s ease;
}

#gf-login .gf-login__close:hover,
#gf-login .gf-login__close:focus-visible {
	color: #a86315;
	border-color: #a86315;
	background: rgba(168, 99, 21, .08);
}

.gf-login__categories {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

#gf-login .gf-login__category {
	display: grid;
	gap: 7px;
	padding: 20px 16px;
	color: var(--gf-ink);
	background: var(--gf-paper);
	border: 1px solid var(--gf-line);
	font: 600 15px var(--gf-sans);
	letter-spacing: 1.2px;
	text-transform: uppercase;
	text-align: center;
	cursor: pointer;
	transition: color .2s ease, background .2s ease, border-color .2s ease;
}

#gf-login .gf-login__category:hover,
#gf-login .gf-login__category:focus-visible {
	color: var(--gf-white);
	background: var(--gf-ink);
	border-color: var(--gf-ink);
}

#gf-login .gf-login__category.is-active {
	color: var(--gf-white);
	background: var(--gf-copper);
	border-color: var(--gf-copper);
}

.gf-login__fields {
	display: grid;
	gap: 16px;
	margin-top: 26px;
	padding-top: 26px;
	border-top: 1px solid var(--gf-line);
	animation: gf-rise .4s var(--gf-ease) both;
}

.gf-login__fields[hidden] {
	display: none;
}

.gf-login__fields-label {
	margin: -8px 0 0;
	color: var(--gf-copper);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .1em;
	text-transform: none;
}

.gf-login__fields label {
	display: block;
	color: #acb9bd;
	font-size: 10.5px;
	font-weight: 500;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.gf-login__fields input {
	display: block;
	width: 100%;
	margin-top: 8px;
	padding: 13px 14px;
	color: var(--gf-ink);
	background: var(--gf-paper);
	border: 1px solid var(--gf-line);
	border-radius: 0;
	font: 400 14px/1.4 var(--gf-sans);
	outline: none;
}

.gf-login__fields input:focus {
	border-color: var(--gf-copper);
}

.gf-login__fields button {
	padding: 15px 22px;
	color: var(--gf-white);
	background: var(--gf-ink);
	border: 0;
	border-radius: 0;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .1em;
	text-transform: uppercase;
	cursor: pointer;
}

.gf-login__fields button:hover {
	background: var(--gf-copper);
}

.gf-login__status {
	min-height: 1.4em;
	margin: 0 !important;
	color: var(--gf-copper);
	font-size: 12.5px;
	line-height: 1.6;
}

.gf-error {
	min-height: 60vh;
	padding: clamp(90px, 14vw, 190px) 0;
	text-align: center;
}

.gf-error h1 {
	margin-inline: auto;
}

.gf-error > p:not(.gf-eyebrow) {
	margin: 25px 0 40px;
	color: var(--gf-muted);
}

body.gf-modal-open {
	overflow: hidden;
}

@keyframes gf-fade {
	from { opacity: 0; }
}

@keyframes gf-rise {
	from { opacity: 0; transform: translateY(22px) scale(.98); }
}

@media (max-width: 900px) {
	:root {
		--gf-shell: min(100% - 32px, 720px);
	}

	.gf-header__inner {
		grid-template-columns: 1fr auto auto;
		min-height: 70px;
	}

	.gf-menu-toggle {
		display: block;
		order: 3;
	}

	.gf-nav {
		position: absolute;
		top: 100%;
		right: 0;
		left: 0;
		display: none;
		padding: 10px 24px 25px;
		background: var(--gf-white);
		border-bottom: 1px solid var(--gf-line);
	}

	.gf-nav.is-open {
		display: block;
	}

	.gf-nav__list {
		display: grid;
		gap: 0;
	}

	.gf-nav .gf-menu a {
		display: block;
		padding: 13px 0;
	}

	.gf-nav .gf-menu a::after {
		bottom: 8px;
	}

	.gf-login-trigger {
		order: 2;
	}

	.gf-blog__intro,
	.gf-card--featured,
	.gf-newsletter {
		grid-template-columns: 1fr;
	}

	.gf-card-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.gf-footer__grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 620px) {
	.gf-login-trigger {
		padding: 10px;
		font-size: 10px;
	}

	.gf-brand .custom-logo {
		max-width: 135px;
	}

	.gf-brand__fallback {
		font-size: 18px;
	}

	.gf-card-grid,
	.gf-footer__grid,
	.gf-post-nav {
		grid-template-columns: 1fr;
	}

	.gf-card--featured .gf-card__body,
	.gf-empty {
		padding: 30px 22px;
	}

	.gf-article__meta {
		flex-direction: column;
		gap: 5px;
	}

	.gf-prose {
		font-size: 15px;
	}

	.gf-prose h1 {
		font-size: 27px;
	}

	.gf-prose h2 {
		font-size: 23px;
	}

	.gf-newsletter {
		gap: 35px;
		padding: 35px 22px;
	}

	.gf-newsletter__form > div {
		grid-template-columns: 1fr;
	}

	.gf-newsletter__form input {
		border-right: 1px solid rgba(255, 255, 255, .28);
	}

	.gf-login__panel {
		width: 100vw;
		padding-inline: 24px;
	}

	.gf-login__categories {
		grid-template-columns: 1fr;
	}

	.gf-footer__bottom {
		display: grid;
		gap: 5px;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
	}
}

/* Cabeçalho nativo — mesma linguagem visual e hierarquia da página inicial. */
.gf-header.gf-native-header {
	position: sticky !important;
	inset: 0 0 auto !important;
	z-index: 9990 !important;
	width: 100% !important;
	color: #fff !important;
	background: rgba(13, 28, 43, .82) !important;
	border: 0 !important;
	border-bottom: 1px solid rgba(255, 255, 255, .08) !important;
	box-shadow: 0 12px 35px rgba(0, 0, 0, .10) !important;
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	transition: transform .35s var(--gf-ease), background .25s ease !important;
}

.gf-native-header__inner {
	display: grid;
	grid-template-columns: minmax(230px, 310px) 1fr;
	align-items: center;
	width: min(1360px, calc(100% - 48px));
	min-height: 88px;
	margin-inline: auto;
	gap: clamp(22px, 2.5vw, 48px);
}

.gf-header .gf-native-header__brand {
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 310px !important;
	margin: 0 !important;
	padding: 0 !important;
}

.gf-header .gf-native-header__brand a {
	display: inline-flex;
	align-items: center;
}

.gf-header .gf-native-header__brand img,
.gf-header .gf-native-header__brand .custom-logo {
	display: block !important;
	width: auto !important;
	max-width: 100% !important;
	height: 55px !important;
	max-height: 55px !important;
	object-fit: contain !important;
}

/* A nav inline permanece apenas como fonte de links para o menu lateral do hambúrguer. */
.gf-native-header__nav {
	display: none !important;
}

/*
 * O mesmo vale para o cabeçalho Elementor (Home, Blog e páginas de área):
 * o menu horizontal fica só como fonte de links para o painel lateral do
 * hambúrguer, sem os links soltos ao lado dele.
 */
.gf-header .gf-menu {
	display: none !important;
}

.gf-native-header__actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 10px;
}

.gf-native-header__service {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 20px;
	color: #0d1c2b !important;
	background: #c68a3d;
	border: 1px solid #c68a3d;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .12em;
	text-decoration: none !important;
	text-transform: uppercase;
	white-space: nowrap;
	transition: color .2s ease, background .2s ease;
}

.gf-native-header__service:hover,
.gf-native-header__service:focus-visible {
	color: #c68a3d !important;
	background: #0d1c2b;
	border-color: #c68a3d;
}

.gf-native-header__login {
	display: inline-grid;
	place-items: center;
	width: 46px;
	height: 46px;
	padding: 0;
	color: #fff !important;
	background: #b86b0e !important;
	border: 1px solid #b86b0e !important;
	border-radius: 0;
	cursor: pointer;
	transition: color .2s ease, border-color .2s ease, background .2s ease;
}

.gf-native-header__login i,
.gf-native-header__login .fas {
	color: #fff !important;
	font-size: 20px !important;
}

.gf-native-header__login:hover,
.gf-native-header__login:focus-visible {
	color: #fff !important;
	background: #c98224 !important;
	border-color: #c98224 !important;
}

.gf-native-header .gf-menu-toggle {
	display: grid;
	place-content: center;
	gap: 5px;
	width: 46px;
	height: 46px;
	margin: 0;
	padding: 9px;
	color: #fff;
	border: 1px solid rgba(255, 255, 255, .22);
}

.gf-native-header .gf-menu-toggle > span:not(.screen-reader-text) {
	width: 22px;
	height: 2px;
	margin: 0;
	background: currentColor;
	transition: transform .3s, opacity .3s;
}

.gf-native-header .gf-menu-toggle[aria-expanded="true"] > span:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}

.gf-native-header .gf-menu-toggle[aria-expanded="true"] > span:nth-child(2) {
	opacity: 0;
}

.gf-native-header .gf-menu-toggle[aria-expanded="true"] > span:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

/* Artigo editorial — conteúdo principal à esquerda e barra lateral real à direita. */
.gf-article__layout {
	display: grid;
	grid-template-columns: minmax(0, 760px) minmax(320px, 360px);
	justify-content: center;
	align-items: start;
	gap: clamp(42px, 5vw, 72px);
	margin-top: 70px;
}

.gf-article__main {
	min-width: 0;
}

.gf-article__sidebar {
	position: static;
	align-self: start;
	min-width: 0;
}

.gf-article__sidebar-panel {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	color: var(--gf-ink);
	background: #fff;
	border: 0;
	border-left: 1px solid #d9dde0;
	box-shadow: none;
}

.gf-article__sidebar-panel::after {
	position: absolute;
	z-index: 1;
	top: 0;
	left: -1px;
	width: 3px;
	height: 88px;
	background: var(--gf-copper);
	content: "";
	pointer-events: none;
}

.gf-article__search {
	display: grid;
	grid-template-columns: 1fr 48px;
	margin: 26px 28px 6px;
	border: 1px solid #d9dde0;
}

.gf-article__search input {
	min-width: 0;
	height: 46px;
	padding: 0 15px;
	color: var(--gf-ink);
	background: #fff;
	border: 0;
	border-radius: 0;
	font: 400 11px/1 var(--gf-sans);
}

.gf-article__search input::placeholder {
	color: #858b90;
}

.gf-article__search input:focus {
	outline: 1px solid var(--gf-gold);
	outline-offset: -1px;
}

.gf-article__search button {
	display: grid;
	place-items: center;
	color: #fff;
	background: #b86b0e;
	border: 0;
	border-radius: 0;
	cursor: pointer;
}

.gf-article__side-block {
	padding: 30px 28px;
}

.gf-article__side-block + .gf-article__side-block {
	padding-top: 4px;
}

.gf-article__side-heading {
	position: relative;
	display: grid;
	grid-template-columns: 38px 1fr auto;
	align-items: center;
	gap: 12px;
	margin-bottom: 20px;
	padding-bottom: 17px;
	border-bottom: 1px solid #e1e4e6;
}

.gf-article__side-heading::after {
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 76px;
	height: 2px;
	background: var(--gf-copper);
	content: "";
}

.gf-article__side-icon {
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	color: #fff;
	background: #b86b0e;
	font-size: 13px;
}

.gf-article__side-heading h2 {
	margin: 0;
	color: var(--gf-ink);
	font: 500 13px/1.25 var(--gf-serif);
	letter-spacing: .07em;
	text-transform: uppercase;
}

.gf-article__side-heading > a {
	color: var(--gf-gold) !important;
	font-size: 8px;
	font-weight: 600;
	letter-spacing: .1em;
	text-decoration: none !important;
	text-transform: uppercase;
	white-space: nowrap;
}

.gf-article__categories {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.gf-article__categories a {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 9px 11px;
	color: #41484d !important;
	background: #f7f8f8;
	border: 1px solid #e1e4e6;
	font-size: 9px;
	letter-spacing: .04em;
	text-decoration: none !important;
	transition: color .2s ease, background .2s ease, border-color .2s ease;
}

.gf-article__categories a:hover {
	color: var(--gf-copper) !important;
	background: #fffaf4;
	border-color: var(--gf-copper);
}

.gf-article__categories small {
	color: var(--gf-gold);
	font-size: 8px;
}

.gf-article__recent {
	display: grid;
}

.gf-article__recent-item {
	display: grid;
	grid-template-columns: 76px minmax(0, 1fr);
	align-items: center;
	gap: 15px;
	padding: 13px 0;
	color: var(--gf-ink) !important;
	border-bottom: 1px solid #e7e9eb;
	text-decoration: none !important;
}

.gf-article__recent-item:first-child {
	padding-top: 0;
}

.gf-article__recent-item:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.gf-article__recent-image {
	display: grid;
	place-items: center;
	width: 76px;
	aspect-ratio: 1;
	overflow: hidden;
	color: var(--gf-ink);
	background: #f2f4f5;
	border: 1px solid #e1e4e6;
	font: 500 14px/1 var(--gf-serif);
}

.gf-article__recent-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .35s var(--gf-ease);
}

.gf-article__recent-item:hover .gf-article__recent-image img {
	transform: scale(1.06);
}

.gf-article__recent-copy {
	min-width: 0;
}

.gf-article__recent-item small {
	display: block;
	margin-top: 7px;
	color: #858b90;
	font-size: 8px;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.gf-article__recent-item strong {
	display: -webkit-box;
	overflow: hidden;
	color: inherit;
	font: 500 11px/1.55 var(--gf-sans);
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	transition: color .2s ease;
}

.gf-article__recent-item:hover strong {
	color: var(--gf-gold);
}

.gf-article__side-contact {
	margin-top: 14px;
	padding: 30px 28px 32px;
	color: var(--gf-ink);
	background: #f6f7f7;
	border-top: 1px solid #e1e4e6;
	border-bottom: 1px solid #e1e4e6;
}

.gf-article__side-contact .gf-eyebrow {
	margin: 0 0 12px;
	color: var(--gf-gold);
}

.gf-article__side-contact > h2 {
	margin: 0 0 12px;
	color: var(--gf-ink);
	font: 500 18px/1.42 var(--gf-serif);
}

.gf-article__side-contact > p:not(.gf-eyebrow) {
	margin: 0 0 18px;
	color: #5d6469;
	font-size: 10px;
	line-height: 1.7;
}

.gf-article__side-contact ul {
	display: grid;
	gap: 10px;
	margin: 0 0 23px;
	padding: 0;
	list-style: none;
}

.gf-article__side-contact li {
	display: grid;
	grid-template-columns: 18px minmax(0, 1fr);
	align-items: center;
	gap: 8px;
	color: var(--gf-gold);
	font-size: 10px;
}

.gf-article__side-contact li a {
	overflow: hidden;
	color: #30373c !important;
	text-decoration: none !important;
	text-overflow: ellipsis;
}

.gf-article__side-button {
	display: block;
	padding: 14px 12px;
	color: #fff !important;
	background: #b86b0e;
	border: 1px solid #b86b0e;
	font-size: 9px;
	font-weight: 600;
	letter-spacing: .1em;
	text-align: center;
	text-decoration: none !important;
	text-transform: uppercase;
	transition: color .2s ease, background .2s ease;
}

.gf-article__side-button:hover {
	color: var(--gf-gold) !important;
	background: transparent;
}

.gf-article__share {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	margin-top: 55px;
	padding: 22px 26px;
	background: #f6f7f8;
	border-left: 3px solid var(--gf-copper);
}

.gf-article__share > span {
	margin-right: 5px;
	color: var(--gf-ink);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.gf-article__share a,
.gf-article__share-copy {
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	padding: 0;
	color: var(--gf-ink) !important;
	background: var(--gf-white);
	border: 1px solid var(--gf-line);
	cursor: pointer;
	text-decoration: none !important;
	transition: color .2s ease, background .2s ease, border-color .2s ease;
}

.gf-article__share a:hover,
.gf-article__share-copy:hover {
	color: var(--gf-white) !important;
	background: var(--gf-copper);
	border-color: var(--gf-copper);
}

.gf-article__share-copy {
	position: relative;
	font-size: 14px;
}

.gf-article__share-copy.is-copied::after {
	content: "Link copiado!";
	position: absolute;
	bottom: calc(100% + 8px);
	left: 50%;
	transform: translateX(-50%);
	padding: 6px 10px;
	color: var(--gf-white);
	background: var(--gf-ink);
	font: 600 10px var(--gf-sans);
	letter-spacing: .04em;
	white-space: nowrap;
}

@media (max-width: 1180px) {
	.gf-native-header__inner {
		grid-template-columns: minmax(190px, 245px) minmax(450px, 1fr) auto;
		width: min(100% - 32px, 1180px);
		gap: 18px;
	}

	.gf-native-header__nav {
		gap: 14px;
	}

	.gf-native-header__nav a {
		font-size: 9.5px;
	}

	.gf-native-header__service {
		padding-inline: 14px;
	}
}

@media (max-width: 980px) {
	.gf-native-header__inner {
		position: relative;
		grid-template-columns: minmax(180px, 1fr) auto;
		min-height: 76px;
	}

	.gf-header .gf-native-header__brand {
		max-width: 255px !important;
	}

	.gf-header .gf-native-header__brand img,
	.gf-header .gf-native-header__brand .custom-logo {
		height: 46px !important;
	}

	.gf-article__layout {
		grid-template-columns: minmax(0, 720px);
	}

	.gf-article__sidebar {
		position: static;
		margin-top: 30px;
	}

	.gf-article__sidebar-panel {
		overflow: hidden;
		border-right: 0;
	}

	.gf-article__sidebar-panel::after {
		display: none;
	}
}

/* Grupos de CTA: largura natural, proximidade e centralização consistentes. */
.gf-site .gf-cta-pair,
.gf-site .gfx-cta-pair {
	display: flex !important;
	flex-flow: row wrap !important;
	align-items: center !important;
	justify-content: center !important;
	column-gap: 18px !important;
	row-gap: 14px !important;
}

.gf-site .gf-cta-pair > .elementor-element,
.gf-site .gfx-cta-pair > .elementor-element {
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: none !important;
}

/*
 * Botões da primeira seção (hero) das páginas internas: alinhados à
 * esquerda, junto do texto, em vez de centralizados como os demais pares
 * de CTA da página.
 */
@media (min-width: 641px) {
	.gf-site .gfx-hero .gf-cta-pair,
	.gf-site .gfx-hero .gfx-cta-pair {
		justify-content: flex-start !important;
	}
}

/* CTA secundário da Home: ardósia da identidade com contraste branco. */
.gf-site .gf-secondary-cta-emphasis .elementor-button {
	color: #fff !important;
	background: #415c69 !important;
	border-color: #c68a3d !important;
	box-shadow: 0 12px 28px -18px rgba(13, 28, 43, .85) !important;
}

.gf-site .gf-secondary-cta-emphasis .elementor-button-text {
	color: #fff !important;
}

.gf-site .gf-secondary-cta-emphasis .elementor-button:hover,
.gf-site .gf-secondary-cta-emphasis .elementor-button:focus-visible {
	color: #fff !important;
	background: #a86315 !important;
	border-color: #c68a3d !important;
}

@media (max-width: 640px) {
	.gf-site .gf-cta-pair > .elementor-element,
	.gf-site .gfx-cta-pair > .elementor-element {
		width: min(100%, 360px) !important;
	}

	.gf-site .gf-cta-pair .elementor-button,
	.gf-site .gfx-cta-pair .elementor-button {
		justify-content: center !important;
		width: 100% !important;
	}
}

@media (max-width: 640px) {
	.gf-native-header__inner {
		width: calc(100% - 24px);
	}

	.gf-header .gf-native-header__brand {
		max-width: 190px !important;
	}

	.gf-native-header__service {
		width: auto;
		min-height: 44px;
		padding: 0 12px;
		font-size: 8.5px;
	}

	.gf-native-header__service span {
		display: inline;
	}

	.gf-native-header__login,
	.gf-native-header .gf-menu-toggle {
		width: 44px;
		height: 44px;
	}

	.gf-article {
		padding-top: 55px;
	}

	.gf-article__header .gf-back {
		margin-bottom: 35px;
	}

	.gf-article__layout {
		margin-top: 48px;
	}

	.gf-article__side-block,
	.gf-article__side-contact {
		padding-inline: 22px;
	}
}

/*
 * FAQ das páginas jurídicas.
 * O Elementor pode manter o widget alinhado ao início mesmo quando o contêiner
 * salvo está centralizado. Esta regra também corrige páginas já publicadas.
 * Restrita a :only-child porque .gfx-transicao também é usada nos pares de
 * botão (.gfx-cta-pair) das páginas de área — sem essa restrição, cada botão
 * do par ganhava margem automática e os dois se afastavam para as bordas em
 * vez de ficarem lado a lado.
 */
.gfx-transicao {
	width: 100% !important;
	justify-content: center !important;
	align-items: center !important;
	text-align: center;
}

.gfx-transicao > .elementor-element:only-child,
.gfx-transicao .elementor-widget-button:only-child {
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: 100%;
	margin-right: auto !important;
	margin-left: auto !important;
}

.gfx-transicao .elementor-button-wrapper {
	display: flex;
	justify-content: center;
}

.gfx-transicao .elementor-button {
	background: #a86315 !important;
	color: #fff !important;
}

.gfx-transicao .elementor-button:hover,
.gfx-transicao .elementor-button:focus-visible {
	background: #c68a3d !important;
	color: #fff !important;
}

/*
 * Rodapé: todos os links das áreas de atuação compartilham a mesma largura e
 * mantêm o texto alinhado à esquerda, inclusive quando o título quebra linha.
 */
.gfx-foot-links .elementor-widget-button,
.gf-foot-areas .elementor-widget-button {
	width: 100% !important;
}

.gfx-foot-links .elementor-button-wrapper,
.gf-foot-areas .elementor-button-wrapper {
	width: 100%;
	text-align: left !important;
}

.gfx-foot-links .elementor-button,
.gf-foot-areas .elementor-button {
	display: flex !important;
	width: 100%;
	justify-content: flex-start !important;
	text-align: left !important;
}

.gfx-foot-links .elementor-button-text,
.gf-foot-areas .elementor-button-text {
	width: 100%;
	text-align: left !important;
}

/*
 * Popup de confirmação antes de abrir o WhatsApp a partir de qualquer
 * formulário do site (contato nativo, formulários Elementor). A mensagem já
 * vem pronta com os dados preenchidos; o usuário só confirma o envio.
 */
.gf-wa-confirm {
	position: fixed;
	inset: 0;
	z-index: 400;
	display: grid;
	place-items: center;
	padding: 20px;
	background: rgba(4, 12, 19, .68);
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
}

.gf-wa-confirm[hidden] {
	display: none;
}

.gf-wa-confirm-box {
	width: min(380px, 100%);
	padding: 32px 26px;
	background: #0d1c2b;
	color: #fff;
	border: 1px solid rgba(198, 138, 61, .35);
	text-align: center;
	box-shadow: 0 28px 70px rgba(0, 0, 0, .4);
}

.gf-wa-confirm-title {
	margin: 0 0 10px;
	font: 600 17px/1.35 "Montserrat", sans-serif;
	color: #fff;
}

.gf-wa-confirm-text {
	margin: 0 0 22px;
	font: 400 13px/1.5 "Montserrat", sans-serif;
	color: #acb9bd;
}

.gf-wa-confirm-actions {
	display: grid;
	gap: 10px;
}

.gf-wa-confirm-yes,
.gf-wa-confirm-no {
	padding: 13px 18px;
	border: 0;
	font: 600 12px "Montserrat", sans-serif;
	text-transform: uppercase;
	letter-spacing: .04em;
	cursor: pointer;
}

/*
 * O reset.css do Hello Elementor (tema pai) tem uma regra
 * `[type="button"], [type="submit"], button` com a mesma especificidade
 * de uma classe (0,1,0) e é carregado DEPOIS do site.css — então ele
 * vencia o empate e pintava os dois botões de rosa (#cc3366), a cor
 * padrão de botão do tema. Prefixar com #gfWaConfirm aumenta a
 * especificidade e garante que as cores do popup sempre vençam.
 */
#gfWaConfirm .gf-wa-confirm-yes {
	background: #25d366;
	color: #fff;
	border: 1px solid #25d366;
}

#gfWaConfirm .gf-wa-confirm-yes:hover,
#gfWaConfirm .gf-wa-confirm-yes:focus-visible {
	background: #1ebe5a;
	border-color: #1ebe5a;
}

#gfWaConfirm .gf-wa-confirm-no {
	background: transparent;
	color: #acb9bd;
	border: 1px solid rgba(255, 255, 255, .22);
	font-weight: 500;
}

#gfWaConfirm .gf-wa-confirm-no:hover,
#gfWaConfirm .gf-wa-confirm-no:focus-visible {
	color: #fff;
	border-color: rgba(255, 255, 255, .4);
}

/* Botão "Veja mais respostas" do FAQ (plugin [gf_faqs], .gftm-faqs__more) vinha rosa —
   é um <button type="button"> sem classe própria, então herdava o rosa padrão do
   Hello Elementor (mesma causa-raiz de outros botões já corrigidos neste projeto). */
#gftm-faqs__more,
.gftm-faqs__more {
	background: transparent !important;
	border: 1px solid rgba(255, 255, 255, .25) !important;
	color: #fff !important;
	padding: 14px 28px !important;
	font: 500 12px/1 Montserrat, sans-serif !important;
	letter-spacing: .1em !important;
	text-transform: uppercase !important;
	transition: .3s !important;
}

.gftm-faqs__more:hover,
.gftm-faqs__more:focus-visible {
	background: #A86315 !important;
	border-color: #A86315 !important;
	color: #fff !important;
}

/* Destaque de campo obrigatório não preenchido, em qualquer formulário do site
   (contato principal, painel lateral, formulário nativo das páginas internas,
   newsletter, login). Antes disso, a única pista de que faltava marcar o
   checkbox de consentimento LGPD era o balão nativo do navegador — pequeno,
   ancorado numa caixinha de 13px, fácil de não notar; parecia que o botão
   "Enviar" simplesmente não fazia nada. Aplicado via JS (assets/js/site.js)
   no evento nativo "invalid", então cobre qualquer campo obrigatório vazio,
   não só o checkbox. */
input.gf-field-invalid,
select.gf-field-invalid,
textarea.gf-field-invalid {
	outline: 2px solid #c0392b !important;
	outline-offset: 2px;
	border-radius: 3px;
}

.gf-consent.gf-field-invalid {
	outline: 2px solid #c0392b !important;
	outline-offset: 4px;
	border-radius: 4px;
}

.gf-consent.gf-field-invalid label {
	color: #c0392b !important;
}

/* Pino do mapa "Nosso Escritório" — reposto via CSS porque o modo "ll=" do
   embed do Google (assets/js/site.js, gfFixMapEmbed) centraliza no ponto sem
   desenhar marcador nenhum; é assim que ele evita anexar o cartão duplicado
   de endereço, mas também não desenha o próprio pino. Sempre no centro do
   iframe — mesmo ponto que "ll=" usa pra centralizar. */
.gf-map-pin {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 34px;
	height: 34px;
	margin-top: -34px;
	margin-left: -17px;
	background-color: #a86315;
	-webkit-mask: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZD0iTTEyIDJDOC4xNCAyIDUgNS4xNCA1IDljMCA1LjI1IDcgMTMgNyAxM3M3LTcuNzUgNy0xM2MwLTMuODYtMy4xNC03LTctN3ptMCA5LjVjLTEuMzggMC0yLjUtMS4xMi0yLjUtMi41UzEwLjYyIDYuNSAxMiA2LjVzMi41IDEuMTIgMi41IDIuNVMxMy4zOCAxMS41IDEyIDExLjV6IiBmaWxsPSIlMjMwMDAiLz48L3N2Zz4=') no-repeat center / contain;
	mask: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZD0iTTEyIDJDOC4xNCAyIDUgNS4xNCA1IDljMCA1LjI1IDcgMTMgNyAxM3M3LTcuNzUgNy0xM2MwLTMuODYtMy4xNC03LTctN3ptMCA5LjVjLTEuMzggMC0yLjUtMS4xMi0yLjUtMi41UzEwLjYyIDYuNSAxMiA2LjVzMi41IDEuMTIgMi41IDIuNVMxMy4zOCAxMS41IDEyIDExLjV6IiBmaWxsPSIlMjMwMDAiLz48L3N2Zz4=') no-repeat center / contain;
	filter: drop-shadow(0 3px 6px rgba(0, 0, 0, .45));
	pointer-events: none;
	z-index: 2;
}

/* v1.0.51 — ajustes aprovados na Home e no Blog em 21/08/2026. */
@media (min-width: 1025px) {
	/* Dá mais espaço ao texto e reduz a fotografia para o título caber em uma linha. */
	#sobre .elementor-element-3898ccc0 {
		justify-content: space-between !important;
		align-items: center !important;
		gap: 4% !important;
	}

	#sobre .elementor-element-4794a8e0 {
		width: 68% !important;
		max-width: 68% !important;
		flex: 0 0 68% !important;
	}

	#sobre .elementor-element-2486ed0d {
		width: 28% !important;
		max-width: 28% !important;
		flex: 0 0 28% !important;
	}

	#sobre .elementor-element-4e3bf202 .elementor-heading-title {
		font-size: clamp(29px, 2.8vw, 36px) !important;
		white-space: nowrap !important;
	}
}

/* Chamada final da seção editorial: box cinza-claro solicitado. */
.gf2907-editorial-intro {
	max-width: 100% !important;
	padding: 24px 28px !important;
	border: 1px solid #e1e4e6 !important;
	border-left: 3px solid #c68a3d !important;
	background: #f2f3f4 !important;
	gap: 12px !important;
}

.gf2907-editorial-intro h3 {
	margin: 0 !important;
	color: #0d1c2b !important;
	font: 600 clamp(18px, 1.8vw, 24px)/1.25 Cinzel, Georgia, serif !important;
}

.gf2907-editorial-intro p {
	margin: 0 !important;
}

.gf2907-editorial-intro a {
	margin-top: 2px !important;
}

/* Mantém as três matérias laterais grandes e os títulos sem corte. */
@media (min-width: 961px) {
	.gf2907-editorial-side-card {
		grid-template-columns: 280px minmax(0, 1fr) !important;
		align-items: stretch !important;
	}

	.gf2907-editorial-side-card .gf2907-editorial-image {
		width: 280px !important;
		min-height: 220px !important;
	}

	.gf2907-editorial-side-card h3 {
		display: block !important;
		overflow: visible !important;
		-webkit-line-clamp: unset !important;
	}
}

/* Ouro institucional em todos os formulários de newsletter. */
.gf2907-newsletter-row button,
.gf-newsletter__form button[type="submit"],
.gfx-blogbar-row button {
	background: #c68a3d !important;
	border-color: #c68a3d !important;
	color: #0d1c2b !important;
}

.gf2907-newsletter-row button:hover,
.gf2907-newsletter-row button:focus-visible,
.gf-newsletter__form button[type="submit"]:hover,
.gf-newsletter__form button[type="submit"]:focus-visible,
.gfx-blogbar-row button:hover,
.gfx-blogbar-row button:focus-visible {
	background: #a86315 !important;
	border-color: #a86315 !important;
	color: #fff !important;
}

.gf2907-newsletter-status,
.gf-newsletter__status,
.gfx-blogbar-status {
	max-width: 760px;
	color: #c68a3d !important;
	line-height: 1.6 !important;
}

/* Endereço adicional no contato do Blog. */
.gf-blog-contact-address {
	margin-top: 8px;
	padding: 24px 0 0 80px;
	border-top: 1px solid rgba(255, 255, 255, .35);
	color: #acb9bd;
	font: 300 14px/1.65 Montserrat, sans-serif;
}

.gf-blog-contact-address strong {
	display: block;
	margin-bottom: 7px;
	color: #fff;
	font-size: 11px;
	letter-spacing: .16em;
	text-transform: uppercase;
}

.gf-blog-contact-address a {
	color: inherit !important;
	text-decoration: none !important;
}

.gf-blog-contact-address a:hover,
.gf-blog-contact-address a:focus-visible {
	color: #c68a3d !important;
	text-decoration: underline !important;
}

/* O ícone já existe no template; esta regra impede que estilos antigos o ocultem. */
.gf-footer #facebook {
	display: grid !important;
	place-items: center !important;
	visibility: visible !important;
	opacity: 1 !important;
}

@media (max-width: 640px) {
	.gf2907-editorial-intro {
		padding: 22px 20px !important;
	}

	.gf-blog-contact-address {
		padding-left: 0;
	}
}

/* v1.0.52 — páginas de categoria, artigos, rodapé e mapa padronizados com a Home. */

/* Mesma ordem, dimensões e cores dos três controles do cabeçalho da Home. */
.gf-native-header__actions {
	gap: 10px !important;
}

.gf-native-header .gf-menu-toggle {
	order: 1;
	color: #c68a3d !important;
	background: rgba(13, 28, 43, .24) !important;
	border-color: rgba(198, 138, 61, .72) !important;
}

.gf-native-header .gf-menu-toggle:hover,
.gf-native-header .gf-menu-toggle:focus-visible {
	color: #0d1c2b !important;
	background: #c68a3d !important;
	border-color: #c68a3d !important;
}

.gf-native-header__login {
	order: 2;
	color: #fff !important;
	background: rgba(13, 28, 43, .24) !important;
	border-color: rgba(255, 255, 255, .28) !important;
}

.gf-native-header__login:hover,
.gf-native-header__login:focus-visible {
	color: #0d1c2b !important;
	background: #c68a3d !important;
	border-color: #c68a3d !important;
}

.gf-native-header__service {
	order: 3;
	min-width: 174px;
}

/* Categorias: títulos mais compactos e CTA idêntico aos cards editoriais da Home. */
.gf-listing .gf-card:not(.gf-card--featured) h2,
.search-results .gf-card:not(.gf-card--featured) h2 {
	font-size: clamp(18px, 1.55vw, 23px) !important;
	line-height: 1.22 !important;
	letter-spacing: -.01em !important;
}

.gf-card .gf-text-link {
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: max-content;
	min-height: 44px;
	margin-top: 8px;
	padding: 0 24px;
	color: #fff !important;
	background: #b86b0e;
	border: 1px solid #b86b0e;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .09em;
	text-decoration: none !important;
	text-transform: uppercase;
	transition: color .25s, background .25s, border-color .25s;
}

.gf-card .gf-text-link:hover,
.gf-card .gf-text-link:focus-visible {
	color: #0d1c2b !important;
	background: #c68a3d;
	border-color: #c68a3d;
}

.gf-card .gf-text-link span {
	font-size: 16px;
	line-height: 1;
}

/* Rodapé nativo com a mesma caixa social e a mesma hierarquia da Home. */
.gf-native-footer__social-box {
	max-width: 360px;
	margin-top: 24px;
	padding: 22px 24px 24px;
	background: #35393d;
}

.gf-native-footer__social-box > p {
	margin: 0 !important;
	color: #fff !important;
	font-size: 11px !important;
	font-weight: 600;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.gf-native-footer__social-box .gf-native-footer__social {
	gap: 0;
	margin-top: 18px;
}

.gf-native-footer__social-box .gf-native-footer__social a {
	width: 52px;
	height: 52px;
	color: #a86315 !important;
	border-color: #a86315;
	border-right-width: 0;
}

.gf-native-footer__social-box .gf-native-footer__social a:last-child {
	border-right-width: 1px;
}

.gf-native-footer__social-box .gf-native-footer__social a:hover,
.gf-native-footer__social-box .gf-native-footer__social a:focus-visible {
	color: #fff !important;
	background: #a86315;
	transform: none;
}

.gf-native-footer .gf-newsletter {
	grid-template-columns: minmax(280px, .85fr) minmax(430px, 1.55fr);
	gap: clamp(42px, 6vw, 90px);
	padding: 34px 0 !important;
}

.gf-native-footer .gf-newsletter h2 {
	font-size: clamp(24px, 2.2vw, 32px) !important;
}

/* Mapa e endereço passam a formar um card vertical, sem qualquer sobreposição. */
.gf-map-wrap > .gf-office-stack,
.gf-map-wrap > .gf-map-col {
	flex: 1 1 0 !important;
	width: calc(50% - 10px) !important;
	max-width: none !important;
}

.gf-map-wrap > .gf-map-col {
	display: flex !important;
	flex-direction: column !important;
	align-self: stretch !important;
}

.gf-map-wrap.gf-map-wrap > .gf-map-col > .elementor-widget-google_maps,
.gf-map-wrap.gf-map-wrap > .gf-map-col > .elementor-widget-google_maps .elementor-widget-container,
.gf-map-wrap.gf-map-wrap > .gf-map-col > .elementor-widget-google_maps iframe {
	flex: 0 0 360px !important;
	width: 100% !important;
	height: 360px !important;
	min-height: 360px !important;
}

.gf-map-wrap > .gf-office-stack > .gf-map-note,
.gf-map-wrap > .gf-map-col > .gf-map-address-card {
	position: relative !important;
	inset: auto !important;
	left: auto !important;
	bottom: auto !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-start !important;
	flex-grow: 1 !important;
	width: 100% !important;
	max-width: none !important;
	min-height: 126px !important;
	margin: 0 !important;
	padding: 26px 30px !important;
	background: #0d1c2b !important;
	box-shadow: none !important;
	transform: none !important;
}

@media (max-width: 820px) {
	.gf-native-header__service {
		min-width: 0;
	}

	.gf-map-wrap > .gf-office-stack,
	.gf-map-wrap > .gf-map-col {
		width: 100% !important;
	}

	.gf-map-wrap > .gf-map-col > .elementor-widget-google_maps,
	.gf-map-wrap > .gf-map-col > .elementor-widget-google_maps .elementor-widget-container,
	.gf-map-wrap > .gf-map-col > .elementor-widget-google_maps iframe {
		flex-basis: 300px !important;
		height: 300px !important;
		min-height: 300px !important;
	}

	.gf-native-footer .gf-newsletter {
		grid-template-columns: 1fr;
	}
}

/* v1.0.55 — imagem horizontal de Nossos Valores e acabamento final do rodapé nativo. */
#sobre .elementor-element-3898ccc0 {
	align-items: center !important;
}

#sobre .elementor-element-4794a8e0 {
	flex: 1 1 56% !important;
	width: 56% !important;
	max-width: 56% !important;
}

#sobre .elementor-element-2486ed0d {
	align-self: center !important;
	flex: 1 1 40% !important;
	width: 40% !important;
	max-width: 40% !important;
	min-height: 0 !important;
	aspect-ratio: 2560 / 1188;
	background-image: url("https://novosite.gouveafranchi.com.br/wp-content/uploads/2026/08/NOSSOS_VALORES_EDITADA-1-scaled.png") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: contain !important;
}

/* v1.0.57 — componentes compartilhados preservados em todas as páginas. */
.gf-social-highlight {
	width: 100% !important;
	max-width: 360px !important;
	padding: 22px 24px !important;
	background: #35393d !important;
	border: 1px solid #35393d !important;
}

.gf-social-highlight .elementor-heading-title {
	color: #fff !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	letter-spacing: .14em !important;
	text-transform: uppercase !important;
}

.gf-social-highlight .gf-foot-social {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 0 !important;
	margin-top: 18px !important;
}

.gf-social-highlight .gf-foot-social-icon,
.gf-social-highlight .gf-foot-social-icon .elementor-icon-wrapper,
.gf-social-highlight .gf-foot-social-icon .elementor-icon {
	width: 52px !important;
	height: 52px !important;
}

.gf-social-highlight .gf-foot-social-icon .elementor-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #a86315 !important;
	border: 1px solid #a86315 !important;
}

.gf-social-highlight .gf-foot-social-icon .elementor-icon:hover,
.gf-social-highlight .gf-foot-social-icon .elementor-icon:focus-visible {
	color: #fff !important;
	background: #a86315 !important;
}

.gf-map-wrap {
	display: flex !important;
	align-items: stretch !important;
	gap: 20px !important;
}

.gf-map-wrap > .gf-office-stack,
.gf-map-wrap > .gf-map-col {
	display: flex !important;
	flex: 1 1 0 !important;
	flex-direction: column !important;
	width: calc(50% - 10px) !important;
	max-width: none !important;
}

.gf-map-wrap > .gf-office-stack > .gf-map-note,
.gf-map-wrap > .gf-map-col > .gf-map-address-card {
	flex: 1 1 auto !important;
	min-height: 140px !important;
}

.gf-map-address-card .elementor-heading-title {
	color: #c68a3d !important;
}

@media (max-width: 820px) {
	.gf-social-highlight {
		max-width: none !important;
	}

	.gf-map-wrap {
		flex-direction: column !important;
	}

	.gf-map-wrap > .gf-office-stack,
	.gf-map-wrap > .gf-map-col {
		width: 100% !important;
	}
}

/* v1.0.77 — estado publicado do cabeçalho, mapa, vídeo e rodapé. */
.gf-map-address-card,
.gf-map-note {
	justify-content: flex-start !important;
}

.gf-map-address-card::before {
	content: none !important;
	display: none !important;
}

.gf-foot-social-icon.gf-foot-social-icon,
.gf-foot-social-icon.gf-foot-social-icon .elementor-icon {
	width: 52px !important;
	height: 52px !important;
	max-width: 52px !important;
	max-height: 52px !important;
}

.gf-map-wrap.gf-reveal {
	opacity: 1 !important;
	transform: none !important;
	transition: none !important;
}

.gf-map-wrap.gf-map-wrap > .gf-map-col {
	gap: 0 !important;
}

.gf-map-address-card.gf-map-address-card {
	gap: 4px !important;
}

.gf-hero.gf-video-hero {
	margin-top: 85px !important;
}

.gf-native-footer__contact a {
	color: inherit;
	text-decoration: none;
}

.gf-native-footer__contact a:hover,
.gf-native-footer__contact a:focus-visible {
	color: #c68a3d;
}

.gf-native-footer .gf-newsletter__form button {
	color: #0d1c2b !important;
	background: #c68a3d !important;
	border-color: #c68a3d !important;
}

.gf-native-footer .gf-newsletter__form button:hover,
.gf-native-footer .gf-newsletter__form button:focus-visible {
	color: #fff !important;
	background: #a86315 !important;
	border-color: #a86315 !important;
}

@media (max-width: 820px) {
	#sobre .elementor-element-3898ccc0 {
		align-items: stretch !important;
	}

	#sobre .elementor-element-4794a8e0,
	#sobre .elementor-element-2486ed0d {
		flex-basis: 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}
}

/* v1.0.53 — grupo fixo das quatro áreas no menu hambúrguer. */
.gf-floating-menu-area-group {
	display: grid !important;
	margin: 0 0 8px !important;
	padding: 0 !important;
}

.gf-floating-menu-area-label {
	margin: 0 !important;
	padding: 15px 0 11px !important;
	color: #c68a3d !important;
	border-bottom: 1px solid rgba(255, 255, 255, .1);
	font: 600 12px/1.3 Montserrat, sans-serif !important;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.gf-floating-menu-area-group > .gf-floating-menu-sub {
	display: grid !important;
	margin: 0 !important;
	padding: 4px 0 4px 16px !important;
	border-left: 1px solid rgba(198, 138, 61, .45) !important;
}

.gf-floating-menu-area-group > .gf-floating-menu-sub a {
	display: block !important;
	padding: 10px 0 !important;
	color: rgba(255, 255, 255, .82) !important;
	border-bottom: 1px solid rgba(255, 255, 255, .07) !important;
	font: 400 12.5px/1.35 Montserrat, sans-serif !important;
	white-space: normal !important;
}

.gf-floating-menu-area-group > .gf-floating-menu-sub a:hover,
.gf-floating-menu-area-group > .gf-floating-menu-sub a:focus-visible {
	padding-left: 5px !important;
	color: #c68a3d !important;
}

/* v1.0.54 — controles nativos com as mesmas medidas da Home. */
.gf-native-header .gf-menu-toggle,
.gf-native-header__login {
	box-sizing: border-box !important;
	flex: 0 0 46px !important;
	width: 46px !important;
	min-width: 46px !important;
	max-width: 46px !important;
	height: 46px !important;
	min-height: 46px !important;
	max-height: 46px !important;
}

.gf-native-header__service {
	box-sizing: border-box !important;
	flex: 0 0 141px !important;
	width: 141px !important;
	min-width: 141px !important;
	max-width: 141px !important;
	height: 46px !important;
	padding-inline: 14px !important;
}

@media (max-width: 820px) {
	.gf-native-header__service {
		flex-basis: 46px !important;
		width: 46px !important;
		min-width: 46px !important;
		max-width: 46px !important;
		padding-inline: 0 !important;
	}

	.gf-native-header__service span {
		display: none !important;
	}
}
