/* ============================================================
   GestAI Hub · Landing v4 · enxuta e orgânica
   Página independente: não carrega lp-v2/v3. Azuis e marinho
   da marca, formas de contorno irregular no lugar de cards e
   gradientes. Pensada primeiro para o celular (bloco ≤520px).
   ============================================================ */

:root{
  /* mesma família de azuis do produto (gestai.com.br) */
  --papel:#f7fbfe; --papel-2:#eaf5fc; --branco:#ffffff;
  --tinta:#0f2a43; --tinta-2:#4b5d70;
  --azul:#0076ba; --azul-esc:#00659f; --azul-cl:#cdeefb;
  --ciano:#00afec; --ciano-cl:#bfe8fa;
  --nevoa:#e3f3fc; --celeste:#a9dcf5;
  --noite:#0a3350;
  --f-tit:"Manrope", system-ui, sans-serif;
  --f-txt:"Inter", system-ui, sans-serif;
  --pg:min(1120px, calc(100% - 32px));
  --sec:clamp(64px, 10vw, 128px);
  --org:58% 42% 55% 45% / 46% 54% 46% 54%;   /* contorno "à mão" */
}

*,*::before,*::after{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}
html:has(dialog[open]){overflow:hidden}   /* fundo não rola com o modal aberto */
body{background:var(--papel);color:var(--tinta);font:400 17px/1.6 var(--f-txt);
  -webkit-font-smoothing:antialiased;overflow-x:hidden}
/* grão de papel: tira o aspecto "chapado" de tela */
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.35;mix-blend-mode:multiply;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .05 0 0 0 0 .2 0 0 0 0 .35 0 0 0 .12 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
img,svg{display:block;max-width:100%}
button,input,select{font:inherit;color:inherit}
.pg{width:var(--pg);margin-inline:auto}

h1,h2,h3{font-family:var(--f-tit);font-weight:700;letter-spacing:-.03em;line-height:1.08}
h1 em,h2 em{font-style:normal;color:var(--azul)}
h1 em{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 12' preserveAspectRatio='none'%3E%3Cpath d='M2 8c30-6 60-7 98-3s70 3 98-3' fill='none' stroke='%2300afec' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E") left bottom/100% .22em no-repeat;
  padding-bottom:.08em;-webkit-box-decoration-break:clone;box-decoration-break:clone}

/* ───── botões ───── */
.bt{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 26px;
  border:1.5px solid transparent;border-radius:999px;font-weight:600;font-size:16px;text-decoration:none;cursor:pointer;
  transition:transform .25s ease,background .25s ease,border-color .25s ease}
.bt:active{transform:scale(.97)}
.bt:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--ciano);outline-offset:3px}
.bt--ac{background:var(--azul);color:#fff}

.bt--linha{border-color:var(--tinta);background:transparent;color:var(--tinta);min-height:42px;padding:0 20px;font-size:15px}

.bt--claro{background:var(--papel);color:var(--noite)}
.bt--cheio{width:100%}
.bt[disabled]{opacity:.6;cursor:wait;transform:none}

/* ───── topo ───── */
.topo{display:flex;align-items:center;justify-content:space-between;padding-block:22px}
.topo__logo{height:34px;width:auto}

/* ───── hero ───── */
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,5vw,72px);align-items:center;
  padding-block:clamp(32px,6vw,72px) var(--sec)}
.kicker{font-size:14px;letter-spacing:.04em;color:var(--tinta-2);margin-bottom:18px}
.kicker::before{content:"";display:inline-block;width:28px;height:1.5px;background:var(--ciano);vertical-align:middle;margin-right:10px}
.hero h1{font-size:clamp(38px,5.6vw,70px);max-width:14ch}
.hero__lead{margin-top:24px;max-width:44ch;font-size:clamp(17px,1.5vw,19px);color:var(--tinta-2)}
.hero__acoes{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:32px}
.link-wa{color:var(--tinta);font-weight:500;text-underline-offset:4px;text-decoration-color:var(--ciano)}
.micro{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:28px;padding:0;list-style:none;font-size:14px;color:var(--tinta-2)}
.micro li::before{content:"~ ";color:var(--ciano);font-weight:600}

