
  :root{
    --azul:#16365B; --tinta:#0F2340; --noite:#0A1A30;
    --creme:#F2E8D7; --fundo:#FBF7EF; --linha:#E8DDC9;
    --texto2:#3E4A60; --texto3:#5A6478; --claro:#E6DCC9;
    --destaque:#D4FF3A;  
    --display:'Bricolage Grotesque', system-ui, sans-serif;
    --corpo:'DM Sans', system-ui, sans-serif;
  }
  *{box-sizing:border-box}
  [hidden]{display:none!important}
  html{scroll-behavior:smooth}
  body{margin:0;background:var(--fundo);color:var(--tinta);font-family:var(--corpo);-webkit-font-smoothing:antialiased;overflow-x:clip}
  a{color:var(--azul)} a:hover{color:var(--tinta)}
  img{max-width:100%}
  .wrap{max-width:1280px;margin:0 auto;padding-left:24px;padding-right:24px}
  .display{font-family:var(--display);font-weight:800;letter-spacing:-.016em;margin:0}
  .eyebrow{font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--texto2)}
  .h2{font-size:clamp(2.5rem,5vw,4.25rem);line-height:.98}
  .lead{margin:0;font-size:19px;line-height:1.55;color:var(--texto2)}
  svg{flex:none}
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;border-radius:999px;font-weight:700;font-family:inherit;cursor:pointer;min-height:48px;padding:0 24px;font-size:16px;border:1.5px solid transparent;transition:transform .15s ease}
  .btn:hover{transform:translateY(-1px)}
  .btn-lg{min-height:58px;padding:0 28px;font-size:17px}
  .btn-destaque{background:var(--destaque);color:var(--tinta)} .btn-destaque:hover{color:var(--tinta)}
  .btn-escuro{background:var(--tinta);color:#fff} .btn-escuro:hover{color:#fff}
  .btn-contorno{border-color:var(--tinta);color:var(--tinta);background:transparent}
  .btn-contorno-claro{border-color:rgba(255,255,255,.7);color:#fff;background:transparent} .btn-contorno-claro:hover{color:#fff}
  header.topo{position:sticky;top:0;z-index:20;background:rgba(251,247,239,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--linha)}
  header.topo nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;padding-bottom:14px}
  .logo-link{display:flex;align-items:center;min-height:44px}
  .logo-link img{height:36px;width:auto;display:block}
  .menu{display:flex;flex-wrap:wrap;gap:26px;font-size:15px;font-weight:500}
  .menu a{text-decoration:none}
  .nav-acoes{display:flex;flex-wrap:wrap;gap:10px}
  .nav-acoes .btn{min-height:44px;font-size:14px;padding:0 18px}
  .hero{display:flex;flex-wrap:wrap;gap:56px;align-items:center;padding-top:64px;padding-bottom:64px}
  .hero-texto{flex:1 1 540px;min-width:0;display:flex;flex-direction:column;gap:26px}
  .selo{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid var(--linha);font-size:13px;font-weight:500;color:var(--texto2)}
  .selo i{width:8px;height:8px;border-radius:50%;background:var(--azul);display:inline-block}
  .hero h1{font-size:clamp(2.75rem,6vw,5.4rem);line-height:.92;letter-spacing:-.018em}
  .rotator{display:inline-grid;transition:width .5s cubic-bezier(.2,.8,.2,1);vertical-align:bottom;background:var(--destaque);padding:0 .14em;border-radius:.18em;overflow:hidden;height:1.02em;line-height:1.02}
  .rotator span{grid-area:1/1;justify-self:start;transform:translateY(110%);opacity:0;transition:transform .55s cubic-bezier(.2,.8,.2,1),opacity .4s;white-space:nowrap}
  .rotator span.on{transform:none;opacity:1}
  .rotator span.out{transform:translateY(-110%);opacity:0}
  .portas{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
  .porta{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:var(--tinta);background:#fff;border:1.5px solid var(--linha);border-radius:20px;padding:16px 18px;min-height:96px;transition:border-color .2s, transform .2s}
  .porta:hover{border-color:var(--tinta);transform:translateY(-2px);color:var(--tinta)}
  .porta b{font-size:17px;display:flex;justify-content:space-between;gap:8px;align-items:center}
  .porta span{font-size:14px;color:var(--texto3);line-height:1.4}
  .porta.forte{background:var(--tinta);border-color:var(--tinta);color:#fff}
  .porta.forte span{color:var(--claro)}
  .hero-acoes{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
  .hero-visual{flex:1 1 440px;min-width:0;position:relative;padding-bottom:40px}
  .cena,.cena-rco{display:block;width:100%;height:auto}
  .cena{border-radius:32px;box-shadow:0 30px 60px -20px rgba(15,35,64,.45)}
  .flutuante{position:absolute;background:#fff;border-radius:20px;padding:14px 18px;display:flex;align-items:center;gap:12px;box-shadow:0 16px 40px -12px rgba(15,35,64,.35);max-width:280px;font-size:14px;line-height:1.35;color:var(--texto2)}
  .flutuante strong{color:var(--tinta)}
  .f1{left:-18px;top:36px;animation:boia 5s ease-in-out infinite}
  .f2{right:-10px;bottom:6px;animation:boia 5s ease-in-out 2.5s infinite}
  .icone-caixa{display:inline-flex;width:40px;height:40px;border-radius:12px;background:var(--creme);align-items:center;justify-content:center;flex:none}
  .ponto-vivo{width:10px;height:10px;border-radius:50%;background:#2BB673;box-shadow:0 0 0 0 rgba(43,182,115,.6);animation:pulso 2s infinite;flex:none}
  .video-cena{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}
  .jan{animation:pisca 6s ease-in-out infinite}
  .nuvem{animation:nuvem 28s linear infinite} .n2{animation-duration:38s;animation-delay:-12s}
  .sol{animation:sol 6s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
  .faixa-rua{animation:faixa 1.6s linear infinite}
  .onibus-hero{animation:passa 11s linear infinite}
  .carro{animation:volta 8s linear -3s infinite}
  .roda{transform-box:fill-box;transform-origin:center}
  .gira{animation:gira .7s linear infinite}
  .onibus-hero .roda{animation:gira .9s linear infinite}
  .camada.lenta{animation:parallax 60s linear infinite}
  .camada.media{animation:parallax 26s linear infinite}
  .faixa-estrada{animation:faixa2 .9s linear infinite}
  .onibus-rco{animation:balanca 1.1s ease-in-out infinite}
  .vento line{animation:vento 1.2s linear infinite} .vento .v2{animation-delay:.4s} .vento .v3{animation-delay:.8s}
  @keyframes pisca{0%,100%{opacity:.25}40%,70%{opacity:1}}
  @keyframes nuvem{from{transform:translateX(-200px)}to{transform:translateX(620px)}}
  @keyframes sol{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
  @keyframes faixa{to{stroke-dashoffset:-48}}
  @keyframes faixa2{to{stroke-dashoffset:-104}}
  @keyframes passa{from{transform:translateX(-230px)}to{transform:translateX(600px)}}
  @keyframes volta{from{transform:translateX(620px) scaleX(-1)}to{transform:translateX(-100px) scaleX(-1)}}
  @keyframes gira{to{transform:rotate(360deg)}}
  @keyframes parallax{to{transform:translateX(-1200px)}}
  @keyframes balanca{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
  @keyframes vento{from{transform:translateX(40px);opacity:0}30%{opacity:1}to{transform:translateX(-80px);opacity:0}}
  @keyframes boia{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
  @keyframes pulso{70%{box-shadow:0 0 0 10px rgba(43,182,115,0)}100%{box-shadow:0 0 0 0 rgba(43,182,115,0)}}
  @keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
  .letreiro{border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);background:#fff;overflow:hidden;padding:26px 0 28px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
  .letreiro-trilho{display:flex;align-items:center;gap:64px;width:max-content;animation:letreiro 32s linear infinite}
  .letreiro:hover .letreiro-trilho{animation-play-state:paused}
  .letreiro-rotulo{text-align:center;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--texto3);margin:0 0 18px}
  .seg-logo{display:flex;align-items:center;justify-content:center;height:56px;min-width:140px;flex:none}
  .seg-logo img{max-height:44px;max-width:170px;width:auto;height:auto;filter:grayscale(1);opacity:.7;transition:filter .3s, opacity .3s}
  .seg-logo:hover img{filter:none;opacity:1}
  .seg-logo .nome{font-family:var(--display);font-weight:700;font-size:26px;letter-spacing:-.008em;color:#7B8599;white-space:nowrap}
  @keyframes letreiro{to{transform:translateX(-50%)}}
  .numeros{padding-top:96px}
  .numeros-topo{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:28px}
  .bento{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(220px,auto);gap:16px}
  .num-card{border-radius:32px;padding:32px;display:flex;flex-direction:column;justify-content:space-between;gap:24px;position:relative;overflow:hidden}
  .num-card b{font-family:var(--display);font-weight:800;letter-spacing:-.008em;line-height:.9;font-size:clamp(3.5rem,5.4vw,5.25rem);display:block;margin-bottom:14px;white-space:nowrap;font-variant-numeric:tabular-nums}
  .num-card .rot{font-size:18px;line-height:1.35;font-weight:500;max-width:18rem}
  .num-card .ic{display:inline-flex;width:52px;height:52px;border-radius:16px;align-items:center;justify-content:center}
  .nc-grande{grid-column:span 2;grid-row:span 2;background:var(--destaque);color:var(--tinta)}
  .nc-grande b{font-size:clamp(5.5rem,12vw,11rem);letter-spacing:-.006em}
  .nc-grande .rot{font-size:22px;max-width:22rem}
  .nc-azul{background:var(--azul);color:#fff} .nc-azul b{color:var(--destaque)} .nc-azul .rot{color:var(--claro)} .nc-azul .ic{background:rgba(255,255,255,.1)}
  .nc-creme{background:var(--creme);color:var(--tinta)} .nc-creme .ic{background:#fff}
  .nc-tinta{grid-column:span 2;background:var(--tinta);color:#fff;flex-direction:row;align-items:flex-end;flex-wrap:wrap} .nc-tinta b{color:var(--destaque)} .nc-tinta .rot{color:var(--claro)}
  .casinhas{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px;max-width:420px}
  .casinhas svg{width:100%;height:auto;animation:acende 5s ease-in-out infinite}
  @keyframes acende{0%,100%{opacity:.25}30%,70%{opacity:1}}
  @media (max-width:900px){ .bento{grid-template-columns:repeat(2,minmax(0,1fr))} .nc-grande{grid-row:auto} }
  @media (max-width:560px){ .bento{grid-template-columns:1fr} .nc-grande,.nc-tinta{grid-column:auto} }
  .segmento{padding-top:112px;padding-bottom:40px}
  .seg-topo{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:40px}
  .seg-topo .lead{max-width:30rem}
  .tag-seg{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;background:var(--tinta);color:#fff;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:18px}
  .tag-seg i{width:8px;height:8px;border-radius:50%;background:var(--destaque)}
  .grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
  .card{color:var(--tinta);background:#fff;border:1px solid var(--linha);border-radius:28px;padding:28px;display:flex;flex-direction:column;gap:40px;text-decoration:none;transition:transform .2s ease, box-shadow .2s ease}
  a.card:hover{transform:translateY(-4px);box-shadow:0 20px 40px -24px rgba(15,35,64,.35);color:var(--tinta)}
  .card .icone{display:inline-flex;width:52px;height:52px;border-radius:16px;background:var(--creme);align-items:center;justify-content:center}
  .card h3{font-family:var(--display);font-weight:700;font-size:26px;letter-spacing:-.008em;margin:0 0 8px}
  .card p{margin:0;font-size:16px;line-height:1.5;color:var(--texto2)}
  .parceiro{margin-top:16px;display:flex;flex-wrap:wrap;gap:40px;align-items:center;background:var(--azul);color:#fff;border-radius:36px;padding:clamp(28px,4vw,56px)}
  .parceiro-texto{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:20px}
  .parceiro-texto h3{font-family:var(--display);font-weight:800;font-size:clamp(2rem,3.6vw,3rem);letter-spacing:-.014em;line-height:1;margin:0}
  .parceiro-texto p{margin:0;color:var(--claro);font-size:17px;line-height:1.55}
  .lista-check{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
  .lista-check li{display:flex;gap:12px;align-items:flex-start;font-size:16px;line-height:1.45}
  .check{display:inline-flex;width:24px;height:24px;border-radius:50%;background:var(--destaque);align-items:center;justify-content:center;flex:none;margin-top:1px}
  .lote{flex:1 1 440px;min-width:0;background:#fff;color:var(--tinta);border-radius:28px;padding:22px;display:flex;flex-direction:column;gap:12px;box-shadow:0 30px 60px -30px rgba(0,0,0,.5)}
  .lote-topo{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:2px 4px 10px;border-bottom:1px solid #EFE6D6}
  .lote-topo b{font-family:var(--display);font-size:20px}
  .lote-topo span{font-size:13px;color:var(--texto3)}
  .barra{height:10px;border-radius:999px;background:var(--creme);overflow:hidden}
  .barra i{display:block;height:100%;width:0;background:var(--azul);border-radius:inherit;animation:enche 12s ease-in-out infinite}
  .lote-linha{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:16px;background:var(--fundo);font-size:15px}
  .lote-linha .q{width:36px;height:36px;border-radius:10px;background:var(--creme);display:inline-flex;align-items:center;justify-content:center;flex:none}
  .lote-linha .info{flex:1;min-width:0;display:flex;flex-direction:column}
  .lote-linha .info small{color:var(--texto3);font-size:13px}
  .estado{position:relative;display:inline-grid;font-size:12px;font-weight:700;flex:none}
  .estado span{grid-area:1/1;padding:6px 12px;border-radius:999px;white-space:nowrap;text-align:center}
  .estado .a{background:#FFE3C2;color:#6B3A00;animation:sai 12s infinite}
  .estado .b{background:var(--destaque);color:var(--tinta);opacity:0;animation:entra 12s infinite}
  .l2 .a,.l2 .b,.l2 i{animation-delay:1.2s}.l3 .a,.l3 .b{animation-delay:2.4s}.l4 .a,.l4 .b{animation-delay:3.6s}
  @keyframes sai{0%,18%{opacity:1}24%,92%{opacity:0}100%{opacity:1}}
  @keyframes entra{0%,18%{opacity:0}24%,92%{opacity:1}100%{opacity:0}}
  @keyframes enche{0%{width:8%}50%,90%{width:100%}100%{width:8%}}
  .rco{background:var(--tinta);color:#fff;margin-top:96px;position:relative;overflow:hidden}
  .rco .wrap{position:relative;z-index:1;padding-top:112px;padding-bottom:0}
  .rco .lead{color:var(--claro)}
  .rco .eyebrow{color:var(--claro)}
  .rco .tag-seg{background:var(--destaque);color:var(--tinta)} .rco .tag-seg i{background:var(--tinta)}
  .rco-cena{position:relative;margin-top:24px}
  .rco-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
  .rco-card{border-radius:24px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);padding:24px;display:flex;flex-direction:column;gap:12px}
  .rco-card .num{font-family:var(--display);font-weight:800;font-size:44px;line-height:1;color:var(--destaque)}
  .rco-card h3{margin:0;font-size:20px}
  .rco-card p{margin:0;color:var(--claro);font-size:15px;line-height:1.55}
  .etapas{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
  .etapas span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:1.5px solid rgba(255,255,255,.3);font-weight:700;font-size:14px;color:var(--claro);animation:etapa 8s infinite}
  @keyframes etapa{0%,8%{background:var(--destaque);color:var(--tinta);border-color:var(--destaque)}14%,100%{background:transparent}}
  .pessoal .grade{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
  .pessoal .card{gap:28px;padding:24px}
  .pessoal .card h3{font-size:22px}
  .bloco-escuro{background:var(--azul);color:#fff;border-radius:40px;padding:clamp(32px,5vw,72px);display:flex;flex-direction:column;gap:48px}
  .grade-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
  .passo{border-radius:24px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);padding:26px;display:flex;flex-direction:column;gap:14px}
  .passo .num{font-family:var(--display);font-weight:800;font-size:52px;line-height:1;color:var(--destaque)}
  .passo h3{margin:0;font-size:21px} .passo p{margin:0;color:var(--claro);font-size:16px;line-height:1.55}
  .sinistro{background:var(--destaque)}
  .sinistro .wrap{padding-top:96px;padding-bottom:96px;display:flex;flex-wrap:wrap;gap:48px;align-items:center;justify-content:space-between}
  .sinistro h2{font-size:clamp(2.75rem,6vw,5rem);line-height:.95;letter-spacing:-.018em}
  .sinistro p{margin:0;max-width:36rem;font-size:19px;line-height:1.5}
  .faq{padding-top:112px;padding-bottom:112px;display:flex;flex-wrap:wrap;gap:56px}
  .faq-lista{flex:2 1 560px;min-width:0;display:flex;flex-direction:column;gap:12px}
  .faq-item{background:#fff;border:1px solid var(--linha);border-radius:22px;overflow:hidden}
  .faq-item button{width:100%;min-height:64px;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px;background:none;border:0;font-family:inherit;font-size:18px;font-weight:700;color:var(--tinta);text-align:left;cursor:pointer}
  .faq-item .sinal{flex:none;display:inline-flex;width:32px;height:32px;border-radius:50%;background:var(--creme);align-items:center;justify-content:center;font-size:20px;line-height:1}
  .faq-item p{margin:0;padding:0 24px 22px;font-size:16px;line-height:1.6;color:var(--texto2)}
  footer{background:var(--tinta);color:#fff}
  footer .wrap{padding-top:96px;padding-bottom:40px;display:flex;flex-direction:column;gap:72px}
  .cta-final{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px}
  .cta-final h2{font-size:clamp(3rem,7vw,6rem);line-height:.92;letter-spacing:-.02em;max-width:12ch}
  .rodape{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:32px;padding-top:40px;border-top:1px solid rgba(255,255,255,.15);font-size:15px;line-height:1.7;color:var(--claro)}
  .rodape div{display:flex;flex-direction:column;gap:4px}
  .rodape strong{color:#fff}
  .rodape a{color:var(--claro);text-decoration:none} .rodape a:hover{color:#fff}
  .copy{font-size:13px;color:var(--claro);opacity:.85}
  .js .revela{opacity:0;transform:translateY(24px);transition:opacity .7s ease, transform .7s ease}
  .js .revela.visivel{opacity:1;transform:none}
  .cotacao{position:fixed;inset:0;z-index:50;background:var(--fundo);display:none;overflow-y:auto}
  .cotacao.aberta{display:flex;flex-wrap:wrap}
  body.travado{overflow:hidden}
  .cot-lado{flex:1 1 380px;min-width:0;background:var(--azul);color:#fff;padding:40px clamp(24px,4vw,56px);display:flex;flex-direction:column;justify-content:space-between;gap:48px;min-height:100%}
  .cot-lado h2{font-size:clamp(2.5rem,4.5vw,4rem);line-height:.95}
  .cot-lado p{margin:0;font-size:18px;line-height:1.5;color:var(--claro);max-width:26rem}
  .cot-lado ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
  .cot-lado li{display:flex;align-items:center;gap:14px;font-size:16px}
  .cot-lado li .n{display:inline-flex;width:34px;height:34px;border-radius:50%;border:1.5px solid #8FA3C4;color:var(--claro);align-items:center;justify-content:center;font-weight:700}
  .cot-lado li.ativo .n{background:var(--destaque);border-color:var(--destaque);color:var(--tinta)}
  .fechar{background:none;border:1.5px solid rgba(255,255,255,.4);color:#fff;border-radius:999px;min-height:44px;padding:0 16px;font-family:inherit;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:8px}
  .cot-main{flex:2 1 560px;min-width:0;padding:56px clamp(24px,5vw,96px);display:flex;flex-direction:column;justify-content:center;gap:32px}
  .etapa{display:none;flex-direction:column;gap:28px;max-width:800px}
  .etapa.ativa{display:flex;animation:fade .3s ease}
  .etapa h3{font-family:var(--display);font-weight:800;font-size:40px;letter-spacing:-.012em;line-height:1.05;margin:8px 0 0}
  .tipos{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
  .tipo{min-height:88px;padding:18px;border-radius:20px;border:2px solid var(--linha);background:#fff;color:var(--tinta);font-family:inherit;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:4px}
  .tipo b{font-size:18px} .tipo span{font-size:14px;color:var(--texto3)}
  .tipo[aria-pressed="true"]{border-color:var(--tinta);background:var(--tinta);color:#fff}
  .tipo[aria-pressed="true"] span{color:var(--claro)}
  .chips{display:flex;flex-wrap:wrap;gap:8px}
  .chip{min-height:48px;padding:10px 20px;border-radius:999px;border:1.5px solid #CBD0DA;background:#fff;color:var(--tinta);font-family:inherit;font-size:15px;font-weight:500;cursor:pointer}
  .chip[aria-pressed="true"]{border-color:var(--tinta);background:var(--tinta);color:#fff;font-weight:700}
  .campos{display:flex;flex-direction:column;gap:18px;max-width:640px}
  .campos label{display:flex;flex-direction:column;gap:8px;font-size:15px;font-weight:700}
  .campos label small{font-weight:400;color:var(--texto3)}
  .campos input{min-height:56px;padding:0 18px;border-radius:16px;border:1.5px solid #CBD0DA;background:#fff;font-family:inherit;font-size:17px;color:var(--tinta)}
  .campos input:focus{outline:3px solid var(--destaque);outline-offset:1px;border-color:var(--tinta)}
  .campos input.erro{border-color:#B42318}
  .msg-erro{color:#B42318;font-size:14px;font-weight:500;min-height:20px;margin:0}
  .consent{display:flex;align-items:flex-start;gap:12px;font-size:15px;line-height:1.5;color:var(--texto2);max-width:640px}
  .consent input{width:22px;height:22px;margin:0;accent-color:var(--azul);flex:none}
  .cot-nav{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
  .cot-nav small{font-size:14px;color:var(--texto3)}
  .ok{display:inline-flex;width:80px;height:80px;border-radius:26px;background:var(--destaque);align-items:center;justify-content:center}
  @media (max-width:900px){ .menu{display:none} }
  @media (max-width:720px){
    .f1{left:8px;top:8px} .f2{right:8px}
    .hero{padding-top:36px}
  }
  @media (prefers-reduced-motion:reduce){
    *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
    .js .revela{opacity:1;transform:none}
    .estado .a{opacity:0} .estado .b{opacity:1} .barra i{width:100%}
  }
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-display:swap;font-weight:200 800;src:url(fonts/bricolage-grotesque.woff2) format('woff2-variations'),url(fonts/bricolage-grotesque.woff2) format('woff2')}
@font-face{font-family:'DM Sans';font-style:normal;font-display:swap;font-weight:100 1000;src:url(fonts/dm-sans.woff2) format('woff2-variations'),url(fonts/dm-sans.woff2) format('woff2')}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pular{position:absolute;left:12px;top:-80px;z-index:100;background:var(--tinta);color:#fff;padding:12px 18px;border-radius:12px;font-weight:700;text-decoration:none}
.pular:focus{top:12px;color:#fff}
:focus-visible{outline:3px solid var(--azul);outline-offset:3px}
.rco :focus-visible,.bloco-escuro :focus-visible,footer :focus-visible,.cot-lado :focus-visible,.resumo-box :focus-visible{outline-color:var(--destaque)}
.faq-item summary{list-style:none;cursor:pointer;min-height:64px;padding:20px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:18px;font-weight:700;color:var(--tinta)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";flex:none;display:inline-flex;width:32px;height:32px;border-radius:50%;background:var(--creme);align-items:center;justify-content:center;font-size:20px;font-weight:500;line-height:1}
.faq-item[open] summary::after{content:"−"}
.faq-item .resp{padding:0 24px 22px;font-size:16px;line-height:1.6;color:var(--texto2)}
.faq-item .resp p{margin:0}
.seg-nome{font-family:var(--display);font-weight:700;font-size:26px;letter-spacing:-.008em;color:#6B7486;white-space:nowrap}
.saiba{display:inline-flex;align-items:center;gap:8px;font-weight:700;text-decoration:none;min-height:44px}
.saiba::after{content:"→";transition:transform .2s}
.saiba:hover::after{transform:translateX(3px)}
.rco .saiba,.parceiro .saiba{color:#fff}
.card .mais{margin-top:14px;display:inline-flex;font-weight:700;font-size:15px;color:var(--azul)}
.zap{position:fixed;right:20px;bottom:20px;z-index:40;display:inline-flex;align-items:center;gap:10px;min-height:56px;padding:0 22px 0 16px;border-radius:999px;background:#25D366;color:#0B2B19;font-weight:700;font-size:16px;text-decoration:none;box-shadow:0 14px 30px -10px rgba(0,0,0,.45);transition:transform .2s}
.zap:hover{transform:translateY(-2px);color:#0B2B19}
.zap svg{width:26px;height:26px}
body.travado .zap{display:none}
@media (max-width:560px){ .zap{width:58px;height:58px;padding:0;justify-content:center} .zap span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)} }
.migalhas{font-size:14px;color:var(--texto3);padding-top:28px}
.migalhas ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0}
.migalhas li+li::before{content:"/";margin-right:8px;color:#9AA3B4}
.migalhas a{text-decoration:none}
.p-hero{display:flex;flex-wrap:wrap;gap:48px;align-items:flex-start;padding-top:32px;padding-bottom:56px}
.p-hero-texto{flex:1 1 560px;min-width:0;display:flex;flex-direction:column;gap:22px}
.p-hero h1{font-size:clamp(2.6rem,5.4vw,4.6rem);line-height:.95;letter-spacing:-.016em}
.p-hero .lead{font-size:20px;max-width:40rem}
.resumo-box{flex:1 1 360px;min-width:0;background:var(--azul);color:#fff;border-radius:28px;padding:28px;display:flex;flex-direction:column;gap:18px;box-shadow:0 30px 60px -30px rgba(15,35,64,.55)}
.resumo-box h2{font-family:var(--display);font-weight:700;font-size:22px;margin:0}
.resumo-box dl{margin:0;display:flex;flex-direction:column;gap:16px}
.resumo-box dt{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--destaque)}
.resumo-box dd{margin:4px 0 0;color:var(--claro);font-size:16px;line-height:1.5}
.p-secao{padding-top:72px}
.p-secao>h2,.p-secao .seg-topo h2{font-size:clamp(2rem,4vw,3.1rem);line-height:1}
.texto{max-width:46rem;font-size:18px;line-height:1.7;color:var(--texto2)}
.texto p{margin:0 0 16px}
.duas-col{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-start}
.duas-col>*{flex:1 1 420px;min-width:0}
.lista-publico{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.lista-publico li{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--linha);border-radius:18px;padding:16px 18px;font-size:17px;line-height:1.45}
.lista-publico .check{margin-top:2px}
.cob .card{gap:16px;padding:24px}
.cob .card h3{font-size:22px}
.passos-p{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.cta-faixa{background:var(--destaque);border-radius:36px;padding:clamp(28px,4vw,56px);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-top:88px}
.cta-faixa h2{font-size:clamp(2rem,4vw,3.25rem);line-height:1;max-width:18ch}
.cta-faixa p{margin:10px 0 0;font-size:18px}
.cta-faixa .acoes{display:flex;flex-wrap:wrap;gap:12px}
.relacionados{padding-top:88px;padding-bottom:24px}
.relacionados h2{font-size:clamp(1.75rem,3vw,2.5rem);margin-bottom:20px}
.p-faq{padding-top:88px;display:flex;flex-wrap:wrap;gap:48px}
.p-faq>div:first-child{flex:1 1 300px;min-width:0}
.p-faq h2{font-size:clamp(2rem,4vw,3.1rem);line-height:1}
.atualizado{font-size:14px;color:var(--texto3);margin-top:48px}
.doc-layout{display:flex;flex-wrap:wrap;gap:48px;align-items:flex-start;padding-bottom:96px}
.doc-indice{flex:1 1 240px;min-width:0;position:sticky;top:96px;background:#fff;border:1px solid var(--linha);border-radius:24px;padding:20px 22px}
.doc-indice b{display:block;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--texto2);margin-bottom:10px}
.doc-indice ol{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:6px;font-size:15px;line-height:1.4}
.doc-indice a{text-decoration:none}
.doc{flex:999 1 560px;min-width:0;max-width:760px;font-size:17px;line-height:1.7;color:var(--texto2)}
.doc h2{font-family:var(--display);font-weight:700;font-size:28px;letter-spacing:-.008em;line-height:1.15;color:var(--tinta);margin:48px 0 12px;scroll-margin-top:96px}
.doc strong{color:var(--tinta)}
.doc ul{padding-left:22px;margin:12px 0} .doc li{margin:6px 0}
.doc .resumo{background:var(--azul);color:var(--claro);border-radius:24px;padding:24px 28px;margin-bottom:8px}
.doc .resumo strong{color:#fff}
.tabela-box{overflow-x:auto;border:1px solid var(--linha);border-radius:16px;background:#fff;margin:16px 0}
.tabela{width:100%;border-collapse:collapse;font-size:15px;line-height:1.5}
.tabela th,.tabela td{text-align:left;vertical-align:top;padding:12px 14px;border-bottom:1px solid var(--linha)}
.tabela th{color:var(--tinta);background:var(--creme);font-size:14px}
.tabela tr:last-child td{border-bottom:0}
.contato-box{background:#fff;border:1px solid var(--linha);border-radius:20px;padding:20px 24px;margin-top:12px}
@media (max-width:860px){ .doc-indice{position:static} }
@media (max-width:600px){
  header.topo nav{flex-wrap:nowrap;padding-top:10px;padding-bottom:10px}
  .logo-link img{height:28px}
  .nav-acoes .btn-contorno{display:none}
  .nav-acoes .btn{min-height:44px;padding:0 16px}
}
