:root{
  --sobe:100px;                                   
  --lado:150px;                                   
  --card-sobe:40px;                               
  --cta-escala:1.05;                              
  --cta-brilho:0 0 40px 5px rgba(221,188,90,.64); 
  --cta-reflexo:rgba(139,115,45,.6);              
  --cta-verde-brilho:0 0 50px 4px rgba(0,204,55,.35);
  --cta-verde-reflexo:rgba(6,107,30,1);
  --foco-fora:#000;                               
  --foco-dentro:#F2C9A4;                          
  --tinta-foco:#916837;                           
  --sla-hover:#E6DEC4;                            
}

body{overflow-x:hidden}
@supports (overflow:clip){ html,body{overflow-x:clip} }

.anima-zoom,.anima-up,.anima-direita,.anima-esquerda,.anima-desce{opacity:0}
.js-animated{opacity:1!important;animation-fill-mode:forwards!important;animation-duration:1.5s!important;
             animation-timing-function:cubic-bezier(.23,1,.32,1)!important}
@keyframes zoomIn{from{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}
@keyframes slideUp{from{opacity:0;transform:translateY(var(--sobe,100px))}to{opacity:1;transform:translateY(0)}}
@keyframes slideRight{from{opacity:0;transform:translateX(calc(-1 * var(--lado,150px)))}to{opacity:1;transform:translateX(0)}}
@keyframes slideLeft{from{opacity:0;transform:translateX(var(--lado,150px))}to{opacity:1;transform:translateX(0)}}
.js-animated.anima-zoom{animation-name:zoomIn}
.js-animated.anima-up{animation-name:slideUp}

.js-animated.anima-direita{animation-name:slideRight}
.js-animated.anima-esquerda{animation-name:slideLeft}

@media (max-width:767.98px){ .js-animated.anima-direita,.js-animated.anima-esquerda{animation-name:slideUp} }

.js-animated.anima-desce{animation-name:desce!important;animation-duration:1.25s!important;
                         animation-timing-function:ease!important}
@keyframes desce{from{opacity:1;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}

.js-animated.rv-ja{animation:none!important;opacity:1!important}

.pil{opacity:0}
.pil.pil-on{animation:pilula 1.25s ease forwards}
.pil.d1.pil-on{animation-delay:.2s}.pil.d2.pil-on{animation-delay:.4s}.pil.d3.pil-on{animation-delay:.6s}
.pil.pil-ja{animation:none;opacity:1}
@keyframes pilula{from{opacity:0}to{opacity:1}}

.anima-card{opacity:0;transform:translate3d(0,var(--card-sobe,40px),0);
  transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);transition-delay:var(--atraso,0s)}
.anima-card.card-in{opacity:1;transform:none}
.anima-card.rv-ja{transition:none}

.anima-x{opacity:0}
.anima-x.x-on{opacity:1;animation:var(--anima,surgir) var(--anima-dur,.8s) var(--anima-curva,cubic-bezier(.23,1,.32,1)) var(--anima-atraso,0s) both}
.anima-x.rv-ja{animation:none;opacity:1}
@keyframes surgir{from{opacity:0}to{opacity:1}}                                          
@keyframes desfocar{from{opacity:0;filter:blur(14px)}to{opacity:1;filter:blur(0)}}         
@keyframes virar{from{opacity:0;transform:perspective(900px) rotateX(-70deg)}to{opacity:1;transform:none}}
@keyframes girarEntrando{from{opacity:0;transform:rotate(-12deg) scale(.85)}to{opacity:1;transform:none}}
@keyframes descer{from{opacity:0;transform:translateY(-60px)}to{opacity:1;transform:none}}
@keyframes pular{0%{opacity:0;transform:scale(.3)}55%{opacity:1;transform:scale(1.08)}75%{transform:scale(.97)}100%{opacity:1;transform:scale(1)}}
@keyframes cortina{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}       
@keyframes crescerX{from{transform:scaleX(0)}to{transform:scaleX(1)}}                     

html:not(.rv-ok):not(.parar) .anima-zoom,html:not(.rv-ok):not(.parar) .anima-up,
html:not(.rv-ok):not(.parar) .anima-direita,html:not(.rv-ok):not(.parar) .anima-esquerda,
html:not(.rv-ok):not(.parar) .anima-desce,html:not(.rv-ok):not(.parar) .anima-card,
html:not(.rv-ok):not(.parar) .anima-x,html:not(.rv-ok):not(.parar) .pil{animation:rvRede 0s linear 6s forwards}
@keyframes rvRede{to{opacity:1;transform:none}}

html.parar .anima-zoom,html.parar .anima-up,html.parar .anima-direita,html.parar .anima-esquerda,
html.parar .anima-desce,html.parar .anima-x,html.parar .pil{opacity:1!important;animation:none!important}
html.parar .anima-card{opacity:1!important;transform:none!important;transition:none!important}
html.parar .cta .brilho{display:none}
html.parar .gira,html.parar .flutua,html.parar .ftr{animation:none}
html.parar button.pausa{display:none}

.cta{position:relative;display:inline-block;cursor:pointer;-webkit-tap-highlight-color:transparent;
     box-shadow:0 0 10px 0 rgba(0,0,0,0);transition:transform .4s ease,box-shadow .3s ease}
.cta>*:not(.brilho){position:relative;z-index:1}          
.cta .brilho{position:absolute;left:0;top:0;right:0;bottom:0;border-radius:inherit;pointer-events:none;
  background-image:linear-gradient(60deg,transparent 4%,var(--cta-reflexo) 24%,transparent 44%);
  background-size:150% 100%;background-position:0% 50%;animation:slideGradient 5s linear infinite}
.cta.verde .brilho{background-image:linear-gradient(107deg,transparent 4%,var(--cta-verde-reflexo) 30%,transparent 55%)}
@keyframes slideGradient{0%{background-position:150% 50%}100%{background-position:-150% 50%}}
.cta .ico{display:inline-block}

@keyframes moverLado{from{transform:translateX(0) rotate(45deg)}to{transform:translateX(-7.5px) rotate(45deg)}}
@media (hover:hover){
  .cta:hover{transform:scale(var(--cta-escala,1.05));box-shadow:var(--cta-brilho)}
  .cta.verde:hover{box-shadow:var(--cta-verde-brilho)}
  .cta:hover .ico{animation:moverLado 1.2s ease-in-out infinite alternate}
}

.cta:active,.cta.indo{transform:scale(var(--cta-escala,1.05));box-shadow:var(--cta-brilho);transition-duration:.15s}
.cta.verde:active,.cta.verde.indo{box-shadow:var(--cta-verde-brilho)}
.cta:focus-visible{outline:2px solid var(--foco-fora);outline-offset:3px;box-shadow:0 0 0 5px var(--foco-dentro)}

.gira{animation:girar 35s linear infinite}
@keyframes girar{to{transform:rotate(360deg)}}
@media (max-width:767.98px){ .gira{animation:none} }      

.flutua{animation:flutuar 2s ease-in-out infinite}
@keyframes flutuar{0%{transform:translateY(5px)}50%{transform:translateY(-5px)}100%{transform:translateY(5px)}}

button.pausa{position:fixed;left:8px;top:8px;z-index:1000;transform:translateY(-300%);padding:10px 18px;border:0;
  border-radius:999px;background:var(--foco-dentro);color:#0E0B09;font:500 14px/1.2 system-ui,-apple-system,sans-serif;
  cursor:pointer;-webkit-tap-highlight-color:transparent}
button.pausa:focus{transform:none;outline:2px solid #000;outline-offset:2px}
html.quieto .cta .brilho,html.quieto .gira,html.quieto .flutua,html.quieto .ftr{animation-play-state:paused}

.fitq{position:relative}
.fita{position:relative;overflow:hidden;touch-action:pan-y;touch-action:pan-y pinch-zoom;
      -webkit-touch-callout:none;user-select:none;-webkit-user-select:none}

.fita::after{content:"";position:absolute;left:0;top:0;right:0;bottom:0;z-index:2}
.fto{width:max-content}                                   
.fto.anda{transition:transform var(--ft-passo-ms,500ms) ease}
.ftr{display:flex;align-items:flex-start;gap:var(--ft-gap,16px);width:max-content;
     animation:fita var(--ft-dur,30s) linear infinite}
.ftr>*{flex:none}

@keyframes fita{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-1 * var(--ft-p,0px)),0,0)}}

