/* NIO | Landing page
   Direção: Apple. Preto e branco alternados, uma cor de sinal (menta), tipografia grande.
   Escala de espaço: 4, 8, 16, 24, 32 e múltiplos de 32 entre seções. */
:root{
  --black:#000; --ink:#0A0A0B; --card-d:#121214; --line-d:rgba(255,255,255,.09); --line-d2:rgba(255,255,255,.16);
  --tx-d:#F5F5F7; --tx-d2:#A1A1A6;
  --white:#F5F5F7; --card-l:#FFFFFF; --line-l:rgba(0,0,0,.08);
  --tx-l:#1D1D1F; --tx-l2:#5B5B60;
  --sinal:#3EE8B5; --sinal-escuro:#08936C;
  --amber:#F5A524; --red:#FF6B6B;
  --r:18px; --r-lg:28px; --wrap:1200px;
  --mono:"JetBrains Mono",ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:72px;scrollbar-width:thin;scrollbar-color:rgba(128,128,128,.35) transparent}
body{background:var(--black);color:var(--tx-d);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
::-webkit-scrollbar{width:8px}
::-webkit-scrollbar-thumb{background:rgba(128,128,128,.35);border-radius:8px}
::-webkit-scrollbar-track{background:transparent}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
svg{display:block}
h1,h2,h3{line-height:1.05;letter-spacing:-.04em;font-weight:700;text-wrap:balance}
p,li{text-wrap:pretty}
strong,b{font-weight:600}

.wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px}
.grid2{display:grid;grid-template-columns:repeat(12,1fr);gap:64px 32px;align-items:center}
.grid2>*:first-child{grid-column:1 / span 6}
.grid2>*:last-child{grid-column:7 / span 6}
.grid3,.grid4{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}
.grid3>*{grid-column:span 4}
.grid4>*{grid-column:span 3}

/* temas */
.dark{background:var(--black);color:var(--tx-d)}
.light{background:var(--white);color:var(--tx-l)}
.light .sec-lead,.light .card p{color:var(--tx-l2)}
.dark .sec-lead{color:var(--tx-d2)}

/* botões */
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--sinal);color:#002A1E;font-weight:600;border-radius:999px;padding:12px 24px;font-size:15px;transition:transform .25s,box-shadow .25s,background .25s;white-space:nowrap}
.btn svg{width:20px;height:20px}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 40px rgba(62,232,181,.35)}
.btn-sm{padding:8px 16px;font-size:14px}
.btn-lg{padding:16px 32px;font-size:17px}
.link{font-weight:500;color:var(--sinal);font-size:17px}
.link span{display:inline-block;transition:transform .2s}
.link:hover span{transform:translateX(4px)}

/* nav */
.nav{position:fixed;inset:0 0 auto;z-index:50;transition:background .3s,border-color .3s;border-bottom:1px solid transparent}
.nav.solid{background:rgba(0,0,0,.86);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-color:var(--line-d)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:56px}
.logo svg{height:24px;width:auto;color:var(--tx-d)}
.nav-links{display:flex;gap:32px;font-size:13px;color:var(--tx-d2)}
.nav-links a{transition:color .2s}
.nav-links a:hover{color:var(--tx-d)}

/* sinal pulsante (o pingo do i) */
.sinal{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--sinal);box-shadow:0 0 0 0 rgba(62,232,181,.6);animation:pulso 2.2s infinite;flex:none}
@keyframes pulso{70%{box-shadow:0 0 0 10px rgba(62,232,181,0)}100%{box-shadow:0 0 0 0 rgba(62,232,181,0)}}

