.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-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-138 .elementor-element.elementor-element-a698cea .elementor-menu-toggle{margin:0 auto;}.elementor-138 .elementor-element.elementor-element-a698cea .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-138 .elementor-element.elementor-element-a698cea .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-138 .elementor-element.elementor-element-a698cea .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-primary );}.elementor-138 .elementor-element.elementor-element-a698cea .e--pointer-framed .elementor-item:before,
					.elementor-138 .elementor-element.elementor-element-a698cea .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-primary );}.elementor-138:not(.elementor-motion-effects-element-type-background), .elementor-138 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-44a4304 );}.elementor-138{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:2400px){.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-weight );}}@media(max-width:1366px){.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-weight );}}@media(max-width:1024px){.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-weight );}}@media(max-width:767px){.elementor-138 .elementor-element.elementor-element-9beb209{width:var( --container-widget-width, 154px );max-width:154px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:154px;--container-widget-flex-grow:0;}.elementor-138 .elementor-element.elementor-element-9beb209.elementor-element{--align-self:center;}.elementor-138 .elementor-element.elementor-element-646b048{z-index:100;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-weight );}.elementor-138 .elementor-element.elementor-element-ff150f9{width:var( --container-widget-width, 296px );max-width:296px;--container-widget-width:296px;--container-widget-flex-grow:0;}}/* Start custom CSS for html, class: .elementor-element-ff150f9 *//* =============================================================
   HEADER — Schmidt Studio

   Estados (o JS aplica no .nav_container):
     .is-hidden   → rolou para baixo: a logo encolhe para o ícone
     .is-hovered  → mouse na logo com o header escondido (só desktop)

   Breakpoint único: 767 / 768px
     mobile  → logo encolhe NO LUGAR (esquerda). Menu sempre clicável.
     desktop → logo encolhe E vai para o centro, com blend difference. Menu oculta.
   ============================================================= */


/* =============================================================
   1. BASE — Vale para todas as telas
   ============================================================= */

/* Container fixo no topo */
.nav_container {
  position: fixed;
  top: 0;
  z-index: 999;
}

/* Menu da direita (hambúrguer) */
.nav_container-inner {
  margin-left: auto;
  opacity: 1;
  transition: opacity 0.6s ease !important;
}

/* SVG da Logo */
.responsive-logo {
  width: 100%;
  height: 100%;
  display: block;
}

/* Letras e ponto do SVG — somem no estado escondido */
#schmidt,
#studio,
#dot {
  opacity: 1;
  transition: opacity 0.6s ease !important;
}

.nav_container.is-hidden :is(#schmidt, #studio, #dot) {
  opacity: 0 !important;
}

/* Ícone: transição de cor para o blend mode */
#icon {
  transition: fill 0.6s ease;
}

/* ESTADO ESCONDIDO (GERAL): 
   Cria a janela de recorte do ícone mantendo o SVG no tamanho real */
.nav_container.is-hidden .nav_logo {
  width: 28px !important; /* Largura da janela de corte para exibir só o ícone */
  height: 24px !important;
  overflow: hidden !important;
}

.nav_container.is-hidden .responsive-logo {
  width: 180px !important; /* Mantém a proporção real do SVG sem amassar o ícone */
  max-width: none !important;
  height: auto !important;
}

/* Header escondido: remove fundo e efeitos de desfocagem */
.nav_container.is-hidden {
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}




/* =============================================================
   2. MOBILE (≤ 767px)
   Logo encolhe no lugar (esquerda). Menu permanece ativo.
   ============================================================= */
@media (max-width: 767px) {

  .nav_logo.elementor-widget-html {
    line-height: 0;
  }

  .nav_logo {
    width: 154px; /* Largura inicial no mobile */
    transition: width 1s ease !important;
  }

  /* Ajusta a escala base do SVG para o tamanho mobile */
  .nav_container.is-hidden .responsive-logo {
    width: 154px !important;
  }
}


/* =============================================================
   3. DESKTOP (≥ 768px)
   Logo encolhe, desliza para o centro e ativa blend mode.
   ============================================================= */
@media (min-width: 768px) {

  /* Menu oculta ao rolar a página */
  .nav_container.is-hidden .nav_container-inner {
    opacity: 0 !important;
    pointer-events: none;
  }

  /* Posição inicial da logo (com alinhamento vertical ao centro) */
  .nav_logo {
    position: absolute !important;
    top: 50%;
    left: 0%;
    transform: translateY(-50%) translateX(0);
    width: 180px;
    height: auto;
    z-index: 2;
    transition: width 1s ease, left 1s ease, transform 1s ease !important;
  }

  /* Escondido: desliza e centraliza no meio da tela */
  .nav_container.is-hidden .nav_logo {
    left: 50% !important;
    transform: translateY(-50%) translateX(-50%) !important;
  }

  /* ---------- BLEND MODE ---------- */
  .nav_container.is-hidden {
    mix-blend-mode: difference;
  }

  /* Em 'difference', o ícone precisa de cor branca para inverter no fundo */
  .nav_container.is-hidden #icon {
    fill: #ffffff !important;
    scale: .8;
    transform-origin: center center;
    transform: translateX(36px);
  }
  
  .nav_logo *{
  transform-origin: left center !important;
}

  /* ---------- HOVER (Com header escondido) ---------- */
  .nav_container.is-hidden.is-hovered {
    mix-blend-mode: normal;
  }

  .nav_container.is-hidden.is-hovered .nav_container-inner {
    opacity: 1 !important;
    width: auto !important;
    overflow: visible !important;
    pointer-events: auto !important;
  }

  .nav_container.is-hidden.is-hovered .nav_logo {
    width: 180px !important;
    left: 0% !important;
    transform: translateY(-50%) translateX(0) !important;
  }

  .nav_container.is-hidden.is-hovered .responsive-logo {
    width: 100% !important;
  }

  .nav_container.is-hidden.is-hovered :is(#schmidt, #studio, #dot) {
    opacity: 1 !important;
  }

  /* O ícone retorna ao tom laranja padrão */
  .nav_container.is-hidden.is-hovered #icon {
    fill: #F35F15 !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-83b0ac6 */.nav_language-container {
  position: relative;
}

