/* 
Theme Name: Rock Ensina
Theme URI: https://www.rockensina.com.br/
Description: Tema para Rock Ensina
Author: John Moreto
Author URI: https://www.rockensina.com.br/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* -------------------------------------------------- */
/* PALETA DE CORES */
/* -------------------------------------------------- */
/*

-----------------
OFICIAIS DA MARCA
-----------------
#3185FC - rgba(49, 133, 252, 1) - Azul
#29BF12 - rgba(41, 191, 18, 1) - Verde
#F6A500 - rgba(246, 165, 0, 1) - Amarelo
#FF513D - rgba(255, 81, 61, 1) - Vermelho

#0D1821 - rgba(13, 24, 33, 1) - Cinza texto

-------------------------
OFICIAIS DA MARCA - HOVER
-------------------------
#2768D1 - Azul HOVER
#199909 - Verde HOVER
#CC8800 - Amarelo HOVER
#D84434 - Vermelho HOVER

--------------
REALCE / LINKS
--------------
#0D6EFD - Link
#0A58CA - Link hover

--------------
TEXTO
--------------
#090A0B - Cabeçalho
#212529 - Texto

#6C757D - Secundário

--------------
COMPLEMENTARES
--------------
#DE177A - Magenta
#174482 - Azul complementar
#034F22 - Verde complementar
#F58B00 - Amarelo complementar
#BF0603 - Vermelho complementar

#A6115C - Magenta hover
#03193A - Azul dark
#022711 - Verde dark
#3D2300 - Amarelo dark
#500402 - Vermelho dark
#03313A - Info dark

#240046 - Roxo dark
#566376 - Cinza azulado

--------------
BOOTSTRAP
--------------
#DEE2E6 - Borda padrão
#0BB4D5 - Info hover

--------------
FUNDOS
--------------
#E9ECEF - BG BODY SECUNDÁRIO
#F8F9FA - BG BODY TERCIÁRIO

*/

/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* DEFINIÇÃO DE VARIÁVEIS */
/* -------------------------------------------------- */
/* -------------------------------------------------- */
:root {
	--re-fonte-ui: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	--re-fonte-display: "RE Display", var(--re-fonte-ui);
	--re-fonte-mono: "JetBrains Mono", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	--re-font-family-fa: "Font Awesome 6 Pro";
	--re-font-size-h1: clamp(2.25rem, 1.8rem + 1.5vw, 3rem);
	--re-font-size-h2: clamp(1.85rem, 1.4rem + 0.9vw, 2.25rem);
	--re-font-size-h3: clamp(1.85rem, 1.4rem + 0.9vw, 2.25rem);
	--re-font-size-h4: clamp(1.7rem, 1.2rem + 0.6vw, 2rem);
	--re-font-size-h5: clamp(1.6rem, 1.1rem + 0.4vw, 1.75rem);
	--re-font-size-h6: clamp(1.5rem, 1rem + 0.2vw, 1.5rem);
	
	--re-logo-simbolo-svg: url("/wp-content/themes/re/recursos/imagens/favicons/favicon.svg");
	--re-pattern-1-branco-svg: url("/wp-content/themes/re/recursos/imagens/pattern-1-branco.svg");
	
	--re-cor-marca-azul: #3185FC;
	--re-cor-marca-verde: #29BF12;
	--re-cor-marca-amarelo: #F6A500;
	--re-cor-marca-vermelho: #FF513D;
	--re-cor-marca-preto: #0D1821;
	
	--re-cor-marca-azul-rgb: 49, 133, 252;
	--re-cor-marca-verde-rgb: 41, 191, 18;
	--re-cor-marca-amarelo-rgb: 246, 165, 0;
	--re-cor-marca-vermelho-rgb: 255, 81, 61;
	
	--re-cor-texto: #212529;
	--re-cor-cabecalho: #090A0B;
		
	--re-cor-complementar-magenta: #DE177A;
	--re-cor-complementar-azul: #174482;
	--re-cor-complementar-verde: #034F22;
	--re-cor-complementar-amarelo: #F58B00;
	--re-cor-complementar-vermelho: #BF0603;
	--re-cor-complementar-cinza-azulado: #566376;
	
	--re-cor-complementar-magenta-hover: #A6115C;
	--re-cor-complementar-azul-dark: #03193A;
	--re-cor-complementar-verde-dark: #022711;
	--re-cor-complementar-amarelo-dark: #3D2300;
	--re-cor-complementar-vermelho-dark: #500402;
	--re-cor-complementar-info-dark: #03313A;
	--re-cor-complementar-roxo-dark: #240046;
	
	--re-cor-complementar-azul-rgb: 23, 68, 130;
	--re-cor-complementar-magenta-rgb: 222, 23, 122;
	--re-cor-complementar-verde-rgb: 3, 79, 34;
	--re-cor-complementar-amarelo-rgb: 245, 139, 0;
	--re-cor-complementar-vermelho-rgb: 191, 6, 3;
	--re-cor-complementar-cinza-azulado-rgb: 86, 99, 118;
	
	--re-cor-complementar-azul-dark-rgb: 3, 25, 58;
	--re-cor-complementar-roxo-dark-rgb: 36, 0, 70;
	
	--re-cor-realce: #0D6EFD;
	--re-cor-realce-hover: #0A58CA;
	
	--re-bs-info-hover: #0BB4D5;
	--bs-primary-text-emphasis-rgb: 5, 44, 101;
	--bs-info-text-emphasis-rgb: 5, 81, 96;
	
	/* Fundo multicolorido RE */
	--re-bg-multicolor-background-size: 100% 100%;
	--re-bg-multicolor-background-position: 0px 0px,0px 0px,0px 0px,0px 0px,0px 0px,0px 0px,0px 0px,0px 0px,0px 0px,0px 0px,0px 0px;
	--re-bg-multicolor-background-image: radial-gradient(18% 28% at 24% 50%, #F1F6FFFF 7%, #073AFF00 100%),radial-gradient(18% 28% at 18% 71%, #FFFFFF59 6%, #073AFF00 100%),radial-gradient(70% 53% at 36% 76%, #F1F6FFFF 0%, #073AFF00 100%),radial-gradient(42% 53% at 15% 94%, #FFFFFFFF 7%, #073AFF00 100%),radial-gradient(42% 53% at 34% 72%, #FFFFFFFF 7%, #073AFF00 100%),radial-gradient(18% 28% at 35% 87%, #FFFFFFFF 7%, #073AFF00 100%),radial-gradient(31% 43% at 7% 98%, #FFFFFFFF 24%, #073AFF00 100%),radial-gradient(21% 37% at 72% 23%, #EEFDECFF 24%, #073AFF00 100%),radial-gradient(35% 56% at 91% 74%, #FFF3F1FF 9%, #073AFF00 100%),radial-gradient(74% 86% at 67% 38%, #FFFAEDFF 24%, #073AFF00 100%),linear-gradient(125deg, #F1F6FFFF 1%, #EEFDECFF 100%);
}

/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* TIPOGRAFIA */
/* -------------------------------------------------- */
/* -------------------------------------------------- */
@font-face {
	font-family: "RE Display";
	src: 
		url("/wp-content/themes/re/recursos/fontes/display/display-vf.woff2") format("woff2"),
		url("/wp-content/themes/re/recursos/fontes/display/display-vf.woff") format("woff");
	font-weight: 100 1000;
	font-style: normal italic;
	font-display: swap;
}

body {
	font-family: var(--re-fonte-ui);
	line-height: 1.5;
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--re-fonte-display);
	color: var(--re-cor-cabecalho);
	line-height: 1.2;
	font-weight: 700;
}

