:root{
  color-scheme: light;
  --azul:#0F49A0;
  --cobalto:#116DFF;
  --ciano:#0088CB;
  --sol:#FFCB05;
  --laranja:#F97B14;
  --brasa:#ED1C24;
  --tinta:#0B1C44;
  --suave:#4E5D7E;
  --papel:#F4F7FD;
  --branco:#FFFFFF;
  --linha:#D6DEEE;
  --verde:#2E9D3A;
  --display:"Anybody", "Arial Black", system-ui, sans-serif;
  --texto:"Schibsted Grotesk", "Segoe UI", system-ui, sans-serif;
  --gutter:clamp(16px, 4vw, 56px);
  --max:1240px;
  --sombra:0 22px 44px -22px rgba(15,73,160,.55);
  --espiral:linear-gradient(100deg,var(--azul),var(--cobalto) 30%,var(--ciano) 48%,var(--sol) 64%,var(--laranja) 80%,var(--brasa));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--papel);color:var(--tinta);font-family:var(--texto);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid var(--laranja);outline-offset:3px;border-radius:4px}
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
h1,h2,h3{font-family:var(--display);line-height:1.02;margin:0;text-wrap:balance;letter-spacing:-.01em}
h2{font-size:clamp(32px,4.2vw,56px);font-weight:800;font-stretch:112%}
h3{font-size:clamp(22px,2.2vw,28px);font-weight:750;font-stretch:112%}
p{margin:0}
.lead{font-size:clamp(18px,1.6vw,21px);color:var(--suave);max-width:58ch}
section{padding-block:clamp(72px,10vw,136px)}

