.elementor-kit-5{--e-global-color-primary:#3C286E;--e-global-color-secondary:#9BC31E;--e-global-color-text:#5A5A5A;--e-global-color-accent:#59C4C6;--e-global-color-e710994:#FFFFFF;--e-global-color-8b7ad52:#DD742B;--e-global-color-0811303:#23965F;--e-global-color-07be1b4:#FECB26;--e-global-typography-primary-font-family:"Barlow";--e-global-typography-primary-font-size:96px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:0.94em;--e-global-typography-primary-letter-spacing:-0.05em;--e-global-typography-secondary-font-family:"Barlow";--e-global-typography-secondary-font-size:64px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:0.94em;--e-global-typography-secondary-letter-spacing:-0.05em;--e-global-typography-text-font-family:"Barlow";--e-global-typography-text-font-size:20px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.4em;--e-global-typography-text-letter-spacing:0px;--e-global-typography-accent-font-family:"Barlow";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1em;--e-global-typography-accent-letter-spacing:0.07em;--e-global-typography-a3f7c27-font-size:17px;--e-global-typography-a3f7c27-font-weight:400;--e-global-typography-a3f7c27-line-height:1.4em;--e-global-typography-a3f7c27-letter-spacing:0px;--e-global-typography-a3251b0-font-family:"Barlow";--e-global-typography-a3251b0-font-size:32px;--e-global-typography-a3251b0-font-weight:600;--e-global-typography-a3251b0-line-height:1.1em;--e-global-typography-a3251b0-letter-spacing:-0.02em;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{background-color:var( --e-global-color-secondary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );color:var( --e-global-color-primary );border-radius:2px 2px 40px 2px;padding:21px 26px 23px 26px;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 p{margin-block-end:0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1360px;}.e-con{--container-max-width:1360px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1366px){.elementor-kit-5{--e-global-typography-primary-font-size:72px;--e-global-typography-secondary-font-size:56px;--e-global-typography-text-font-size:18px;--e-global-typography-a3f7c27-font-size:16px;--e-global-typography-a3251b0-font-size:28px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}@media(max-width:1024px){.elementor-kit-5{--e-global-typography-primary-font-size:60px;--e-global-typography-secondary-font-size:48px;--e-global-typography-text-font-size:17px;--e-global-typography-accent-font-size:13px;--e-global-typography-a3f7c27-font-size:15px;--e-global-typography-a3251b0-font-size:26px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5{--e-global-typography-primary-font-size:48px;--e-global-typography-secondary-font-size:36px;--e-global-typography-text-font-size:16px;--e-global-typography-a3f7c27-font-size:14px;--e-global-typography-a3251b0-font-size:24px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );padding:18px 22px 20px 22px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */p + p {
    margin-top: 1em;
}

html, body {
    max-width: 100% !important;
    overflow-x: hidden !important;
}




:root{
  --sap-ease: cubic-bezier(0.19,1,0.22,1);
  --sap-dur: 0.9s;
  --sap-dist: 48px;
}

@keyframes sapFadeUp{
  from{ opacity:0; transform: translate3d(0,var(--sap-dist),0); }
  to{ opacity:1; transform: translate3d(0,0,0); }
}
@keyframes sapFade{
  from{ opacity:0; }
  to{ opacity:1; }
}

/* ---------- Estado inicial SÓ quando o JS está ativo ----------
   Sem JS = tudo visível (sem quebra, sem risco p/ SEO). */
