/**
 * CSS do site institucional do Grupo FAPE.
 *
 * Herdado da época em que o site rodava em WordPress (era o style.css de um tema
 * filho do hello-elementor). Hoje o site é estático e este arquivo é carregado
 * direto pelo HTML — o cabeçalho de tema não tem mais função, mas o nome do
 * diretório foi mantido porque as 11 páginas referenciam este caminho.
 *
 * Grupo FAPE — 2026
 */

/*
 * Tokens visuais Grupo FAPE (base na nova identidade navy / industrial).
 * Elementor continua mandando na maior parte do layout; estas variáveis servem
 * para CSS adicional no filho, snippets ou blocos HTML customizados.
 */
:root {
	--fape-navy: #0c1324;
	--fape-navy-soft: #141f33;
	--fape-surface: #f6f7f9;
	--fape-border: #d7dce3;
	--fape-text: #1a2230;
	--fape-muted: #5c6678;
	--fape-cta: #3a6285;
	--fape-cta-hover: #2b4b66;
	--fape-radius: 2px;
	--fape-radius-card: 4px;
	--fape-space-section: clamp(3rem, 6vw, 5.5rem);
}

/* -------------------------------------------------------------------------
   FAPE — overrides visíveis no front (complementam Kit + JSON corrigido).
   ------------------------------------------------------------------------- */

body,
button,
input,
select,
textarea,
body .elementor-widget-heading .elementor-heading-title,
body .elementor-widget-text-editor,
body .elementor-button,
body .elementor-widget-icon-list,
body .elementor-widget-counter,
body .elementor-widget-form,
body .elementskit-navbar-nav,
body .elementskit-navbar-nav a {
	font-family: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important;
}

body {
	color: var(--fape-text);
	background-color: #fff;
}

.elementor-location-header {
	background: var(--fape-navy) !important;
	color: #fff;
}

.elementor-location-header .elementor-heading-title,
.elementor-location-header .elementor-nav-menu--main .elementor-item,
.elementor-location-header .elementor-nav-menu--dropdown .elementor-item,
.elementor-location-header .elementskit-navbar-nav > li > a,
.elementor-location-header .elementskit-navbar-nav > li > a .elementskit-submenu-indicator,
.elementor-location-header .elementor-icon-list-text,
.elementor-location-header .elementor-widget-icon-list {
	color: rgba(255, 255, 255, 0.94) !important;
}

.elementor-location-header .elementor-nav-menu--main .elementor-item.elementor-item-active,
.elementor-location-header .elementor-nav-menu--main .elementor-item.highlighted,
.elementor-location-header .elementor-nav-menu--main .elementor-item:focus,
.elementor-location-header .elementor-nav-menu--main .elementor-item:hover,
.elementor-location-header .elementskit-navbar-nav > li.current-menu-item > a,
.elementor-location-header .elementskit-navbar-nav > li.current-menu-ancestor > a,
.elementor-location-header .elementskit-navbar-nav > li > a:focus,
.elementor-location-header .elementskit-navbar-nav > li > a:hover {
	color: #fff !important;
}

.elementor-location-header .elementor-nav-menu--main .elementor-item::after {
	background-color: var(--fape-cta) !important;
}

.elementor-location-header .elementskit-navbar-nav .elementskit-submenu-panel {
	background: #fff !important;
	border: 1px solid var(--fape-border) !important;
	border-radius: var(--fape-radius-card) !important;
}

.elementor-location-header .elementskit-navbar-nav .elementskit-submenu-panel > li > a {
	color: var(--fape-text) !important;
}

.elementor-location-header .elementskit-navbar-nav .elementskit-submenu-panel > li > a:focus,
.elementor-location-header .elementskit-navbar-nav .elementskit-submenu-panel > li > a:hover {
	color: var(--fape-cta) !important;
}

.elementor-location-footer {
	background: var(--fape-navy-soft) !important;
	color: #fff !important;
}

.elementor-104 {
	background: var(--fape-navy-soft) !important;
	color: #fff !important;
}

.elementor-location-footer .elementor-heading-title,
.elementor-104 .elementor-heading-title,
.elementor-location-footer a,
.elementor-104 a,
.elementor-location-footer p,
.elementor-104 p,
.elementor-location-footer span,
.elementor-104 span,
.elementor-location-footer .elementor-widget-text-editor,
.elementor-104 .elementor-widget-text-editor,
.elementor-location-footer .elementor-icon-list-text,
.elementor-104 .elementor-icon-list-text,
.elementor-location-footer .elementor-icon-list-item,
.elementor-104 .elementor-icon-list-item,
.elementor-location-footer .elementor-icon-list-item a,
.elementor-104 .elementor-icon-list-item a,
.elementor-location-footer .elementor-nav-menu a,
.elementor-104 .elementor-nav-menu a,
.elementor-location-footer .elementskit-navbar-nav a {
	color: #fff !important;
}

.elementor-location-footer a:hover,
.elementor-104 a:hover {
	color: #fff !important;
}

.elementor-widget-button .elementor-button,
.elementor-button {
	background-color: var(--fape-cta) !important;
	border-color: var(--fape-cta) !important;
	color: #fff !important;
	border-radius: var(--fape-radius-card) !important;
	font-weight: 600 !important;
	letter-spacing: 0.02em;
}

.elementor-widget-button .elementor-button:hover,
.elementor-button:hover {
	background-color: var(--fape-cta-hover) !important;
	border-color: var(--fape-cta) !important;
	color: #fff !important;
}

.elementor-location-single .elementor-heading-title,
.elementor-location-archive .elementor-heading-title {
	color: var(--fape-navy) !important;
}

.elementor-location-single a:not(.elementor-button),
.elementor-location-archive a:not(.elementor-button) {
	color: var(--fape-cta);
}

.elementor-location-single a:not(.elementor-button):hover,
.elementor-location-archive a:not(.elementor-button):hover {
	color: var(--fape-cta-hover);
}

.elementor-widget-icon-list .elementor-icon-list-text,
.elementor-widget-text-editor,
.elementor-widget-counter .elementor-counter-title {
	color: var(--fape-muted);
}

.elementor-widget-counter .elementor-counter-number-wrapper,
.elementor-widget-heading .elementor-heading-title {
	color: var(--fape-text);
}

.cky-btn.cky-btn-accept,
.cky-btn.cky-btn-reject,
.cky-btn-revisit-wrapper {
	background-color: var(--fape-cta) !important;
	border-color: var(--fape-cta) !important;
	color: #fff !important;
}

.cky-btn.cky-btn-customize,
.cky-btn.cky-btn-preferences {
	background-color: transparent !important;
	border-color: var(--fape-cta) !important;
	color: var(--fape-cta) !important;
}

/* Logo oficial FAPE. */
.elementor-location-header img[src*="fape-logo-oficial-2026"],
.elementor-location-header img[src*="fape-logo-dark-2026"] {
	display: block;
	width: 178px !important;
	max-width: 178px !important;
	max-height: 74px !important;
	height: auto !important;
	object-fit: contain;
}

.elementor-location-header .elementor-widget-image a,
.elementor-location-header .elementskit-nav-logo,
.elementor-location-header .elementskit-branding {
	display: inline-flex;
	align-items: center;
}

.elementor-location-footer img[src*="fape-logo-oficial-2026"],
.elementor-location-footer img[src*="fape-logo-dark-2026"] {
	display: block;
	width: 190px !important;
	max-width: 190px !important;
	height: auto !important;
	object-fit: contain;
}

@media (max-width: 767px) {
	.elementor-location-header img[src*="fape-logo-oficial-2026"],
	.elementor-location-header img[src*="fape-logo-dark-2026"] {
		width: 142px !important;
		max-width: 142px !important;
	}

	.elementor-location-footer img[src*="fape-logo-oficial-2026"],
	.elementor-location-footer img[src*="fape-logo-dark-2026"] {
		width: 164px !important;
		max-width: 164px !important;
	}
}