h1 { font-size: var(--re-font-size-h1); }
h2 { font-size: var(--re-font-size-h2); }
h3 { font-size: var(--re-font-size-h3); }
h4 { font-size: var(--re-font-size-h4); }
h5 { font-size: var(--re-font-size-h5); }
h6 { font-size: var(--re-font-size-h6); }

.fonte-ui {
	font-family: var(--re-fonte-ui);
}

.fonte-display {
	font-family: var(--re-fonte-display);
}

.fonte-display .fst-italic,
.fonte-display.fst-italic,
.fonte-display em,
em.fonte-display,
h1 i:not(.fas):not(.far):not(.fal):not(.fat):not(.fad):not(.fab):not(.fa-sharp), 
h2 i:not(.fas):not(.far):not(.fal):not(.fat):not(.fad):not(.fab):not(.fa-sharp), 
h3 i:not(.fas):not(.far):not(.fal):not(.fat):not(.fad):not(.fab):not(.fa-sharp), 
h4 i:not(.fas):not(.far):not(.fal):not(.fat):not(.fad):not(.fab):not(.fa-sharp), 
h5 i:not(.fas):not(.far):not(.fal):not(.fat):not(.fad):not(.fab):not(.fa-sharp), 
h6 i:not(.fas):not(.far):not(.fal):not(.fat):not(.fad):not(.fab):not(.fa-sharp) {
	font-style: oblique !important;
	font-variation-settings: "slnt" -10 !important;
	font-synthesis: none !important;
}

.font-monospace {
	font-family: var(--re-fonte-mono) !important;
}

/* --------------------------------------------------- */
/* --------------------------------------------------- */
/* TEMA CLARO */
/* --------------------------------------------------- */
/* --------------------------------------------------- */
:root {
	color-scheme: light;
}

/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* DEBUG */
/* -------------------------------------------------- */
/* -------------------------------------------------- */
code, kbd, pre, samp {
	font-family: var(--re-fonte-mono) !important;
}

pre {
	background-color: #EFF1F2;
	padding: 10px;
	border: solid 1px #C6CBCE;
	border-radius: 4px;
	word-break: break-all;
	white-space: pre-wrap;
	overflow: auto;
}

/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* UTILITÁRIOS */
/* -------------------------------------------------- */
/* -------------------------------------------------- */

/* ------------------ */
/* FUNDOS */
/* ------------------ */
.fundo-cor-marca-azul {
	background-color: rgba(var(--re-cor-marca-azul-rgb), var(--bs-bg-opacity));
}

.fundo-cor-marca-verde {
	background-color: rgba(var(--re-cor-marca-verde-rgb), var(--bs-bg-opacity));
}

.fundo-cor-marca-amarelo {
	background-color: rgba(var(--re-cor-marca-amarelo-rgb), var(--bs-bg-opacity));
}

.fundo-cor-marca-vermelho {
	background-color: rgba(var(--re-cor-marca-vermelho-rgb), var(--bs-bg-opacity));
}

.fundo-cor-complementar-magenta {
	background-color: rgba(var(--re-cor-complementar-magenta-rgb), var(--bs-bg-opacity));
}

.fundo-cor-complementar-azul {
	background-color: rgba(var(--re-cor-complementar-azul-rgb), var(--bs-bg-opacity));
}

.fundo-cor-complementar-verde {
	background-color: rgba(var(--re-cor-complementar-verde-rgb), var(--bs-bg-opacity));
}

.fundo-cor-complementar-amarelo {
	background-color: rgba(var(--re-cor-complementar-amarelo-rgb), var(--bs-bg-opacity));
}

.fundo-cor-complementar-vermelho {
	background-color: rgba(var(--re-cor-complementar-vermelho-rgb), var(--bs-bg-opacity));
}

