.elementor-2315 .elementor-element.elementor-element-466e1cd{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--z-index:3000;}.elementor-2315 .elementor-element.elementor-element-466e1cd:not(.elementor-motion-effects-element-type-background), .elementor-2315 .elementor-element.elementor-element-466e1cd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1F000085;}.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-2315 .elementor-element.elementor-element-ddc9780{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:767px){.elementor-2315 .elementor-element.elementor-element-466e1cd.e-con{--align-self:center;}.elementor-2315 .elementor-element.elementor-element-b7d8d9e{z-index:3000;}.elementor-2315 .elementor-element.elementor-element-b7d8d9e img{max-width:8%;}}@media(min-width:768px){.elementor-2315 .elementor-element.elementor-element-466e1cd{--width:100%;}}/* Start custom CSS for image, class: .elementor-element-b7d8d9e *//* CLASSE GERAL PARA O CONTAINER PRINCIPAL: header-shrink */
/* CLASSE PARA O WIDGET DE IMAGEM: logo-header */

/* ------------------------------------------- */
/* 1. TRANSIÇÃO, TAMANHO INICIAL e LARGURA TOTAL (ESTADO INICIAL) */
/* ------------------------------------------- */

.header-shrink,
.header-shrink .logo-header .elementor-widget-container,
.header-shrink .logo-header img {
    transition: all 0.3s ease-in-out !important; 
}

.header-shrink {
    width: 100vw !important; 
    position: relative; 
    left: 0 !important;

    /* NOVO: Garante que o conteúdo esteja centralizado verticalmente no estado inicial */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important; /* Mantenha se só tiver o logo, ou se tiver um menu, ajuste */
}

/* 2. ESTADO INICIAL (Define o tamanho grande do logo) */

.header-shrink .logo-header img {
    max-height: 140px !important; 
    height: auto !important;
    width: auto !important;
}

.header-shrink .logo-header .elementor-widget-container {
     margin: 0 !important;
     padding: 0 !important;
}


/* ------------------------------------------- */
/* 3. ESTADO STICKY (APÓS ROLAGEM - DESKTOP/TABLET) */
/* ------------------------------------------- */

/* 3.1. Diminui a Altura do Header (FINO) */
.header-shrink.elementor-sticky--effects {
    padding-top: 10px !important;  
    padding-bottom: 10px !important;
    min-height: 50px !important;
    left: 0 !important; 
    
    /* NOVO: Garante a centralização vertical no estado sticky desktop também */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important; 
}

/* 3.2. CRUCIAL: Reduz o Tamanho do Wrapper do Widget */
.header-shrink.elementor-sticky--effects .logo-header .elementor-widget-container {
    margin: 0 !important; 
    padding: 0 !important; 
    max-height: 60px !important; 
}

/* 3.3. CRUCIAL: Reduz a altura da Imagem (filho) */
.header-shrink.elementor-sticky--effects .logo-header img {
    max-height: 80px !important;
    height: auto !important;
}


/* ------------------------------------------- */
/* 4. RESPONSIVIDADE (SMARTPHONE) */
/* ------------------------------------------- */

