.elementor-148 .elementor-element.elementor-element-58c7f9e{--display:flex;--min-height:100px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;}.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-148 .elementor-element.elementor-element-8855ee0{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-148 .elementor-element.elementor-element-8855ee0 img{border-radius:0px 0px 0px 0px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-148 .elementor-element.elementor-element-368b213 .elementor-button{background-color:#003CFF00;font-family:"Inter", Sans-serif;font-size:1vw;font-weight:500;text-transform:uppercase;letter-spacing:1.9px;fill:var( --e-global-color-107fc6f );color:var( --e-global-color-107fc6f );border-style:none;border-radius:4px 4px 4px 4px;padding:12px 25px 12px 25px;}.elementor-148 .elementor-element.elementor-element-368b213{width:var( --container-widget-width, 100vw );max-width:100vw;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:100vw;--container-widget-flex-grow:0;}.elementor-148 .elementor-element.elementor-element-368b213.elementor-element{--align-self:center;--order:99999 /* order end hack */;}.elementor-148 .elementor-element.elementor-element-368b213 .elementor-button:hover, .elementor-148 .elementor-element.elementor-element-368b213 .elementor-button:focus{color:var( --e-global-color-accent );}.elementor-148 .elementor-element.elementor-element-368b213 .elementor-button:hover svg, .elementor-148 .elementor-element.elementor-element-368b213 .elementor-button:focus svg{fill:var( --e-global-color-accent );}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-148 .elementor-element.elementor-element-0dfc453{--divider-border-style:solid;--divider-color:#00000000;--divider-border-width:1px;}.elementor-148 .elementor-element.elementor-element-0dfc453 .elementor-divider-separator{width:100%;}.elementor-148 .elementor-element.elementor-element-0dfc453 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.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-148 .elementor-element.elementor-element-114b900{width:var( --container-widget-width, 0% );max-width:0%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:0%;--container-widget-flex-grow:0;--nav-menu-icon-size:29px;}.elementor-148 .elementor-element.elementor-element-114b900.elementor-element{--align-self:center;--order:99999 /* order end hack */;--flex-grow:0;--flex-shrink:0;}.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown .elementor-item, .elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"Instrument Serif", Sans-serif;font-size:39px;font-weight:400;font-style:italic;}.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown a{padding-left:0px;padding-right:0px;padding-top:17px;padding-bottom:17px;}.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu__container.elementor-nav-menu--dropdown{margin-top:-40px !important;}.elementor-148 .elementor-element.elementor-element-114b900 div.elementor-menu-toggle{color:var( --e-global-color-primary );}.elementor-148 .elementor-element.elementor-element-114b900 div.elementor-menu-toggle svg{fill:var( --e-global-color-primary );}.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle{background-color:#FFFFFF00;border-width:0px;}.elementor-148 .elementor-element.elementor-element-114b900 div.elementor-menu-toggle:hover, .elementor-148 .elementor-element.elementor-element-114b900 div.elementor-menu-toggle:focus{color:var( --e-global-color-text );}.elementor-148 .elementor-element.elementor-element-114b900 div.elementor-menu-toggle:hover svg, .elementor-148 .elementor-element.elementor-element-114b900 div.elementor-menu-toggle:focus svg{fill:var( --e-global-color-text );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-148 .elementor-element.elementor-element-58c7f9e{--content-width:1280px;}}@media(min-width:1920px){.elementor-148 .elementor-element.elementor-element-368b213{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-148 .elementor-element.elementor-element-368b213 .elementor-button{font-size:1.1em;border-radius:5px 5px 5px 5px;padding:10px 10px 10px 10px;}}@media(max-width:1024px){.elementor-148 .elementor-element.elementor-element-58c7f9e{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:9999;}.elementor-148 .elementor-element.elementor-element-8855ee0{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:start;}.elementor-148 .elementor-element.elementor-element-8855ee0.elementor-element{--align-self:center;}.elementor-148 .elementor-element.elementor-element-8855ee0 img{width:15%;max-width:15%;}.elementor-148 .elementor-element.elementor-element-368b213{padding:0px 0px 0px 0px;}.elementor-148 .elementor-element.elementor-element-368b213.elementor-element{--align-self:center;}.elementor-148 .elementor-element.elementor-element-368b213 .elementor-button{font-size:2vw;}.elementor-148 .elementor-element.elementor-element-0dfc453{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-148 .elementor-element.elementor-element-0dfc453.elementor-element{--align-self:center;}.elementor-148 .elementor-element.elementor-element-0dfc453 .elementor-divider-separator{width:0.1em;}.elementor-148 .elementor-element.elementor-element-114b900{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}}@media(max-width:767px){.elementor-148 .elementor-element.elementor-element-58c7f9e{--justify-content:space-between;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-148 .elementor-element.elementor-element-8855ee0{width:var( --container-widget-width, 0% );max-width:0%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:0%;--container-widget-flex-grow:0;}.elementor-148 .elementor-element.elementor-element-8855ee0 img{width:100%;max-width:36vw;height:36px;}.elementor-148 .elementor-element.elementor-element-368b213{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-148 .elementor-element.elementor-element-0dfc453{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-148 .elementor-element.elementor-element-0dfc453 .elementor-divider-separator{width:0.5em;margin:0 auto;margin-left:0;}.elementor-148 .elementor-element.elementor-element-0dfc453 .elementor-divider{text-align:left;}.elementor-148 .elementor-element.elementor-element-114b900{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-148 .elementor-element.elementor-element-114b900.elementor-element{--align-self:flex-end;}}/* Start custom CSS for theme-site-logo, class: .elementor-element-8855ee0 *//*.elementor-148 .elementor-element.elementor-element-8855ee0 {
    left: -16px;
}

@media (max-width: 767px) {
  .elementor-148 .elementor-element.elementor-element-8855ee0 {
      left: -10px;
  }
}*//* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-114b900 *//* ==================================================
   MENU DROPDOWN — ELEMENTOR PRO
   Desktop/Laptop/Tablet/Mobile:
   - Dropdown flutuante à direita
   - Altura automática conforme os itens
   - X dentro da margem superior do frame
   - Fundo escuro com vidro fosco
   - Hamburger com hover em quadrado
   ================================================== */


/* ==================================================
   0. CONTROLES GERAIS
   Ajuste estes valores primeiro, se necessário.
   ================================================== */

.elementor-148 .elementor-element.elementor-element-114b900 {
    --menu-top: 80px;
    --menu-right: 0px;

    --menu-width: 20vw;
    --menu-min-width: 320px;
    --menu-max-width: 420px;

    --menu-padding-top: 62px;
    --menu-padding-right: 28px;
    --menu-padding-bottom: 28px;
    --menu-padding-left: 28px;

    --menu-radius: 10px;

    --x-top-gap: 25px;
    --x-right-gap: 25px;
    --x-size: 25px;

    --item-font-size: 34px;
    --item-line-height: 1.08;
    --item-letter-spacing: -1.4px;
    --item-padding-y: 16px;

    --hamburger-width: 40px;
    --hamburger-height: 24px;
    --hamburger-line-height: 3px;

    --hover-square-size: 30px;
    --hover-square-line: 3px;
}


/* ==================================================
   1. BASE DO WIDGET
   ================================================== */

.elementor-148 .elementor-element.elementor-element-114b900 {
    position: static !important;
    width: 100% !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;

    margin-left: auto !important;
    margin-right: 0 !important;
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-widget-container {
    position: static !important;
    overflow: visible !important;

    width: 100% !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
}


/* ==================================================
   2. BOTÃO HAMBURGER
   ================================================== */

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle {
    position: relative !important;
    z-index: 100002 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 50px !important;
    height: 50px !important;
    padding: 10px !important;

    margin-left: auto !important;
    margin-right: 0 !important;

    color: #FFFFFF !important;
    background-color: transparent !important;

    border: none !important;
    border-radius: 5px !important;

    cursor: pointer;
    opacity: 1 !important;

    transition:
        color 0.3s ease,
        transform 0.3s ease;
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle:hover {
    color: #FFFFFF !important;
    opacity: 1 !important;
}


/* ==================================================
   3. DROPDOWN — FRAME FECHADO
   ================================================== */

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    position: fixed !important;

    top: var(--menu-top) !important;
    right: var(--menu-right) !important;
    bottom: auto !important;
    left: auto !important;

    width: var(--menu-width) !important;
    min-width: var(--menu-min-width) !important;
    max-width: var(--menu-max-width) !important;

    height: auto !important;
    min-height: auto !important;

    max-height: calc(100vh - var(--menu-top) - 24px) !important;
    max-height: calc(100dvh - var(--menu-top) - 24px) !important;

    margin: 0 !important;

    padding:
        var(--menu-padding-top)
        var(--menu-padding-right)
        var(--menu-padding-bottom)
        var(--menu-padding-left) !important;

    background:
        linear-gradient(
            180deg,
            rgba(0, 14, 38, 0.78) 0%,
            rgba(0, 20, 58, 0.76) 48%,
            rgba(0, 10, 32, 0.84) 100%
        ) !important;

    -webkit-backdrop-filter: blur(74px) saturate(125%) contrast(78%) brightness(62%) !important;
    backdrop-filter: blur(74px) saturate(125%) contrast(78%) brightness(62%) !important;

    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    border-radius: var(--menu-radius) !important;

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.10),
        0 24px 80px rgba(0, 0, 0, 0.38) !important;

    overflow-x: hidden !important;
    overflow-y: auto !important;

    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;

    transform: translateY(-8px) scale(0.98) !important;
    transform-origin: top right !important;

    transition:
        transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
        opacity 0.28s ease,
        visibility 0s linear 0.45s !important;

    z-index: 100000 !important;
}


/* ==================================================
   4. CAMADA EXTRA DO VIDRO
   ================================================== */

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown.elementor-nav-menu__container::before {
    content: "";

    position: absolute;
    inset: 0;

    background:
        radial-gradient(
            circle at top left,
            rgba(255, 255, 255, 0.08) 0%,
            rgba(255, 255, 255, 0.02) 28%,
            transparent 58%
        ),
        linear-gradient(
            180deg,
            rgba(0, 14, 38, 0.26) 0%,
            rgba(0, 14, 38, 0.52) 100%
        );

    pointer-events: none;
    z-index: 0;
}


/* ==================================================
   5. DROPDOWN — FRAME ABERTO
   ================================================== */

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"],
.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;

    transform: translateY(0) scale(1) !important;

    transition:
        transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
        opacity 0.28s ease,
        visibility 0s !important;
}


/* ==================================================
   6. X DENTRO DA MARGEM SUPERIOR DO FRAME
   ================================================== */

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle.elementor-active {
    position: fixed !important;

    top: calc(var(--menu-top) + var(--x-top-gap)) !important;
    right: calc(var(--menu-right) + var(--x-right-gap)) !important;

    width: var(--x-size) !important;
    height: var(--x-size) !important;
    padding: 6px !important;

    color: #FFFFFF !important;
    background-color: transparent !important;

    opacity: 1 !important;
    z-index: 100004 !important;
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle.elementor-active::before {
    opacity: 0 !important;
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle.elementor-active::after {
    width: 24px !important;
    height: 24px !important;

    top: 50% !important;
    left: 50% !important;

    background:
        linear-gradient(
            45deg,
            transparent 48%,
            #FFFFFF 48%,
            #FFFFFF 52%,
            transparent 52%
        ),
        linear-gradient(
            -45deg,
            transparent 48%,
            #FFFFFF 48%,
            #FFFFFF 52%,
            transparent 52%
        ) !important;

    opacity: 1 !important;

    transform:
        translate(-50%, -50%)
        rotate(0deg)
        scale(1) !important;

    transform-origin: center center;
}


/* ==================================================
   7. LISTA DO MENU
   ================================================== */

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown .elementor-nav-menu {
    position: relative !important;
    z-index: 2 !important;

    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;

    height: auto !important;
    min-height: auto !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* ==================================================
   8. ITENS DO MENU
   ================================================== */

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown .menu-item {
    margin: 0 !important;
    padding: 0 !important;

    border-bottom: 1px solid rgba(255, 255, 255, 0.16) !important;
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown .menu-item:first-child {
    border-top: 1px solid rgba(255, 255, 255, 0.16) !important;
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown .elementor-item {
    display: block !important;

    width: 100% !important;
    padding: var(--item-padding-y) 0 !important;

    color: #FFFFFF !important;
    background-color: transparent !important;

    font-family: "Inter", Arial, sans-serif !important;
    font-size: var(--item-font-size) !important;
    font-style: normal !important;
    font-weight: 300 !important;
    line-height: var(--item-line-height) !important;
    letter-spacing: var(--item-letter-spacing) !important;
    text-transform: none !important;

    white-space: normal !important;

    transition:
        color 0.3s ease,
        opacity 0.3s ease,
        padding-left 0.3s ease !important;
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown .elementor-item:hover {
    color: #3BFF8D !important;
    background-color: transparent !important;

    padding-left: 10px !important;
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown .elementor-item:focus-visible {
    color: #3BFF8D !important;
    background-color: transparent !important;

    outline: 2px solid rgba(59, 255, 141, 0.70) !important;
    outline-offset: -2px !important;
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown .current-menu-item > .elementor-item {
    color: #3BFF8D !important;
}


/* ==================================================
   9. SUBMENUS
   ================================================== */

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown .sub-menu {
    position: static !important;

    margin: 0 !important;
    padding: 0 0 18px 24px !important;

    background-color: transparent !important;

    border: none !important;
    box-shadow: none !important;
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown .sub-menu .elementor-sub-item {
    padding: 8px 0 !important;

    color: rgba(255, 255, 255, 0.82) !important;
    background-color: transparent !important;

    font-family: "Inter", Arial, sans-serif !important;
    font-size: 17px !important;
    font-weight: 300 !important;
    line-height: 1.4 !important;
    letter-spacing: 0 !important;
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-nav-menu--dropdown .sub-menu .elementor-sub-item:hover {
    color: #FFFFFF !important;
}


/* ==================================================
   10. HAMBURGER PERSONALIZADO
   Estado normal: 4 linhas horizontais.
   Hover: quadrado equilátero.
   Estado aberto: X.
   ================================================== */

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle svg {
    display: none !important;
}


/* Estado normal */

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle::before {
    content: "";

    position: absolute;
    top: 50%;
    left: 50%;

    width: var(--hamburger-width);
    height: var(--hamburger-height);

    background:
        linear-gradient(#FFFFFF, #FFFFFF)
        center 0 / var(--hamburger-width) var(--hamburger-line-height) no-repeat,

        linear-gradient(#FFFFFF, #FFFFFF)
        center 7px / var(--hamburger-width) var(--hamburger-line-height) no-repeat,

        linear-gradient(#FFFFFF, #FFFFFF)
        center 14px / var(--hamburger-width) var(--hamburger-line-height) no-repeat,

        linear-gradient(#FFFFFF, #FFFFFF)
        center 21px / var(--hamburger-width) var(--hamburger-line-height) no-repeat;

    opacity: 1 !important;

    transform:
        translate(-50%, -50%)
        rotate(0deg)
        scale(1);

    transform-origin: center center;

    transition:
        opacity 0.25s ease,
        width 0.45s cubic-bezier(0.22, 1, 0.36, 1),
        height 0.45s cubic-bezier(0.22, 1, 0.36, 1),
        background-size 0.45s cubic-bezier(0.22, 1, 0.36, 1),
        background-position 0.45s cubic-bezier(0.22, 1, 0.36, 1),
        transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}


/* Hover fechado: quadrado */

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle:not(.elementor-active):hover::before {
    width: var(--hover-square-size) !important;
    height: var(--hover-square-size) !important;

    background:
        linear-gradient(#FFFFFF, #FFFFFF)
        left 0 top 0 / var(--hover-square-size) var(--hover-square-line) no-repeat,

        linear-gradient(#FFFFFF, #FFFFFF)
        right 0 top 0 / var(--hover-square-line) var(--hover-square-size) no-repeat,

        linear-gradient(#FFFFFF, #FFFFFF)
        left 0 bottom 0 / var(--hover-square-size) var(--hover-square-line) no-repeat,

        linear-gradient(#FFFFFF, #FFFFFF)
        left 0 top 0 / var(--hover-square-line) var(--hover-square-size) no-repeat !important;

    opacity: 1 !important;

    transform:
        translate(-50%, -50%)
        rotate(0deg)
        scale(1) !important;
}


/* After: invisível no estado fechado, X no estado aberto */

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle::after {
    content: "";

    position: absolute;
    top: 50%;
    left: 50%;

    width: 28px;
    height: 28px;

    background:
        linear-gradient(
            45deg,
            transparent 48%,
            #FFFFFF 48%,
            #FFFFFF 52%,
            transparent 52%
        ),
        linear-gradient(
            -45deg,
            transparent 48%,
            #FFFFFF 48%,
            #FFFFFF 52%,
            transparent 52%
        );

    opacity: 0 !important;
    visibility: hidden !important;

    transform:
        translate(-50%, -50%)
        rotate(-20deg)
        scale(0.8);

    transform-origin: center center;

    transition:
        opacity 0.25s ease,
        transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle:not(.elementor-active):hover::after {
    opacity: 0 !important;
    visibility: hidden !important;

    width: 0 !important;
    height: 0 !important;

    background: none !important;

    transform:
        translate(-50%, -50%)
        rotate(0deg)
        scale(0) !important;
}


/* Estado aberto */

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle.elementor-active::before {
    opacity: 0 !important;

    transform:
        translate(-50%, -50%)
        rotate(20deg)
        scale(0.8) !important;
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle.elementor-active::after {
    opacity: 1 !important;
    visibility: visible !important;

    width: 24px !important;
    height: 24px !important;

    top: 50% !important;
    left: 50% !important;

    background:
        linear-gradient(
            45deg,
            transparent 48%,
            #FFFFFF 48%,
            #FFFFFF 52%,
            transparent 52%
        ),
        linear-gradient(
            -45deg,
            transparent 48%,
            #FFFFFF 48%,
            #FFFFFF 52%,
            transparent 52%
        ) !important;

    transform:
        translate(-50%, -50%)
        rotate(0deg)
        scale(1) !important;

    transform-origin: center center;
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle.elementor-active:hover::before {
    opacity: 0 !important;
}

.elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle.elementor-active:hover::after {
    opacity: 1 !important;
    visibility: visible !important;

    transform:
        translate(-50%, -50%)
        rotate(0deg)
        scale(1) !important;
}


/* ==================================================
   11. TABLET
   Mesmos ajustes do desktop/laptop:
   - frame com altura automática
   - X na margem superior
   - hover em quadrado
   ================================================== */

@media (max-width: 1024px) {
    .elementor-148 .elementor-element.elementor-element-114b900 {
        --menu-top: 86px;
        --menu-right: 0px;

        --menu-width: calc(100vw - 36px);
        --menu-min-width: 0px;
        --menu-max-width: none;

        --menu-padding-top: 64px;
        --menu-padding-right: 32px;
        --menu-padding-bottom: 32px;
        --menu-padding-left: 32px;

        --menu-radius: 10px;

        --x-top-gap: 23px;
        --x-right-gap: 28px;
        --x-size: 28px;

        --item-font-size: 42px;
        --item-line-height: 1.06;
        --item-letter-spacing: -1.8px;
        --item-padding-y: 17px;

        --hamburger-width: 34px;
        --hamburger-height: 21px;
        --hamburger-line-height: 2px;

        --hover-square-size: 28px;
        --hover-square-line: 2px;
    }

    .elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle {
        width: 46px !important;
        height: 46px !important;
        padding: 8px !important;
    }

    .elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle::before {
        background:
            linear-gradient(#FFFFFF, #FFFFFF)
            center 0 / var(--hamburger-width) var(--hamburger-line-height) no-repeat,

            linear-gradient(#FFFFFF, #FFFFFF)
            center 6px / var(--hamburger-width) var(--hamburger-line-height) no-repeat,

            linear-gradient(#FFFFFF, #FFFFFF)
            center 12px / var(--hamburger-width) var(--hamburger-line-height) no-repeat,

            linear-gradient(#FFFFFF, #FFFFFF)
            center 18px / var(--hamburger-width) var(--hamburger-line-height) no-repeat !important;
    }
}


/* ==================================================
   12. MOBILE
   Mesmos ajustes do desktop/laptop:
   - frame com altura automática
   - X na margem superior
   - hover em quadrado
   ================================================== */

@media (max-width: 767px) {
    .elementor-148 .elementor-element.elementor-element-114b900 {
        --menu-top: 102px;
        --menu-right: 0px;
    

        --menu-width: calc(100vw - 20px);
        --menu-min-width: 0px;
        --menu-max-width: none;

        --menu-padding-top: 95px;
        --menu-padding-right: 28px;
        --menu-padding-bottom: 18px;
        --menu-padding-left: 28px;

        --menu-radius: 7px;

        --x-top-gap: -1px;
        --x-right-gap: 35px;
        --x-size: 26px;

        --item-font-size: 31px;
        --item-line-height: 1.08;
        --item-letter-spacing: -1.2px;
        --item-padding-y: 39px;

        --hamburger-width: 34px;
        --hamburger-height: 21px;
        --hamburger-line-height: 2px;

        --hover-square-size: 26px;
        --hover-square-line: 2px;
    }

    .elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle {
        width: 44px !important;
        height: 44px !important;
        padding: 8px !important;
    }

    .elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle::before {
        background:
            linear-gradient(#FFFFFF, #FFFFFF)
            center 0 / var(--hamburger-width) var(--hamburger-line-height) no-repeat,

            linear-gradient(#FFFFFF, #FFFFFF)
            center 6px / var(--hamburger-width) var(--hamburger-line-height) no-repeat,

            linear-gradient(#FFFFFF, #FFFFFF)
            center 12px / var(--hamburger-width) var(--hamburger-line-height) no-repeat,

            linear-gradient(#FFFFFF, #FFFFFF)
            center 18px / var(--hamburger-width) var(--hamburger-line-height) no-repeat !important;
    }

    .elementor-148 .elementor-element.elementor-element-114b900 .elementor-menu-toggle.elementor-active::after {
        width: 24px !important;
        height: 24px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-58c7f9e *//* ==================================================
   HEADER FLUTUANTE COM EFEITO DE VIDRO
   Aplicar no contêiner principal do cabeçalho
   ================================================== */

.elementor-148 .elementor-element.elementor-element-58c7f9e {
    position: fixed !important;
    top: 18px;
    left: 24px;
    right: 24px;

    width: auto !important;
    min-height: 72px;



    margin: 0 !important;
    padding: 10px 24px !important;

    background-color: rgba(255, 255, 255, 0.20) !important;

    -webkit-backdrop-filter:
        blur(10px)
        saturate(135%);

    backdrop-filter:
        blur(10px)
        saturate(135%);

    border: 1px solid rgba(255, 255, 255, 0.55);
    border-radius: 8px;

    box-shadow:
        0 10px 35px rgba(2, 14, 30, 0.08),
        0 2px 8px rgba(2, 14, 30, 0.04);

    overflow: visible !important;

    z-index: 9990;

    transition:
        background-color 0.4s ease,
        border-color 0.4s ease,
        box-shadow 0.4s ease,
        top 0.4s ease;
        
}


/* Linha inferior muito discreta */

.elementor-148 .elementor-element.elementor-element-58c7f9e::after {
    content: "";

    position: absolute;
    right: 24px;
    bottom: 0;
    left: 24px;

    height: 1px;

    background: linear-gradient(
        90deg,
        transparent,
        rgba(0, 60, 255, 0.18),
        transparent
    );

    pointer-events: none;
}

/* Tablet */

@media (max-width: 1024px) {
    .elementor-148 .elementor-element.elementor-element-58c7f9e {
        top: 14px;
        left: 18px;
        right: 18px;

        min-height: 66px;

        padding: 8px 18px !important;
    }
}


/* Mobile */

@media (max-width: 767px) {
    
    .elementor-148 .elementor-element.elementor-element-58c7f9e {
        
        top: 10px;
        left: 10px;
        right: 10px;

        min-height: 60px;

        padding: 7px 14px !important;

        background-color: rgba(255, 255, 255, 0.70) !important;

        -webkit-backdrop-filter:
            blur(16px)
            saturate(125%);

        backdrop-filter:
            blur(16px)
            saturate(125%);

        border-radius: 6px;

        box-shadow:
            0 8px 28px rgba(2, 14, 30, 0.09);
        
    }

    .elementor-148 .elementor-element.elementor-element-58c7f9e::after {
        right: 14px;
        left: 14px;
    }
}
/* ==================================================
   ELEMENTOS PRÓXIMOS ÀS EXTREMIDADES
   Ordem: logo | botão | menu
   ================================================== */

/* Remove a largura máxima interna do Elementor */
.elementor-148 .elementor-element.elementor-element-58c7f9e {
    --content-width: 100%;

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;

    gap: 0 !important;

    /* Distância dos elementos até as bordas do vidro */
    padding-left: 16px !important;
    padding-right: 16px !important;
}

/* Algumas estruturas do Elementor usam um contêiner interno */
.elementor-148 .elementor-element.elementor-element-58c7f9e > .e-con-inner {
    width: 100% !important;
    max-width: none !important;

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;

    gap: 0 !important;
}

/* Impede o logo de crescer */
.elementor-148 .elementor-element.elementor-element-58c7f9e .elementor-widget-theme-site-logo,
.elementor-148 .elementor-element.elementor-element-58c7f9e .elementor-widget-image {
    flex: 0 0 auto !important;

    width: auto !important;

    margin: 0 !important;
}

/* Empurra o botão para a extremidade direita */
.elementor-148 .elementor-element.elementor-element-58c7f9e .elementor-widget-button {
    flex: 0 0 auto !important;

    width: auto !important;

    margin-left: auto !important;
    margin-right: 0 !important;
}

/* Menu fica logo depois do botão */
.elementor-148 .elementor-element.elementor-element-58c7f9e .elementor-widget-nav-menu {
    flex: 0 0 auto !important;

    width: auto !important;

    margin-left: 14px !important;
    margin-right: 0 !important;
}

/* Compatibilidade com o novo nome do widget */
.elementor-148 .elementor-element.elementor-element-58c7f9e .elementor-widget-n-menu,
.elementor-148 .elementor-element.elementor-element-58c7f9e .elementor-widget-wordpress-menu {
    flex: 0 0 auto !important;

    width: auto !important;

    margin-left: 14px !important;
    margin-right: 0 !important;
}


/* FALLBACK PELA ORDEM DOS ELEMENTOS
   1º logo | 2º botão | 3º menu */

.elementor-148 .elementor-element.elementor-element-58c7f9e > .elementor-element:nth-child(2),
.elementor-148 .elementor-element.elementor-element-58c7f9e > .e-con-inner > .elementor-element:nth-child(2) {
    margin-left: auto !important;
}

.elementor-148 .elementor-element.elementor-element-58c7f9e > .elementor-element:nth-child(3),
.elementor-148 .elementor-element.elementor-element-58c7f9e > .e-con-inner > .elementor-element:nth-child(3) {
    margin-left: 14px !important;
}


/* ==================================================
   MOBILE — HEADER MAIS TRANSPARENTE E VIDRO LEVE
   ================================================== */

@media (max-width: 767px) {
    
    .elementor-148 .elementor-element.elementor-element-58c7f9e {
        top: 10px;
        left: 10px;
        right: 10px;

        min-height: 60px;

        padding: 7px 10px !important;

        /* TRANSPARÊNCIA DO VIDRO
           Quanto menor o último número, mais transparente.
           Sugestão: 0.22 a 0.38 */
        background-color: rgba(255, 255, 255, 0.24) !important;

        /* EFEITO VIDRO
           blur maior = vidro mais fosco
           saturate maior = cores do fundo mais vivas */
        -webkit-backdrop-filter:
            blur(14px)
            saturate(145%);

        backdrop-filter:
            blur(14px)
            saturate(145%);

        /* BORDA DO VIDRO
           Reduzida para não ficar tão “caixa branca”. */
        border: 1px solid rgba(255, 255, 255, 0.34) !important;

        border-radius: 6px;

        /* SOMBRA
           Mais suave para o header não pesar no mobile. */
        box-shadow:
            0 8px 24px rgba(2, 14, 30, 0.08),
            inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;

        overflow: visible !important;
    }

    /* Linha inferior mais discreta no mobile */
    .elementor-148 .elementor-element.elementor-element-58c7f9e::after {
        right: 12px;
        left: 12px;

        background: linear-gradient(
            90deg,
            transparent,
            rgba(255, 255, 255, 0.22),
            transparent
        );
    }

    /* Container interno do Elementor */
    .elementor-148 .elementor-element.elementor-element-58c7f9e > .e-con-inner {
        width: 100% !important;
        max-width: none !important;

        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;

        gap: 0 !important;
    }

    /* Logo à esquerda */
    .elementor-148 .elementor-element.elementor-element-58c7f9e .elementor-widget-theme-site-logo,
    .elementor-148 .elementor-element.elementor-element-58c7f9e .elementor-widget-image {
        flex: 0 0 auto !important;
        width: auto !important;

        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* Botão CTA no mobile */
    .elementor-148 .elementor-element.elementor-element-58c7f9e .elementor-widget-button {
        flex: 0 0 auto !important;
        width: auto !important;

        margin-left: auto !important;
        margin-right: 10px !important;
    }

    /* Menu hamburger à direita */
    .elementor-148 .elementor-element.elementor-element-58c7f9e .elementor-widget-nav-menu,
    .elementor-148 .elementor-element.elementor-element-58c7f9e .elementor-widget-n-menu,
    .elementor-148 .elementor-element.elementor-element-58c7f9e .elementor-widget-wordpress-menu {
        flex: 0 0 auto !important;
        width: auto !important;

        margin-left: 8px !important;
        margin-right: 0 !important;
    }

    /* Fallback pela ordem dos elementos */
    .elementor-148 .elementor-element.elementor-element-58c7f9e > .elementor-element:nth-child(2),
    .elementor-148 .elementor-element.elementor-element-58c7f9e > .e-con-inner > .elementor-element:nth-child(2) {
        margin-left: auto !important;
    }

    .elementor-148 .elementor-element.elementor-element-58c7f9e > .elementor-element:nth-child(3),
    .elementor-148 .elementor-element.elementor-element-58c7f9e > .e-con-inner > .elementor-element:nth-child(3) {
        margin-left: 8px !important;
    }
}/* End custom CSS */