/* Fallback visual da página Quem somos: evita blocos vazios se o background do Elementor falhar. */
.elementor-220 .elementor-element.elementor-element-b09cb57,
.elementor-220 .elementor-element.elementor-element-9f4bcf6,
.elementor-220 .elementor-element.elementor-element-80bea11 {
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	isolation: isolate;
	overflow: hidden;
	position: relative !important;
}

.elementor-220 .elementor-element.elementor-element-b09cb57 {
	background-image: url("/assets/uploads/2024/08/mulher-trabalhando.png") !important;
}

.elementor-220 .elementor-element.elementor-element-9f4bcf6 {
	background-image: url("/assets/uploads/2024/08/35-anos-no-mercado.png") !important;
}

.elementor-220 .elementor-element.elementor-element-80bea11 {
	background-image: url("/assets/uploads/2024/08/porque-nos-escolher.png") !important;
}

.elementor-220 .elementor-element.elementor-element-b09cb57::before,
.elementor-220 .elementor-element.elementor-element-9f4bcf6::before,
.elementor-220 .elementor-element.elementor-element-80bea11::before {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: inherit;
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 0;
}

.elementor-220 .elementor-element.elementor-element-b09cb57::before {
	background-image: url("/assets/uploads/2024/08/mulher-trabalhando.png");
}

.elementor-220 .elementor-element.elementor-element-9f4bcf6::before {
	background-image: url("/assets/uploads/2024/08/35-anos-no-mercado.png");
}

.elementor-220 .elementor-element.elementor-element-80bea11::before {
	background-image: url("/assets/uploads/2024/08/porque-nos-escolher.png");
}

.elementor-220 .elementor-element.elementor-element-b09cb57 > *:not(.elementor-motion-effects-container),
.elementor-220 .elementor-element.elementor-element-9f4bcf6 > *:not(.elementor-motion-effects-container),
.elementor-220 .elementor-element.elementor-element-80bea11 > *:not(.elementor-motion-effects-container) {
	position: relative;
	z-index: 2;
}

.elementor-220 .fape-about-bg-image {
	inset: 0 !important;
	margin: 0 !important;
	position: absolute !important;
	z-index: 1 !important;
}

.elementor-220 .fape-about-bg-image,
.elementor-220 .fape-about-bg-image .elementor-widget-container {
	border-radius: inherit;
	height: 100%;
	overflow: hidden;
	width: 100%;
}

.elementor-220 .fape-about-bg-image img {
	display: block;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	object-position: center center;
	width: 100% !important;
}

.elementor-220 .elementor-element.elementor-element-b09cb57 {
	overflow: hidden !important;
}

/* Ajustes finos para remover offsets antigos que empurravam os blocos para fora. */
.elementor-220 .elementor-element.elementor-element-dc028af {
	--align-items: center !important;
	--gap: 0 clamp(36px, 4vw, 64px) !important;
	--padding-bottom: clamp(56px, 6vw, 84px) !important;
	--padding-top: clamp(56px, 6vw, 84px) !important;
	align-items: center !important;
	gap: clamp(36px, 4vw, 64px) !important;
	padding-bottom: clamp(56px, 6vw, 84px) !important;
	padding-top: clamp(56px, 6vw, 84px) !important;
}

.elementor-220 .elementor-element.elementor-element-b09cb57 {
	--min-height: clamp(500px, 42vw, 620px) !important;
	min-height: clamp(500px, 42vw, 620px) !important;
}

.elementor-220 .elementor-element.elementor-element-30045cb {
	--align-self: flex-end !important;
	--margin-bottom: 28px !important;
	--margin-left: 0px !important;
	--margin-right: 28px !important;
	--margin-top: 0px !important;
	--width: clamp(210px, 15vw, 240px) !important;
	align-self: flex-end !important;
	margin: 0 28px 28px 0 !important;
	width: clamp(210px, 15vw, 240px) !important;
}

.elementor-220 .elementor-element.elementor-element-71b0d9e .elementor-heading-title {
	font-size: clamp(28px, 2.1vw, 34px) !important;
	line-height: 1.18 !important;
}

.elementor-220 .elementor-element.elementor-element-72b991d {
	--padding-bottom: clamp(48px, 5vw, 72px) !important;
	padding-bottom: clamp(48px, 5vw, 72px) !important;
}

.elementor-220 .elementor-element.elementor-element-b9efc3f {
	--min-height: 0px !important;
	min-height: 0 !important;
}

.elementor-220 .elementor-element.elementor-element-80bea11 {
	--align-items: stretch !important;
	--gap: 0px 0px !important;
	--min-height: clamp(520px, 43vw, 620px) !important;
	--order: -99999 !important;
	--padding-bottom: 0px !important;
	--padding-left: 0px !important;
	--padding-right: 0px !important;
	--padding-top: 0px !important;
	align-items: stretch !important;
	justify-content: center !important;
	overflow: hidden !important;
	padding: 0 !important;
}

.elementor-220 .elementor-element.elementor-element-80bea11::after {
	display: none !important;
}

.elementor-220 .elementor-element.elementor-element-80bea11 > .fape-about-bg-image {
	z-index: 0 !important;
}

.elementor-220 .elementor-element.elementor-element-50762af.e-con {
	--gap: 0px 0px !important;
	--order: 0 !important;
	counter-reset: fape-topic;
	gap: 0 !important;
}

.elementor-220 .elementor-element.elementor-element-0a880e1,
.elementor-220 .elementor-element.elementor-element-cb35544,
.elementor-220 .elementor-element.elementor-element-ce5dbe5 {
	--align-self: stretch !important;
	--min-height: 0px !important;
	--margin-bottom: 0px !important;
	--margin-left: 0px !important;
	--margin-right: 0px !important;
	--margin-top: 0px !important;
	--width: 100% !important;
	align-items: unset !important;
	align-self: stretch !important;
	background: transparent !important;
	border: none;
	border-bottom: 1px solid rgba(58, 98, 133, 0.14);
	border-radius: 0 !important;
	box-shadow: none;
	counter-increment: fape-topic;
	display: block !important;
	gap: unset !important;
	justify-content: unset !important;
	margin-bottom: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	margin-top: 0 !important;
	max-width: 560px !important;
	min-height: 0 !important;
	padding: 18px 0 !important;
	position: relative !important;
	width: 100% !important;
	z-index: auto;
}

.elementor-220 .elementor-element.elementor-element-0a880e1::before,
.elementor-220 .elementor-element.elementor-element-cb35544::before,
.elementor-220 .elementor-element.elementor-element-ce5dbe5::before {
	align-items: center !important;
	background: var(--fape-cta) !important;
	border-radius: 50% !important;
	color: #ffffff !important;
	content: counter(fape-topic, decimal-leading-zero) !important;
	display: flex !important;
	flex-shrink: 0 !important;
	font-family: "Plus Jakarta Sans", system-ui, sans-serif !important;
	font-size: 12px !important;
	font-weight: 800 !important;
	height: 34px !important;
	inset: auto !important;
	justify-content: center !important;
	left: 0 !important;
	letter-spacing: 0.02em !important;
	line-height: 1 !important;
	position: absolute !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	width: 34px !important;
}

.elementor-220 .elementor-element.elementor-element-cb35544::before {
	background: var(--fape-cta-hover);
}

.elementor-220 .elementor-element.elementor-element-ce5dbe5 {
	border-bottom: none;
}

.elementor-220 .elementor-element.elementor-element-ce5dbe5::before {
	background: var(--fape-navy);
}

.elementor-220 .elementor-element.elementor-element-0a880e1 > .elementor-widget-heading,
.elementor-220 .elementor-element.elementor-element-cb35544 > .elementor-widget-heading,
.elementor-220 .elementor-element.elementor-element-ce5dbe5 > .elementor-widget-heading {
	display: block !important;
	margin-left: 52px !important;
	text-align: left !important;
	width: auto !important;
}