.fundo-cor-complementar-cinza-azulado {
	background-color: rgba(var(--re-cor-complementar-cinza-azulado-rgb), var(--bs-bg-opacity));
}

.fundo-cor-bs-primary-emphasis {
	background-color: rgba(5, 44, 101, var(--bs-bg-opacity));
}

.fundo-cor-bs-info-emphasis {
	background-color: rgba(5, 81, 96, var(--bs-bg-opacity));
}

/* ------------------ */
/* TEXTO */
/* ------------------ */
.balancear-texto {
	text-wrap: balance;
}

.nao-balancear-texto {
	text-wrap: initial;
}

.tracking-wide {
	letter-spacing: 0.05em;
}

.tracking-medium {
	letter-spacing: 0.025em;
}

.tracking-tight {
	letter-spacing: -0.05em;
}

.texto-cor-marca-azul {
	color: var(--re-cor-marca-azul) !important;
}

.texto-cor-marca-verde {
	color: var(--re-cor-marca-verde) !important;
}

.texto-cor-marca-amarelo {
	color: var(--re-cor-marca-amarelo) !important;
}

.texto-cor-marca-vermelho {
	color: var(--re-cor-marca-vermelho) !important;
}

.texto-cor-complementar-cinza-azulado {
	color: var(--re-cor-complementar-cinza-azulado) !important;
}

.texto-cor-complementar-magenta {
	color: var(--re-cor-complementar-magenta) !important;
}

.texto-cor-complementar-azul {
	color: var(--re-cor-complementar-azul) !important;
}

.texto-cor-complementar-verde {
	color: var(--re-cor-complementar-verde) !important;
}

.texto-cor-complementar-amarelo {
	color: var(--re-cor-complementar-amarelo) !important;
}

.texto-cor-complementar-vermelho {
	color: var(--re-cor-complementar-vermelho) !important;
}

.texto-cor-complementar-azul-dark {
	color: var(--re-cor-complementar-azul-dark) !important;
}

.texto-cor-complementar-verde-dark {
	color: var(--re-cor-complementar-verde-dark) !important;
}

.texto-cor-complementar-amarelo-dark {
	color: var(--re-cor-complementar-amarelo-dark) !important;
}

.texto-cor-complementar-vermelho-dark {
	color: var(--re-cor-complementar-vermelho-dark) !important;
}

.texto-cor-complementar-info-dark {
	color: var(--re-cor-complementar-info-dark) !important;
}

.texto-cor-complementar-roxo-dark {
	color: var(--re-cor-complementar-roxo-dark) !important;
}

/* ------------------ */
/* DIVERSOS */
/* ------------------ */
.cursor-pointer {
	cursor: pointer;
}

.re-link-whatsapp {
	color: #25D366 !important;
}

.re-link-whatsapp:hover,
.re-link-whatsapp:focus,
.re-link-whatsapp:active {
	color: #146C43 !important;
}

.re-link-magenta a,
a.re-link-magenta {
	color: var(--re-cor-complementar-magenta) !important;
}

.re-link-magenta a:hover,
.re-link-magenta a:focus,
.re-link-magenta a:active,
a.re-link-magenta:hover,
a.re-link-magenta:focus,
a.re-link-magenta:active {
	color: var(--re-cor-complementar-magenta-hover) !important;
}

.re-link-info a,
a.re-link-info {
	color: var(--bs-info) !important;
}

.re-link-info a:hover,
.re-link-info a:focus,
.re-link-info a:active,
a.re-link-info:hover,
a.re-link-info:focus,
a.re-link-info:active {
	color: var(--re-bs-info-hover) !important;
}

/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* LAYOUT */
/* -------------------------------------------------- */
/* -------------------------------------------------- */
body {
	background-color: var(--bs-primary-text-emphasis);
}

#cabecalho {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	z-index: 100;
	transition: background-color .2s ease-in-out,
				/* box-shadow .2s ease-in-out; */
}

#cabecalho.re-stuck {
	position: fixed;
	background-color: rgba(var(--bs-primary-text-emphasis-rgb), .95);
	backdrop-filter: blur(5px);
	/* box-shadow: 0 0 24px rgba(11, 30, 61, .18); */
	animation: re-header-drop .4s cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes re-header-drop {
	from {
		transform: translateY(-100%);
		opacity: 0;
	}
	to {
		transform: translateY(0);
		opacity: 1;
	}
}

.re-hero-cabecalho-sticky {
	padding-top: 66px; /* Altura do #cabecalho (descontando o padding do cabeçalho) */
}

#content,
#content-custom {
	padding-bottom: 6rem;
}

@media (max-width: 991.98px) {
	
	#content,
	#content-custom {
		padding-bottom: 3rem;
	}
}

@media (max-width: 767.98px) {
	
	#content,
	#content-custom {
		padding-bottom: 0;
	}
}

#cabecalho::before,
#rodape::before {
	content: "";
	width: 100%;
	height: 5px;
	pointer-events: none;
	background: linear-gradient(
		to right, 
		var(--re-cor-marca-azul),
		var(--re-cor-marca-azul) 25%,
		var(--re-cor-marca-verde) 25%,
		var(--re-cor-marca-verde) 50%,
		var(--re-cor-marca-amarelo) 50%,
		var(--re-cor-marca-amarelo) 75%,
		var(--re-cor-marca-vermelho) 75%,
		var(--re-cor-marca-vermelho)
	);
}

