.elementor-607 .elementor-element.elementor-element-654529b{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:22px;--padding-bottom:22px;--padding-left:22px;--padding-right:22px;}.elementor-607 .elementor-element.elementor-element-654529b:not(.elementor-motion-effects-element-type-background), .elementor-607 .elementor-element.elementor-element-654529b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-1a0b4fe );}.elementor-607 .elementor-element.elementor-element-f3621b1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-607 .elementor-element.elementor-element-51047b2 img{width:125px;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-607 .elementor-element.elementor-element-268287e .elementor-icon-wrapper{text-align:center;}.elementor-607 .elementor-element.elementor-element-268287e.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-be62bef );}.elementor-607 .elementor-element.elementor-element-268287e.elementor-view-framed .elementor-icon, .elementor-607 .elementor-element.elementor-element-268287e.elementor-view-default .elementor-icon{color:var( --e-global-color-be62bef );border-color:var( --e-global-color-be62bef );}.elementor-607 .elementor-element.elementor-element-268287e.elementor-view-framed .elementor-icon, .elementor-607 .elementor-element.elementor-element-268287e.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-be62bef );}.elementor-607 .elementor-element.elementor-element-268287e .elementor-icon{font-size:35px;}.elementor-607 .elementor-element.elementor-element-268287e .elementor-icon svg{height:35px;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(0px/2);}.elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(0px/2);}.elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(0px/2);}.elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-0px/2);}.elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-0px/2);}.elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-icon i{color:var( --e-global-color-be62bef );transition:color 0.3s;}.elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-icon svg{fill:var( --e-global-color-be62bef );transition:fill 0.3s;}.elementor-607 .elementor-element.elementor-element-02fc295{--e-icon-list-icon-size:18px;--icon-vertical-offset:0px;}.elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-icon{padding-inline-end:5px;}.elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-item > a{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:400;}.elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-text{color:var( --e-global-color-be62bef );transition:color 0.3s;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for icon-list, class: .elementor-element-02fc295 */.elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-icon {
    color: #ffffff;
    text-align: center;
  }
  
  .elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-item a {
      padding: 12px 12px !important;
      border-radius: 3px;
      transition: all .3s ease;
  }
  
  .elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-item.active a,
  .elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-item:hover a {
      background: #2170e8;
  }
  
  .elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-item.active span,
  .elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-item:hover span,
  .elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-item.active span i,
  .elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-item:hover span i{
      color: #ffffff;
  }
  
  .elementor-607 .elementor-element.elementor-element-02fc295 a:focus{
      outline: none;
  }
  
  /* Garante que o item ocupe a largura total e alinhe os ícones */
.elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-item a {
    display: flex !important;
    align-items: center;
    padding: 12px 0 !important; /* Ajuste o padding vertical se necessário */
}

/* Define uma largura fixa para a área do ícone para que fiquem alinhados quando o menu fechar */
.elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-icon {
    width: 80px; /* Mesma largura do menu fechado */
    display: flex;
    justify-content: center;
    margin: 0 !important;
}

/* Ajuste do texto para não quebrar linha e ter um pequeno espaçamento do ícone */
.elementor-607 .elementor-element.elementor-element-02fc295 .elementor-icon-list-text {
    padding-left: 10px;
    white-space: nowrap;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-654529b */.elementor-607 .elementor-element.elementor-element-654529b {
    --width: 250px;
    --narrow-width: 80px;
    width: var(--width);
    overflow: auto;
    position: fixed;
    left: 0;
    top: 0;
    height: 100vh;
    transition: all .3s ease !important;
    overflow-x: hidden;
    z-index: 9999;
    -ms-overflow-style: none;
}

.elementor-607 .elementor-element.elementor-element-654529b::-webkit-scrollbar { display: none; }

.sidebar-toggle { cursor: pointer; transition: all .3s ease; }

/* Estado Recolhido */
body.opening .elementor-607 .elementor-element.elementor-element-654529b { width: var(--narrow-width) !important; }

.elementor-607 .elementor-element.elementor-element-654529b .logo, .elementor-607 .elementor-element.elementor-element-654529b .elementor-icon-list-text, .elementor-607 .elementor-element.elementor-element-654529b .nome {
    transition: all 0.3s ease;
}

body.opening .elementor-607 .elementor-element.elementor-element-654529b .logo, 
body.opening .elementor-607 .elementor-element.elementor-element-654529b .elementor-icon-list-text,
body.opening .elementor-607 .elementor-element.elementor-element-654529b .nome {
    opacity: 0;
    pointer-events: none;
}

/* EMPURRAR O CONTEÚDO - Ajustado para o seu site */
#page, .site-main, #content {
    margin-left: var(--width);
    transition: all 0.3s ease !important;
}

body.opening #page, body.opening .site-main, body.opening #content {
    margin-left: var(--narrow-width);
}