.elementor-220 .elementor-element.elementor-element-9bb476e .elementor-heading-title,
.elementor-220 .elementor-element.elementor-element-f54baa9 .elementor-heading-title,
.elementor-220 .elementor-element.elementor-element-26b3bba .elementor-heading-title {
	color: var(--fape-navy) !important;
	font-family: "Plus Jakarta Sans", system-ui, sans-serif !important;
	font-size: clamp(15px, 1vw, 17px) !important;
	font-weight: 700 !important;
	line-height: 1.28 !important;
	text-align: left !important;
}

@media (max-width: 1024px) {
	.elementor-220 .elementor-element.elementor-element-dc028af {
		--padding-bottom: 56px !important;
		--padding-top: 56px !important;
		padding-bottom: 56px !important;
		padding-top: 56px !important;
	}

	.elementor-220 .elementor-element.elementor-element-b09cb57 {
		--min-height: 500px !important;
		min-height: 500px !important;
	}
}

@media (max-width: 767px) {
	.elementor-220 .elementor-element.elementor-element-b09cb57 {
		--min-height: 380px !important;
		min-height: 380px !important;
	}

	.elementor-220 .elementor-element.elementor-element-30045cb {
		--margin-bottom: 18px !important;
		--margin-left: 18px !important;
		--margin-right: 18px !important;
		--margin-top: 0px !important;
		--width: calc(100% - 36px) !important;
		margin: 0 18px 18px 18px !important;
		width: calc(100% - 36px) !important;
	}

	.elementor-220 .elementor-element.elementor-element-80bea11 {
		--padding-bottom: 0px !important;
		--padding-left: 0px !important;
		--padding-right: 0px !important;
		--padding-top: 0px !important;
		padding: 0 !important;
	}

	.elementor-220 .elementor-element.elementor-element-0a880e1,
	.elementor-220 .elementor-element.elementor-element-cb35544,
	.elementor-220 .elementor-element.elementor-element-ce5dbe5 {
		--margin-left: 0px !important;
		--width: 100% !important;
		margin-left: 0 !important;
		max-width: none !important;
		min-height: 0 !important;
		padding: 14px 0 !important;
		width: 100% !important;
	}

	.elementor-220 .elementor-element.elementor-element-0a880e1::before,
	.elementor-220 .elementor-element.elementor-element-cb35544::before,
	.elementor-220 .elementor-element.elementor-element-ce5dbe5::before {
		font-size: 11px !important;
		height: 28px !important;
		width: 28px !important;
	}

	.elementor-220 .elementor-element.elementor-element-0a880e1 > .elementor-widget-heading,
	.elementor-220 .elementor-element.elementor-element-cb35544 > .elementor-widget-heading,
	.elementor-220 .elementor-element.elementor-element-ce5dbe5 > .elementor-widget-heading {
		margin-left: 42px !important;
	}
}

/* Quem somos: imagem limpa e destaques posicionados abaixo do texto. */
@media (min-width: 1025px) {
	.elementor-220 .elementor-element.elementor-element-86fadaa {
		--align-items: stretch !important;
		--gap: 0px 0px !important;
		align-items: stretch !important;
	}

	.elementor-220 .elementor-element.elementor-element-86fadaa > .e-con-inner,
	.elementor-220 .elementor-element.elementor-element-86fadaa:not(.e-con-boxed) {
		align-items: stretch !important;
		display: grid !important;
		gap: 14px clamp(48px, 5vw, 76px) !important;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		grid-template-rows: auto 54px 54px 54px;
	}

	.elementor-220 .elementor-element.elementor-element-80bea11 {
		--display: contents !important;
		--min-height: 0px !important;
		--padding-bottom: 0px !important;
		--padding-left: 0px !important;
		--padding-right: 0px !important;
		--padding-top: 0px !important;
		background: transparent !important;
		display: contents !important;
		min-height: 0 !important;
		padding: 0 !important;
	}

	.elementor-220 .elementor-element.elementor-element-80bea11::before,
	.elementor-220 .elementor-element.elementor-element-80bea11::after {
		display: none !important;
	}

	.elementor-220 .elementor-element.elementor-element-80bea11 > .fape-about-bg-image {
		align-self: stretch !important;
		border-radius: 24px !important;
		grid-column: 1 !important;
		grid-row: 1 / span 4 !important;
		height: clamp(500px, 40vw, 620px) !important;
		inset: auto !important;
		margin: 0 !important;
		min-height: 0 !important;
		overflow: hidden !important;
		position: relative !important;
		width: 100% !important;
		z-index: 1 !important;
	}

	.elementor-220 .elementor-element.elementor-element-80bea11 > .fape-about-bg-image img {
		height: 100% !important;
		object-fit: cover !important;
		object-position: center center !important;
		width: 100% !important;
	}

	.elementor-220 .elementor-element.elementor-element-50762af {
		--gap: 16px 16px !important;
		--justify-content: flex-start !important;
		--padding-top: clamp(96px, 8vw, 138px) !important;
		grid-column: 2 !important;
		grid-row: 1 !important;
		justify-content: flex-start !important;
		padding-top: clamp(96px, 8vw, 138px) !important;
		width: 100% !important;
	}

	.elementor-220 .elementor-element.elementor-element-0a880e1,
	.elementor-220 .elementor-element.elementor-element-cb35544,
	.elementor-220 .elementor-element.elementor-element-ce5dbe5 {
		--align-self: stretch !important;
		--margin-bottom: 0px !important;
		--margin-left: 0px !important;
		--margin-right: 0px !important;
		--margin-top: 0px !important;
		--width: 100% !important;
		align-self: stretch !important;
		grid-column: 2 !important;
		margin: 0 !important;
		max-width: 560px !important;
		position: relative !important;
		width: 100% !important;
		z-index: 2 !important;
	}

	.elementor-220 .elementor-element.elementor-element-0a880e1 {
		grid-row: 2 !important;
	}

	.elementor-220 .elementor-element.elementor-element-cb35544 {
		grid-row: 3 !important;
	}

	.elementor-220 .elementor-element.elementor-element-ce5dbe5 {
		grid-row: 4 !important;
	}
}

/* Linha do tempo (Quem Somos): setas conectadas em degrade navy, formato serpentina. */
.elementor-220 .elementor-element.elementor-element-9469bf0,
.elementor-220 .elementor-element.elementor-element-19eea38 {
	display: none !important;
}

