/* Me Indica: landing page lp.meindica.app
   Estrutura, coreografia e tipografia baseadas na home da Square (squareup.com).
   As fontes da Square são proprietárias; usamos as equivalentes gratuitas:
   Exact Block -> Newsreader, Square Sans -> Inter, Square Sans Mono -> IBM Plex Mono. */
:root{
  --roxo:#7C35DB;
  --p900:#3B1E82;--p700:#5B21D6;--p600:#6D2FEA;--p500:#8347F2;
  --lav200:#EAE3FB;--lav100:#F4F1FD;--canvas:#F5F4F7;--line:#E6E3EC;
  --ink900:#121016;--ink600:#4B4756;--ink400:#85818F;
  --verde:#6DB015;--verde-v:#66BE00;
  --escuro:#0B0A0E;
  --escuro-2:#16121F;
  --raio:24px;
  --nav-h:72px;
  --gutter:clamp(16px,2.4vw,40px);
  --ease:cubic-bezier(.2,.7,.2,1);
  --serif:'Newsreader',Georgia,'Times New Roman',serif;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,Consolas,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);color:var(--ink900);background:#fff;line-height:1.5;font-size:16px;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img,video,svg{display:block;max-width:100%}
a{color:inherit}
h1,h2{font-family:var(--serif);font-weight:400;margin:0;letter-spacing:-.03em;text-wrap:balance;font-optical-sizing:auto}
h3{font-family:var(--sans);font-weight:600;margin:0;letter-spacing:-.01em}
p{margin:0}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.container{width:min(1360px,100% - 2*var(--gutter));margin-inline:auto}

