.vitrini-hero {
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	position: relative;
}

/* Cartoes premium das areas de formacao */
.vitrini-area-card {
	backface-visibility: hidden;
	isolation: isolate;
	position: relative;
	transform: translateZ(0);
	transition: transform 0.42s cubic-bezier(0.18, 0.82, 0.25, 1),
		box-shadow 0.42s ease,
		border-color 0.42s ease,
		filter 0.42s ease,
		background-position 0.65s ease !important;
	will-change: transform;
}

.vitrini-area-card::after {
	border: 1px solid rgba(200, 169, 81, 0);
	border-radius: inherit;
	box-shadow: inset 0 0 0 0 rgba(200, 169, 81, 0);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	transition: border-color 0.38s ease, box-shadow 0.38s ease;
	z-index: 5;
}

.vitrini-area-card:hover,
.vitrini-area-card:focus-within {
	border-color: rgba(224, 199, 118, 1) !important;
	box-shadow: 0 38px 72px -18px rgba(15, 34, 54, 0.72),
		0 0 26px rgba(200, 169, 81, 0.25) !important;
	filter: saturate(1.08) brightness(1.035);
	transform: translateY(-17px) scale(1.028);
	z-index: 12;
}

.vitrini-area-card:hover::after,
.vitrini-area-card:focus-within::after {
	border-color: rgba(224, 199, 118, 0.96);
	box-shadow: inset 0 0 44px rgba(200, 169, 81, 0.17);
}

.vitrini-area-card .vitrini-area-link {
	transition: color 0.3s ease, transform 0.3s ease;
}

.vitrini-area-card:hover .vitrini-area-link,
.vitrini-area-card:focus-within .vitrini-area-link {
	color: #e0c776 !important;
	filter: drop-shadow(0 0 8px rgba(200, 169, 81, 0.42));
	transform: translateX(15px);
}

/* Navegacao premium por objetivos */
.vitrini-objetivo-card {
	backface-visibility: hidden;
	isolation: isolate;
	position: relative;
	transform: translateZ(0);
	transition: transform 0.4s cubic-bezier(0.18, 0.82, 0.25, 1),
		box-shadow 0.4s ease,
		border-color 0.4s ease,
		filter 0.4s ease;
	will-change: transform;
}

.vitrini-objetivo-card::after {
	background: linear-gradient(135deg, rgba(255, 255, 255, 0.16), transparent 42%);
	border: 1px solid rgba(255, 255, 255, 0);
	border-radius: inherit;
	content: "";
	inset: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	transition: opacity 0.4s ease, border-color 0.4s ease;
	z-index: 4;
}

.vitrini-objetivo-card:hover,
.vitrini-objetivo-card:focus-within {
	border-color: rgba(200, 169, 81, 0.88) !important;
	box-shadow: 0 30px 62px -20px rgba(15, 34, 54, 0.58),
		0 0 22px rgba(200, 169, 81, 0.18) !important;
	filter: saturate(1.06) brightness(1.035);
	transform: translateY(-13px) scale(1.02);
	z-index: 10;
}

.vitrini-objetivo-card:hover::after,
.vitrini-objetivo-card:focus-within::after {
	border-color: rgba(224, 199, 118, 0.55);
	opacity: 1;
}

.vitrini-objetivo-card .elementor-widget-icon,
.vitrini-objetivo-card .vitrini-objetivo-link {
	transition: filter 0.32s ease, transform 0.32s ease;
}

.vitrini-objetivo-card:hover .elementor-widget-icon,
.vitrini-objetivo-card:focus-within .elementor-widget-icon {
	filter: drop-shadow(0 5px 10px rgba(15, 34, 54, 0.22));
	transform: translateY(-3px) scale(1.09);
}

.vitrini-objetivo-card:hover .vitrini-objetivo-link,
.vitrini-objetivo-card:focus-within .vitrini-objetivo-link {
	filter: drop-shadow(0 0 7px rgba(200, 169, 81, 0.32));
	transform: translateX(13px);
}

/* Beneficios da experiencia de aprendizagem */
.vitrini-beneficio-card {
	backface-visibility: hidden;
	isolation: isolate;
	position: relative;
	transform: translateZ(0);
	transition: transform 0.38s cubic-bezier(0.18, 0.82, 0.25, 1),
		box-shadow 0.38s ease,
		border-color 0.38s ease,
		background-color 0.38s ease;
	will-change: transform;
}

.vitrini-beneficio-card::after {
	background: radial-gradient(circle at 14% 12%, rgba(200, 169, 81, 0.18), transparent 48%);
	border: 1px solid rgba(200, 169, 81, 0);
	border-radius: inherit;
	content: "";
	inset: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	transition: opacity 0.38s ease, border-color 0.38s ease;
	z-index: 4;
}

.vitrini-beneficio-card:hover,
.vitrini-beneficio-card:focus-within {
	border-color: rgba(224, 199, 118, 0.78) !important;
	box-shadow: 0 26px 52px -20px rgba(0, 0, 0, 0.62),
		0 0 20px rgba(200, 169, 81, 0.16) !important;
	transform: translateY(-10px) scale(1.018);
	z-index: 10;
}

.vitrini-beneficio-card:hover::after,
.vitrini-beneficio-card:focus-within::after {
	border-color: rgba(224, 199, 118, 0.5);
	opacity: 1;
}

.vitrini-beneficio-card .elementor-widget-icon {
	transition: filter 0.32s ease, transform 0.32s ease;
}

.vitrini-beneficio-card:hover .elementor-widget-icon,
.vitrini-beneficio-card:focus-within .elementor-widget-icon {
	filter: drop-shadow(0 0 8px rgba(200, 169, 81, 0.48));
	transform: translateY(-3px) scale(1.12);
}

/* Linha premium dos quatro passos */
.vitrini-passos-linha {
	isolation: isolate;
	position: relative;
}

.vitrini-passos-linha::before {
	background: linear-gradient(90deg,
		rgba(200, 169, 81, 0.18),
		#c8a951 12%,
		#c8a951 88%,
		rgba(200, 169, 81, 0.18));
	content: "";
	height: 2px;
	left: 48px;
	pointer-events: none;
	position: absolute;
	right: 48px;
	top: 0;
	z-index: 0;
}

.vitrini-passo-card {
	backface-visibility: hidden;
	isolation: isolate;
	overflow: visible !important;
	position: relative;
	transform: translateZ(0);
	transition: transform 0.38s cubic-bezier(0.18, 0.82, 0.25, 1),
		box-shadow 0.38s ease,
		border-color 0.38s ease,
		background-color 0.38s ease;
	will-change: transform;
	z-index: 1;
}

.vitrini-passo-card::after {
	background: radial-gradient(circle at 18% 0%, rgba(200, 169, 81, 0.14), transparent 48%);
	border: 1px solid rgba(200, 169, 81, 0);
	border-radius: inherit;
	content: "";
	inset: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	transition: opacity 0.38s ease, border-color 0.38s ease;
	z-index: -1;
}

.vitrini-passo-numero {
	align-items: center;
	background: #0f2236;
	border: 2px solid #c8a951;
	border-radius: 50%;
	box-shadow: 0 9px 22px rgba(15, 34, 54, 0.2),
		0 0 0 6px rgba(250, 248, 243, 0.82);
	display: flex;
	height: 58px;
	justify-content: center;
	left: 20px;
	margin: 0 !important;
	padding: 0 !important;
	position: absolute;
	top: -29px;
	transition: background-color 0.34s ease,
		box-shadow 0.34s ease,
		transform 0.34s ease;
	width: 58px !important;
	z-index: 7;
}

