/* Baptistini Advocacia — site público (v2)
   Cores: amarelo #FFF23B · preto #111 · petróleo #1E2A3C · vermelho #D62828 · amarelo claro #FFFACD
   Departamentos: Front Office #F4A6DE · Legal Ops #C6A5F6 */
@property --ang{syntax:'<angle>';initial-value:0deg;inherits:false}
@property --pct{syntax:'<number>';initial-value:0;inherits:false}
@property --n{syntax:'<integer>';initial-value:0;inherits:false}

:root{
  --y:#FFF23B;--y2:#FFE45C;--k:#111111;--k2:#0b0b0d;--pet:#1E2A3C;--red:#D62828;--ly:#FFFACD;
  --pink:#F4A6DE;--lil:#C6A5F6;--txt:#28282A;--mut:#52525b;--line:#e4e4e7;--zap:#25D366;
  --ease:cubic-bezier(.2,.8,.2,1);--mola:cubic-bezier(.34,1.56,.64,1);
  --max:1240px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
main{overflow-x:clip}
body{margin:0;font-family:Sora,Inter,system-ui,sans-serif;color:var(--k);background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3,p,figure{margin:0}
button{font:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sec{padding:110px 0;position:relative}
.escuro{background:var(--k2);color:#fff;position:relative;overflow:hidden}
.olho{font-size:12px;font-weight:800;letter-spacing:.22em;text-transform:uppercase}

/* ——— títulos de seção: barra, texto que sobe, faixa preta que se pinta, selo B ——— */
.barra-vermelha{width:170px;height:10px;background:var(--red);margin-bottom:18px;transform:scaleX(0);transform-origin:left;transition:transform .9s var(--ease)}
.on .barra-vermelha,.on.barra-vermelha{transform:scaleX(1)}
.titulo{font-size:clamp(34px,5vw,56px);line-height:1.02;font-weight:800;text-transform:uppercase}
.tit .titulo{opacity:0;transform:translateY(40px) skewY(3deg);transition:opacity .8s var(--ease),transform .9s var(--ease)}
.tit.on .titulo{opacity:1;transform:none}
.titulo .chip{color:var(--k);background:linear-gradient(var(--k),var(--k)) no-repeat left/0% 100%;padding:0 12px;box-decoration-break:clone;-webkit-box-decoration-break:clone;transition:background-size .8s var(--ease) .35s,color .4s .6s}
.tit.on .titulo .chip{background-size:100% 100%;color:var(--y)}
.titulo .neon{color:var(--y);text-shadow:0 0 30px rgba(255,242,59,.45)}
.selo{display:inline-block;width:.9em;height:.9em;vertical-align:-.06em;margin-left:.22em;border-radius:50%;animation:selo 2.6s cubic-bezier(.3,.7,.4,1.4) infinite,selo-brilho 1.3s ease-in-out infinite alternate}
.selo.peq{width:1.1em;height:1.1em;vertical-align:-.25em;margin-left:.35em}
@keyframes selo{0%,58%,100%{transform:translateY(0) scale(1)}68%{transform:translateY(-.4em) scale(1.04,.96)}80%{transform:translateY(0) scale(1.14,.86)}88%{transform:translateY(-.14em) scale(.96,1.05)}94%{transform:translateY(0) scale(1.03,.97)}}
@keyframes selo-brilho{from{filter:drop-shadow(0 0 3px rgba(255,242,59,.7)) drop-shadow(0 0 8px rgba(255,242,59,.35))}to{filter:drop-shadow(0 0 7px rgba(255,242,59,1)) drop-shadow(0 0 22px rgba(255,242,59,.8))}}

/* ——— revelar na rolagem ——— */
.rv{opacity:0;transform:translateY(34px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.rv.on{opacity:1;transform:none}
[data-d="1"]{transition-delay:.1s}[data-d="2"]{transition-delay:.2s}[data-d="3"]{transition-delay:.3s}[data-d="4"]{transition-delay:.4s}
/* pular ao aparecer (cards, círculos, fotos da equipe) */
.salta{opacity:0;transform:translateY(60px) scale(.85)}
.salta.on{animation:pula .95s var(--mola) forwards;animation-delay:calc(var(--i,0) * .12s)}
.salta.entrou{opacity:1;transform:none;animation:none}
@keyframes pula{0%{opacity:0;transform:translateY(60px) scale(.85)}55%{opacity:1;transform:translateY(-16px) scale(1.05)}78%{transform:translateY(5px) scale(.99)}100%{opacity:1;transform:none}}

/* ——— contorno de luz que persegue a silhueta (recortes) ——— */
.traco{transition:transform .45s var(--ease)}
.traco:hover,.traco.tap,.alvo-traco:hover .traco,.alvo-traco.tap .traco{animation:persegue 1s linear infinite}
@keyframes persegue{
  0%,100%{filter:drop-shadow(5px 0 0 #FFF23B) drop-shadow(0 0 16px rgba(255,242,59,.95))}
  25%{filter:drop-shadow(0 5px 0 #FFF23B) drop-shadow(0 0 16px rgba(255,242,59,.95))}
  50%{filter:drop-shadow(-5px 0 0 #FFF23B) drop-shadow(0 0 16px rgba(255,242,59,.95))}
  75%{filter:drop-shadow(0 -5px 0 #FFF23B) drop-shadow(0 0 16px rgba(255,242,59,.95))}
}
/* borda viva: um risco de luz amarela correndo pela borda */
.borda-viva{position:relative;isolation:isolate}
.borda-viva::after{content:"";position:absolute;inset:0;border-radius:inherit;padding:3px;background:conic-gradient(from var(--ang),transparent 0 62%,rgba(255,242,59,.15) 70%,#FFF23B 86%,#fff 90%,transparent 94%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .25s;pointer-events:none;z-index:6}
.borda-viva:hover::after,.borda-viva.tap::after{opacity:1;animation:gira .9s linear infinite}
@keyframes gira{to{--ang:360deg}}

/* ——— cabeçalho (adormece parado, acende ao mexer) ——— */
.topo{position:fixed;top:14px;left:0;right:0;z-index:50;padding:0 16px;transition:top .35s var(--ease)}
.topo-in{max-width:var(--max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 10px 10px 20px;border-radius:22px;background:linear-gradient(110deg,var(--y) 0%,var(--y) 55%,var(--y2) 100%);box-shadow:0 0 0 1px rgba(17,17,17,.08),0 18px 50px rgba(0,0,0,.35),0 0 60px rgba(255,242,59,.3);transition:opacity .9s var(--ease),filter .9s var(--ease),transform .9s var(--ease),box-shadow .9s,padding .35s var(--ease)}
.topo.rolou{top:8px}
.topo.rolou .topo-in{padding-top:6px;padding-bottom:6px}
.topo.dorme .topo-in{opacity:.16;filter:saturate(.2) brightness(.9);transform:scale(.97);box-shadow:none}
.topo.liga .topo-in{animation:liga .7s steps(1) 1}
@keyframes liga{0%{opacity:.4;box-shadow:0 0 90px rgba(255,242,59,.9)}15%{opacity:.15}30%{opacity:1;box-shadow:0 0 120px rgba(255,242,59,1)}45%{opacity:.55}60%{opacity:1}100%{opacity:1}}
/* logo por extenso ⇄ selo amarelo (revezam sozinhos e no mouse) */
.marca{display:block;text-decoration:none;flex:0 0 auto}
.marca-palco{position:relative;display:block;width:210px;height:48px;perspective:600px;transition:width .35s var(--ease),height .35s var(--ease)}
.topo.rolou .marca-palco{width:180px;height:41px}
.m-b,.m-txt{position:absolute;left:0;top:0;width:100%;height:100%;max-width:none;transition:transform .6s var(--mola),opacity .35s,filter .35s,clip-path .55s var(--ease)}
.m-b{clip-path:inset(0 79% 0 0);transform-origin:10% 50%}
.m-txt{clip-path:inset(0 0 0 21%);transform-origin:21% 50%}
.m-selo{position:absolute;left:-7px;top:50%;width:54px;height:54px;margin-top:-27px;border-radius:50%;opacity:0;transform:rotateY(-180deg) scale(.4);transition:transform .75s var(--mola),opacity .25s;box-shadow:0 0 0 3px var(--k)}
.m-selo img{width:100%;height:100%;border-radius:50%}
.m-fala{position:absolute;left:58px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:5px;font-size:15px;font-weight:800;letter-spacing:.03em;color:var(--k);white-space:nowrap;pointer-events:none}
.m-fala i{font-style:normal;opacity:0;transform:translateY(12px) scale(.5);transition:opacity .2s,transform .5s var(--mola)}
.m-fala i+i::before{content:"·";margin-right:5px;color:var(--red)}
.marca.selo-on .m-b{opacity:0;transform:rotateY(90deg) scale(.6)}
.marca.selo-on .m-txt{opacity:0;transform:translateX(-26px) scaleX(.3);filter:blur(4px);clip-path:inset(0 0 0 64%)}
.marca.selo-on .m-selo{opacity:1;transform:none;animation:selo-luz 1.1s ease-in-out .6s infinite alternate}
.marca.selo-on .m-fala i{opacity:1;transform:none}
.marca.selo-on .m-fala i:nth-child(1){transition-delay:.3s}.marca.selo-on .m-fala i:nth-child(2){transition-delay:.4s}.marca.selo-on .m-fala i:nth-child(3){transition-delay:.5s}.marca.selo-on .m-fala i:nth-child(4){transition-delay:.6s}.marca.selo-on .m-fala i:nth-child(5){transition-delay:.7s}
@keyframes selo-luz{from{box-shadow:0 0 0 3px var(--k),0 0 0 0 rgba(255,255,255,0)}to{box-shadow:0 0 0 3px var(--k),0 0 0 6px rgba(255,255,255,.9),0 0 26px 8px rgba(255,255,255,.75)}}
.topo.rolou .m-selo{width:48px;height:48px;margin-top:-24px;left:-5px}
.topo.rolou .m-fala{left:52px;font-size:13px}
.menu{display:flex;align-items:center;gap:16px}
.menu a{position:relative;text-decoration:none;color:var(--k);font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:8px 2px;transition:transform .2s;white-space:nowrap}
.menu a:hover{transform:translateY(-2px) scale(1.06)}
.menu a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--red),var(--k));transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.menu a:hover::after,.menu a.ativo::after{transform:scaleX(1)}
.btn-cliente{position:relative;display:inline-flex;align-items:center;gap:10px;background:var(--k);color:var(--y)!important;text-decoration:none;font-weight:800;font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:12px 18px 12px 12px;border-radius:14px;isolation:isolate;transition:transform .2s;white-space:nowrap}
.btn-cliente::before{content:"";position:absolute;inset:-2px;border-radius:16px;background:conic-gradient(from var(--ang),var(--y),var(--pink),var(--lil),var(--y));z-index:-2;animation:gira 3.5s linear infinite}
.btn-cliente::after{content:"";position:absolute;inset:0;border-radius:14px;background:var(--k);z-index:-1}
.btn-cliente:hover{transform:translateY(-2px) scale(1.05)}
.ico-cli{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,var(--y),var(--pink));color:var(--k)}
.burger{display:none;width:46px;height:46px;border-radius:14px;border:0;background:var(--k);color:var(--y);cursor:pointer;place-items:center}

/* ——— topo / hero ——— */
.hero{position:relative;min-height:100vh;background:#050506;color:#fff;overflow:hidden;--mx:50%;--my:60%}
.hero-foto{position:absolute;inset:-4%;background:url(../img/escritorio/recepcao.webp) center/cover;animation:kenburns 14s ease-out both}
@keyframes kenburns{from{transform:scale(1.18);opacity:0}to{transform:scale(1);opacity:.42}}
.hero-tinta{position:absolute;inset:0;background:radial-gradient(60% 55% at 50% 62%,rgba(255,242,59,.22),transparent 70%),linear-gradient(180deg,rgba(5,5,6,.6) 0%,rgba(5,5,6,.35) 40%,rgba(5,5,6,.9) 100%)}
.luz{position:absolute;inset:0;pointer-events:none;background:radial-gradient(420px circle at var(--mx) var(--my),rgba(255,242,59,.16),transparent 60%)}
.orb{position:absolute;border-radius:50%;filter:blur(70px);animation:deriva 16s ease-in-out infinite alternate;pointer-events:none}
@keyframes deriva{from{transform:translate(0,0) scale(1)}to{transform:translate(60px,-40px) scale(1.15)}}
.grade{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,242,59,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,242,59,.06) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(70% 60% at 50% 70%,#000 20%,transparent 75%);mask-image:radial-gradient(70% 60% at 50% 70%,#000 20%,transparent 75%)}
.hero-titulo{position:relative;z-index:3;padding-top:150px;text-align:center;perspective:900px}
.hero h1{position:relative;max-width:1100px;margin:0 auto;font-size:clamp(30px,4.6vw,62px);line-height:1.1;font-weight:300;text-transform:uppercase;letter-spacing:.01em;transform-style:preserve-3d;will-change:transform}
.palavra{display:inline-block;opacity:0;animation:surge .9s var(--ease) both;will-change:transform,opacity}
@keyframes surge{from{opacity:0;transform:translateY(55%) rotateX(60deg);filter:blur(10px)}to{opacity:1;transform:none;filter:none}}
.neon-txt{color:var(--y);font-weight:800;animation:neon 3.4s ease-in-out 1.8s infinite}
@keyframes neon{0%,100%{text-shadow:0 0 6px rgba(255,242,59,.9),0 0 22px rgba(255,242,59,.55),0 0 48px rgba(255,242,59,.35)}48%{text-shadow:0 0 2px rgba(255,242,59,.5),0 0 10px rgba(255,242,59,.25)}50%{text-shadow:none}52%{text-shadow:0 0 6px rgba(255,242,59,.9),0 0 26px rgba(255,242,59,.6),0 0 60px rgba(255,242,59,.4)}}
.w-neg{position:relative;z-index:4}
.w-neg.destaque strong{text-shadow:0 0 10px rgba(255,242,59,1),0 0 34px rgba(255,242,59,.8),0 0 80px rgba(255,242,59,.55),0 6px 30px rgba(0,0,0,.9)}
.dica-mouse{display:inline-flex;align-items:center;gap:8px;margin-top:18px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#a1a1aa;opacity:0;animation:entra 1s var(--ease) 3s forwards,pisca-suave 2.4s ease-in-out 4s infinite}
@keyframes pisca-suave{50%{opacity:.45}}
.palco{position:relative;z-index:2;height:700px;max-width:var(--max);margin:0 auto}
.halo{position:absolute;left:50%;bottom:40px;width:620px;height:620px;margin-left:-310px;border-radius:50%;background:radial-gradient(circle,rgba(255,242,59,.55) 0%,rgba(255,242,59,.12) 45%,transparent 70%);animation:pulsa 4s ease-in-out infinite}
@keyframes pulsa{0%,100%{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}
.anel{position:absolute;left:50%;bottom:110px;width:460px;height:460px;margin-left:-230px;border-radius:50%;border:2px solid rgba(255,242,59,.5);box-shadow:0 0 30px rgba(255,242,59,.35),inset 0 0 30px rgba(255,242,59,.2)}
.bapa{position:absolute;left:50%;bottom:0;width:430px;margin-left:-215px;will-change:transform}
.bapa-in{animation:sobe 1.4s var(--ease) 1.2s both}
@keyframes sobe{from{opacity:0;transform:translateY(120px)}to{opacity:1;transform:none}}
.bapa img{width:100%;height:auto;animation:flutua 6s ease-in-out 2.6s infinite;filter:drop-shadow(0 30px 60px rgba(0,0,0,.6)) drop-shadow(0 0 40px rgba(255,242,59,.25))}
.bapa img:hover,.bapa img.tap{animation:flutua 6s ease-in-out infinite,persegue 1s linear infinite}
@keyframes flutua{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.chip-ia{position:absolute;left:50%;bottom:340px;margin-left:170px;display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.14em;color:var(--k);background:var(--y);border-radius:999px;padding:8px 14px;box-shadow:0 0 24px rgba(255,242,59,.6);white-space:nowrap}
.ponto{width:8px;height:8px;border-radius:50%;background:var(--red);animation:pisca 1.2s ease-in-out infinite}
@keyframes pisca{50%{opacity:.25}}
.entra{animation:entra 1s var(--ease) both}
@keyframes entra{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.hero-esq{position:absolute;left:24px;top:70px;width:380px;display:flex;flex-direction:column;gap:22px;animation-delay:1.6s}
.hero-esq p{font-size:17px;line-height:1.6;color:#e4e4e7}
.hero-dir{position:absolute;right:24px;top:90px;width:300px;animation-delay:1.9s}

/* ——— botões ——— */
.cta1{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:12px;background:var(--y);color:var(--k)!important;text-decoration:none;font-weight:800;font-size:16px;padding:20px 26px;border-radius:16px;animation:chama 2.4s ease-out infinite;transition:transform .2s;align-self:flex-start}
.cta1::before{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.85),transparent);transform:skewX(-20deg);animation:reflexo 3s ease-in-out infinite}
.cta1 .seta{display:inline-flex;transition:transform .25s}.cta1:hover .seta{transform:translateX(6px)}
@keyframes chama{0%{box-shadow:0 0 0 0 rgba(255,242,59,.65),0 10px 40px rgba(255,242,59,.35)}70%{box-shadow:0 0 0 18px rgba(255,242,59,0),0 10px 40px rgba(255,242,59,.35)}100%{box-shadow:0 0 0 0 rgba(255,242,59,0),0 10px 40px rgba(255,242,59,.35)}}
@keyframes reflexo{0%{left:-60%}55%,100%{left:130%}}
.cta2{position:relative;display:inline-flex;align-items:center;gap:12px;color:#fff!important;text-decoration:none;font-weight:700;font-size:16px;padding:20px 26px;border-radius:16px;isolation:isolate;transition:transform .2s;align-self:flex-start}
.cta2::before{content:"";position:absolute;inset:-2px;border-radius:18px;background:conic-gradient(from var(--ang),var(--y),transparent 25%,var(--lil) 50%,transparent 75%,var(--y));z-index:-2;animation:gira 3s linear infinite}
.cta2::after{content:"";position:absolute;inset:0;border-radius:16px;background:rgba(17,17,17,.92);z-index:-1}
.cta2:hover::before{filter:drop-shadow(0 0 12px var(--y))}
.ima{will-change:transform}
.cta-preto{background:var(--k);color:var(--y)!important;animation:none;box-shadow:0 10px 30px rgba(0,0,0,.25)}

/* ——— vidro ——— */
.vidro{background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.12);border-radius:24px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .35s var(--ease),border-color .3s,box-shadow .3s}
.vidro:hover,.vidro.tap{transform:translateY(-6px) scale(1.05);border-color:rgba(255,242,59,.6);box-shadow:0 0 0 1px rgba(255,242,59,.3),0 0 40px rgba(255,242,59,.22)}
.card-30{padding:24px;display:flex;flex-direction:column;gap:10px}
.card-30 .big{font-size:54px;font-weight:800;line-height:1;color:var(--y);text-shadow:0 0 24px rgba(255,242,59,.5)}
.card-30 .lbl{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.card-30 hr{border:0;height:1px;background:rgba(255,255,255,.12);margin:6px 0}
.link-y{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--y);text-decoration:none}

/* ——— contadores ——— */
.conta{counter-reset:n var(--n)}
.conta::before{content:counter(n)}
.on .conta,.conta.on{animation:conta 2.4s var(--ease) both}
@keyframes conta{from{--n:0}}

/* ——— faixas que correm ——— */
.trilho{display:flex;width:max-content;animation:corre 40s linear infinite}
.trilho.rapido{animation-duration:16s}
.trilho.reverso{animation-direction:reverse;animation-duration:24s}
.pausa:hover .trilho{animation-play-state:paused}
@keyframes corre{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.faixa-logos{position:relative;z-index:4;margin-top:-118px;padding:34px 0 40px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.faixa-logos .trilho{gap:34px;align-items:center}
.logo-cli{position:relative;flex:0 0 auto;width:190px;height:96px;display:flex;align-items:center;justify-content:center;opacity:.85;transition:opacity .25s;text-decoration:none;cursor:default}
a.logo-cli{cursor:pointer}
.logo-cli img{max-width:150px;max-height:64px;width:auto;height:auto;filter:drop-shadow(0 2px 10px rgba(0,0,0,.85));transition:transform .45s var(--mola),filter .3s}
.logo-cli:hover,.logo-cli.tap{opacity:1;z-index:5}
.logo-cli:hover img,.logo-cli.tap img{transform:scale(1.75);filter:drop-shadow(0 0 14px rgba(255,242,59,.95)) drop-shadow(0 2px 10px rgba(0,0,0,.9))}
.logo-cli .vai{position:absolute;bottom:-4px;left:50%;transform:translate(-50%,8px);font-size:10px;font-weight:800;letter-spacing:.14em;color:var(--y);opacity:0;transition:opacity .25s,transform .25s;white-space:nowrap}
.logo-cli:hover .vai{opacity:1;transform:translate(-50%,0)}
.faixa-fala{background:var(--y);padding:18px 0;overflow:hidden;border-top:3px solid var(--k);border-bottom:3px solid var(--k);transform:rotate(-1.2deg) scale(1.03);position:relative;z-index:3}
.faixa-fala .trilho{gap:40px;font-size:28px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;align-items:center;animation-duration:30s}
.faixa-fala .pt{color:var(--red)}
.faixa-fala .fb{background:var(--k);color:var(--y);padding:2px 16px 4px;border-radius:10px;box-shadow:0 0 18px rgba(17,17,17,.25)}
.faixa-areas{background:var(--k);padding:16px 0;overflow:hidden}
.faixa-areas .trilho{gap:44px;font-size:20px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--y);white-space:nowrap}

/* ——— como trabalhamos (amarelo) ——— */
.como{background:var(--y);overflow:hidden}
.como::before{content:"";position:absolute;inset:0;background:radial-gradient(40% 50% at 85% 40%,rgba(255,255,255,.55),transparent 70%),repeating-linear-gradient(135deg,rgba(17,17,17,.035) 0 2px,transparent 2px 14px);pointer-events:none}
.como-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.passos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:34px}
.passo{position:relative;background:#fff;border-radius:24px;padding:24px;display:flex;flex-direction:column;gap:10px;box-shadow:0 1px 0 rgba(17,17,17,.08),0 18px 40px rgba(17,17,17,.08);transition:transform .35s var(--mola),box-shadow .3s;cursor:default}
.passo:hover,.passo.tap{transform:translateY(-8px) scale(1.07) rotate(-1deg);box-shadow:0 0 0 3px var(--k),0 24px 50px rgba(17,17,17,.2);z-index:2}
.passo .num{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;font-size:20px;font-weight:800;background:var(--k);color:var(--y);transition:transform .4s var(--mola)}
.passo:hover .num{transform:rotate(-10deg) scale(1.12)}
.passo h3{font-size:17px;font-weight:800;text-transform:uppercase}
.passo p{font-size:14px;line-height:1.55;color:var(--mut)}
.passo.zap-passo{background:var(--k);color:#fff}
.passo.zap-passo p{color:#d4d4d8}
.passo.zap-passo .num{background:var(--y);color:var(--k)}
.dif{display:inline-flex;align-items:center;gap:10px;margin-top:18px;padding:12px 16px;border-radius:14px;background:rgba(17,17,17,.06);font-size:14px;font-weight:700;text-decoration:none;transition:transform .25s,background .25s}
.dif:hover{transform:translateX(6px);background:rgba(17,17,17,.1)}
.dif b{background:var(--k);color:var(--y);border-radius:999px;padding:4px 10px;font-size:11px;letter-spacing:.12em}

/* celular com conversa */
.palco-zap{position:relative;height:640px}
.cel-wrap{position:absolute;left:50%;top:0;width:300px;height:620px;margin-left:-150px;border-radius:46px;animation:flutua2 6s ease-in-out infinite;z-index:3;transition:scale .4s var(--mola)}
.cel-wrap:hover,.cel-wrap.tap{scale:1.05}
@keyframes flutua2{0%,100%{translate:0 0}50%{translate:0 -12px}}
.cel{position:absolute;inset:0;border-radius:46px;background:#0b141a;border:3px solid #111;box-shadow:0 0 0 9px #050506,0 40px 90px rgba(17,17,17,.45);overflow:hidden;display:flex;flex-direction:column}
.cel-cab{display:flex;align-items:center;gap:10px;padding:34px 14px 12px;background:#1f2c33;color:#fff}
.cel-cab img{width:36px;height:36px;border-radius:50%}
.cel-cab b{display:block;font-size:13px}.cel-cab span{font-size:10px;color:#9fb3bd}
.conversa{flex:1;padding:12px 10px;display:flex;flex-direction:column;gap:8px;overflow:hidden;background:#0b141a radial-gradient(rgba(255,255,255,.04) 1px,transparent 1px) 0 0/14px 14px;justify-content:flex-end}
.msg{max-width:84%;padding:8px 10px 6px;border-radius:12px;font-size:12px;line-height:1.4;color:#e9edef;position:relative;opacity:0;transform:translateY(14px) scale(.96);transition:opacity .35s var(--ease),transform .35s var(--ease);display:none}
.msg.vis{display:block}
.msg.on{opacity:1;transform:none}
.msg.cli{align-self:flex-end;background:#005c4b;border-top-right-radius:4px}
.msg.esc{align-self:flex-start;background:#202c33;border-top-left-radius:4px}
.msg .quem{display:block;font-size:10px;font-weight:800;color:var(--y);margin-bottom:2px}
.msg .hora{display:block;text-align:right;font-size:9px;color:#8696a0;margin-top:2px}
.digitando{align-self:flex-start;background:#202c33;border-radius:12px;padding:10px 12px;display:none;gap:4px}
.digitando.vis{display:flex}
.digitando i{width:6px;height:6px;border-radius:50%;background:#8696a0;animation:pontinho 1s infinite}
.digitando i:nth-child(2){animation-delay:.15s}.digitando i:nth-child(3){animation-delay:.3s}
@keyframes pontinho{0%,60%,100%{transform:none;opacity:.5}30%{transform:translateY(-4px);opacity:1}}
.deck{width:200px;aspect-ratio:16/9;border-radius:8px;overflow:hidden;position:relative;margin-top:4px}
.deck-trilho{display:flex;width:300%;height:100%;animation:deck 7.5s var(--ease) infinite}
@keyframes deck{0%,28%{transform:translateX(0)}33%,61%{transform:translateX(-33.333%)}66%,94%{transform:translateX(-66.666%)}100%{transform:translateX(0)}}
.lamina{width:33.333%;height:100%;padding:9px;display:flex;flex-direction:column;gap:5px;font-weight:800;font-size:8px;letter-spacing:.06em;text-transform:uppercase}
.lamina.l1{background:#111;color:var(--y)}
.lamina.l2{background:var(--y);color:#111}
.lamina.l3{background:#fff;color:#111}
.lamina .ln{height:5px;border-radius:3px;background:currentColor;opacity:.25}
.lamina .tag{align-self:flex-start;background:var(--red);color:#fff;border-radius:4px;padding:2px 5px;font-size:7px}
.lamina .tl-linha{position:relative;height:2px;background:#111;margin:14px 4px 4px}
.lamina .tl-linha i{position:absolute;top:-4px;width:10px;height:10px;border-radius:50%;background:#111;border:2px solid var(--y)}
.lamina .ck{display:flex;align-items:center;gap:5px;font-size:7px}
.lamina .ck::before{content:"";width:8px;height:8px;border-radius:2px;background:#111}
.pdf{display:flex;align-items:center;gap:8px;background:#111b21;border-radius:8px;padding:8px;margin-top:4px}
.pdf .ic{width:28px;height:34px;border-radius:4px;background:var(--red);color:#fff;font-size:8px;font-weight:800;display:grid;place-items:center}
.pdf b{display:block;font-size:11px}.pdf span{font-size:9px;color:#8696a0}
.exemplo{position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:rgba(17,17,17,.6);white-space:nowrap}
.lamina-solta{position:absolute;width:210px;aspect-ratio:16/9;border-radius:14px;box-shadow:0 20px 40px rgba(17,17,17,.25);transition:transform .45s var(--mola);z-index:2;cursor:default}
.lamina-solta:hover,.lamina-solta.tap{transform:rotate(0) scale(1.25)!important;z-index:5}
.lamina-solta .lamina{width:100%;font-size:11px;padding:14px;gap:8px;border-radius:14px}
.lamina-solta .lamina .ln{height:7px}
.ls1{left:-40px;top:60px;transform:rotate(-12deg);animation:boia1 7s ease-in-out infinite}
.ls2{right:-50px;top:170px;transform:rotate(9deg);animation:boia2 8s ease-in-out infinite}
.ls3{left:-24px;bottom:70px;transform:rotate(7deg);animation:boia3 6.5s ease-in-out infinite}
@keyframes boia1{0%,100%{translate:0 0}50%{translate:0 -14px}}
@keyframes boia2{0%,100%{translate:0 0}50%{translate:-8px 12px}}
@keyframes boia3{0%,100%{translate:0 0}50%{translate:10px -10px}}

/* ——— áreas (pulam ao aparecer, vibram no mouse/clique) ——— */
.areas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.area{position:relative;border-radius:24px;padding:30px;background:#fff;border:1px solid var(--line);overflow:hidden;isolation:isolate;display:flex;flex-direction:column;gap:16px;min-height:250px;cursor:pointer;transition:box-shadow .3s,color .3s}
.area::before{content:"";position:absolute;inset:0;background:linear-gradient(140deg,var(--k) 0%,var(--pet) 100%);opacity:0;transition:opacity .35s;z-index:-1}
.area.entrou{transition:transform .35s var(--mola),box-shadow .3s,color .3s}
.area.entrou:hover,.area.entrou.tap{transform:translateY(-12px) scale(1.09);box-shadow:0 0 0 2px var(--y),0 24px 60px rgba(0,0,0,.2),0 0 50px rgba(255,242,59,.4);color:#fff;z-index:2;animation:vibra .55s ease-in-out}
.area.entrou.treme{animation:vibra2 .55s ease-in-out}
.area:hover::before,.area.tap::before{opacity:1}
@keyframes vibra{0%,100%{transform:translateY(-12px) scale(1.09) rotate(0)}12%{transform:translateY(-12px) scale(1.09) rotate(-3deg) translateX(-4px)}26%{transform:translateY(-12px) scale(1.09) rotate(3deg) translateX(4px)}40%{transform:translateY(-12px) scale(1.09) rotate(-2deg) translateX(-2px)}54%{transform:translateY(-12px) scale(1.09) rotate(2deg) translateX(2px)}70%{transform:translateY(-12px) scale(1.09) rotate(-1deg)}84%{transform:translateY(-12px) scale(1.09) rotate(1deg)}}
@keyframes vibra2{0%,100%{transform:translateY(-12px) scale(1.09) rotate(0)}12%{transform:translateY(-12px) scale(1.09) rotate(-3deg) translateX(-4px)}26%{transform:translateY(-12px) scale(1.09) rotate(3deg) translateX(4px)}40%{transform:translateY(-12px) scale(1.09) rotate(-2deg) translateX(-2px)}54%{transform:translateY(-12px) scale(1.09) rotate(2deg) translateX(2px)}70%{transform:translateY(-12px) scale(1.09) rotate(-1deg)}84%{transform:translateY(-12px) scale(1.09) rotate(1deg)}}
.area h3{font-size:22px;font-weight:800;text-transform:uppercase}
.area p{font-size:14px;line-height:1.6;color:var(--mut);transition:color .3s}
.area:hover p,.area.tap p{color:#d4d4d8}
.area .ico{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:var(--y);color:var(--k);transition:transform .45s var(--mola),box-shadow .3s}
.area:hover .ico,.area.tap .ico{transform:rotate(-12deg) scale(1.18);box-shadow:0 0 26px rgba(255,242,59,.9)}

/* ——— estados (bandeiras em círculos) ——— */
.estados{background:var(--y);color:var(--k);overflow:hidden}
.estados::before{content:"";position:absolute;inset:0;background:radial-gradient(45% 60% at 80% 30%,rgba(255,255,255,.6),transparent 70%),repeating-linear-gradient(135deg,rgba(17,17,17,.04) 0 2px,transparent 2px 14px);pointer-events:none}
.grade-esc{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(17,17,17,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(17,17,17,.06) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(60% 70% at 70% 50%,#000 20%,transparent 75%);mask-image:radial-gradient(60% 70% at 70% 50%,#000 20%,transparent 75%)}
.estados-grid{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}
.banner-br{display:flex;align-items:center;gap:22px;margin-top:28px;padding:22px;border-radius:24px;background:var(--k);color:#fff;box-shadow:0 20px 50px rgba(17,17,17,.35),0 0 0 3px var(--k);transform:rotate(-1.5deg);transition:transform .4s var(--mola),box-shadow .3s}
.banner-br:hover,.banner-br.tap{transform:rotate(0) scale(1.06);box-shadow:0 24px 60px rgba(17,17,17,.4),0 0 0 3px var(--k),0 0 0 7px #fff}
.banner-br strong{font-size:clamp(20px,2.4vw,30px);line-height:1.05;font-weight:800;text-transform:uppercase}
.banner-br strong span{color:var(--y);text-shadow:0 0 18px rgba(255,242,59,.6)}
.bandeira-onda{flex:0 0 auto;display:flex;width:150px;height:105px;filter:drop-shadow(0 8px 14px rgba(0,0,0,.35))}
.bandeira-onda i{flex:1 0 auto;height:100%;background:url(../img/bandeiras/br.webp) no-repeat;background-size:150px 105px;animation:ondula 1.6s ease-in-out infinite alternate}
@keyframes ondula{from{transform:translateY(-5px)}to{transform:translateY(5px)}}
.ufs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.uf{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;cursor:pointer}
.uf .disco{position:relative;width:100%;aspect-ratio:1;border-radius:50%;overflow:hidden;box-shadow:0 0 0 4px var(--k),0 12px 30px rgba(17,17,17,.35);transition:transform .45s var(--mola),box-shadow .3s}
.uf .disco img{width:100%;height:100%;object-fit:cover;transform-origin:left center;animation:tremula 2.4s ease-in-out infinite}
.uf .disco::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.35) 14%,rgba(0,0,0,.22) 30%,rgba(255,255,255,.3) 46%,rgba(0,0,0,.18) 62%,rgba(255,255,255,.3) 78%,rgba(0,0,0,0) 100%);background-size:220% 100%;mix-blend-mode:soft-light;animation:onda 2.6s linear infinite}
@keyframes onda{from{background-position:0 0}to{background-position:-220% 0}}
@keyframes tremula{0%,100%{transform:skewY(0) scaleX(1)}50%{transform:skewY(2.5deg) scaleX(1.04)}}
.uf:hover .disco,.uf.tap .disco{transform:scale(1.28) rotate(-6deg);box-shadow:0 0 0 4px var(--k),0 0 0 9px #fff,0 0 40px 10px rgba(255,255,255,.8),0 18px 40px rgba(17,17,17,.45)}
.uf.gira .disco{animation:gira-uf .8s var(--mola)}
@keyframes gira-uf{from{transform:scale(1.28) rotate(0)}to{transform:scale(1.28) rotate(360deg)}}
.uf b{font-size:22px;font-weight:800;color:var(--k)}
.uf small{display:block;font-size:11px;color:#3f3f46;letter-spacing:.06em;font-weight:600}
.uf.sede .disco{box-shadow:0 0 0 5px var(--k),0 0 0 10px #fff,0 0 36px 6px rgba(255,255,255,.7)}
.uf .sede-tag{font-size:10px;font-weight:800;letter-spacing:.14em;background:var(--k);color:var(--y);border-radius:999px;padding:3px 9px}

/* ——— mosaico de fotos ——— */
.escritorio{background:#fff}
.mosaico{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,200px);gap:14px}
.foto{position:relative;border-radius:22px;overflow:hidden;background:var(--k);cursor:zoom-in;transition:transform .5s var(--mola),box-shadow .45s,filter .45s;z-index:1;padding:0;border:0}
.foto img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.mosaico:hover .foto{filter:brightness(.45) saturate(.6)}
.mosaico .foto:hover,.mosaico .foto:focus-visible,.mosaico .foto.tap{filter:none;transform:scale(1.14);z-index:5;box-shadow:0 0 0 3px var(--y),0 0 30px rgba(255,242,59,.9),0 0 90px rgba(255,242,59,.45),0 30px 60px rgba(0,0,0,.5);outline:none}
.mosaico .foto:hover img{transform:scale(1.08)}
.foto .leg{position:absolute;left:14px;bottom:14px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;background:var(--y);color:var(--k);border-radius:999px;padding:6px 12px;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s;z-index:7}
.foto:hover .leg,.foto:focus-visible .leg,.foto.tap .leg{opacity:1;transform:none}
.f1{grid-area:1/1/3/3}.f2{grid-area:1/3/3/4}.f3{grid-area:1/4/2/5}.f4{grid-area:2/4/3/5}.f5{grid-area:3/1/4/3}.f6{grid-area:3/3/5/4}.f7{grid-area:3/4/4/5}.f8{grid-area:4/1/5/2}.f9{grid-area:4/2/5/3}.f10{grid-area:4/4/5/5}
.f2 img,.f6 img{object-position:center 40%}.f4 img{object-position:center 35%}
.lightbox{position:fixed;inset:0;z-index:100;background:rgba(5,5,6,.92);display:none;align-items:center;justify-content:center;padding:24px;cursor:zoom-out}
.lightbox.aberto{display:flex;animation:entra .4s var(--ease)}
.lightbox img{max-height:88vh;max-width:min(1100px,94vw);border-radius:22px;box-shadow:0 0 0 3px var(--y),0 0 60px rgba(255,242,59,.5)}

/* ——— equipe ——— */
.equipe{background:var(--k);color:#fff;overflow:hidden}
.equipe::before{content:"";position:absolute;inset:0;background:radial-gradient(50% 60% at 50% 100%,rgba(255,242,59,.18),transparent 70%);pointer-events:none}
.legenda{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.legenda a{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#e4e4e7;text-decoration:none;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);transition:transform .3s var(--mola),border-color .3s}
.legenda a::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--c1);box-shadow:0 0 10px var(--c1)}
.legenda a:hover{transform:scale(1.08);border-color:var(--c1)}
.time2{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 26px;margin-top:46px}
.pessoa{display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;cursor:pointer}
.pessoa .aro{position:relative;width:min(100%,210px);aspect-ratio:1;border-radius:50%;padding:6px;background:conic-gradient(from var(--ang),var(--c1),var(--c2) 30%,rgba(255,255,255,.08) 50%,var(--c2) 70%,var(--c1));animation:gira 5s linear infinite;box-shadow:0 0 30px color-mix(in srgb,var(--c1) 45%,transparent);transition:transform .5s var(--mola),box-shadow .35s}
.pessoa .aro img{width:100%;height:100%;border-radius:50%;object-fit:cover;border:4px solid var(--k);transition:transform .6s var(--ease),filter .4s;filter:saturate(.92)}
.pessoa.entrou:hover .aro,.pessoa.entrou.tap .aro{transform:translateY(-10px) scale(1.15);animation-duration:1s;box-shadow:0 0 0 2px var(--c1),0 0 46px var(--c1),0 0 100px color-mix(in srgb,var(--c1) 55%,transparent)}
.pessoa:hover .aro img,.pessoa.tap .aro img{filter:saturate(1.1)}
.pessoa figcaption{display:flex;flex-direction:column;gap:6px;align-items:center}
.pessoa figcaption b{font-size:17px;font-weight:800}
.pessoa figcaption span{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--k);background:var(--c1);border-radius:999px;padding:4px 10px;box-shadow:0 0 14px color-mix(in srgb,var(--c1) 60%,transparent)}
.obrigado{position:relative;margin-top:54px;text-align:center;font-size:clamp(18px,2vw,24px);font-weight:700;line-height:1.5;color:#e4e4e7}
.obrigado strong{color:var(--y)}
.tambem{position:relative;margin-top:10px;text-align:center;font-size:13px;color:#a1a1aa}

/* ——— depoimentos ——— */
.depo-banner{display:grid;grid-template-columns:.9fr 1.1fr;gap:18px;margin-bottom:34px}
.nota-card{position:relative;border-radius:28px;overflow:hidden;color:#fff;padding:34px;display:flex;flex-direction:column;justify-content:flex-end;min-height:300px;text-decoration:none;isolation:isolate;transition:transform .4s var(--mola)}
.nota-card::before{content:"";position:absolute;inset:0;background:url(../img/escritorio/sala.webp) center/cover;z-index:-2;transition:transform 1.2s var(--ease)}
.nota-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(17,17,17,.15),rgba(17,17,17,.88));z-index:-1}
.nota-card:hover,.nota-card.tap{transform:scale(1.04)}
.nota-card:hover::before{transform:scale(1.1)}
.nota-card .n{font-size:96px;font-weight:800;line-height:.9;color:var(--y);text-shadow:0 0 40px rgba(255,242,59,.5)}
.estrelas{display:flex;gap:4px;font-size:30px;line-height:1}
.estrelas i{font-style:normal;color:#52525b;transition:color .3s,transform .4s var(--mola),text-shadow .3s}
.on .estrelas i{color:#f5b301;text-shadow:0 0 16px rgba(245,179,1,.7);transform:scale(1.15)}
.on .estrelas i:nth-child(2){transition-delay:.15s}.on .estrelas i:nth-child(3){transition-delay:.3s}.on .estrelas i:nth-child(4){transition-delay:.45s}.on .estrelas i:nth-child(5){transition-delay:.6s}
.nota-card .sub{font-size:15px;font-weight:700;margin-top:8px}
.nota-card .ver{margin-top:6px;font-size:12px;color:var(--y);text-decoration:underline}
.nuvem{position:relative;border-radius:28px;background:var(--ly);min-height:300px;overflow:hidden;padding:26px}
.nuvem h3{position:relative;z-index:2;font-size:13px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.nuvem p{position:relative;z-index:2;font-size:12px;color:var(--mut);margin-top:4px}
.bolha-p{position:relative;flex:0 0 auto;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-align:center;font-weight:800;line-height:1.1;background:var(--k);color:var(--y);box-shadow:0 10px 24px rgba(17,17,17,.2);animation:paira 5s ease-in-out infinite;transition:transform .4s var(--mola);cursor:default}
.bolha-p span{display:block;font-size:10px;color:#fff;font-weight:700;letter-spacing:0}
.bolha-p.cl{background:var(--y);color:var(--k)}.bolha-p.cl span{color:var(--k)}
.bolha-p:hover,.bolha-p.tap{transform:scale(1.25);z-index:3}
@keyframes paira{0%,100%{translate:0 0}50%{translate:0 -12px}}
.depo-trilho{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.depo-trilho .trilho{gap:18px;animation-duration:80s;padding:22px 0}
.depo-trilho.rev .trilho{animation-direction:reverse;animation-duration:90s}
.dep{flex:0 0 380px;border:1px solid var(--line);border-radius:24px;padding:26px;display:flex;flex-direction:column;gap:14px;background:#fff;transition:transform .35s var(--mola),box-shadow .3s;transform-style:preserve-3d}
.dep:nth-child(3n+2){background:var(--ly)}
.dep:hover,.dep.tap{box-shadow:0 0 0 2px var(--k),0 24px 50px rgba(0,0,0,.18);z-index:2}
.dep .est{color:#f5b301;font-size:18px;letter-spacing:2px}
.dep p{font-size:15px;line-height:1.6;color:var(--txt)}
.dep .quem{display:flex;align-items:center;gap:12px;margin-top:auto}
.dep .av{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:var(--k);background:linear-gradient(135deg,var(--y),var(--pink))}
.dep .quem b{font-size:14px}
.dep .quem span{display:block;font-size:12px;color:var(--mut)}
.dep-foto{flex:0 0 280px;border-radius:24px;overflow:hidden;position:relative;transition:transform .4s var(--mola)}
.dep-foto img{width:100%;height:100%;object-fit:cover}
.dep-foto span{position:absolute;left:14px;bottom:14px;background:var(--y);color:var(--k);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:6px 12px}
.dep-foto:hover,.dep-foto.tap{transform:scale(1.08) rotate(-1deg);z-index:2}

/* ——— manifesto ——— */
.manifesto{background:radial-gradient(70% 90% at 20% 40%,var(--pet) 0%,var(--k2) 70%);color:#fff;position:relative;overflow:hidden;padding-top:90px}
.imprensa-tit{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.imprensa-tit span{font-size:12px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#a1a1aa}
.imprensa-tit i{flex:1;height:1px;background:rgba(255,255,255,.15)}
.recortes{overflow:hidden;padding:26px 0 34px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.recortes .trilho{gap:26px;animation-duration:70s;align-items:center}
.recorte{flex:0 0 300px;display:flex;flex-direction:column;gap:10px;padding:18px 18px 16px;background:#f4efe2;background-image:repeating-linear-gradient(0deg,rgba(0,0,0,.025) 0 1px,transparent 1px 4px);color:#1a1a1a;text-decoration:none;border-radius:4px;box-shadow:0 14px 30px rgba(0,0,0,.45);transform:rotate(var(--r,-2deg));transition:transform .45s var(--mola),box-shadow .3s;position:relative}
.recorte::before{content:"";position:absolute;left:50%;top:-10px;width:70px;height:20px;margin-left:-35px;background:rgba(255,242,59,.75);transform:rotate(-3deg);box-shadow:0 2px 6px rgba(0,0,0,.2)}
.recorte:hover,.recorte.tap{transform:rotate(0) scale(1.14);box-shadow:0 0 0 3px var(--y),0 24px 50px rgba(0,0,0,.6);z-index:3}
.recorte .veiculo{display:flex;justify-content:space-between;align-items:baseline;gap:8px;border-bottom:2px solid #1a1a1a;padding-bottom:6px;font-family:Georgia,"Times New Roman",serif;font-weight:700;font-size:15px}
.recorte .veiculo small{font-family:Sora,sans-serif;font-weight:600;font-size:10px;color:#555;letter-spacing:.04em}
.recorte .manchete{font-family:Georgia,"Times New Roman",serif;font-size:17px;line-height:1.3;font-weight:700}
.recorte .ler{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--red)}
.fita{position:relative;z-index:2;margin:10px -40px 0;background:repeating-linear-gradient(-45deg,var(--y) 0 26px,var(--k) 26px 52px);padding:10px 0;transform:rotate(-1.5deg);box-shadow:0 10px 30px rgba(0,0,0,.4);overflow:hidden}
.fita .trilho{gap:40px;animation-duration:22s}
.fita span{background:var(--k);color:var(--y);font-weight:800;font-size:18px;letter-spacing:.12em;text-transform:uppercase;padding:4px 14px;white-space:nowrap}
.marca-agua{position:absolute;font-weight:800;text-transform:uppercase;font-size:clamp(90px,15vw,220px);line-height:.8;color:transparent;-webkit-text-stroke:1.5px rgba(255,242,59,.12);white-space:nowrap;pointer-events:none}
.mani-grid{position:relative;display:flex;flex-wrap:wrap;gap:56px;align-items:flex-start;padding-top:80px}
.mani-foto{flex:1 1 380px;position:sticky;top:90px;min-height:700px}
.mani-foto .disco{position:absolute;left:50%;bottom:60px;width:470px;height:470px;margin-left:-235px;border-radius:50%;background:var(--y);box-shadow:0 0 80px rgba(255,242,59,.55),0 0 160px rgba(255,242,59,.25);animation:pulsa 5s ease-in-out infinite}
.mani-foto .anel2{position:absolute;left:50%;bottom:20px;width:550px;height:550px;margin-left:-275px;border-radius:50%;border:2px dashed rgba(255,242,59,.35);animation:gira-lento 40s linear infinite}
@keyframes gira-lento{to{transform:rotate(360deg)}}
.mani-foto img{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:520px;max-width:100%;height:auto;cursor:pointer}
.raio{animation:raio 2.8s steps(1) infinite}
.raio:hover,.raio.tap{animation:persegue 1s linear infinite}
@keyframes raio{0%,100%{filter:drop-shadow(0 0 0 rgba(255,242,59,0))}8%{filter:drop-shadow(0 0 18px rgba(255,242,59,.95))}12%{filter:drop-shadow(0 0 0 rgba(255,242,59,0))}16%{filter:drop-shadow(0 0 24px rgba(255,242,59,1))}24%{filter:drop-shadow(0 0 0 rgba(255,242,59,0))}}
.mani-foto .nome{position:absolute;left:0;bottom:36px;padding:14px 18px;font-size:13px;line-height:1.5;z-index:3}
.mani-txt{flex:999 1 560px;min-width:0;display:flex;flex-direction:column;gap:26px;padding-bottom:110px}
.mani-txt p{font-size:18px;line-height:1.8;color:#d4d4d8}
.mani-txt .forte{font-size:30px;line-height:1.25;font-weight:800;color:#fff}
.mani-txt .forte .risco{font-style:normal;position:relative;white-space:nowrap}
.mani-txt .forte .risco::after{content:"";position:absolute;left:-2px;right:-2px;bottom:-6px;height:6px;border-radius:3px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .8s var(--ease) .6s;box-shadow:0 0 14px rgba(214,40,40,.8)}
.on .forte .risco::after{transform:scaleX(1)}
.grito{font-size:clamp(30px,3.6vw,44px)!important;line-height:1.1!important;color:var(--y)!important;text-transform:uppercase;animation:neon 3s ease-in-out infinite}
.grifo{background:linear-gradient(transparent 58%,rgba(255,242,59,.9) 58%) no-repeat;background-size:0% 100%;color:#fff;padding:0 4px;transition:background-size 1.4s var(--ease) .3s,color 1s .6s}
.on .grifo,.grifo.on{background-size:100% 100%;color:var(--k)}
.mani-bloco{border-left:3px solid rgba(255,242,59,.25);padding-left:22px;transition:border-color .4s}
.mani-bloco.on{border-color:var(--y)}

/* ——— números ——— */
.num-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px}
.num-card{padding:26px;display:flex;flex-direction:column;gap:8px}
.num-card .v{font-size:46px;font-weight:800;line-height:1;color:var(--y)}
.num-card .v small{font-size:28px}
.num-card .d{font-size:14px;line-height:1.5;color:#d4d4d8}
.graf-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:16px}
.graf{padding:30px;display:flex;flex-direction:column;gap:22px}
.graf h3{font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.barra-lin{display:flex;flex-direction:column;gap:8px}
.barra-lin .top{display:flex;justify-content:space-between;gap:12px;font-size:14px}
.barra-lin .top span{color:#d4d4d8}
.trilho-barra{height:16px;border-radius:999px;background:rgba(255,255,255,.07)}
.barra{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--y),var(--pink));box-shadow:0 0 18px rgba(255,242,59,.6);transform:scaleX(0);transform-origin:left;transition:transform 1.8s var(--ease)}
.on .barra{transform:scaleX(1)}
.rosca{width:210px;height:210px;border-radius:50%;background:conic-gradient(var(--y) calc(var(--pct)*1%),rgba(255,255,255,.08) 0);--pct:0;display:grid;place-items:center;filter:drop-shadow(0 0 22px rgba(255,242,59,.35));transition:--pct 2.2s var(--ease) .3s}
.on .rosca{--pct:62.6}
.rosca .miolo{width:150px;height:150px;border-radius:50%;background:var(--k2);display:grid;place-items:center;font-size:38px;font-weight:800;color:var(--y)}
.colunas{flex:1;display:flex;align-items:flex-end;justify-content:center;gap:28px;min-height:190px}
.colunas>div{display:flex;flex-direction:column;align-items:center;gap:8px}
.coluna{width:70px;border-radius:14px 14px 4px 4px;transform:scaleY(0);transform-origin:bottom;transition:transform 1.6s var(--ease)}
.on .coluna{transform:scaleY(1)}
.fonte{margin-top:18px;font-size:12px;color:#71717a}

/* ——— vídeos (amarelo) ——— */
.videos{background:var(--y)}
.video-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px}
.video{position:relative;border-radius:24px;overflow:hidden;background:radial-gradient(80% 80% at 30% 20%,var(--pet),var(--k2));display:flex;align-items:center;justify-content:center;min-height:160px;text-decoration:none;transition:transform .4s var(--mola),box-shadow .3s}
.video:hover,.video.tap{transform:scale(1.05);box-shadow:0 0 0 3px var(--k),0 24px 50px rgba(0,0,0,.3);z-index:2}
.play{width:92px;height:92px;border-radius:50%;background:var(--y);display:grid;place-items:center;animation:chama 2.2s ease-out infinite;transition:transform .25s}
.video:hover .play{transform:scale(1.15)}
.video .rot{position:absolute;left:22px;bottom:18px;font-size:13px;color:#cbd5e1}

/* ——— portal + agentes ——— */
.portal{background:linear-gradient(135deg,var(--k2) 0%,var(--pet) 60%,#2a2346 100%);color:#fff;position:relative;overflow:hidden}
.portal-in{position:relative;display:flex;flex-wrap:wrap;gap:56px;align-items:center}
.portal-txt{flex:1 1 460px;display:flex;flex-direction:column;gap:18px;min-width:0}
.portal-txt p{font-size:17px;line-height:1.7;color:#d4d4d8}
.tag-dif{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--k);background:linear-gradient(90deg,var(--y),var(--pink));border-radius:999px;padding:8px 14px}
.abas{position:relative;display:inline-flex;align-self:flex-start;gap:4px;padding:5px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12)}
.abas button{position:relative;z-index:2;border:0;background:transparent;color:#d4d4d8;font-weight:800;font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:11px 16px;border-radius:12px;cursor:pointer;transition:color .3s}
.abas button[aria-selected="true"]{color:var(--k)}
.abas .ind{position:absolute;z-index:1;top:5px;bottom:5px;left:5px;border-radius:12px;background:var(--y);box-shadow:0 0 20px rgba(255,242,59,.5);transition:transform .45s var(--mola),width .45s var(--mola)}
.painel{display:flex;flex-direction:column;gap:18px;animation:entra .5s var(--ease)}
.painel[hidden]{display:none}
.lista-ok{display:flex;flex-direction:column;gap:10px;font-size:15px;list-style:none;padding:0;margin:0}
.lista-ok li{display:flex;align-items:center;gap:12px}
.lista-ok i{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:var(--y);color:var(--k)}
.agentes-lista{display:flex;flex-direction:column;gap:14px}
.agente{display:flex;align-items:center;gap:18px;padding:16px;border-radius:22px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);transition:transform .4s var(--mola),border-color .3s,box-shadow .3s}
.agente:hover,.agente.tap{transform:scale(1.05);border-color:rgba(255,242,59,.6);box-shadow:0 0 30px rgba(255,242,59,.2)}
.agente .rosto{flex:0 0 92px;width:92px;height:92px;border-radius:50%;overflow:hidden;box-shadow:0 0 0 4px var(--cor),0 0 24px var(--cor);transition:transform .45s var(--mola)}
.agente:hover .rosto{transform:scale(1.12) rotate(-6deg)}
.agente .rosto img{width:100%;height:100%;object-fit:cover}
.agente h3{font-size:22px;font-weight:800}
.agente p{font-size:14px!important;line-height:1.55!important}
.tag{align-self:flex-start;font-size:10px;font-weight:800;letter-spacing:.14em;border-radius:999px;padding:5px 11px;color:var(--k)}
.nota-ia{font-size:13px!important;color:#a1a1aa!important}
.ilustra{flex:1 1 440px;position:relative;height:580px}
.cel-p-wrap{position:absolute;left:50%;top:20px;margin-left:-140px;width:280px;height:520px;border-radius:44px;animation:flutua2 5s ease-in-out infinite;transition:scale .4s var(--mola);z-index:2}
.cel-p-wrap:hover,.cel-p-wrap.tap{scale:1.06}
.cel-p{position:absolute;inset:0;border-radius:44px;background:var(--k);border:2px solid rgba(255,255,255,.18);box-shadow:0 0 0 8px #050506,0 40px 80px rgba(0,0,0,.6),0 0 60px rgba(198,165,246,.35);overflow:hidden}
.cel-p-topo{height:120px;background:linear-gradient(135deg,var(--y),var(--y2));padding:34px 20px 0;display:flex;flex-direction:column;gap:6px;color:var(--k)}
.cel-p-topo img{width:34px;height:34px}
.cel-p-corpo{padding:18px;display:flex;flex-direction:column;gap:12px}
.tl{display:flex;gap:12px;align-items:flex-start;background:rgba(255,255,255,.05);border-radius:14px;padding:12px;opacity:0;transform:translateX(20px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.on .tl{opacity:1;transform:none}
.on .tl:nth-child(3){transition-delay:.3s}.on .tl:nth-child(4){transition-delay:.6s}
.tl .p{flex:0 0 auto;width:10px;height:10px;margin-top:4px;border-radius:50%}
.tl b{display:block;font-size:12px}.tl span{font-size:10px;color:#a1a1aa}
.bolha{position:absolute;width:70px;height:70px;border-radius:22px;display:grid;place-items:center;color:var(--k);z-index:3;transition:transform .4s var(--mola);cursor:default}
.bolha:hover,.bolha.tap{transform:scale(1.3) rotate(-10deg)}
.b1{left:2%;top:70px;background:var(--y);box-shadow:0 0 34px rgba(255,242,59,.7);animation:orb1 9s ease-in-out infinite}
.b2{right:2%;top:120px;background:var(--pink);box-shadow:0 0 34px rgba(244,166,222,.7);animation:orb2 11s ease-in-out infinite}
.b3{left:8%;bottom:70px;background:var(--lil);box-shadow:0 0 34px rgba(198,165,246,.7);animation:orb3 10s ease-in-out infinite}
.b4{right:6%;bottom:40px;background:#fff;box-shadow:0 0 34px rgba(255,255,255,.5);animation:orb1 12s ease-in-out -4s infinite reverse}
.b5{left:22%;top:-6px;width:56px;height:56px;border-radius:18px;background:var(--y2);box-shadow:0 0 30px rgba(255,228,92,.7);animation:orb2 8s ease-in-out -2s infinite}
.b6{right:20%;bottom:-8px;width:56px;height:56px;border-radius:18px;background:var(--pink);box-shadow:0 0 30px rgba(244,166,222,.6);animation:orb3 9.5s ease-in-out -5s infinite reverse}
@keyframes orb1{0%,100%{translate:0 0;rotate:0deg}25%{translate:18px -22px;rotate:8deg}50%{translate:-6px -40px;rotate:-6deg}75%{translate:-20px -14px;rotate:4deg}}
@keyframes orb2{0%,100%{translate:0 0;rotate:0deg}25%{translate:-22px 16px;rotate:-8deg}50%{translate:-34px -12px;rotate:6deg}75%{translate:-8px -26px;rotate:-4deg}}
@keyframes orb3{0%,100%{translate:0 0;rotate:0deg}30%{translate:26px -12px;rotate:10deg}60%{translate:12px 20px;rotate:-8deg}80%{translate:-10px 8px;rotate:4deg}}

/* ——— FAQ ——— */
.faq-lista{display:flex;flex-direction:column;gap:12px;margin-top:40px}
.faq-item{border-radius:20px;background:#fff;border:1px solid var(--line);overflow:hidden;transition:transform .35s var(--mola),box-shadow .3s,border-color .3s}
.faq-item:hover{transform:scale(1.02);box-shadow:0 16px 36px rgba(0,0,0,.08)}
.faq-item.aberto{border-color:var(--k);box-shadow:0 0 0 2px var(--k)}
.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px;border:0;background:transparent;text-align:left;font-size:17px;font-weight:800;cursor:pointer;color:var(--k)}
.faq-q .mais{flex:0 0 36px;width:36px;height:36px;border-radius:12px;background:var(--y);display:grid;place-items:center;transition:transform .4s var(--mola),background .3s}
.faq-item.aberto .mais{transform:rotate(135deg);background:var(--k);color:var(--y)}
.faq-r{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease)}
.faq-item.aberto .faq-r{grid-template-rows:1fr}
.faq-r>div{overflow:hidden}
.faq-r p{padding:0 24px 22px;font-size:15px;line-height:1.7;color:var(--txt)}

/* ——— chamada final + rodapé amarelo claro ——— */
.chamada{background:var(--k);color:#fff;overflow:hidden}
.chamada-in{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px;padding:64px 24px}
.chamada h2{font-size:clamp(28px,4vw,46px);line-height:1.05;font-weight:800;text-transform:uppercase}
.rodape{background:var(--ly);color:var(--k)}
.linha-neon{height:5px;background:linear-gradient(90deg,var(--y),var(--pink),var(--lil),var(--y));background-size:200% 100%;animation:flui 5s linear infinite}
@keyframes flui{to{background-position:-200% 0}}
.rod-grid{display:grid;grid-template-columns:auto repeat(4,minmax(0,1fr));gap:36px;align-items:start;padding:56px 24px 30px}
.rod-selo{width:96px;height:96px;border-radius:50%;animation:selo 2.6s cubic-bezier(.3,.7,.4,1.4) infinite,selo-brilho 1.3s ease-in-out infinite alternate}
.rod-grid h4{margin:0 0 10px;font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--red)}
.rod-grid p,.rod-grid a{font-size:14px;line-height:1.7;color:var(--txt);text-decoration:none}
.rod-grid a:hover{color:var(--k);text-decoration:underline}
.rod-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:16px 24px 90px;border-top:1px solid rgba(17,17,17,.12);font-size:12px;color:var(--mut)}

/* ——— WhatsApp flutuante ——— */
.zap{position:fixed;right:18px;bottom:18px;z-index:90;display:flex;align-items:center;gap:12px;text-decoration:none}
.zap .bola{position:relative;width:66px;height:66px;border-radius:50%;background:var(--zap);color:#fff;display:grid;place-items:center;box-shadow:0 12px 30px rgba(0,0,0,.35);transition:transform .3s var(--mola)}
.zap .bola::before{content:"";position:absolute;inset:-6px;border-radius:50%;border:3px solid var(--zap);animation:onda-zap 2s ease-out infinite}
.zap .bola::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:3px solid var(--y);animation:onda-zap 2s ease-out 1s infinite}
@keyframes onda-zap{from{transform:scale(.9);opacity:1}to{transform:scale(1.6);opacity:0}}
.zap:hover .bola{transform:scale(1.12) rotate(-8deg)}
.zap .rotulo{background:#fff;color:var(--k);font-weight:800;font-size:14px;padding:12px 16px;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.25);white-space:nowrap;transform-origin:right center;animation:rotulo 9s ease-in-out infinite}
.zap .rotulo small{display:block;font-size:11px;font-weight:600;color:var(--mut)}
@keyframes rotulo{0%,70%,100%{transform:none}74%{transform:translateX(-6px) rotate(-2deg)}78%{transform:translateX(4px) rotate(2deg)}82%{transform:none}}

/* ——— estrutura interna: departamentos em órbita ——— */
.estrutura{background:radial-gradient(70% 80% at 75% 45%,#1d2a40 0%,var(--k2) 70%);color:#fff;overflow:hidden}
.estr-grid{position:relative;display:grid;grid-template-columns:.95fr 1.05fr;grid-template-areas:"cab orb" "pai orb";gap:0 40px;align-items:center}
.estr-cab{grid-area:cab;align-self:end}
.orbita{grid-area:orb}
.estr-painel{grid-area:pai;align-self:start}
.estr-intro{margin-top:16px;max-width:520px;font-size:16px;line-height:1.6;color:#d4d4d8}
.estr-painel{margin-top:28px;min-height:340px}
.dp{position:relative;padding:26px 26px 26px 32px;border-radius:26px;background:linear-gradient(160deg,rgba(255,255,255,.09),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.12);overflow:hidden;animation:dp-entra .5s var(--ease)}
.dp[hidden]{display:none}
.dp::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(180deg,var(--c1),var(--c2));box-shadow:0 0 20px var(--c1)}
.dp::after{content:"";position:absolute;right:-70px;top:-70px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,var(--c1),transparent 70%);opacity:.22;pointer-events:none}
@keyframes dp-entra{from{opacity:0;transform:translateX(26px) scale(.98)}to{opacity:1;transform:none}}
.dp-tag{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;padding:6px 12px;border-radius:999px;background:linear-gradient(90deg,var(--c1),var(--c2));color:var(--tx);box-shadow:0 0 18px color-mix(in srgb,var(--c1) 55%,transparent)}
.dp h3{margin-top:14px;font-size:26px;font-weight:800;text-transform:uppercase;line-height:1.1}
.dp p{margin-top:10px;font-size:15px;line-height:1.65;color:#d4d4d8}
.dp-lista{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-direction:column;gap:9px}
.dp-lista li{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600}
.dp-lista li::before{content:"";flex:0 0 10px;height:10px;border-radius:50%;background:var(--c1);box-shadow:0 0 10px var(--c1)}
.dp-agente{display:flex;align-items:center;gap:12px;margin-top:18px;padding:8px 16px 8px 8px;border-radius:999px;background:rgba(255,255,255,.07);width:max-content;max-width:100%}
.dp-agente img{width:48px;height:48px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px var(--c1),0 0 18px var(--c1)}
.dp-agente span{font-size:13px;color:#d4d4d8;line-height:1.3}
.dp-agente b{display:block;font-size:15px;color:#fff}
.orbita{--S:540px;--d:118px;position:relative;width:var(--S);height:var(--S);margin:0 auto}
.orb-anel{position:absolute;border-radius:50%;pointer-events:none}
.orb-anel.a1{inset:12%;border:2px dashed rgba(255,255,255,.14);animation:gira-lento 60s linear infinite}
.orb-anel.a2{inset:31%;border:1px solid rgba(255,242,59,.28);box-shadow:0 0 40px rgba(255,242,59,.12),inset 0 0 40px rgba(255,242,59,.08)}
.orb-giro{position:absolute;inset:0;animation:orbita 48s linear infinite}
@keyframes orbita{to{transform:rotate(360deg)}}
.orb-linhas{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.orb-linhas line{stroke:rgba(255,255,255,.2);stroke-width:.35;stroke-dasharray:1.2 1.6;animation:fluxo 1.6s linear infinite}
.orb-linhas line.on{stroke:var(--c1);stroke-width:.75}
@keyframes fluxo{to{stroke-dashoffset:-5.6}}
.depto{position:absolute;left:50%;top:50%;width:var(--d);height:var(--d);margin:calc(var(--d) / -2) 0 0 calc(var(--d) / -2);padding:0;border:0;background:none;cursor:pointer;transform:rotate(var(--a)) translate(calc(var(--S) * .38)) rotate(calc(var(--a) * -1));z-index:2;-webkit-tap-highlight-color:transparent}
.bola-d{position:absolute;inset:0;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--tx);background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.85) 0%,var(--c1) 34%,var(--c2) 100%);box-shadow:0 0 0 3px rgba(255,255,255,.14),0 0 30px color-mix(in srgb,var(--c1) 60%,transparent);animation:orbita 48s linear infinite reverse;transition:scale .45s var(--mola),box-shadow .35s}
.bola-d b{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;line-height:1.1;text-align:center}
.depto:hover .bola-d,.depto:focus-visible .bola-d{scale:1.16}
.depto[aria-pressed="true"] .bola-d{scale:1.26;box-shadow:0 0 0 3px #fff,0 0 40px var(--c1),0 0 90px var(--c1)}
.depto[aria-pressed="true"] .bola-d::after{content:"";position:absolute;inset:-10px;border-radius:50%;border:2px solid var(--c1);animation:onda-zap 1.6s ease-out infinite}
.depto:focus-visible{outline:none}
.orbita:hover .orb-giro,.orbita:hover .bola-d,.orbita.parado .orb-giro,.orbita.parado .bola-d{animation-play-state:paused}
.nucleo{position:absolute;left:50%;top:50%;width:120px;height:120px;margin:-60px 0 0 -60px;border-radius:50%;z-index:1;pointer-events:none}
.nucleo img{position:relative;width:100%;height:100%;border-radius:50%;animation:selo 2.6s cubic-bezier(.3,.7,.4,1.4) infinite,selo-brilho 1.3s ease-in-out infinite alternate}
.nucleo::before{content:"";position:absolute;inset:-22px;border-radius:50%;background:radial-gradient(circle,rgba(255,242,59,.45),transparent 70%);animation:pulsa 3s ease-in-out infinite}

/* ——— empresas parceiras: cartões que viram ——— */
.empresas{background:var(--ly)}
.emp-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.emp{position:relative;height:150px;perspective:900px;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent}
.emp-in{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .8s var(--mola)}
.emp:hover .emp-in,.emp:focus-visible .emp-in,.emp:focus-within .emp-in,.emp.virado .emp-in{transform:rotateY(180deg)}
.emp:hover,.emp.virado{z-index:3}
.emp-f,.emp-v{position:absolute;inset:0;border-radius:22px;-webkit-backface-visibility:hidden;backface-visibility:hidden;display:flex;align-items:center;justify-content:center;overflow:hidden}
.emp-f{background:radial-gradient(90% 120% at 30% 0%,#2c2c31,var(--k));box-shadow:0 14px 30px rgba(17,17,17,.18)}
.emp-f::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
.emp-f img{max-width:64%;max-height:58%;width:auto;height:auto}
.emp-v{transform:rotateY(180deg);background:linear-gradient(140deg,var(--y),var(--y2));color:var(--k);flex-direction:column;gap:6px;padding:16px;text-align:center;box-shadow:0 0 0 3px var(--k),0 18px 40px rgba(17,17,17,.25)}
.emp-v b{font-size:17px;font-weight:800;text-transform:uppercase;line-height:1.1}
.emp-v span{font-size:12px;font-weight:600;color:#3f3f46}
.emp-v a{margin-top:4px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--y);background:var(--k);border-radius:999px;padding:7px 13px;text-decoration:none;transition:transform .25s}
.emp-v a:hover{transform:scale(1.08)}
.emp-selo{width:28px;height:28px;border-radius:50%;background:url(../img/badge.png) center/cover;box-shadow:0 0 0 2px var(--k);margin-top:4px}
.bastidores{margin-top:28px;display:grid;grid-template-columns:260px 1fr;gap:16px;align-items:stretch}
.bast-txt{border-radius:22px;background:var(--k);color:#fff;padding:22px;display:flex;flex-direction:column;gap:8px;justify-content:center}
.bast-txt b{font-size:13px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--y)}
.bast-txt span{font-size:14px;line-height:1.5;color:#d4d4d8}
.bast-fotos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.bast-fotos span{min-height:130px;border-radius:22px;border:2px dashed rgba(17,17,17,.25);display:grid;place-items:center;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:rgba(17,17,17,.45);background:repeating-linear-gradient(135deg,rgba(17,17,17,.03) 0 10px,transparent 10px 20px)}

/* ——— compromisso social (amarelo) ——— */
.social{background:var(--y);overflow:hidden}
.social::before{content:"";position:absolute;inset:0;background:radial-gradient(40% 50% at 15% 30%,rgba(255,255,255,.55),transparent 70%),repeating-linear-gradient(45deg,rgba(17,17,17,.035) 0 2px,transparent 2px 16px);pointer-events:none}
.acoes{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.acao{display:flex;flex-direction:column;background:#fff;border-radius:18px;padding:10px 10px 16px;text-decoration:none;color:var(--k);box-shadow:0 18px 40px rgba(17,17,17,.18);rotate:var(--r);transition:rotate .45s var(--mola),box-shadow .3s;cursor:pointer}
.acao.entrou{transition:rotate .45s var(--mola),transform .45s var(--mola),box-shadow .3s}
.acao.entrou:hover,.acao.entrou.tap,.acao.entrou:focus-visible{rotate:0deg;transform:translateY(-12px) scale(1.12);box-shadow:0 0 0 3px var(--k),0 30px 60px rgba(17,17,17,.3);z-index:3;outline:none}
.acao-img{position:relative;aspect-ratio:4/3.4;border-radius:12px;display:grid;place-items:center;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.65),var(--c1) 40%,var(--c2) 100%);overflow:hidden}
.acao-img svg{color:var(--k);filter:drop-shadow(0 4px 10px rgba(0,0,0,.2));transition:transform .5s var(--mola)}
.acao:hover .acao-img svg,.acao.tap .acao-img svg{transform:scale(1.28) rotate(-8deg)}
.acao-img .brilho{position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.6) 45%,transparent 60%);transform:translateX(-100%);animation:varre 3.6s ease-in-out infinite}
.acao:nth-child(2) .brilho{animation-delay:.6s}.acao:nth-child(3) .brilho{animation-delay:1.2s}.acao:nth-child(4) .brilho{animation-delay:1.8s}.acao:nth-child(5) .brilho{animation-delay:2.4s}
@keyframes varre{0%,55%{transform:translateX(-100%)}85%,100%{transform:translateX(100%)}}
.acao-img em{position:absolute;left:8px;bottom:8px;font-style:normal;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;background:rgba(17,17,17,.85);color:var(--y);border-radius:999px;padding:4px 8px}
.acao-txt{display:flex;flex-direction:column;gap:5px;padding:12px 6px 0}
.acao-txt b{font-size:15px;font-weight:800;text-transform:uppercase;line-height:1.15}
.acao-txt span{font-size:13px;line-height:1.45;color:var(--mut)}
.acao-txt small{font-size:11px;font-weight:800;color:var(--red);letter-spacing:.06em}
.social-cta{margin-top:40px}

/* ——— o que assola o empreendedor: surge em volta da BAPA e explode ——— */
.ameacas{position:absolute;inset:0;z-index:5;pointer-events:none}
.ameaca{position:absolute;display:inline-flex;align-items:center;gap:7px;padding:8px 12px 10px;border-radius:12px;background:rgba(17,17,17,.92);color:#fff;border:2px solid var(--red);font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;box-shadow:0 0 18px rgba(214,40,40,.55),0 10px 24px rgba(0,0,0,.45);cursor:crosshair;pointer-events:auto;animation:nasce .55s var(--mola) both,treme-a 2.4s ease-in-out .55s infinite;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
.ameaca svg{color:#ff6b6b;flex:0 0 auto}
.ameaca::after{content:"";position:absolute;left:10px;right:10px;bottom:3px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--red),var(--y));box-shadow:0 0 8px var(--y);transform-origin:left;animation:pavio var(--vida,3s) linear forwards}
@keyframes nasce{from{opacity:0;transform:scale(.2) rotate(-14deg)}to{opacity:1;transform:none}}
@keyframes treme-a{0%,100%{translate:0 0;rotate:0deg}25%{translate:3px -6px;rotate:-2deg}50%{translate:-2px -10px;rotate:1.5deg}75%{translate:-4px -4px;rotate:-1deg}}
@keyframes pavio{from{transform:scaleX(1)}to{transform:scaleX(0)}}
.ameaca.boom{animation:boom .3s ease-out forwards;border-color:#fff}
.ameaca.boom::after,.ameaca.cai::after{display:none}
@keyframes boom{0%{transform:scale(1)}35%{transform:scale(1.4) rotate(-6deg);background:#fff;color:var(--red);box-shadow:0 0 40px #fff,0 0 90px var(--y)}70%{transform:scale(.9) rotate(5deg)}100%{transform:scale(1) rotate(0)}}
.ameaca.cai{animation:cai .95s cubic-bezier(.55,0,.9,.55) forwards;pointer-events:none;filter:grayscale(1) brightness(.8)}
.ameaca.cai .txt{text-decoration:line-through 3px var(--red)}
@keyframes cai{0%{opacity:1;transform:none}100%{opacity:0;transform:translate(var(--qx,24px),190px) rotate(var(--qr,38deg)) scale(.85)}}
.estouro{position:absolute;width:150px;height:150px;margin:-75px 0 0 -75px;pointer-events:none;background:radial-gradient(circle,#fff 0%,#FFF23B 32%,#FF8A00 52%,rgba(214,40,40,0) 70%);clip-path:polygon(50% 0,58% 32%,85% 10%,68% 40%,100% 38%,70% 55%,96% 82%,62% 66%,56% 100%,48% 68%,22% 94%,34% 62%,0 70%,30% 50%,6% 22%,40% 36%);animation:estoura .5s ease-out forwards;z-index:6}
@keyframes estoura{0%{transform:scale(.15) rotate(0);opacity:1}60%{opacity:1}100%{transform:scale(1.5) rotate(25deg);opacity:0}}
.faisca{position:absolute;width:var(--t,7px);height:var(--t,7px);border-radius:2px;background:var(--c,#FFF23B);box-shadow:0 0 8px var(--c,#FFF23B);pointer-events:none;animation:faisca .85s cubic-bezier(.15,.7,.35,1) forwards;z-index:6}
@keyframes faisca{0%{transform:translate(-50%,-50%) scale(1);opacity:1}75%{opacity:1}100%{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy) + 60px)) scale(.3) rotate(220deg);opacity:0}}
.raio-bapa{position:absolute;height:4px;border-radius:4px;transform-origin:0 50%;background:linear-gradient(90deg,rgba(255,242,59,0),#FFF23B 30%,#fff);box-shadow:0 0 12px #FFF23B,0 0 26px rgba(255,242,59,.8);pointer-events:none;animation:dispara .4s ease-out forwards;z-index:4}
@keyframes dispara{0%{transform:rotate(var(--rot)) scaleX(0);opacity:1}45%{transform:rotate(var(--rot)) scaleX(1);opacity:1}100%{transform:rotate(var(--rot)) scaleX(1);opacity:0}}

/* seta que aparece e some no botão do WhatsApp */
.zap-seta{position:absolute;right:34px;bottom:64px;width:58px;height:58px;pointer-events:none;opacity:0;animation:seta-zap 3.2s ease-in-out infinite;filter:drop-shadow(0 3px 6px rgba(0,0,0,.3))}
.zap-seta svg{width:100%;height:100%}
@keyframes seta-zap{0%,12%{opacity:0;transform:translate(-14px,-14px) scale(.7) rotate(-8deg)}24%{opacity:1;transform:none}34%{transform:translate(5px,5px)}44%{transform:none}54%{transform:translate(5px,5px)}64%{opacity:1;transform:none}78%,100%{opacity:0;transform:translate(-8px,-8px) scale(.9)}}

/* ——— responsivo ——— */
@media (max-width:1180px){
  .menu{display:none}
  .burger{display:grid}
  .topo.menu-aberto .menu{display:flex;position:absolute;top:calc(100% + 8px);left:16px;right:16px;flex-direction:column;align-items:flex-start;gap:6px;background:var(--y);border-radius:18px;padding:18px 22px;box-shadow:0 18px 50px rgba(0,0,0,.35)}
  .topo.menu-aberto .menu a{font-size:14px}
}
@media (max-width:1100px){
  .num-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .graf-grid{grid-template-columns:1fr 1fr}
  .graf-grid .graf:first-child{grid-column:1/-1}
  .areas{grid-template-columns:repeat(2,minmax(0,1fr))}
  .como-grid,.estados-grid,.depo-banner{grid-template-columns:1fr}
  .estr-grid{grid-template-columns:1fr;grid-template-areas:"cab" "orb" "pai";gap:34px}
  .estr-painel{min-height:0;margin-top:0}
  .acoes{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rod-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .hero-titulo{padding-top:120px}
  .palco{height:auto;display:flex;flex-direction:column;align-items:center;gap:26px;padding:28px 20px 0}
  .hero-esq,.hero-dir{position:static;width:100%;max-width:520px}
  .hero-esq{align-items:stretch;text-align:center;order:3}
  .hero-esq .cta1,.hero-esq .cta2{align-self:stretch;justify-content:center}
  .bapa{position:relative;left:auto;margin:0;width:min(320px,78vw);order:2}
  .halo{width:420px;height:420px;margin-left:-210px;top:120px;bottom:auto}
  .anel{width:300px;height:300px;margin-left:-150px;top:200px;bottom:auto}
  .chip-ia{position:relative;left:auto;bottom:auto;margin:0;order:1}
  .hero-dir{order:4;padding-bottom:30px}
  .faixa-logos{margin-top:0}
  .mani-foto{position:relative;top:0;min-height:540px;flex-basis:100%}
  .mani-foto .disco{width:340px;height:340px;margin-left:-170px}
  .mani-foto .anel2{width:400px;height:400px;margin-left:-200px}
  .mosaico{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:170px}
  .f1,.f2,.f3,.f4,.f5,.f6,.f7,.f8,.f9,.f10{grid-area:auto}
  .f1{grid-column:span 2;grid-row:span 2}.f5{grid-column:span 2}.f2,.f6{grid-row:span 2}
  .video-grid{grid-template-columns:1fr}
  .ilustra{height:560px}
  .ufs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .orbita{--S:440px;--d:96px}
  .bola-d b{font-size:10.5px}
  .nucleo{width:100px;height:100px;margin:-50px 0 0 -50px}
  .time2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .emp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .emp{height:130px}
  .bastidores{grid-template-columns:1fr}
  .acoes{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ameaca{font-size:10px;padding:6px 9px 8px;gap:5px;border-radius:10px}
  .ameaca svg{width:13px;height:13px}
}
@media (max-width:600px){
  .wrap{padding:0 16px}
  .wrap.hero-titulo{padding-top:108px}
  .sec{padding:80px 0}
  .marca-palco,.topo.rolou .marca-palco{width:150px;height:35px}
  .m-selo,.topo.rolou .m-selo{width:40px;height:40px;margin-top:-20px;left:-5px}
  .m-fala,.topo.rolou .m-fala{left:42px;font-size:11px;gap:3px}
  .m-fala i+i::before{margin-right:3px}
  .orbita{--S:320px;--d:78px}
  .bola-d{gap:3px}
  .bola-d svg{width:18px;height:18px}
  .bola-d b{font-size:9px;letter-spacing:.03em}
  .nucleo{width:76px;height:76px;margin:-38px 0 0 -38px}
  .dp{padding:22px 20px 22px 26px}
  .dp h3{font-size:22px}
  .time2{gap:30px 14px}
  .pessoa figcaption b{font-size:15px}
  .bast-fotos span{min-height:90px;font-size:9px}
  .acoes{gap:14px}
  .acao-txt b{font-size:13px}
  .acao-txt span{font-size:12px}
  .faixa-fala .trilho{gap:26px}
  .btn-cliente .txt{display:none}
  .btn-cliente{padding:8px}
  .num-grid,.graf-grid,.areas,.passos,.rod-grid{grid-template-columns:1fr}
  .dep{flex-basis:290px}
  .faixa-fala .trilho{font-size:20px}
  .palco-zap{height:600px;transform:scale(.92);transform-origin:top center}
  .lamina-solta{width:150px}
  .zap .rotulo{display:none}
  .banner-br{flex-direction:column;text-align:center}
  .chamada-in{padding:48px 16px}
}

@media (max-width:360px){
  .orbita{--S:280px;--d:70px}
  .bola-d svg{display:none}
}

/* ——— menos movimento ——— */
@media (prefers-reduced-motion:reduce){
  .ameacas,.zap-seta{display:none!important}
  .emp-in{transition:none}
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .rv,.palavra,.bapa-in,.entra,.tl,.salta,.msg,.tit .titulo,.dica-mouse{opacity:1!important;transform:none!important;filter:none!important}
  .msg{display:block!important}
  .barra,.coluna,.barra-vermelha{transform:none!important}
  .rosca{--pct:62.6}
  .grifo{background-size:100% 100%;color:var(--k)}
  .titulo .chip{background-size:100% 100%;color:var(--y)}
  .hero-foto{opacity:.42}
  .topo.dorme .topo-in{opacity:1;filter:none;transform:none}
}