/* HERO: o farol */
.hero{position:relative;min-height:100vh;padding:120px 0 64px;overflow:hidden;display:flex;align-items:center}
.dados{position:absolute;inset:-16px;font-family:var(--mono);font-size:12px;line-height:28px;color:#fff;opacity:.045;white-space:pre;overflow:hidden;user-select:none;pointer-events:none}
.dados.luz{opacity:.75;color:#CFFDEF;-webkit-mask:radial-gradient(circle 280px at var(--x,50%) var(--y,50%),#000 0%,rgba(0,0,0,.35) 45%,transparent 100%);mask:radial-gradient(circle 280px at var(--x,50%) var(--y,50%),#000 0%,rgba(0,0,0,.35) 45%,transparent 100%)}
.dados.luz b{color:var(--sinal);font-weight:500}
.hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 760px 560px at 50% 50%,rgba(0,0,0,.94) 35%,rgba(0,0,0,.6) 70%,transparent 100%)}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:120px;z-index:1;background:linear-gradient(transparent,#000);pointer-events:none}
.hero-in{position:relative;z-index:2;text-align:center;width:100%}
.kicker{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--tx-d2);letter-spacing:.01em}
h1{font-size:clamp(52px,7.6vw,104px);margin:24px 0;font-weight:700;letter-spacing:-.05em;line-height:1}
.h1-b{background:linear-gradient(180deg,#FFFFFF 0%,#9A9AA0 100%);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.08em}
.lead{font-size:21px;color:var(--tx-d2);max-width:680px;margin:0 auto;line-height:1.5}
.lead strong{color:var(--tx-d)}
.cta-row{display:flex;justify-content:center;align-items:center;gap:32px;margin:32px 0 48px;flex-wrap:wrap}

/* Faro interativo */
.faro{max-width:720px;margin:0 auto;text-align:left}
.faro-in{display:flex;align-items:center;gap:16px;padding:8px 8px 8px 24px;border-radius:999px;background:rgba(22,22,24,.86);backdrop-filter:blur(20px);border:1px solid var(--line-d2);box-shadow:0 0 0 1px rgba(62,232,181,.0),0 24px 80px rgba(0,0,0,.6);transition:border-color .3s,box-shadow .3s}
.faro-in:focus-within{border-color:rgba(62,232,181,.6);box-shadow:0 0 0 4px rgba(62,232,181,.12),0 24px 80px rgba(0,0,0,.6)}
.faro-tag{display:flex;align-items:center;gap:8px;font-weight:600;font-size:15px;color:var(--sinal)}
.faro-in input{flex:1;min-width:0;background:none;border:0;outline:0;color:var(--tx-d);font:inherit;font-size:17px;padding:12px 0}
.faro-in input::placeholder{color:#7C7C82}
.faro-in button{width:44px;height:44px;border-radius:50%;background:var(--tx-d);color:#000;display:grid;place-items:center;transition:transform .2s,background .2s;flex:none}
.faro-in button:hover{transform:scale(1.06);background:var(--sinal)}
.faro-in button svg{width:20px;height:20px}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px}
.chips button{padding:8px 16px;border-radius:999px;font-size:14px;color:var(--tx-d2);border:1px solid var(--line-d2);background:rgba(18,18,20,.7);transition:color .2s,border-color .2s,background .2s}
.chips button:hover,.chips button.on{color:var(--tx-d);border-color:rgba(62,232,181,.5);background:rgba(62,232,181,.08)}
.aviso{text-align:center;font-size:13px;color:#86868B;margin-top:16px}

.resposta{display:grid;grid-template-rows:0fr;transition:grid-template-rows .6s cubic-bezier(.2,.8,.2,1)}
.resposta.aberta{grid-template-rows:1fr}
.resposta>div{overflow:hidden}
.r-card{margin-top:16px;padding:32px;border-radius:var(--r-lg);background:rgba(18,18,20,.92);border:1px solid var(--line-d);backdrop-filter:blur(20px)}
.r-pensando{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--tx-d2)}
.r-pensando i{width:6px;height:6px;border-radius:50%;background:var(--sinal);animation:pula 1s infinite}
.r-pensando i:nth-child(2){animation-delay:.15s}.r-pensando i:nth-child(3){animation-delay:.3s}
@keyframes pula{0%,100%{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}
.r-label{font-size:14px;color:var(--tx-d2);font-weight:500}
.r-num{font-size:56px;font-weight:700;letter-spacing:-.04em;line-height:1.1;margin:4px 0;font-variant-numeric:tabular-nums;color:var(--tx-d)}
.r-num.verde{color:var(--sinal)}.r-num.alerta{color:var(--amber)}
.r-sub{font-size:14px;color:var(--tx-d2)}
.r-rows{display:flex;flex-direction:column;gap:16px;margin:24px 0}
.r-row{display:grid;grid-template-columns:150px 1fr 112px;gap:16px;align-items:center;font-size:14px;color:var(--tx-d2)}
.r-row b{text-align:right;color:var(--tx-d);font-variant-numeric:tabular-nums}
.r-track{height:6px;border-radius:6px;background:rgba(255,255,255,.08);overflow:hidden}
.r-fill{height:100%;width:0;border-radius:6px;background:var(--sinal);transition:width 1s cubic-bezier(.2,.8,.2,1)}
.r-tip{font-size:15px;color:var(--tx-d);padding-top:16px;border-top:1px solid var(--line-d)}
.r-tip::before{content:"Faro sugere: ";color:var(--sinal);font-weight:600}
.r-cta{display:inline-block;margin-top:16px;color:var(--sinal);font-weight:500;font-size:15px}

/* seções */
.sec{padding:160px 0;position:relative}
.sec-head{text-align:center;max-width:800px;margin:0 auto 64px}
.eyebrow{font-size:17px;font-weight:600;margin-bottom:16px;color:var(--sinal)}
.light .eyebrow{color:var(--sinal-escuro)}
h2{font-size:clamp(40px,5vw,64px)}
.sec-lead{font-size:21px;margin-top:24px;line-height:1.5}
h3{font-size:24px;letter-spacing:-.025em;margin-bottom:8px}

.big-statement{max-width:960px;margin:0 auto 96px;text-align:center}
.big-statement h2{font-size:clamp(44px,6vw,80px)}
.dim{color:#A1A1A6}
.big-statement .sec-lead{max-width:720px;margin-left:auto;margin-right:auto}
.card{padding:32px;border-radius:var(--r-lg);background:var(--card-l);height:100%;transition:transform .35s,box-shadow .35s}
.card:hover{transform:translateY(-4px);box-shadow:0 24px 64px rgba(0,0,0,.08)}
.c-n{font-family:var(--mono);font-size:14px;color:var(--sinal-escuro);margin-bottom:32px}
.card p:last-child{font-size:16px}

/* tempo: sem x com NIO */
.tempo{display:grid;grid-template-columns:repeat(12,1fr);gap:32px;align-items:center;margin-top:24px;padding:48px;border-radius:var(--r-lg);background:#000;color:var(--tx-d)}
.tempo-txt{grid-column:span 6}
.tempo-txt h3{font-size:clamp(28px,3vw,40px);margin-bottom:16px}
.tempo-txt p:last-child{color:var(--tx-d2);font-size:16px}
.tempo-txt .eyebrow{color:var(--sinal)}
.tempo-cmp{grid-column:8 / span 5;display:flex;flex-direction:column;gap:24px}
.tc-row{display:grid;grid-template-columns:96px 1fr 48px;gap:16px;align-items:center;font-size:14px;color:var(--tx-d2)}
.tc-row b{font-size:20px;text-align:right;color:var(--tx-d)}
.tc-row b.v{color:var(--sinal)}
.tc-bar{height:10px;border-radius:10px;background:rgba(255,255,255,.08);overflow:hidden}
.tc-bar i{display:block;height:100%;width:0;border-radius:10px;transition:width 2.4s cubic-bezier(.2,.8,.2,1) .4s}
.tc-sem{background:#FF6B6B}
.tc-com{background:var(--sinal);transition-duration:.5s!important}
.tempo.in .tc-sem{width:100%}
.tempo.in .tc-com{width:4%}
.tc-leg{font-size:13px;color:#86868B}

/* Faro x CRM */
.vs{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px}
.vs>div{padding:24px;border-radius:var(--r);border:1px solid var(--line-d);font-size:15px;color:var(--tx-d2)}
.vs-h{font-size:14px;font-weight:600;color:var(--tx-d);margin-bottom:8px}
.vs-nio{border-color:rgba(62,232,181,.4)!important;background:rgba(62,232,181,.05)}
.vs-nio .vs-h{color:var(--sinal)}
.vs-extra{font-size:15px;color:var(--tx-d2);margin-top:24px}
.chat{display:flex;flex-direction:column;gap:16px;padding:32px;border-radius:var(--r-lg);background:var(--card-d);border:1px solid var(--line-d)}
.msg{max-width:88%;padding:16px 24px;border-radius:22px;font-size:15px;opacity:0;transform:translateY(12px) scale(.98);transition:opacity .5s,transform .5s}
.chat.on .msg{opacity:1;transform:none}
.chat.on .msg:nth-child(2){transition-delay:.7s}.chat.on .msg:nth-child(3){transition-delay:1.6s}.chat.on .msg:nth-child(4){transition-delay:2.3s}
.msg.me{align-self:flex-end;background:#2C2C2E;color:#fff;border-bottom-right-radius:6px}
.msg.nio{align-self:flex-start;background:#1A1A1C;border:1px solid var(--line-d);border-bottom-left-radius:6px}
.m-title{color:var(--tx-d)}
.m-title b{color:var(--sinal)}
.m-list{list-style:none;margin:16px 0;display:flex;flex-direction:column;gap:8px}
.m-list li{display:flex;justify-content:space-between;gap:24px;font-size:14px;color:var(--tx-d2);padding-bottom:8px;border-bottom:1px solid var(--line-d)}
.m-list b{color:var(--tx-d);font-variant-numeric:tabular-nums}
.m-tip{font-size:14px;color:var(--tx-d2)}

/* Financeiro com rolagem presa */
.fin{height:260vh;position:relative}
.fin-sticky{position:sticky;top:0;min-height:100vh;display:flex;align-items:center;padding:88px 0 32px}
.fin-head{text-align:center;margin-bottom:32px}
.fin-head h2{font-size:clamp(36px,4.4vw,56px)}
.dash{border-radius:var(--r-lg);background:#0C0C0E;color:var(--tx-d);padding:24px;box-shadow:0 48px 120px rgba(0,0,0,.22)}
.dash-top{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px}
.kpi{padding:24px;border-radius:var(--r);background:#151517;text-align:center}
.k-num{font-size:30px;font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.k-num.warn{color:var(--amber)}
.k-lab{font-size:14px;color:var(--tx-d2)}
.dash-body{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.panel{grid-column:span 8;padding:24px;border-radius:var(--r);background:#151517}
.panel.alerts{grid-column:span 4;display:flex;flex-direction:column;gap:16px}
.p-row{display:flex;justify-content:space-between;align-items:baseline}
.p-title{font-size:15px;font-weight:600}
.p-meta{font-family:var(--mono);font-size:13px;color:var(--sinal)}
.linha{width:100%;height:240px;margin-top:16px;overflow:visible}
.grade line{stroke:rgba(255,255,255,.06);stroke-width:1}
#ponta{filter:drop-shadow(0 0 8px rgba(62,232,181,.8))}
.alert{padding:16px;border-radius:14px;font-size:14px;color:var(--tx-d2);display:flex;flex-direction:column;gap:4px;border:1px solid;opacity:.12;transform:translateX(12px);transition:opacity .5s,transform .5s}
.alert.on{opacity:1;transform:none}
.alert b{font-size:15px}
.a-red{background:rgba(255,107,107,.07);border-color:rgba(255,107,107,.28)}.a-red b{color:#FF9B9B}
.a-amber{background:rgba(245,165,36,.07);border-color:rgba(245,165,36,.28)}.a-amber b{color:#FFC861}
.a-green{background:rgba(62,232,181,.07);border-color:rgba(62,232,181,.28)}.a-green b{color:var(--sinal)}

/* Sob medida */
.seg-tabs{display:inline-flex;gap:4px;padding:4px;margin-top:32px;border-radius:999px;background:#1C1C1E}
.seg-tabs button{padding:8px 16px;border-radius:999px;font-size:14px;font-weight:500;color:var(--tx-d2);transition:background .3s,color .3s}
.seg-tabs button.on{background:var(--tx-d);color:#000}
.morph{--acc:#3EE8B5;padding:32px;border-radius:var(--r-lg);background:var(--card-d);border:1px solid var(--line-d);transition:box-shadow .6s;box-shadow:0 0 0 1px color-mix(in srgb,var(--acc) 22%,transparent),0 32px 96px color-mix(in srgb,var(--acc) 14%,transparent)}
.m-head{display:flex;align-items:center;gap:8px}
.m-dot{width:10px;height:10px;border-radius:50%;background:var(--acc);transition:background .5s}
.m-date{font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--acc);transition:color .5s}
.m-hello{font-size:32px;font-weight:700;letter-spacing:-.03em;margin:8px 0}
.m-sum{color:var(--tx-d2);font-size:15px;min-height:48px;transition:opacity .25s}
.m-sum b{color:var(--tx-d)}
.m-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0;transition:opacity .25s}
.m-kpis div{padding:16px;border-radius:14px;background:#1A1A1C}
.m-kpis b{display:block;font-size:26px;letter-spacing:-.02em;font-weight:700}
.m-kpis span{font-size:13px;color:var(--tx-d2)}
.m-rings{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;text-align:center}
@property --p{syntax:"<number>";inherits:true;initial-value:0}
.ring{--p:0;width:88px;height:88px;margin:0 auto 8px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--acc) calc(var(--p)*1%),rgba(255,255,255,.08) 0);transition:--p 1.1s cubic-bezier(.2,.8,.2,1);position:relative;font-weight:700;font-size:18px}
.ring::before{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--card-d)}
.ring span{position:relative}
.m-rings p{font-size:13px;color:var(--tx-d2)}
.fade{opacity:0}

/* Celular */
.phone{width:300px;height:600px;margin:0 auto;border-radius:52px;padding:12px;background:#1D1D1F;box-shadow:inset 0 0 0 2px #3A3A3C,0 48px 120px rgba(0,0,0,.25);position:relative}
.ph-notch{position:absolute;top:22px;left:50%;width:92px;height:28px;border-radius:999px;background:#000;transform:translateX(-50%);z-index:2}
.ph-screen{height:100%;border-radius:40px;background:#000;color:var(--tx-d);padding:64px 16px 16px;display:flex;flex-direction:column;gap:8px;overflow:hidden;position:relative}
.ph-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:999px;background:#1C1C1E;border:1px solid rgba(62,232,181,.35);font-size:13px;color:#8E8E93;margin-bottom:8px}
.ph-h{font-size:24px;font-weight:700;letter-spacing:-.03em;margin:8px 0}
.ph-item{display:flex;gap:16px;align-items:center;padding:16px;border-radius:14px;background:#1C1C1E;font-size:13px;color:var(--tx-d2)}
.ph-item span{font-weight:600;color:var(--tx-d);font-variant-numeric:tabular-nums}
.ph-item.done{text-decoration:line-through;opacity:.5}
.ph-lock{display:flex;gap:8px;align-items:center;padding:16px;border-radius:14px;font-size:12px;color:#8E8E93;border:1px dashed var(--line-d2);margin-top:8px}
.ph-lock svg{width:16px;height:16px;flex:none}
.ph-nav{position:absolute;left:16px;right:16px;bottom:16px;display:flex;justify-content:space-around;align-items:center;padding:12px;border-radius:24px;background:#1C1C1E}
.ph-nav i{width:20px;height:20px;border-radius:6px;background:rgba(255,255,255,.14)}
.ph-nav i:first-child{background:var(--sinal)}
.ph-nav b{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--tx-d);color:#000;font-size:22px;font-weight:500}
.roles{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}
.role{padding:8px 16px;border-radius:999px;font-size:14px;font-weight:500;background:var(--card-l);color:var(--tx-l)}
.role::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:8px;vertical-align:1px}
.r1::before{background:var(--tx-l)}.r2::before{background:var(--sinal-escuro)}.r3::before{background:#2F7CF6}.r4::before{background:var(--amber)}

/* Prova */
.stat{padding:32px;border-radius:var(--r-lg);background:var(--card-d);border:1px solid var(--line-d);height:100%}
.s-num{font-size:52px;font-weight:700;letter-spacing:-.045em;line-height:1.1;margin-bottom:16px;color:var(--sinal);font-variant-numeric:tabular-nums}
.stat p:last-child{color:var(--tx-d2);font-size:15px}

/* Objeções */
.objs{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}
.obj{grid-column:span 6;padding:32px;border-radius:var(--r-lg);background:var(--card-l);position:relative;overflow:hidden}
.o-q{font-size:22px;font-weight:600;letter-spacing:-.02em;line-height:1.3;color:var(--tx-l);margin-bottom:16px;position:relative}
.o-q::after{content:"";position:absolute;left:0;top:50%;height:2px;width:0;background:var(--red);opacity:.7;transition:width .6s .9s cubic-bezier(.2,.8,.2,1)}
.o-a{font-size:16px;color:var(--tx-l2);opacity:0;transform:translateY(8px);transition:opacity .6s 1.3s,transform .6s 1.3s}
.obj.in .o-a{opacity:1;transform:none}
.o-a::before{content:"Na real: ";font-weight:600;color:var(--sinal-escuro)}

/* Passos */
.steps{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;position:relative}
.steps-line{position:absolute;top:28px;left:16.66%;right:16.66%;height:2px;background:rgba(255,255,255,.1);border-radius:2px}
.steps-line i{display:block;height:100%;width:0;background:var(--sinal);border-radius:2px;box-shadow:0 0 16px rgba(62,232,181,.6)}
.step{grid-column:span 4;text-align:center;padding:0 16px;position:relative}
.step .n{display:inline-grid;place-items:center;width:56px;height:56px;border-radius:50%;margin-bottom:24px;font-weight:600;font-size:18px;background:#000;border:2px solid rgba(62,232,181,.6);color:var(--sinal)}
.step p{color:var(--tx-d2);font-size:16px}

/* FAQ */
.faq-wrap{max-width:820px}
.faq{display:flex;flex-direction:column;gap:8px}
details{border-radius:var(--r);background:var(--card-l)}
summary{list-style:none;cursor:pointer;padding:24px 32px;font-weight:600;font-size:18px;display:flex;justify-content:space-between;align-items:center;gap:16px;color:var(--tx-l)}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-size:26px;font-weight:300;color:var(--tx-l2);transition:transform .3s}
details[open] summary::after{transform:rotate(45deg)}
details p{padding:0 32px 24px;color:var(--tx-l2);font-size:16px}

/* CTA final */
.cta-final{position:relative;padding:192px 0;text-align:center;overflow:hidden}
.cta-final::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 640px 360px at 50% 50%,rgba(0,0,0,.9) 30%,transparent 100%)}
.cta-in{position:relative;z-index:2;max-width:860px}
.cta-in h2{font-size:clamp(44px,6vw,80px)}
.cta-in .sec-lead{margin-bottom:48px;color:var(--tx-d2)}

/* rodapé */
.foot{border-top:1px solid var(--line-d);padding:32px 0;background:#000}
.foot-in{display:flex;align-items:center;gap:24px;font-size:13px;color:#86868B}
.foot-logo{height:20px;width:auto;color:var(--tx-d)}
.foot-c{margin-left:auto}

/* WhatsApp flutuante */
.wa-float{position:fixed;right:24px;bottom:24px;z-index:60;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#25D366;color:#fff;box-shadow:0 8px 32px rgba(0,0,0,.3);transition:transform .25s,opacity .3s;opacity:0;pointer-events:none}
.wa-float.on{opacity:1;pointer-events:auto}
.wa-float:hover{transform:scale(1.08)}
.wa-float svg{width:28px;height:28px}

/* revelar ao rolar */
.reveal{opacity:0;transform:translateY(32px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1)}
.reveal.in{opacity:1;transform:none}
.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}
.obj.in .o-q::after{width:0}

/* responsivo */
@media (max-width:1024px){
  .nav-links{display:none}
  .grid2{grid-template-columns:1fr}
  .grid2>*:first-child,.grid2>*:last-child{grid-column:auto}
  #perfis .phone{order:2}
  .grid3>*,.obj{grid-column:span 12}
  .grid4>*{grid-column:span 6}
  .panel,.panel.alerts{grid-column:span 12}
  .dash-top{grid-template-columns:repeat(2,1fr)}
  .fin{height:auto}
  .fin-sticky{position:relative;padding:128px 0}
  .alert{opacity:1;transform:none}
}
@media (max-width:640px){
  body{font-size:16px}
  .wrap{padding:0 24px}
  .hero{padding:96px 0 48px}
  h1{font-size:48px}
  .lead,.sec-lead{font-size:18px}
  .cta-row{gap:24px;margin:32px 0}
  .btn-lg{width:100%;justify-content:center;padding:16px 24px;font-size:16px}
  .faro-in{padding:4px 4px 4px 16px;gap:8px}
  .faro-in input{font-size:16px}
  .faro-tag{font-size:14px}
  .r-card{padding:24px}
  .r-num{font-size:40px}
  .r-row{grid-template-columns:96px 1fr 92px;gap:8px;font-size:13px}
  .sec{padding:112px 0}
  .sec-head,.big-statement{margin-bottom:48px}
  .grid4>*{grid-column:span 12}
  .vs{grid-template-columns:1fr}
  .dash{padding:16px}
  .kpi{padding:16px}
  .k-num{font-size:22px}
  .linha{height:160px}
  .steps-line{display:none}
  .step{grid-column:span 12}
  .steps{gap:48px}
  .m-kpis b{font-size:20px}
  .ring{width:72px;height:72px;font-size:15px}
  .cta-final{padding:128px 0}
  .foot-in{flex-wrap:wrap;gap:8px 16px}
  .btn-sm{padding:8px 12px;font-size:13px}
  .dados.luz{-webkit-mask:radial-gradient(circle 150px at var(--x,50%) var(--y,50%),#000 0%,transparent 100%);mask:radial-gradient(circle 150px at var(--x,50%) var(--y,50%),#000 0%,transparent 100%)}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .reveal,.msg,.o-a,.alert{opacity:1;transform:none}
}
@media (max-width:1024px){
  .tempo{padding:32px}
  .tempo-txt,.tempo-cmp{grid-column:span 12}
}
@media (max-width:640px){
  .grid3,.grid4,.objs,.steps,.tempo,.dash-body{grid-template-columns:1fr;gap:16px}
  .grid3>*,.grid4>*,.obj,.step,.tempo-txt,.tempo-cmp,.panel,.panel.alerts{grid-column:auto}
  .steps{gap:48px}
  .tempo{padding:24px;gap:32px}
  .tc-row{grid-template-columns:80px 1fr 40px;gap:8px}
}
/* ajustes da revisão (31/10/2026) */
.grid2>*{min-width:0}
.hero,.cta-final{overflow:hidden;max-width:100vw}
.s-num{white-space:nowrap;font-size:clamp(36px,3.6vw,52px)}
.tc-leg,.aviso{font-size:14px;color:#A8ABB5}
.m-kpis span,.m-rings p{font-size:14px;color:#A8ABB5}
.vs-extra{margin-top:32px}
.chat.on .msg:nth-child(2){transition-delay:.4s}.chat.on .msg:nth-child(3){transition-delay:.8s}.chat.on .msg:nth-child(4){transition-delay:1.1s}
@media (max-width:640px){
  .seg-tabs{max-width:100%;overflow-x:auto}
  .chips{display:grid;grid-template-columns:1fr 1fr}
  .chips button{padding:8px 8px}
  .cta-row{gap:16px}
}
.m-kpis b{white-space:nowrap;font-size:clamp(18px,2vw,26px)}
/* ajustes da revisão 2 (31/10/2026) */
html,body{overflow-x:clip}
.dados{inset:0}
.light .dim{color:#5B5E6B}
#faro .sec-lead{max-width:34em}
.s-num{font-size:clamp(32px,3.2vw,48px)}
.alert{opacity:0}
.cta-in .sec-lead{text-wrap:balance;max-width:30em;margin-left:auto;margin-right:auto}
@media (max-width:640px){
  .wa-float{right:16px;bottom:16px;width:52px;height:52px}
}
/* vira app no celular */
.app-note{display:flex;gap:16px;align-items:flex-start;margin-top:24px;padding:16px 24px;border-radius:var(--r);background:var(--card-l)}
.app-note p{font-size:16px;color:var(--tx-l2)}
.app-note strong{color:var(--tx-l)}
.app-ic{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#000;color:var(--sinal)}
.app-ic svg{width:22px;height:22px}
/* ajustes da revisão 3 (31/10/2026) */
.nw{white-space:nowrap}
.tc-leg,.vs-extra,.alert span,.sec-lead,details p{text-wrap:pretty}
.m-list li b{white-space:nowrap}
.btn-lg svg{width:22px;height:22px;flex:none}
.ph-item.done{text-decoration:none;opacity:.6}
.ph-item .ok{margin-left:auto;font-style:normal;color:var(--sinal);font-weight:700}
.aviso{color:#A8ABB5}
h1{margin:16px 0}
.hero{padding-top:104px}
.cta-row{margin:32px 0 32px}
@media (max-width:640px){
  .msg,.msg.nio{max-width:100%}
  .cta-final{padding-bottom:144px}
  .foot{padding-bottom:88px}
}
/* ajustes da revisão 4 (31/10/2026) */
.r-sub,.r-cta,.alert b,.alert span{text-wrap:balance}
#sob-medida h2{font-size:clamp(36px,4vw,52px)}
.m-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
.m-kpis div{min-width:0}
.wa-float.fora{opacity:0;pointer-events:none}
@media (min-width:1025px){.wa-float.fora{opacity:1;pointer-events:auto}}
@media (max-width:640px){
  h2{font-size:34px}
  .big-statement h2,.cta-in h2{font-size:38px}
  .m-kpis{gap:8px}
  .m-kpis div{padding:12px 8px}
  .m-kpis b{font-size:16px}
  .m-kpis span{font-size:12px;line-height:1.35;display:block}
  .morph{padding:24px 16px}
  .dash{box-shadow:none}
  .phone{box-shadow:inset 0 0 0 2px #3A3A3C}
}
/* orçamentos e contratos pelo Faro */
.r-doc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:24px 0 16px}
.r-doc div{padding:12px 16px;border-radius:12px;background:#1C1C1E}
.r-doc span{display:block;font-size:12px;color:#A8ABB5}
.r-doc b{font-size:14px;color:var(--tx-d);font-weight:500}
.r-acoes{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}
.r-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;background:var(--sinal);color:#002A1E;font-weight:600;font-size:14px}
.r-btn svg{width:16px;height:16px}
.r-btn.ghost{background:transparent;color:var(--tx-d);border:1px solid var(--line-d2)}
.faz{margin-top:32px;padding:24px;border-radius:var(--r);background:var(--card-d);border:1px solid var(--line-d)}
.faz-h{font-size:14px;font-weight:600;color:var(--sinal);margin-bottom:16px}
.faz ul{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.faz li{font-size:15px;color:var(--tx-d2);line-height:1.4}
.faz li b{display:block;color:var(--tx-d);font-size:17px}
.faz-p{margin-top:16px;font-size:15px;color:var(--tx-d2);text-wrap:pretty}
@media (max-width:640px){
  .r-doc{grid-template-columns:1fr}
  .faz ul{grid-template-columns:1fr;gap:8px}
}
/* sistema real em operação */
.real{display:grid;grid-template-columns:repeat(12,1fr);gap:32px;align-items:center;margin-bottom:48px}
.real-win{grid-column:1 / span 7;border-radius:var(--r-lg);overflow:hidden;background:#1C1C1E;border:1px solid var(--line-d2);box-shadow:0 0 0 1px rgba(62,232,181,.12),0 40px 120px rgba(62,232,181,.12)}
.real-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#1C1C1E;border-bottom:1px solid var(--line-d)}
.real-bar>i{width:12px;height:12px;border-radius:50%;background:#3A3A3C}
.real-live{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--sinal)}
.real-view{position:relative;height:440px;overflow:hidden;background:#fff}
.real-view img{display:block;width:100%;height:auto;animation:rolaReal 14s ease-in-out infinite;animation-play-state:paused}
.real.in .real-view img{animation-play-state:running}
@keyframes rolaReal{0%,18%{transform:translateY(0)}50%,68%{transform:translateY(calc(-100% + 440px))}100%{transform:translateY(0)}}
.real-scan{position:absolute;left:0;right:0;top:0;height:120px;background:linear-gradient(180deg,transparent,rgba(62,232,181,.18),transparent);animation:scan 3.5s ease-in-out infinite;pointer-events:none}
@keyframes scan{0%{transform:translateY(-120px)}100%{transform:translateY(440px)}}
.real-txt{grid-column:8 / span 5}
.real-q{font-size:28px;font-weight:600;letter-spacing:-.02em;line-height:1.25;margin-bottom:16px;color:var(--tx-d)}
.real-txt p{color:var(--tx-d2);font-size:16px}
.real-txt .real-leg{margin-top:16px;font-size:13px;color:#A8ABB5}
@media (max-width:1024px){.real-win,.real-txt{grid-column:span 12}}
@media (max-width:640px){.real{grid-template-columns:1fr;gap:24px}.real-win,.real-txt{grid-column:auto}.real-view{height:360px}
  @keyframes rolaReal{0%,18%{transform:translateY(0)}50%,68%{transform:translateY(calc(-100% + 360px))}100%{transform:translateY(0)}}
  .real-q{font-size:22px}}
.real-txt .real-q{font-size:clamp(24px,2.4vw,32px);color:var(--tx-d);font-weight:600}
/* robô de conferência (31/10/2026): verde legível no claro; sem botão flutuante até 1024px (o botão do topo já leva ao WhatsApp) */
:root{--sinal-escuro:#067A5A}
@media (max-width:1024px){.wa-float{display:none}}
/* ajustes da revisão 5 (31/10/2026) */
.real-view picture{display:block}
@media (max-width:640px){.real-view img{animation:none}.real-view{height:auto;max-height:none}}
#faro .grid2{align-items:start}
#sob-medida h2{text-wrap:balance}
.r-acoes .r-btn{flex:1 1 0;justify-content:center;white-space:nowrap}
@media (max-width:1024px){.fin-sticky{padding:112px 0 64px}}
/* ajustes da revisão 7 (31/10/2026) */
.r-per{font-size:20px;font-weight:600;color:var(--tx-d2);margin-left:4px}
summary{text-align:left;line-height:1.35}
@media (max-width:640px){
  .dados{opacity:.03}
  .dados.luz{opacity:.4}
  .hero::before{background:radial-gradient(ellipse 420px 640px at 50% 45%,rgba(0,0,0,.96) 45%,rgba(0,0,0,.7) 75%,transparent 100%)}
  .sec{padding:80px 0}
  .fin-sticky{padding:80px 0 56px}
  summary{padding:20px 24px;font-size:17px;min-height:64px}
  details p{padding:0 24px 20px}
}
/* ajustes da revisão 8 (31/10/2026) */
@media (min-width:1025px){#faro .chat{position:sticky;top:96px}}
.real-txt .real-leg{font-size:14px;color:#B4B6C0}
