/* ===== JV8 Acelera · atualização out/2026 =====
   contatos lado a lado, vídeo no hero, depoimentos, FAQ, Aceli discreta, respiro nos slides, dica "próximo" */

/* ---------- Próximo passo: três contatos lado a lado ---------- */
.cts{grid-template-columns:repeat(3,minmax(0,1fr))}
.ct-adm{grid-column:auto}
.ct{grid-template-areas:"h w" "p w" "m w";padding:clamp(14px,2.4vh,22px) clamp(14px,1.5vw,22px)}
.ct .wab{width:48px;height:48px}.ct .wab svg{width:25px;height:25px}
.ct p:nth-of-type(2){font-size:.8rem}
@media(max-width:1000px){.cts{grid-template-columns:1fr}}

/* ---------- Capa: botão do vídeo (no lugar do CTA principal) ---------- */
.btn.vid{padding:.5rem 1.6rem .5rem .5rem;gap:.85rem;font-style:normal;align-items:center}
.vid .vp{position:relative;flex:none;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#fff}
.vid .vp:after{content:"";position:absolute;inset:-5px;border-radius:50%;border:1.5px solid rgba(255,255,255,.7);animation:vidp 2.8s ease-out infinite}
@keyframes vidp{0%{transform:scale(.92);opacity:.9}100%{transform:scale(1.4);opacity:0}}
.vid .vp svg{width:18px;height:18px;fill:var(--orange);margin-left:2px}
.vid .vt{display:grid;line-height:1.15;text-align:left}
.vid .vt b{font-family:var(--f-display);font-style:italic;font-weight:800;font-size:1rem}
.vid .vt small{font-family:var(--f-body);font-style:normal;font-size:.72rem;font-weight:700;opacity:.92}
@media(prefers-reduced-motion:reduce){.vid .vp:after{animation:none}}

/* ---------- Depoimentos ---------- */
#depoimentos .head{margin-bottom:clamp(14px,2.6vh,28px);gap:.7rem}
.tcw{position:relative;min-width:0}
.tcar{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:10px 6px 22px;margin:0 -6px;outline:none;scroll-behavior:smooth}
.tcar::-webkit-scrollbar{display:none}
.dp-tc{flex:0 0 var(--w,420px);max-width:calc(100% - 28px);scroll-snap-align:start;position:relative;overflow:hidden;display:flex;flex-direction:column;gap:1rem;min-width:0;padding:clamp(22px,3.2vh,30px) clamp(20px,2vw,28px) clamp(14px,2vh,20px);background:linear-gradient(165deg,#fff 45%,rgba(255,178,28,.10));border:1px solid var(--line);border-radius:26px;box-shadow:0 26px 50px -38px rgba(11,46,158,.55);transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .5s}
.dp-tc:nth-child(even){background:linear-gradient(165deg,#fff 45%,rgba(21,84,230,.08))}
.dp-tc:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--c1),var(--c2))}
.dp-tc:after{content:"";position:absolute;right:-60px;top:-60px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,var(--c1),transparent 68%);opacity:.10;transition:opacity .5s,transform .8s var(--ease);pointer-events:none}
.dp-tc:hover{transform:translateY(-5px);border-color:rgba(255,90,18,.3);box-shadow:0 36px 60px -36px rgba(11,46,158,.62)}
.dp-tc:hover:after{opacity:.2;transform:scale(1.25)}
.dp-qm{width:30px;height:23px;fill:var(--c1);opacity:.92;flex:none}
.dp-tq{margin:0;flex:1;font-family:var(--f-display);font-style:italic;font-weight:600;font-size:clamp(.92rem,1vw,1rem);line-height:1.55;color:var(--ink)}
.dp-tw{display:flex;align-items:center;gap:.8rem}
.dp-ta{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-family:var(--f-display);font-style:italic;font-weight:800;font-size:.9rem;color:#fff;background:linear-gradient(135deg,var(--c1),var(--c2));box-shadow:0 0 0 3px #fff,0 0 0 4.5px var(--c1)}
.dp-tc .who{display:grid;gap:2px;min-width:0}
.dp-tc .who b{font-family:var(--f-display);font-style:italic;font-stretch:108%;font-weight:800;font-size:1rem}
.dp-tc .who span{font-size:.78rem;color:var(--steel);line-height:1.35}
.dp-tl{display:flex;align-items:center;gap:.4rem;padding-top:.75rem;border-top:1px dashed rgba(11,23,53,.14);font-size:.78rem;font-weight:800;color:var(--blue);text-decoration:none;min-width:0}
.dp-tl em{font-style:normal;font-weight:600;color:var(--steel);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.dp-tl svg{margin-left:auto;flex:none;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s var(--ease)}
.dp-tl:hover{color:var(--orange)}.dp-tl:hover svg{transform:translate(2px,-2px)}
.dp-tl:focus-visible{outline:3px solid rgba(21,84,230,.4);outline-offset:3px;border-radius:6px}
.tctl{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:2px}
.tctl button{all:unset;cursor:pointer;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid var(--line);box-shadow:0 10px 20px -14px rgba(11,46,158,.6);transition:transform .25s,border-color .25s}
.tctl button:hover{transform:translateY(-2px);border-color:var(--orange)}
.tctl button:focus-visible{outline:3px solid rgba(21,84,230,.4);outline-offset:2px}
.tctl svg{width:18px;height:18px;fill:none;stroke:var(--ink);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.tdots{display:flex;gap:7px;align-items:center}
.tdots i{width:7px;height:7px;border-radius:50%;background:#cfd7ea;transition:width .35s var(--ease),background .35s}
.tdots i.on{width:26px;border-radius:99px;background:linear-gradient(90deg,var(--orange),var(--amber))}
@media(max-width:560px){.tctl{justify-content:flex-start;gap:10px}.tctl button{width:38px;height:38px}}

/* ---------- FAQ: lista de perguntas + painel de resposta ---------- */
@property --fqA{syntax:"<angle>";inherits:false;initial-value:0deg}
.faqs .head{margin-bottom:clamp(14px,2.6vh,30px);gap:.7rem}
.fqlist{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);column-gap:clamp(26px,4.5vw,72px);align-items:stretch}
.fqglow{position:absolute;right:-4%;top:2%;width:46%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,90,18,.16),rgba(21,84,230,.07) 55%,transparent 70%);filter:blur(14px);pointer-events:none;z-index:0;animation:fqg 10s ease-in-out infinite alternate}
@keyframes fqg{from{transform:translate(0,0) scale(1)}to{transform:translate(-6%,8%) scale(1.15)}}
.fq{display:contents}
.fq h3{grid-column:1;margin:0;font:inherit;position:relative;z-index:1}
.fqb{all:unset;position:relative;box-sizing:border-box;width:100%;display:flex;align-items:center;gap:.95rem;padding:clamp(.38rem,1.15vh,.7rem) .7rem;border-radius:14px;cursor:pointer;font-weight:700;font-size:clamp(.86rem,1.02vw,.98rem);line-height:1.3;color:#44506d;transition:background .3s,color .3s,transform .35s var(--ease),box-shadow .35s}
.fqb em{flex:none;width:1.7rem;font-style:normal;font-family:var(--f-data);font-size:.68rem;letter-spacing:.08em;color:#a3aec8;transition:color .3s}
.fqb i{flex:none;margin-left:auto;width:8px;height:8px;border-right:2px solid currentColor;border-top:2px solid currentColor;transform:rotate(45deg);opacity:0;transition:opacity .3s,transform .35s var(--ease)}
.fqb:hover{background:rgba(21,84,230,.05);color:var(--ink);transform:translateX(5px)}
.fqb:hover i{opacity:.6}
.fqb:focus-visible{outline:3px solid rgba(21,84,230,.4);outline-offset:2px}
.fq.on .fqb{background:#fff;color:var(--ink);box-shadow:0 16px 30px -22px rgba(11,46,158,.55),inset 3px 0 0 var(--orange);transform:translateX(5px)}
.fq.on .fqb em{color:var(--orange)}
.fq.on .fqb i{opacity:1;color:var(--orange);transform:rotate(45deg) translate(2px,-2px)}
.fqlist.auto .fq.on .fqb:after{content:"";position:absolute;left:.7rem;right:.7rem;bottom:2px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--orange),var(--amber));transform-origin:left;animation:fqp 9s linear forwards}
.fqlist.hov .fq.on .fqb:after{animation-play-state:paused}
@keyframes fqp{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.fqa{grid-column:2;grid-row:1/span 12;position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;gap:clamp(.6rem,1.6vh,1.1rem);padding:clamp(24px,4.4vh,48px) clamp(24px,3vw,46px);border-radius:28px;background:rgba(255,255,255,.92);box-shadow:0 40px 70px -46px rgba(11,46,158,.6);animation:fqin .55s var(--ease)}
.fqa:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;pointer-events:none;background:conic-gradient(from var(--fqA),rgba(21,84,230,.12) 0 14%,rgba(255,90,18,.8) 26%,rgba(255,178,28,.85) 36%,rgba(21,84,230,.7) 48%,rgba(21,84,230,.12) 60% 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);mask-composite:exclude;animation:fqs 10s linear infinite}
@keyframes fqs{to{--fqA:360deg}}
@keyframes fqin{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.fqa[hidden]{display:none}
.fqn{font-family:var(--f-display);font-style:italic;font-weight:900;font-size:clamp(2.6rem,7.5vh,4.4rem);line-height:1;background:linear-gradient(135deg,var(--orange),var(--amber) 55%,var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent}
.fqa p{margin:0;font-size:clamp(.95rem,1.18vw,1.08rem);line-height:1.75;color:#2c3652}
@media(max-width:900px){
  .fqlist{display:block}.fq{display:block}.fqglow{display:none}
  .fqb{padding:.8rem .6rem}.fqb i{opacity:.5}
  .fq.on .fqb i{transform:rotate(135deg) translate(-2px,2px)}
  .fqa{margin:.1rem 0 .6rem;padding:18px;border-radius:20px;animation:fqin .4s var(--ease)}
  .fqn{display:none}.fqa p{font-size:.94rem}
  .fqlist.auto .fq.on .fqb:after{display:none}
}
@media(prefers-reduced-motion:reduce){.fqa:before,.fqglow{animation:none}.fqa{animation:none}.fqlist.auto .fq.on .fqb:after{animation:none}}

/* ---------- Aceli: discreta, quase marca d'água, com mais vida ---------- */
.ai:not(.open) .avb{opacity:.72;filter:saturate(.8) drop-shadow(0 6px 10px rgba(11,46,158,.14));transition:opacity .5s,filter .5s,transform .4s var(--ease)}
.ai:not(.open) .aib{opacity:.8;animation:none;box-shadow:0 8px 20px -16px rgba(11,46,158,.4);transition:opacity .5s,transform .35s var(--ease)}
.ai:not(.open) .aib::before{opacity:.5}
.ai:not(.open) .aib::after{background:rgba(255,255,255,.9)}
.ai:not(.open):hover .avb,.ai:not(.open):focus-within .avb,.ai.pt .avb{opacity:1;filter:drop-shadow(0 8px 12px rgba(11,46,158,.25))}
.ai:not(.open):hover .aib,.ai:not(.open):focus-within .aib,.ai.pt .aib{opacity:1}
.ai:not(.open) .aiv{opacity:.96}
.hd{animation:hdx 9s ease-in-out infinite}
@keyframes hdx{0%,100%{transform:rotate(0) translate(0,0)}14%{transform:rotate(-3.4deg) translate(-1px,-.5px)}30%{transform:rotate(2.8deg) translate(1.2px,0)}46%{transform:rotate(0) translate(0,0)}64%{transform:rotate(3.6deg) translate(1.4px,-.4px)}80%{transform:rotate(-2.2deg) translate(-.8px,0)}}
.eyes{animation:eyx 5.2s ease-in-out infinite}
@keyframes eyx{0%,100%{transform:translateX(0) scaleY(1)}8%{transform:translateX(-1.1px) scaleY(1)}20%{transform:translateX(1.2px) scaleY(1)}34%{transform:translateX(0) scaleY(1)}62%{transform:translateX(0) scaleY(1)}65%{transform:translateX(0) scaleY(.04)}68%{transform:translateX(0) scaleY(1)}71%{transform:translateX(0) scaleY(.04)}74%{transform:translateX(0) scaleY(1)}}
.bd{transform-box:view-box;transform-origin:60px 120px;animation:bdx 5.5s ease-in-out infinite}
@keyframes bdx{0%,100%{transform:scale(1)}50%{transform:scale(1.012,1.02)}}
@media(prefers-reduced-motion:reduce){.hd,.eyes,.bd{animation:none!important}}

/* ---------- Respiro nos slides ---------- */
.head{gap:1rem;margin-bottom:clamp(20px,3.6vh,44px)}
.lead{line-height:1.7}
.eyebrow{margin-bottom:.1rem}
.rv{--rvs:.08s}

/* ---------- Dica "próximo" ---------- */
.nxh{all:unset;cursor:pointer;position:absolute;left:50%;bottom:clamp(4px,1vh,10px);transform:translateX(-50%);z-index:6;display:inline-flex;align-items:center;gap:.5rem;padding:.3rem .85rem .3rem .95rem;border-radius:999px;background:rgba(255,255,255,.78);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(11,23,53,.1);font-family:var(--f-data);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:#3a4766;opacity:.82;transition:opacity .3s,transform .35s var(--ease),border-color .3s,color .3s}
.nxh:hover,.nxh:focus-visible{opacity:1;transform:translateX(-50%) translateY(-2px);border-color:rgba(255,90,18,.5);color:var(--orange)}
.nxh:focus-visible{outline:3px solid rgba(21,84,230,.4);outline-offset:2px}
.nxh i{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-1px,-1px);animation:nxb 1.9s ease-in-out infinite}
@keyframes nxb{0%,100%{transform:rotate(45deg) translate(-1px,-1px)}50%{transform:rotate(45deg) translate(1px,1px)}}
.nxh b{font-weight:700;color:var(--ink)}
@media(max-width:700px),(max-height:620px){.nxh{display:none}}
@media(prefers-reduced-motion:reduce){.nxh i{animation:none}}
@media(max-height:740px){.head{margin-bottom:clamp(14px,2.4vh,26px)}}
@media(max-width:560px){.tctl{justify-content:flex-start;gap:10px}.tctl button{width:38px;height:38px}.ai:not(.open) .aib{font-size:.76rem;padding:0 .85rem}}

.nav.np #navlinks li.causa{display:none}
.tcar{-webkit-mask-image:linear-gradient(90deg,#000 94%,transparent);mask-image:linear-gradient(90deg,#000 94%,transparent)}
.tcar.end{-webkit-mask-image:none;mask-image:none}
.nav.ns .wrap{padding-inline:18px;gap:10px}
.nav.ns #navlinks{gap:.38rem}.nav.ns #navlinks a{font-size:.7rem}
