.elementor-160 .elementor-element.elementor-element-ef7afb5{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:1em;--padding-bottom:1em;--padding-left:0em;--padding-right:0em;}.elementor-160 .elementor-element.elementor-element-e073436{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-theme-site-logo .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-160 .elementor-element.elementor-element-19eeeb9 img{width:100%;max-width:100%;height:100px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-160 .elementor-element.elementor-element-e58c73f .elementor-menu-toggle{margin:0 auto;background-color:#FFFFFF;}.elementor-160 .elementor-element.elementor-element-e58c73f .elementor-nav-menu--dropdown a, .elementor-160 .elementor-element.elementor-element-e58c73f .elementor-menu-toggle{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-160 .elementor-element.elementor-element-e58c73f .elementor-nav-menu--dropdown{background-color:#FFFFFF;}.elementor-160 .elementor-element.elementor-element-e58c73f .elementor-nav-menu--dropdown a:hover,
					.elementor-160 .elementor-element.elementor-element-e58c73f .elementor-nav-menu--dropdown a:focus,
					.elementor-160 .elementor-element.elementor-element-e58c73f .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-160 .elementor-element.elementor-element-e58c73f .elementor-nav-menu--dropdown a.highlighted{background-color:#FFFFFF;}.elementor-160 .elementor-element.elementor-element-e58c73f .elementor-nav-menu--dropdown a.elementor-item-active{color:var( --e-global-color-primary );background-color:#FFFFFF;}.elementor-160 .elementor-element.elementor-element-e58c73f div.elementor-menu-toggle{color:var( --e-global-color-primary );}.elementor-160 .elementor-element.elementor-element-e58c73f div.elementor-menu-toggle svg{fill:var( --e-global-color-primary );}.elementor-160 .elementor-element.elementor-element-e58c73f div.elementor-menu-toggle:hover, .elementor-160 .elementor-element.elementor-element-e58c73f div.elementor-menu-toggle:focus{color:var( --e-global-color-primary );}.elementor-160 .elementor-element.elementor-element-e58c73f div.elementor-menu-toggle:hover svg, .elementor-160 .elementor-element.elementor-element-e58c73f div.elementor-menu-toggle:focus svg{fill:var( --e-global-color-primary );}.elementor-160 .elementor-element.elementor-element-e58c73f .elementor-menu-toggle:hover, .elementor-160 .elementor-element.elementor-element-e58c73f .elementor-menu-toggle:focus{background-color:#FFFFFF;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-160 .elementor-element.elementor-element-e073436{--padding-top:0em;--padding-bottom:0em;--padding-left:1em;--padding-right:1em;}.elementor-160 .elementor-element.elementor-element-19eeeb9{width:var( --container-widget-width, 80% );max-width:80%;--container-widget-width:80%;--container-widget-flex-grow:0;}.elementor-160 .elementor-element.elementor-element-e58c73f{width:var( --container-widget-width, 20% );max-width:20%;--container-widget-width:20%;--container-widget-flex-grow:0;}}@media(min-width:768px){.elementor-160 .elementor-element.elementor-element-ef7afb5{--content-width:1280px;}}@media(max-width:767px){.elementor-160 .elementor-element.elementor-element-e073436{--width:100%;--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0em;--padding-bottom:0em;--padding-left:1em;--padding-right:1em;}.elementor-160 .elementor-element.elementor-element-19eeeb9{--container-widget-width:80%;--container-widget-flex-grow:0;width:var( --container-widget-width, 80% );max-width:80%;}.elementor-160 .elementor-element.elementor-element-19eeeb9 img{width:50%;}.elementor-160 .elementor-element.elementor-element-e58c73f{width:var( --container-widget-width, 20% );max-width:20%;--container-widget-width:20%;--container-widget-flex-grow:0;}}/* Start custom CSS for container, class: .elementor-element-ef7afb5 */<style>
    /* 1. CONFIGURAÇÃO DO HEADER (ESTÁTICO NO TOPO) */
    #master-header, .elementor-160 {
        --header-height: 90px;
        --ruby-color: #BC0B0E;
        
        position: relative !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        z-index: 9999 !important;
        padding-top: 25px !important;
        padding-bottom: 25px !important;
        display: flex !important;
        align-items: center !important;
        background: #FFFFFF !important;
        border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
        overflow: visible !important; /* CRÍTICO: Permite que o menu mobile "escape" para fora e preencha a tela */
    }

    /* 2. ESTILIZAÇÃO DO MENU HAMBÚRGUER E DROPDOWN (CELULAR/TABLET) */
    @media (max-width: 1024px) {
        /* NUCLEAR OPTION: Força o container do widget a não prender o menu */
        [data-element_type="column"], 
        .elementor-widget-nav-menu, 
        .elementor-widget-container,
        .elementor-column-wrap { 
            position: static !important; /* Libera o dropdown para o pai (Header) */
        }

        .elementor-menu-toggle {
            outline: none !important;
            box-shadow: none !important;
            border: none !important;
            background: none !important;
        }

        .elementor-menu-toggle svg, .elementor-menu-toggle i {
            fill: var(--ruby-color) !important;
            color: var(--ruby-color) !important;
            width: 25px !important;
            height: auto !important;
        }

        /* Menu Dropdown - Agora relativo ao Header inteiro (Static Breakout) */
        .elementor-nav-menu--dropdown {
            position: absolute !important;
            top: 100% !important;
            left: 0 !important;
            right: 0 !important;
            width: 100vw !important;
            max-width: 100vw !important;
            /* Se o header não for Full Width, este calc garante as bordas da tela */
            margin-left: calc(-50vw + 50%) !important; 
            background-color: #FFFFFF !important;
            border-top: 1px solid rgba(0,0,0,0.05) !important;
            box-shadow: 0 40px 100px rgba(0, 0, 0, 0.15) !important;
            z-index: 999999 !important;
            padding: 15px 0 !important;
        }

        /* Reset AGGRESSIVO de Listas */
        .elementor-nav-menu--dropdown ul {
            display: block !important;
            width: 100% !important;
            margin: 0 !important;
            padding: 0 !important;
            list-style: none !important;
        }

        .elementor-nav-menu--dropdown li {
            display: block !important;
            width: 100% !important;
            margin: 0 !important;
            padding: 0 !important;
        }

        /* Itens do Menu (Links) */
        .elementor-nav-menu--dropdown .elementor-item {
            font-family: 'Sora', sans-serif !important;
            font-weight: 700 !important;
            text-transform: uppercase !important;
            font-size: 15px !important;
            color: #1A1A1A !important;
            padding: 20px 30px !important;
            border-bottom: 1px solid rgba(0,0,0,0.03) !important;
            text-align: left !important;
            display: block !important;
            width: 100% !important;
            box-sizing: border-box !important;
            white-space: nowrap !important;
        }

        .elementor-nav-menu--dropdown .elementor-item:hover {
            color: var(--ruby-color) !important;
            background: rgba(188, 11, 14, 0.02) !important;
            padding-left: 35px !important;
            transition: all 0.3s ease !important;
        }

        body { overflow-x: hidden !important; }
    }

    /* 3. ESTILIZAÇÃO DO MENU DESKTOP (Widget e58c73f) */
    .elementor-element-e58c73f .elementor-nav-menu a {
        font-family: 'Sora', sans-serif !important;
        font-weight: 700 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.1em !important;
        font-size: 13px !important;
        transition: all 0.3s ease !important;
    }

    /* Hover States do Menu */
    .elementor-element-e58c73f .elementor-nav-menu a:hover,
    .elementor-element-e58c73f .elementor-nav-menu a.elementor-item-active {
        color: var(--ruby-color) !important;
    }

    /* Underline Customizado */
    .elementor-element-e58c73f .elementor-nav-menu .menu-item a::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 50%;
        width: 0;
        height: 2px;
        background: var(--ruby-color);
        transition: all 0.3s ease;
        transform: translateX(-50%);
    }

    .elementor-element-e58c73f .elementor-nav-menu .menu-item a:hover::after {
        width: 15px;
    }

    /* 3. ESTILIZAÇÃO DA LOGO (Widget 19eeeb9) */
    .elementor-element-19eeeb9 img {
        transition: all 0.4s ease !important;
        max-height: 50px !important;
        width: auto !important;
    }

    .header-scrolled .elementor-element-19eeeb9 img {
        max-height: 40px !important;
        transform: scale(0.95);
    }

    /* 4. BARRA DE PROGRESSO */
    .header-progress-line {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 0%;
        height: 2px;
        background: var(--ruby-color);
        z-index: 10000;
        transition: width 0.1s linear;
    }
</style>

<div class="header-progress-line" id="master-progress"></div>
<div class="header-progress-line" id="master-progress"></div>

<script>
(function() {
    // Header Estático - Mantemos apenas a barra de progresso para o toque premium
    const progress = document.getElementById('master-progress');
    
    const handleProgress = () => {
        const currentScroll = window.pageYOffset || document.documentElement.scrollTop;
        const totalHeight = document.documentElement.scrollHeight - window.innerHeight;
        const scrollPercent = (currentScroll / totalHeight) * 100;
        if (progress) progress.style.width = scrollPercent + '%';
    };

    window.addEventListener('scroll', handleProgress, { passive: true });
})();
</script>/* End custom CSS */