/* ───── arte abstrata ───── */
.arte{position:relative;aspect-ratio:1;width:100%;max-width:520px;justify-self:end}
.bolha{position:absolute;border-radius:var(--org);animation:respira 18s ease-in-out infinite alternate}
.bolha--nevoa{inset:6% 4% 10% 8%;background:var(--nevoa)}
.bolha--azul{width:46%;height:44%;right:0;top:4%;background:var(--azul-cl);animation-duration:22s;animation-delay:-6s}
.bolha--ci{width:17%;height:17%;left:4%;bottom:10%;background:var(--ciano);border-radius:50%;animation:none}
.bolha--celeste{width:32%;height:30%;right:10%;bottom:0;background:var(--celeste);animation-duration:26s;animation-delay:-12s}
@keyframes respira{
  0%{border-radius:58% 42% 55% 45% / 46% 54% 46% 54%;transform:rotate(0)}
  50%{border-radius:42% 58% 38% 62% / 58% 40% 60% 42%}
  100%{border-radius:50% 50% 62% 38% / 40% 60% 44% 56%;transform:rotate(6deg)}
}
.arte__traco{position:absolute;inset:0;color:var(--tinta);opacity:.55}

.nota{position:absolute;max-width:62%;padding:14px 18px;font-size:15px;line-height:1.45;background:var(--branco);
  box-shadow:0 1px 0 rgba(19,37,54,.06),0 14px 30px -18px rgba(19,37,54,.35)}