/* Responsivo */
@media (max-width: 1024px) {
    #page, .site-main, #content { margin-left: 0; }
    body.opening .elementor-607 .elementor-element.elementor-element-654529b { width: var(--width) !important; transform: translateX(-100%); }
    body.open .elementor-607 .elementor-element.elementor-element-654529b { transform: translateX(0); }
}

/* Afasta o ícone de fechar da margem direita quando o menu está recolhido */
body.opening .elementor-607 .elementor-element.elementor-element-654529b .sidebar-toggle {
    margin-right: 8px !important; /* Ajustei para 8px para um respiro visual melhor, mas pode mudar para 3px se preferir */
    transition: all 0.3s ease;
}

/* Se o ícone estiver dentro de um widget de ícone do Elementor, garantimos que o container dele também respeite isso */
body.opening .elementor-607 .elementor-element.elementor-element-654529b .sidebar-toggle .elementor-widget-container {
    display: flex;
    justify-content: flex-end;
}

/* Quando o menu RECOLHE (body.opening) */
body.opening .elementor-607 .elementor-element.elementor-element-654529b .logo {
    opacity: 0 !important;
    visibility: hidden !important; /* Esconde completamente o elemento */
    pointer-events: none !important; /* Impede cliques na logo invisível */
    transition: all 0.2s ease;
}

/* Garante que o ícone de hambúrguer fique centralizado ou com o recuo correto sem nada por baixo */
body.opening .elementor-607 .elementor-element.elementor-element-654529b .sidebar-toggle {
    z-index: 10; /* Garante que o ícone fique por cima de qualquer resquício */
}

/* Se a logo estiver em um container que está ocupando espaço, vamos encolher esse container também */
body.opening .elementor-607 .elementor-element.elementor-element-654529b .elementor-widget-image {
    width: 0 !important;
    overflow: hidden;
}

/* --- ESTE BLOCO SÓ AFETA CELULAR E TABLET --- */
@media (max-width: 1024px) {
    /* Resetamos as margens do desktop para o mobile */
    body #page, body .site-main, body #content {
        margin-left: 0 !important;
        transition: all 0.3s ease !important;
    }

    /* Escondemos o menu para a esquerda */
    .elementor-607 .elementor-element.elementor-element-654529b {
        transform: translateX(-250px) !important;
        width: 250px !important;
        left: 0 !important;
    }

    /* Quando clicar e abrir, o menu entra na tela */
    body.left .elementor-607 .elementor-element.elementor-element-654529b {
        transform: translateX(0) !important;
    }

    /* E o site inteiro 'foge' para a direita */
    body.left #page, 
    body.left .site-main, 
    body.left #content {
        transform: translateX(250px) !important;
    }

    /* Evita que apareça barra de rolagem lateral no celular */
    html, body {
        overflow-x: hidden !important;
    }
}
/* --- FIM DO BLOCO MOBILE --- */

/* AJUSTE PARA O BOTÃO HAMBÚRGUER NO MOBILE */
@media (max-width: 1024px) {
    /* 1. Garante que o menu lateral não esconda o botão de abrir */
    .elementor-607 .elementor-element.elementor-element-654529b {
        overflow: visible !important; /* Permite que o botão 'saia' do container se necessário */
    }

    /* 2. Posiciona o botão de hambúrguer de forma fixa no topo da tela */
    .elementor-607 .elementor-element.elementor-element-654529b .sidebar-toggle {
        position: fixed !important;
        left: 260px !important; /* Coloca ele logo após o limite do menu escondido */
        top: 20px !important;
        background: #004AAD; /* Cor azul do seu site para dar destaque */
        padding: 10px;
        border-radius: 0 5px 5px 0;
        z-index: 99999 !important;
        display: flex !important;
        box-shadow: 2px 2px 10px rgba(0,0,0,0.2);
    }

    /* 3. Ajusta a cor do ícone para branco para contrastar com o fundo azul */
    .elementor-607 .elementor-element.elementor-element-654529b .sidebar-toggle i, 
    .elementor-607 .elementor-element.elementor-element-654529b .sidebar-toggle svg {
        color: #ffffff !important;
        fill: #ffffff !important;
        width: 25px;
        height: 25px;
    }

    /* 4. Quando o menu ABRE, o botão acompanha o movimento */
    body.left .elementor-607 .elementor-element.elementor-element-654529b .sidebar-toggle {
        left: 250px !important; /* Ajusta a posição quando o menu está na tela */
    }
}/* End custom CSS */