/* ------------------ */
/* AIRMAIL */
/* ------------------ */
.re-airmail {
	border: 3px solid transparent;
	background-image:
		linear-gradient(
			135deg,
			#04214E,
			#04214E
		),
		repeating-linear-gradient(
			-45deg,
			var(--re-cor-complementar-magenta) 0px,
			var(--re-cor-complementar-magenta) 6px,
			var(--bs-white) 6px,
			var(--bs-white) 12px
		);
	background-origin: padding-box, border-box;
	background-clip: padding-box, border-box;
}

/* ------------------ */
/* BOX AUTOR */
/* ------------------ */
.re-box-fotos-autores,
.re-box-fotos-autores img {
	width: 40px;
	height: 40px;
}

.re-box-autor-bio .re-box-fotos-autores,
.re-box-autor-bio .re-box-fotos-autores img {
	width: 60px;
	height: 60px;
}

/* ------------------ */
/* CONTAINERS */
/* ------------------ */
.re-e-container-encaixotado-parent {
	--container-default-padding-top: 0;
	--container-default-padding-right: 0;
	--container-default-padding-bottom: 0;
	--container-default-padding-left: 0;
}

.re-e-container-encaixotado {
	padding: 40px 20px;
}

/* >768 */
@media (min-width: 768px) {
	
	.re-e-container-encaixotado-parent {
		--container-default-padding-top: 20px;
		--container-default-padding-right: 20px;
		--container-default-padding-bottom: 20px;
		--container-default-padding-left: 20px;
	}
	
	.re-e-container-encaixotado {
		padding: 3rem;
		border-radius: var(--bs-border-radius-xl);
	}
	
	.re-e-container-encaixotado.cta-premium {
		border-radius: var(--bs-border-radius-xxl);
	}
}

/* <768 */
@media (max-width: 767.98px) {
	
	.re-pt-mobile-0,
	.re-pt-mobile-0-child section {
		padding-top: 0 !important;
	}
	
	.re-rounded-mobile-0 {
		border-radius: 0 !important;
	}
	
	.re-ultimo-modulo {
		padding-bottom: 4.5rem;
	}
}

/* ------------------ */
/* PRODUTO B2C */
/* ------------------ */
body.single-produtos_b2c,
body.single-produtos_b2c #rodape,
body.post-type-archive-produtos_b2c,
body.post-type-archive-produtos_b2c #rodape {
	background-color: var(--re-cor-complementar-roxo-dark);
}

body.single-produtos_b2c #cabecalho.re-stuck,
body.post-type-archive-produtos_b2c #cabecalho.re-stuck {
	background-color: rgba(var(--re-cor-complementar-roxo-dark-rgb), .95);
}

body.single-produtos_b2c .re-airmail,
body.post-type-archive-produtos_b2c .re-airmail {
	border: 3px solid transparent;
	background-image:
		linear-gradient(
			135deg,
			#190030,
			#190030
		),
		repeating-linear-gradient(
			-45deg,
			var(--re-cor-complementar-magenta) 0px,
			var(--re-cor-complementar-magenta) 6px,
			var(--bs-white) 6px,
			var(--bs-white) 12px
		);
	background-origin: padding-box, border-box;
	background-clip: padding-box, border-box;
}

/* ------------------ */
/* CASE */
/* ------------------ */
body.single-case,
body.single-case #rodape,
body.post-type-archive-case,
body.post-type-archive-case #rodape {
	background-color: var(--bs-info-text-emphasis);
}

body.single-case #cabecalho.re-stuck,
body.post-type-archive-case #cabecalho.re-stuck {
	background-color: rgba(var(--bs-info-text-emphasis-rgb), .95);
}

body.single-case #rodape .re-footer-signature,
body.single-case #rodape .re-airmail .fa-envelope,
body.post-type-archive-case #rodape .re-footer-signature,
body.post-type-archive-case #rodape .re-airmail .fa-envelope,
body.single-case #rodape .menu-item .elementor-item-active,
body.post-type-archive-case #rodape .menu-item .elementor-item-active {
	color: var(--bs-info) !important;
}

body.single-case #rodape a:not(.elementor-button-link):hover,
body.single-case #rodape a:not(.elementor-button-link):focus,
body.post-type-archive-case #rodape a:not(.elementor-button-link):hover,
body.post-type-archive-case #rodape a:not(.elementor-button-link):focus,
body.single-case #rodape .elementor-icon-list-items .elementor-icon-list-item:hover .elementor-icon-list-text,
body.post-type-archive-case #rodape .elementor-icon-list-items .elementor-icon-list-item:hover .elementor-icon-list-text {
	color: var(--re-bs-info-hover) !important;
}

body.single-case #rodape .elementor-icon-list-items .elementor-icon-list-item:hover svg,
body.post-type-archive-case #rodape .elementor-icon-list-items .elementor-icon-list-item:hover svg {
	fill: var(--bs-info) !important;
}

body.single-case .re-airmail,
body.post-type-archive-case .re-airmail {
	border: 3px solid transparent;
	background-image:
		linear-gradient(
			135deg,
			var(--re-cor-complementar-info-dark),
			var(--re-cor-complementar-info-dark)
		),
		repeating-linear-gradient(
			-45deg,
			var(--bs-info) 0px,
			var(--bs-info) 6px,
			var(--bs-white) 6px,
			var(--bs-white) 12px
		);
	background-origin: padding-box, border-box;
	background-clip: padding-box, border-box;
}

/* ------------------ */
/* 404 */
/* ------------------ */
.error404 #cabecalho:not(.re-stuck) {
	background-color: var(--bs-primary-text-emphasis);
}

/* ------------------ */
/* EMBEDS */
/* ------------------ */
.re-embed-responsive {
	position: relative;
	width: 100%;
	padding-bottom: 56.25%; /* 16:9 */
	height: 0;
	overflow: hidden;
}