.fita.pfita .ftr,.fita.fora .ftr{animation-play-state:paused}
.fita:focus-visible{outline:3px solid var(--tinta-foco);outline-offset:-3px}
.fts{position:relative;z-index:4;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .2s ease}
.fts:active{transform:scale(.92)}
.fts:focus-visible{outline:2px solid var(--tinta-foco);outline-offset:3px}

.sld{position:relative;overflow:hidden;touch-action:pan-y;touch-action:pan-y pinch-zoom;cursor:grab}
.sld:focus-visible{outline:3px solid var(--tinta-foco);outline-offset:-3px}
.sldt{display:flex;align-items:flex-start;gap:var(--sld-gap,16px);width:max-content;will-change:transform}
.sldt>*{flex:none}
.sldt.anda{transition:transform var(--sld-dur,500ms) ease}
.sla{cursor:pointer;border-radius:50%;-webkit-tap-highlight-color:transparent;transition:transform .3s ease,background-color .3s ease}
@media (hover:hover){ .sla:hover{transform:scale(1.1);background-color:var(--sla-hover)} }
.sla:active{transform:scale(.94)}
.sla:focus-visible{outline:2px solid var(--tinta-foco);outline-offset:3px}

.fqb{display:block;width:100%;background:none;border:0;padding:0;cursor:pointer;text-align:left;font:inherit;color:inherit;
     -webkit-tap-highlight-color:transparent}