@media (max-width: 767px) {
    
    /* 4.1. Tamanho INICIAL no Mobile (Imagem) - Redefinindo para um valor mais realista */
    .header-shrink .logo-header img {
        /* *** AJUSTE: Altura inicial realista para mobile (Ex: 80px) *** */
        /* Isso deve ajudar a suavizar a transição para 30px, evitando um "salto" */
        max-height: 110px !important;
        /* Garanta que não tenha uma largura máxima que possa esticar demais */
        max-width: 80% !important; 
    }

    /* 4.2. ESTADO STICKY NO MOBILE (Altura ULTRA FINA) */
    .header-shrink.elementor-sticky--effects {
        /* AJUSTE: Altura mínima reduzida para evitar margem excessiva */
        /* Deixamos o padding definir a altura, e min-height fica como backup baixo */
        padding-top: 5px !important; 
        padding-bottom: 5px !important;
        min-height: 50px !important; /* Valor bem menor para evitar espaço em excesso */
        
        /* Centralização Vertical e Horizontal (mantido) */
        display: flex !important;
        align-items: center !important; 
        justify-content: center !important;
    }
    
    /* 4.3. CRUCIAL: Reduz o Tamanho do Wrapper do Widget no Mobile */
    .header-shrink.elementor-sticky--effects .logo-header .elementor-widget-container {
        margin: 0 !important;
        padding: 0 !important;
        /* *** AJUSTE ESTA ALTURA FINAL (Ex: 30px) *** */
        max-height: 30px !important; 
    }

    /* 4.4. CRUCIAL: Reduz a altura da Imagem (filho) no Mobile */
    .header-shrink.elementor-sticky--effects .logo-header img {
        /* Faz o logo caber perfeitamente no max-height do wrapper */
        max-height: 30px !important;
        height: auto !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-466e1cd *//* ------------------------------------------- */
/* 1. OTIMIZAÇÃO, TRANSIÇÃO E LARGURA TOTAL (ESTADO INICIAL E GERAL) */
/* ------------------------------------------- */

/* NOVO: ACELERAÇÃO DE HARDWARE e Otimização Geral do Container */
.header-shrink {
    will-change: transform, height, filter; /* Diz ao navegador o que irá mudar */
    
    width: 100vw !important; /* Mantém largura total */
    position: relative;
    left: 0 !important;
    
    /* Força Centralização Flexbox e prepara GPU (para transição mais suave) */
    display: flex !important;
    align-items: center !important; 
    justify-content: center !important;
    transition: all 0.3s ease-in-out; /* Transição suave */
}

/* Transições e elementos que se movem */
.header-shrink,
.header-shrink .logo-header .elementor-widget-container,
.header-shrink .logo-header img {
    transition: all 0.3s ease-in-out !important;
}

/* 2. ESTADO INICIAL (Define o tamanho grande do logo) */

.header-shrink .logo-header img {
    max-height: 140px !important; 
    height: auto !important;
    width: auto !important;
}

.header-shrink .logo-header .elementor-widget-container {
     margin: 0 !important;
     padding: 0 !important;
}


/* ------------------------------------------- */
/* 3. ESTADO STICKY (APÓS ROLAGEM - DESKTOP/TABLET) */
/* ------------------------------------------- */

.header-shrink.elementor-sticky--effects {
    padding-top: 10px !important;  
    padding-bottom: 15px !important;
    min-height: 50px !important;
    left: 0 !important; 
    
    /* Força Centralização e GPU (mantido) */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important; 
    transform: translateZ(0); /* NOVO: Força a renderização por GPU */

    /* === FILTRO FROSTED GLASS === */
    backdrop-filter: blur(10px) saturate(150%);
    -webkit-backdrop-filter: blur(10px) saturate(150%);
}

/* 3.2. CRUCIAL: Reduz o Tamanho do Wrapper do Widget */
.header-shrink.elementor-sticky--effects .logo-header .elementor-widget-container {
    margin: 0 !important; 
    padding: 0 !important; 
    max-height: 60px !important; 
}

/* 3.3. CRUCIAL: Reduz a altura da Imagem (filho) */
.header-shrink.elementor-sticky--effects .logo-header img {
    max-height: 80px !important;
    height: auto !important;
}


/* ------------------------------------------- */
/* 4. RESPONSIVIDADE (SMARTPHONE) - OTIMIZADA PARA PERFORMANCE */
/* ------------------------------------------- */

@media (max-width: 767px) {
    
    /* 4.1. Tamanho INICIAL no Mobile (Imagem) - Valor ajustado para menos salto */
    .header-shrink .logo-header img {
        max-height: 120px !important; /* Mais próximo do tamanho final (menos salto) */
    }

    /* 4.2. ESTADO STICKY NO MOBILE (Altura ULTRA FINA) */
    .header-shrink.elementor-sticky--effects {
        padding-top: 5px !important;
        padding-bottom: 5px !important;
        min-height: 40px !important; /* Ajustado para um valor mais realista e menor */
        
        display: flex !important;
        align-items: center !important; 
        justify-content: center !important;
        
        /* NOVO: ACELERAÇÃO DE HARDWARE */
        transform: translateZ(0);
        
        /* NOVO: FILTRO MAIS LEVE PARA ALÍVIO DA GPU */
        backdrop-filter: blur(5px) saturate(120%); /* Filtro mais suave */
        -webkit-backdrop-filter: blur(5px) saturate(120%);
    }
    
    /* 4.3. CRUCIAL: Reduz o Tamanho do Wrapper do Widget no Mobile */
    .header-shrink.elementor-sticky--effects .logo-header .elementor-widget-container {
        margin: 0 !important;
        padding: 0 !important;
        max-height: 30px !important; /* Ajustado para ser mais fino */
    }

    /* 4.4. CRUCIAL: Reduz a altura da Imagem (filho) no Mobile */
    .header-shrink.elementor-sticky--effects .logo-header img {
        max-height: 30px !important;
        height: auto !important;
    }
}
/* Garantia de que o header fique no topo exato, sem saltos */
.header-shrink.elementor-sticky--active {
    top: 0 !important;

    /* Define a margem do topo para ser o tamanho do seu offset de âncora */
    /* Isso pode corrigir o salto: */
    margin-top: 0 !important; 

    /* Aumente o Z-INDEX para ter certeza que está acima de tudo */
    z-index: 9999;
}/* End custom CSS */