.nota small{display:block;font-size:12px;color:var(--tinta-2);margin-bottom:4px}
.nota--cli{left:0;top:18%;border-radius:20px 20px 20px 4px;transform:rotate(-2deg)}
.nota--ia{right:0;top:46%;border-radius:20px 20px 4px 20px;background:var(--noite);color:#eef3f6;transform:rotate(1.5deg)}
.nota--ia small{color:#9fb6c6}
.selo{position:absolute;left:18%;bottom:12%;padding:8px 16px;border-radius:999px;background:var(--branco);
  font-size:14px;font-weight:500;color:var(--azul-esc);transform:rotate(-3deg);
  box-shadow:0 10px 24px -16px rgba(19,37,54,.4)}

/* ───── cabeçalhos de seção ───── */
.cab{max-width:640px;margin-bottom:clamp(36px,5vw,64px)}
.cab h2{font-size:clamp(32px,4.2vw,52px)}
.cab p{margin-top:14px;color:var(--tinta-2)}

/* ───── ilustrações (unDraw, recoloridas na paleta) ─────
   Só no desktop: ocupam os vazios ao lado dos títulos. No celular somem
   para a página não voltar a ficar longa. Bolha orgânica atrás de cada uma. */
.ilus{position:relative;display:block;isolation:isolate;--fundo:var(--nevoa)}
.ilus::before{content:"";position:absolute;inset:12% 2% 2% 6%;z-index:-1;background:var(--fundo);border-radius:var(--org)}
.ilus img{width:100%;height:auto;max-height:290px;object-fit:contain}
.vaz .ilus,.mod .ilus{--fundo:var(--branco)}
.cab--arte{max-width:none;display:grid;grid-template-columns:minmax(0,640px) minmax(0,1fr);
  column-gap:clamp(32px,6vw,96px);align-items:center}
.cab--arte>:not(.ilus){grid-column:1}
.cab--arte h2{align-self:end}          /* título e subtítulo juntos, centrados na altura da ilustração */
.cab--arte p{align-self:start}
.cab--arte .ilus{grid-column:2;grid-row:1/span 2;justify-self:center;width:min(100%,340px)}

/* ───── vazamentos ───── */
.vaz{padding-block:var(--sec);background:var(--papel-2);
  border-radius:clamp(40px,8vw,120px) clamp(40px,8vw,120px) 0 0 / 60px 60px 0 0}
.vaz__item{display:grid;grid-template-columns:auto 1fr 1fr;gap:clamp(16px,3vw,48px);align-items:start;
  padding-block:clamp(28px,4vw,44px);border-top:1px solid rgba(19,37,54,.14)}
.vaz__item:nth-of-type(2){margin-left:clamp(0px,4vw,56px)}
.vaz__item:nth-of-type(3){margin-left:clamp(0px,8vw,112px)}
.vaz__n{font:300 clamp(44px,5vw,68px)/1 var(--f-tit);color:var(--ciano);min-width:2ch}
.vaz__rot{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--tinta-2);margin-bottom:6px}
.vaz__dor h3{font-size:clamp(24px,2.6vw,32px);margin-bottom:10px}
.vaz__dor p:last-child{color:var(--tinta-2)}
.vaz__cura{padding:22px 26px;background:var(--papel);border-radius:var(--org);font-size:16px}
.vaz__cura b{display:block;font-family:var(--f-tit);font-weight:700;font-size:16px;color:var(--azul);margin-bottom:4px}

/* ───── conversa por setor ───── */
.conv{padding-block:var(--sec)}
.conv__grade{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(24px,5vw,72px);align-items:start}
.conv__lado{display:grid;gap:clamp(32px,5vw,64px)}
.conv__lado .ilus{width:min(100%,320px);justify-self:center}
.conv__setores{display:flex;flex-wrap:wrap;gap:10px;align-content:start}
.conv__setores button{padding:11px 18px;border:1.5px solid rgba(15,42,67,.18);border-radius:999px;background:transparent;
  font-size:15px;cursor:pointer;transition:.2s}

.conv__setores button[aria-selected=true]{background:var(--noite);border-color:var(--noite);color:#fff}
.conv__tela{position:relative;margin:0;padding:clamp(16px,3vw,36px)}
.conv__fundo{inset:0;background:var(--nevoa);animation-duration:30s}
.conv__cartao{position:relative;background:var(--branco);border-radius:28px 28px 28px 8px;padding:20px;
  box-shadow:0 24px 48px -32px rgba(15,42,67,.45)}
.conv__cab{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid rgba(15,42,67,.08)}
.conv__cab b{display:block;font-size:15px}
.conv__cab small{font-size:13px;color:var(--tinta-2)}
.conv__av{width:40px;height:40px;display:grid;place-items:center;border-radius:var(--org);background:var(--azul-cl);
  font-weight:600;font-size:14px;color:var(--noite)}
.conv__chat{list-style:none;padding:16px 0 4px;display:grid;gap:10px;min-height:340px;align-content:start}
.conv__chat li{max-width:84%;padding:10px 14px;font-size:15px;line-height:1.45;animation:surge .4s ease-out}
.conv__chat .cli{justify-self:start;background:var(--papel-2);border-radius:18px 18px 18px 4px}
.conv__chat .ag{justify-self:end;background:var(--azul);color:#fff;border-radius:18px 18px 4px 18px}
.conv__chat .dig{justify-self:end;background:var(--azul-cl);border-radius:18px;letter-spacing:.2em;color:var(--azul)}
.conv__acao{margin-top:8px;padding:10px 14px;border-radius:14px;background:var(--nevoa);font-size:14px;font-weight:500;color:var(--azul-esc)}
.conv__acao:empty{visibility:hidden}

/* ───── módulos ───── */
.mod{padding-block:var(--sec);background:var(--papel-2);border-radius:clamp(40px,8vw,120px) / 60px}
.mod__lista{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,3vw,36px)}
.mod__lista li:nth-child(even){margin-top:clamp(0px,3vw,40px)}   /* ritmo irregular, sem grade dura */
.mod__lista svg{width:72px;height:72px;margin-bottom:18px;padding:12px;background:var(--branco);border-radius:var(--org)}
.mod__lista h3{font-size:22px;margin-bottom:6px}
.mod__lista p{color:var(--tinta-2);font-size:16px}
.mod__mais{margin-top:clamp(32px,4vw,48px);font-size:15px;color:var(--tinta-2)}
.mod__mais b{color:var(--tinta)}

/* ───── calculadora ───── */
.calc{padding-block:var(--sec)}
.calc__grade{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,64px);align-items:center}
.calc__controles{display:grid;gap:30px}
.calc__controles label{display:grid;grid-template-columns:1fr auto;gap:8px 12px;font-weight:500;font-size:15px}
.calc__controles output{font:700 20px/1 var(--f-tit);color:var(--azul)}
.calc__vivo{display:none}
/* controle deslizante próprio: 44px de área de toque, polegar de 28px */
.calc__controles input{grid-column:1/-1;width:100%;height:44px;margin:-6px 0;cursor:pointer;
  -webkit-appearance:none;appearance:none;background:transparent}
.calc__controles input::-webkit-slider-runnable-track{height:6px;border-radius:6px;
  background:linear-gradient(90deg,var(--azul) var(--pct,50%),var(--azul-cl) 0)}
.calc__controles input::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;margin-top:-11px;border-radius:50%;
  background:#fff;border:3px solid var(--azul);box-shadow:0 2px 8px rgba(15,42,67,.25)}
.calc__controles input::-moz-range-track{height:6px;border-radius:6px;background:var(--azul-cl)}
.calc__controles input::-moz-range-progress{height:6px;border-radius:6px;background:var(--azul)}
.calc__controles input::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#fff;border:3px solid var(--azul)}
.calc__controles small{grid-column:1/-1;font-weight:400;font-size:13px;color:var(--tinta-2)}
.calc__res{position:relative;padding:clamp(32px,4vw,48px);background:var(--noite);color:#eef3f6;
  border-radius:48px 48px 48px 12px / 40px 40px 40px 12px;overflow:hidden}
.calc__res::before{content:"";position:absolute;width:260px;height:260px;right:-80px;top:-90px;
  background:rgba(0,175,236,.22);border-radius:var(--org);animation:respira 20s ease-in-out infinite alternate}
.calc__res>*{position:relative}
.calc__rot{font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#9fc4dc}
.calc__big{font:700 clamp(56px,7vw,84px)/1 var(--f-tit);letter-spacing:-.03em;margin:10px 0 22px}
.calc__big small{display:block;font-size:16px;font-weight:600;letter-spacing:0;color:#9fc4dc;margin-top:6px}
.calc__res dl{display:grid;gap:10px;padding-block:18px;margin-bottom:24px;border-block:1px solid rgba(255,255,255,.12)}
.calc__res dl div{display:flex;justify-content:space-between;gap:16px;font-size:15px}
.calc__res dt{color:#c9dbe8}
.calc__res dd{margin:0;font-weight:600;white-space:nowrap}
.calc__nota{margin-top:16px;font-size:12px;color:#8fb0c6}

/* ───── dúvidas ───── */
.duvidas{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,96px);
  align-items:center;padding-bottom:var(--sec)}
.duvidas .ilus{width:min(100%,380px);justify-self:center}
.duvidas__lista{max-width:680px}
.duvidas h2{font-size:clamp(28px,3.4vw,40px);margin-bottom:20px}
.duvidas details{border-top:1px solid rgba(19,37,54,.14)}
.duvidas details:last-of-type{border-bottom:1px solid rgba(19,37,54,.14)}
.duvidas summary{display:flex;justify-content:space-between;gap:16px;padding:20px 0;cursor:pointer;
  font:600 19px/1.35 var(--f-tit);list-style:none}
.duvidas summary::-webkit-details-marker{display:none}
.duvidas summary::after{content:"+";color:var(--ciano);font-size:26px;line-height:.8;transition:transform .3s}
.duvidas details[open] summary::after{transform:rotate(45deg)}
.duvidas details p{padding-bottom:22px;color:var(--tinta-2);max-width:60ch}

/* ───── fecho ───── */
.fecho{position:relative;background:var(--noite);color:#eef3f6;padding-block:clamp(56px,9vw,120px);overflow:hidden}
.fecho__onda{position:absolute;top:-1px;left:0;width:100%;height:clamp(40px,6vw,90px);color:var(--papel);transform:scaleY(-1)}
.fecho__in{position:relative;text-align:center;display:grid;justify-items:center;gap:28px}
.fecho h2{font-size:clamp(32px,4.6vw,58px);max-width:20ch;position:relative}
.fecho h2 em{color:var(--ciano-cl)}
.fecho__nota{font-size:14px;color:#9fb6c6;margin-top:-14px}
.bolha--fecho{width:clamp(260px,40vw,520px);aspect-ratio:1;left:50%;top:50%;translate:-50% -50%;
  background:radial-gradient(circle at 40% 40%,rgba(0,118,186,.45),rgba(0,118,186,0) 70%);animation-duration:24s}

.rodape{background:var(--noite);color:#9fb6c6;font-size:14px;border-top:1px solid rgba(255,255,255,.08)}
.rodape__in{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding-block:22px}
.rodape a{color:inherit;display:inline-block;padding-block:10px}

/* ───── modal de captação ───── */
.lead{margin:auto;width:min(480px,calc(100% - 24px));max-height:calc(100dvh - 24px);padding:clamp(28px,5vw,40px);border:0;
  border-radius:32px 32px 32px 8px;background:var(--papel);color:var(--tinta);overflow:auto}
.lead::backdrop{background:rgba(15,34,51,.55);backdrop-filter:blur(3px)}
.lead[open]{animation:surge .35s ease-out}
@keyframes surge{from{opacity:0;transform:translateY(16px)}}
.lead__x{position:absolute;top:14px;right:16px;width:40px;height:40px;border:0;border-radius:50%;background:transparent;
  font-size:28px;line-height:1;cursor:pointer}
@media (hover:hover){
  .bt:hover{transform:translateY(-2px)}
  .bt--ac:hover{background:var(--azul-esc)}
  .bt--linha:hover{background:var(--tinta);color:var(--papel)}
  .conv__setores button:hover{border-color:var(--azul)}
  .lead__x:hover{background:var(--papel-2)}
}
.lead h2{font-size:30px;padding-right:32px}
.lead__sub{margin:8px 0 22px;color:var(--tinta-2);font-size:15px}
.lead form>label{display:block;margin-bottom:14px;font-size:14px;font-weight:500}
.lead input:not([type=checkbox]),.lead select{display:block;width:100%;margin-top:6px;min-height:48px;padding:0 16px;
  background:var(--branco);border:1.5px solid rgba(19,37,54,.18);border-radius:14px;font-size:16px}
.lead input:focus,.lead select:focus{border-color:var(--azul);outline:none;box-shadow:0 0 0 3px var(--azul-cl)}
.lead input[aria-invalid=true],.lead select[aria-invalid=true]{border-color:#c2410c}
.lead fieldset{border:0;padding:0;margin:4px 0 20px;display:flex;flex-wrap:wrap;gap:8px}
.lead legend{font-size:14px;font-weight:500;margin-bottom:8px}
.chip{cursor:pointer}
.chip input{position:absolute;opacity:0;pointer-events:none}
.chip span{display:inline-block;padding:9px 16px;border:1.5px solid rgba(19,37,54,.2);border-radius:999px;font-size:14px;transition:.2s}
.chip input:checked+span{background:var(--tinta);border-color:var(--tinta);color:var(--papel)}
.chip input:focus-visible+span{outline:2px solid var(--ciano);outline-offset:2px}
.pote{position:absolute;left:-9999px;width:1px;height:1px}
.lead__erro{margin-bottom:12px;padding:10px 14px;border-radius:12px;background:var(--ciano-cl);font-size:14px}
.lead__priv{margin-top:12px;text-align:center;font-size:13px;color:var(--tinta-2)}
.lead__ok{position:relative;text-align:center;padding-block:24px;display:grid;justify-items:center;gap:14px}
.lead__ok p{color:var(--tinta-2);max-width:34ch}
.bolha--ok{position:relative;width:72px;height:72px;background:var(--celeste);display:grid;place-items:center;font-size:30px;font-weight:700;color:var(--noite)}

/* ───── entrada suave ao rolar ───── */
.js .rv{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}
.js .rv.on{opacity:1;transform:none}

.conv__mais{display:none}   /* "Mais +" só existe no celular (bloco ≤520px) */

/* ───── barra fixa no celular ───── */
.barra-m{display:none}   /* só existe no celular; aparece quando nenhum outro botão está à vista */

/* ───── barra de rolagem: escondida, aparece com o cursor na borda direita (só mouse) ───── */
@media (hover:hover) and (pointer:fine){
  html{scrollbar-width:none}
  html::-webkit-scrollbar{display:none}
  .sb{position:fixed;top:0;right:0;width:18px;height:100%;z-index:200;opacity:0;transition:opacity .25s}
  .sb.on{opacity:1}
  .sb[hidden]{display:none}
  .sb i{position:absolute;right:4px;width:8px;border-radius:8px;background:rgba(15,42,67,.4);
    transition:width .15s,right .15s,background .15s}
  .sb:hover i,.sb.drag i{width:11px;right:3px;background:rgba(15,42,67,.65)}
}

/* ───── responsivo ───── */
@media (max-width:860px){
  .hero{grid-template-columns:1fr}
  .arte{justify-self:center;max-width:420px}
  .vaz__item{grid-template-columns:auto 1fr;margin-left:0 !important}
  .vaz__cura{grid-column:2}
  .conv__grade,.calc__grade{grid-template-columns:1fr}
  .mod__lista{grid-template-columns:1fr 1fr}
  .ilus{display:none}
  .cab--arte{display:block}
  .duvidas{display:block;max-width:760px}
}
@media (max-width:520px){
  :root{--sec:56px}
  body{font-size:16px}
  /* grão sem mix-blend e bolhas paradas: rolagem mais leve e menos bateria */
  body::before{mix-blend-mode:normal;opacity:.2}
  .bolha,.calc__res::before{animation:none}

  .topo{padding-block:14px}
  .topo__logo{height:30px}
  .topo .bt{display:none}

  /* hero: a promessa e o botão cabem na primeira tela */
  .hero{padding-block:12px 40px;gap:8px}
  .kicker{font-size:13px;margin-bottom:12px}
  .hero__lead{margin-top:16px;font-size:15px}
  .hero__acoes{margin-top:24px;gap:4px}
  .hero__acoes .bt{width:100%;min-height:54px;font-size:17px}
  .link-wa{width:100%;text-align:center;padding-block:12px}
  .micro{margin-top:10px;gap:4px 12px;font-size:13px;justify-content:center}
  .arte{max-width:360px;aspect-ratio:1/.82;margin-top:8px}
  .nota{font-size:14px;max-width:74%;padding:12px 14px}

  .cab{margin-bottom:28px}
  .cab h2{font-size:30px}

  /* vazamentos: número no canto, sem ocupar linha própria */
  .vaz{border-radius:36px 36px 0 0}
  .vaz__item{grid-template-columns:1fr;gap:14px;padding-block:24px}
  .vaz__n{font-size:40px;opacity:.9}
  .vaz__dor h3{font-size:22px}
  .vaz__cura{grid-column:auto;padding:16px 18px;border-radius:24px 24px 24px 6px;font-size:15px}

  /* conversa: pílulas roláveis de lado, com borda que some indicando "tem mais" */
  .conv__setores{flex-wrap:nowrap;overflow-x:auto;margin-inline:-16px;padding:2px 16px 8px;scrollbar-width:none;
    scroll-snap-type:x proximity;scroll-padding-inline:16px;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}
  .conv__setores::-webkit-scrollbar{display:none}
  .conv__setores button{flex:none;min-height:44px;scroll-snap-align:start;white-space:nowrap}
  .conv__setores:not(.is-open){-webkit-mask-image:none;mask-image:none}
  /* a partir da 3ª aba: recolhidas (largura 0, o margin -10px cancela o gap) até tocar em "Mais +" */
  .conv__setores button:nth-child(n+3){max-width:160px;overflow:hidden;
    transition:max-width .45s cubic-bezier(.4,0,.2,1),padding .45s cubic-bezier(.4,0,.2,1),margin .45s cubic-bezier(.4,0,.2,1),
      opacity .3s ease .1s,background .2s,color .2s,border-color .2s}
  .conv__setores:not(.is-open) button:nth-child(n+3){max-width:0;padding-inline:0;margin-left:-10px;border-width:0;
    opacity:0;pointer-events:none;visibility:hidden;
    transition:max-width .45s cubic-bezier(.4,0,.2,1),padding .45s cubic-bezier(.4,0,.2,1),margin .45s cubic-bezier(.4,0,.2,1),opacity .2s ease,visibility 0s .45s}
  .conv__mais{display:inline-flex;align-items:center;flex:none;min-height:44px;max-width:120px;overflow:hidden;padding:0 18px;
    border:1.5px dashed rgba(15,42,67,.3);border-radius:999px;font-size:15px;white-space:nowrap;cursor:pointer;user-select:none;
    transition:max-width .4s cubic-bezier(.4,0,.2,1),padding .4s cubic-bezier(.4,0,.2,1),margin .4s cubic-bezier(.4,0,.2,1),opacity .2s ease,visibility 0s .4s}
  .conv__setores.is-open .conv__mais{max-width:0;padding-inline:0;margin-left:-10px;border-width:0;opacity:0;pointer-events:none;visibility:hidden}

  /* 4) bolinha dos controles da calculadora pulsa de leve, chamando o toque */
  .calc__controles input::-webkit-slider-thumb{animation:pulso 2s ease-out infinite}
  .calc__controles input::-moz-range-thumb{animation:pulso 2s ease-out infinite}
  .calc__controles input:active::-webkit-slider-thumb{animation-play-state:paused}
  .calc__controles input:active::-moz-range-thumb{animation-play-state:paused}
  .conv__grade{gap:14px}
  .conv__tela{padding:0}
  .conv__fundo{display:none}
  .conv__cartao{padding:16px}
  .conv__chat{min-height:300px}

  /* módulos: ícone à esquerda, texto à direita — metade da altura */
  .mod{border-radius:36px}
  .mod__lista{grid-template-columns:1fr;gap:22px}
  .mod__lista li{display:grid;grid-template-columns:56px 1fr;gap:2px 16px;align-items:start}
  .mod__lista li:nth-child(even){margin-top:0}
  .mod__lista svg{width:56px;height:56px;padding:9px;margin:0;grid-row:span 2}
  .mod__lista h3{font-size:19px;margin:4px 0 0}
  .mod__lista p{font-size:15px}
  .mod__mais{margin-top:24px}

  /* calculadora: resultado ao vivo grudado no topo enquanto mexe */
  .calc__controles{gap:22px}
  .calc__vivo{display:flex;align-items:baseline;gap:8px;position:sticky;top:10px;z-index:2;justify-self:start;
    padding:10px 18px;border-radius:999px;background:var(--noite);color:#c9dbe8;font-size:14px;
    box-shadow:0 10px 24px -12px rgba(10,51,80,.6)}
  .calc__vivo b{font:700 20px/1 var(--f-tit);color:#fff}
  .calc__res{padding:28px 22px;border-radius:32px 32px 32px 10px}
  .calc__big{font-size:56px;margin-bottom:18px}
  .calc__res dl div{font-size:14px}
  .calc__res .bt{width:100%}

  .duvidas summary{font-size:17px;padding:18px 0}

  .fecho{padding-block:64px 56px}
  .fecho h2{font-size:30px}
  .fecho .bt{width:100%;max-width:340px;min-height:54px}

  .rodape{padding-bottom:84px}

  .barra-m{display:grid;grid-template-columns:auto 1fr;gap:8px;position:fixed;inset:auto 0 0;z-index:50;
    padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(247,251,254,.94);
    -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid rgba(15,42,67,.1);
    transform:translateY(110%);transition:transform .3s ease}
  .barra-m.on{transform:none}
  .barra-m .bt{min-height:48px}

  /* modal vira folha que sobe de baixo, perto do polegar */
  .lead{margin:auto 0 0;width:100%;max-width:100%;max-height:92dvh;
    padding:30px 20px calc(20px + env(safe-area-inset-bottom));border-radius:28px 28px 0 0}
  .lead::before{content:"";position:absolute;top:10px;left:50%;width:40px;height:4px;margin-left:-20px;
    border-radius:4px;background:rgba(15,42,67,.2)}
  .lead[open]{animation:sobe .35s cubic-bezier(.22,.61,.36,1)}
  .lead h2{font-size:26px}
  .lead__sub{margin-bottom:18px}
  .lead form>label{margin-bottom:12px}
  .chip span{padding:11px 16px}
}
@keyframes sobe{from{transform:translateY(100%)}}
@keyframes pulso{
  0%{box-shadow:0 2px 8px rgba(15,42,67,.25),0 0 0 0 rgba(0,175,236,.45)}
  70%{box-shadow:0 2px 8px rgba(15,42,67,.25),0 0 0 10px rgba(0,175,236,0)}
  100%{box-shadow:0 2px 8px rgba(15,42,67,.25),0 0 0 0 rgba(0,175,236,0)}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important}
  .calc__controles input::-webkit-slider-thumb,.calc__controles input::-moz-range-thumb{animation:none}
  html{scroll-behavior:auto}
  .js .rv{opacity:1;transform:none}
}