/* ---------- botões ---------- */
.btn{display:inline-flex;align-items:center;gap:10px;font:700 16px/1 var(--texto);padding:16px 26px;border-radius:999px;border:2px solid transparent;cursor:pointer;text-decoration:none;transition:transform .2s ease, background-color .2s ease, box-shadow .2s ease}
.btn-primario{background:var(--azul);color:var(--branco);box-shadow:var(--sombra)}
.btn-primario:hover{background:var(--cobalto);transform:translateY(-2px)}
.btn-linha{border-color:var(--azul);color:var(--azul);background:transparent}
.btn-linha:hover{background:var(--azul);color:var(--branco)}
.btn-wa{background:#1FAF55;color:#fff}
.btn-wa:hover{background:#178f45}
.btn svg{width:18px;height:18px;flex:none}

/* ---------- topo ---------- */
.topo{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:rgba(244,247,253,.86);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid rgba(214,222,238,.8)}
.topo .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;height:92px}
.marca{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--azul)}
.logo{display:block;height:74px;width:auto}
.logo-rod{height:104px;background:#fff;padding:6px;border-radius:8px;box-sizing:content-box}
.marca-texto{display:flex;flex-direction:column;line-height:.86}
.marca-texto small{font:600 12px/1 var(--texto);letter-spacing:.14em;color:var(--suave);margin-left:2px}
.marca-texto b{font:900 29px/1 var(--display);font-stretch:125%;letter-spacing:-.02em}
.menu{display:flex;align-items:center;gap:6px}
.menu a{text-decoration:none;font-weight:600;font-size:15px;padding:10px 14px;border-radius:999px;color:var(--tinta)}
.menu a:hover{background:rgba(15,73,160,.08);color:var(--azul)}
.menu .btn{margin-left:10px;padding:12px 20px;font-size:15px}
.menu a.btn-primario{color:#fff}
.menu a.btn-primario:hover{background:var(--cobalto);color:#fff}
.abrir-menu{display:none;background:none;border:0;padding:10px;cursor:pointer;color:var(--azul)}
.abrir-menu svg{width:28px;height:28px}

/* ---------- hero ---------- */
.hero{padding-block:clamp(40px,6vw,84px) clamp(64px,8vw,110px);position:relative;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:minmax(0,44fr) minmax(0,56fr);gap:clamp(28px,4vw,64px);align-items:center}
.hero h1{font-size:clamp(38px,4.3vw,64px);font-weight:850;font-stretch:100%;color:var(--azul);letter-spacing:-.012em;line-height:1.06}
.hero h1 span{display:block}
.hero .lead{margin-top:30px}
.hero-acoes{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.hero-nota{margin-top:26px;font-size:14px;color:var(--suave);display:flex;gap:10px;align-items:center}
.ast{color:var(--laranja);font-weight:800;text-decoration:none;padding-inline:1px}
.ast:hover{text-decoration:underline}
.nota-trib{margin-top:18px;padding-top:14px;border-top:1px solid var(--linha);font-size:12.5px;line-height:1.5;color:var(--suave);max-width:62ch}
.nota-trib:target{color:var(--tinta)}
.hero-nota i{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--verde);box-shadow:0 0 0 5px rgba(46,157,58,.16)}

.palco{perspective:1400px;position:relative}
.mosaico{position:relative;display:grid;grid-template-columns:repeat(13,1fr);grid-template-rows:repeat(8,1fr);aspect-ratio:13/8;width:100%;transform-style:preserve-3d;transition:transform .5s cubic-bezier(.2,.7,.2,1);--rx:0deg;--ry:0deg;transform:rotateX(var(--rx)) rotateY(var(--ry))}
.tile{position:relative;padding:4px;transform-style:preserve-3d;animation:brota .7s cubic-bezier(.2,.9,.25,1.25) both;animation-delay:calc(var(--i) * 140ms)}
.tile button{all:unset;box-sizing:border-box;position:relative;display:flex;flex-direction:column;justify-content:flex-end;width:100%;height:100%;border-radius:clamp(4px,.8vw,10px);cursor:pointer;overflow:hidden;background:var(--c);color:var(--t,#fff);padding:clamp(8px,1.6vw,24px);transform:translateZ(var(--z,0px));box-shadow:var(--sombra);transition:transform .35s cubic-bezier(.2,.8,.2,1), filter .25s}
.tile button:hover{transform:translateZ(calc(var(--z,0px) + 34px));filter:saturate(1.15) brightness(1.04)}
.tile button:focus-visible{outline:3px solid var(--tinta);outline-offset:2px}
.tile .n{position:absolute;top:clamp(6px,1vw,14px);left:clamp(8px,1.1vw,16px);font:800 clamp(11px,1.1vw,15px)/1 var(--display);font-stretch:120%;opacity:.75}
.tile .rot{font:800 clamp(14px,1.75vw,26px)/1.05 var(--display);font-stretch:92%;letter-spacing:-.01em}
.tile .sub{font-size:clamp(12px,1.05vw,15px);line-height:1.35;margin-top:8px;max-width:26ch;opacity:.92}
.t8{grid-column:1/9;grid-row:1/9;--c:var(--azul)}
.t5{grid-column:9/14;grid-row:1/6;--c:var(--laranja)}
.t3{grid-column:11/14;grid-row:6/9;--c:var(--cobalto)}
.t2{grid-column:9/11;grid-row:7/9;--c:var(--sol);--t:var(--tinta)}
.t1a{grid-column:9/10;grid-row:6/7;--c:var(--brasa)}
.t1b{grid-column:10/11;grid-row:6/7;--c:var(--ciano)}
.t3 .rot{font-size:clamp(11px,1.02vw,15px)}
.t2 .rot{font-size:clamp(11px,.95vw,14px)}
.t1a button,.t1b button{padding:0;align-items:center;justify-content:center}
.t1a .n,.t1b .n{position:static;opacity:1;font-size:clamp(11px,1.2vw,17px)}
.t8 .sub,.t5 .sub{display:block}
.dica{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);background:var(--tinta);color:#fff;font:600 13px/1 var(--texto);padding:8px 10px;border-radius:6px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .2s}
.t1a:hover .dica,.t1b:hover .dica,.t1a:focus-within .dica,.t1b:focus-within .dica{opacity:1}
.espiral{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;transform:translateZ(1px);overflow:visible}
.espiral path{fill:none;stroke:#fff;stroke-width:.075;stroke-linecap:round;stroke-dasharray:40;stroke-dashoffset:40;animation:traca 1.6s .95s cubic-bezier(.6,0,.2,1) forwards}
@keyframes brota{from{opacity:0;transform:scale(.4) translateZ(-120px)}to{opacity:1;transform:none}}
@keyframes traca{to{stroke-dashoffset:0}}
.halo{position:absolute;inset:-14%;z-index:-1;pointer-events:none;background:
  radial-gradient(34% 40% at 72% 36%, rgba(0,136,203,.22), transparent 100%),
  radial-gradient(26% 30% at 74% 74%, rgba(249,123,20,.16), transparent 100%),
  radial-gradient(34% 40% at 32% 60%, rgba(15,73,160,.14), transparent 100%);-webkit-mask-image:radial-gradient(closest-side,#000 55%,transparent);mask-image:radial-gradient(closest-side,#000 55%,transparent)}

/* ---------- faixa de números ---------- */
.faixa{background:var(--azul);color:#fff;padding-block:34px}
.faixa .wrap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.faixa div{display:flex;flex-direction:column;gap:6px;border-left:2px solid rgba(255,255,255,.22);padding-left:18px}
.faixa strong{font:900 clamp(26px,2.9vw,40px)/1 var(--display);font-stretch:112%;white-space:nowrap}
.faixa span{font-size:14px;color:rgba(255,255,255,.8);line-height:1.35}

/* ---------- modelos ---------- */
.cab{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:end;margin-bottom:clamp(40px,5vw,64px)}
.modelos-grid{display:grid;grid-template-columns:minmax(0,38.2fr) minmax(0,61.8fr);gap:clamp(24px,3vw,40px);align-items:start}
.quiz{background:var(--tinta);color:#fff;border-radius:22px;padding:clamp(24px,3vw,40px);position:sticky;top:112px}
.quiz h3{color:#fff}
.quiz h3{line-height:1.12}
.quiz > p{color:rgba(255,255,255,.72);margin-top:12px;font-size:15px}
.perg{margin-top:26px;border:0;padding:0}
.perg legend{font-weight:600;font-size:16px;margin-bottom:12px;padding:0}
.opcoes{display:flex;gap:8px}
.opcoes label{flex:1;position:relative}
.opcoes input{position:absolute;opacity:0;pointer-events:none}
.opcoes span{display:block;text-align:center;padding:11px 10px;border-radius:12px;border:1.5px solid rgba(255,255,255,.22);font-weight:600;cursor:pointer;transition:background-color .2s,border-color .2s,color .2s}
.opcoes span:hover{border-color:rgba(255,255,255,.6)}
.opcoes input:checked + span{background:#fff;color:var(--tinta);border-color:#fff}
.opcoes input:focus-visible + span{outline:3px solid var(--laranja);outline-offset:2px}
.veredito{margin-top:28px;padding-top:24px;border-top:1px solid rgba(255,255,255,.16);min-height:118px}
.veredito small{display:block;color:rgba(255,255,255,.6);font-size:14px}
.veredito strong{display:block;font:850 clamp(26px,2.6vw,34px)/1.05 var(--display);font-stretch:120%;margin-top:6px}
.veredito p{color:rgba(255,255,255,.78);font-size:15px;margin-top:10px}
.veredito[data-r="360"] strong{color:#4FB8EA}
.veredito[data-r="ss"] strong{color:var(--sol)}
.limpar{all:unset;cursor:pointer;margin-top:14px;font-size:14px;color:rgba(255,255,255,.7);text-decoration:underline;text-underline-offset:3px}
.limpar:focus-visible{outline:2px solid var(--laranja)}

.comp{background:var(--branco);border-radius:22px;border:1px solid var(--linha);overflow:hidden}
.comp-cab,.comp-linha{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1fr) minmax(0,1fr)}
.comp-cab > div{padding:30px 22px 22px;position:relative;transition:background-color .35s}
.comp-cab .m{font:800 clamp(18px,1.55vw,22px)/1.12 var(--display);font-stretch:92%;overflow-wrap:break-word}
.comp-cab .m span{display:block}
.comp-cab .m + p{font-size:14px;color:var(--suave);margin-top:8px}
.comp-cab .c360 .m{color:var(--azul)}
.comp-cab .css .m{color:var(--laranja)}
.comp-cab .c360::before,.comp-cab .css::before{content:"";position:absolute;left:22px;right:22px;top:0;height:5px;border-radius:0 0 5px 5px}
.comp-cab .c360::before{background:var(--azul)}
.comp-cab .css::before{background:var(--laranja)}
.comp-linha{border-top:1px solid var(--linha)}
.comp-linha > div{padding:18px 22px;font-size:15px;line-height:1.5;transition:background-color .35s}
.comp-linha > div:first-child{font-weight:700;color:var(--suave);font-size:14px;line-height:1.45}
.comp[data-r="360"] .c360{background:rgba(15,73,160,.07)}
.comp[data-r="ss"] .css{background:rgba(249,123,20,.09)}
.comp-rodape{margin-top:18px;padding-top:14px;border-top:1px dashed rgba(249,123,20,.35);font-size:13px;color:var(--suave)}
.ss-bloco{border-top:1px solid var(--linha);background:rgba(249,123,20,.05);padding:30px 22px 22px}
.ss-bloco h4{margin:0 0 12px;font:800 clamp(21px,1.9vw,26px)/1.1 var(--display);font-stretch:105%;color:var(--laranja)}
.ss-def{font-size:15.5px;color:var(--suave);max-width:68ch}
.ss-def + .ss-def{margin-top:10px}
.ss-def strong{color:var(--tinta);font-weight:750}
.ss-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}
.ss-split > div{background:#fff;border:1px solid rgba(249,123,20,.22);border-radius:14px;padding:16px 18px}
.ss-split b{display:block;font:750 17px/1.2 var(--display);font-stretch:108%;color:var(--tinta);margin-bottom:10px}
.ss-split > div + div b{color:var(--laranja)}
.ss-split ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.ss-split li{font-size:14.5px;color:var(--suave);padding-left:16px;position:relative;line-height:1.4}
.ss-split li::before{content:"";position:absolute;left:0;top:.5em;width:7px;height:7px;border-radius:2px;background:var(--linha)}
.ss-split > div + div li::before{background:var(--laranja)}

/* ---------- calculadora ---------- */
.conta{background:var(--branco);border-block:1px solid var(--linha)}
.calc{display:grid;grid-template-columns:minmax(0,38.2fr) minmax(0,61.8fr);gap:clamp(28px,4vw,56px);align-items:start}
.campos{display:flex;flex-direction:column;gap:26px;background:var(--papel);border-radius:22px;padding:clamp(22px,3vw,34px)}
.campo label{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-weight:700;font-size:15px}
.campo output{font:800 22px/1 var(--display);font-stretch:115%;color:var(--azul);font-variant-numeric:tabular-nums}
.campo input[type=range]{width:100%;margin-top:14px;accent-color:var(--azul);height:28px}
.campo .ajuda{font-size:13px;color:var(--suave);margin-top:4px}
.indiretos{border:0;border-top:1px solid var(--linha);margin:0;padding:24px 0 0;display:flex;flex-direction:column;gap:10px}
.indiretos legend{float:left;width:100%;padding:0;margin-bottom:4px;font:800 19px/1.2 var(--display);font-stretch:105%;color:var(--tinta)}
.indiretos .ajuda{font-size:13px;color:var(--suave);margin:0 0 4px;line-height:1.45}
.ind{background:#fff;border:1px solid var(--linha);border-radius:14px;transition:border-color .2s}
.ind:has(input[type=checkbox]:checked){border-color:var(--azul)}
.ind-lin{display:flex;gap:12px;align-items:flex-start;padding:14px;cursor:pointer}
.ind-lin input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--azul);flex:none;cursor:pointer}
.ind-lin b{display:block;font-size:15px}
.ind-lin small{display:block;font-size:13px;color:var(--suave);line-height:1.4;margin-top:2px}
.ind-extra{padding:0 14px 14px 46px}
.ind-extra label{display:flex;justify-content:space-between;gap:10px;font-size:13px;font-weight:650;color:var(--suave)}
.ind-extra output{font-weight:800;color:var(--azul);font-variant-numeric:tabular-nums}
.ind-extra input{width:100%;accent-color:var(--azul);margin-top:6px}
.legenda li.grupo{grid-column:1/-1;border-bottom:0;padding:18px 0 2px;font:800 16px/1.2 var(--display);font-stretch:105%;color:var(--tinta)}
.seg{display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid var(--linha);border-radius:14px;padding:4px;margin-top:12px}
.seg button{all:unset;text-align:center;padding:11px 8px;border-radius:10px;font-weight:650;font-size:14px;cursor:pointer;color:var(--suave)}
.seg button[aria-pressed="true"]{background:var(--azul);color:#fff}
.seg button:focus-visible{outline:3px solid var(--laranja)}
.resultado .total{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px}
.resultado .total strong{font:900 clamp(44px,5.6vw,76px)/1 var(--display);font-stretch:115%;color:var(--azul);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.resultado .total span{color:var(--suave);font-size:16px}
.mult{margin-top:12px;font-size:clamp(18px,1.8vw,22px);max-width:40ch}
.mult b{font-family:var(--display);font-stretch:118%;color:var(--brasa)}
.barra-wrap{margin-top:34px}
.barra-marcas{display:flex;font-size:13px;font-weight:650;color:var(--suave);margin-bottom:8px}
.barra-marcas span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:width .45s cubic-bezier(.2,.8,.2,1)}
.barra-marcas span:last-child{border-left:2px dashed var(--brasa);padding-left:8px;color:var(--brasa)}
.barra{display:flex;height:64px;border-radius:12px;overflow:hidden;box-shadow:var(--sombra)}
.barra i{display:block;height:100%;transition:width .45s cubic-bezier(.2,.8,.2,1);min-width:0}
.legenda{list-style:none;padding:0;margin:26px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 32px}
.legenda li{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--linha);font-size:15px}
.legenda li i{width:12px;height:12px;border-radius:3px;flex:none}
.legenda li span{flex:1;min-width:0}
.legenda li b{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}
.aviso{margin-top:22px;font-size:13px;color:var(--suave);max-width:70ch}
.calc-cta{margin-top:26px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* ---------- segmentos ---------- */
.abas{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}
.abas button{all:unset;cursor:pointer;padding:11px 17px;border-radius:999px;font-weight:650;font-size:15px;white-space:nowrap;border:1.5px solid var(--linha);background:#fff;transition:background-color .2s,color .2s,border-color .2s}
.abas button:hover{border-color:var(--azul)}
.abas button[aria-selected="true"]{background:var(--tinta);border-color:var(--tinta);color:#fff}
.abas button:focus-visible{outline:3px solid var(--laranja)}
.painel{display:grid;grid-template-columns:minmax(0,61.8fr) minmax(0,38.2fr);background:#fff;border-radius:22px;overflow:hidden;border:1px solid var(--linha)}
.painel-texto{padding:clamp(26px,4vw,52px)}
.painel-texto p{margin-top:16px;color:var(--suave);max-width:60ch}
.destaque{margin-top:24px;padding:14px 18px;border-left:4px solid var(--pc,var(--azul));background:var(--papel);border-radius:0 12px 12px 0;max-width:60ch;display:flex;flex-direction:column;gap:3px}
.destaque b{font:750 16px/1.25 var(--display);font-stretch:108%;color:var(--tinta)}
.destaque span{font-size:15px;color:var(--suave)}
.funcoes{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px;padding:0;list-style:none}
.funcoes li{padding:8px 14px;border-radius:999px;background:var(--papel);font-size:14px;font-weight:600}
.painel-cor{position:relative;background:var(--pc,var(--azul));min-height:280px;overflow:hidden}
.painel-cor svg{position:absolute;right:-8%;bottom:-10%;width:130%;height:auto;opacity:.9}
.painel-cor b{position:absolute;left:clamp(20px,3vw,36px);top:clamp(18px,3vw,32px);font:900 clamp(64px,9vw,128px)/1 var(--display);font-stretch:130%;color:rgba(255,255,255,.95)}
.painel-cor[data-dark] b{color:var(--tinta)}

/* ---------- etapas ---------- */
.etapas{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;counter-reset:e;position:relative}
.etapas::before{content:"";position:absolute;left:0;right:0;top:27px;height:3px;background:var(--espiral);border-radius:3px}
.etapas li{counter-increment:e;padding-right:24px;position:relative}
.etapas li::before{content:counter(e);display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#fff;border:3px solid var(--k);color:var(--k);font:900 22px/1 var(--display);font-stretch:120%;position:relative;margin-bottom:22px}
.etapas h3{font-size:20px}
.etapas p{font-size:15px;color:var(--suave);margin-top:8px}

/* ---------- quem somos ---------- */
.nos{background:var(--tinta);color:#fff;position:relative;overflow:hidden}
.nos .lead{color:rgba(255,255,255,.76)}
.nos h2{color:#fff;font-size:clamp(30px,3.6vw,48px)}
.nos-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,96px);align-items:start}
.nos-grid .lead + .lead{margin-top:18px}
.pilares{list-style:none;padding:0;margin:0;display:flex;flex-direction:column}
.pilares li{display:grid;grid-template-columns:auto 1fr;gap:4px 20px;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.pilares li:first-child{padding-top:0}
.pilares svg{grid-row:span 2;width:44px;height:44px}
.pilares b{font:800 22px/1.1 var(--display);font-stretch:116%}
.pilares p{color:rgba(255,255,255,.72);font-size:15.5px}
.mensal{margin-top:clamp(40px,5vw,64px);border-radius:22px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);padding:clamp(22px,3vw,34px);display:grid;grid-template-columns:auto 1fr;gap:18px 28px;align-items:center}
.mensal h3{color:var(--sol);font-size:clamp(22px,2.4vw,30px)}
.docs{display:flex;flex-wrap:wrap;gap:10px;list-style:none;margin:0;padding:0}
.docs li{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;background:rgba(255,255,255,.08);font-size:15px;font-weight:600}
.docs li svg{width:18px;height:18px;color:#4FB8EA}
.nos .deco{position:absolute;right:-120px;top:-80px;width:520px;opacity:.09;pointer-events:none}

/* ---------- clientes ---------- */
.clientes{padding-block:clamp(56px,7vw,90px);overflow:hidden}
.clientes p.t{text-align:center;color:var(--suave);font-weight:600;margin-bottom:26px}
.trilho{display:flex;width:max-content;animation:rola 48s linear infinite}
.clientes:hover .trilho{animation-play-state:paused}
.trilho span{font:800 clamp(24px,3vw,40px)/1 var(--display);font-stretch:120%;padding-inline:clamp(18px,2.4vw,34px);white-space:nowrap;color:var(--azul)}
.trilho span:nth-child(4n+2){color:var(--laranja)}
.trilho span:nth-child(4n+3){color:var(--cobalto)}
.trilho span:nth-child(4n){color:var(--brasa)}
@keyframes rola{to{transform:translateX(-50%)}}

/* ---------- contato ---------- */
.contato{background:var(--branco);border-top:1px solid var(--linha)}
.contato-grid{display:grid;grid-template-columns:minmax(0,38.2fr) minmax(0,61.8fr);gap:clamp(32px,5vw,72px);align-items:start}
.canais{list-style:none;padding:0;margin:34px 0 0;display:flex;flex-direction:column;gap:18px}
.canais li{display:grid;grid-template-columns:22px 1fr;gap:14px;align-items:start;font-size:15.5px}
.canais svg{width:22px;height:22px;color:var(--azul);margin-top:2px}
.canais small{display:block;color:var(--suave);font-size:13px}
.canais a{text-decoration:none;font-weight:650}
.canais a:hover{color:var(--azul);text-decoration:underline}
form.proposta{background:var(--papel);border-radius:22px;padding:clamp(22px,3.4vw,44px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.f{display:flex;flex-direction:column;gap:7px}
.f.full{grid-column:1/-1}
.f label{font-weight:650;font-size:14px}
.f input,.f select{font:inherit;font-size:16px;padding:14px 16px;border-radius:12px;border:1.5px solid var(--linha);background:#fff;color:var(--tinta);width:100%;min-width:0}
.f input:focus,.f select:focus{border-color:var(--azul);outline:none;box-shadow:0 0 0 4px rgba(15,73,160,.14)}
.f input[aria-invalid="true"]{border-color:var(--brasa)}
.erro{font-size:13px;color:var(--brasa);min-height:0}
.check{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--suave)}
.check input{width:20px;height:20px;accent-color:var(--azul);margin-top:1px;flex:none}
.enviar{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:6px}
.enviar p{font-size:13px;color:var(--suave);flex:1;min-width:200px}
.ok{grid-column:1/-1;display:flex;gap:14px;align-items:flex-start;background:#fff;border:1.5px solid var(--verde);border-radius:14px;padding:18px}
.ok svg{width:26px;height:26px;color:var(--verde);flex:none}
.ok b{display:block}
.ok p{font-size:14px;color:var(--suave);margin-top:4px}

/* ---------- rodapé ---------- */
footer{background:var(--azul);color:#fff;padding-block:56px 36px}
.rod{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(4,minmax(0,1fr));gap:32px}
.rod .marca{color:#fff}
.rod .marca-texto small{color:rgba(255,255,255,.7)}
.rod h4{font:750 16px/1.2 var(--display);font-stretch:112%;margin:0 0 14px}
.rod ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:9px;font-size:15px}
.rod a{text-decoration:none;color:rgba(255,255,255,.85)}
.rod a:hover{color:#fff;text-decoration:underline}
.rod p{color:rgba(255,255,255,.75);font-size:15px;margin-top:16px;max-width:34ch}
.base{margin-top:44px;padding-top:22px;border-top:1px solid rgba(255,255,255,.2);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:13px;color:rgba(255,255,255,.7)}
.linha-espiral{height:6px;background:var(--espiral)}

.wa-fixo{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:50;width:58px;height:58px;border-radius:50%;background:#1FAF55;color:#fff;display:grid;place-items:center;box-shadow:0 14px 30px -10px rgba(10,60,30,.6);transition:transform .2s}
.wa-fixo:hover{transform:scale(1.07)}
.wa-fixo svg{width:30px;height:30px}

/* ---------- responsivo ---------- */
@media (max-width:1020px){
  .hero .wrap,.modelos-grid,.calc,.contato-grid,.nos-grid,.cab{grid-template-columns:minmax(0,1fr)}
  .quiz{position:static}
  .faixa .wrap{grid-template-columns:repeat(3,minmax(0,1fr))}
  .etapas{grid-template-columns:minmax(0,1fr);gap:26px}
  .etapas::before{left:27px;right:auto;top:0;bottom:0;width:3px;height:auto;background:linear-gradient(180deg,var(--azul),var(--ciano),var(--sol),var(--laranja),var(--brasa))}
  .etapas li{display:grid;grid-template-columns:56px 1fr;gap:0 20px;padding:0}
  .etapas li::before{grid-row:span 2;margin:0}
  .rod{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rod > div:first-child{grid-column:1/-1}
}
@media (max-width:820px){
  .menu{display:none;position:absolute;top:92px;left:0;right:0;flex-direction:column;align-items:stretch;background:var(--papel);padding:12px var(--gutter) 22px;border-bottom:1px solid var(--linha);box-shadow:0 20px 30px -20px rgba(11,28,68,.3)}
  .menu.aberto{display:flex}
  .menu a{padding:14px 12px}
  .menu .btn{margin:8px 0 0;justify-content:center}
  .abrir-menu{display:block}
  .painel{grid-template-columns:minmax(0,1fr)}
  .painel-cor{min-height:200px}
  .mensal{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  body{font-size:16px}
  .t5 .sub,.t8 .sub{display:none}
  .t3 .rot,.t2 .rot{display:none}
  .faixa .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
  .comp-cab{grid-template-columns:repeat(2,minmax(0,1fr))}
  .comp-cab > div:first-child{display:none}
  .comp-linha{grid-template-columns:repeat(2,minmax(0,1fr))}
  .comp-linha > div:first-child{grid-column:1/-1;padding-bottom:0}
  .comp-linha > div{padding:12px 16px}
  .comp-linha > div:first-child{padding:16px 16px 0}
  .comp-cab > div{padding:26px 16px 16px}
  .comp-cab .c360::before,.comp-cab .css::before{left:16px;right:16px}
  .ss-bloco{padding:22px 16px 18px}
  .ss-split{grid-template-columns:minmax(0,1fr)}
  .legenda{grid-template-columns:minmax(0,1fr)}
  .abas{flex-wrap:nowrap;overflow-x:auto;margin-inline:calc(var(--gutter) * -1);padding:2px var(--gutter) 6px;scrollbar-width:none}
  .abas::-webkit-scrollbar{display:none}
  form.proposta{grid-template-columns:minmax(0,1fr)}
  .rod{grid-template-columns:minmax(0,1fr)}
  .marca-texto b{font-size:25px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-delay:0s!important;transition-duration:.001ms!important}
  .espiral path{stroke-dashoffset:0}
  .trilho{animation:none;flex-wrap:wrap;width:auto;justify-content:center;row-gap:14px}
  .trilho span[aria-hidden]{display:none}
}