.re-embed-responsive iframe,
.re-embed-responsive embed,
.re-embed-responsive object,
.re-embed-responsive video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.re-embed-responsive-content iframe[src*="youtube"],
.re-embed-responsive-content iframe[src*="youtu.be"],
.re-embed-responsive-content iframe[src*="vimeo"],
.re-embed-responsive-content iframe[src*="ted.com"] {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	margin-bottom: 1.5rem;
	margin-top: 1.5rem;
}

/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* BOOTSTRAP */
/* -------------------------------------------------- */
/* -------------------------------------------------- */
.tooltip-inner {
	line-height: 1.2;
	padding: .5rem .75rem;
	font-size: 14px;
	font-weight: 500;
	color: var(--bs-white);
}

.tooltip-inner strong,
.tooltip-inner .fw-bold {
	font-weight: 800;
}

.re-tooltip-text-left .tooltip-inner {
	text-align: left;
}

.btn:hover {
	color: var(--bs-btn-hover-color) !important;
}

.mt-0-5 {
	margin-top: .05rem;
}

.text-decoration-underline-hover:hover {
	text-decoration: underline !important;
}

.bg-opacity-100 {
	--bs-bg-opacity: 1;
}

.bg-opacity-5 {
	--bs-bg-opacity: 0.05;
}

@media (max-width: 767.98px) {
	
	.d-grid.grid-mobile-2 {
		grid-template-columns: repeat(2, 1fr);
	}
}

.modal-header .btn-close {
	background-color: transparent !important;
}

.btn {
	padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x) !important;
	font-weight: var(--bs-btn-font-weight) !important;
	border: 0;
}

.btn-secondary {
	background-color: var(--bs-btn-bg) !important;
}

.btn-secondary:hover,
.btn-secondary:focus {
	background-color: var(--bs-btn-hover-bg) !important;
}

.btn-light {
	background-color: var(--bs-btn-bg) !important;
	color: var(--bs-btn-color) !important;
}

.btn-light:hover,
.btn-light:focus {
	background-color: var(--bs-btn-hover-bg) !important;
}

.table:not(.table-bordered) td,
.table:not(.table-bordered) th {
	border-right: 0;
	border-left: 0;
}

.table thead,
.table tbody,
.table tr,
.table th,
.table td {
	border-color: var(--bs-table-border-color) !important;
}

/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* ELEMENTOR */
/* -------------------------------------------------- */
/* -------------------------------------------------- */
.elementor-lightbox .elementor-lightbox-image {
	border: solid 1px rgba(255, 255, 255, .25) !important;
	border-radius: .25rem !important;
}

.elementor-slideshow__title {
	font-weight: 500 !important;
	font-size: 13px !important;
	line-height: 1.2 !important;
	text-wrap: balance;
}

.elementor-slideshow__header::after {
	content: "";
	display: inline-block;
	margin-right: 15px;
	vertical-align: middle;
	width: 24px;
	height: 24px;
	background-image: var(--re-logo-simbolo-svg);
	background-size: contain;
	background-repeat: no-repeat;
}

.elementor-lightbox .dialog-lightbox-close-button {
	margin-top: 15px !important;
}

@media (max-width: 767.98px) {
	
	.elementor-slideshow__header {
		padding-top: 22px !important;
	}
	
	.elementor-lightbox .e-eicon-frame-expand {
		display: none !important;
	}
	
	.elementor-lightbox .dialog-lightbox-close-button svg {
		height: 1.25em !important;
		width: 1.25em !important;
	}
	
	.elementor-lightbox .elementor-lightbox-image {
		border-width: 1px 0 !important;
		border-radius: 0 !important;
	}
}

.re-e-off-canvas-botao-fechar {
	position: fixed;
	z-index: 9999999;
	right: 20px;
	top: 20px;
}

.re-e-off-canvas-botao-fechar .elementor-button {
	width: 2em;
	height: 2em;
	padding: 0;
	background: var(--bs-white);
	color: var(--bs-secondary);
	font-size: 1.75rem;
	display: flex;
	justify-content: center;
	align-items: center;
	box-shadow: var(--bs-box-shadow-sm);
}

.re-e-off-canvas-botao-fechar .elementor-button:hover,
.re-e-off-canvas-botao-fechar .elementor-button:active,
.re-e-off-canvas-botao-fechar .elementor-button:focus {
	background: var(--bs-white);
	color: var(--bs-body-color);
}

.elementor-widget-breadcrumbs {
	font-size: .875em;
}

/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* JET / CROCOBLOCK */
/* -------------------------------------------------- */
/* -------------------------------------------------- */

/* ------------------ */
/* POP-UPS */
/* ------------------ */
.jet-popup.jet-popup--front-mode .jet-popup__close-button {
	background: transparent;
	width: 40px;
	height: 40px;
	right: 8px;
	top: 8px;
}

.jet-popup.jet-popup--front-mode .jet-popup__close-button svg {
	color: var(--bs-black);
	fill: var(--bs-black);
	width: 22px;
	height: 22px;
	opacity: .5;
}

.jet-popup__container:has(.re-popup-fundo-escuro) .jet-popup__close-button svg {
	color: var(--bs-white);
	fill: var(--bs-white);
}

.jet-popup.jet-popup--front-mode .jet-popup__close-button svg:hover {
	opacity: 1;
}

.jet-popup.jet-popup--front-mode .jet-popup__close-button:focus-visible {
	outline: none;
}

