:root{
  --green:#2ECC71;
  --green-hi:#3ADB80;
  --green-ink:#137A42;
  --ink:#0A1A2B;
  --ink-2:#10263D;
  --ink-line:rgba(234,241,245,.12);
  --ink-text:#EAF1F5;
  --ink-muted:#9DB2C1;
  --gold:#F2B53A;
  --red:#E5484D;
  --wa:#25D366;

  --bg:#F5F8F6;
  --bg-2:#EBF1ED;
  --surface:#FFFFFF;
  --line:#D9E3DD;
  --text:#0E1C27;
  --muted:#51636F;
  --accent-text:var(--green-ink);
  --chip:#E3F6EB;
  --bad-bg:#FBF3F3;
  --shadow:0 1px 2px rgba(10,26,43,.06),0 18px 40px -18px rgba(10,26,43,.25);

  --f-display:"Outfit","Instrument Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --f-body:"Instrument Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --f-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  /* Página sempre clara, independente do modo escuro do sistema: as faixas
     escuras (hero, comparador, CTA final, rodapé) são escuras por design.
     "only" proíbe o navegador de escurecer a página à força (tema escuro
     automático do Chrome no Android, Samsung Internet). */
  color-scheme:only light;
}

*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:400 1.0625rem/1.6 var(--f-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--f-display);margin:0;text-wrap:balance;letter-spacing:-.02em}
p{margin:0}
.wrap{max-width:1200px;margin-inline:auto;padding-inline:20px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}
.ic{width:1.15em;height:1.15em;flex:none;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ic.fill{fill:currentColor;stroke:none}

/* ---------- botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font:600 1rem/1.1 var(--f-body);padding:1rem 1.35rem;border-radius:14px;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .15s ease,background-color .2s ease,border-color .2s ease}
.btn-primary{background:var(--green);color:#052616;box-shadow:0 12px 30px -12px rgba(46,204,113,.75),inset 0 -2px 0 rgba(0,0,0,.14)}
.btn-primary:hover{background:var(--green-hi);transform:translateY(-1px)}
.btn-lg{font-size:1.08rem;padding:1.1rem 1.6rem}
.btn-ghost{color:var(--ink-text);border-color:var(--ink-line);background:rgba(255,255,255,.04)}
.btn-ghost:hover{background:rgba(255,255,255,.09)}
.btn-line{color:var(--text);border-color:var(--line);background:var(--surface)}
.btn-line:hover{border-color:var(--accent-text)}

/* ---------- promo + header ---------- */
.promo{display:block;background:var(--green);color:#052616;font:600 .9rem/1.3 var(--f-body);text-align:center;padding:.6rem 16px;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.promo b{display:inline-block;background:#052616;color:var(--green);font:700 .7rem/1 var(--f-mono);letter-spacing:.06em;padding:.32rem .45rem;border-radius:5px;margin-right:.5rem;vertical-align:1px}
.promo u{text-underline-offset:3px;margin-left:.4rem}
.promo .ic{vertical-align:-3px;margin-left:.2rem}
.promo .short{display:none}

/* ---------- HERO ---------- */
.hero{position:relative;background:radial-gradient(900px 520px at 78% 18%,rgba(46,204,113,.20),transparent 60%),radial-gradient(700px 500px at 0% 100%,rgba(38,112,196,.20),transparent 60%),var(--ink);color:var(--ink-text);overflow:hidden;color-scheme:dark}
.hero-plan{position:absolute;inset:0;width:100%;height:100%;opacity:.55;pointer-events:none}
.hero-grid{position:relative;display:grid;grid-template-columns:1.12fr .88fr;gap:48px;align-items:center;padding-block:64px 44px}
.kicker{display:inline-flex;align-items:center;gap:.55rem;font:600 .78rem/1 var(--f-body);letter-spacing:.12em;text-transform:uppercase;color:var(--green);background:rgba(46,204,113,.10);border:1px solid rgba(46,204,113,.28);padding:.55rem .8rem;border-radius:999px}
.kicker i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(46,204,113,.2)}
.h1{font-size:clamp(2.35rem,4.3vw,3.55rem);font-weight:800;line-height:1.02;letter-spacing:-.035em;margin-top:22px}
.h1 .l2{display:block;color:var(--green)}
.hero-sub{font-size:1.15rem;line-height:1.6;color:var(--ink-muted);max-width:36em;margin-top:22px}
.hero-sub strong{color:var(--ink-text);font-weight:600}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.assure{display:flex;flex-wrap:wrap;gap:8px 18px;margin:16px 0 0;font-size:.93rem;color:var(--ink-muted);list-style:none;padding:0}
.assure li{display:flex;gap:.45rem;align-items:center}
.assure .ic{color:var(--green)}
.legal{display:flex;gap:14px;align-items:center;margin-top:24px;padding:14px 16px;max-width:560px;border-radius:16px;border:1px solid rgba(242,181,58,.38);background:linear-gradient(90deg,rgba(242,181,58,.12),rgba(242,181,58,.03))}
.legal .seal{width:44px;height:44px;border-radius:50%;flex:none;display:grid;place-items:center;color:#3D2800;background:radial-gradient(circle at 35% 30%,#FFE39A,var(--gold) 62%,#C98B12);box-shadow:0 0 0 4px rgba(242,181,58,.18)}
.legal .seal .ic{width:22px;height:22px}
.legal strong{display:block;font:700 1rem/1.25 var(--f-display);color:var(--ink-text)}
.legal span{display:block;font-size:.86rem;line-height:1.4;color:var(--ink-muted);margin-top:2px}
.legal em{font-style:normal;font-family:var(--f-mono);font-size:.8rem;color:#F7CD74}
.stores{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:22px}
/* Selos oficiais da Apple e do Google, usados sem alteração (assets/img/badges).
   O PNG do Google tem margem transparente em cima e embaixo (29 de 250 px): a
   altura maior e a margem negativa deixam a parte visível com a mesma altura do
   selo da Apple, como as duas diretrizes pedem quando aparecem juntos. */
.store-badge{display:inline-block;line-height:0;border-radius:8px}
.store-badge img{display:block;height:44px;width:auto}
.store-badge-play img{height:57.3px;margin:-6.65px 0}
.store{display:inline-flex;align-items:center;gap:.6rem;box-sizing:border-box;height:44px;padding:0 .95rem 0 .75rem;border-radius:12px;border:1px solid var(--ink-line);background:rgba(255,255,255,.05);color:var(--ink-text);text-decoration:none;transition:background-color .2s}
.store:hover{background:rgba(255,255,255,.1)}
.store .ic{width:22px;height:22px}
.store small{display:block;font-size:.66rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);line-height:1.1}
.store strong{display:block;font:600 .98rem/1.15 var(--f-display)}

.stage{position:relative;width:min(100%,480px);margin-inline:auto}
.phone{position:relative;width:60%;aspect-ratio:9/19;border-radius:40px;background:#04070B;padding:9px;box-shadow:0 0 0 1px rgba(255,255,255,.14),0 40px 80px -30px rgba(0,0,0,.8),0 0 90px -20px rgba(46,204,113,.35)}
.screen{position:relative;height:100%;border-radius:32px;overflow:hidden;background:#1b2530 url("../img/home-v2/sala.webp") center/cover}
.island{position:absolute;top:9px;left:50%;transform:translateX(-50%);width:34%;height:20px;background:#04070B;border-radius:12px;z-index:3}
.cam-top{position:absolute;top:38px;left:10px;right:10px;display:flex;justify-content:space-between;gap:6px;z-index:2}
.pill{display:inline-flex;align-items:center;gap:.35rem;font:600 .66rem/1 var(--f-mono);color:#fff;background:rgba(5,10,16,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:.4rem .5rem;border-radius:7px;white-space:nowrap}
.rec-dot{width:7px;height:7px;border-radius:50%;background:var(--red);animation:blink 1.2s steps(2) infinite}
@keyframes blink{50%{opacity:.25}}
.wave{position:absolute;left:50%;transform:translateX(-50%);bottom:156px;display:flex;align-items:center;gap:3px;height:34px;padding:0 10px;background:rgba(5,10,16,.45);border-radius:999px;z-index:2}
.wave span{width:3px;height:100%;border-radius:2px;background:var(--green);transform-origin:center;animation:wv 1s ease-in-out infinite;transform:scaleY(.35)}
@keyframes wv{0%,100%{transform:scaleY(.25)}50%{transform:scaleY(.95)}}
.stamp{position:absolute;left:8px;right:8px;bottom:86px;font:500 .6rem/1.45 var(--f-mono);color:#fff;background:rgba(0,0,0,.42);padding:.45rem .55rem;border-radius:6px;z-index:2;text-shadow:0 1px 1px rgba(0,0,0,.6)}
.stamp .ic{width:10px;height:10px;vertical-align:-1px;color:var(--green)}
.cam-bar{position:absolute;left:0;right:0;bottom:0;height:78px;background:linear-gradient(transparent,rgba(0,0,0,.65));display:flex;align-items:center;justify-content:space-around;padding-bottom:6px;z-index:2}
.thumb{width:34px;height:34px;border-radius:8px;border:2px solid #fff;background:url("../img/cozinha-vistoria.webp") center/cover}
.shutter{width:54px;height:54px;border-radius:50%;border:4px solid #fff;display:grid;place-items:center}
.shutter::after{content:"";width:42px;height:42px;border-radius:50%;background:#fff}
.micbtn{position:relative;width:38px;height:38px;border-radius:50%;background:var(--green);color:#052616;display:grid;place-items:center}
.micbtn::before{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--green);animation:ring 1.6s ease-out infinite}
@keyframes ring{from{transform:scale(.8);opacity:.9}to{transform:scale(1.35);opacity:0}}
.bubble{position:absolute;top:24%;right:0;width:54%;background:rgba(16,38,61,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--ink-line);border-radius:18px;padding:14px 16px;font-size:.86rem;line-height:1.45;color:var(--ink-text);box-shadow:0 24px 48px -20px rgba(0,0,0,.75)}
.who{display:flex;align-items:center;gap:.4rem;font:600 .64rem/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:7px}
.who.ai{color:var(--green);margin:14px 0 7px}
.bubble q{quotes:"“" "”";color:var(--ink-text)}
.formal{padding-left:10px;border-left:2px solid var(--green);color:#D5E8DD;font-size:.84rem}
.formal .s{background:linear-gradient(transparent 60%,rgba(46,204,113,.28) 60%) no-repeat 0 0/0% 100%;animation:ink .9s ease-out forwards}
.formal .s:nth-child(1){animation-delay:.6s}.formal .s:nth-child(2){animation-delay:1.4s}.formal .s:nth-child(3){animation-delay:2.2s}
@keyframes ink{to{background-size:100% 100%}}

.proof{position:relative;border-top:1px solid var(--ink-line)}
.proof .wrap{display:grid;grid-template-columns:repeat(4,1fr)}
.proof .wrap > div{padding:22px 18px;border-left:1px solid var(--ink-line)}
.proof .wrap > div:first-child{border-left:0;padding-left:0}
.proof strong{display:block;font:700 1.7rem/1.1 var(--f-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.proof span{font-size:.9rem;color:var(--ink-muted)}

/* ---------- seções ---------- */
.sec{padding-block:96px}
.sec-alt{background:var(--bg-2)}
.sec-head{max-width:760px;margin-bottom:48px}
.sec-head.center{margin-inline:auto;text-align:center}
.eyebrow{font:600 .78rem/1 var(--f-body);letter-spacing:.13em;text-transform:uppercase;color:var(--accent-text);margin-bottom:14px}
.h2{font-size:clamp(1.95rem,3.4vw,2.85rem);font-weight:700;line-height:1.08;letter-spacing:-.03em}
.lead{font-size:1.12rem;color:var(--muted);margin-top:16px;max-width:40em}
.center .lead{margin-inline:auto}
.note{font:500 .8rem/1.4 var(--f-mono);color:var(--muted)}

/* por que o flash */
.why{display:grid}
.why-row{display:grid;grid-template-columns:200px 1fr 1fr;column-gap:16px}
.why-row > div{padding:18px 22px;display:flex;gap:.65rem;align-items:flex-start;line-height:1.5}
.why-row .topic{padding-left:0;font:600 1rem/1.35 var(--f-display);letter-spacing:-.01em;border-bottom:1px solid var(--line)}
.why-row .bad{color:var(--muted);border-bottom:1px solid var(--line);font-size:.98rem}
.why-row .bad .ic{color:var(--red);margin-top:.2em}
.why-row .good{background:var(--ink);color:var(--ink-text);border-bottom:1px solid var(--ink-line);font-size:.98rem;color-scheme:dark}
.why-row .good .ic{color:var(--green);margin-top:.2em}
.why-row .good b{color:#fff}
.why-head > div{border-bottom:0;padding-block:20px 16px}
.why-head .bad{font:600 .8rem/1.2 var(--f-body);letter-spacing:.1em;text-transform:uppercase;align-items:center;border-bottom:1px solid var(--line)}
.why-head .good{border-radius:22px 22px 0 0;align-items:center;font:700 1.15rem/1 var(--f-display);border-bottom:1px solid var(--ink-line)}
.why-head .good img{width:26px;height:26px;background:#fff;border-radius:7px;padding:3px}
.why-row:last-child > div{border-bottom:0}
.why-row:last-child .good{border-radius:0 0 22px 22px}
.tag-sm{display:none}
.why-cta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:36px}
.why-cta .note{margin-left:auto}

/* passos */
.steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);counter-reset:st;border-top:1px solid var(--line)}
.steps li{position:relative;padding:30px 24px 0 0;counter-increment:st}
.steps li::before{content:counter(st,decimal-leading-zero);display:block;font:600 .85rem/1 var(--f-mono);color:var(--accent-text);margin-bottom:18px}
.steps li::after{content:"";position:absolute;top:-5px;left:0;width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px var(--bg)}
.steps .ic{width:30px;height:30px;color:var(--text)}
.steps h3{font-size:1.2rem;margin:14px 0 8px}
.steps p{color:var(--muted);font-size:.98rem}
.time{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:44px;padding:22px 26px;background:var(--surface);border:1px solid var(--line);border-radius:18px}
.time-bars{flex:1;min-width:240px;display:grid;gap:10px}
.tb{display:grid;grid-template-columns:130px 1fr;gap:12px;align-items:center;font-size:.92rem}
.tb i{display:block;height:14px;border-radius:7px}
.tb .old{background:repeating-linear-gradient(135deg,#C7D2CC 0 6px,#DCE4DF 6px 12px);width:100%}
.tb .new{background:var(--green);width:17%}
.time-copy{max-width:360px;color:var(--muted);font-size:.95rem}
.time-copy strong{color:var(--text)}

/* para quem */
.personas{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.persona{background:var(--surface);border:1px solid var(--line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column}
.persona img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.persona-b{padding:20px 20px 22px;display:flex;flex-direction:column;gap:10px;flex:1}
.persona h3{font-size:1.15rem;line-height:1.25}
.persona p{font-size:.95rem;line-height:1.5;color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:2px 0 0}
.chips li{font:600 .74rem/1 var(--f-body);padding:.45rem .6rem;border-radius:999px;background:var(--chip);color:var(--accent-text)}
.persona a{margin-top:auto;padding-top:6px;display:inline-flex;align-items:center;gap:.35rem;font:600 .9rem/1 var(--f-body);color:var(--accent-text);text-decoration:none}
.persona a:hover{text-decoration:underline;text-underline-offset:3px}

/* recursos: dobras com a tela funcionando */
.feat{display:grid;grid-template-columns:1fr 1.08fr;gap:56px;align-items:center;padding-block:56px;border-top:1px solid var(--line)}
.feat:first-of-type{border-top:0;padding-top:0}
.feat.rev .fv-box{order:-1}
.feat-copy h3{font-size:clamp(1.55rem,2.4vw,2.05rem);line-height:1.14;letter-spacing:-.025em}
.feat-copy > p:not(.eyebrow):not(.note){color:var(--muted);margin-top:14px;font-size:1.05rem;max-width:34em}
.feat-copy .ticks{margin-top:20px}
.new-pill{display:inline-block;font:700 .66rem/1 var(--f-mono);letter-spacing:.1em;color:#052616;background:var(--green);padding:.38rem .5rem;border-radius:6px;margin-bottom:14px}
.ticks{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.ticks li{display:flex;gap:.6rem;align-items:flex-start;line-height:1.45}
.ticks .ic{color:var(--accent-text);margin-top:.18em}
.fv-box{position:relative;min-height:440px;border-radius:28px;overflow:hidden;display:grid;place-items:center;padding:36px 24px;color:var(--ink-text);background:radial-gradient(420px 260px at 72% 18%,rgba(46,204,113,.22),transparent 70%),linear-gradient(160deg,#12294A,#0A1A2B);box-shadow:var(--shadow);color-scheme:dark}
.fv-box::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(234,241,245,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(234,241,245,.05) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(circle,#000 35%,transparent 78%);mask-image:radial-gradient(circle,#000 35%,transparent 78%)}
.fv-box > *{position:relative}
.dev{width:236px;border-radius:36px;background:#04070B;padding:8px;box-shadow:0 0 0 1px rgba(255,255,255,.14),0 34px 70px -28px rgba(0,0,0,.85)}
.dev-screen{position:relative;height:440px;border-radius:29px;overflow:hidden;background:#F3F6F4;display:flex;flex-direction:column;color:#14212C}
.dev-island{position:absolute;top:8px;left:50%;transform:translateX(-50%);width:34%;height:18px;border-radius:10px;background:#04070B;z-index:3}
.appbar{display:flex;align-items:center;justify-content:space-between;padding:32px 14px 10px;background:#fff;font:600 .8rem/1 var(--f-body);border-bottom:1px solid #E5ECE8}
.appbar .ic{width:15px;height:15px;color:#5B6B76}
.scan-photo{position:relative;flex:1;background:#ccc url("../img/cozinha-vistoria.webp") center 30%/cover;overflow:hidden}
.scanline{position:absolute;left:0;right:0;top:12%;height:3px;background:var(--green);box-shadow:0 0 16px 4px rgba(46,204,113,.8);animation:scan 3.2s cubic-bezier(.45,0,.55,1) infinite alternate}
@keyframes scan{to{top:86%}}
.ptag{position:absolute;display:flex;align-items:center;gap:.3rem;background:rgba(255,255,255,.95);color:#0E6B39;font:700 .62rem/1 var(--f-body);padding:.42rem .5rem;border-radius:7px;box-shadow:0 4px 10px rgba(0,0,0,.18);animation:tagpop 3.2s ease-in-out infinite}
.ptag .ic{width:11px;height:11px}
.ptag.a{top:22%;left:9%}.ptag.b{top:8%;right:8%;animation-delay:.6s}.ptag.c{bottom:18%;left:14%;animation-delay:1.2s}
@keyframes tagpop{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
.dev-cta{margin:10px 12px 14px;height:38px;border-radius:10px;background:var(--green);color:#052616;display:flex;align-items:center;justify-content:center;gap:.4rem;font:700 .74rem/1 var(--f-body)}
.spin{width:12px;height:12px;border-radius:50%;border:2px solid rgba(5,38,22,.25);border-top-color:#052616;animation:spin .9s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.float{position:absolute;background:#fff;color:#14212C;border-radius:16px;padding:14px;box-shadow:0 26px 50px -20px rgba(0,0,0,.7);font-size:.78rem;line-height:1.4}
.float-h{display:flex;justify-content:space-between;align-items:center;gap:8px;font:700 .66rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:#5B6B76;margin-bottom:10px}
.float-h b{color:var(--green-ink)}
.cl{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.cl li{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px 9px;border-radius:8px;background:#F4F7F5;font-weight:600;font-size:.74rem}
.ok{font:700 .58rem/1 var(--f-mono);letter-spacing:.04em;color:#0E6B39;background:#DDF5E7;padding:.3rem .4rem;border-radius:5px;text-transform:uppercase;white-space:nowrap}
.f-check{right:5%;bottom:7%;width:252px}
.cl2{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.cl2 li{display:flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600}
.cl2 .ic{width:17px;height:17px;padding:2px;border-radius:50%;background:#DDF5E7;color:#0E6B39;animation:tick 6s ease-in-out infinite}
.cl2 li:nth-child(2) .ic{animation-delay:.4s}.cl2 li:nth-child(3) .ic{animation-delay:.8s}.cl2 li:nth-child(4) .ic{animation-delay:1.2s}.cl2 li:nth-child(5) .ic{animation-delay:1.6s}.cl2 li:nth-child(6) .ic{animation-delay:2s}
@keyframes tick{0%,5%{background:#EEF2F0;color:#B7C4BD}12%,100%{background:#DDF5E7;color:#0E6B39}}
.resumo{margin-top:11px;padding-top:10px;border-top:1px solid #E7ECEA;font-size:.74rem;line-height:1.45;color:#33434E}
.resumo small{display:block;font:700 .58rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--green-ink);margin-bottom:5px}
.gchip{position:absolute;display:flex;align-items:center;gap:.45rem;background:rgba(16,38,61,.92);border:1px solid var(--ink-line);color:var(--ink-text);font:600 .74rem/1.2 var(--f-body);padding:.6rem .75rem;border-radius:12px;box-shadow:0 16px 30px -14px rgba(0,0,0,.7)}
.gchip .ic{color:var(--green)}
.gchip.amber{background:rgba(58,40,6,.9);border-color:rgba(242,181,58,.45);color:#FBD98A}
.gchip.amber .ic{color:var(--gold)}
.c-tl{top:9%;left:6%}
.c-tr{top:7%;right:4%;max-width:180px;white-space:normal}
/* selos e cartões flutuantes sempre na frente do celular */
.fv-box .gchip,.fv-box .float{z-index:3}
.shift .dev{transform:translateX(-48px)}
.vid-screen{position:relative;flex:1;background:#223 url("../img/home-v2/cozinha.webp") center 30%/cover}
.rec{position:absolute;top:34px;left:10px;display:flex;align-items:center;gap:.35rem;font:600 .64rem/1 var(--f-mono);color:#fff;background:rgba(5,10,16,.6);padding:.4rem .5rem;border-radius:7px}
.rec i{width:7px;height:7px;border-radius:50%;background:var(--red);animation:blink 1.2s steps(2) infinite}
.vprog{position:absolute;left:12px;right:12px;bottom:16px;height:4px;border-radius:2px;background:rgba(255,255,255,.35);overflow:hidden}
.vprog i{display:block;height:100%;width:25%;background:var(--green);animation:vp 6s linear infinite}
@keyframes vp{from{width:8%}to{width:100%}}
.f-trans{right:5%;bottom:12%;width:250px}
.kara{display:grid;gap:4px;font-size:.86rem;line-height:1.45}
.kara span{border-radius:4px;padding:0 3px;animation:kara 6s linear infinite}
.kara span:nth-child(2){animation-delay:2s}.kara span:nth-child(3){animation-delay:4s}
@keyframes kara{0%,30%{background:rgba(46,204,113,.28)}34%,100%{background:transparent}}
.to-laudo{display:flex;align-items:center;gap:.4rem;margin-top:10px;padding-top:10px;border-top:1px solid #E7ECEA;font:600 .7rem/1.2 var(--f-body);color:var(--green-ink)}
.contract{display:grid;grid-template-columns:auto auto auto;align-items:center;gap:18px}
.paper{position:relative;width:160px;height:214px;border-radius:10px;background:#fff;padding:16px 14px;display:grid;align-content:start;gap:7px;box-shadow:0 26px 50px -20px rgba(0,0,0,.7);overflow:hidden}
.paper b{font:700 .56rem/1.3 var(--f-body);letter-spacing:.04em;color:#14212C;text-align:center;margin-bottom:4px}
.paper i{display:block;height:5px;border-radius:3px;background:#E4EAE7}
.paper i.s{width:62%}.paper i.m{width:82%}
.paper .glow{position:absolute;left:0;right:0;height:34px;background:linear-gradient(transparent,rgba(46,204,113,.35),transparent);animation:glow 2.6s ease-in-out infinite alternate}
@keyframes glow{from{top:-10%}to{top:90%}}
.pdf-tag{position:absolute;bottom:10px;left:10px;font:700 .56rem/1 var(--f-mono);color:#fff;background:var(--red);padding:.3rem .4rem;border-radius:4px}
.arrow-ai{width:46px;height:46px;border-radius:50%;background:var(--green);color:#052616;display:grid;place-items:center;box-shadow:0 0 0 8px rgba(46,204,113,.15)}
.form-card{position:relative;width:250px;padding:14px}
.fld{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:8px 10px;border-radius:9px;background:#F4F7F5;margin-top:6px;border-left:3px solid transparent;animation:fill 6s ease-in-out infinite}
.fld small{grid-column:1;font:600 .58rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:#5B6B76}
.fld span{grid-column:1;font-weight:600;font-size:.78rem}
.fld .ic{grid-row:1 / span 2;grid-column:2;align-self:center;width:16px;height:16px;color:var(--green-ink)}
.fld:nth-of-type(2){animation-delay:.5s}.fld:nth-of-type(3){animation-delay:1s}.fld:nth-of-type(4){animation-delay:1.5s}
@keyframes fill{0%,8%{border-left-color:transparent;background:#F4F7F5}14%,30%{border-left-color:var(--green);background:#E3F6EB}40%,100%{border-left-color:var(--green);background:#F4F7F5}}
.proofs{position:relative;width:min(100%,460px);height:360px}
.pol{position:absolute;background:#fff;padding:8px 8px 30px;border-radius:6px;box-shadow:0 30px 60px -24px rgba(0,0,0,.8)}
.pol img{display:block;width:100%;height:auto;border-radius:3px}
.pol-2 img{aspect-ratio:4/5;object-fit:cover;object-position:50% 62%}
.pol span{position:absolute;left:10px;bottom:9px;font:600 .62rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:#5B6B76}
.pol-1{left:0;top:6px;width:72%;transform:rotate(-2.5deg)}
.pol-2{right:0;bottom:0;width:48%;transform:rotate(3deg)}
.fv-photo{padding:0;background:#0A1A2B url("../img/home-v2/evento.webp") center 38%/cover;align-items:end;justify-items:start}
.fv-photo::before{background:linear-gradient(180deg,transparent 45%,rgba(10,26,43,.92) 100%);-webkit-mask-image:none;mask-image:none}
.fv-photo .gchip.c-tl{top:7%;left:5%}
.fv-photo .gchip.c-tl2{top:20%;left:5%}
.fv-photo .stores{position:relative;margin:0 0 22px 22px}

/* assinatura digital */
.sign{display:grid;grid-template-columns:1fr 1.08fr;gap:56px;align-items:center}
.sign-card{width:min(100%,340px);padding:18px}
/* 20/10/2026: a cena animada do laudo sendo assinado (includes/assinatura_cena.php) num painel da marca */
.sign-cena{position:relative;padding:36px 20px;border-radius:28px;background:radial-gradient(520px 320px at 85% 10%,rgba(46,204,113,.22),transparent 62%),radial-gradient(420px 300px at 0% 100%,rgba(38,112,196,.18),transparent 60%),var(--ink);overflow:hidden;color-scheme:dark}
.sign-mais{margin-top:22px}
.sign-mais a{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;font-weight:600;color:var(--accent-text);text-underline-offset:3px}
.dark .sign-mais a{color:var(--green)}
.doc-row{display:flex;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid #E7ECEA}
.doc-ic{width:36px;height:44px;border-radius:6px;background:#FDECEC;color:var(--red);display:grid;place-items:center;flex:none}
.doc-row strong{display:block;font-size:.84rem}
.doc-row small{color:#5B6B76;font-size:.72rem}
.sprog{display:flex;align-items:center;gap:10px;margin:12px 0 4px;font:600 .72rem/1 var(--f-body);color:#5B6B76}
.sprog i{flex:1;height:6px;border-radius:3px;background:#E7ECEA;overflow:hidden;position:relative}
.sprog i::after{content:"";position:absolute;inset:0 33% 0 0;background:var(--green);border-radius:3px}
.signer{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid #F0F3F1}
.signer:last-child{border-bottom:0}
.signer .av{width:32px;height:32px;font-size:.72rem;background:#E3F6EB;color:#0E6B39}
.signer strong{display:block;font-size:.8rem}
.signer small{color:#5B6B76;font-size:.7rem}
.st-ok{font:700 .6rem/1 var(--f-mono);color:#0E6B39;background:#DDF5E7;padding:.34rem .45rem;border-radius:5px;white-space:nowrap}
.st-wait{display:inline-flex;align-items:center;gap:.3rem;font:700 .6rem/1 var(--f-mono);color:#8A5A00;background:#FEF3D9;padding:.34rem .45rem;border-radius:5px;white-space:nowrap}
.st-wait i{width:6px;height:6px;border-radius:50%;background:var(--gold);animation:blink 1.2s steps(2) infinite}
.c-br{right:6%;bottom:9%}
.logos-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin:56px 0 16px}
.logos-h h3{font:600 .8rem/1 var(--f-body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.logos-h p{font-size:.85rem;color:var(--muted)}
.logos{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.logos-track{display:flex;gap:16px;width:max-content;animation:marq 32s linear infinite}
.logos:hover .logos-track{animation-play-state:paused}
@keyframes marq{to{transform:translateX(-25%)}}
.lg{display:flex;align-items:center;gap:12px;padding:16px 22px;border:1px solid var(--line);border-radius:16px;background:var(--surface);white-space:nowrap}
.lg-mark{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;color:#fff;flex:none}
.lg-mark .ic{width:18px;height:18px}
.lg strong{font:700 1.12rem/1 var(--f-display);letter-spacing:-.01em}
.lg .on{font:700 .6rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-text);background:var(--chip);padding:.35rem .45rem;border-radius:5px}
.lg .soon{font:700 .6rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);padding:.3rem .42rem;border-radius:5px}
.lg.dim strong{color:var(--muted)}

.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:48px}
.facts div{padding:18px 20px;border-radius:16px;border:1px solid var(--line);background:var(--surface)}
.facts strong{display:block;font:700 1.35rem/1.15 var(--f-display);letter-spacing:-.02em}
.facts span{font-size:.9rem;color:var(--muted)}

/* comparador */
.dark{background:var(--ink);color:var(--ink-text);color-scheme:dark}
.dark .eyebrow{color:var(--green)}
.dark .lead{color:var(--ink-muted)}
.cmp{display:grid;grid-template-columns:1.25fr 1fr;gap:36px;align-items:start}
.ba{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:1100/821;background:#222;box-shadow:0 30px 70px -30px rgba(0,0,0,.8);user-select:none;-webkit-user-select:none;touch-action:pan-y}
.ba img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ba .before{clip-path:inset(0 calc(100% - var(--pos,40%)) 0 0)}
.ba .handle{position:absolute;top:0;bottom:0;left:var(--pos,40%);width:2px;background:#fff;transform:translateX(-1px);pointer-events:none}
.ba .knob{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;background:#fff;color:var(--ink);display:grid;place-items:center;box-shadow:0 6px 20px rgba(0,0,0,.4)}
.ba input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.ba input:focus-visible + .handle .knob{outline:3px solid var(--gold);outline-offset:3px}
.ba .lbl{position:absolute;top:14px;font:600 .66rem/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:#fff;background:rgba(5,10,16,.6);padding:.45rem .55rem;border-radius:6px;pointer-events:none}
.ba .lbl.l{left:14px}.ba .lbl.r{right:14px}
.pin{position:absolute;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;background:var(--red);color:#fff;font:700 .78rem/26px var(--f-mono);text-align:center;box-shadow:0 0 0 4px rgba(229,72,77,.35),0 4px 10px rgba(0,0,0,.4);pointer-events:none}
.cmp-hint{display:flex;align-items:flex-start;gap:.5rem;margin-top:12px;font-size:.88rem;line-height:1.5;color:var(--ink-muted)}
.cmp-hint .ic{margin-top:.2em}
.finds{background:var(--ink-2);border:1px solid var(--ink-line);border-radius:20px;padding:22px}
.finds-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;padding-bottom:14px;border-bottom:1px solid var(--ink-line)}
.finds-head h3{font-size:1.1rem}
.finds-head span{font:600 .68rem/1 var(--f-mono);color:var(--green);letter-spacing:.06em;text-transform:uppercase}
.finds ol{list-style:none;padding:0;margin:0;display:grid}
.finds li{display:grid;grid-template-columns:26px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid var(--ink-line)}
.finds li:last-child{border-bottom:0;padding-bottom:0}
.finds li b{width:26px;height:26px;border-radius:50%;background:var(--red);color:#fff;font:700 .78rem/26px var(--f-mono);text-align:center}
.finds li strong{display:block;font-size:.98rem;margin-bottom:3px}
.finds li span{display:block;color:var(--ink-muted);font-size:.88rem;line-height:1.45}
.finds li em{font-style:normal;color:#9CC0FF}
.law{margin-top:28px;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;padding:22px 24px;border-radius:18px;border:1px solid var(--ink-line);background:rgba(255,255,255,.03)}
.law .ic{width:30px;height:30px;color:var(--gold)}
.law blockquote{margin:0;font-size:1.02rem;line-height:1.55}
.law cite{display:block;margin-top:6px;font:500 .8rem/1.3 var(--f-mono);font-style:normal;color:var(--ink-muted)}

/* laudos */
.models{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.model{display:flex;flex-direction:column;gap:12px}
.model figure{margin:0;border-radius:10px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;transition:transform .25s ease}
.model:hover figure{transform:translateY(-4px)}
.model img{width:100%;height:auto;aspect-ratio:848/1200}
.model h3{font-size:1.08rem;margin-top:4px}
.model p{font-size:.92rem;color:var(--muted);line-height:1.5}
.model .btn{align-self:flex-start;padding:.65rem .95rem;font-size:.9rem;margin-top:auto}
.laudo-perks{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px}
.laudo-perks span{display:inline-flex;align-items:center;gap:.45rem;font-size:.9rem;padding:.55rem .85rem;border-radius:999px;background:var(--surface);border:1px solid var(--line)}
.laudo-perks .ic{color:var(--accent-text)}

/* depoimentos */
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:0}
.quote{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:26px;display:flex;flex-direction:column;gap:18px;margin:0}
.stars{color:var(--gold);letter-spacing:2px;font-size:1rem}
.quote blockquote{margin:0;font-size:1.02rem;line-height:1.6}
.who2{display:flex;gap:12px;align-items:center;margin-top:auto}
.av{width:42px;height:42px;border-radius:50%;background:var(--chip);color:var(--accent-text);display:grid;place-items:center;font:700 .9rem/1 var(--f-display);flex:none}
.who2 strong{display:block;font-size:.95rem}
.who2 span{font-size:.85rem;color:var(--muted)}
.swipe{display:none;justify-content:center;gap:.4rem;align-items:center;margin-top:14px;font-size:.86rem;color:var(--muted)}

/* comparativo */
.vs-scroll{overflow-x:auto;padding:62px 4px 30px;margin-inline:-4px}
.vs{position:relative;min-width:820px}
.vs-glow{position:absolute;top:-22px;bottom:-22px;left:31%;width:17.25%;border-radius:26px;background:linear-gradient(180deg,#143252 0%,#0A1A2B 100%);box-shadow:0 0 0 1px rgba(46,204,113,.45),0 30px 60px -20px rgba(10,26,43,.55),0 0 60px -18px rgba(46,204,113,.55);z-index:0}
.vs-glow .mascot{position:absolute;top:-30px;left:50%;transform:translateX(-50%);width:54px;height:54px;border-radius:16px;background:#fff;display:grid;place-items:center;box-shadow:0 10px 24px -8px rgba(0,0,0,.4)}
.vs-glow .mascot img{width:36px;height:36px}
.vs table{position:relative;z-index:1;width:100%;border-collapse:collapse;table-layout:fixed;font-variant-numeric:tabular-nums}
.vs col.c-lbl{width:31%}.vs col.c-fv,.vs col.c-o{width:17.25%}
.vs th,.vs td{padding:15px 12px;text-align:center;vertical-align:middle;font-size:.95rem}
.vs thead th{padding-top:30px;padding-bottom:18px;font:700 1.02rem/1.25 var(--f-display);letter-spacing:-.01em}
.vs thead th small{display:block;font:500 .74rem/1.3 var(--f-body);color:var(--muted);margin-top:4px;letter-spacing:0}
.vs thead th.lbl{text-align:left;font:600 .8rem/1 var(--f-body);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.vs th[scope=row]{text-align:left;font:500 .95rem/1.35 var(--f-body)}
.vs tbody tr + tr td,.vs tbody tr + tr th{border-top:1px solid var(--line)}
.vs .fv{color:#fff;font-weight:700}
.vs thead .fv{font-size:1.3rem}
.vs thead .fv small{color:#9DB2C1}
.vs tbody tr + tr .fv{border-top-color:rgba(255,255,255,.1)}
.vs .o{color:var(--muted)}
.medal{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#FFE39A,var(--gold) 60%,#C98B12);color:#5A3B00;font:800 .66rem/1 var(--f-display);margin-right:6px;vertical-align:-3px;box-shadow:0 0 0 2px rgba(242,181,58,.25)}
.yes{color:var(--green)}.vs .o .yes{color:var(--accent-text)}
.no{color:var(--red)}
.dash{color:var(--muted);opacity:.7}
.vs .ic{width:20px;height:20px;vertical-align:middle}
.vs-note{font-size:.82rem;color:var(--muted);line-height:1.55;max-width:900px}
.objs{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;margin-top:56px}
.obj{grid-column:span 2;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:24px}
.obj:nth-child(4),.obj:nth-child(5){grid-column:span 3}
.obj h3{font-size:1.06rem;line-height:1.35;margin-bottom:10px;font-weight:600}
.obj h3 q{quotes:"“" "”";color:var(--text)}
.obj p{font-size:.97rem;line-height:1.55;color:var(--muted)}

/* calculadora + preços */
.roi{display:grid;grid-template-columns:1fr 1.1fr;border-radius:24px;overflow:hidden;border:1px solid var(--line);background:var(--surface);margin-bottom:56px}
.roi-in{padding:28px;display:grid;gap:18px;align-content:start}
.roi-in h3{font-size:1.3rem}
.rg label{display:flex;justify-content:space-between;gap:12px;font-size:.93rem;color:var(--muted);margin-bottom:8px}
.rg output{font:600 .95rem/1 var(--f-mono);color:var(--text)}
.rg input{width:100%;accent-color:var(--green)}
.roi-out{background:var(--ink);color:var(--ink-text);padding:28px;display:grid;gap:18px;align-content:center;color-scheme:dark}
.roi-big{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.roi-big div{padding:16px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid var(--ink-line)}
.roi-big strong{display:block;font:700 2rem/1.05 var(--f-display);letter-spacing:-.02em;color:var(--green);font-variant-numeric:tabular-nums}
.roi-big span{font-size:.86rem;color:var(--ink-muted)}
.roi-plan{font-size:.95rem;color:var(--ink-muted)}
.roi-plan strong{color:var(--ink-text)}
.bill-wrap{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:28px}
.bill{display:grid;grid-template-columns:repeat(3,auto);padding:5px;border-radius:14px;background:var(--surface);border:1px solid var(--line);gap:4px}
.bill label{position:relative;cursor:pointer}
.bill input{position:absolute;opacity:0}
.bill span{display:flex;align-items:center;justify-content:center;gap:.45rem;padding:.65rem 1.1rem;border-radius:10px;font-weight:600;font-size:.95rem;color:var(--muted);white-space:nowrap}
.bill input:checked + span{background:var(--ink);color:#fff}
.bill input:focus-visible + span{outline:3px solid var(--gold);outline-offset:2px}
.bill em{font-style:normal;font:700 .64rem/1 var(--f-mono);background:var(--chip);color:var(--accent-text);padding:.28rem .38rem;border-radius:5px}
.bill input:checked + span em{background:var(--gold);color:#3D2800}
.bill-note{font-size:.88rem;color:var(--muted)}
.bill-note b{color:var(--accent-text)}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px;align-items:stretch}
.plan{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:30px 26px;display:flex;flex-direction:column;gap:18px}
.plan.hot{background:var(--ink);color:var(--ink-text);border-color:rgba(46,204,113,.5);box-shadow:0 30px 60px -28px rgba(10,26,43,.7),0 0 0 1px rgba(46,204,113,.3);color-scheme:dark}
.plan .badge{position:absolute;top:-13px;left:26px;font:700 .7rem/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;background:var(--green);color:#052616;padding:.45rem .65rem;border-radius:7px}
.plan h3{font-size:1.3rem}
.plan .for{font-size:.93rem;color:var(--muted);margin-top:4px}
.plan.hot .for{color:var(--ink-muted)}
.price{display:flex;align-items:baseline;gap:.3rem;font-variant-numeric:tabular-nums}
.price small{font-size:1rem;font-weight:600}
.price strong{font:800 2.9rem/1 var(--f-display);letter-spacing:-.03em}
.price span{color:var(--muted);font-size:.95rem}
.plan.hot .price span{color:var(--ink-muted)}
.per{font-size:.9rem;color:var(--muted);min-height:2.9em}
.plan.hot .per{color:var(--ink-muted)}
.per b{color:var(--accent-text);font-weight:700}
.plan.hot .per b{color:var(--green)}
.plan ul{list-style:none;padding:0;margin:0;display:grid;gap:10px;font-size:.95rem}
.plan li{display:flex;gap:.55rem;align-items:flex-start;line-height:1.4}
.plan li .ic{margin-top:.15em;color:var(--accent-text)}
.plan.hot li .ic{color:var(--green)}
.plan li.off{color:var(--muted);opacity:.75}
.plan li.off .ic{color:var(--muted)}
.plan .btn{margin-top:auto;width:100%}
.plan .btn-line{background:transparent}
.plans-more{display:flex;justify-content:center;margin-top:24px}
.addon{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;margin-top:20px;padding:18px 22px;border-radius:18px;border:1px dashed var(--line);background:var(--surface)}
.addon .ic{width:28px;height:28px;color:var(--accent-text)}
.addon div{flex:1;min-width:240px}
.addon strong{display:block;font:700 1.02rem/1.3 var(--f-display)}
.addon span{font-size:.92rem;color:var(--muted)}
.addon b{font:700 1.05rem/1 var(--f-display);white-space:nowrap}
.guar{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 28px;margin-top:28px;font-size:.93rem;color:var(--muted)}
.guar span{display:inline-flex;gap:.45rem;align-items:center}
.guar .ic{color:var(--accent-text)}
.fine{text-align:center;font-size:.82rem;color:var(--muted);margin-top:14px}

/* FAQ */
.faq{max-width:860px;margin-inline:auto;display:grid;gap:10px}
.faq details{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:0 22px}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;font:600 1.06rem/1.35 var(--f-display);letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ic{transition:transform .2s;color:var(--accent-text)}
.faq details[open] summary .ic{transform:rotate(180deg)}
.faq details p{padding:0 0 20px;color:var(--muted);line-height:1.65}

/* CTA final + rodapé */
.final{position:relative;background:var(--ink);color:var(--ink-text);overflow:hidden;color-scheme:dark}
.final-img{position:absolute;top:0;right:0;bottom:0;width:54%;background:url("../img/home-v2/cta-evento-app.webp") center/cover}
.final-img::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 0%,rgba(10,26,43,.55) 22%,transparent 52%)}
.final-copy{position:relative;z-index:1;max-width:540px;padding-block:104px;display:grid;gap:20px;align-content:center}
.final-copy .h2{font-size:clamp(2.1rem,3.8vw,3.2rem)}
.final-copy p{color:var(--ink-muted);font-size:1.12rem;max-width:32em}

/* flutuantes */
.wa{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:65;width:58px;height:58px;border-radius:50%;background:var(--wa);color:#fff;display:grid;place-items:center;box-shadow:0 10px 30px rgba(37,211,102,.45);animation:waPulse 3s infinite;transition:transform .2s}
.wa:hover{transform:scale(1.07)}
.wa .ic{width:30px;height:30px}
@keyframes waPulse{0%{box-shadow:0 10px 30px rgba(37,211,102,.45),0 0 0 0 rgba(37,211,102,.4)}70%{box-shadow:0 10px 30px rgba(37,211,102,.45),0 0 0 16px rgba(37,211,102,0)}100%{box-shadow:0 10px 30px rgba(37,211,102,.45),0 0 0 0 rgba(37,211,102,0)}}

/* conector MCP (Recursos): Claude e ChatGPT ligados ao Flash Vistoria. Mesmo
   palco do hero do /conectores; a cor de marca das IAs só aparece como luz
   atrás do logo. A pergunta desce (ponto claro) e a resposta sobe (verde). */
.mcp-palco{--gap:16px;--trilho:rgba(234,241,245,.26);width:100%;max-width:440px}
.mcp-ias{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}
.mcp-ia{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px 12px 18px;border-radius:22px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.13);box-shadow:0 22px 46px -18px rgba(0,0,0,.6);animation:mcpFlutua 6s ease-in-out infinite}
.mcp-ia.gpt{animation-delay:-3s}
.mcp-ia::before{content:"";position:absolute;top:-40px;left:50%;width:150px;height:150px;margin-left:-75px;border-radius:50%;filter:blur(44px);opacity:.42;pointer-events:none}
.mcp-ia.claude::before{background:#D97757}
.mcp-ia.gpt::before{background:#10A37F}
.mcp-logo{position:relative;width:58px;height:58px;filter:drop-shadow(0 6px 18px rgba(0,0,0,.45))}
.mcp-ia.claude .mcp-logo{fill:#D97757}
.mcp-ia.gpt .mcp-logo{fill:#fff}
.mcp-ia b{position:relative;font:700 1.15rem/1 var(--f-display);color:#fff}
.mcp-ia small{position:relative;display:inline-flex;align-items:center;gap:6px;color:var(--ink-muted);font-size:.76rem}
.mcp-ia small i{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px rgba(46,204,113,.18)}
@keyframes mcpFlutua{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.mcp-ponte{position:relative;padding:calc(var(--y) + 34px) 0 20px;--esq:calc(25% - var(--gap) / 4);--dir:calc(75% + var(--gap) / 4);--y:30px}
.mcp-ponte > span{position:absolute;display:block}
.mcp-ponte .v{top:0;width:2px;height:var(--y);margin-left:-1px;background:repeating-linear-gradient(to bottom,var(--trilho) 0 5px,transparent 5px 10px)}
.mcp-ponte .v.e{left:var(--esq)}
.mcp-ponte .v.d{left:var(--dir)}
.mcp-ponte .h{top:var(--y);left:var(--esq);right:calc(100% - var(--dir));height:2px;margin-top:-1px;background:repeating-linear-gradient(to right,var(--trilho) 0 5px,transparent 5px 10px)}
.mcp-ponte .c{top:var(--y);bottom:0;left:50%;width:2px;margin-left:-1px;background:repeating-linear-gradient(to bottom,var(--trilho) 0 5px,transparent 5px 10px)}
.mcp-ponte .p{z-index:1;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;opacity:0}
.mcp-ponte .ida{background:#fff;box-shadow:0 0 0 4px rgba(234,241,245,.14),0 0 12px rgba(234,241,245,.8)}
.mcp-ponte .volta{background:#B7F5CF;box-shadow:0 0 0 4px rgba(46,204,113,.18),0 0 14px rgba(46,204,113,.8)}
.mcp-ponte .ida.e{animation:mcpDesceE 4s linear infinite}
.mcp-ponte .ida.d{animation:mcpDesceD 4s linear infinite 2s}
.mcp-ponte .volta.e{animation:mcpSobeE 4s linear infinite 1s}
.mcp-ponte .volta.d{animation:mcpSobeD 4s linear infinite 3s}
@keyframes mcpDesceE{0%{left:var(--esq);top:0;opacity:0}4%{opacity:1}14%{left:var(--esq);top:var(--y)}50%{left:50%;top:var(--y)}92%{left:50%;top:100%;opacity:1}100%{left:50%;top:100%;opacity:0}}
@keyframes mcpDesceD{0%{left:var(--dir);top:0;opacity:0}4%{opacity:1}14%{left:var(--dir);top:var(--y)}50%{left:50%;top:var(--y)}92%{left:50%;top:100%;opacity:1}100%{left:50%;top:100%;opacity:0}}
@keyframes mcpSobeE{0%{left:50%;top:100%;opacity:0}8%{opacity:1}50%{left:50%;top:var(--y)}86%{left:var(--esq);top:var(--y)}96%{left:var(--esq);top:0;opacity:1}100%{left:var(--esq);top:0;opacity:0}}
@keyframes mcpSobeD{0%{left:50%;top:100%;opacity:0}8%{opacity:1}50%{left:50%;top:var(--y)}86%{left:var(--dir);top:var(--y)}96%{left:var(--dir);top:0;opacity:1}100%{left:var(--dir);top:0;opacity:0}}
.mcp-ponte .mcp-selo{z-index:2;top:var(--y);left:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;background:#0E2236;border:1px solid rgba(46,204,113,.45);color:var(--ink-text);font:600 .76rem/1 var(--f-mono);letter-spacing:.06em;animation:mcpPulso 2.4s ease-out infinite}
.mcp-selo .ic{width:15px;height:15px;color:var(--green)}
@keyframes mcpPulso{0%{box-shadow:0 0 0 0 rgba(46,204,113,.35)}80%,100%{box-shadow:0 0 0 12px rgba(46,204,113,0)}}
.mcp-msgs{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;column-gap:28px;align-items:start}
.mcp-msg{display:block;max-width:190px;padding:10px 12px;font:500 .78rem/1.4 var(--f-body);color:var(--ink-text);background:rgba(16,38,61,.92);border:1px solid var(--ink-line);box-shadow:0 16px 30px -14px rgba(0,0,0,.7);animation:mcpMsg 8s ease-in-out infinite backwards}
.mcp-msg.q{justify-self:end;border-radius:14px 14px 4px 14px}
.mcp-msg.a{justify-self:start;border-radius:14px 14px 14px 4px;border-color:rgba(46,204,113,.45);animation-delay:1.6s}
.mcp-msg small{display:flex;align-items:center;gap:5px;margin-bottom:5px;font:700 .6rem/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.mcp-msg.a small{color:var(--green)}
.mcp-msg .ic{width:13px;height:13px}
@keyframes mcpMsg{0%{opacity:0;transform:translateY(6px)}8%,86%{opacity:1;transform:none}96%,100%{opacity:0;transform:translateY(-4px)}}
.mcp-fv{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:16px 18px;border-radius:18px;background:var(--surface);color:var(--text);box-shadow:0 0 0 1px rgba(255,255,255,.4),0 26px 60px -20px rgba(46,204,113,.55)}
.mcp-marca{display:inline-flex;align-items:center;gap:10px;font:700 1.05rem/1 var(--f-display);letter-spacing:-.01em}
.mcp-marca img{width:34px;height:34px;border-radius:9px;outline:1px solid rgba(0,0,0,.08);outline-offset:-1px}
.mcp-fv ul{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.mcp-fv li{font-size:.76rem;font-weight:600;color:var(--accent-text);background:var(--chip);padding:5px 10px;border-radius:999px}
.mcp-acoes{display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;margin-top:24px}
.mcp-btn{padding:.8rem 1.15rem;font-size:.97rem}
.mcp-btn:active{transform:scale(.98)}
.mcp-btn-logo{width:20px;height:20px;flex:none;fill:currentColor}
.mcp-link{display:inline-flex;align-items:center;gap:.3rem;min-height:44px;color:var(--accent-text);font-weight:600;text-decoration:none}
.mcp-link:hover{text-decoration:underline;text-underline-offset:3px}
.mcp-link .ic{width:1em;height:1em;transition:transform .15s ease}
.mcp-link:hover .ic{transform:translateX(2px)}
@media (max-width:720px){
  .mcp-ia{padding:20px 10px 16px;border-radius:18px}
  .mcp-logo{width:46px;height:46px}
  .mcp-msgs{column-gap:20px}
  .mcp-msg{font-size:.74rem;padding:9px 10px}
}

/* responsivo */
@media (max-width:1060px){
  .hero-grid{grid-template-columns:1fr;gap:40px;padding-top:52px}
  .hero-copy{max-width:680px}
  .why-row{grid-template-columns:150px 1fr 1fr}
  .personas{grid-template-columns:repeat(2,1fr)}
  .feat,.sign{grid-template-columns:1fr;gap:28px}
  .feat.rev .fv-box{order:0}
  .steps{grid-template-columns:repeat(2,1fr);row-gap:36px}
  .facts{grid-template-columns:repeat(2,1fr)}
  .cmp{grid-template-columns:1fr}
  .models{grid-template-columns:repeat(2,1fr)}
  .quotes{grid-template-columns:1fr}
  .objs{grid-template-columns:1fr 1fr}
  .obj,.obj:nth-child(4),.obj:nth-child(5){grid-column:span 1}
  .roi{grid-template-columns:1fr}
  .plans{grid-template-columns:1fr;max-width:520px;margin-inline:auto}
  .final-img{position:relative;width:auto;height:380px;background-position:68% 40%}
  .final-img::before{background:linear-gradient(0deg,var(--ink) 0%,transparent 50%)}
  .final-copy{padding-block:8px 72px}
}
@media (max-width:720px){
  .promo{position:sticky;top:0;z-index:52;height:38px;line-height:38px;font-size:.86rem;padding:0 12px}
  .sc-hdr{top:38px}
  .promo .long{display:none}
  .promo .short{display:inline}
  .sec{padding-block:72px}
  .proof .wrap{grid-template-columns:1fr 1fr}
  .proof .wrap > div{padding:16px 0 16px 16px}
  .proof .wrap > div:nth-child(odd){border-left:0;padding-left:0}
  .proof .wrap > div:nth-child(n+3){border-top:1px solid var(--ink-line)}
  .why-head{display:none}
  .why-row{grid-template-columns:1fr;margin-bottom:14px}
  .why-row > div{padding:14px 16px}
  .why-row .topic{padding:0 0 8px;border-bottom:0}
  .why-row .bad{background:var(--bad-bg);border:1px solid var(--line);border-radius:14px 14px 0 0}
  .why-row .good,.why-row:last-child .good{border-radius:0 0 14px 14px;border-bottom:0}
  .why-row:last-child .bad{border-bottom:1px solid var(--line)}
  .tag-sm{display:block;font:600 .6rem/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;opacity:.8}
  .why-cta .note{margin-left:0}
  .facts,.objs,.steps{grid-template-columns:1fr}
  .steps{row-gap:0}
  .steps li{display:grid;grid-template-columns:44px 1fr;padding:22px 0 0}
  .steps li::before{grid-row:1 / span 2;margin:3px 0 0}
  .steps li .ic{display:none}
  .steps h3{margin:0 0 6px}
  .personas{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin-inline:-20px;padding:4px 20px 8px;scrollbar-width:none}
  .personas::-webkit-scrollbar{display:none}
  .persona{flex:0 0 80%;scroll-snap-align:center}
  .feat{padding-block:40px}
  .fv-box{min-height:0;padding:28px 16px}
  .shift .dev{transform:none}
  .fv-box:not(.fv-photo){display:flex;flex-direction:column;align-items:center}
  .fv-box:not(.fv-photo) .gchip{position:relative;inset:auto;margin:0 0 14px}
  .fv-box:not(.fv-photo) .gchip.c-br{margin:14px 0 0}
  .f-check,.f-trans{position:relative;right:auto;bottom:auto;margin:-96px 0 0 auto;width:min(86%,260px)}
  .contract{grid-template-columns:1fr;justify-items:center}
  .proofs{height:320px}
  .fv-photo{min-height:440px}
  .quotes{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin-inline:-20px;padding:4px 20px 8px;scrollbar-width:none}
  .quotes::-webkit-scrollbar{display:none}
  .quote{flex:0 0 84%;scroll-snap-align:center}
  .swipe{display:flex}
  .roi-big{grid-template-columns:1fr}
  .bill{grid-template-columns:repeat(3,1fr);width:100%}
  .bill span{flex-direction:column;gap:.3rem;padding:.6rem .4rem;font-size:.9rem}
  .tb{grid-template-columns:104px 1fr}
  .wa{width:52px;height:52px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px))}
  .wa .ic{width:26px;height:26px}
}
@media (max-width:460px){
  .models{gap:14px}
  .model p{font-size:.85rem}
  .phone{width:62%}
  .bubble{width:56%;top:14%;font-size:.76rem;padding:11px 12px}
  .formal .s:nth-child(3){display:none}
  .formal{font-size:.74rem}
  .stamp{font-size:.5rem}
  .wave{bottom:140px}
  .hero-actions .btn{width:100%}
  .legal{align-items:flex-start}
}
@media (max-width:560px){
  /* Celular: a etiqueta e a 1ª linha do título cabem numa linha só. A fonte
     acompanha a largura da tela. Medido no WebKit: a etiqueta ocupa
     25,34px por px de fonte + 43,4px fixos, e o título pede 357px em 37,6px;
     o espaço é a tela menos 40px de margem. A conta tem folga para a fonte
     do sistema que aparece antes da fonte do site carregar. */
  .kicker{white-space:nowrap;letter-spacing:.08em;font-size:min(.78rem,calc((100vw - 90px)/26))}
  /* Sem isto, um texto que não quebra alarga a coluna do grid e come a
     margem direita do hero (aconteceu com a etiqueta). */
  .hero-copy{min-width:0}
  .h1{font-size:min(2.35rem,calc((100vw - 40px)*.102))}
}
@media (max-width:400px){
  /* Os dois selos lado a lado até ~360px de tela (40px é o mínimo da Apple). */
  .store-badge img{height:40px}
  .store-badge-play img{height:52.1px;margin:-6.04px 0}
  .store{height:40px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .formal .s{background-size:100% 100%}
}

/* ---------- produção: integrações da página ---------- */
/* âncoras não ficam escondidas atrás do cabeçalho fixo */
section[id],article[id],.feat[id],.roi[id]{scroll-margin-top:84px}
/* banner de download do app (includes/landing/app-download-banner.php): assume o topo no lugar da promo */
.promo.hidden{display:none}
.wa .ic{fill:currentColor;stroke:none}

/* modal "Receber exemplo" de laudo */
.lead-modal{position:fixed;inset:0;z-index:1500;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(4,10,18,.66);opacity:0;transition:opacity .25s ease}
.lead-modal.active{opacity:1}
.lead-box{position:relative;width:min(460px,100%);max-height:calc(100vh - 32px);overflow:auto;background:var(--surface);color:var(--text);border-radius:22px;padding:30px 28px 24px;box-shadow:0 40px 80px -20px rgba(0,0,0,.6);transform:translateY(10px);transition:transform .25s ease}
.lead-modal.active .lead-box{transform:none}
.lead-x{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:50%;border:0;background:var(--bg);color:var(--muted);cursor:pointer;display:grid;place-items:center;font-size:.95rem}
.lead-ic{width:52px;height:52px;border-radius:14px;background:var(--chip);color:var(--accent-text);display:grid;place-items:center;font-size:1.5rem;margin-bottom:14px}
.lead-box h2{font-size:1.45rem;line-height:1.2;padding-right:36px}
.lead-sub{color:var(--muted);font-size:.95rem;margin:8px 0 18px}
.lead-sub strong{color:var(--accent-text)}
.lead-box .fl{display:block;font-weight:600;font-size:.88rem;margin-bottom:6px}
.lead-box input[type=text],.lead-box input[type=tel]{width:100%;font:inherit;font-size:16px;padding:.8rem .9rem;border-radius:12px;border:1px solid var(--line);background:var(--bg);color:var(--text);margin-bottom:14px}
.lead-box input[type=text]:focus,.lead-box input[type=tel]:focus{outline:2px solid var(--green);outline-offset:1px}
.check{display:flex;gap:.6rem;align-items:flex-start;font-size:.84rem;color:var(--muted);margin-bottom:10px;line-height:1.45;cursor:pointer}
.check input{margin-top:.2em;accent-color:var(--green);width:16px;height:16px;flex:none}
.check a{color:var(--accent-text)}
.lead-err{display:none;background:#FEF2F2;color:#B91C1C;border:1px solid #FECACA;border-radius:12px;padding:12px 14px;font-size:.9rem;margin:12px 0}
.lead-box .btn{width:100%;margin-top:6px}
.lead-note{font-size:.78rem;color:var(--muted);text-align:center;margin-top:12px;line-height:1.45}
.lead-note .bi{color:var(--accent-text)}
.lead-ok{display:none;text-align:center}
.lead-ok .okc{width:60px;height:60px;border-radius:50%;background:var(--chip);color:var(--accent-text);display:grid;place-items:center;font-size:1.75rem;margin:0 auto 14px}
.lead-ok strong{display:block;font-size:1.05rem;margin-bottom:6px}
.lead-ok p{color:var(--muted);font-size:.92rem;margin-bottom:18px}

/* celular: promo (38px) + cabeçalho (68px) fixos no topo */
@media (max-width:720px){section[id],article[id],.feat[id],.roi[id]{scroll-margin-top:118px}}
/* Banner do app fechado no celular: a promo continua escondida (o banner a
   tirou do topo), então o cabeçalho sobe para o topo. Antes ele ficava nos
   38px da promo e sobrava um buraco no lugar do banner. */
@media (max-width:720px){body:not(.has-app-banner) .promo.hidden ~ .sc-hdr{top:env(safe-area-inset-top,0px)}}

/* ---------- últimos artigos do blog (helpers/BlogRecentes.php) ---------- */
.blog-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 24px;flex-wrap:wrap;max-width:none}
.blog-todos{display:inline-flex;align-items:center;gap:.35rem;padding:12px 0;font:600 .95rem/1 var(--f-body);color:var(--accent-text);text-decoration:none;white-space:nowrap}
.blog-todos:hover{text-decoration:underline;text-underline-offset:3px}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.post-card{background:var(--surface);border:1px solid var(--line);border-radius:22px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.post-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.post-card a{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}
.post-card img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:var(--bg-2)}
.post-b{display:flex;flex-direction:column;gap:8px;flex:1;padding:18px 20px 20px}
.post-cat{font:600 .72rem/1.2 var(--f-body);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-text)}
.post-card h3{font-size:1.12rem;line-height:1.3}
.post-card:hover h3{color:var(--accent-text)}
.post-meta{margin-top:auto;padding-top:4px;font-size:.85rem;color:var(--muted)}
@media (max-width:1060px){.post-card h3{font-size:1.05rem}}
@media (max-width:720px){
  .blog-head{align-items:flex-start;flex-direction:column;gap:4px}
  .posts{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin-inline:-20px;padding:4px 20px 8px;scrollbar-width:none}
  .posts::-webkit-scrollbar{display:none}
  .post-card{flex:0 0 80%;scroll-snap-align:center}
  .post-card:hover{transform:none}
}
