:root{
    --tinta:#2E2E31; --tinta2:#5A5A60; --tinta3:#8C8C96;
    --linha:#E4E4E8; --fundo:#FFFFFF; --fundo2:#F6F6F8;
    --zap:#128C4A; --zap-h:#0E7539;
    --acao:#0E7FB0; --acao-h:#0B6A94;
    --realce-bg:#E2F2FA; --realce-tx:#0B5E85;
    --dobra-bg:#0E1319;
    --acento:#5CCBF2;
    --olho:#0B5E85;
    --grad:linear-gradient(90deg,#2FA5D8,#6D62AE 60%,#CE0F81);
    --sec-bg:#0E1319; --sec-tx:#F2F4F7; --sec-tx2:#AEB6C0; --sec-tx3:#7E8894;
    --card-bg:#161C24; --card-borda:#262E39;
  }
  *{box-sizing:border-box}
  html,body{margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:"Inter","Segoe UI",-apple-system,BlinkMacSystemFont,Helvetica,Arial,sans-serif;color:var(--tinta);background:var(--fundo);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.55}
  .wrap{max-width:1120px;margin:0 auto;padding:0 24px}
  a{color:inherit}

  header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid var(--linha)}
  .topo{display:flex;align-items:center;justify-content:space-between;gap:24px;height:76px}
  .topo img{height:46px;width:auto;display:block}
  .topo-dir{display:flex;align-items:center;gap:20px}
  .topo-dir .horario{font-size:13px;color:var(--tinta2);line-height:1.3;text-align:right}
  .topo-dir .horario b{display:block;color:var(--tinta);font-size:14px}

  .btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;cursor:pointer;text-decoration:none;font-family:inherit;font-weight:600;font-size:15.5px;padding:14px 24px;border-radius:10px;background:var(--acao);color:#fff;transition:background .14s, transform .12s}
  .btn:hover{background:var(--acao-h);transform:translateY(-1px)}
  .btn svg{width:17px;height:17px;fill:currentColor}
  .btn-zap{background:var(--zap);color:#fff}
  .btn-zap:hover{background:var(--zap-h)}
  .btn-grande{width:100%;padding:16px;font-size:16.5px}

  .dobra{position:relative;overflow:hidden;background:var(--dobra-bg);color:#fff}
  .dobra::before{content:"";position:absolute;inset:-40% -10% auto -25%;height:130%;
    background:radial-gradient(56% 60% at 18% 26%, rgba(47,165,216,.44), transparent 72%),
               radial-gradient(50% 56% at 60% 86%, rgba(109,98,174,.34), transparent 74%),
               radial-gradient(40% 48% at 90% 30%, rgba(206,15,129,.24), transparent 72%);
    filter:blur(8px)}
  .dobra .wrap{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;padding-top:72px;padding-bottom:72px}
  .selo{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:600;color:#EDEAF4;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);padding:7px 14px;border-radius:999px;margin-bottom:22px}
  .pisca{width:7px;height:7px;border-radius:50%;background:#57D08A;box-shadow:0 0 0 4px rgba(87,208,138,.18)}
  h1{font-size:clamp(33px,3.9vw,50px);line-height:1.08;letter-spacing:-.025em;font-weight:800;margin:0 0 16px;max-width:15ch}
  h1 em{font-style:normal;color:var(--acento)}
  .apoio-h1{font-size:18.5px;line-height:1.55;color:#E6E9EE;margin:0 0 14px;max-width:38ch}
  .apoio-h1 b{color:#fff;font-weight:700}
  .sub{font-size:16px;line-height:1.6;color:#A9B0BA;margin:0 0 28px;max-width:40ch}
  .marcas{display:grid;gap:11px;font-size:14.8px;color:#E3E3EA}
  .marcas div{display:flex;align-items:center;gap:9px}
  .tick{width:18px;height:18px;flex:0 0 18px;border-radius:50%;background:rgba(255,255,255,.1);display:grid;place-items:center}
  .tick svg{width:10px;height:10px;stroke:#7FE0A8;stroke-width:2.4;fill:none}

  .cartao{background:#fff;color:var(--tinta);border-radius:18px;padding:34px 32px 28px;box-shadow:0 30px 70px rgba(10,10,20,.45)}
  .cartao h2{font-size:21px;line-height:1.3;margin:0 0 6px;font-weight:750}
  .cartao .apoio{font-size:14.5px;color:var(--tinta2);margin:0 0 22px}
  label{display:block;font-size:13px;font-weight:650;letter-spacing:.03em;text-transform:uppercase;color:var(--tinta2);margin-bottom:9px}
  .campo{position:relative;display:flex;align-items:center}
  .campo input{width:100%;font-family:inherit;font-size:26px;font-weight:700;padding:16px 74px 16px 18px;border:1.5px solid var(--linha);border-radius:12px;background:var(--fundo2);color:var(--tinta);outline:none}
  .campo input:focus{border-color:var(--acao);background:#fff}
  .campo .unidade{position:absolute;right:18px;font-size:17px;font-weight:600;color:#9A9AA4}
  .cartao .btn{margin-top:16px}
  .rodape-cartao{margin-top:16px;font-size:12.5px;color:var(--tinta3);text-align:center;line-height:1.5}
  .resultado{display:none}
  .resultado.on{display:block}
  .doc{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding-bottom:16px;border-bottom:1px solid var(--linha);margin-bottom:16px}
  .doc strong{font-size:30px;letter-spacing:-.02em;font-weight:800}
  .doc span{font-size:14.5px;color:var(--tinta2)}
  .linhas{display:grid;gap:11px;margin-bottom:20px}
  .linhas div{display:flex;justify-content:space-between;gap:16px;font-size:15px}
  .linhas div span:first-child{color:var(--tinta2)}
  .linhas div span:last-child{font-weight:650;text-align:right}
  .link-ancora{display:block;text-align:center;margin-top:14px;font-size:14.5px;font-weight:600;color:var(--acao);text-decoration:none}
  .voltar{background:none;border:0;margin:12px auto 0;display:block;cursor:pointer;font:inherit;font-size:13.5px;color:var(--tinta3);text-decoration:underline;text-underline-offset:3px}

  .faixa{border-bottom:1px solid var(--linha);background:var(--fundo2)}
  .faixa .wrap{display:grid;grid-template-columns:repeat(4,1fr);padding:0}
  .faixa .item{padding:26px 22px}
  .faixa .item + .item{box-shadow:-1px 0 0 var(--linha)}
  .faixa b{display:block;font-size:17px;margin-bottom:3px}
  .faixa p{margin:0;font-size:13.5px;color:var(--tinta2);line-height:1.5}
  .grifo{background:var(--realce-bg);color:var(--realce-tx);padding:1px 8px;border-radius:5px;font-weight:750;display:inline-block}

  section{padding:88px 0}
  .cabeca{max-width:48ch;margin-bottom:44px}
  .olho{font-size:13px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--olho);margin:0 0 12px}
  h2.tit{font-size:clamp(26px,3.1vw,36px);line-height:1.18;letter-spacing:-.02em;font-weight:800;margin:0 0 14px}
  h3.sub3{font-size:22px;font-weight:750;margin:0 0 16px}
  .cabeca p{margin:0;font-size:17px;color:var(--tinta2);line-height:1.62}

  .dois{display:grid;grid-template-columns:1fr 1fr;gap:22px}
  .doccard{border:1px solid var(--linha);border-radius:16px;padding:32px 30px;background:#fff;position:relative;overflow:hidden}
  .doccard::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad)}
  .doccard h3{margin:0 0 4px;font-size:27px;letter-spacing:-.02em;font-weight:800}
  .criterio{font-size:14.5px;font-weight:650;color:var(--olho);margin:0 0 18px}
  .doccard ul{margin:0;padding:0;list-style:none;display:grid;gap:12px}
  .doccard li{display:flex;gap:11px;font-size:15.2px;line-height:1.55;color:var(--tinta2)}
  .doccard li b{color:var(--tinta);font-weight:650}
  .pt{width:6px;height:6px;border-radius:50%;background:var(--acao);margin-top:9px;flex:0 0 6px}
  .nota{margin-top:30px;border-left:3px solid #2FA5D8;background:var(--fundo2);padding:20px 24px;border-radius:0 12px 12px 0;font-size:16px;line-height:1.6;color:var(--tinta2)}
  .nota b{color:var(--tinta)}

  #avcb{--sec-tx:#2E2E31;--sec-tx2:#5A5A60;--sec-tx3:#8C8C96;--card-bg:#fff;--card-borda:#E4E4E8}
  .caminho{background:var(--sec-bg);color:var(--sec-tx);border-top:1px solid var(--card-borda);border-bottom:1px solid var(--card-borda)}
  .caminho .cabeca p{color:var(--sec-tx2)}
  .tarja{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:16px 22px;border-radius:12px;background:var(--card-bg);border:1px solid var(--card-borda);border-left:4px solid #2FA5D8;margin-bottom:34px;font-size:15px}
  .tarja .zumbi{color:var(--sec-tx2)}

  .preco{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:start}
  .tabela{border:1px solid var(--card-borda);border-radius:16px;background:var(--card-bg);overflow:hidden}
  .tabela .row{display:flex;justify-content:space-between;gap:20px;padding:18px 24px;font-size:16px;border-bottom:1px solid var(--card-borda)}
  .tabela .row span:first-child{color:var(--sec-tx2)}
  .tabela .row span:last-child{font-weight:650;white-space:nowrap}
  .tabela .obs{padding:16px 24px;font-size:13.5px;color:var(--sec-tx3);line-height:1.55;border-bottom:1px solid var(--card-borda)}
  .tabela .row.total{background:var(--acao);color:#fff;border-bottom:0;padding:22px 24px}
  .tabela .row.total span:first-child{color:#CDE9F5;font-weight:600}
  .tabela .row.total span:last-child{font-size:24px;font-weight:800;letter-spacing:-.02em}
  .lado p{font-size:16px;line-height:1.65;color:var(--sec-tx2);margin:0 0 16px}
  .lado p b{color:var(--sec-tx)}

  .linhatempo{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;position:relative;margin-top:8px}
  .linhatempo.cinco{grid-template-columns:repeat(5,1fr)}
  .linhatempo::before{content:"";position:absolute;top:19px;left:8%;right:8%;height:2px;background:var(--grad)}
  .etapa{position:relative}
  .num{width:40px;height:40px;border-radius:50%;background:var(--card-bg);border:2px solid var(--card-borda);display:grid;place-items:center;font-weight:800;font-size:16px;position:relative;z-index:2;margin-bottom:16px;color:var(--sec-tx)}
  .etapa.viva .num{background:var(--acao);border-color:var(--acao);color:#fff}
  .etapa h4{margin:0 0 6px;font-size:16.5px;font-weight:700}
  .etapa p{margin:0;font-size:14.6px;line-height:1.55;color:var(--sec-tx2)}
  .relogio{display:inline-block;margin-top:10px;font-size:12.5px;font-weight:700;color:var(--realce-tx);background:var(--realce-bg);padding:3px 10px;border-radius:999px}

  .exig{background:var(--card-bg);color:#fff;border-radius:18px;padding:42px 44px;position:relative;overflow:hidden;border:1px solid var(--card-borda)}
  .exig::after{content:"";position:absolute;right:-80px;top:-80px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(47,165,216,.30),transparent 66%)}
  .exig h3{margin:0 0 14px;font-size:26px;letter-spacing:-.02em;font-weight:800;position:relative}
  .exig p{margin:0 0 14px;font-size:16.5px;line-height:1.65;color:#CFCFD8;max-width:62ch;position:relative}
  .exig p b{color:#fff}
  .exig .acento{color:var(--acento);font-weight:700}

  /* prova social */
  .depos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
  .depo{border:1px solid var(--linha);border-radius:16px;padding:28px 26px;background:#fff;display:flex;flex-direction:column}
  .estrelas{display:flex;gap:3px;margin-bottom:14px}
  .estrelas svg{width:16px;height:16px;fill:#F0A92B}
  .depo p{margin:0 0 20px;font-size:15.4px;line-height:1.62;color:var(--tinta)}
  .quem{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:16px;border-top:1px solid var(--linha)}
  .ini{width:40px;height:40px;border-radius:50%;background:var(--realce-bg);color:var(--realce-tx);display:grid;place-items:center;font-weight:800;font-size:14px}
  .quem b{display:block;font-size:14.5px}
  .quem span{font-size:13px;color:var(--tinta3)}
  .logos{margin-top:34px;padding:26px 30px;border:1px dashed var(--linha);border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
  .logos span{font-size:14px;color:var(--tinta3)}
  .logos .marca{height:34px;width:120px;border-radius:7px;background:#E6E6EC}

  .form{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
  .formcard{background:#fff;border:1px solid var(--linha);border-radius:18px;padding:32px 30px;box-shadow:0 18px 44px rgba(20,20,25,.07)}
  .formcard .ctx{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--realce-tx);background:var(--realce-bg);padding:6px 12px;border-radius:999px;margin-bottom:18px}
  .grupo{margin-bottom:16px}
  .grupo input,.grupo select{width:100%;font-family:inherit;font-size:16px;padding:14px 16px;border:1.5px solid var(--linha);border-radius:10px;background:var(--fundo2);color:var(--tinta);outline:none}
  .opt{display:flex;gap:10px;align-items:flex-start;margin:-2px 0 16px;font-size:13.8px;font-weight:400;line-height:1.5;letter-spacing:0;text-transform:none;color:var(--tinta2);cursor:pointer}
  .opt input{width:17px;height:17px;flex:0 0 17px;margin-top:2px;accent-color:var(--acao)}
  .legal a{color:var(--acao);text-decoration:underline;text-underline-offset:2px}
  .legal{margin-top:14px;font-size:12.5px;color:var(--tinta3);line-height:1.55;text-align:center}
  .form .lado ul{margin:22px 0 0;padding:0;list-style:none;display:grid;gap:13px}
  .form .lado li{display:flex;gap:11px;font-size:16px;color:var(--tinta2)}
  .form .lado p{color:var(--tinta2)}

  /* rodape */
  footer{background:#0E1319;color:#AEB6C0;padding:56px 0 26px;font-size:14.5px}
  footer img{height:44px;width:auto;margin-bottom:18px}
  .frid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;padding-bottom:34px;border-bottom:1px solid #262E39}
  footer h5{margin:0 0 14px;font-size:13px;letter-spacing:.09em;text-transform:uppercase;color:#fff;font-weight:700}
  footer ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}
  footer a{text-decoration:none}
  footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
  footer .dados{line-height:1.7;font-size:14px}
  footer .dados b{color:#E6E9EE}
  .frod{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding-top:22px;font-size:13px;color:#7E8894}
  .redes{display:flex;gap:10px;margin-top:18px}
  .redes a{width:34px;height:34px;border-radius:8px;background:#161C24;border:1px solid #262E39;display:grid;place-items:center}
  .redes svg{width:16px;height:16px;fill:#AEB6C0}

  /* faq */
  .faq{max-width:820px}
  .faq details{border-bottom:1px solid var(--linha)}
  .faq details[open]{background:#fff}
  .faq summary{list-style:none;cursor:pointer;padding:22px 52px 22px 4px;position:relative;font-size:17.5px;font-weight:650;letter-spacing:-.01em}
  .faq summary::-webkit-details-marker{display:none}
  .faq summary::after{content:"";position:absolute;right:14px;top:50%;width:10px;height:10px;margin-top:-7px;border-right:2.2px solid var(--acao);border-bottom:2.2px solid var(--acao);transform:rotate(45deg);transition:transform .18s ease}
  .faq details[open] summary::after{transform:rotate(-135deg);margin-top:-2px}
  .faq .resp{padding:0 52px 24px 4px;font-size:16px;line-height:1.68;color:var(--tinta2)}
  .faq .resp b{color:var(--tinta)}
  .faq .pend{display:inline-block;font-size:12px;font-weight:700;color:#9A5B00;background:#FCF0DC;padding:1px 8px;border-radius:5px;margin-left:6px;vertical-align:middle}

  @media (max-width:620px){
    .topo{height:64px}
    .topo img{height:34px}
    .topo-dir .horario{display:none}
    .topo .btn{padding:11px 16px;font-size:14px}
    h1{font-size:30px}
    .cartao{padding:26px 22px 22px}
  }

  /* botao flutuante */
  .flut{position:fixed;right:22px;bottom:22px;z-index:50;display:flex;flex-direction:column;align-items:flex-end;gap:10px;opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .22s ease, transform .22s ease}
  .flut.on{opacity:1;transform:none;pointer-events:auto}
  .flut .redondo{width:56px;height:56px;border-radius:50%;background:var(--zap);display:grid;place-items:center;box-shadow:0 10px 26px rgba(18,140,74,.34)}
  .flut .redondo svg{width:27px;height:27px;fill:#fff}
  .flut .pill{box-shadow:0 12px 30px rgba(11,94,133,.34)}
  .flut .pill svg{width:14px;height:14px;fill:none;stroke:#fff;stroke-width:2.4}

  @media (max-width:640px){
    .flut{right:0;left:0;bottom:0;flex-direction:row;gap:10px;padding:10px 14px;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-top:1px solid var(--linha)}
    .flut .redondo{width:52px;height:52px;border-radius:12px;flex:0 0 52px;box-shadow:none}
    .flut .pill{flex:1;box-shadow:none}
    body{padding-bottom:74px}
  }

  @media (max-width:900px){
    .dobra .wrap{grid-template-columns:1fr;gap:38px;padding-top:48px;padding-bottom:48px}
    .faixa .wrap{grid-template-columns:1fr 1fr}
    .faixa .item{box-shadow:none;border-top:1px solid var(--linha)}
    .dois,.preco,.form,.depos{grid-template-columns:1fr;gap:26px}
    .linhatempo,.linhatempo.cinco{grid-template-columns:1fr;gap:22px}
    .linhatempo::before{left:19px;right:auto;top:10px;bottom:10px;width:2px;height:auto}
    .frid{grid-template-columns:1fr 1fr;gap:28px}
    section{padding:60px 0}
    .exig{padding:32px 26px}
  }

  .oculto{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

  .tarja[hidden], .ctx[hidden]{display:none}
  .btn[disabled]{opacity:.7;cursor:wait}