.vitrini-passo-numero .elementor-widget-container,
.vitrini-passo-numero .elementor-heading-title {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

.vitrini-passo-numero .elementor-heading-title {
	color: #c8a951 !important;
}

.vitrini-passo-card:hover,
.vitrini-passo-card:focus-within {
	background-color: rgba(255, 255, 255, 0.96) !important;
	border-color: rgba(200, 169, 81, 0.72) !important;
	box-shadow: 0 28px 54px -22px rgba(15, 34, 54, 0.36),
		0 0 18px rgba(200, 169, 81, 0.12) !important;
	transform: translateY(-10px);
	z-index: 9;
}

.vitrini-passo-card:hover::after,
.vitrini-passo-card:focus-within::after {
	border-color: rgba(200, 169, 81, 0.45);
	opacity: 1;
}

.vitrini-passo-card:hover .vitrini-passo-numero,
.vitrini-passo-card:focus-within .vitrini-passo-numero {
	background: #c8a951;
	box-shadow: 0 12px 26px rgba(15, 34, 54, 0.26),
		0 0 0 6px rgba(250, 248, 243, 0.94),
		0 0 24px rgba(200, 169, 81, 0.28);
	transform: scale(1.08);
}

.vitrini-passo-card:hover .vitrini-passo-numero .elementor-heading-title,
.vitrini-passo-card:focus-within .vitrini-passo-numero .elementor-heading-title {
	color: #0f2236 !important;
}

@media (max-width: 1024px) {
	.vitrini-passos-linha::before {
		background: linear-gradient(180deg,
			rgba(200, 169, 81, 0.18),
			#c8a951 10%,
			#c8a951 90%,
			rgba(200, 169, 81, 0.18));
		bottom: 75px;
		height: auto;
		left: 39px;
		right: auto;
		top: 75px;
		width: 2px;
	}

	.vitrini-passo-numero {
		left: 10px;
		top: 50%;
		transform: translateY(-50%);
	}

	.vitrini-passo-card:hover .vitrini-passo-numero,
	.vitrini-passo-card:focus-within .vitrini-passo-numero {
		transform: translateY(-50%) scale(1.08);
	}
}

@media (max-width: 767px) {
	.vitrini-passos-linha::before {
		bottom: 66px;
		left: 34px;
		top: 66px;
	}

	.vitrini-passo-numero {
		height: 52px;
		left: 8px;
		width: 52px !important;
	}
}

/* Hero corporativo V2: estrutura reconstruida do zero */
.vitrini-empresa-v2 {
	background: #0f2236;
	gap: 0 !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: relative;
	width: 100% !important;
}

.vitrini-empresa-v2-tabs {
	background: #0f2236;
	flex-wrap: nowrap !important;
	position: relative;
	z-index: 15;
}

.vitrini-empresa-v2-tab .elementor-button {
	align-items: center;
	background: transparent !important;
	border-color: rgba(250, 248, 243, 0.55) !important;
	color: #faf8f3 !important;
	display: flex;
	justify-content: center;
	min-height: 46px;
	transition: background-color 0.3s ease, border-color 0.3s ease,
		color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
	white-space: nowrap;
}

.vitrini-empresa-v2-tab:not(.is-active) .elementor-button:hover,
.vitrini-empresa-v2-tab:not(.is-active) .elementor-button:focus-visible,
.vitrini-empresa-v2-tab.is-active .elementor-button {
	background: #c8a951 !important;
	border-color: #c8a951 !important;
	color: #0f2236 !important;
}

.vitrini-empresa-v2-tab.is-active .elementor-button {
	box-shadow: 0 10px 24px rgba(200, 169, 81, 0.2);
}

.vitrini-empresa-v2-slides {
	min-height: 600px !important;
	overflow: hidden !important;
	position: relative;
	width: 100% !important;
}

.vitrini-empresa-v2-slide {
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	inset: 0;
	min-height: 600px !important;
	opacity: 0;
	pointer-events: none;
	position: absolute !important;
	transition: opacity 0.55s ease;
	visibility: hidden;
	width: 100% !important;
	z-index: 1;
}

.vitrini-empresa-v2-slide.is-active {
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
	z-index: 2;
}

.vitrini-empresa-v2-conteudo {
	position: relative;
	z-index: 4;
}

.vitrini-empresa-v2-slide.is-active .elementor-widget-heading {
	animation: vitrini-fade-up 0.58s ease both 0.15s;
}

.vitrini-empresa-v2-slide.is-active .elementor-widget-text-editor {
	animation: vitrini-fade-up 0.58s ease both 0.3s;
}

.vitrini-empresa-v2-slide.is-active .elementor-widget-button {
	animation: vitrini-fade-up 0.58s ease both 0.45s;
}

.vitrini-empresa-v2 > .vitrini-hero-nav {
	top: calc(50% + 32px);
}

/* Hero Setor Publico: composicao integral e movimento institucional */
.vitrini-publico-v1 {
	left: 50% !important;
	margin-left: -50vw !important;
	max-width: none !important;
	width: 100vw !important;
}

.vitrini-publico-tabs,
.vitrini-publico-slides,
.vitrini-publico-slide {
	max-width: none !important;
	width: 100% !important;
}

.vitrini-publico-slide {
	background-position: center center !important;
	background-size: cover !important;
	isolation: isolate;
	transition: opacity 0.85s cubic-bezier(0.22, 1, 0.36, 1),
		visibility 0.85s ease !important;
}

.vitrini-publico-slide::before {
	background: linear-gradient(
		90deg,
		rgba(8, 24, 39, 0.34) 0%,
		rgba(15, 34, 54, 0.13) 40%,
		rgba(15, 34, 54, 0) 63%
	);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 1;
}

.vitrini-publico-slide::after {
	animation: vitrini-publico-luz 8.8s ease-in-out infinite alternate;
	background: radial-gradient(
		circle at 69% 44%,
		rgba(200, 169, 81, 0.12),
		rgba(200, 169, 81, 0) 34%
	);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	z-index: 2;
}

.vitrini-publico-conteudo {
	position: relative;
	z-index: 5;
}

.vitrini-publico-slide.is-active {
	animation: vitrini-publico-enquadramento 9s ease-out both;
}

.vitrini-publico-slide.is-active .elementor-widget-heading {
	animation: vitrini-publico-revelar 0.78s cubic-bezier(0.22, 1, 0.36, 1) both 0.18s;
}

.vitrini-publico-slide.is-active .elementor-widget-text-editor {
	animation: vitrini-publico-texto 0.72s ease both 0.48s;
}

.vitrini-publico-slide.is-active .elementor-widget-button {
	animation: vitrini-publico-acao 0.96s cubic-bezier(0.16, 1, 0.3, 1) both 0.82s;
}

.vitrini-publico-tab {
	overflow: hidden;
	position: relative;
}

.vitrini-publico-tab::after {
	background: #c8a951;
	border-radius: 999px;
	bottom: 3px;
	content: "";
	height: 2px;
	left: 12px;
	position: absolute;
	transform: scaleX(0);
	transform-origin: left center;
	width: calc(100% - 24px);
	z-index: 3;
}

.vitrini-publico-tab.is-active::after {
	animation: vitrini-publico-progresso 9s linear both;
}

.vitrini-publico-v1 > .vitrini-hero-nav {
	background: rgba(15, 34, 54, 0.54) !important;
	backdrop-filter: blur(8px);
	transition: background-color 0.3s ease, box-shadow 0.3s ease,
		transform 0.3s ease !important;
}

.vitrini-publico-v1 > .vitrini-hero-nav:hover,
.vitrini-publico-v1 > .vitrini-hero-nav:focus-visible {
	background: #c8a951 !important;
	box-shadow: 0 0 0 5px rgba(200, 169, 81, 0.13),
		0 12px 30px rgba(0, 0, 0, 0.2) !important;
	transform: translateY(-50%) scale(1.08) !important;
}

@keyframes vitrini-publico-enquadramento {
	0% { background-position: 51.5% center; }
	100% { background-position: 49.5% center; }
}

@keyframes vitrini-publico-revelar {
	0% { clip-path: inset(0 0 100% 0); opacity: 0; transform: translateY(24px); }
	100% { clip-path: inset(0 0 0 0); opacity: 1; transform: translateY(0); }
}

@keyframes vitrini-publico-texto {
	0% { filter: blur(4px); opacity: 0; transform: translateY(16px); }
	100% { filter: blur(0); opacity: 1; transform: translateY(0); }
}

@keyframes vitrini-publico-acao {
	0% { filter: blur(2px); opacity: 0; transform: translate3d(-14px, 8px, 0) scale(0.985); }
	55% { filter: blur(0); opacity: 0.82; }
	100% { opacity: 1; transform: translateX(0); }
}

@keyframes vitrini-publico-progresso {
	0% { transform: scaleX(0); }
	100% { transform: scaleX(1); }
}

@keyframes vitrini-publico-luz {
	0% { opacity: 0.45; transform: translate3d(-1.2%, 0, 0); }
	100% { opacity: 1; transform: translate3d(1.2%, -0.8%, 0); }
}

/* Secoes institucionais da pagina Setor Publico */
.vitrini-publico-valor-mensagem,
.vitrini-publico-resultado,
.vitrini-publico-pilar,
.vitrini-publico-etapa,
.vitrini-publico-cidada-mensagem,
.vitrini-publico-cta-botao {
	transition: border-color 0.38s ease, box-shadow 0.38s ease,
		opacity 0.72s ease, transform 0.72s cubic-bezier(0.22, 1, 0.36, 1) !important;
}

.vitrini-publico-effects-ready .vitrini-publico-valor-mensagem {
	opacity: 0;
	transform: translate3d(-28px, 0, 0);
}

.vitrini-publico-effects-ready .vitrini-publico-resultado {
	opacity: 0;
	transform: translate3d(26px, 0, 0);
}

.vitrini-publico-effects-ready.is-visible .vitrini-publico-valor-mensagem,
.vitrini-publico-effects-ready.is-visible .vitrini-publico-resultado {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

.vitrini-publico-resultado:nth-child(1) { transition-delay: 0.16s !important; }
.vitrini-publico-resultado:nth-child(2) { transition-delay: 0.29s !important; }
.vitrini-publico-resultado:nth-child(3) { transition-delay: 0.42s !important; }

.vitrini-publico-pilares {
	display: grid !important;
	gap: 12px !important;
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.vitrini-publico-pilar,
.vitrini-publico-etapa {
	width: 100% !important;
}

.vitrini-publico-effects-ready .vitrini-publico-pilar,
.vitrini-publico-effects-ready .vitrini-publico-etapa {
	opacity: 0;
	transform: translate3d(0, 24px, 0);
}

.vitrini-publico-effects-ready.is-visible .vitrini-publico-pilar,
.vitrini-publico-effects-ready.is-visible .vitrini-publico-etapa {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

.vitrini-publico-pilar:nth-child(1), .vitrini-publico-etapa:nth-child(1) { transition-delay: 0.1s !important; }
.vitrini-publico-pilar:nth-child(2), .vitrini-publico-etapa:nth-child(2) { transition-delay: 0.2s !important; }
.vitrini-publico-pilar:nth-child(3), .vitrini-publico-etapa:nth-child(3) { transition-delay: 0.3s !important; }
.vitrini-publico-pilar:nth-child(4), .vitrini-publico-etapa:nth-child(4) { transition-delay: 0.4s !important; }
.vitrini-publico-pilar:nth-child(5) { transition-delay: 0.5s !important; }

.vitrini-publico-pilar:hover,
.vitrini-publico-pilar:focus-within {
	border-color: rgba(200, 169, 81, 0.82) !important;
	box-shadow: 0 18px 36px rgba(3, 14, 25, 0.34),
		0 0 0 1px rgba(200, 169, 81, 0.14) !important;
	transform: translate3d(0, -9px, 0) scale(1.012) !important;
}

.vitrini-publico-etapas {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.vitrini-publico-etapa:not(:first-child) {
	border-left: 1px solid #d9cbaa !important;
}

.vitrini-publico-effects-ready .vitrini-publico-cidada-mensagem {
	opacity: 0;
	transform: translate3d(-30px, 0, 0);
}

.vitrini-publico-effects-ready.is-visible .vitrini-publico-cidada-mensagem {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

.vitrini-publico-effects-ready .vitrini-publico-cta-botao {
	opacity: 0;
	transform: translate3d(20px, 0, 0);
}

.vitrini-publico-effects-ready.is-visible .vitrini-publico-cta-botao {
	opacity: 1;
	transform: translate3d(0, 0, 0);
	transition-delay: 0.24s !important;
}

@media (min-width: 768px) and (max-width: 1024px) {
	.vitrini-publico-conteudo .elementor-heading-title {
		font-size: 27px !important;
		line-height: 1.14em !important;
	}

	.vitrini-publico-conteudo .elementor-widget:first-child .elementor-heading-title {
		font-size: 10px !important;
		line-height: 1.3em !important;
	}

	.vitrini-publico-conteudo .elementor-widget-text-editor,
	.vitrini-publico-conteudo .elementor-widget-text-editor p {
		font-size: 13px !important;
		line-height: 1.48em !important;
	}

	.vitrini-publico-pilares {
		grid-template-columns: repeat(6, minmax(0, 1fr));
	}

	.vitrini-publico-pilar {
		grid-column: span 2;
		min-height: 210px !important;
	}

	.vitrini-publico-pilar:nth-child(4),
	.vitrini-publico-pilar:nth-child(5) {
		grid-column: span 3;
	}

	.vitrini-publico-etapas {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vitrini-publico-etapa:nth-child(3) {
		border-left: 0 !important;
	}

	.vitrini-publico-valor h2,
	.vitrini-publico-frentes h2,
	.vitrini-publico-processo h2,
	.vitrini-publico-cidada h2,
	.vitrini-publico-cta h2 {
		font-size: 32px !important;
		line-height: 1.18em !important;
	}
}

@media (max-width: 767px) {
	.vitrini-publico-conteudo .elementor-heading-title {
		font-size: 25px !important;
		line-height: 1.15em !important;
	}

	.vitrini-publico-conteudo .elementor-widget:first-child .elementor-heading-title {
		font-size: 10px !important;
		line-height: 1.35em !important;
	}

	.vitrini-publico-conteudo .elementor-widget-text-editor,
	.vitrini-publico-conteudo .elementor-widget-text-editor p {
		font-size: 13px !important;
		line-height: 1.5em !important;
	}

	.vitrini-publico-pilares,
	.vitrini-publico-etapas {
		grid-template-columns: minmax(0, 1fr);
	}

	.vitrini-publico-pilar,
	.vitrini-publico-etapa {
		grid-column: auto !important;
		min-height: 0 !important;
	}

	.vitrini-publico-etapa {
		border-left: 0 !important;
	}

	.vitrini-publico-valor h2,
	.vitrini-publico-frentes h2,
	.vitrini-publico-processo h2,
	.vitrini-publico-cidada h2,
	.vitrini-publico-cta h2 {
		font-size: 27px !important;
		line-height: 1.18em !important;
	}

	.vitrini-publico-valor,
	.vitrini-publico-frentes,
	.vitrini-publico-processo,
	.vitrini-publico-cidada,
	.vitrini-publico-cta {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
}

/* Assinatura de movimento Setor Publico — ritmo premium e institucional */
.vitrini-publico-slide.is-active .elementor-widget-button {
	animation: vitrini-publico-acao-premium 1.55s cubic-bezier(0.16, 1, 0.3, 1) both 0.95s !important;
}

.vitrini-publico-slide .elementor-button {
	overflow: hidden;
	position: relative;
}

.vitrini-publico-slide .elementor-button::after {
	background: linear-gradient(105deg, transparent 15%, rgba(255, 255, 255, 0.5) 50%, transparent 85%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	transform: translateX(-130%);
}

.vitrini-publico-slide.is-active .elementor-button::after {
	animation: vitrini-publico-brilho-botao 1.05s ease 1.85s both;
}

@keyframes vitrini-publico-acao-premium {
	0% { clip-path: inset(0 100% 0 0 round 8px); filter: blur(3px); opacity: 0; transform: translate3d(-22px, 12px, 0); }
	42% { clip-path: inset(0 28% 0 0 round 8px); filter: blur(0); opacity: 0.7; }
	100% { clip-path: inset(0 0 0 0 round 8px); filter: blur(0); opacity: 1; transform: translate3d(0, 0, 0); }
}

@keyframes vitrini-publico-brilho-botao {
	0% { transform: translateX(-130%); }
	100% { transform: translateX(130%); }
}

.vitrini-publico-effects-ready .vitrini-publico-valor-mensagem,
.vitrini-publico-effects-ready .vitrini-publico-resultado,
.vitrini-publico-effects-ready .vitrini-publico-pilar,
.vitrini-publico-effects-ready .vitrini-publico-etapa,
.vitrini-publico-effects-ready .vitrini-publico-cidada-mensagem,
.vitrini-publico-effects-ready .vitrini-publico-cta-botao {
	filter: blur(5px);
	opacity: 0 !important;
	transition-delay: 0s !important;
	transition-duration: 1.2s !important;
	transition-property: clip-path, filter, opacity, transform !important;
	transition-timing-function: cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.vitrini-publico-effects-ready .vitrini-publico-valor-mensagem {
	clip-path: inset(0 100% 0 0);
	transform: translate3d(-52px, 0, 0);
}

.vitrini-publico-effects-ready .vitrini-publico-resultado {
	transform: perspective(900px) translate3d(48px, 0, 0) rotateY(-6deg);
}

.vitrini-publico-effects-ready .vitrini-publico-pilar {
	transform: perspective(900px) translate3d(0, 48px, 0) rotateX(9deg) scale(0.965);
}

.vitrini-publico-effects-ready .vitrini-publico-etapa {
	clip-path: inset(0 100% 0 0);
	transform: perspective(900px) translate3d(0, 34px, 0) rotateY(-7deg);
}

.vitrini-publico-effects-ready .vitrini-publico-cidada-mensagem {
	clip-path: inset(0 100% 0 0);
	transform: translate3d(-56px, 0, 0);
	transition-duration: 1.5s !important;
}

.vitrini-publico-effects-ready .vitrini-publico-cta-botao {
	transform: translate3d(34px, 0, 0) scale(0.97);
}

.vitrini-publico-effects-ready .is-in-view {
	clip-path: inset(0 0 0 0) !important;
	filter: blur(0) !important;
	opacity: 1 !important;
	transform: perspective(900px) translate3d(0, 0, 0) rotateX(0) rotateY(0) scale(1) !important;
}

.vitrini-publico-effects-ready .vitrini-publico-pilar.is-in-view:hover,
.vitrini-publico-effects-ready .vitrini-publico-pilar.is-in-view:focus-within {
	transform: translate3d(0, -11px, 0) scale(1.018) !important;
}

.vitrini-publico-resultado > .elementor-widget:first-child,
.vitrini-publico-pilar > .elementor-widget:first-child,
.vitrini-publico-etapa > .elementor-widget:first-child {
	transform-origin: center;
	transition: color 0.38s ease, text-shadow 0.38s ease,
		transform 0.48s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.vitrini-publico-resultado {
	background: linear-gradient(145deg, rgba(250, 248, 243, 0.98), rgba(244, 230, 210, 0.5)) !important;
	border: 1px solid rgba(15, 34, 54, 0.13) !important;
	border-radius: 12px !important;
	box-shadow: 0 16px 38px -30px rgba(15, 34, 54, 0.62) !important;
	isolation: isolate;
	overflow: visible !important;
	position: relative;
	transition: border-color 0.48s ease, box-shadow 0.48s ease,
		filter 1.2s ease, opacity 1.2s ease,
		transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.vitrini-publico-resultado::before {
	background: linear-gradient(180deg, #c8a951, rgba(200, 169, 81, 0.18));
	border-radius: 12px 0 0 12px;
	content: "";
	inset: 0 auto 0 0;
	opacity: 0.72;
	position: absolute;
	transform: scaleY(0);
	transform-origin: bottom;
	transition: transform 0.82s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.4s ease;
	width: 4px;
	z-index: 2;
}

.vitrini-publico-resultado:nth-child(2)::before {
	background: linear-gradient(180deg, #6a8f72, rgba(106, 143, 114, 0.18));
}

.vitrini-publico-resultado:nth-child(3)::before {
	background: linear-gradient(180deg, #c66b4e, rgba(198, 107, 78, 0.18));
}

.vitrini-publico-resultado.is-in-view::before {
	transform: scaleY(1);
}

.vitrini-publico-effects-ready .vitrini-publico-resultado.is-in-view:hover,
.vitrini-publico-effects-ready .vitrini-publico-resultado.is-in-view:focus-within {
	border-color: rgba(200, 169, 81, 0.68) !important;
	box-shadow: 0 30px 58px -27px rgba(15, 34, 54, 0.38),
		0 0 22px rgba(200, 169, 81, 0.11) !important;
	transform: perspective(900px) translate3d(0, -10px, 0) rotateX(0) rotateY(0) scale(1.018) !important;
	z-index: 5;
}

.vitrini-publico-resultado:hover::before,
.vitrini-publico-resultado:focus-within::before {
	opacity: 1;
}

.vitrini-publico-resultado > .elementor-widget:first-child {
	margin-left: 6px !important;
	transform-origin: left center;
}

.vitrini-publico-resultado:hover > .elementor-widget:first-child,
.vitrini-publico-pilar:hover > .elementor-widget:first-child,
.vitrini-publico-etapa:hover > .elementor-widget:first-child {
	transform: translate3d(5px, -3px, 0) scale(1.13) rotate(-2deg) !important;
}

.vitrini-publico-resultado:nth-child(1):hover > .elementor-widget:first-child *,
.vitrini-publico-pilar:nth-child(1):hover > .elementor-widget:first-child *,
.vitrini-publico-etapa:nth-child(1):hover > .elementor-widget:first-child * {
	color: #c8a951 !important;
	text-shadow: 0 0 18px rgba(200, 169, 81, 0.38);
}

.vitrini-publico-resultado:nth-child(2):hover > .elementor-widget:first-child *,
.vitrini-publico-pilar:nth-child(2):hover > .elementor-widget:first-child *,
.vitrini-publico-etapa:nth-child(2):hover > .elementor-widget:first-child * {
	color: #6a8f72 !important;
	text-shadow: 0 0 18px rgba(106, 143, 114, 0.38);
}

.vitrini-publico-resultado:nth-child(3):hover > .elementor-widget:first-child *,
.vitrini-publico-pilar:nth-child(3):hover > .elementor-widget:first-child *,
.vitrini-publico-etapa:nth-child(3):hover > .elementor-widget:first-child * {
	color: #c66b4e !important;
	text-shadow: 0 0 18px rgba(198, 107, 78, 0.38);
}

.vitrini-publico-pilar:nth-child(4):hover > .elementor-widget:first-child *,
.vitrini-publico-etapa:nth-child(4):hover > .elementor-widget:first-child * {
	color: #7fa6bc !important;
	text-shadow: 0 0 18px rgba(127, 166, 188, 0.38);
}

.vitrini-publico-pilar:nth-child(5):hover > .elementor-widget:first-child * {
	color: #f4e6d2 !important;
	text-shadow: 0 0 18px rgba(244, 230, 210, 0.32);
}

.vitrini-publico-pilar {
	isolation: isolate;
	overflow: hidden !important;
	position: relative;
}

.vitrini-publico-pilar::before {
	background: #c8a951;
	content: "";
	left: 0;
	position: absolute;
	top: 0;
	transform: scaleY(0);
	transform-origin: top;
	transition: transform 0.65s cubic-bezier(0.16, 1, 0.3, 1);
	height: 100%;
	width: 4px;
}

.vitrini-publico-pilar:nth-child(2)::before { background: #6a8f72; }
.vitrini-publico-pilar:nth-child(3)::before { background: #c66b4e; }
.vitrini-publico-pilar:nth-child(4)::before { background: #7fa6bc; }
.vitrini-publico-pilar:nth-child(5)::before { background: #f4e6d2; }

.vitrini-publico-pilar:hover::before,
.vitrini-publico-pilar:focus-within::before {
	transform: scaleY(1);
}

.vitrini-publico-etapas {
	position: relative;
}

.vitrini-publico-etapas::before {
	background: linear-gradient(90deg, #c8a951 0%, #f4e6d2 48%, #c8a951 100%);
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	top: 8px;
	transform: scaleX(0);
	transform-origin: left center;
	width: 100%;
	z-index: 4;
}

.vitrini-publico-processo.is-visible .vitrini-publico-etapas::before {
	animation: vitrini-publico-linha-processo 2.8s cubic-bezier(0.16, 1, 0.3, 1) 0.25s both;
}

.vitrini-publico-etapa {
	border-top-color: rgba(200, 169, 81, 0.28) !important;
	position: relative;
}

.vitrini-publico-etapa::after {
	background: #0f2236;
	border: 2px solid #c8a951;
	border-radius: 50%;
	box-shadow: 0 0 0 0 rgba(200, 169, 81, 0.2);
	content: "";
	height: 12px;
	left: 24px;
	top: 3px;
	position: absolute;
	transform: scale(0);
	transition: background-color 0.35s ease, box-shadow 0.35s ease,
		transform 0.75s cubic-bezier(0.16, 1, 0.3, 1);
	width: 12px;
	z-index: 6;
}

.vitrini-publico-etapa::after {
	display: none !important;
}

/* Como atuamos: numero institucional dentro do circulo dourado */
.vitrini-publico-etapa > .elementor-widget:first-child {
	align-items: center;
	background: #0f2236;
	border: 2px solid #c8a951;
	border-radius: 50%;
	box-shadow: 0 0 0 6px rgba(250, 248, 243, 0.9),
		0 10px 24px rgba(15, 34, 54, 0.18);
	display: flex;
	flex: 0 0 54px;
	height: 54px;
	justify-content: center;
	margin: 0 0 18px !important;
	padding: 0 !important;
	position: relative;
	transform: none !important;
	width: 54px !important;
	z-index: 7;
}

.vitrini-publico-etapa > .elementor-widget:first-child .elementor-widget-container,
.vitrini-publico-etapa > .elementor-widget:first-child .elementor-heading-title {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	margin: 0 !important;
	padding: 0 !important;
	width: 100%;
}

.vitrini-publico-etapa > .elementor-widget:first-child .elementor-heading-title {
	color: #c8a951 !important;
}

.vitrini-publico-etapa:hover > .elementor-widget:first-child,
.vitrini-publico-etapa:focus-within > .elementor-widget:first-child {
	background: #c8a951;
	box-shadow: 0 0 0 6px rgba(250, 248, 243, 0.96),
		0 0 26px rgba(200, 169, 81, 0.36),
		0 13px 28px rgba(15, 34, 54, 0.24);
	transform: scale(1.09) rotate(0deg) !important;
}

.vitrini-publico-etapa:hover > .elementor-widget:first-child .elementor-heading-title,
.vitrini-publico-etapa:focus-within > .elementor-widget:first-child .elementor-heading-title {
	color: #0f2236 !important;
	text-shadow: none !important;
}

.vitrini-publico-etapa.is-in-view::after {
	transform: scale(1);
}

.vitrini-publico-etapa:hover::after {
	background: #c8a951;
	box-shadow: 0 0 0 8px rgba(200, 169, 81, 0.12);
}

@keyframes vitrini-publico-linha-processo {
	0% { opacity: 0; transform: scaleX(0); }
	20% { opacity: 1; }
	100% { opacity: 1; transform: scaleX(1); }
}

.vitrini-publico-cidada {
	isolation: isolate;
	position: relative;
}

.vitrini-publico-cidada.is-visible {
	animation: vitrini-publico-cidada-fundo 14s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.vitrini-publico-cidada::after {
	background: linear-gradient(
		105deg,
		transparent 0%,
		rgba(200, 169, 81, 0.03) 35%,
		rgba(200, 169, 81, 0.17) 50%,
		rgba(250, 248, 243, 0.05) 58%,
		transparent 78%
	);
	content: "";
	inset: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	transform: translateX(-85%);
	z-index: 1;
}

.vitrini-publico-cidada.is-visible::after {
	animation: vitrini-publico-cidada-feixe 4.8s ease-in-out 0.55s both;
}

.vitrini-publico-cidada > * {
	position: relative;
	z-index: 3;
}

.vitrini-publico-cidada-mensagem {
	border-left: 0 !important;
	padding-left: 22px !important;
	position: relative;
}

.vitrini-publico-cidada-mensagem::before {
	background: linear-gradient(180deg, #c8a951, rgba(200, 169, 81, 0.2));
	content: "";
	height: 0;
	left: 0;
	position: absolute;
	top: 0;
	width: 2px;
}

.vitrini-publico-cidada.is-visible .vitrini-publico-cidada-mensagem::before {
	animation: vitrini-publico-cidada-linha 1.8s cubic-bezier(0.16, 1, 0.3, 1) 0.25s both;
}

.vitrini-publico-cidada-mensagem > .elementor-element {
	opacity: 0;
	transform: translate3d(0, 28px, 0);
}

.vitrini-publico-cidada.is-visible .vitrini-publico-cidada-mensagem > .elementor-element {
	animation: vitrini-publico-cidada-item 1.25s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.vitrini-publico-cidada.is-visible .vitrini-publico-cidada-mensagem > .elementor-element:nth-child(1) { animation-delay: 0.38s; }
.vitrini-publico-cidada.is-visible .vitrini-publico-cidada-mensagem > .elementor-element:nth-child(2) { animation-delay: 0.62s; }
.vitrini-publico-cidada.is-visible .vitrini-publico-cidada-mensagem > .elementor-element:nth-child(3) { animation-delay: 0.86s; }
.vitrini-publico-cidada.is-visible .vitrini-publico-cidada-mensagem > .elementor-element:nth-child(4) { animation-delay: 1.1s; }
.vitrini-publico-cidada.is-visible .vitrini-publico-cidada-mensagem > .elementor-element:nth-child(5) { animation-delay: 1.34s; }

.vitrini-publico-cta-botao .elementor-button-text::after {
	content: "→";
	display: inline-block;
	margin-left: 10px;
	transition: transform 0.38s cubic-bezier(0.16, 1, 0.3, 1);
}

.vitrini-publico-cta-botao:hover .elementor-button-text::after,
.vitrini-publico-cta-botao:focus-within .elementor-button-text::after {
	transform: translateX(7px);
}

@keyframes vitrini-publico-cidada-fundo {
	0% { background-position: 56% center; }
	100% { background-position: 46% center; }
}

@keyframes vitrini-publico-cidada-feixe {
	0% { opacity: 0; transform: translateX(-85%); }
	24% { opacity: 0.75; }
	72% { opacity: 0.42; }
	100% { opacity: 0; transform: translateX(85%); }
}

@keyframes vitrini-publico-cidada-linha {
	0% { height: 0; opacity: 0; }
	25% { opacity: 1; }
	100% { height: 100%; opacity: 1; }
}

@keyframes vitrini-publico-cidada-item {
	0% { filter: blur(4px); opacity: 0; transform: translate3d(0, 28px, 0); }
	100% { filter: blur(0); opacity: 1; transform: translate3d(0, 0, 0); }
}

@media (max-width: 767px) {
	.vitrini-publico-effects-ready .vitrini-publico-valor-mensagem,
	.vitrini-publico-effects-ready .vitrini-publico-resultado,
	.vitrini-publico-effects-ready .vitrini-publico-pilar,
	.vitrini-publico-effects-ready .vitrini-publico-etapa,
	.vitrini-publico-effects-ready .vitrini-publico-cidada-mensagem,
	.vitrini-publico-effects-ready .vitrini-publico-cta-botao {
		filter: none;
		transition-duration: 0.85s !important;
	}

	.vitrini-publico-etapas::before,
	.vitrini-publico-etapa::after {
		display: none;
	}

	.vitrini-publico-cidada-mensagem {
		padding-left: 16px !important;
	}
}

/* Processo corporativo: cinco etapas alinhadas */
.vitrini-empresa-processo-grid {
	align-items: stretch !important;
	display: grid !important;
	gap: 16px !important;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	width: 100% !important;
}

.vitrini-empresa-processo-card {
	background: linear-gradient(155deg, #172e42 0%, #0f2236 100%) !important;
	border: 1px solid rgba(200, 169, 81, 0.42) !important;
	border-radius: 12px !important;
	box-shadow: 0 14px 34px -24px rgba(15, 34, 54, 0.7) !important;
	box-sizing: border-box;
	height: 100% !important;
	margin: 0 !important;
	min-height: 210px !important;
	min-width: 0 !important;
	overflow: hidden;
	padding: 25px 20px !important;
	position: relative;
	transition: transform 0.36s cubic-bezier(0.18, 0.82, 0.25, 1),
		box-shadow 0.36s ease, border-color 0.36s ease;
	width: auto !important;
}

.vitrini-empresa-processo-card::before {
	background: linear-gradient(90deg, #c8a951, rgba(200, 169, 81, 0.18));
	content: "";
	height: 3px;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.vitrini-empresa-processo-card .elementor-heading-title {
	color: #faf8f3 !important;
}

.vitrini-empresa-processo-card .elementor-widget:first-child .elementor-heading-title {
	color: #c8a951 !important;
}

.vitrini-empresa-processo-card .elementor-widget-text-editor,
.vitrini-empresa-processo-card .elementor-widget-text-editor p {
	color: rgba(250, 248, 243, 0.76) !important;
}

.vitrini-empresa-processo-card:hover,
.vitrini-empresa-processo-card:focus-within {
	border-color: rgba(200, 169, 81, 0.9) !important;
	box-shadow: 0 24px 46px -22px rgba(15, 34, 54, 0.72),
		0 0 22px rgba(200, 169, 81, 0.13) !important;
	transform: translateY(-9px);
	z-index: 4;
}

/* Solucoes corporativas: cartoes editoriais claros */
.vitrini-empresa-solucoes-grid {
	align-items: stretch !important;
	counter-reset: vitrini-solucao;
	display: grid !important;
	gap: 16px !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	width: 100% !important;
}

.vitrini-empresa-solucao-card {
	background: rgba(255, 255, 255, 0.92) !important;
	border: 1px solid rgba(15, 34, 54, 0.13) !important;
	border-radius: 12px !important;
	box-shadow: 0 14px 36px -28px rgba(15, 34, 54, 0.48) !important;
	box-sizing: border-box;
	counter-increment: vitrini-solucao;
	height: 100% !important;
	margin: 0 !important;
	min-height: 245px !important;
	min-width: 0 !important;
	overflow: hidden;
	padding: 62px 24px 28px !important;
	position: relative;
	transition: transform 0.36s cubic-bezier(0.18, 0.82, 0.25, 1),
		box-shadow 0.36s ease, border-color 0.36s ease;
	width: auto !important;
}

.vitrini-empresa-solucao-card::before {
	color: #c8a951;
	content: "0" counter(vitrini-solucao);
	font-family: Poppins, sans-serif;
	font-size: 25px;
	font-weight: 600;
	left: 24px;
	letter-spacing: 0.04em;
	line-height: 1;
	position: absolute;
	top: 25px;
}

.vitrini-empresa-solucao-card::after {
	background: linear-gradient(90deg, #c8a951, rgba(200, 169, 81, 0.16));
	content: "";
	height: 2px;
	left: 24px;
	position: absolute;
	top: 51px;
	width: 46px;
}

.vitrini-empresa-solucao-card .elementor-heading-title {
	color: #0f2236 !important;
	font-size: 18px !important;
	line-height: 1.25em !important;
}

.vitrini-empresa-solucao-card .elementor-widget-text-editor,
.vitrini-empresa-solucao-card .elementor-widget-text-editor p {
	color: rgba(15, 34, 54, 0.72) !important;
	font-size: 14px !important;
	line-height: 1.55em !important;
}

.vitrini-empresa-solucao-card:hover,
.vitrini-empresa-solucao-card:focus-within {
	border-color: rgba(200, 169, 81, 0.72) !important;
	box-shadow: 0 28px 54px -24px rgba(15, 34, 54, 0.38),
		0 0 18px rgba(200, 169, 81, 0.1) !important;
	transform: translateY(-9px);
	z-index: 4;
}

/* Entregas corporativas: faixa navy e cartoes de valor */
.vitrini-empresa-entregas {
	background: linear-gradient(145deg, #0f2236 0%, #172e42 58%, #0f2236 100%) !important;
	position: relative;
}

.vitrini-empresa-entregas::before {
	background: radial-gradient(circle at 14% 0%, rgba(200, 169, 81, 0.13), transparent 34%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.vitrini-empresa-entregas-cabecalho {
	position: relative;
	z-index: 2;
}

.vitrini-empresa-entregas-cabecalho .elementor-heading-title {
	color: #faf8f3 !important;
}

.vitrini-empresa-entregas-cabecalho .elementor-widget:first-child .elementor-heading-title {
	color: #c8a951 !important;
}

.vitrini-empresa-entregas-cabecalho .elementor-widget-text-editor,
.vitrini-empresa-entregas-cabecalho .elementor-widget-text-editor p {
	color: rgba(250, 248, 243, 0.76) !important;
}

.vitrini-empresa-entregas-grid {
	align-items: stretch !important;
	display: grid !important;
	gap: 16px !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	position: relative;
	width: 100% !important;
	z-index: 2;
}

.vitrini-empresa-entrega-card {
	background: rgba(255, 255, 255, 0.055) !important;
	border: 1px solid rgba(200, 169, 81, 0.28) !important;
	border-radius: 12px !important;
	box-shadow: 0 18px 38px -28px rgba(0, 0, 0, 0.7) !important;
	box-sizing: border-box;
	height: 100% !important;
	margin: 0 !important;
	min-height: 215px !important;
	min-width: 0 !important;
	overflow: hidden;
	padding: 72px 24px 27px !important;
	position: relative;
	transition: background-color 0.36s ease, border-color 0.36s ease,
		box-shadow 0.36s ease, transform 0.36s cubic-bezier(0.18, 0.82, 0.25, 1);
	width: auto !important;
}

.vitrini-empresa-entrega-card::before {
	align-items: center;
	background: rgba(200, 169, 81, 0.12);
	border: 1px solid rgba(200, 169, 81, 0.58);
	border-radius: 50%;
	color: #c8a951;
	content: "✓";
	display: flex;
	font-family: Arial, sans-serif;
	font-size: 16px;
	font-weight: 700;
	height: 36px;
	justify-content: center;
	left: 24px;
	line-height: 1;
	position: absolute;
	top: 24px;
	transition: background-color 0.32s ease, color 0.32s ease, transform 0.32s ease;
	width: 36px;
}

.vitrini-empresa-entrega-card .elementor-heading-title {
	color: #faf8f3 !important;
	font-size: 18px !important;
	line-height: 1.28em !important;
}

.vitrini-empresa-entrega-card .elementor-widget-text-editor,
.vitrini-empresa-entrega-card .elementor-widget-text-editor p {
	color: rgba(250, 248, 243, 0.72) !important;
	font-size: 14px !important;
	line-height: 1.55em !important;
}

.vitrini-empresa-entrega-card:hover,
.vitrini-empresa-entrega-card:focus-within {
	background: rgba(255, 255, 255, 0.085) !important;
	border-color: rgba(200, 169, 81, 0.78) !important;
	box-shadow: 0 28px 54px -24px rgba(0, 0, 0, 0.66),
		0 0 20px rgba(200, 169, 81, 0.12) !important;
	transform: translateY(-8px);
	z-index: 4;
}

.vitrini-empresa-entrega-card:hover::before,
.vitrini-empresa-entrega-card:focus-within::before {
	background: #c8a951;
	color: #0f2236;
	transform: scale(1.08);
}

/* Competencias corporativas: mosaico compacto por areas */
.vitrini-empresa-competencias {
	background: #ffffff !important;
}

.vitrini-empresa-competencias-cabecalho .elementor-heading-title {
	color: #0f2236 !important;
}

.vitrini-empresa-competencias-cabecalho .elementor-widget:first-child .elementor-heading-title {
	color: #c8a951 !important;
}

.vitrini-empresa-competencias-cabecalho .elementor-widget-text-editor,
.vitrini-empresa-competencias-cabecalho .elementor-widget-text-editor p {
	color: rgba(15, 34, 54, 0.7) !important;
}

.vitrini-empresa-competencias-grid {
	align-items: stretch !important;
	display: grid !important;
	gap: 14px !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	width: 100% !important;
}

.vitrini-empresa-competencia-card {
	align-items: center !important;
	background: #faf8f3 !important;
	border: 1px solid rgba(15, 34, 54, 0.15) !important;
	border-radius: 11px !important;
	box-shadow: 0 12px 30px -26px rgba(15, 34, 54, 0.48) !important;
	box-sizing: border-box;
	height: 100% !important;
	justify-content: center !important;
	margin: 0 !important;
	min-height: 116px !important;
	min-width: 0 !important;
	overflow: hidden;
	padding: 24px 22px !important;
	position: relative;
	transition: background-color 0.34s ease, border-color 0.34s ease,
		box-shadow 0.34s ease, transform 0.34s cubic-bezier(0.18, 0.82, 0.25, 1);
	width: auto !important;
}

.vitrini-empresa-competencia-card:nth-child(2n) {
	background: #f4e6d2 !important;
}

.vitrini-empresa-competencia-card:nth-child(4n + 3) {
	background: #eef2f1 !important;
}

.vitrini-empresa-competencia-card::before {
	background: #c8a951;
	content: "";
	height: 3px;
	left: 50%;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	transition: width 0.34s ease;
	width: 42px;
}

.vitrini-empresa-competencia-card .elementor-heading-title {
	color: #0f2236 !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1.35em !important;
	text-align: center !important;
	transition: color 0.3s ease;
}

.vitrini-empresa-competencia-card:hover,
.vitrini-empresa-competencia-card:focus-within {
	background: #0f2236 !important;
	border-color: #c8a951 !important;
	box-shadow: 0 24px 46px -24px rgba(15, 34, 54, 0.5),
		0 0 18px rgba(200, 169, 81, 0.1) !important;
	transform: translateY(-7px);
	z-index: 4;
}

.vitrini-empresa-competencia-card:hover::before,
.vitrini-empresa-competencia-card:focus-within::before {
	width: 100%;
}

.vitrini-empresa-competencia-card:hover .elementor-heading-title,
.vitrini-empresa-competencia-card:focus-within .elementor-heading-title {
	color: #faf8f3 !important;
}

/* Encerramento corporativo */
.vitrini-empresa-cta {
	background:
		linear-gradient(90deg, rgba(200, 169, 81, 0.08) 0, transparent 32%),
		radial-gradient(circle at 86% 18%, rgba(200, 169, 81, 0.16), transparent 25%),
		linear-gradient(128deg, #091a2b 0%, #0f2236 44%, #1c2c44 100%) !important;
	border-bottom: 1px solid rgba(200, 169, 81, 0.55);
	border-top: 1px solid rgba(200, 169, 81, 0.42);
	overflow: hidden !important;
	position: relative;
}

.vitrini-empresa-cta::before {
	background:
		linear-gradient(135deg, transparent 0 47%, rgba(200, 169, 81, 0.34) 47.2% 47.5%, transparent 47.7%),
		linear-gradient(135deg, transparent 0 59%, rgba(200, 169, 81, 0.13) 59.2% 59.5%, transparent 59.7%);
	content: "";
	height: 100%;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	width: 58%;
}

.vitrini-empresa-cta::after {
	background: url("https://vitriniacademy.com/wp-content/uploads/2026/08/favicon-vitrini-dourado-plano.png") center / contain no-repeat;
	bottom: -92px;
	content: "";
	filter: drop-shadow(0 18px 45px rgba(0, 0, 0, 0.32));
	height: 410px;
	left: -65px;
	opacity: 0.31;
	pointer-events: none;
	position: absolute;
	transform: rotate(-3deg);
	width: 410px;
}

.vitrini-empresa-cta-conteudo {
	align-items: center !important;
	margin-left: auto !important;
	max-width: 970px !important;
	padding-left: 260px !important;
	position: relative;
	text-align: center !important;
	z-index: 2;
}

.vitrini-empresa-cta-conteudo .elementor-heading-title {
	color: #faf8f3 !important;
}

.vitrini-empresa-cta-conteudo > .elementor-widget-heading:first-child .elementor-heading-title,
.vitrini-empresa-cta-conteudo .elementor-widget-heading:first-of-type .elementor-heading-title,
.vitrini-empresa-cta-conteudo h6.elementor-heading-title {
	color: #c8a951 !important;
	letter-spacing: 0.16em !important;
}

.vitrini-empresa-cta-conteudo .elementor-widget-text-editor,
.vitrini-empresa-cta-conteudo .elementor-widget-text-editor p {
	color: rgba(250, 248, 243, 0.78) !important;
}

.vitrini-empresa-cta-acoes {
	justify-content: center !important;
	position: relative;
	width: 100% !important;
	z-index: 3;
}

.vitrini-empresa-cta-acoes .elementor-button {
	align-items: center;
	border-radius: 8px !important;
	display: flex;
	font-weight: 600 !important;
	justify-content: center;
	box-shadow: 0 12px 30px -20px rgba(0, 0, 0, 0.75);
	min-height: 52px;
	padding: 14px 25px !important;
	transition: background-color 0.3s ease, border-color 0.3s ease,
		color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
}

.vitrini-empresa-cta-acoes .elementor-widget-button:first-child .elementor-button {
	background: #c8a951 !important;
	border: 1px solid #c8a951 !important;
	color: #0f2236 !important;
}

.vitrini-empresa-cta-acoes .elementor-widget-button:last-child .elementor-button {
	background: transparent !important;
	border: 1px solid rgba(250, 248, 243, 0.66) !important;
	color: #faf8f3 !important;
}

.vitrini-empresa-cta-acoes .elementor-button:hover,
.vitrini-empresa-cta-acoes .elementor-button:focus-visible {
	box-shadow: 0 14px 28px -16px rgba(200, 169, 81, 0.58) !important;
	transform: translateY(-4px);
}

.vitrini-empresa-cta-acoes .elementor-widget-button:first-child .elementor-button:hover,
.vitrini-empresa-cta-acoes .elementor-widget-button:first-child .elementor-button:focus-visible {
	background: #d7bc72 !important;
	border-color: #d7bc72 !important;
}

.vitrini-empresa-cta-acoes .elementor-widget-button:last-child .elementor-button:hover,
.vitrini-empresa-cta-acoes .elementor-widget-button:last-child .elementor-button:focus-visible {
	background: #faf8f3 !important;
	border-color: #faf8f3 !important;
	color: #0f2236 !important;
}

@media (max-width: 767px) {
	.vitrini-empresa-cta {
		padding: 58px 20px 54px !important;
	}

	.vitrini-empresa-cta::before {
		opacity: 0.65;
		width: 100%;
	}

	.vitrini-empresa-cta::after {
		bottom: auto;
		height: 190px;
		left: auto;
		op: -48px;
		right: -62px;
		width: 190px;
		opacity: 0.16;
	}

	.vitrini-empresa-cta-conteudo {
		max-width: 100% !important;
		padding-left: 0 !important;
	}

	.vitrini-empresa-cta-conteudo .elementor-heading-title {
		font-size: 30px !important;
		line-height: 1.16em !important;
	}

	.vitrini-empresa-cta-conteudo > .elementor-widget-heading:first-child .elementor-heading-title,
	.vitrini-empresa-cta-conteudo .elementor-widget-heading:first-of-type .elementor-heading-title,
	.vitrini-empresa-cta-conteudo h6.elementor-heading-title {
		font-size: 12px !important;
		line-height: 1.3em !important;
	}

	.vitrini-empresa-cta-acoes {
		flex-direction: column !important;
		gap: 10px !important;
		width: 100% !important;
	}

	.vitrini-empresa-cta-acoes .elementor-widget-button,
	.vitrini-empresa-cta-acoes .elementor-button {
		width: 100% !important;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.vitrini-empresa-cta::after {
		bottom: -70px;
		height: 310px;
		left: -70px;
		width: 310px;
	}

	.vitrini-empresa-cta-conteudo {
		padding-left: 190px !important;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.vitrini-empresa-competencias-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.vitrini-empresa-competencias-grid {
		gap: 11px !important;
		grid-template-columns: minmax(0, 1fr);
	}

	.vitrini-empresa-competencia-card {
		min-height: 94px !important;
		padding: 21px 18px !important;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.vitrini-empresa-entregas-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.vitrini-empresa-entregas-grid {
		gap: 12px !important;
		grid-template-columns: minmax(0, 1fr);
	}

	.vitrini-empresa-entrega-card {
		min-height: 0 !important;
		padding: 68px 22px 24px !important;
	}

	.vitrini-empresa-entrega-card::before {
		left: 22px;
		top: 22px;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.vitrini-empresa-solucoes-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vitrini-empresa-solucao-card {
		min-height: 220px !important;
	}
}

@media (max-width: 767px) {
	.vitrini-empresa-solucoes-grid {
		gap: 12px !important;
		grid-template-columns: minmax(0, 1fr);
	}

	.vitrini-empresa-solucao-card {
		min-height: 0 !important;
		padding: 58px 22px 24px !important;
	}

	.vitrini-empresa-solucao-card::before,
	.vitrini-empresa-solucao-card::after {
		left: 22px;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.vitrini-empresa-processo-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.vitrini-empresa-processo-card:last-child {
		grid-column: 1 / -1;
		min-height: 170px !important;
	}
}

@media (max-width: 767px) {
	.vitrini-empresa-processo-grid {
		gap: 12px !important;
		grid-template-columns: minmax(0, 1fr);
	}

	.vitrini-empresa-processo-card {
		min-height: 0 !important;
		padding: 22px 20px !important;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.vitrini-empresa-v2 {
		min-height: 650px !important;
	}

	.vitrini-empresa-v2-tabs {
		gap: 8px !important;
		padding: 18px 18px 0 !important;
	}

	.vitrini-empresa-v2-tab .elementor-button {
		font-size: 13px !important;
		min-height: 44px;
		padding: 11px 15px !important;
	}

	.vitrini-empresa-v2-slides,
	.vitrini-empresa-v2-slide {
		min-height: 580px !important;
	}

	.vitrini-empresa-v2-conteudo {
		gap: 12px !important;
		margin: 0 !important;
		padding: 0 22px 0 32px !important;
		width: 47% !important;
	}

	.vitrini-empresa-v2-conteudo .elementor-heading-title {
		font-size: 30px !important;
		line-height: 1.12em !important;
	}

	.vitrini-empresa-v2-conteudo .elementor-widget:first-child .elementor-heading-title {
		font-size: 11px !important;
		letter-spacing: 1.25px !important;
		line-height: 1.3em !important;
	}

	.vitrini-empresa-v2-conteudo .elementor-widget-text-editor,
	.vitrini-empresa-v2-conteudo .elementor-widget-text-editor p {
		font-size: 14px !important;
		line-height: 1.48em !important;
	}

	.vitrini-empresa-v2-conteudo .elementor-button {
		font-size: 13px !important;
		padding: 11px 17px !important;
	}
}

@media (max-width: 767px) {
	.vitrini-empresa-v2 {
		min-height: 780px !important;
	}

	.vitrini-empresa-v2-tabs {
		flex-direction: column !important;
		gap: 8px !important;
		padding: 16px 18px 0 !important;
	}

	.vitrini-empresa-v2-tab,
	.vitrini-empresa-v2-tab .elementor-button {
		width: 100% !important;
	}

	.vitrini-empresa-v2-slides,
	.vitrini-empresa-v2-slide {
		min-height: 610px !important;
	}

	.vitrini-empresa-v2-slide {
		background-position: center center !important;
	}

	.vitrini-empresa-v2-conteudo {
		margin: 0 !important;
		padding: 46px 34px 84px !important;
		width: 100% !important;
	}

	.vitrini-empresa-v2-conteudo .elementor-heading-title {
		font-size: 28px !important;
		line-height: 1.13em !important;
	}

	.vitrini-empresa-v2-conteudo .elementor-widget:first-child .elementor-heading-title {
		font-size: 12px !important;
		line-height: 1.3em !important;
	}

	.vitrini-empresa-v2-conteudo .elementor-widget-text-editor,
	.vitrini-empresa-v2-conteudo .elementor-widget-text-editor p {
		font-size: 14px !important;
		line-height: 1.5em !important;
	}

	.vitrini-empresa-v2 > .vitrini-hero-nav {
		bottom: 18px;
		top: auto;
	}
}

/* Correcao estrutural da pagina Para Empresas (Elementor 1430) */
.page-id-1430 .elementor-element-0c9de07 {
	padding: 0 !important;
}

.page-id-1430 .elementor-element-0c9de07 > .e-con-inner {
	gap: 0 !important;
	max-width: none !important;
	padding: 0 !important;
	width: 100% !important;
}

.page-id-1430 .elementor-element-0c9de07 > .e-con-inner > .vitrini-empresa-hero {
	max-width: none !important;
	width: 100% !important;
}

.page-id-1430 .vitrini-empresa-conteudo {
	display: none !important;
}

.page-id-1430 .vitrini-empresa-tabs {
	align-self: center !important;
	max-width: calc(100% - 48px) !important;
	width: 1080px !important;
}

.page-id-1430 .vitrini-empresa-slide {
	align-self: flex-start !important;
	margin-left: max(24px, calc((100% - 1080px) / 2 + 40px)) !important;
	margin-right: 0 !important;
}

.page-id-1430 .elementor-element-0c9de07 > .e-con-inner > :not(.vitrini-empresa-hero) {
	margin-left: auto !important;
	margin-right: auto !important;
	max-width: calc(100% - 48px) !important;
	width: 1200px !important;
}

.page-id-1430 .elementor-element-0c9de07 > .e-con-inner > .vitrini-empresa-hero + * {
	margin-top: 70px !important;
}

@media (max-width: 767px) {
	.page-id-1430 .vitrini-empresa-tabs {
		max-width: calc(100% - 36px) !important;
		width: calc(100% - 36px) !important;
	}

	.page-id-1430 .vitrini-empresa-slide {
		margin-left: 22px !important;
		max-width: calc(100% - 44px) !important;
		width: calc(100% - 44px) !important;
	}
}

.vitrini-personal-hero {
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	position: relative;
	transition: background-image 0.2s ease;
}

/* Hero corporativo: biblioteca, trilhas e solucoes personalizadas */
.vitrini-empresa-hero {
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	gap: 0 !important;
	padding: 0 !important;
	position: relative;
	transition: background-image 0.2s ease;
}

.vitrini-empresa-conteudo {
	position: relative;
	z-index: 3;
}

.vitrini-empresa-tabs {
	padding: 0 !important;
}

.vitrini-empresa-slide {
	max-width: 100% !important;
	min-height: auto !important;
	padding: 0 !important;
	width: 500px !important;
}

.vitrini-empresa-hero.vitrini-empresa-ready .vitrini-empresa-slide {
	display: none;
}

.vitrini-empresa-hero.vitrini-empresa-ready .vitrini-empresa-slide.is-active {
	display: flex;
}

.vitrini-empresa-tab .elementor-button {
	background: rgba(15, 34, 54, 0.68) !important;
	border-color: rgba(250, 248, 243, 0.42) !important;
	color: #faf8f3 !important;
	transition: background-color 0.32s ease, border-color 0.32s ease, color 0.32s ease,
		box-shadow 0.32s ease, transform 0.32s ease;
}

.vitrini-empresa-tab:not(.is-active) .elementor-button:hover,
.vitrini-empresa-tab:not(.is-active) .elementor-button:focus {
	background: rgba(200, 169, 81, 0.94) !important;
	border-color: #c8a951 !important;
	color: #0f2236 !important;
}

.vitrini-empresa-tab.is-active .elementor-button {
	background: #c8a951 !important;
	border-color: #c8a951 !important;
	box-shadow: 0 10px 24px rgba(200, 169, 81, 0.2);
	color: #0f2236 !important;
}

.vitrini-empresa-hero .vitrini-empresa-slide.is-active .elementor-widget-heading {
	animation: vitrini-fade-up 0.58s ease both 0.15s;
}

.vitrini-empresa-hero .vitrini-empresa-slide.is-active .elementor-widget-text-editor {
	animation: vitrini-fade-up 0.58s ease both 0.3s;
}

.vitrini-empresa-hero .vitrini-empresa-slide.is-active .elementor-widget-button {
	animation: vitrini-fade-up 0.58s ease both 0.45s;
}

@media (max-width: 767px) {
	.vitrini-empresa-hero {
		background-position: center center !important;
	}

	.vitrini-empresa-tabs {
		flex-direction: column !important;
	}

	.vitrini-empresa-tab,
	.vitrini-empresa-tab .elementor-button {
		width: 100% !important;
	}

	.vitrini-empresa-slide {
		width: 100% !important;
	}

	.vitrini-empresa-hero .vitrini-hero-nav {
		bottom: 16px;
		top: auto;
	}
}

.vitrini-personal-hero.vitrini-personal-ready .vitrini-personal-slide {
	display: none;
}

.vitrini-personal-hero.vitrini-personal-ready .vitrini-personal-slide.is-active {
	display: flex;
}

.vitrini-personal-hero .vitrini-personal-slide.is-active .elementor-widget-heading {
	animation: vitrini-fade-up 0.55s ease both 0.15s;
}

.vitrini-personal-hero .vitrini-personal-slide.is-active .elementor-widget-text-editor {
	animation: vitrini-fade-up 0.55s ease both 0.3s;
}

.vitrini-personal-hero .vitrini-personal-slide.is-active .elementor-widget-button {
	animation: vitrini-fade-up 0.55s ease both 0.45s;
}

.vitrini-personal-dots {
	align-items: center;
	bottom: 22px;
	display: flex;
	gap: 9px;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	z-index: 20;
}

.vitrini-personal-dot {
	background: rgba(15, 34, 54, 0.28) !important;
	border: 1px solid rgba(15, 34, 54, 0.38) !important;
	border-radius: 999px;
	box-shadow: none !important;
	cursor: pointer;
	height: 8px;
	min-height: 0;
	padding: 0;
	transition: width 0.25s ease, background-color 0.25s ease;
	width: 8px;
}

.vitrini-personal-dot.is-active {
	background: #c8a951 !important;
	border-color: #c8a951 !important;
	width: 26px;
}

.vitrini-back-to-top {
	-webkit-appearance: none;
	align-items: center;
	appearance: none;
	background: rgba(15, 34, 54, 0.94) !important;
	border: 1px solid #c8a951 !important;
	border-radius: 50%;
	bottom: 22px;
	box-shadow: 0 8px 24px rgba(9, 24, 39, 0.28) !important;
	color: #c8a951 !important;
	cursor: pointer;
	display: flex;
	font-family: Arial, sans-serif;
	font-size: 22px;
	font-weight: 400;
	height: 44px;
	justify-content: center;
	line-height: 1;
	opacity: 0;
	padding: 0 0 2px;
	pointer-events: none;
	position: fixed;
	right: 22px;
	transform: translateY(12px);
	transition: opacity 0.25s ease, transform 0.25s ease, background-color 0.25s ease, color 0.25s ease;
	visibility: hidden;
	width: 44px;
	z-index: 9999;
}

.vitrini-back-to-top::before,
.vitrini-back-to-top::after {
	content: none !important;
}

.vitrini-back-to-top.is-visible {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
	visibility: visible;
}

.vitrini-back-to-top:hover,
.vitrini-back-to-top:focus-visible {
	background: #c8a951 !important;
	color: #0f2236 !important;
	outline: none;
}

.vitrini-hero.vitrini-ready .vitrini-slide {
	display: none;
}

.vitrini-hero.vitrini-ready .vitrini-slide.is-active {
	display: flex;
}

.vitrini-hero .vitrini-hero-tab .elementor-button {
	align-items: center;
	display: flex;
	justify-content: center;
	min-height: 48px;
	white-space: nowrap;
	width: 100%;
}

.vitrini-hero .vitrini-hero-tab.is-active .elementor-button {
	background: #c8a951 !important;
	border-color: #c8a951 !important;
	color: #0f2236 !important;
}

.vitrini-hero .vitrini-slide.is-active .elementor-widget-heading {
	animation: vitrini-fade-up 0.55s ease both 0.15s;
}

.vitrini-hero .vitrini-slide.is-active .elementor-widget-text-editor {
	animation: vitrini-fade-up 0.55s ease both 0.3s;
}

.vitrini-hero .vitrini-slide.is-active .elementor-widget-button {
	animation: vitrini-fade-up 0.55s ease both 0.45s;
}

.vitrini-hero-nav {
	-webkit-appearance: none;
	align-items: center;
	appearance: none;
	background-color: rgba(15, 34, 54, 0.82) !important;
	background-image: none !important;
	border: 1px solid #c8a951 !important;
	border-radius: 50%;
	box-shadow: none !important;
	color: #c8a951 !important;
	cursor: pointer;
	display: flex;
	font-size: 25px;
	height: 44px;
	justify-content: center;
	line-height: 1;
	padding: 0 0 3px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease, transform 0.25s ease;
	width: 44px;
	z-index: 20;
}

.vitrini-hero-nav::before,
.vitrini-hero-nav::after {
	content: none !important;
	display: none !important;
}

.vitrini-hero-nav:hover,
.vitrini-hero-nav:focus-visible {
	background-color: #c8a951 !important;
	background-image: none !important;
	border-color: #c8a951 !important;
	color: #0f2236 !important;
	outline: none;
}

.vitrini-hero-nav:hover {
	transform: translateY(-50%) scale(1.06);
}

.vitrini-hero-prev {
	left: 18px;
}

.vitrini-hero-next {
	right: 18px;
}

@keyframes vitrini-fade-up {
	from {
		opacity: 0;
		transform: translateY(14px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (max-width: 767px) {
	.vitrini-hero {
		background-image: url('/wp-content/uploads/2026/08/vitrini-hero-para-voce-mobile.webp') !important;
		background-position: center center !important;
	}

	.vitrini-personal-hero {
		background-position: center center !important;
	}

	.vitrini-personal-hero .vitrini-personal-slide {
		width: 100%;
	}

	.vitrini-personal-dots {
		bottom: 22px;
	}

	.vitrini-back-to-top {
		bottom: 18px;
		height: 40px;
		right: 18px;
		width: 40px;
	}

	.vitrini-hero .vitrini-hero-tab .elementor-button {
		text-align: center;
		white-space: normal;
	}

	.vitrini-hero .vitrini-slide {
		width: 100%;
	}

	.vitrini-hero-nav {
		height: 40px;
		top: auto;
		bottom: 18px;
		transform: none;
		width: 40px;
	}

	.vitrini-hero-nav:hover {
		transform: scale(1.06);
	}

	.vitrini-hero-prev {
		left: 18px;
	}

	.vitrini-hero-next {
		right: 18px;
	}
}

@media (prefers-reduced-motion: reduce) {
		.vitrini-hero,
		.vitrini-hero *,
		.vitrini-empresa-hero,
		.vitrini-empresa-hero *,
		.vitrini-publico-v1,
		.vitrini-publico-v1 *,
		.vitrini-publico-valor *,
		.vitrini-publico-frentes *,
		.vitrini-publico-processo *,
		.vitrini-publico-cidada *,
		.vitrini-publico-cta *,
	.vitrini-area-card,
	.vitrini-area-card::after,
	.vitrini-area-card .vitrini-area-link,
	.vitrini-objetivo-card,
	.vitrini-objetivo-card::after,
	.vitrini-objetivo-card .elementor-widget-icon,
	.vitrini-objetivo-card .vitrini-objetivo-link,
		.vitrini-beneficio-card,
		.vitrini-beneficio-card::after,
		.vitrini-beneficio-card .elementor-widget-icon,
		.vitrini-passo-card,
		.vitrini-passo-card::after,
		.vitrini-passo-numero,
		.vitrini-passos-linha::before {
		animation: none !important;
		transition: none !important;
	}

	.vitrini-area-card:hover,
	.vitrini-area-card:focus-within {
		transform: none;
	}

	.vitrini-objetivo-card:hover,
	.vitrini-objetivo-card:focus-within {
		transform: none;
	}

	.vitrini-beneficio-card:hover,
	.vitrini-beneficio-card:focus-within {
		transform: none;
	}

	.vitrini-passo-card:hover,
	.vitrini-passo-card:focus-within {
		transform: none;
	}
}

/* ==========================================================
   Refinamento mobile 2.4.0
   Hierarquia, contraste e proporcao dos heroes estrategicos
   ========================================================== */
@media (max-width: 767px) {
	/* Home: preserva a fotografia e cria uma base legivel para cada mensagem. */
	.vitrini-hero {
		isolation: isolate;
		min-height: calc(100svh - 86px) !important;
		overflow: hidden !important;
	}

	.vitrini-hero::before {
		background: linear-gradient(180deg,
			rgba(7, 20, 34, 0.34) 0%,
			rgba(7, 20, 34, 0.72) 50%,
			rgba(7, 20, 34, 0.92) 100%);
		content: "";
		inset: 0;
		pointer-events: none;
		position: absolute;
		z-index: 1;
	}

	.vitrini-hero > * {
		position: relative;
		z-index: 3;
	}

	.vitrini-hero .vitrini-slide .elementor-widget-text-editor,
	.vitrini-hero .vitrini-slide .elementor-widget-text-editor p {
		color: #faf8f3 !important;
		font-size: 17px !important;
		line-height: 1.48em !important;
		text-shadow: 0 2px 12px rgba(0, 0, 0, 0.45);
	}

	/* Para Voce: uma dobra visual, sem grandes vazios entre texto e imagem. */
	.vitrini-personal-hero {
		height: clamp(680px, calc(100svh - 84px), 760px) !important;
		min-height: 680px !important;
		overflow: hidden !important;
	}

	.vitrini-personal-hero .vitrini-personal-slide {
		height: 100% !important;
		min-height: 0 !important;
		padding-bottom: 76px !important;
	}

	.vitrini-personal-hero .elementor-widget-text-editor,
	.vitrini-personal-hero .elementor-widget-text-editor p {
		font-size: 16px !important;
		line-height: 1.45em !important;
	}

	.vitrini-personal-hero .elementor-button {
		font-size: 16px !important;
		line-height: 1.15em !important;
		padding: 14px 22px !important;
	}

	/* Empresas e Setor Publico: reduz o conjunto e protege a leitura. */
	.vitrini-empresa-v2 {
		min-height: 0 !important;
	}

	.vitrini-empresa-v2-tabs {
		gap: 7px !important;
		padding: 12px 16px 10px !important;
	}

	.vitrini-empresa-v2-tab .elementor-button {
		font-size: 15px !important;
		min-height: 44px !important;
		padding: 10px 14px !important;
	}

	.vitrini-empresa-v2-slides,
	.vitrini-empresa-v2-slide {
		height: clamp(610px, 76svh, 660px) !important;
		min-height: 610px !important;
	}

	.vitrini-empresa-v2-slide {
		background-position: center top !important;
		isolation: isolate;
	}

	.vitrini-empresa-v2-slide::before {
		background: linear-gradient(90deg,
			rgba(6, 19, 33, 0.96) 0%,
			rgba(6, 19, 33, 0.88) 48%,
			rgba(6, 19, 33, 0.48) 78%,
			rgba(6, 19, 33, 0.12) 100%);
		content: "";
		inset: 0;
		pointer-events: none;
		position: absolute;
		z-index: 1;
	}

	.vitrini-publico-slide::before {
		background: linear-gradient(90deg,
			rgba(6, 19, 33, 0.97) 0%,
			rgba(6, 19, 33, 0.9) 52%,
			rgba(6, 19, 33, 0.55) 82%,
			rgba(6, 19, 33, 0.2) 100%) !important;
	}

	.vitrini-empresa-v2-conteudo {
		align-self: center !important;
		padding: 30px 38px 74px !important;
		position: relative;
		z-index: 5;
	}

	.vitrini-empresa-v2-conteudo .elementor-heading-title {
		font-size: 26px !important;
		line-height: 1.12em !important;
	}

	.vitrini-empresa-v2-conteudo .elementor-widget-text-editor,
	.vitrini-empresa-v2-conteudo .elementor-widget-text-editor p {
		font-size: 14px !important;
		line-height: 1.46em !important;
		text-shadow: 0 2px 12px rgba(0, 0, 0, 0.45);
	}

	.vitrini-empresa-v2 > .vitrini-hero-nav {
		bottom: 18px !important;
		top: auto !important;
	}

	/* Garante uma unica dupla de controles no Setor Publico. */
	.vitrini-publico-v1 > .vitrini-hero-nav {
		display: flex !important;
	}

	/* Frente Municipal de Capacitacao Cidada. */
	.page-id-2423 .elementor-element.elementor-element-62f13d3.vitrini-publico-cidada {
		background: #0f2236 !important;
		display: flex !important;
		flex-direction: column !important;
		isolation: isolate;
		min-height: 0 !important;
		overflow: hidden !important;
		padding: 0 !important;
	}

	.page-id-2423 .elementor-element.elementor-element-62f13d3.vitrini-publico-cidada::before {
		content: none !important;
		display: none !important;
	}

	.page-id-2423 .elementor-element.elementor-element-62f13d3.vitrini-publico-cidada::after {
		animation: none !important;
		background-image: url('/wp-content/uploads/2026/08/capacitacao-cidada.png') !important;
		background-position: center center !important;
		background-repeat: no-repeat !important;
		background-size: cover !important;
		content: "" !important;
		display: block !important;
		flex: 0 0 360px !important;
		height: 360px !important;
		inset: auto !important;
		opacity: 1 !important;
		order: 2;
		position: relative !important;
		transform: none !important;
		width: 100% !important;
		z-index: 2;
	}

	.page-id-2423 .elementor-element.elementor-element-62f13d3.vitrini-publico-cidada > .elementor-element {
		background: #0f2236 !important;
		order: 1;
		padding: 42px 24px 38px !important;
		width: 100% !important;
	}

	.vitrini-publico-cidada > * {
		position: relative;
		z-index: 3;
	}

	.vitrini-publico-cidada-mensagem {
		max-width: 92% !important;
		padding-left: 18px !important;
	}

	.vitrini-publico-cidada-mensagem .elementor-heading-title {
		font-size: 28px !important;
		line-height: 1.15em !important;
	}

	.vitrini-publico-cidada-mensagem .elementor-widget-text-editor,
	.vitrini-publico-cidada-mensagem .elementor-widget-text-editor p {
		font-size: 16px !important;
		line-height: 1.5em !important;
		text-shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
	}

	.vitrini-publico-cidada-mensagem .elementor-button {
		font-size: 15px !important;
		line-height: 1.25em !important;
		padding: 14px 20px !important;
	}

	.vitrini-publico-cidada-mensagem > .elementor-widget-text-editor:nth-child(4) {
		display: none !important;
	}

	.vitrini-slide-desenvolvimento .elementor-widget-button {
		margin-top: 4px !important;
		position: static !important;
		top: auto !important;
	}

	.vitrini-slide-desenvolvimento .elementor-widget-text-editor,
	.vitrini-slide-desenvolvimento .elementor-widget-text-editor p {
		margin-bottom: 8px !important;
	}

	.vitrini-publico-runtime > .vitrini-hero-nav {
		bottom: 22px !important;
		height: 44px !important;
		top: auto !important;
		transform: none !important;
		width: 44px !important;
	}

	.vitrini-publico-runtime > .vitrini-hero-prev {
		left: 26px !important;
	}

	.vitrini-publico-runtime > .vitrini-hero-next {
		right: 26px !important;
	}

	.vitrini-publico-runtime > .vitrini-hero-nav:hover,
	.vitrini-publico-runtime > .vitrini-hero-nav:focus-visible {
		transform: none !important;
	}
}

@media (max-width: 390px) {
	.vitrini-empresa-v2-conteudo {
		padding-left: 28px !important;
		padding-right: 28px !important;
	}

	.vitrini-empresa-v2-conteudo .elementor-heading-title,
	.vitrini-publico-cidada-mensagem .elementor-heading-title {
		font-size: 24px !important;
	}
}