.elementor-220 .elementor-element.elementor-element-236ff17 {
	background: linear-gradient(180deg, #f8fafc 0%, #edf4f8 100%) !important;
	overflow: visible !important;
	padding: clamp(24px, 3vw, 40px) 24px clamp(40px, 4vw, 56px) !important;
}

.elementor-220 .elementor-element.elementor-element-236ff17 > .e-con-inner {
	counter-reset: fape-timeline;
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	column-gap: 10px !important;
	row-gap: 96px !important;
	margin: 0 auto !important;
	max-width: 1140px !important;
	padding: 56px 8px 0 !important;
	position: relative !important;
	width: 100% !important;
}

.elementor-220 .elementor-element.elementor-element-31bc2d8,
.elementor-220 .elementor-element.elementor-element-55163be,
.elementor-220 .elementor-element.elementor-element-e09cc33,
.elementor-220 .elementor-element.elementor-element-557bb77,
.elementor-220 .elementor-element.elementor-element-a697c6c,
.elementor-220 .elementor-element.elementor-element-7752c60,
.elementor-220 .elementor-element.elementor-element-c70043a,
.elementor-220 .elementor-element.elementor-element-4264515 {
	counter-increment: fape-timeline;
	display: flex !important;
	flex-direction: column !important;
	filter: drop-shadow(0 10px 16px rgba(12, 19, 36, 0.18)) !important;
	gap: 6px !important;
	height: 172px !important;
	justify-content: center !important;
	overflow: hidden !important;
	padding: 20px 36px 16px !important;
	position: relative !important;
	text-align: center !important;
	transition: transform 200ms ease, filter 200ms ease !important;
	z-index: 2 !important;
}

/* Seta apontando para a esquerda (linha 1: 1989 -> 1992 -> 2018 -> 2021). */
.elementor-220 .elementor-element.elementor-element-31bc2d8,
.elementor-220 .elementor-element.elementor-element-55163be,
.elementor-220 .elementor-element.elementor-element-e09cc33,
.elementor-220 .elementor-element.elementor-element-557bb77 {
	clip-path: polygon(100% 0%, 12% 0%, 0% 50%, 12% 100%, 100% 100%, 88% 50%) !important;
}

/* Seta apontando para a direita (linha 2: 2022 -> 2023 -> 2024 -> 2025). */
.elementor-220 .elementor-element.elementor-element-a697c6c,
.elementor-220 .elementor-element.elementor-element-7752c60,
.elementor-220 .elementor-element.elementor-element-c70043a,
.elementor-220 .elementor-element.elementor-element-4264515 {
	clip-path: polygon(0% 0%, 88% 0%, 100% 50%, 88% 100%, 0% 100%, 12% 50%) !important;
}

/* Degrade cronologico: do azul-aco claro (1989) ao navy profundo (2025). */
.elementor-220 .elementor-element.elementor-element-31bc2d8 { background: #8fabc7 !important; }
.elementor-220 .elementor-element.elementor-element-55163be { background: #7996b3 !important; }
.elementor-220 .elementor-element.elementor-element-e09cc33 { background: #63819e !important; }
.elementor-220 .elementor-element.elementor-element-557bb77 { background: #4f6c89 !important; }
.elementor-220 .elementor-element.elementor-element-a697c6c { background: #3d5975 !important; }
.elementor-220 .elementor-element.elementor-element-7752c60 { background: #2e4761 !important; }
.elementor-220 .elementor-element.elementor-element-c70043a { background: #21374f !important; }
.elementor-220 .elementor-element.elementor-element-4264515 { background: var(--fape-navy) !important; }

.elementor-220 .elementor-element.elementor-element-31bc2d8:hover,
.elementor-220 .elementor-element.elementor-element-55163be:hover,
.elementor-220 .elementor-element.elementor-element-e09cc33:hover,
.elementor-220 .elementor-element.elementor-element-557bb77:hover,
.elementor-220 .elementor-element.elementor-element-a697c6c:hover,
.elementor-220 .elementor-element.elementor-element-7752c60:hover,
.elementor-220 .elementor-element.elementor-element-c70043a:hover,
.elementor-220 .elementor-element.elementor-element-4264515:hover {
	filter: drop-shadow(0 14px 22px rgba(12, 19, 36, 0.28)) !important;
	transform: translateY(-4px) !important;
}

.elementor-220 .elementor-element.elementor-element-31bc2d8::before,
.elementor-220 .elementor-element.elementor-element-55163be::before,
.elementor-220 .elementor-element.elementor-element-e09cc33::before,
.elementor-220 .elementor-element.elementor-element-557bb77::before,
.elementor-220 .elementor-element.elementor-element-a697c6c::before,
.elementor-220 .elementor-element.elementor-element-7752c60::before,
.elementor-220 .elementor-element.elementor-element-c70043a::before {
	align-items: center !important;
	background: var(--fape-navy) !important;
	border: 3px solid #f6f9fb !important;
	border-radius: 50% !important;
	box-shadow: 0 0 0 1px rgba(58, 98, 133, 0.25) !important;
	color: #ffffff !important;
	content: counter(fape-timeline, decimal-leading-zero) !important;
	display: flex !important;
	font-family: "Plus Jakarta Sans", system-ui, sans-serif !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	height: 34px !important;
	justify-content: center !important;
	left: 50% !important;
	position: absolute !important;
	top: -46px !important;
	transform: translateX(-50%) !important;
	width: 34px !important;
	z-index: 3 !important;
}

/* Remove os círculos Ellipse herdados do layout antigo: o ano fica direto sobre a
   seta, como no card de 2025. Os círculos brancos tornavam o ano (branco) ilegível. */
.elementor-220 .elementor-element.elementor-element-236ff17 .elementor-element-b5f87f0,
.elementor-220 .elementor-element.elementor-element-236ff17 .elementor-element-28ac6bd,
.elementor-220 .elementor-element.elementor-element-236ff17 .elementor-element-373495e,
.elementor-220 .elementor-element.elementor-element-236ff17 .elementor-element-3c658dc,
.elementor-220 .elementor-element.elementor-element-236ff17 .elementor-element-0ceb012,
.elementor-220 .elementor-element.elementor-element-236ff17 .elementor-element-0f8cd89,
.elementor-220 .elementor-element.elementor-element-236ff17 .elementor-element-81de34f,
.elementor-220 .elementor-element.elementor-element-236ff17 .elementor-element-bb0c8c0,
.elementor-220 .elementor-element.elementor-element-236ff17 .elementor-element-aa169fc {
	background-image: none !important;
	--min-height: 0 !important;
	--width: auto !important;
	--align-self: center !important;
	min-height: 0 !important;
	align-self: center !important;
}

.elementor-220 .elementor-element.elementor-element-236ff17 .elementor-heading-title {
	color: #ffffff !important;
	font-family: "Plus Jakarta Sans", system-ui, sans-serif !important;
	font-size: clamp(20px, 1.8vw, 25px) !important;
	font-weight: 800 !important;
	letter-spacing: 0 !important;
	line-height: 1 !important;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.22) !important;
}

.elementor-220 .elementor-element.elementor-element-236ff17 .elementor-widget-text-editor {
	color: rgba(255, 255, 255, 0.88) !important;
	font-family: "Plus Jakarta Sans", system-ui, sans-serif !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 1.38 !important;
}

.elementor-220 .elementor-element.elementor-element-236ff17 .elementor-widget-text-editor p {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	display: -webkit-box;
	margin: 0 !important;
	overflow: hidden;
}

/* Linha 1 (direita -> esquerda): 1989, 1992, 2018, 2021. */
.elementor-220 .elementor-element.elementor-element-31bc2d8 { grid-column: 4 !important; grid-row: 1 !important; }
.elementor-220 .elementor-element.elementor-element-55163be { grid-column: 3 !important; grid-row: 1 !important; }
.elementor-220 .elementor-element.elementor-element-e09cc33 { grid-column: 2 !important; grid-row: 1 !important; }
.elementor-220 .elementor-element.elementor-element-557bb77 { grid-column: 1 !important; grid-row: 1 !important; }

/* Linha 2 (esquerda -> direita, continuando a trilha): 2022, 2023, 2024, 2025 -- termina no ultimo card, embaixo a direita. */
.elementor-220 .elementor-element.elementor-element-a697c6c { grid-column: 1 !important; grid-row: 2 !important; }
.elementor-220 .elementor-element.elementor-element-7752c60 { grid-column: 2 !important; grid-row: 2 !important; }
.elementor-220 .elementor-element.elementor-element-c70043a { grid-column: 3 !important; grid-row: 2 !important; }
.elementor-220 .elementor-element.elementor-element-4264515 { grid-column: 4 !important; grid-row: 2 !important; }

/* Seta indicando a curva da trilha (fim da linha 1, descendo para a linha 2). */
.elementor-220 .elementor-element.elementor-element-557bb77::after {
	border-left: 7px solid transparent !important;
	border-right: 7px solid transparent !important;
	border-top: 10px solid #c3d3e2 !important;
	bottom: -50px !important;
	content: "" !important;
	height: 0 !important;
	left: 50% !important;
	opacity: 0.9 !important;
	position: absolute !important;
	transform: translateX(-50%) !important;
	width: 0 !important;
	z-index: 3 !important;
}

/* Marco final (2025): estrela no marcador e etiqueta "HOJE" em destaque claro. */
.elementor-220 .elementor-element.elementor-element-4264515::before {
	content: "\2605" !important;
	font-size: 14px !important;
}

.elementor-220 .elementor-element.elementor-element-4264515::after {
	background: #f6f9fb !important;
	border-radius: 999px !important;
	color: var(--fape-navy) !important;
	content: "HOJE" !important;
	font-family: "Plus Jakarta Sans", system-ui, sans-serif !important;
	font-size: 9px !important;
	font-weight: 800 !important;
	left: 50% !important;
	letter-spacing: 0.14em !important;
	padding: 3px 10px !important;
	position: absolute !important;
	top: -78px !important;
	transform: translateX(-50%) !important;
	z-index: 3 !important;
}

@keyframes fapeTimelineRiseUp {
	from { opacity: 0; transform: translateY(16px); }
	to { opacity: 1; transform: translateY(0); }
}

.elementor-220 .elementor-element.elementor-element-31bc2d8,
.elementor-220 .elementor-element.elementor-element-55163be,
.elementor-220 .elementor-element.elementor-element-e09cc33,
.elementor-220 .elementor-element.elementor-element-557bb77,
.elementor-220 .elementor-element.elementor-element-a697c6c,
.elementor-220 .elementor-element.elementor-element-7752c60,
.elementor-220 .elementor-element.elementor-element-c70043a,
.elementor-220 .elementor-element.elementor-element-4264515 {
	animation: fapeTimelineRiseUp 480ms ease both;
}

.elementor-220 .elementor-element.elementor-element-55163be { animation-delay: 60ms; }
.elementor-220 .elementor-element.elementor-element-e09cc33 { animation-delay: 120ms; }
.elementor-220 .elementor-element.elementor-element-557bb77 { animation-delay: 180ms; }
.elementor-220 .elementor-element.elementor-element-a697c6c { animation-delay: 240ms; }
.elementor-220 .elementor-element.elementor-element-7752c60 { animation-delay: 300ms; }
.elementor-220 .elementor-element.elementor-element-c70043a { animation-delay: 360ms; }
.elementor-220 .elementor-element.elementor-element-4264515 { animation-delay: 420ms; }

@media (prefers-reduced-motion: reduce) {
	.elementor-220 .elementor-element.elementor-element-236ff17 .e-con-inner > div {
		animation: none !important;
	}
}

.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive .elementor-element-31bc2d8,
.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive .elementor-element-55163be,
.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive .elementor-element-e09cc33,
.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive .elementor-element-557bb77,
.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive .elementor-element-a697c6c,
.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive .elementor-element-7752c60,
.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive .elementor-element-c70043a,
.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive .elementor-element-4264515 {
	animation: none !important;
	opacity: 0;
	transform: translateY(16px);
}

.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive.fape-timeline-visible .elementor-element-31bc2d8,
.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive.fape-timeline-visible .elementor-element-55163be,
.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive.fape-timeline-visible .elementor-element-e09cc33,
.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive.fape-timeline-visible .elementor-element-557bb77,
.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive.fape-timeline-visible .elementor-element-a697c6c,
.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive.fape-timeline-visible .elementor-element-7752c60,
.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive.fape-timeline-visible .elementor-element-c70043a,
.elementor-220 .elementor-element.elementor-element-236ff17.fape-timeline-interactive.fape-timeline-visible .elementor-element-4264515 {
	animation: fapeTimelineRiseUp 560ms cubic-bezier(0.22, 1, 0.36, 1) var(--fape-timeline-delay, 0ms) both !important;
}

@media (max-width: 860px) {
	.elementor-220 .elementor-element.elementor-element-236ff17 {
		padding-left: 18px !important;
		padding-right: 18px !important;
	}

	.elementor-220 .elementor-element.elementor-element-236ff17 > .e-con-inner {
		grid-template-columns: 30px 1fr !important;
		column-gap: 16px !important;
		row-gap: 26px !important;
		max-width: 100% !important;
		padding: 8px 2px 0 !important;
	}

	.elementor-220 .elementor-element.elementor-element-236ff17 > .e-con-inner::before {
		background: var(--fape-cta) !important;
		border-radius: 999px !important;
		bottom: 6px !important;
		content: "" !important;
		left: 15px !important;
		position: absolute !important;
		top: 6px !important;
		width: 3px !important;
		z-index: 0 !important;
	}

	.elementor-220 .elementor-element.elementor-element-557bb77::after {
		display: none !important;
	}

	.elementor-220 .elementor-element.elementor-element-31bc2d8,
	.elementor-220 .elementor-element.elementor-element-55163be,
	.elementor-220 .elementor-element.elementor-element-e09cc33,
	.elementor-220 .elementor-element.elementor-element-557bb77,
	.elementor-220 .elementor-element.elementor-element-a697c6c,
	.elementor-220 .elementor-element.elementor-element-7752c60,
	.elementor-220 .elementor-element.elementor-element-c70043a,
	.elementor-220 .elementor-element.elementor-element-4264515 {
		border-radius: 10px !important;
		clip-path: none !important;
		filter: drop-shadow(0 8px 14px rgba(12, 19, 36, 0.16)) !important;
		grid-column: 2 / 3 !important;
		height: auto !important;
		justify-content: flex-start !important;
		min-height: 116px !important;
		padding: 18px 20px 16px !important;
		text-align: left !important;
	}

	.elementor-220 .elementor-element.elementor-element-31bc2d8,
	.elementor-220 .elementor-element.elementor-element-55163be,
	.elementor-220 .elementor-element.elementor-element-e09cc33,
	.elementor-220 .elementor-element.elementor-element-557bb77,
	.elementor-220 .elementor-element.elementor-element-a697c6c,
	.elementor-220 .elementor-element.elementor-element-7752c60,
	.elementor-220 .elementor-element.elementor-element-c70043a {
		grid-row: auto !important;
	}

	.elementor-220 .elementor-element.elementor-element-31bc2d8::before,
	.elementor-220 .elementor-element.elementor-element-55163be::before,
	.elementor-220 .elementor-element.elementor-element-e09cc33::before,
	.elementor-220 .elementor-element.elementor-element-557bb77::before,
	.elementor-220 .elementor-element.elementor-element-a697c6c::before,
	.elementor-220 .elementor-element.elementor-element-7752c60::before,
	.elementor-220 .elementor-element.elementor-element-c70043a::before {
		left: -42px !important;
		top: 18px !important;
		transform: none !important;
	}

	.elementor-220 .elementor-element.elementor-element-4264515 {
		grid-row: auto !important;
	}

	.elementor-220 .elementor-element.elementor-element-4264515::before {
		left: -42px !important;
		top: 18px !important;
		transform: none !important;
	}

	.elementor-220 .elementor-element.elementor-element-4264515::after {
		left: -42px !important;
		top: -12px !important;
		transform: none !important;
	}
}

.elementor-145 .elementor-element.elementor-element-77c9934,
.elementor-145 .elementor-element.elementor-element-cf82d07,
.elementor-145 .elementor-element.elementor-element-b711096,
.elementor-145 .elementor-element.elementor-element-844ef1d,
.elementor-145 .elementor-element.elementor-element-54ece3d {
	background-color: var(--fape-navy) !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	box-shadow: none !important;
	isolation: isolate;
	overflow: hidden;
	position: relative !important;
}

.elementor-145 .elementor-element.elementor-element-77c9934 {
	background-image: linear-gradient(180deg, rgba(12, 19, 36, 0.08) 0%, rgba(12, 19, 36, 0.14) 45%, rgba(12, 19, 36, 0.62) 100%), url("/assets/uploads/2024/08/Automobilistico.png") !important;
}

.elementor-145 .elementor-element.elementor-element-cf82d07 {
	background-image: linear-gradient(180deg, rgba(12, 19, 36, 0.08) 0%, rgba(12, 19, 36, 0.14) 45%, rgba(12, 19, 36, 0.62) 100%), url("/assets/uploads/2024/08/Construcao-Civil.png") !important;
}

.elementor-145 .elementor-element.elementor-element-b711096 {
	background-image: linear-gradient(180deg, rgba(12, 19, 36, 0.08) 0%, rgba(12, 19, 36, 0.14) 45%, rgba(12, 19, 36, 0.62) 100%), url("/assets/uploads/2024/08/Energia-Fotovoltaica.png") !important;
}

.elementor-145 .elementor-element.elementor-element-844ef1d {
	background-image: linear-gradient(180deg, rgba(12, 19, 36, 0.08) 0%, rgba(12, 19, 36, 0.14) 45%, rgba(12, 19, 36, 0.62) 100%), url("/assets/uploads/2024/08/Linha-Branca.png") !important;
}

.elementor-145 .elementor-element.elementor-element-54ece3d {
	background-image: linear-gradient(180deg, rgba(12, 19, 36, 0.08) 0%, rgba(12, 19, 36, 0.14) 45%, rgba(12, 19, 36, 0.62) 100%), url("/assets/uploads/2024/08/Belico.png") !important;
}

.elementor-145 .elementor-element.elementor-element-77c9934::before,
.elementor-145 .elementor-element.elementor-element-cf82d07::before,
.elementor-145 .elementor-element.elementor-element-b711096::before,
.elementor-145 .elementor-element.elementor-element-844ef1d::before,
.elementor-145 .elementor-element.elementor-element-54ece3d::before {
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	border-radius: inherit;
	content: "" !important;
	filter: contrast(1.08) saturate(1.08);
	inset: 0;
	opacity: 1;
	position: absolute;
	transform: scale(1.01);
	z-index: 0;
}

.elementor-145 .elementor-element.elementor-element-77c9934::after,
.elementor-145 .elementor-element.elementor-element-cf82d07::after,
.elementor-145 .elementor-element.elementor-element-b711096::after,
.elementor-145 .elementor-element.elementor-element-844ef1d::after,
.elementor-145 .elementor-element.elementor-element-54ece3d::after {
	background: linear-gradient(180deg, rgba(12, 19, 36, 0.03) 0%, rgba(12, 19, 36, 0.1) 44%, rgba(12, 19, 36, 0.52) 100%);
	border-radius: inherit;
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 1;
}

.elementor-145 .elementor-element.elementor-element-77c9934 > *,
.elementor-145 .elementor-element.elementor-element-cf82d07 > *,
.elementor-145 .elementor-element.elementor-element-b711096 > *,
.elementor-145 .elementor-element.elementor-element-844ef1d > *,
.elementor-145 .elementor-element.elementor-element-54ece3d > * {
	position: relative;
	z-index: 2;
}

.elementor-145 .elementor-element.elementor-element-77c9934 > .fape-sector-card-image,
.elementor-145 .elementor-element.elementor-element-cf82d07 > .fape-sector-card-image,
.elementor-145 .elementor-element.elementor-element-b711096 > .fape-sector-card-image,
.elementor-145 .elementor-element.elementor-element-844ef1d > .fape-sector-card-image,
.elementor-145 .elementor-element.elementor-element-54ece3d > .fape-sector-card-image {
	inset: 0 !important;
	margin: 0 !important;
	position: absolute !important;
	z-index: 0 !important;
}

.elementor-145 .fape-sector-card-image,
.elementor-145 .fape-sector-card-image .elementor-widget-container {
	border-radius: inherit;
	height: 100%;
	overflow: hidden;
	width: 100%;
}

.elementor-145 .fape-sector-card-image img {
	display: block;
	filter: contrast(1.08) saturate(1.08);
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	object-position: center center;
	width: 100% !important;
}

.elementor-145 .elementor-element.elementor-element-8ed88b8 {
	align-items: center !important;
	gap: clamp(28px, 4vw, 56px) !important;
	padding-bottom: clamp(64px, 7vw, 96px) !important;
	padding-top: clamp(64px, 7vw, 96px) !important;
}

.elementor-145 .elementor-element.elementor-element-cc22709,
.elementor-145 .elementor-element.elementor-element-3914ad1 {
	background-color: var(--fape-navy) !important;
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	box-shadow: 0 24px 70px rgba(12, 19, 36, 0.12);
	isolation: isolate;
	overflow: hidden;
	position: relative !important;
}

.elementor-145 .elementor-element.elementor-element-cc22709 {
	min-height: clamp(420px, 46vw, 640px) !important;
}

.elementor-145 .elementor-element.elementor-element-3914ad1,
.elementor-145 .elementor-element.elementor-element-64bf442 {
	min-height: clamp(260px, 24vw, 340px) !important;
}

.elementor-145 .elementor-element.elementor-element-cc22709 > .fape-feature-card-image,
.elementor-145 .elementor-element.elementor-element-3914ad1 > .fape-feature-card-image {
	inset: 0 !important;
	margin: 0 !important;
	position: absolute !important;
	z-index: 0 !important;
}

.elementor-145 .fape-feature-card-image,
.elementor-145 .fape-feature-card-image .elementor-widget-container {
	border-radius: inherit;
	height: 100%;
	overflow: hidden;
	width: 100%;
}

.elementor-145 .fape-feature-card-image img {
	display: block;
	filter: contrast(1.06) saturate(1.04);
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	object-position: center center;
	width: 100% !important;
}

.elementor-145 .elementor-element.elementor-element-cc22709::after,
.elementor-145 .elementor-element.elementor-element-3914ad1::after {
	border-radius: inherit;
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 1;
}

.elementor-145 .elementor-element.elementor-element-cc22709::after {
	background: linear-gradient(180deg, rgba(12, 19, 36, 0.02) 0%, rgba(12, 19, 36, 0.1) 45%, rgba(12, 19, 36, 0.52) 100%);
}

.elementor-145 .elementor-element.elementor-element-3914ad1::after {
	background: linear-gradient(90deg, rgba(12, 19, 36, 0.08) 0%, rgba(12, 19, 36, 0.18) 100%);
}

.elementor-145 .elementor-element.elementor-element-cc22709 > *:not(.fape-feature-card-image),
.elementor-145 .elementor-element.elementor-element-3914ad1 > *:not(.fape-feature-card-image) {
	position: relative;
	z-index: 2;
}

.elementor-145 .elementor-element.elementor-element-02e5869 {
	background: rgba(12, 19, 36, 0.94) !important;
	border: 1px solid rgba(255, 255, 255, 0.12);
	box-shadow: 0 18px 46px rgba(12, 19, 36, 0.26);
	margin: 0 clamp(20px, 3vw, 36px) clamp(20px, 3vw, 36px) 0 !important;
	padding: clamp(28px, 3vw, 44px) !important;
	width: clamp(280px, 26vw, 390px) !important;
}

.elementor-145 .elementor-element.elementor-element-dcedc70 .elementor-heading-title {
	color: #fff !important;
	font-size: clamp(34px, 3.6vw, 54px) !important;
	line-height: 1.08 !important;
}

.elementor-145 .elementor-element.elementor-element-ba117a5 {
	align-items: stretch !important;
	gap: clamp(24px, 3vw, 40px) !important;
	padding-bottom: clamp(64px, 7vw, 92px) !important;
}

.elementor-145 .elementor-element.elementor-element-64bf442 {
	align-items: flex-start !important;
	background: linear-gradient(135deg, var(--fape-navy) 0%, var(--fape-navy-soft) 100%) !important;
	color: #fff !important;
	flex-direction: column !important;
	gap: 18px !important;
	justify-content: center !important;
	padding: clamp(32px, 4vw, 56px) !important;
}

.elementor-145 .elementor-element.elementor-element-64bf442 .elementor-icon,
.elementor-145 .elementor-element.elementor-element-64bf442 .elementor-icon svg,
.elementor-145 .elementor-element.elementor-element-64bf442 .elementor-icon svg * {
	color: var(--fape-cta) !important;
	fill: none !important;
	stroke: var(--fape-cta) !important;
}

.elementor-145 .elementor-element.elementor-element-9cb1d7e {
	width: 100% !important;
	max-width: 520px !important;
}

.elementor-145 .elementor-element.elementor-element-9cb1d7e .elementor-heading-title,
.elementor-145 .elementor-element.elementor-element-9cb1d7e .elementor-heading-title span {
	color: #fff !important;
	font-size: clamp(36px, 4vw, 58px) !important;
	line-height: 1.05 !important;
}

.elementor-145 .fape-years-card-text {
	max-width: 430px;
}

.elementor-145 .fape-years-card-text,
.elementor-145 .fape-years-card-text p {
	color: rgba(255, 255, 255, 0.78) !important;
	font-size: clamp(15px, 1.3vw, 18px);
	line-height: 1.55;
	margin: 0;
}

@media (max-width: 767px) {
	.elementor-145 .elementor-element.elementor-element-8ed88b8,
	.elementor-145 .elementor-element.elementor-element-ba117a5 {
		flex-direction: column !important;
	}

	.elementor-145 .elementor-element.elementor-element-cc22709,
	.elementor-145 .elementor-element.elementor-element-3914ad1,
	.elementor-145 .elementor-element.elementor-element-64bf442 {
		width: 100% !important;
	}

	.elementor-145 .elementor-element.elementor-element-02e5869 {
		margin: 0 18px 18px 18px !important;
		width: calc(100% - 36px) !important;
	}
}

.elementor-145 .elementor-element.elementor-element-77c9934::before {
	background-image: url("/assets/uploads/2024/08/Automobilistico.png") !important;
}

.elementor-145 .elementor-element.elementor-element-cf82d07::before {
	background-image: url("/assets/uploads/2024/08/Construcao-Civil.png") !important;
}

.elementor-145 .elementor-element.elementor-element-b711096::before {
	background-image: url("/assets/uploads/2024/08/Energia-Fotovoltaica.png") !important;
}

.elementor-145 .elementor-element.elementor-element-844ef1d::before {
	background-image: url("/assets/uploads/2024/08/Linha-Branca.png") !important;
}

.elementor-145 .elementor-element.elementor-element-54ece3d::before {
	background-image: url("/assets/uploads/2024/08/Belico.png") !important;
}

.elementor-145 .elementor-widget-icon .elementor-icon,
.elementor-145 .elementor-widget-icon .elementor-icon i,
.elementor-145 .elementor-widget-icon .elementor-icon svg,
.elementor-location-footer .elementor-widget-icon .elementor-icon,
.elementor-104 .elementor-widget-icon .elementor-icon,
.elementor-location-footer .elementor-widget-icon .elementor-icon i,
.elementor-104 .elementor-widget-icon .elementor-icon i,
.elementor-location-footer .elementor-widget-icon .elementor-icon svg {
	border-color: var(--fape-cta-hover) !important;
	color: var(--fape-cta) !important;
	fill: var(--fape-cta) !important;
	stroke: var(--fape-cta) !important;
}

.elementor-widget-icon-list .elementor-icon-list-icon,
.elementor-widget-icon-list .elementor-icon-list-icon i,
.elementor-widget-icon-list .elementor-icon-list-icon svg,
.elementor-widget-icon-list .elementor-icon-list-icon svg * {
	color: var(--fape-cta) !important;
	fill: var(--fape-cta) !important;
	stroke: var(--fape-cta) !important;
}

.elementor-widget-icon.elementor-view-stacked .elementor-icon,
.elementor-widget-social-icons.elementor-shape-circle .elementor-icon {
	background-color: var(--fape-cta) !important;
	border-color: var(--fape-cta) !important;
	color: #fff !important;
	fill: #fff !important;
	stroke: #fff !important;
}

.elementor-widget-icon.elementor-view-stacked .elementor-icon i,
.elementor-widget-icon.elementor-view-stacked .elementor-icon svg,
.elementor-widget-icon.elementor-view-stacked .elementor-icon svg *,
.elementor-widget-social-icons.elementor-shape-circle .elementor-icon i,
.elementor-widget-social-icons.elementor-shape-circle .elementor-icon svg,
.elementor-widget-social-icons.elementor-shape-circle .elementor-icon svg * {
	color: #fff !important;
	fill: #fff !important;
	stroke: #fff !important;
}

.elementor-104 .elementor-element.elementor-element-a1fbc0e {
	display: none !important;
}

.elementor-145 .elementor-widget-icon .elementor-icon svg *,
.elementor-location-footer .elementor-widget-icon .elementor-icon svg *,
.elementor-location-footer .elementor-icon-list-icon svg *,
.elementor-104 .elementor-widget-icon .elementor-icon svg *,
.elementor-104 .elementor-icon-list-icon svg *,
.elementor-104 .elementor-icon-list-icon i,
.elementor-location-footer .elementor-icon-list-icon i {
	color: var(--fape-cta) !important;
	fill: var(--fape-cta) !important;
	stroke: var(--fape-cta) !important;
}

.elementor-145 .elementor-widget-icon.elementor-view-stacked .elementor-icon,
.elementor-104 .elementor-widget-icon.elementor-view-stacked .elementor-icon,
.elementor-location-footer .elementor-widget-icon.elementor-view-stacked .elementor-icon {
	background-color: var(--fape-cta) !important;
	border-color: var(--fape-cta) !important;
	color: #fff !important;
	fill: #fff !important;
	stroke: #fff !important;
}

.elementor-145 .elementor-widget-icon.elementor-view-stacked .elementor-icon i,
.elementor-145 .elementor-widget-icon.elementor-view-stacked .elementor-icon svg,
.elementor-145 .elementor-widget-icon.elementor-view-stacked .elementor-icon svg *,
.elementor-104 .elementor-widget-icon.elementor-view-stacked .elementor-icon i,
.elementor-104 .elementor-widget-icon.elementor-view-stacked .elementor-icon svg,
.elementor-104 .elementor-widget-icon.elementor-view-stacked .elementor-icon svg *,
.elementor-location-footer .elementor-widget-icon.elementor-view-stacked .elementor-icon i,
.elementor-location-footer .elementor-widget-icon.elementor-view-stacked .elementor-icon svg,
.elementor-location-footer .elementor-widget-icon.elementor-view-stacked .elementor-icon svg * {
	color: #fff !important;
	fill: #fff !important;
	stroke: #fff !important;
}

.elementor-button .elementor-button-icon,
.elementor-button .elementor-button-icon i,
.elementor-button .elementor-button-icon svg,
.elementor-button .elementor-button-icon svg * {
	color: #fff !important;
	fill: #fff !important;
	stroke: #fff !important;
}

/* Quem somos: selo da imagem e textos institucionais. */
.elementor-220 .elementor-element.elementor-element-30045cb {
	--align-self: flex-end !important;
	--margin-bottom: clamp(20px, 2vw, 32px) !important;
	--margin-left: 0px !important;
	--margin-right: clamp(20px, 2vw, 32px) !important;
	--margin-top: 0px !important;
	--padding-bottom: clamp(24px, 2.2vw, 34px) !important;
	--padding-left: clamp(24px, 2.2vw, 34px) !important;
	--padding-right: clamp(24px, 2.2vw, 34px) !important;
	--padding-top: clamp(24px, 2.2vw, 34px) !important;
	--width: clamp(240px, 18vw, 300px) !important;
	align-self: flex-end !important;
	box-sizing: border-box !important;
	margin: 0 clamp(20px, 2vw, 32px) clamp(20px, 2vw, 32px) 0 !important;
	max-width: calc(100% - 40px) !important;
	padding: clamp(24px, 2.2vw, 34px) !important;
	width: clamp(240px, 18vw, 300px) !important;
}

.elementor-220 .elementor-element.elementor-element-71b0d9e {
	width: 100% !important;
}

.elementor-220 .elementor-element.elementor-element-71b0d9e .elementor-heading-title {
	font-size: clamp(28px, 2.05vw, 36px) !important;
	line-height: 1.16 !important;
	overflow-wrap: normal !important;
	text-wrap: balance;
	white-space: normal !important;
	word-break: normal !important;
}

.elementor-220 .elementor-element.elementor-element-d5effce p,
.elementor-220 .elementor-element.elementor-element-8d52005 p,
.elementor-220 .elementor-element.elementor-element-662b97d p {
	margin-bottom: 0 !important;
}

.elementor-220 .elementor-element.elementor-element-d5effce,
.elementor-220 .elementor-element.elementor-element-8d52005,
.elementor-220 .elementor-element.elementor-element-662b97d {
	color: var(--fape-muted) !important;
	font-size: clamp(15px, 1.05vw, 17px) !important;
	line-height: 1.55 !important;
}

@media (max-width: 767px) {
	.elementor-220 .elementor-element.elementor-element-30045cb {
		--margin-bottom: 18px !important;
		--margin-right: 18px !important;
		--padding-bottom: 22px !important;
		--padding-left: 22px !important;
		--padding-right: 22px !important;
		--padding-top: 22px !important;
		--width: min(260px, calc(100% - 36px)) !important;
		margin: 0 18px 18px 0 !important;
		padding: 22px !important;
		width: min(260px, calc(100% - 36px)) !important;
	}

	.elementor-220 .elementor-element.elementor-element-71b0d9e .elementor-heading-title {
		font-size: clamp(27px, 8vw, 32px) !important;
	}
}

/* Blog: publicacoes do Instagram. */
.fape-instagram-blog {
	background: var(--fape-surface);
	color: var(--fape-text);
}

.fape-instagram-blog__inner {
	margin: 0 auto;
	max-width: 1180px;
	width: 100%;
}

.fape-instagram-blog__hero {
	padding: clamp(112px, 9vw, 148px) 24px clamp(48px, 5vw, 72px);
}

.fape-instagram-blog__hero .fape-instagram-blog__inner {
	align-items: end;
	display: grid;
	gap: clamp(28px, 4vw, 56px);
	grid-template-columns: minmax(0, 1fr) minmax(220px, 300px);
}

.fape-instagram-blog__copy {
	min-width: 0;
}

.fape-instagram-blog__eyebrow {
	color: var(--fape-cta);
	display: block;
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.14em;
	line-height: 1;
	margin-bottom: 14px;
	text-transform: uppercase;
}

.fape-instagram-blog__title {
	color: var(--fape-navy);
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: clamp(34px, 3.6vw, 52px);
	font-weight: 800;
	line-height: 1.05;
	margin: 0;
	max-width: 640px;
}

.fape-instagram-blog__intro {
	color: var(--fape-muted);
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: clamp(15px, 1.2vw, 17px);
	font-weight: 500;
	line-height: 1.6;
	margin: 18px 0 0;
	max-width: 560px;
}

.fape-instagram-blog__hero-panel {
	background: #fff;
	border: 1px solid var(--fape-border);
	border-radius: 10px;
	box-shadow: 0 14px 32px rgba(12, 19, 36, 0.06);
	display: grid;
	gap: 8px;
	padding: 22px 24px;
}

.fape-instagram-blog__hero-panel span {
	color: var(--fape-muted);
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.06em;
	line-height: 1.3;
	text-transform: uppercase;
}

.fape-instagram-blog__hero-panel a {
	color: var(--fape-cta) !important;
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: 22px;
	font-weight: 800;
	line-height: 1.15;
	text-decoration: none !important;
}

.fape-instagram-blog__hero-panel strong {
	color: var(--fape-navy);
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: 14px;
	font-weight: 700;
}

.fape-instagram-blog__content {
	padding: clamp(8px, 2vw, 20px) 24px clamp(80px, 8vw, 120px);
}

.fape-instagram-blog__section-head {
	align-items: flex-end;
	display: flex;
	gap: 24px;
	justify-content: space-between;
	margin-bottom: clamp(28px, 3vw, 40px);
}

.fape-instagram-blog__section-head .fape-instagram-blog__eyebrow {
	margin-bottom: 10px;
}

.fape-instagram-blog__section-head h2 {
	color: var(--fape-navy);
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: clamp(26px, 2.2vw, 34px);
	font-weight: 800;
	line-height: 1.1;
	margin: 0;
}

.fape-instagram-blog__profile {
	align-items: center;
	background: #fff;
	border: 1px solid var(--fape-border);
	border-radius: 999px;
	color: var(--fape-cta) !important;
	display: inline-flex;
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: 14px;
	font-weight: 700;
	min-height: 40px;
	padding: 0 18px;
	text-decoration: none !important;
	transition: border-color 0.2s ease, color 0.2s ease;
	white-space: nowrap;
}

.fape-instagram-blog__profile:hover {
	border-color: var(--fape-cta);
}

.fape-instagram-blog__grid {
	display: grid;
	gap: 26px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.fape-instagram-card {
	background: #fff;
	border: 1px solid var(--fape-border);
	border-radius: 10px;
	box-shadow: 0 14px 34px rgba(12, 19, 36, 0.06);
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	position: relative;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.fape-instagram-card:hover {
	border-color: rgba(58, 98, 133, 0.32);
	box-shadow: 0 20px 44px rgba(12, 19, 36, 0.1);
	transform: translateY(-4px);
}

.fape-instagram-card__header {
	align-items: center;
	border-bottom: 1px solid var(--fape-border);
	display: flex;
	gap: 10px;
	padding: 20px 22px 18px;
}

.fape-instagram-card__header h3 {
	color: var(--fape-navy);
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0;
}

.fape-instagram-card__embed {
	background: #fff;
	display: flex;
	flex: 1 1 auto;
	height: 620px;
	justify-content: center;
	overflow: hidden;
	padding: 16px 16px 0;
}

.fape-instagram-card__frame {
	background: #fff;
	border: 0;
	border-radius: 6px;
	flex-shrink: 0;
	height: 740px;
	max-width: 420px;
	width: 100%;
}

.fape-instagram-card__footer {
	border-top: 1px solid var(--fape-border);
	padding: 16px 22px 20px;
}

.fape-instagram-card__button {
	align-items: center;
	background: var(--fape-cta);
	border-radius: 8px;
	color: #fff !important;
	display: inline-flex;
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: 14px;
	font-weight: 700;
	justify-content: center;
	line-height: 1;
	min-height: 44px;
	text-decoration: none !important;
	transition: background-color 0.2s ease;
	width: 100%;
}

.fape-instagram-card__button:hover,
.fape-instagram-card__button:focus {
	background: var(--fape-cta-hover);
	color: #fff !important;
}

.fape-instagram-blog__empty {
	color: var(--fape-muted);
	font-family: "Plus Jakarta Sans", sans-serif;
	font-size: 17px;
	margin: 0;
}

@media (max-width: 900px) {
	.fape-instagram-blog__hero .fape-instagram-blog__inner {
		grid-template-columns: 1fr;
	}

	.fape-instagram-blog__grid {
		grid-template-columns: 1fr;
	}

	.fape-instagram-blog__section-head {
		align-items: flex-start;
		flex-direction: column;
	}
}

@media (max-width: 480px) {
	.fape-instagram-blog__hero {
		padding-top: 104px;
	}

	.fape-instagram-blog {
		padding-left: 14px;
		padding-right: 14px;
	}

	.fape-instagram-card__header {
		padding-left: 16px;
		padding-right: 16px;
	}

	.fape-instagram-card__embed {
		padding-left: 10px;
		padding-right: 10px;
	}
}

/* Aviso no lugar de um botão cujo destino ainda não existe (linha Duravo, home).
   Era um link para uma página hospedada fora que saiu do ar (404). Mantém o peso
   visual do botão, mas sem aparência de clicável: tom neutro e cursor default. */
.elementor-button.fape-em-breve {
	background-color: transparent !important;
	border: 1px dashed var(--fape-border) !important;
	color: var(--fape-muted) !important;
	cursor: default !important;
	font-weight: 600 !important;
	pointer-events: none;
}