/* ---------- botões em pílula ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:999px;
  font:500 16px/1 var(--sans);text-decoration:none;white-space:nowrap;transition:background-color .2s,color .2s,box-shadow .2s,transform .2s var(--ease)}
.btn:active{transform:scale(.98)}
.btn:focus-visible{outline:3px solid var(--p500);outline-offset:3px}
.btn-roxo{background:var(--p600);color:#fff}
.btn-roxo:hover{background:var(--p700)}
.btn-branco{background:#fff;color:var(--p600)}
.btn-branco:hover{background:var(--lav100)}
.btn-contorno{box-shadow:inset 0 0 0 1px var(--p600);color:var(--p600);background:#fff}
.btn-contorno:hover{background:var(--lav100)}
.escuro .btn-contorno{box-shadow:inset 0 0 0 1px rgba(255,255,255,.5);color:#fff;background:transparent}
.escuro .btn-contorno:hover{background:rgba(255,255,255,.08)}
.btn-sm{min-height:38px;padding:0 16px;font-size:14px}
.link{display:inline-flex;align-items:center;gap:6px;font-weight:500;font-size:15px;text-decoration:none;position:relative;padding-bottom:3px}
.link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform-origin:left;transition:transform .35s var(--ease)}
.link:hover::after{transform:scaleX(.5)}
.olho{font:500 12px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink600);margin-bottom:20px}
.escuro .olho{color:rgba(255,255,255,.6)}

/* ---------- navegação: transparente sobre o vídeo, some na animação, volta branca e compacta ---------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;height:var(--nav-h);display:flex;align-items:center;background:#fff;
  box-shadow:0 1px 0 var(--line);transition:transform .45s var(--ease),background-color .3s,box-shadow .3s}
.nav .container{display:flex;align-items:center;gap:28px;width:calc(100% - 2*var(--gutter));max-width:none}
.nav-logo{display:block;flex:none;position:relative}
.nav-logo img{width:auto;height:30px}
.nav-logo .branca{position:absolute;inset:0;opacity:0}
.nav-links,.nav-dir{display:flex;gap:22px;margin:0;padding:0;list-style:none}
.nav-links a,.nav-dir a{font:500 16px/1 var(--sans);text-decoration:none;color:var(--ink900)}
.nav-links a:hover,.nav-dir a:hover{text-decoration:underline;text-underline-offset:4px}
.nav-dir{margin-left:auto}
.nav-cta{display:none;gap:10px;margin-left:auto}
.nav.sobre{background:transparent;box-shadow:none}
.nav.sobre .nav-links a,.nav.sobre .nav-dir a{color:#fff}
.nav.sobre .nav-logo .cor{opacity:0}
.nav.sobre .nav-logo .branca{opacity:1}
.nav.oculta{transform:translateY(-110%)}
.nav.compacta .nav-links,.nav.compacta .nav-dir{display:none}
.nav.compacta .nav-cta{display:flex}
.nav-menu{display:none;width:44px;height:44px;border-radius:12px;place-items:center;margin-left:auto}
.nav-menu span{display:block;width:22px;height:2px;background:currentColor;position:relative;transition:background .3s}
.nav-menu span::before,.nav-menu span::after{content:"";position:absolute;left:0;width:22px;height:2px;background:currentColor;transition:transform .3s,top .3s}
.nav-menu span::before{top:-7px}.nav-menu span::after{top:7px}
.nav.sobre .nav-menu{color:#fff}
.nav-menu[aria-expanded="true"] span{background:transparent}
.nav-menu[aria-expanded="true"] span::before{top:0;transform:rotate(45deg)}
.nav-menu[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg)}
.nav-mobile{display:none}
@media (max-width:1000px){
  .nav-links,.nav-dir,.nav-cta,.nav.compacta .nav-cta{display:none}
  .nav-menu{display:grid}
  .nav-mobile{display:block;position:fixed;top:var(--nav-h);left:0;right:0;background:#fff;border-top:1px solid var(--line);padding:12px var(--gutter) 24px;color:var(--ink900);
    transform:translateY(-8px);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:49}
  .nav-mobile.aberto{opacity:1;transform:none;pointer-events:auto}
  .nav.menu-aberto{background:#fff}
  .nav.menu-aberto .nav-logo .cor{opacity:1}.nav.menu-aberto .nav-logo .branca{opacity:0}
  .nav.menu-aberto .nav-menu{color:var(--ink900)}
  .nav-mobile a.item{display:block;padding:14px 0;font:500 17px var(--sans);text-decoration:none;border-bottom:1px solid var(--line)}
  .nav-mobile .btns{display:grid;gap:10px;margin-top:18px}
  .nav-mobile .btn{width:100%}
}

/* ---------- topo ---------- */
.hero{position:relative;height:320vh;background:#fff}
.hero-stage{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;background:#fff}
.hero-video{position:absolute;left:0;top:0;width:100%;height:100%;overflow:hidden;background:#111;z-index:2;
  transform-origin:0 0;will-change:transform,clip-path}
.hero-video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(1.06) brightness(.86)}
.hero-video::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(ellipse at 50% 55%,rgba(0,0,0,.08),rgba(0,0,0,.42) 100%),linear-gradient(180deg,rgba(0,0,0,.32),rgba(0,0,0,0) 22%,rgba(0,0,0,0) 70%,rgba(0,0,0,.25))}
/* granulado de filme por cima do vídeo */
.grao{position:absolute;inset:-50%;z-index:2;pointer-events:none;background:url(midia/grao.png) repeat;background-size:220px;opacity:.9;mix-blend-mode:overlay;animation:grao .8s steps(1) infinite}
@keyframes grao{
  0%{transform:translate(0,0)}12%{transform:translate(-4%,3%)}25%{transform:translate(3%,-5%)}37%{transform:translate(-6%,-2%)}
  50%{transform:translate(5%,4%)}62%{transform:translate(-2%,6%)}75%{transform:translate(6%,-3%)}87%{transform:translate(-5%,-6%)}}
