/* Estilo básico para o tooltip */

.tooltip {
	position: relative;
	cursor: pointer;
}

/* Cria o tooltip com o conteúdo do atributo data-tooltip */
.tooltip::after {
	content: attr(data-tooltip); /* Pega o conteúdo do atributo data-tooltip */
	position: absolute;
	bottom: 125%; /* Posiciona acima do elemento; ajuste conforme necessário */
	left: 50%;
	transform: translateX(-50%);
	background-color: #2978a0; /* Fundo escuro */
	color: #fff; /* Texto branco */
	padding: 5px 8px;
	border-radius: 4px;
	white-space: nowrap;
	opacity: 0; /* Inicialmente invisível */
	pointer-events: none; /* Impede que o tooltip interfira na interação com o elemento */
	transition: opacity 0.3s ease-in-out;
	z-index: 999;
	font-size: 1.2rem
}

/* Adiciona uma pequena seta ao tooltip */
.tooltip::before {
	content: "";
	position: absolute;
	bottom: 100% !important; /* Ajuste conforme necessário */
	left: 50%;
	transform: translateX(-50%);
	border-width: 5px;
	border-style: solid;
	border-color: #2978a0 transparent transparent transparent;
	opacity: 0;
	transition: opacity 0.3s ease-in-out;
	z-index: 100;
}

/* Mostra o tooltip ao passar o mouse sobre o elemento */
.tooltip:hover::after,
.tooltip:hover::before {
	opacity: 1;
}	
/* Finaliza tooltip */

/* Classes do Elementor com custom classes */
.elementor-widget-heading.azul .elementor-heading-title {
	color: blue;
}

.elementor-widget-heading.red .elementor-heading-title {
	color: #ff0000;
}

/* ========= */

/* Barra de Scroll */
/* Largura da barra */
body::-webkit-scrollbar {
  width: 8px;  
}

/* Cor de fundo */
body::-webkit-scrollbar-track {
    background: #ffffff;
}

/* Cor do controle deslizante */
body::-webkit-scrollbar-thumb {
    background: #312782;    
    transition: .7s;
}
/* Passa o mouse */
body::-webkit-scrollbar-thumb:hover {
    background: #46B6ED;
}

/* ========= */

/* Efeito de card com shadow */
.card-effect-shadow {
    animation: topdown 700ms 350ms backwards;
	transition: .5s all ease-in-out;
	border: 2px solid transparent;
	will-change: filter !important;
}

.card-effect-shadow:hover {
    transform: translateY(-15px);
    box-shadow: 0px 32px 180px -12px rgba(9,236,248, 0.2);
    background-color: #191c1f;
    
    border-radius: 8px;
    border: 2px solid #09ecf830;
}

.card-effect-noshadow {
	animation: topdown 700ms 350ms backwards;
	transition: .5s all ease-in-out;		
}

.card-effect-noshadow:hover {
    transform: translateY(-15px);    
}

@media(max-width: 600px){    
    .card-effect-shadow:hover {
        transform: translateY(0px) !important;
        box-shadow: none !important;
    }    
	
	.card-effect-noshadow:hover {
        transform: translateY(0px) !important;
        box-shadow: none !important;
    }  
}

/* ============  */

/* Classes das animações */
.topdown {
    animation: topdown 700ms 350ms backwards;
}

.bottomup {  
    animation: bottomup 700ms 350ms backwards;  
}  

.leftright {  
    animation: leftright 700ms 350ms backwards;  
}  

.rightleft {  
    animation: rightleft 700ms 350ms backwards;  
}  

.fadein {  
    animation: fadein 700ms 350ms backwards;  
}  

.animation-scaleup {  
    animation: scaleup 700ms 350ms backwards;  
}  

.rotate {  
    animation: rotate 700ms 350ms backwards;  
}  

/* Exemplo de animação com tempo maior */  
.topdown-delayed {  
    animation: topdown 1s 500ms backwards; /* 1 segundo de duração, 500ms de atraso */  
}  

.bottomup-delayed {  
    animation: bottomup 1s 500ms backwards;  
}  

.leftright-delayed {  
    animation: leftright 1s 500ms backwards;  
}  

.rightleft-delayed {  
    animation: rightleft 1s 500ms backwards;  
}  

.fadein-delayed {  
    animation: fadein 1s 500ms backwards;  
}  

.scaleup-delayed {  
    animation: scaleup 1s 500ms backwards;  
}  

.rotate-delayed {  
    animation: rotate 1s 500ms backwards;  
} 


/* keyframes de animações */
@keyframes topdown {
    
    0% {
        opacity: 0;
        transform: translateY(-15px);
    }
    
    100% {
        opacity: 1;
        transform: translateY(0px);
    }
    
}

@keyframes bottomup {  
    0% {  
        opacity: 0;  
        transform: translateY(15px);  
    }  
    100% {  
        opacity: 1;  
        transform: translateY(0);  
    }  
}

@keyframes leftright {  
    0% {  
        opacity: 0;  
        transform: translateX(-15px);  
    }  
    100% {  
        opacity: 1;  
        transform: translateX(0);  
    }  
}

@keyframes rightleft {  
    0% {  
        opacity: 0;  
        transform: translateX(15px);  
    }  
    100% {  
        opacity: 1;  
        transform: translateX(0);  
    }  
}  

@keyframes fadein {  
    0% {  
        opacity: 0;  
    }  
    100% {  
        opacity: 1;  
    }  
}

@keyframes scaleup {  
    0% {  
        opacity: 0;  
        transform: scale(0.5);  
    }  
    100% {  
        opacity: 1;  
        transform: scale(1);  
    }  
}

@keyframes rotate {  
    0% {  
        opacity: 0;  
        transform: rotate(45deg);  
    }  
    100% {  
        opacity: 1;  
        transform: rotate(0);  
    }  
}  

/* ================== */

.texto-gradiente {
   background: linear-gradient(270deg, #09C9F0 0%, #09ECF8 100%);
   background-size: 400%;
   -webkit-background-clip: text;
   -webkit-text-fill-color: transparent;
}
