/* Mapa do Google refeito (pacote Inovaccio16, protótipo "Mapa do Google.dc.html"). Valores do protótipo;
   as quebras são as dele: celular abaixo de 760 px, largo a partir de 1000 px. Estados do topo em
   [data-fase] (idle, run, done) e [data-mg-hero].mg-res-on, montados por public/js/marca/mapa-lab.js. */
.mg{font-family:'Ubuntu',sans-serif;color:#09090B;background:#FAFAF8;overflow-x:clip}
.mg b{font-weight:700;color:#09090B}
@keyframes mgIn{from{opacity:0;transform:translateY(14px);filter:blur(6px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes mgGlow{0%,100%{transform:translate(0,0)}50%{transform:translate(-3%,2%)}}
@keyframes mgScan{from{transform:translateY(-100%)}to{transform:translateY(100%)}}
@keyframes mgPing{0%{transform:translate(-50%,-50%) scale(.6);opacity:.9}100%{transform:translate(-50%,-50%) scale(2.6);opacity:0}}
@keyframes mgBreath{0%,100%{opacity:.55}50%{opacity:1}}
@keyframes mgShine{0%,70%{transform:translateX(-120%)}100%{transform:translateX(220%)}}
@keyframes mgSpin{to{transform:rotate(360deg)}}
.mg-k{font-size:12px;font-weight:500;letter-spacing:.16em;color:#6E6E74}
.mg-shine{position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.28) 50%,transparent 70%);animation:mgShine 4.5s cubic-bezier(.65,0,.35,1) infinite;pointer-events:none}

/* ---------- topo ---------- */
/* overflow:clip e não hidden: com hidden, focar um campo rola a seção de lado. */
.mg-hero{position:relative;overflow:clip;background:#FAFAF8}
.mg-hero-pontos{position:absolute;left:0;top:0;width:420px;height:300px;background-image:radial-gradient(rgba(9,9,11,.16) 1px,transparent 1.4px);background-size:14px 14px;-webkit-mask-image:radial-gradient(circle at 0 0,#000,transparent 70%);mask-image:radial-gradient(circle at 0 0,#000,transparent 70%);pointer-events:none}
.mg-hero-glow{position:absolute;right:-12%;top:-30%;width:60%;height:120%;background:radial-gradient(closest-side,rgba(204,6,1,.12),transparent);pointer-events:none;animation:mgGlow 18s ease-in-out infinite}
.mg-hero-in{position:relative;max-width:1440px;margin:0 auto;padding:clamp(120px,14vw,170px) clamp(20px,4vw,64px) clamp(64px,8vw,110px);display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:start}
/* Abre já ao começar a pesquisa (run) e fica aberto no resultado (done): a coluna do texto encolhe até 0 e o card toma a largura toda. O max-height da .mg-esq é posto pelo mapa-lab.js (medido), para a altura também correr sem salto. */
@keyframes mgOut{from{opacity:1}to{opacity:0;visibility:hidden}}
@media (min-width:1000px){
  .mg-hero-in{grid-template-columns:.9fr 1.1fr;column-gap:clamp(28px,4vw,64px);transition:grid-template-columns .8s cubic-bezier(.22,1,.36,1),column-gap .8s cubic-bezier(.22,1,.36,1)}
  .mg-hero:not([data-fase=idle]) .mg-hero-in{grid-template-columns:0fr 1fr;column-gap:0}
  .mg-esq{transition:max-height .8s cubic-bezier(.22,1,.36,1)}
  .mg-hero:not([data-fase=idle]) .mg-esq{overflow:hidden;animation:mgOut .4s cubic-bezier(.22,1,.36,1) both}
}
.mg-esq{display:flex;flex-direction:column;gap:22px;min-width:0;animation:mgIn .9s cubic-bezier(.22,1,.36,1) both}
.mg-h1{margin:0;font-size:clamp(40px,5.4vw,80px);font-weight:300;letter-spacing:-0.055em;line-height:.95;text-wrap:balance}
.mg-lead{margin:0;max-width:520px;font-size:clamp(16px,1.3vw,18px);font-weight:300;line-height:1.6;color:#55555B;text-wrap:pretty}
.mg-chips{display:flex;gap:14px;flex-wrap:wrap;font-size:13px;font-weight:300;color:#55555B}
.mg-ler{display:flex;flex-direction:column;gap:12px;padding:18px 20px;border-radius:22px;background:#FFFFFF;box-shadow:inset 0 0 0 1px rgba(9,9,11,.06)}
.mg-ler-t{font-size:14px;font-weight:300;line-height:1.55;color:#55555B;text-wrap:pretty}
.mg-leg{display:flex;gap:10px;flex-wrap:wrap}
.mg-leg>span{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 14px 0 8px;border-radius:999px;background:#FFFFFF;box-shadow:inset 0 0 0 1px rgba(9,9,11,.08);font-size:12.5px;font-weight:500}
.mg-leg>span>span{width:18px;height:18px;border-radius:50%}
.mg-see{display:flex;flex-direction:column;gap:12px;margin-top:6px}
.mg-hero:not([data-fase=idle]) .mg-see{display:none}
.mg-see-g{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
@media (min-width:520px){.mg-see-g{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mg-see-c{display:flex;flex-direction:column;gap:10px;padding:16px 18px;border-radius:20px;background:#FFFFFF;box-shadow:inset 0 0 0 1px rgba(9,9,11,.06);transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s}
.mg-see-c:hover{transform:translateY(-3px);box-shadow:inset 0 0 0 1px rgba(9,9,11,.12),0 18px 34px -24px rgba(9,9,11,.4)}
.mg-see-h{display:flex;align-items:center;gap:10px}
.mg-see-ic{width:34px;height:34px;flex:none;border-radius:11px;display:flex;align-items:center;justify-content:center}
.mg-see-ic>span{width:16px;height:16px}
.mg-see-t{font-size:14.5px;font-weight:700;line-height:1.2}
.mg-see-d{font-size:12.5px;font-weight:300;line-height:1.45;color:#55555B}
.mg-see-s{align-self:flex-start;padding:3px 9px;border-radius:999px;background:#F1F0EE;font-size:11px;font-weight:500;color:#55555B}

.mg-card{position:relative;display:flex;flex-direction:column;gap:18px;min-width:0;padding:clamp(18px,2vw,26px);border-radius:32px;background:#FFFFFF;box-shadow:0 0 0 1px rgba(9,9,11,.06),0 40px 80px -48px rgba(9,9,11,.4);animation:mgIn .9s cubic-bezier(.22,1,.36,1) .1s both}
.mg-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.mg-card-top>span{flex-wrap:nowrap;white-space:nowrap}
.mg-orb{width:30px;height:30px;display:flex;align-items:center;justify-content:center}
.mg-card-k{font-size:11.5px;font-weight:500;letter-spacing:.14em;color:#6E6E74}
.mg-left{display:inline-flex;padding:4px 10px;border-radius:999px;background:#F1F0EE;font-size:11.5px;font-weight:500;color:#55555B}
.mg-left[hidden],.mg-novo[hidden],.mg-up[hidden],.mg-res[hidden],.mg-cand[hidden]{display:none}
.mg-novo{height:32px;padding:0 14px;border:none;border-radius:999px;background:#F1F0EE;font-family:'Ubuntu',sans-serif;font-size:12.5px;font-weight:500;color:#09090B;cursor:pointer;white-space:nowrap}

.mg-form{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
@media (min-width:760px){.mg-form{grid-template-columns:1fr 1fr}.mg-form .mg-go{grid-column:1 / -1}}
@media (min-width:1000px){.mg-hero:not([data-fase=idle]) .mg-form{grid-template-columns:1fr 1fr 1fr 1fr auto}.mg-hero:not([data-fase=idle]) .mg-form .mg-go{grid-column:auto}}
.mg-f{display:flex;flex-direction:column;gap:4px;padding:10px 16px;border-radius:18px;background:#F7F6F4;box-shadow:inset 0 0 0 1px rgba(9,9,11,.06);transition:box-shadow .45s cubic-bezier(.22,1,.36,1);cursor:text}
.mg-f[hidden]{display:none}
.mg-f>span{font-size:11px;font-weight:500;color:#8A8A90}
.mg-f:focus-within{box-shadow:inset 0 0 0 1.5px #09090B,0 0 0 4px rgba(9,9,11,.06)}
.mg-f.erro{box-shadow:inset 0 0 0 1.5px #CC0601,0 0 0 4px rgba(204,6,1,.08)}
/* Mais específico que a regra global de input[type] (marca.css), que fixa borda, fundo e tamanho. */
.mg .mg-f input{border:none!important;outline:none!important;box-shadow:none!important;background:transparent!important;font-family:'Ubuntu',sans-serif;font-size:17px!important;font-weight:500;color:#09090B;padding:0!important;width:100%;min-height:0!important;height:auto!important;border-radius:0!important}
.mg-f input::placeholder{color:#A4A4AA}
.mg-go{position:relative;overflow:hidden;height:56px;padding:0 24px;border:none;border-radius:18px;background:#D4D4D0;color:#FFFFFF;font-family:'Ubuntu',sans-serif;font-size:15px;font-weight:500;cursor:default;white-space:nowrap;transition:background .45s,transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s}
.mg-go.pronto{background:#CC0601;cursor:pointer}
.mg-go.pronto:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 14px 28px -14px rgba(204,6,1,.7)}
.mg-go:disabled{cursor:default}
.mg-dica{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:-6px}
.mg-dica>[data-mg-hint]{font-size:12.5px;font-weight:300;color:#6E6E74;transition:color .45s}
.mg-dica>[data-mg-hint].ok{color:#13824A}
.mg-dica>[data-mg-hint].erro{color:#CC0601;font-weight:400}
.mg-anel{position:relative;display:grid;grid-template-columns:repeat(3,1fr);padding:3px;border-radius:999px;background:#F1F0EE}
.mg-anel[hidden]{display:none}
.mg-anel-ind{position:absolute;top:3px;bottom:3px;left:3px;width:calc((100% - 6px) / 3);border-radius:999px;background:#09090B;transform:translateX(var(--mg-anel-x,200%));transition:transform .6s cubic-bezier(.22,1,.36,1)}
.mg-anel button{position:relative;height:32px;padding:0 6px;white-space:nowrap;border:none;background:transparent;font-family:'Ubuntu',sans-serif;font-size:12px;font-weight:500;color:#55555B;cursor:pointer;transition:color .45s}
.mg-anel button[aria-pressed=true]{color:#FFFFFF}
.mg-ex{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:-4px}
.mg-hero:not([data-fase=idle]) .mg-ex,.mg-hero.mg-tem .mg-ex{display:none}
.mg-ex button,.mg-cand-l button{height:30px;padding:0 12px;border:none;border-radius:999px;background:#F1F0EE;font-family:'Ubuntu',sans-serif;font-size:12px;font-weight:500;color:#09090B;cursor:pointer;transition:background .4s,transform .45s cubic-bezier(.22,1,.36,1)}
.mg-ex button:hover,.mg-cand-l button:hover{background:#E6E3DD;transform:translateY(-1px)}
.mg-cand{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border-radius:18px;background:#F7F6F4;animation:mgIn .6s cubic-bezier(.22,1,.36,1) both}
.mg-cand-t{font-size:13.5px;font-weight:300;line-height:1.45;color:#55555B}
.mg-cand-l{display:flex;flex-direction:column;gap:6px}
.mg-cand-l button{height:auto;min-height:44px;padding:10px 14px;border-radius:14px;background:#FFFFFF;box-shadow:inset 0 0 0 1px rgba(9,9,11,.06);text-align:left;display:flex;flex-direction:column;gap:2px;font-size:13.5px}
.mg-cand-l button span{font-size:12px;font-weight:300;color:#6E6E74}

.mg-mg{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}
@media (min-width:760px){.mg-hero[data-fase=run] .mg-mg,.mg-hero[data-fase=done] .mg-mg{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}}
/* Coluna do mapa: mapa, detalhe do ponto e direção a direção. O .mg-fixa é posto pelo JS só quando a coluna cabe na tela, para o mapa acompanhar a rolagem sem esconder o fim dela. */
.mg-colm{display:flex;flex-direction:column;gap:10px;min-width:0}
.mg-mapac{display:flex;flex-direction:column;gap:10px;min-width:0}
.mg-colm.mg-fixa{position:sticky;top:140px}
.mg-sel[hidden],.mg-dirbox[hidden],.mg-and[hidden],.mg-and li[hidden]{display:none}
.mg-acoes{display:flex;gap:8px;flex-wrap:wrap}
.mg-so{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* No celular o resultado vira uma coluna só na ordem de leitura: veredito, números, mapa, detalhe do ponto, direções, quem domina, perfil e plano. */
@media (max-width:759px){
  .mg-mg{gap:10px}
  .mg-hero[data-fase=done] .mg-colm,.mg-hero[data-fase=done] .mg-res{display:contents}
  .mg-hero[data-fase=done] .mg-vered{order:1}
  .mg-hero[data-fase=done] .mg-kpis{order:2}
  .mg-hero[data-fase=done] .mg-mapac{order:3}
  .mg-hero[data-fase=done] .mg-sel{order:4}
  .mg-hero[data-fase=done] .mg-dirbox{order:5}
  .mg-hero[data-fase=done] .mg-domb{order:6}
  .mg-hero[data-fase=done] .mg-perfil{order:7}
  .mg-hero[data-fase=done] .mg-acoes{order:8}
  .mg-hero[data-fase=done] .mg-plano-acoes{order:9}
  .mg-hero[data-fase=done] [data-mg-relatorio]{order:10}
}
/* Andamento da medição (só em run): etapas reais do servidor, os 9 pontos e o tempo. */
.mg-and{display:flex;flex-direction:column;gap:12px;min-width:0;padding:18px 20px;border-radius:24px;background:#FFFFFF;box-shadow:inset 0 0 0 1px rgba(9,9,11,.06);animation:mgIn .7s cubic-bezier(.22,1,.36,1) .15s both}
.mg-and-k{font-size:11.5px;font-weight:500;letter-spacing:.14em;color:#6E6E74}
.mg-and-q{font-size:clamp(18px,1.6vw,22px);font-weight:300;letter-spacing:-0.03em;line-height:1.2;text-wrap:balance}
.mg-and-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:12.5px;font-weight:300;color:#6E6E74}
.mg-and-tempo{padding:3px 10px;border-radius:999px;background:#F1F0EE;font-weight:500;color:#09090B;font-variant-numeric:tabular-nums}
.mg-and-et{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.mg-and-et li{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:300;color:#6E6E74;transition:color .45s}
.mg-and-i{flex:none;width:18px;height:18px;border-radius:50%;box-shadow:inset 0 0 0 1.5px #D4D4D0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;line-height:1;color:#FFFFFF;transition:background .45s,box-shadow .45s}
.mg-and-et li.ativa{color:#09090B;font-weight:500}
.mg-and-et li.ativa .mg-and-i{box-shadow:inset 0 0 0 2px #CC0601;animation:mgBreath 1.4s ease-in-out infinite}
.mg-and-et li.feita{color:#09090B}
.mg-and-et li.feita .mg-and-i{background:#13824A;box-shadow:none}
.mg-and-et li.feita .mg-and-i::after{content:"✓"}
.mg-and-pts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:6px}
.mg-and-pts li{display:flex;justify-content:space-between;align-items:center;gap:8px;min-width:0;font-size:12.5px;border-top:1px solid rgba(9,9,11,.06);padding-top:6px}
.mg-and-pts li>span:first-child{font-weight:500;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mg-and-ps{flex:none;font-size:11.5px;font-weight:300;color:#6E6E74}
.mg-and-ps.med{color:#09090B;font-weight:500;animation:mgBreath 1.4s ease-in-out infinite}
.mg-and-ps.res{min-width:34px;padding:2px 8px;border-radius:999px;color:#FFFFFF;font-weight:700;text-align:center;animation:mgIn .5s cubic-bezier(.22,1,.36,1) both}
.mg-and-sk{display:flex;flex-direction:column;gap:10px}
.mg-and-sk-a,.mg-and-sk-g>span{display:block;border-radius:14px;background:#F1F0EE;animation:mgBreath 1.8s ease-in-out infinite}
.mg-and-sk-a{height:44px;width:80%}
.mg-and-sk-g{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.mg-and-sk-g>span{height:58px}
.mg-and-sk-g>span:nth-child(2n){animation-delay:.3s}
.mg-mapa{position:relative;aspect-ratio:1;transition:aspect-ratio .6s;border-radius:24px;overflow:hidden;background:#ECEBE7;box-shadow:inset 0 0 0 1px rgba(9,9,11,.06)}
@media (min-width:760px){.mg-hero:not(.mg-tem) .mg-mapa{aspect-ratio:5/4}}
.mg-ruas1,.mg-ruas2{position:absolute;inset:-20%;transform:rotate(-9deg) scale(var(--mg-z,1));transition:transform .7s cubic-bezier(.22,1,.36,1)}
.mg-ruas1{background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.95) 0 3px,transparent 3px 44px),repeating-linear-gradient(0deg,rgba(255,255,255,.95) 0 3px,transparent 3px 52px)}
.mg-ruas2{background-image:repeating-linear-gradient(90deg,rgba(255,255,255,1) 0 8px,transparent 8px 220px),repeating-linear-gradient(0deg,rgba(255,255,255,1) 0 7px,transparent 7px 260px)}
.mg-agua{position:absolute;right:-8%;top:-10%;width:46%;height:38%;border-radius:50%;background:#D9E4EC;transform:scale(var(--mg-z,1));transform-origin:-26% 158%;transition:transform .7s cubic-bezier(.22,1,.36,1)}
.mg-parque{position:absolute;left:12%;bottom:14%;width:22%;height:16%;border-radius:40%;background:#DCE6D6;transform:scale(var(--mg-z,1));transform-origin:173% -125%;transition:transform .7s cubic-bezier(.22,1,.36,1)}
.mg-scan{display:none;position:absolute;inset:0;z-index:4;background:linear-gradient(180deg,transparent,rgba(204,6,1,.1) 46%,rgba(204,6,1,.28) 50%,transparent 54%);animation:mgScan 1.6s cubic-bezier(.65,0,.35,1) infinite;pointer-events:none}
.mg-hero[data-fase=run] .mg-scan{display:block}
.mg-p{position:absolute;z-index:3;width:28px;height:28px;margin:0;padding:0;border:none;border-radius:50%;background:rgba(9,9,11,.12);color:#FFFFFF;font-family:'Ubuntu',sans-serif;font-size:10.5px;font-weight:700;display:flex;align-items:center;justify-content:center;cursor:default;transform:translate(-50%,-50%) scale(1);transition:left .7s cubic-bezier(.22,1,.36,1),top .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.34,1.5,.5,1),opacity .5s cubic-bezier(.22,1,.36,1),background .5s,box-shadow .45s}
.mg-bal{position:absolute;z-index:10;width:210px;padding:12px 14px;border-radius:16px;background:#09090B;color:#F4F3F1;box-shadow:0 18px 36px -16px rgba(9,9,11,.7);pointer-events:none;transition:left .9s cubic-bezier(.22,1,.36,1),top .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1)}
.mg-hero.mg-tem .mg-bal{display:none}
.mg-bal>span{display:flex;flex-direction:column;gap:4px;animation:mgIn .6s cubic-bezier(.22,1,.36,1) both}
.mg-ping{position:absolute;left:50%;top:50%;z-index:6;width:46px;height:46px;border-radius:50%;background:rgba(204,6,1,.25);animation:mgPing 2.4s cubic-bezier(.22,1,.36,1) infinite;pointer-events:none}
.mg-pin{position:absolute;left:50%;top:calc(50% - 18px);z-index:7;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;pointer-events:none}
.mg-pin>span:first-child{padding:4px 10px;border-radius:999px;background:#09090B;color:#FFFFFF;font-size:11px;font-weight:700;white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis;box-shadow:0 8px 18px -8px rgba(9,9,11,.6)}
.mg-pin>span:last-child{width:2px;height:10px;background:#09090B}
.mg-nota{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:11.5px;font-weight:300;color:#6E6E74}
.mg-aviso{justify-content:flex-start;margin-top:-4px;color:#6E6E74}
.mg-selo{padding:3px 8px;border-radius:999px;background:#09090B;color:#FFFFFF;font-size:10px;font-weight:700;letter-spacing:.12em}
.mg-hero.mg-tem .mg-selo{display:none}
.mg-up{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border:none;border-radius:16px;background:#F7F6F4;box-shadow:inset 0 0 0 1px rgba(9,9,11,.06);font-family:'Ubuntu',sans-serif;text-align:left;color:#09090B;cursor:pointer;transition:transform .5s cubic-bezier(.22,1,.36,1),background .5s}
.mg-up:hover{transform:translateY(-2px);background:#F1F0EE}

.mg-res{display:flex;flex-direction:column;gap:10px;min-width:0;animation:mgIn .7s cubic-bezier(.22,1,.36,1) both}
.mg-vered{font-size:clamp(20px,2vw,28px);font-weight:300;letter-spacing:-0.04em;line-height:1.1;text-wrap:balance}
.mg-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.mg-kpi{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:18px;background:#F7F6F4;min-width:0}
.mg-kpi-l{font-size:11.5px;font-weight:500;color:#6E6E74}
.mg-kpi-v{font-size:28px;font-weight:700;letter-spacing:-0.05em;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mg-kpi-v>span{font-size:13px;font-weight:300;letter-spacing:0;color:#8A8A90}
.mg-box{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border-radius:18px;background:#F7F6F4}
.mg-box-k{font-size:11.5px;font-weight:500;color:#6E6E74}
.mg-dir,.mg-dom{display:flex;flex-direction:column;gap:8px}
.mg-dir-l{display:grid;grid-template-columns:96px minmax(0,1fr) 40px;gap:10px;align-items:center;font-size:12.5px}
.mg-dom-l{display:grid;grid-template-columns:minmax(0,1fr) 120px 30px;gap:10px;align-items:center;font-size:12.5px}
.mg-dir-l>span:first-child,.mg-dom-l>span:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mg-dir-l>span:first-child{font-weight:500}
.mg-barra{height:6px;border-radius:999px;background:rgba(9,9,11,.06);overflow:hidden}
.mg-barra>span{display:block;height:100%;width:0;border-radius:999px;transition:width 1.2s cubic-bezier(.22,1,.36,1)}
.mg-dir-l>span:last-child,.mg-dom-l>span:last-child{font-weight:700;text-align:right}
.mg-sel{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border-radius:18px;background:#09090B;color:#F4F3F1}
.mg-sel-k{display:flex;justify-content:space-between;gap:8px;font-size:11.5px;font-weight:500;color:#8A8A90}
.mg-sel-a{font-size:15px;font-weight:300;line-height:1.45}
.mg-sel-top{display:flex;flex-direction:column;gap:4px}
.mg-sel-top>span{display:flex;justify-content:space-between;gap:10px;font-size:12.5px;color:#D4D4D0}
.mg-sel-top>span>span:first-child{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mg-sel-top>span>span:last-child{flex:none;font-weight:300;color:#8A8A90}
.mg-sel-top>span.eu{font-weight:700;color:#FFFFFF}
.mg-cta{position:relative;overflow:hidden;flex:1;min-width:200px;height:46px;border:none;border-radius:999px;background:#CC0601;color:#FFFFFF;font-family:'Ubuntu',sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s}
.mg-cta:hover{transform:translateY(-2px);box-shadow:0 14px 28px -14px rgba(204,6,1,.7)}
.mg-copia{height:46px;padding:0 18px;border:none;border-radius:999px;background:#F1F0EE;font-family:'Ubuntu',sans-serif;font-size:13.5px;font-weight:500;color:#09090B;cursor:pointer}

/* ---------- seções ---------- */
.mg-sec{background:#FFFFFF}
.mg-branco{background:#FFFFFF}
.mg-cf{border-top:1px solid rgba(9,9,11,.06)}
.mg-escuro{background:#09090B;color:#F4F3F1}
.mg-in{max-width:1440px;margin:0 auto;padding:clamp(72px,9vw,128px) clamp(20px,4vw,64px);display:flex;flex-direction:column;gap:clamp(28px,3vw,44px)}
.mg-sec-h{display:flex;flex-direction:column;gap:12px;max-width:760px}
.mg-h2{margin:0;font-size:clamp(32px,4vw,56px);font-weight:300;letter-spacing:-0.05em;line-height:1;text-wrap:balance}
.mg-sec-p{margin:0;font-size:16px;font-weight:300;line-height:1.6;color:#ACACB2}
.mg-escuro b{color:#F4F3F1}
.mg-cf-g{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mg-cf-l{display:none;position:absolute;left:6%;right:6%;top:30px;height:2px;background:rgba(9,9,11,.08)}
.mg-cf-l>span{display:block;height:100%;width:0;background:#CC0601;transition:width 1.4s cubic-bezier(.22,1,.36,1)}
@media (min-width:760px){.mg-cf-g{grid-template-columns:repeat(4,minmax(0,1fr))}.mg-cf-l{display:block}}
.mg-cf-c{position:relative;display:flex;flex-direction:column;gap:10px;padding:0 4px}
.mg-cf-ic{width:60px;height:60px;border-radius:20px;background:#F1F0EE;display:flex;align-items:center;justify-content:center;transition:background .6s cubic-bezier(.22,1,.36,1),transform .6s cubic-bezier(.34,1.5,.5,1)}
.mg-cf-c.on .mg-cf-ic{background:#09090B}
.mg-cf-c.agora .mg-cf-ic{transform:scale(1.08)}
.mg-cf-ic>span{width:26px;height:26px}
.mg-cf-n{font-size:12px;font-weight:500;color:#8A8A90}
.mg-cf-t{font-size:18px;font-weight:700;letter-spacing:-0.02em}
.mg-cf-d{font-size:14px;font-weight:300;line-height:1.55;color:#55555B}
.mg-g3{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
.mg-g3-f{gap:10px}
@media (min-width:760px){.mg-g3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.mg-regua{display:flex;flex-direction:column;gap:14px;padding:26px;border-radius:28px;background:#141417;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);transition:transform .6s cubic-bezier(.22,1,.36,1),box-shadow .6s}
.mg-regua:hover{transform:translateY(-4px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.mg-regua-ic{width:48px;height:48px;border-radius:16px;background:#1C1C20;display:flex;align-items:center;justify-content:center}
.mg-regua-ic>span{width:24px;height:24px}
.mg-regua-tag{padding:4px 10px;border-radius:999px;font-size:11px;font-weight:500}
.mg-regua-t{font-size:24px;font-weight:700;letter-spacing:-0.03em}
.mg-regua-d{font-size:14.5px;font-weight:300;line-height:1.6;color:#ACACB2}
.mg-regua-it{display:flex;flex-direction:column;gap:6px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}
.mg-regua-it>span{display:flex;gap:10px;font-size:13.5px;font-weight:300;line-height:1.45;color:#D4D4D0}
.mg-fat{display:flex;gap:14px;padding:18px 20px;border-radius:20px;background:#141417;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);transition:transform .5s cubic-bezier(.22,1,.36,1)}
.mg-fat:hover{transform:translateY(-2px)}
.mg-fat-n{font-size:13px;font-weight:700;color:#6E6E74}
.mg-ilus{padding:6px 12px;border-radius:999px;background:#F1F0EE;font-size:11.5px;font-weight:500;color:#55555B}
.mg-g2r{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:stretch}
@media (min-width:760px){.mg-g2r{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}}
.mg-wk{display:flex;flex-direction:column;gap:14px;padding:22px;border-radius:28px;background:#FFFFFF;box-shadow:inset 0 0 0 1px rgba(9,9,11,.08)}
.mg-tog{position:relative;display:grid;grid-template-columns:1fr 1fr;padding:3px;border-radius:999px;background:#F1F0EE}
.mg-tog-ind{position:absolute;top:3px;bottom:3px;left:3px;width:calc(50% - 3px);border-radius:999px;background:#09090B;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.mg-tog button{position:relative;height:30px;padding:0 14px;border:none;background:transparent;font-family:'Ubuntu',sans-serif;font-size:12px;font-weight:500;color:#55555B;cursor:pointer;transition:color .45s}
.mg-tog button.on{color:#FFFFFF}
.mg-wk-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:center}
.mg-wk-m{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;padding:14px;border-radius:18px;background:#ECEBE7}
.mg-wk-m>span{aspect-ratio:1;border-radius:50%;background:#D4D4D0;transition:background .7s cubic-bezier(.22,1,.36,1)}
.mg-wk-n{font-size:48px;font-weight:700;letter-spacing:-0.06em;line-height:1;transition:color .6s}
.mg-wk-n>span{font-size:16px;font-weight:300;letter-spacing:0;color:#8A8A90}
.mg-ent{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:start;padding:16px 18px;border-radius:22px;background:#FFFFFF;box-shadow:inset 0 0 0 1px rgba(9,9,11,.08)}
.mg-ent-ic{width:44px;height:44px;border-radius:14px;background:#F1F0EE;display:flex;align-items:center;justify-content:center}
.mg-ent-ic>span{width:20px;height:20px}
/* Relatório de exemplo: as páginas do PDF de verdade (celular: abas em linha rolável, sheet e texto; a partir de 900 px: sheet à esquerda e lista à direita). */
.mg-pgs{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;min-width:0}
.mg-pgs-lista{display:flex;gap:8px;overflow-x:auto;margin:0 calc(-1 * clamp(20px,4vw,64px));padding:2px clamp(20px,4vw,64px) 6px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.mg-pgs-lista::-webkit-scrollbar{display:none}
.mg-pgs-b{flex:none;display:flex;align-items:center;gap:10px;height:46px;padding:0 16px 0 6px;border:none;border-radius:999px;background:#FFFFFF;box-shadow:inset 0 0 0 1px rgba(9,9,11,.08);font-family:'Ubuntu',sans-serif;text-align:left;color:#09090B;cursor:pointer;transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .45s}
.mg-pgs-b:hover{transform:translateY(-2px)}
.mg-pgs-b.on{box-shadow:inset 0 0 0 1.5px #09090B}
.mg-pgs-n{flex:none;width:34px;height:34px;border-radius:50%;background:#F1F0EE;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#55555B;transition:background .45s,color .45s}
.mg-pgs-b.on .mg-pgs-n{background:#09090B;color:#FFFFFF}
.mg-pgs-tx{display:flex;flex-direction:column;gap:4px;min-width:0}
.mg-pgs-t{font-size:14px;font-weight:500;white-space:nowrap}
.mg-pgs-b.on .mg-pgs-t{font-weight:700}
.mg-pgs-d{display:none;font-size:13.5px;font-weight:300;line-height:1.5;color:#55555B}
.mg-pgs-fundo{display:flex;flex-direction:column;gap:16px;padding:clamp(18px,3vw,32px) clamp(20px,4vw,48px) clamp(26px,3vw,40px);border-radius:32px;background:radial-gradient(circle at 100% 100%,rgba(204,6,1,.14),transparent 55%),#E9E7E3;overflow:hidden}
.mg-pgs-selo{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;font-weight:500;color:#55555B}
.mg-pgs-box{position:relative;width:calc(100% - 22px);max-width:420px;margin:0 auto;aspect-ratio:210/297}
.mg-pgs-tras{position:absolute;inset:0;border-radius:10px;background:#FFFFFF;box-shadow:0 20px 40px -24px rgba(9,9,11,.3)}
.mg-pgs-folha{position:absolute;inset:0;display:block;border-radius:10px;background:#FFFFFF;box-shadow:0 30px 60px -30px rgba(9,9,11,.4);animation:mgIn .7s cubic-bezier(.22,1,.36,1) both;overflow:hidden}
.mg-pgs-folha img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.mg-pgs-info{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.mg-pgs-desc{font-size:13.5px;font-weight:300;line-height:1.5;color:#55555B}
.mg-pgs-nota{font-size:12.5px;font-weight:300;line-height:1.5;color:#6E6E74;max-width:460px}
.mg-pgs-folhear{height:46px;padding:0 22px;border:none;border-radius:999px;background:#09090B;color:#FFFFFF;font-family:'Ubuntu',sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s}
.mg-pgs-folhear:hover{transform:translateY(-2px);box-shadow:0 14px 28px -14px rgba(9,9,11,.5)}
@media (min-width:900px){
  .mg-pgs{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-areas:"fundo lista" "fundo info";grid-template-rows:auto 1fr;column-gap:clamp(20px,3vw,48px);row-gap:20px;align-items:start}
  .mg-pgs-lista{grid-area:lista;flex-direction:column;overflow:visible;margin:0;padding:0;gap:8px}
  .mg-pgs-fundo{grid-area:fundo}
  .mg-pgs-info{grid-area:info}
  .mg-pgs-b{width:100%;height:auto;align-items:flex-start;gap:14px;padding:14px 18px;border-radius:22px}
  .mg-pgs-n{width:44px;height:44px;border-radius:14px;font-size:13px}
  .mg-pgs-t{font-size:15px;white-space:normal}
  .mg-pgs-d{display:block}
  .mg-pgs-desc{display:none}
}
/* Visualizador "folhear o relatório" (o mesmo do laudo do Raio-X de Site). */
.mg-lv{position:fixed;inset:0;z-index:520;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(9,9,11,.6);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);overscroll-behavior:contain;opacity:0;pointer-events:none;transition:opacity .45s cubic-bezier(.22,1,.36,1)}
.mg-lv[hidden]{display:none}
.mg-lv.on{opacity:1;pointer-events:auto}
.mg-lv-in{width:100%;max-width:min(880px,calc((100vh - 190px) * .7071));max-width:min(880px,calc((100dvh - 190px) * .7071));display:flex;flex-direction:column;gap:14px;transform:translateY(20px);transition:transform .6s cubic-bezier(.34,1.5,.5,1)}
.mg-lv.on .mg-lv-in{transform:none}
.mg-lv-topo{display:flex;justify-content:space-between;align-items:center;gap:10px}
.mg-lv-n{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:6px 12px;border-radius:999px;background:#09090B;color:#FFFFFF;font-size:12px;font-weight:500}
.mg-lv-il{flex:none;white-space:nowrap;padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.9);font-size:11px;font-weight:500;color:#6E6E74}
.mg-lv-img{position:relative;aspect-ratio:210/297;border-radius:22px;overflow:hidden;background:#FFFFFF;box-shadow:0 40px 80px -30px rgba(0,0,0,.6)}
.mg-lv-img img{width:100%;height:100%;object-fit:contain;background:#F4F3F1}
.mg-lv-rod{display:flex;justify-content:space-between;align-items:center;gap:10px}
.mg-lv-seta{width:46px;height:46px;border:none;border-radius:50%;background:#FFFFFF;color:#09090B;font-family:'Ubuntu',sans-serif;font-size:18px;cursor:pointer}
.mg-lv-fechar{height:46px;padding:0 18px;border:none;border-radius:999px;background:rgba(255,255,255,.14);color:#FFFFFF;font-family:'Ubuntu',sans-serif;font-size:14px;font-weight:500;cursor:pointer}
.mg-lv-dots{display:flex;gap:6px}
.mg-lv-dots button{width:8px;height:8px;padding:0;border:none;border-radius:999px;background:rgba(255,255,255,.4);cursor:pointer;transition:width .5s cubic-bezier(.22,1,.36,1),background .4s}
.mg-lv-dots button.on{width:22px;background:#FFFFFF}
.mg-g4{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media (min-width:760px){.mg-g4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.mg-gar{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border-radius:18px;background:#F1F0EE}
.mg-plano{position:relative;display:flex;flex-direction:column;gap:14px;padding:28px;border-radius:28px;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.mg-plano:hover{transform:translateY(-4px)}
.mg-plano-claro{background:#FAFAF8;color:#09090B;box-shadow:inset 0 0 0 1px rgba(9,9,11,.08)}
.mg-plano-destaque{background:#FFFFFF;color:#09090B;box-shadow:inset 0 0 0 1.5px #09090B,0 30px 60px -40px rgba(9,9,11,.4)}
.mg-plano-escuro{background:#09090B;color:#F4F3F1}
.mg-plano-tag{display:inline-flex;padding:4px 10px;border-radius:999px;background:#CC0601;color:#FFFFFF;font-size:11px;font-weight:500}
.mg-off{padding:3px 9px;border-radius:999px;font-size:11px;font-weight:500}
.mg-cd{padding:3px 8px;border-radius:8px;font-weight:700;font-variant-numeric:tabular-nums}
.mg-plano-it{display:flex;gap:10px;font-size:13.5px;font-weight:300;line-height:1.45}
.mg-plano-it>span{flex:none;width:12px;font-weight:700}
.mg-plano-bt{position:relative;overflow:hidden;height:48px;border:none;border-radius:999px;font-family:'Ubuntu',sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:transform .45s cubic-bezier(.22,1,.36,1),box-shadow .45s}
.mg-plano-bt:hover{transform:translateY(-2px);box-shadow:0 14px 28px -14px rgba(9,9,11,.5)}
.mg-plano-claro .mg-plano-bt{background:#09090B;color:#FFFFFF}
.mg-plano-destaque .mg-plano-bt{background:#CC0601;color:#FFFFFF}
.mg-plano-escuro .mg-plano-bt{background:#F4F3F1;color:#09090B}
.mg-faq-g{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:start}
@media (min-width:760px){.mg-faq-g{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}
.mg-fq{border-bottom:1px solid rgba(9,9,11,.08)}
.mg-fq>button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;border:none;background:none;font-family:'Ubuntu',sans-serif;text-align:left;color:#09090B;cursor:pointer}
.mg-fq-q{font-size:17px;font-weight:500}
.mg-fq.on .mg-fq-q{font-weight:700}
.mg-fq-m{flex:none;width:30px;height:30px;border-radius:50%;background:#F1F0EE;color:#09090B;display:flex;align-items:center;justify-content:center;font-size:16px;transition:transform .5s cubic-bezier(.22,1,.36,1),background .4s,color .4s}
.mg-fq.on .mg-fq-m{transform:rotate(45deg);background:#09090B;color:#FFFFFF}
.mg-fq-r{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s cubic-bezier(.22,1,.36,1)}
.mg-fq.on .mg-fq-r{grid-template-rows:1fr}
.mg-fq-r>div{overflow:hidden;min-height:0}
.mg-fq-r p{margin:0 0 22px;max-width:640px;font-size:15px;font-weight:300;line-height:1.65;color:#55555B}

/* Perfil contra o líder e plano de ação do resultado (20/10/2026) */
.mg-perfil[hidden],.mg-plano-acoes[hidden],[data-mg-relatorio][hidden]{display:none}
.mg-perfil-c{display:flex;flex-direction:column;gap:8px;min-width:0}
.mg-perfil-r{font-size:13.5px;font-weight:300;line-height:1.45;color:#2B2B2F}
.mg-perfil-r b{font-weight:700}
.mg-perfil-t{display:flex;flex-direction:column;gap:6px;min-width:0}
.mg-perfil-h,.mg-perfil-l{display:grid;grid-template-columns:minmax(0,1fr) 44px 80px 62px;gap:6px;align-items:center;font-size:12.5px}
.mg-perfil-t.so .mg-perfil-h,.mg-perfil-t.so .mg-perfil-l{grid-template-columns:minmax(0,1fr) 64px 66px}
.mg-perfil-h{font-size:10.5px;font-weight:500;color:#6E6E74}
.mg-perfil-l{padding-top:6px;border-top:1px solid rgba(9,9,11,.08)}
.mg-perfil-l>span:first-child{font-weight:500;min-width:0;overflow-wrap:break-word}
.mg-perfil-h>span:not(:first-child),.mg-perfil-l>span:not(:first-child):not(.mg-perfil-s){text-align:right}
.mg-perfil-l>span:nth-child(2){font-weight:700}
.mg-perfil-s{display:flex;align-items:center;justify-content:flex-end;gap:6px;font-size:11.5px;font-weight:500;white-space:nowrap}
.mg-perfil-s>span{width:8px;height:8px;border-radius:50%;flex:none}
.mg-perfil-h>span:last-child{text-align:right}
@media (max-width:480px){.mg-perfil-h,.mg-perfil-l{grid-template-columns:minmax(0,1fr) 38px 74px 62px;gap:6px;font-size:12px}.mg-perfil-t.so .mg-perfil-h,.mg-perfil-t.so .mg-perfil-l{grid-template-columns:minmax(0,1fr) 44px 62px}}
.mg-vazio{font-size:13px;font-weight:300;line-height:1.5;color:#55555B}
.mg-pl{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.mg-pl li{display:flex;gap:12px;align-items:flex-start}
.mg-pl-n{flex:none;width:24px;height:24px;border-radius:50%;background:#09090B;color:#FFFFFF;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}
.mg-pl-t{display:flex;flex-direction:column;gap:3px;min-width:0;font-size:13px;font-weight:300;line-height:1.5;color:#2B2B2F}
.mg-pl-t b{font-size:14px;font-weight:700;color:#09090B}
.mg-pl-bt{align-self:flex-start}

.mg-toast{position:fixed;left:50%;top:22px;z-index:1020;display:flex;align-items:center;gap:10px;padding:12px 18px;border-radius:999px;background:#09090B;color:#FFFFFF;font-family:'Ubuntu',sans-serif;font-size:13px;font-weight:500;box-shadow:0 18px 36px -16px rgba(9,9,11,.6);opacity:0;transform:translate(-50%,-16px);pointer-events:none;transition:opacity .4s,transform .6s cubic-bezier(.34,1.5,.5,1);max-width:calc(100vw - 32px)}
.mg-toast.on{opacity:1;transform:translate(-50%,0)}
.mg-toast>span:first-child{width:8px;height:8px;flex:none;border-radius:50%;background:#5BD38A}
.mg-toast.erro>span:first-child{background:#FF4A42}

@media (prefers-reduced-motion:reduce){.mg *,.mg-toast{animation:none!important;transition:none!important}}
@media (prefers-reduced-motion:reduce){.mg-hero:not([data-fase=idle]) .mg-esq{visibility:hidden}}