.sap-js .elementor .sap-reveal{
  opacity: 0;
  transform: translate3d(0, var(--sap-dist), 0);
  transition:
    opacity var(--sap-dur) ease,
    transform var(--sap-dur) var(--sap-ease);
  transition-delay: var(--sap-delay, 0ms);
  will-change: opacity, transform;
}
/* Seções (e-parent): só fade, sem translate (evita salto duplo com filhos) */
.sap-js .elementor .e-con.e-parent.sap-reveal{
  transform: none;
  transition: opacity 1s ease;
  transition-delay: var(--sap-delay, 0ms);
}
/* Estado final: entrou na tela */
.sap-js .elementor .sap-reveal.sap-in{
  opacity: 1;
  transform: none;
}
/* Imagens: des-zoom sutil junto (sem clip-path = sem recorte) */
.sap-js .elementor .elementor-widget-image.sap-reveal img{
  transform: scale(1.05);
  transition:
    opacity var(--sap-dur) ease,
    transform 1.1s var(--sap-ease);
  transition-delay: var(--sap-delay, 0ms);
}
.sap-js .elementor .elementor-widget-image.sap-reveal.sap-in img{
  transform: scale(1);
}

/* ---------- Hero acima da dobra: fade no load, fora do reveal ----------
   Home (4a9676a) + Sobre nós (3f3b394). Demais páginas: o JS já exclui
   o conteúdo da 1ª seção do reveal, então nasce visível sem LCP ruim. */
@media (prefers-reduced-motion: no-preference){
  .elementor .elementor-element-4a9676a .elementor-element-401112c{
    animation: sapFadeUp 1s var(--sap-ease) .05s both;
  }
  .elementor .elementor-element-4a9676a .elementor-element-740e50c{
    animation: sapFadeUp 1s var(--sap-ease) .15s both;
  }
  .elementor .elementor-element-4a9676a .elementor-element-ed7800c{
    animation: sapFadeUp 1s var(--sap-ease) .25s both;
  }
  .elementor .elementor-element-4a9676a .elementor-element-9740e95{
    animation: sapFadeUp 1s var(--sap-ease) .33s both;
  }
  /* Sobre nós: "Desde 1994" / "Sobre nós" / subtítulo / texto */
  .elementor .elementor-element-3f3b394 .elementor-element-2275c25{
    animation: sapFadeUp 1s var(--sap-ease) .05s both;
  }
  .elementor .elementor-element-3f3b394 .elementor-element-6b383d4{
    animation: sapFadeUp 1s var(--sap-ease) .13s both;
  }
  .elementor .elementor-element-3f3b394 .elementor-element-546ed8d{
    animation: sapFadeUp 1s var(--sap-ease) .21s both;
  }
  .elementor .elementor-element-3f3b394 .elementor-element-5fb9d32{
    animation: sapFadeUp 1s var(--sap-ease) .29s both;
  }
}

/* ---------- Micro-interações (hover, sem JS) ---------- */
.elementor .elementor-widget-button .elementor-button{
  transition: transform .45s var(--sap-ease), box-shadow .45s var(--sap-ease), filter .45s var(--sap-ease);
}
.elementor .elementor-widget-button .elementor-button:hover{
  transform: translateY(-2px);
  box-shadow: 0 14px 30px -14px rgba(60,40,110,.45);
}
.elementor .elementor-element-31fe142 > .elementor-element{
  transition: transform .5s var(--sap-ease), box-shadow .5s var(--sap-ease);
}
.elementor .elementor-element-31fe142 > .elementor-element:hover{
  transform: translateY(-4px);
}

/* ---------- Segurança ---------- */
/* Muuri (.muuri/.gal, ex. grade Fotos e Vídeos do Rio 2066): nunca animar.
   O Muuri posiciona os itens com transform via JS; qualquer transition ou
   transform nosso quebra o layout. Cinto + suspensórios com o filtro do JS. */
.muuri .sap-reveal,
.gal .sap-reveal,
.muuri.sap-reveal,
.gal.sap-reveal{
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  animation: none !important;
  will-change: auto !important;
}
.elementor-editor-active .elementor .sap-reveal{
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}
@media (prefers-reduced-motion: reduce){
  .sap-js .elementor .sap-reveal,
  .sap-js .elementor .sap-reveal img{
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
  .elementor .elementor-element-4a9676a *,
  .elementor .elementor-element-3f3b394 *{
    animation: none !important;
  }
}
@media (max-width: 767px){
  :root{ --sap-dist: 28px; --sap-dur: .7s; }
}/* End custom CSS */