.nav_language-icon {
  cursor: pointer;
}

.language_inner-container {
  position: absolute;
  left: 50%;
  top: 50px;
  opacity: 0;
  visibility: hidden;
  transform: translate(105%, 0px);
  pointer-events: none;
  transition: .3s ease;
  z-index: 100;
}

.nav_language-container.is-open .language_inner-container {
  opacity: 1;
  visibility: visible;
  transform: translate(calc(-50% - 30px), 0px);
  pointer-events: auto;
}

/* ---------- Bullets de idioma ---------- */

/* abre espaço à esquerda do texto para o bullet */
.nav_language-container .language_inner-container a {
  position: relative;
  display: inline-block;
  padding-left: 16px; /* 6px do bullet + 10px de respiro */
}

/* bullet padrão (inativo) — zera estilos herdados do tema/Elementor */
.nav_language-container .language_inner-container a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  right: auto;
  bottom: auto;
  width: 6px;
  height: 6px;
  margin: 0;
  border: 0;
  border-radius: 50%;
  background: #3A3A3A;
  opacity: 1;
  transform: translateY(-50%); /* centraliza na altura do texto */
  transition: background .3s ease, box-shadow .3s ease;
}

/* bullet ativo */
.nav_language-container .language_inner-container a.is-active::before {
  background: #B8F315;
  box-shadow: 0 0 8px rgba(184, 243, 21, .45); /* glow sutil, remova se não quiser */
}

/* hover no inativo clareia um pouco o bullet */
.nav_language-container .language_inner-container a:not(.is-active):hover::before {
  background: #5A5A5A;
}/* End custom CSS */
/* Start custom CSS */@media (max-width: 767px){
    
    .nav_container{
        margin: 0px!important;
        width: 100%!important;
        min-width: 100%!important;
        padding: 16px!important;
        border-radius: 4px;
        background: rgba(0, 0, 0, 0.3);
        backdrop-filter: blur(6px)!important;
    }

.nav_container-inner{
    position: fixed;
    left: 50%;
    top: 0px;
    transform: translateX(-50%) translateY(-16px) scale(0.98); /* estado fechado: leve recuo + escala */
    flex-direction: column!important;
    background: #0E0E0E;
    align-items: center;
    justify-content: center;
    width: 100vw!important;
    height: 100vh!important;
    padding: 48px 48px!important;
    gap: 36px!important;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition:
        opacity .4s cubic-bezier(.16,1,.3,1),
        transform .4s cubic-bezier(.16,1,.3,1),
        visibility 0s linear .4s; /* visibility só muda depois da transição, evita "flash" */
}

.nav_container-inner.is-open{
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0) scale(1);
    transition:
        opacity .4s cubic-bezier(.16,1,.3,1),
        transform .4s cubic-bezier(.16,1,.3,1),
        visibility 0s linear 0s;
}

/*ANIMATION MENU ICON*/

/* transição base — aplica em todas as linhas, define o "caminho" da animação */
.menu_icon-line{
    transform-box: fill-box;      /* transform-origin passa a ser relativo ao próprio path, não ao SVG inteiro */
    transform-origin: center;
    transition:
        transform .4s cubic-bezier(.16,1,.3,1),
        opacity .25s ease;
}

/* linha do meio (laranja) — some no lugar, sem rotacionar */
.nav_menu-icon.is-active .menu_icon-line2{
    opacity: 0;
    transform: scaleX(0);
}

/* linha 1: estava em y=5 (x: 10→20), desloca até o centro (12,12) e rotaciona 45deg */
.nav_menu-icon.is-active .menu_icon-line1{
    transform: translate(-3px, 7px) rotate(45deg);
}

/* linha 3: estava em y=19 (x: 4→14), desloca até o centro (12,12) e rotaciona -45deg */
.nav_menu-icon.is-active .menu_icon-line3{
    transform: translate(3px, -7px) rotate(-45deg);
}

/* pequeno atraso na linha do meio, pra sumir um pouco antes das outras chegarem — fica mais orgânico */
.nav_menu-icon.is-active .menu_icon-line2{
    transition-delay: 0s;
}
.nav_menu-icon:not(.is-active) .menu_icon-line2{
    transition-delay: .15s; /* ao fechar, ela só reaparece depois que o X já desfez a rotação */
}
}

/* trava o scroll do body enquanto o popup está aberto */
html.no-scroll,
body.no-scroll{
    overflow: hidden;
    height: 100%;
}

.underline-effect::after{
    content: "";
    display: block;
    position: relative;
    background: #F35F15;
    width: 100%;
    height: 1.5px;
    transform: translate(-102%, 0);
    transition: .3s ease;
}

.underline-effect:hover::after{
    transform: translate(0, 0);
}/* End custom CSS */