.hero-copy{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;padding:0 var(--gutter);padding-top:4vh}
.hero-copy h1{font-size:clamp(42px,5.9vw,88px);line-height:1;letter-spacing:-.04em;max-width:15em;text-shadow:0 2px 30px rgba(0,0,0,.18)}
.hero-botoes{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:clamp(28px,4vh,44px)}
.grade{position:absolute;inset:0;z-index:1}
.tile{position:absolute;left:0;top:0;width:136px;height:136px;border-radius:18px;overflow:hidden;opacity:0;will-change:opacity,transform}
.tile img{width:100%;height:100%;object-fit:cover}
.tile.doodle{border-radius:0;overflow:visible}
.tile svg{width:100%;height:100%;overflow:visible}
.traco{fill:none;stroke:#111;stroke-width:5.5;stroke-linecap:round;stroke-linejoin:round;filter:url(#rabisco)}
.traco .cheio{fill:#111}
.blob{fill:#111;filter:url(#rabisco)}
.letra text{font:700 27px var(--caveat,'Caveat'),cursive;fill:#111;text-anchor:middle}
.valeu .tres text{font:800 33px/1 var(--sans);fill:#111;text-anchor:middle;letter-spacing:-.04em;transform:scaleX(.74);transform-origin:60px 0;filter:url(#rabisco)}
.hero-frase{position:absolute;left:var(--gutter);right:var(--gutter);top:50%;z-index:1;text-align:center;font-family:var(--serif);font-weight:400;
  font-size:clamp(24px,2.9vw,42px);line-height:1.12;letter-spacing:-.025em;color:var(--ink900);opacity:0;text-wrap:balance;will-change:opacity,transform;margin:0}
.hero-stage.final .hero-copy{visibility:hidden}
@media (max-width:700px){
  .hero{height:260vh}
  .hero-copy h1{font-size:clamp(40px,11.5vw,56px)}
  .hero-botoes .btn{min-width:0;flex:0 1 auto}
}

/* ---------- seções genéricas ---------- */
.secao{padding:clamp(80px,9vw,140px) 0}
[id]{scroll-margin-top:72px}
.secao h2{font-size:clamp(34px,3.7vw,54px);line-height:1.06;max-width:14em}
.secao .lead{font-size:16px;color:var(--ink600);max-width:34em;margin-top:22px}
.escuro{background:var(--escuro);color:#fff}
.escuro .lead{color:rgba(255,255,255,.7)}
.cabecalho{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:40px}
.cabecalho .acoes{display:flex;align-items:center;gap:18px;flex:none}
.setas{display:flex;gap:8px}
.seta{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;transition:background .2s}
.seta:hover{background:var(--canvas)}
.seta:disabled{opacity:.3;cursor:default}
.seta svg{width:22px;height:22px}
@media (max-width:700px){.cabecalho{flex-direction:column;align-items:flex-start}}

/* títulos: palavras sobem uma a uma, mascaradas */
.palavras .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.14em;margin-bottom:-.14em}
.palavras .w > span{display:inline-block;transform:translateY(105%);transition:transform .9s var(--ease);transition-delay:calc(var(--i) * 40ms)}
.palavras.in .w > span{transform:none}
.sobe{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease);transition-delay:var(--d,0ms)}
.sobe.in{opacity:1;transform:none}

/* ---------- serviços (carrossel) ---------- */
.trilho{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:8px;
  margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter);scroll-padding-inline:var(--gutter)}
.trilho::-webkit-scrollbar{display:none}
.servico{flex:0 0 clamp(250px,23vw,320px);scroll-snap-align:start;text-decoration:none;color:inherit}
.servico .foto{position:relative;aspect-ratio:4/5;border-radius:6px;overflow:hidden;background:var(--canvas)}
.servico .foto img,.servico .foto video{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.servico:hover .foto img,.servico:hover .foto video{transform:scale(1.035)}
.servico .foto .tag{position:absolute;left:12px;top:12px;background:#fff;color:var(--ink900);font:500 11px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;padding:7px 9px;border-radius:4px}
.servico h3{font-size:16px;font-weight:600;margin-top:14px;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.servico p{font-size:14px;color:var(--ink600);margin-top:6px}

/* ---------- como funciona (acordeão + celular) ---------- */
.funciona-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:clamp(32px,5vw,88px);align-items:start}
.funciona-txt{position:sticky;top:calc(var(--nav-h) + 32px)}
.passos{list-style:none;margin:40px 0 0;padding:0}
.passo{border-bottom:1px solid var(--line)}
.passo button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;text-align:left;font:500 17px/1.3 var(--sans);color:var(--ink600)}
.passo.ativo button{color:var(--ink900)}
.passo button .mais{width:24px;height:24px;flex:none;position:relative;transition:transform .35s var(--ease)}
.passo button .mais::before,.passo button .mais::after{content:"";position:absolute;left:5px;top:11px;width:14px;height:1.5px;background:currentColor}
.passo button .mais::after{transform:rotate(90deg)}
.passo.ativo button .mais{transform:rotate(45deg)}
.passo .corpo{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease)}
.passo .corpo > div{overflow:hidden}
.passo .corpo p{color:var(--ink600);font-size:15px;padding-bottom:20px;max-width:30em}
.passo.ativo .corpo{grid-template-rows:1fr}
.passo .barra{height:1.5px;position:relative;overflow:hidden;margin-bottom:-1px}
.passo .barra i{position:absolute;inset:0;background:var(--ink900);transform:scaleX(0);transform-origin:left}
.passo.ativo .barra i{animation:carrega 6s linear forwards}
@keyframes carrega{to{transform:scaleX(1)}}
.funciona-vis{position:relative;border-radius:8px;overflow:hidden;background:var(--escuro);min-height:620px;display:grid;place-items:center;isolation:isolate}
.funciona-vis > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}
.funciona-vis::before{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(18,10,34,.15),rgba(18,10,34,.5));z-index:-1}
.fone{width:300px;aspect-ratio:300/610;background:#fff;border-radius:40px;box-shadow:0 30px 80px rgba(0,0,0,.45),0 0 0 8px #15121b,0 0 0 9px #2b2836;position:relative;overflow:hidden;margin:48px 0}
.fone .entalhe{position:absolute;left:50%;top:10px;transform:translateX(-50%);width:84px;height:22px;background:#15121b;border-radius:12px;z-index:3}
.tela{position:absolute;inset:0;padding:44px 16px 16px;opacity:0;transform:translateX(30px);transition:opacity .5s var(--ease),transform .5s var(--ease);background:#F4F1FB;font-size:12px}
.tela.ativa{opacity:1;transform:none}
.tela .topo{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.tela .topo img{height:22px;width:auto}
.tela .busca{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #E7E2F5;border-radius:14px;padding:11px 12px;color:var(--ink400);font-size:12.5px}
.tela .busca b{color:var(--ink900);font-weight:600}
.tela .busca .cursor{width:1.5px;height:14px;background:var(--p600);animation:pisca 1s steps(2) infinite}
@keyframes pisca{to{opacity:0}}
.tela .chips{display:flex;gap:6px;margin:10px 0;flex-wrap:wrap}
.tela .chips span{background:#fff;border:1px solid #E7E2F5;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:600}
.tela .chips span.on{background:var(--lav200);border-color:var(--lav200);color:var(--p700)}
.cartao{background:#fff;border-radius:16px;padding:12px;display:flex;gap:10px;align-items:center;margin-top:8px;box-shadow:0 2px 10px rgba(24,20,40,.05)}
.cartao .av{width:40px;height:40px;border-radius:50%;background:var(--lav200);color:var(--p700);display:grid;place-items:center;font:700 13px var(--sans);flex:none;position:relative}
.cartao .av .ponto{position:absolute;right:-2px;top:-2px;width:12px;height:12px;border-radius:50%;background:var(--verde);border:2px solid #fff}
.cartao b{display:block;font:700 13px var(--sans)}
.cartao small{color:var(--ink600);font-size:11px;display:block}
.cartao .ind{color:var(--p600);font-weight:700;font-size:11px}
.perfil{background:#fff;border-radius:18px;padding:16px;text-align:center}
.perfil .av{width:62px;height:62px;border-radius:50%;background:var(--lav200);color:var(--p700);display:grid;place-items:center;font:700 20px var(--sans);margin:0 auto 8px;position:relative}
.perfil .av .ponto{position:absolute;right:0;top:0;width:16px;height:16px;border-radius:50%;background:var(--verde);border:3px solid #fff}
.perfil b{font:700 15px var(--sans)}
.perfil small{display:block;color:var(--ink600)}
.pilha{display:flex;justify-content:center;margin:12px 0 4px}
.pilha span{width:28px;height:28px;border-radius:50%;background:var(--lav200);color:var(--p700);display:grid;place-items:center;font:700 10px var(--sans);border:2px solid #fff;margin-left:-8px}
.pilha span:first-child{margin-left:0}
.pilha span.mais{background:var(--p600);color:#fff}
.perfil .num{font:400 34px/1 var(--serif);color:var(--p600);margin-top:6px}
.perfil .rot{font-size:11px;color:var(--ink600)}
.galeria{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}
.galeria div{aspect-ratio:1;border-radius:8px;background:var(--lav100);overflow:hidden}
.galeria img{width:100%;height:100%;object-fit:cover}
.zap{display:flex;align-items:center;justify-content:center;gap:8px;background:#25D366;color:#fff;border-radius:12px;padding:12px;font-weight:700;font-size:13px;margin-top:12px}
.zap svg{width:18px;height:18px}
.bolha{background:#fff;border-radius:14px 14px 14px 4px;padding:10px 12px;font-size:12px;max-width:85%;margin-top:8px;box-shadow:0 2px 10px rgba(24,20,40,.05)}
.bolha.eu{background:#DCF8C6;border-radius:14px 14px 4px 14px;margin-left:auto}
.bolha small{display:block;color:var(--ink400);font-size:10px;margin-top:4px;text-align:right}
.pedido{background:#fff;border-radius:16px;padding:14px}
.pedido label{display:block;font-size:11px;color:var(--ink600);margin:8px 0 4px;font-weight:600}
.pedido .campo{border:1px solid #E7E2F5;border-radius:10px;padding:9px 10px;font-size:12px;min-height:34px}
.pedido .campo.area{min-height:60px;color:var(--ink900)}
.pedido .enviar{background:var(--p600);color:#fff;border-radius:10px;padding:11px;text-align:center;font-weight:700;margin-top:12px;font-size:12.5px}
.resposta{margin-top:10px}
@media (max-width:900px){
  .funciona-grid{grid-template-columns:1fr}
  .funciona-txt{position:static}
  .funciona-vis{min-height:0;padding:0 16px}
  .fone{width:min(280px,80%);margin:32px 0}
}

/* ---------- para profissionais (cartões que abrem) ---------- */
.expansivos{display:flex;gap:12px;height:540px;margin-top:48px}
.exp{position:relative;flex:1;min-width:0;border-radius:8px;overflow:hidden;cursor:pointer;transition:flex 1s var(--ease);background:var(--escuro-2)}
.exp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease),filter .6s}
.exp::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 35%,rgba(0,0,0,.8));}
.exp .rot{position:absolute;left:0;right:0;bottom:0;padding:24px;z-index:1}
.exp .rot h3{font:400 clamp(22px,2vw,30px)/1.1 var(--serif);letter-spacing:-.02em;color:#fff}
.exp .rot p{color:rgba(255,255,255,.78);font-size:15px;max-width:30em;margin-top:10px;max-height:0;opacity:0;overflow:hidden;transition:max-height .7s var(--ease),opacity .5s}
.exp .rot .lista{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;max-height:0;opacity:0;overflow:hidden;transition:max-height .7s var(--ease),opacity .5s}
.exp .rot .lista span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);color:#fff;border-radius:999px;padding:7px 11px;font-size:12.5px;font-weight:500}
.exp.aberto{flex:3.2}
.exp.aberto img{transform:scale(1.04)}
.exp.aberto .rot p,.exp.aberto .rot .lista{max-height:200px;opacity:1}
.exp:not(.aberto) img{filter:saturate(.7) brightness(.8)}
.exp .vert{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;color:#fff;font:400 clamp(20px,1.7vw,26px)/1.1 var(--serif);letter-spacing:-.02em;transition:opacity .3s;z-index:1;padding:0 10px}
.exp.aberto .vert{opacity:0}
.exp:not(.aberto) .rot h3{opacity:0}
.pro-rodape{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:40px}
.pro-rodape .num{font:400 clamp(56px,6vw,96px)/1 var(--serif);letter-spacing:-.04em}
.pro-rodape .num span{color:var(--verde-v)}
.pro-rodape .leg{color:rgba(255,255,255,.7);max-width:22em}
@media (max-width:900px){
  .expansivos{flex-direction:column;height:auto}
  .exp{height:92px;flex:none;transition:height .7s var(--ease)}
  .exp.aberto{height:360px;flex:none}
  .exp .vert{left:22px;right:auto;text-align:left}
}

/* ---------- pontos ---------- */
.pontos-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(32px,5vw,80px);align-items:center}
.pontos-vis{position:relative;border-radius:8px;background:var(--escuro-2);padding:40px;min-height:400px;display:grid;place-items:center;overflow:hidden}
.pontos-vis::before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle at 30% 30%,rgba(131,71,242,.4),transparent 50%);pointer-events:none}
.placar{position:relative;background:#fff;color:var(--ink900);border-radius:18px;padding:22px 24px;width:min(340px,100%);box-shadow:0 30px 80px rgba(0,0,0,.4)}
.placar .rot{font-size:12px;color:var(--ink600);font-weight:500}
.placar .n{font:400 64px/1 var(--serif);letter-spacing:-.03em;color:var(--p600);margin:8px 0 6px;font-variant-numeric:tabular-nums}
.placar .nivel{display:flex;justify-content:space-between;font-size:12.5px;font-weight:500;margin-top:14px}
.placar .trilha{height:8px;border-radius:999px;background:var(--lav100);overflow:hidden;margin-top:6px}
.placar .trilha i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--p600),var(--p500));border-radius:999px;transition:width 1.6s var(--ease)}
.placar.in .trilha i{width:72%}
.flutua{position:absolute;right:-14px;top:-18px;background:var(--verde);color:#fff;font:600 14px var(--sans);padding:8px 12px;border-radius:999px;box-shadow:0 10px 24px rgba(0,0,0,.3);opacity:0;transform:translateY(10px)}
.placar.in .flutua{animation:sobeflutua 2.2s var(--ease) .6s infinite}
@keyframes sobeflutua{0%{opacity:0;transform:translateY(12px)}20%{opacity:1;transform:translateY(0)}70%{opacity:1;transform:translateY(-8px)}100%{opacity:0;transform:translateY(-22px)}}
.conquistas{display:flex;gap:8px;margin-top:16px}
.conquistas span{flex:1;background:var(--lav100);border-radius:12px;padding:10px 6px;text-align:center;font-size:11px;font-weight:500;color:var(--ink600)}
.conquistas span b{display:block;font:400 22px/1.1 var(--serif);color:var(--p700);margin-bottom:2px}
@media (max-width:900px){.pontos-grid{grid-template-columns:1fr}}

/* ---------- chamada final ---------- */
.chamada{padding:0 0 clamp(80px,9vw,140px)}
.chamada-card{position:relative;border-radius:24px;overflow:hidden;min-height:520px;display:grid;place-items:center;text-align:center;padding:72px var(--gutter);isolation:isolate;max-width:760px;margin-inline:auto}
.chamada-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transform:scale(1.08);transition:transform 6s var(--ease)}
.chamada-card.in img{transform:scale(1)}
.chamada-card::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.5);z-index:-1}
.chamada-card h2{color:#fff;font-size:clamp(44px,5.6vw,80px);line-height:1;max-width:10em;margin-inline:auto}
.chamada-card p{color:rgba(255,255,255,.85);margin:20px auto 30px;max-width:30em;font-size:16px}
.chamada-card .btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

/* ---------- perguntas ---------- */
.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:clamp(32px,5vw,80px)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font:500 17px/1.3 var(--sans)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:300 26px/1 var(--sans);color:var(--ink900);transition:transform .3s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{color:var(--ink600);padding-bottom:22px;max-width:40em;font-size:15px}
@media (max-width:900px){.faq{grid-template-columns:1fr}}

/* ---------- rodapé ---------- */
.rodape{background:var(--escuro);color:#fff;padding:56px 0 32px}
.rodape .topo{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap;align-items:flex-start}
.rodape .topo img{width:170px;height:auto}
.rodape .colunas{display:flex;gap:clamp(32px,6vw,96px);flex-wrap:wrap}
.rodape h4{font:500 12px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.5);margin:0 0 16px}
.rodape ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.rodape a{color:rgba(255,255,255,.85);text-decoration:none;font-size:14px}
.rodape a:hover{color:#fff;text-decoration:underline}
.rodape .base{margin-top:48px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12.5px;color:rgba(255,255,255,.5)}

/* ---------- movimento reduzido ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
  .hero{height:auto}
  .hero-stage{position:relative;height:100vh}
  .grade,.hero-frase{display:none}
  .palavras .w > span,.sobe{transform:none;opacity:1}
}