/* ------------------ */
/* DIVERSOS */
/* ------------------ */
@media (max-width: 767.98px) {
	
	.jet-blog-playlist__canvas.jet-blog-canvas-active .jet-blog-playlist__canvas-overlay {
		background-color: #090A0B;
	}
	
	.jet-blog-playlist__canvas.jet-blog-canvas-active .jet-blog-playlist__canvas-overlay::before {
		content: "";
		position: absolute;
		top: 22px;
		left: 50%;
		transform: translateX(-50%);
		width: 24px;
		height: 24px;
		background-image: var(--re-logo-simbolo-svg);
		background-size: contain;
		background-repeat: no-repeat;
	}
	
	.jet-blog-playlist__canvas.jet-blog-canvas-active .jet-blog-playlist__canvas-overlay::after {
		content: "\f00d";
		font-family: var(--re-font-family-fa);
		font-size: 32px;
		font-weight: 400;
		line-height: 1;
		color: rgba(255, 255, 255, .7);
		position: absolute;
		bottom: 80px;
		left: 50%;
		transform: translateX(-50%);
	}
	
	.jet-blog-playlist__canvas.jet-blog-canvas-active .jet-blog-playlist__canvas-overlay:hover::after {
		color: var(--bs-white);
	}
}

/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* PLUGINS */
/* -------------------------------------------------- */
/* -------------------------------------------------- */
#breadcrumbs a:hover,
#breadcrumbs a:active,
#breadcrumbs a:focus {
	text-decoration: underline;
	transition: all ease .2s;
}

#breadcrumbs .breadcrumb-separador {
	opacity: .375;
}

#breadcrumbs .breadcrumb_last {
	font-weight: 600;
}

.breadcrumb-sutil .breadcrumb_last {
	opacity: .5;
	font-weight: 400 !important;
}

.breadcrumb-lps #breadcrumbs .breadcrumb-separador,
.breadcrumb-lps #breadcrumbs span > span:first-child {
	display: none;
}

.breadcrumb-lps #breadcrumbs span > span:not(.breadcrumb_last) > a {
	border: solid 2px var(--bs-white);
	color: var(--bs-white);
	padding: .35rem 1rem .125rem 1rem;
	margin-right: .5rem;
	border-radius: 50rem;
	font-family: var(--re-fonte-display);
	font-size: 1.0625em;
	font-weight: 500;
	letter-spacing: .5px;
	line-height: 1.2;
	display: inline-block;
	opacity: .5;
}

.breadcrumb-lps #breadcrumbs span > span:not(.breadcrumb_last) > a:hover,
.breadcrumb-lps #breadcrumbs span > span:not(.breadcrumb_last) > a:focus,
.breadcrumb-lps #breadcrumbs span > span:not(.breadcrumb_last) > a:active {
	text-decoration: none;
	background-color: var(--re-cor-complementar-magenta-hover);
	border-color: var(--re-cor-complementar-magenta-hover);
	opacity: 1;
}

body.single-case .breadcrumb-lps #breadcrumbs span > span:not(.breadcrumb_last) > a:hover,
body.single-case .breadcrumb-lps #breadcrumbs span > span:not(.breadcrumb_last) > a:focus,
body.single-case .breadcrumb-lps #breadcrumbs span > span:not(.breadcrumb_last) > a:active {
	background-color: var(--re-bs-info-hover);
	border-color: var(--re-bs-info-hover);
	color: var(--bs-info-text-emphasis);
}

.breadcrumb-lps .breadcrumb_last {
	border: solid 2px var(--re-cor-complementar-magenta);
	color: var(--re-cor-complementar-magenta);
	padding: .35rem 1rem .175rem 1rem;
	margin-right: .5rem;
	border-radius: 50rem;
	font-family: var(--re-fonte-display);
	font-size: 1.125em;
	letter-spacing: .5px;
	line-height: 1.2;
	font-weight: 700 !important;
}

body.single-case .breadcrumb-lps .breadcrumb_last {
	border-color: var(--bs-info);
	color: var(--bs-info);
}

body.e--ua-safari.e--ua-mac .breadcrumb-lps .breadcrumb_last,
body.e--ua-firefox .breadcrumb-lps .breadcrumb_last,
body.e--ua-safari.e--ua-mac .breadcrumb-lps #breadcrumbs span > span:not(.breadcrumb_last) > a,
body.e--ua-firefox .breadcrumb-lps #breadcrumbs span > span:not(.breadcrumb_last) > a,
body.e--ua-isTouchDevice .breadcrumb-lps .breadcrumb_last,
body.e--ua-isTouchDevice .breadcrumb-lps #breadcrumbs span > span:not(.breadcrumb_last) > a {
	padding-top: .3rem;
}

.breadcrumb-lps #breadcrumbs > span {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	flex-wrap: wrap;
}

.breadcrumb-lps #breadcrumbs .breadcrumb-separador {
	transform: rotate(180deg);
	margin: 0 .5rem !important;
}

@media (max-width: 767.98px) {
	
	.breadcrumb-lps {
		width: 100%;
	}

	.breadcrumb-lps #breadcrumbs > span {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		text-align: center;
	}

	.breadcrumb-lps #breadcrumbs .breadcrumb_last {
		flex: 0 0 100%;
		margin-top: .5rem;
		margin-right: 0;
	}
	
	.breadcrumb-lps #breadcrumbs .breadcrumb-separador {
		margin-top: -.1rem !important;
	}
	
	.breadcrumb-lps #breadcrumbs .breadcrumb-separador:has(+ .breadcrumb_last) {
		transform: rotate(90deg);
	}
}

/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* FUNDOS ESTILIZADOS E DECORAÇÕES */
/* -------------------------------------------------- */
/* -------------------------------------------------- */

