/*
===================================
Root
===================================
*/

:root{
	--transition-all:all .2s ease-in-out;
}

/*
===================================
Geral
===================================
*/
.shadow-1{
    filter: drop-shadow(0 30.31px 45.47px rgba(0, 0, 114, .1));
}
.foco-1{
    position: relative;
    z-index: 2;
    display: inline-block;
}
.foco-1::before{
    content:"";
    position:absolute;
    top: 8%;
    left: -1.5%;
    width: 0%;
    height: 100%;
    background: #ffdcdc;
    z-index: -1;
    border-radius: 1rem;
    animation:slide-right 800ms ease-in-out forwards;
    animation-delay: 2s;
}
@keyframes slide-right{
    to{width: 103%;}
}


/*Estilização de botão 1 - INÍCIO*/
/*.tid-button a{
  position: relative;
    padding: 12px 20px;
    border: 1px solid rgba(0, 0, 0, .1);
    font-size: 1rem;
    cursor: pointer;
    position: relative;
    background: linear-gradient(90deg, #5bfcc4, #f593e4, #71a4f0);
    border-radius: 12px;
    color: #252689 !important;
    box-shadow: inset 0px 0px 5px #ffffffa9, inset 0px 35px 30px #efe5f1, 0px 5px 10px #e1f3f7;
    text-shadow: 1px 1px 1px #fffafa;
    transition: all 0.3s linear;
}
.tid-button a::before{
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    border-radius: 12px;
    filter: blur(0);
    z-index: 1;
    box-shadow: none;
    background: linear-gradient(90deg, #5bfcc4, #f593e4, #71a4f0);
    transition: all 0.3s linear;
    opacity: 0;
    height: 50%;
    bottom: -100%;
}

.tid-button a:hover::before {
    filter: blur(15px);
    opacity: 1;
    transition: all 0.3s linear;
}*/
.tid-button a{
  position: relative;
    padding: 12px 20px;
    border: 1px solid rgba(0, 0, 0, .1);
    font-size: 1rem;
    cursor: pointer;
    position: relative;
    background: linear-gradient(90deg, #5bfcc4, #f593e4, #71a4f0, #5bfcc4);
    background-size: 200%;
    background-position-x: 0%;
    border-radius: 12px;
    color: #252689 !important;
    box-shadow: inset 0px 0px 5px #ffffffa9, inset 0px 35px 30px #efe5f1, 0px 5px 10px #e1f3f7;
    text-shadow: 1px 1px 1px #fffafa;
    transition: all 0.3s linear;
/*    z-index: 2;*/
    animation: bg-btn-move 5s linear infinite;
}
.tid-button a::before{
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    border-radius: 12px;
    filter: blur(0);
    z-index: 1;
    box-shadow: none;
    background: linear-gradient(90deg, #5bfcc4, #f593e4, #71a4f0, #5bfcc4);
    background-size: 200%;
    background-position-x: 0%;
    transition: all 0.3s linear;
    opacity: 0;
    height: 50%;
    bottom: -100%;
    animation: bg-btn-move 5s linear infinite;
}
@keyframes bg-btn-move{
    0%{
        background-position-x: 0%;
    }
    50%{
        background-position-x: -100%;
    }
    100%{
        background-position-x: -200%;
    }
}
.tid-button a:hover::before {
    filter: blur(15px);
    opacity: 1;
    transition: all 0.3s linear;
}
.tid-button a:active::before {
    filter: blur(5px);
    transform: translateY(1px);
}
.tid-button a:active {
    box-shadow:
    inset 0px 0px 5px #ffffffa9,
    inset 0px 35px 30px #d0f2ff;
}
/*Estilização de botão 1 - FIM*/

.tid-button a .elementor-button-content-wrapper{
    position: relative;
    z-index: 1;
}
.tid-button .elementor-button-text{
    align-self: center;
}
.tid-button .elementor-button-icon{
    padding: .3rem;
    border-radius: .3rem;
    border: 1px solid rgb(16 16 16 / 14%);
}
.tid-button .elementor-button-icon svg{
    stroke-width:3rem;
    stroke:currentColor;
}

/*Animação subir e descer*/

.move-up-down{
    animation:moveUpDown 3s ease-in-out infinite alternate;
    will-change: auto;
}
.move-up-down:nth-of-type(2){
    animation-delay: 1.5s;
}

@keyframes moveUpDown{
    0%{
        transform:translate(0%, 0%);
    }
    100%{
        transform:translate(0%, -10%);
    }
}

/*
===================================
Templates - Loop
===================================
*/

div.linha.elementor-widget-divider{
	margin-top:auto;
}

/*
===================================
Menu
===================================
*/

[data-header*="type-1"] [data-sticky*="yes"] {
/*    box-shadow: 0 30px 30px #e1e1ec8f;*/
    -webkit-filter: drop-shadow(0 30.31px 45.47px rgba(0, 0, 114, .1));
    filter: drop-shadow(0 30.31px 45.47px rgba(0, 0, 114, .1));
}

/*
===================================
Home
===================================
*/

@media (width > 1024px){
    .p-sticky{
        position:sticky;
        top:20vh;
    }

    .h-fit-content{
        height:fit-content;
    }
}

@media (width <= 1024px){
    #servicos{
        background-attachment:fixed;
    }
}

/*Personalizando lista*/
.list-morden ul.elementor-icon-list-items{
    gap:12px 0px;
}

.list-morden ul.elementor-icon-list-items li.elementor-icon-list-item{
    padding: 0.7rem 1rem;
    border-radius: .5rem;
    background: white;
    filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, .06));
}