.fqb:focus-visible{outline:2px solid var(--tinta-foco);outline-offset:2px}
.fqs{display:inline-block;transition:transform .34s cubic-bezier(.16,1,.3,1)}
.fqb[aria-expanded="true"] .fqs{transform:rotate(45deg)}      
.fqr{display:grid;grid-template-rows:0fr;transition:grid-template-rows .38s cubic-bezier(.16,1,.3,1)}
.fqi.aberta .fqr{grid-template-rows:1fr}
.fqr>div{overflow:hidden;min-height:0;visibility:hidden;transition:visibility 0s linear .38s}
.fqi.aberta .fqr>div{visibility:visible;transition:visibility 0s}

@media (max-width:767.98px){ .so-desktop{display:none!important} }
@media (min-width:768px){ .so-celular{display:none!important} }

@media (prefers-reduced-motion:reduce){
  .anima-zoom,.anima-up,.anima-direita,.anima-esquerda,.anima-desce,.js-animated,.pil,.anima-card,.anima-x{
    opacity:1!important;animation:none!important;transition:none!important}
  .anima-card{transform:none!important}
  .cta .brilho{display:none}
  .gira,.flutua{animation:none}
  .cta,.cta .ico,.cta:hover .ico{transition:none;animation:none}
  
  .ftr,.fita.pfita .ftr,.fita.fora .ftr,html.quieto .ftr{animation:none}
  .fto.anda,.sldt.anda,.fqs,.fqr,.fqr>div,.sla{transition:none}
  
  .fita,.sld{overflow-x:auto;scrollbar-width:thin;
             touch-action:pan-x pan-y;touch-action:pan-x pan-y pinch-zoom;overscroll-behavior-x:contain}
}