/* Desktop */
.re-hero-produto {
	background-color: var(--bs-primary-text-emphasis);
	background-image: url("data:image/svg+xml,%3Csvg width='2345' height='2212' viewBox='0 0 2345 2212' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='623' cy='623' r='623' fill='url(%23p0)'/%3E%3Ccircle cx='1722' cy='1589' r='623' fill='url(%23p1)'/%3E%3Cdefs%3E%3CradialGradient id='p0' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='translate(623 623) rotate(90) scale(624)'%3E%3Cstop stop-color='%23DE177A'/%3E%3Cstop offset='1' stop-color='transparent' stop-opacity='0'/%3E%3C/radialGradient%3E%3CradialGradient id='p1' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='translate(1722 1589) rotate(-16.3273) scale(649)'%3E%3Cstop stop-color='%232563EB'/%3E%3Cstop offset='0.95506' stop-color='transparent' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

/* Mobile: só o magenta ancorado no topo esquerdo */
@media (max-width: 767.98px) {
	.re-hero-produto {
		background-image: url("data:image/svg+xml,%3Csvg width='800' height='800' viewBox='0 0 800 800' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='0' cy='0' r='500' fill='url(%23p0)'/%3E%3Cdefs%3E%3CradialGradient id='p0' cx='0' cy='0' r='1' gradientUnits='userSpaceOnUse' gradientTransform='translate(0 0) rotate(90) scale(500)'%3E%3Cstop stop-color='%23DE177A'/%3E%3Cstop offset='1' stop-color='transparent' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3C/svg%3E");
		background-position: top left;
		background-size: 70% auto;
	}
}

/*
.re-hero-produto {
	position: relative;
	isolation: isolate;
}

.re-hero-produto::after {
	content: '';
	position: absolute;
	inset: 0;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");
	opacity: 0.045;
	pointer-events: none;
	z-index: 0;
}

.re-hero-produto > * {
	position: relative;
	z-index: 1;
}
*/

.faixa-degrade {
	background: var(--re-cor-marca-vermelho);
	background: linear-gradient(
		to right, 
		var(--re-cor-marca-azul),
		var(--re-cor-marca-azul) 25%,
		var(--re-cor-marca-verde) 25%,
		var(--re-cor-marca-verde) 50%,
		var(--re-cor-marca-amarelo) 50%,
		var(--re-cor-marca-amarelo) 75%,
		var(--re-cor-marca-vermelho) 75%,
		var(--re-cor-marca-vermelho)
	);
	height: 5px;
}

.bg-multicolor,
#content {
	background-color: var(--bs-tertiary-bg);
	background-size: var(--re-bg-multicolor-background-size);
	background-position: var(--re-bg-multicolor-background-position);
	background-image: var(--re-bg-multicolor-background-image);
}

.tdc-gradient {
	background: linear-gradient(90deg,
			var(--re-cor-marca-azul),
			var(--re-cor-marca-verde),
			var(--re-cor-marca-amarelo),
			var(--re-cor-marca-vermelho),
			var(--re-cor-marca-azul));
	background-size: 300% 100%;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	color: transparent;
	animation: tdc-flow 10s ease-in-out infinite;
}

@keyframes tdc-flow {
	0% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}

	100% {
		background-position: 0% 50%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.tdc-gradient {
		animation: none;
	}
}

.re-gradiente-cta .re-olho-conteudo {
	position: relative;
}

.re-gradiente-cta .re-olho-texto,
.re-gradiente-cta .re-olho-traco {
	background: linear-gradient(
		90deg,
		var(--re-cor-marca-azul),
		var(--re-cor-marca-verde),
		var(--re-cor-marca-amarelo),
		var(--re-cor-marca-vermelho),
		var(--re-cor-marca-azul)
	);

	background-size: 300% 100%;
	animation: tdc-flow 10s ease-in-out infinite;
}

.re-gradiente-cta .re-olho-texto {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	color: transparent;
}

.re-gradiente-cta .re-olho-traco {
	height: 2px;
	border-radius: 999px;
}

.cta-premium {
	background: radial-gradient(ellipse at center, #0A3D7A 0%, var(--bs-primary-text-emphasis) 45%, #020f26 100%);
}

body.single-produtos_b2c .cta-premium {
	background: radial-gradient(ellipse at center, #3D0070 0%, var(--re-cor-complementar-roxo-dark) 45%, #0f001f 100%);
}

body.single-case .cta-premium {
	background: radial-gradient(ellipse at center, #055261 0%, var(--bs-info-text-emphasis) 45%, var(--re-cor-complementar-info-dark) 100%);
	border-top-color: var(--bs-info) !important;
}

body.single-case .cta-premium .elementor-shape-fill {
	fill: var(--bs-info) !important;
}

.cta-premium::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
	opacity: 0.04;
	border-radius: inherit;
	pointer-events: none;
}

.cta-premium .botao-cta-principal .elementor-button-link {
	animation: pulse-cta 3s ease-in-out infinite;
}

@keyframes pulse-cta {
	0%, 100% { box-shadow: 0 0 0 0 rgba(var(--re-cor-complementar-magenta-rgb), .9); }
	50%       { box-shadow: 0 0 0 10px rgba(var(--re-cor-complementar-magenta-rgb), 0); }
}

.fundo-svg-pattern-1-branco::before {
	content: "";
	position: absolute;
	top: 50%;
	width: 100%;
	height: 100%;
	background: var(--re-pattern-1-branco-svg) repeat center;
	background-size: 500px;
	opacity: .035;
	transform: translateY(-50%);
}

/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* EFEITOS E MOVIMENTO */
/* -------------------------------------------------- */
/* -------------------------------------------------- */
.re-eff-mover-cima {
	transition: transform .2s;
}

.re-eff-mover-cima:hover {
	transform: translateY(-5px);
}

/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* BOTÕES */
/* -------------------------------------------------- */
/* -------------------------------------------------- */
.botao-magenta .elementor-button:not(:hover):not(:active):not(:focus) {
	background: var(--re-cor-complementar-magenta);
}

.botao-magenta .elementor-button:hover,
.botao-magenta .elementor-button:active,
.botao-magenta .elementor-button:focus {
	background-color: var(--re-cor-complementar-magenta-hover);
}

.botao-branco .elementor-button:not(:hover):not(:active):not(:focus) {
	background: var(--bs-white);
	color: var(--re-cor-realce);
}

.botao-vazado .elementor-button {
	background: var(--bs-white);
	border: solid 2px var(--re-cor-realce);
	color: var(--re-cor-realce);
}

.botao-vazado .elementor-button:hover,
.botao-vazado .elementor-button:active,
.botao-vazado .elementor-button:focus {
	border: solid 2px var(--re-cor-realce-hover);
	background-color: var(--re-cor-realce-hover);
}

.botao-magenta-vazado .elementor-button {
	background: var(--bs-white);
	border: solid 2px var(--re-cor-complementar-magenta);
	color: var(--re-cor-complementar-magenta);
}

.botao-magenta-vazado .elementor-button:hover,
.botao-magenta-vazado .elementor-button:active,
.botao-magenta-vazado .elementor-button:focus {
	border: solid 2px var(--re-cor-complementar-magenta-hover);
	background-color: var(--re-cor-complementar-magenta-hover);
}

.botao-link .elementor-button {
	background: transparent;
	border: 0;
	color: var(--re-cor-realce);
	font-weight: 500;
}

.botao-link .elementor-button:hover,
.botao-link .elementor-button:active,
.botao-link .elementor-button:focus {
	background: transparent;
	border: 0;
	color: var(--re-cor-realce-hover);
	font-weight: 500;
}

.botao-grande .elementor-button {
	font-size: 1.25rem;
	border-radius: .5rem;
	padding: 1rem;
}

.botao-grande .elementor-button:hover,
.botao-grande .elementor-button:active,
.botao-grande .elementor-button:focus {
	border-radius: .5rem;
}

.botao-pequeno .elementor-button {
	font-size: .875rem;
	padding: .5rem;
	border-radius: .25rem;
}

.botao-pequeno .elementor-button:hover,
.botao-pequeno .elementor-button:active,
.botao-pequeno .elementor-button:focus {
	border-radius: .25rem;
}

/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* SHORTCODES */
/* -------------------------------------------------- */
/* -------------------------------------------------- */
.sc-compartilhar a:hover,
.sc-compartilhar a:active,
.sc-compartilhar a:focus {
	transition: all ease .2s;
}

@media (max-width: 767.98px) {

	.sc-compartilhar .fs-4 {
		font-size: 2rem !important;
	}
}

.re-olho-traco {
	height: 2px;
	background-color: currentColor;
}

.re-badge-bullet-numero {
	height: 40px;
	width: 40px;
	min-width: 40px;
	min-height: 40px;
	font-family: var(--re-fonte-mono);
}

.re-badge-bullet-numero.small {
	height: 25px;
	width: 25px;
	min-width: 25px;
	min-height: 25px;
}

.re-depoimentos .foto-executiva {
	width: 150px;
}

@media (min-width: 992px) {
	.re-depoimentos .foto-executiva {
		margin-top: -110px;
		width: 360px;
	}
}

/* -------------------------------------------------- */
/* -------------------------------------------------- */
/* POSTS DE CONTEÚDO */
/* -------------------------------------------------- */
/* -------------------------------------------------- */
.re-conteudo-post {
	font-size: 18px;
}

.re-conteudo-post > p,
.re-conteudo-post > ul,
.re-conteudo-post > ol,
.re-conteudo-post table {
	margin-bottom: 1.8rem;
}

.re-conteudo-post a:not(.btn),
.re-conteudo-post a:not(.elementor-button) {
	text-decoration: underline;
}

.re-conteudo-post h2 { font-size: clamp(1.6rem, 1.3rem + 1vw, 2rem); }
.re-conteudo-post h3 { font-size: clamp(1.35rem, 1.1rem + 0.7vw, 1.7rem); }
.re-conteudo-post h4 { font-size: clamp(1.2rem, 1rem + 0.5vw, 1.45rem); }
.re-conteudo-post h5 { font-size: clamp(1.1rem, 0.98rem + 0.25vw, 1.25rem); }
.re-conteudo-post h6 { font-size: clamp(1rem, 0.95rem + 0.15vw, 1.05rem); }

.re-conteudo-post h2,
.re-conteudo-post h3,
.re-conteudo-post h4,
.re-conteudo-post h5,
.re-conteudo-post h6 {
	color: var(--re-cor-complementar-azul-dark);
	text-wrap: balance;
}

.re-conteudo-post * + h2,
.re-conteudo-post * + h3,
.re-conteudo-post * + h4,
.re-conteudo-post * + h5,
.re-conteudo-post * + h6 {
	margin: 1.618em 0 .809em 0;
}

.re-conteudo-post h2 strong,
.re-conteudo-post h3 strong,
.re-conteudo-post h4 strong,
.re-conteudo-post h5 strong,
.re-conteudo-post h6 strong {
	font-weight: 700;
}

.re-conteudo-post li:not(:last-child) {
	margin-bottom: .5rem;
}

@media (max-width: 767.98px) {
	.re-conteudo-post .alignright,
	.re-conteudo-post .alignleft,
	.re-conteudo-post .aligncenter,
	.re-conteudo-post .alignwide {
		clear: both;
		display: block;
		margin: 1rem auto;
		float: none;
	}
}