.list-morden ul.elementor-icon-list-items li.elementor-icon-list-item span.elementor-icon-list-icon{
    background: #dbffe7;
    border-radius: 50px;
    aspect-ratio: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    padding:.3rem;
}

.list-morden ul.elementor-icon-list-items li.elementor-icon-list-item span.elementor-icon-list-icon svg{
    margin:0;
}

/*
===================================
Footer
===================================
*/

/*WhatsApp*/
a.btn-contact-footer {
    display: flex;
    align-items: center;
    white-space: nowrap;
    width: fit-content;
    gap: 10px;
    border: 2px solid var(--theme-palette-color-1);
    padding: .6rem 1rem;
    border-radius: .5rem;
    color:var(--theme-palette-color-1);
    font-size: 1rem;
    font-weight: 600;
    transition:all 300ms linear;
    will-change: auto;
}
a.btn-contact-footer:hover {
    transform:scale(1.01);
    filter: drop-shadow(0 30.31px 45.47px rgba(0, 0, 114, 1));
    transition:all 300ms linear;
    will-change: auto;
}
a.btn-contact-footer svg {
    width: 26px;
    height: 26px;
}
a.btn-contact-footer svg *{
    fill:var(--theme-palette-color-1);
}

/*Email*/
a.btn-contact-footer-email {
    display: flex;
    align-items: center;
    white-space: nowrap;
    width: fit-content;
    gap: 10px;
    color:var(--theme-text-color);
    font-size: 1rem;
    font-weight: 400;
    will-change: auto;
}
a.btn-contact-footer-email svg {
    width: 24px;
    height: 24px;
}
a.btn-contact-footer-email svg *{
    stroke:var(--theme-text-color);
}

/*lista menu footer*/
footer#footer div[data-column*="widget-area"] ul.widget-menu{
    display: flex;
    flex-direction: column;
    gap: 8px;
    font-size: 1rem;
}

@media (width <= 1024px){
    footer#footer .widget_nav_menu{
        margin-top:20px;
    }
}

/*Linha de baixo*/
footer#footer div[data-row="bottom"] .ct-footer-copyright{
    display:flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
}
@media(width <= 1024px){
    footer#footer div[data-row="bottom"] .ct-footer-copyright{
        display:flex;
        flex-direction:column;
        align-items: center;
        gap: 0.5rem;
        margin-bottom: 30px;
    }
}

/*
===================================
GDPR - LGPD
===================================
*/

div#cmplz-manage-consent .cmplz-manage-consent{
    left:40px;
    right:unset;
}

@media (width >= 768px){
    div#cmplz-cookiebanner-container .cmplz-cookiebanner{
        left:10px;
        right:unset;
    }
}

@media (width <= 768px){
    div#cmplz-cookiebanner-container .cmplz-cookiebanner{
        left:10px;
        right:unset;
        width: calc(100% - 20px);
        bottom: 10px;
        grid-gap:0px;
    }
}

/*
===================================
Estilos para Glossário
===================================
*/

/* TIAGO - AJUSTES */

main#main.enwp-site-main{
	margin-top:unset;
}

@media(max-width: 1024px){
	main#main.enwp-site-main{
		margin-top:unset;
	}
}

/* Section 1 - Titulo e descrição */

@media (min-width: 768px){
    .enwp-entry-content {
        margin-left: auto;
        margin-right: auto;
    }
    .glossario_page .enwp-container-banner {
        max-width: 1140px;
        padding:0 15px;
    }
    .glossario_page .enwp-row-banner {
        margin-right: 0px;
        margin-left: 0px;
    }
}

/* Section 2 - lista alfabética */

.list-inline.enwp-menu-letras-alfabeto {
    margin-left: 0px;
}
.enwp-menu-letras-alfabeto {
    margin: 0px;
}

/* Section 3 - cards */

.enwp-card-mb-3{
    height: calc(100% - 15px);
}

.enwp-card-mb-3 .enwp-card-body.card-body{
    height:inherit;
    display: flex;
    flex-direction: column;
}

.enwp-card-mb-3 .enwp-card-body.card-body a.enwp-glossario-buttom {
    margin-top: auto;
    align-self: start;
}

/* Modelo de Categoria do Glossário */

.enwp-banner-header{
	margin-top:unset;
}

@media(max-width: 1024px){
	.enwp-banner-header{
		margin-top:unset;
	}
}
