/* ==========================================================================
   TAGBLE: folha de estilos. Identidade "sinal": anéis do logo, verde da marca
   e violeta dos anúncios, sobre fundo claro. Mobile-first.
   ========================================================================== */
:root{
  --bg:#fbfdfb; --bg-2:#eef7f2; --bg-3:#dff5ea;
  --ink:#07140f; --muted:#45574e; --dim:#6c7d74;
  --line:rgba(7,20,15,.1); --line-2:rgba(7,20,15,.18);
  --green:#00c389; --green-d:#00875f; --green-ink:#02261a; --green-soft:#dcf8ec;
  --violet:#6a3dff; --violet-d:#4f27d6; --violet-soft:#eee9ff;
  --hot:#ff5630; --hot-soft:#ffe9e3; --amber:#a86200; --amber-soft:#fff1d2;
  --deep:#052a1f; --wa:#25d366; --wa-dark:#0a7d5a;
  --sh:0 26px 60px -30px rgba(5,42,31,.45);
  --sh-sm:0 10px 26px -14px rgba(7,20,15,.25);
  --sh-cta:0 16px 34px -14px rgba(0,135,95,.8);
  --fh:'Sora',system-ui,-apple-system,'Segoe UI',sans-serif;
  --fb:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --r:16px; --r-2:26px; --r-3:36px; --ease:cubic-bezier(.2,.75,.2,1); --spring:cubic-bezier(.3,1.5,.5,1);
  --wrap:1200px; --pad:clamp(1.1rem,4vw,2rem);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:84px;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}
body{font-family:var(--fb);background:var(--bg);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
button,input{font:inherit;color:inherit}
h1,h2,h3{font-family:var(--fh);font-weight:700;letter-spacing:-.035em;line-height:1.1;text-wrap:balance}
p{text-wrap:pretty}
strong{font-weight:700}
::selection{background:var(--green);color:var(--green-ink)}
:focus-visible{outline:2.5px solid var(--violet);outline-offset:3px;border-radius:8px}

.sprite{position:absolute;width:0;height:0;overflow:hidden}
.ico{width:1.15em;height:1.15em;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ico-fill{fill:currentColor;stroke:none}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--pad)}
.skip{position:absolute;left:1rem;top:-4rem;z-index:3000;background:var(--ink);color:#fff;padding:.6rem 1rem;border-radius:999px;font-weight:600}
.skip:focus{top:1rem}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.progress{position:fixed;inset:0 0 auto 0;height:3px;z-index:1500;background:linear-gradient(90deg,var(--green),var(--violet));transform:scaleX(0);transform-origin:left}

/* ---------- Botões (pílulas) ---------- */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.9rem 1.5rem;border-radius:999px;border:1.5px solid transparent;font-family:var(--fh);font-weight:700;font-size:.95rem;letter-spacing:-.015em;line-height:1.2;cursor:pointer;text-align:center;overflow:hidden;transition:transform .3s var(--spring),box-shadow .3s var(--ease),background .2s,border-color .2s,color .2s}
.btn-buy{background:linear-gradient(180deg,#19e0a2,var(--green));color:var(--green-ink);box-shadow:var(--sh-cta);padding-right:.6rem}
.btn-buy::before{content:'';position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.55) 50%,transparent 65%);transform:translateX(-120%);animation:shine 4.5s ease-in-out infinite}
.btn-buy:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 22px 40px -14px rgba(0,135,95,.9)}
.btn-buy .go{position:relative;display:grid;place-items:center;width:2.1em;height:2.1em;border-radius:50%;background:var(--ink);color:#fff;transition:transform .35s var(--spring)}
.btn-buy:hover .go{transform:rotate(-45deg)}
.btn-buy.no-go{padding-right:1.5rem}
.btn-ink{background:var(--ink);color:#fff}
.btn-ink:hover{transform:translateY(-3px);box-shadow:var(--sh)}
.btn-ghost{border-color:var(--line-2);background:#fff;color:var(--ink)}
.btn-ghost:hover{border-color:var(--ink);transform:translateY(-3px)}
.btn-wa{border-color:rgba(10,125,90,.35);background:#fff;color:var(--wa-dark)}
.btn-wa:hover{background:#effff7;transform:translateY(-3px)}
.btn-sm{padding:.6rem 1.1rem;font-size:.85rem}
.btn-sm.btn-buy{padding-right:1.1rem}
.btn-lg{padding:1.05rem 1.7rem;font-size:1.04rem}
.btn-lg.btn-buy{padding-right:.65rem}
.btn-block{width:100%}
.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}
@keyframes shine{0%,60%{transform:translateX(-120%)}85%,100%{transform:translateX(120%)}}

/* ---------- Faixa de oferta ---------- */
.offer-bar{background:var(--deep);color:#eafff6;font-size:.82rem;font-weight:500;text-align:center;padding:.55rem var(--pad);line-height:1.35}
.offer-bar strong{color:#5df0c0}
.offer-bar a{text-decoration:underline;text-underline-offset:3px;white-space:nowrap;font-weight:600}
.offer-bar .ob-extra{display:none}
@media(min-width:720px){.offer-bar .ob-extra{display:inline}}

/* ---------- Header ---------- */
.header{position:sticky;top:0;z-index:1000;transition:background .3s,box-shadow .3s,border-color .3s;border-bottom:1px solid transparent}
.header.is-stuck{background:rgba(251,253,251,.86);backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px);border-color:var(--line);box-shadow:0 12px 30px -24px rgba(7,20,15,.5)}
.header-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:68px}
.brand{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--fh);font-weight:800;font-size:1.3rem;letter-spacing:-.04em}
.brand svg{width:32px;height:32px}
.brand b{color:var(--green-d);font-weight:800}
.brand .rings circle{transform-origin:16px 13.5px;animation:logo-ping 3s ease-out infinite}
@keyframes logo-ping{0%{transform:scale(.4);opacity:.9}70%,100%{transform:scale(1.5);opacity:0}}
.nav{display:none;align-items:center;gap:.3rem}
.nav a{position:relative;font-size:.92rem;font-weight:600;padding:.5rem .85rem;border-radius:999px;transition:background .25s,color .25s}
.nav a:hover{background:var(--bg-3)}
.nav a.is-active{background:var(--ink);color:#fff}
.header-cta{display:flex;align-items:center;gap:.5rem}
.header-cta .plat{display:none}
.burger{width:44px;height:44px;border:1.5px solid var(--line-2);border-radius:50%;background:#fff;cursor:pointer;position:relative}
.burger span{position:absolute;left:12px;right:12px;height:2px;background:var(--ink);border-radius:2px;transition:transform .3s var(--ease),top .3s var(--ease)}
.burger span:first-child{top:17px}.burger span:last-child{top:25px}
.burger[aria-expanded="true"] span:first-child{top:21px;transform:rotate(45deg)}
.burger[aria-expanded="true"] span:last-child{top:21px;transform:rotate(-45deg)}
.mnav{display:none;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 30px 50px -30px rgba(7,20,15,.5);padding:.6rem var(--pad) 1rem}
.mnav.is-open{display:block;animation:drop .35s var(--ease)}
.mnav a{display:flex;align-items:center;justify-content:space-between;padding:.9rem .2rem;border-bottom:1px solid var(--line);font-family:var(--fh);font-weight:600;font-size:1.02rem}
.mnav .btn{margin-top:.9rem;border-bottom:0;justify-content:center}
@keyframes drop{from{opacity:0;transform:translateY(-10px)}}
@media(min-width:1000px){.nav{display:flex}.burger,.mnav{display:none!important}.header-cta .plat{display:inline-flex}}

/* ---------- Tipografia de seção ---------- */
section{position:relative}
.sec{padding:clamp(3.8rem,8vw,6.5rem) 0}
.sec-alt{background:var(--bg-2)}
.eyebrow{display:inline-flex;align-items:center;gap:.55rem;font-family:var(--fh);font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--green-d);margin-bottom:1rem}
.eyebrow::before{content:'';width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(0,195,137,.22);animation:beat 2.2s ease-in-out infinite}
@keyframes beat{50%{box-shadow:0 0 0 8px rgba(0,195,137,0)}}
.h2{font-size:clamp(1.8rem,4.6vw,3rem);margin-bottom:1rem}
.mark{position:relative;white-space:nowrap;z-index:0}
.mark::before{content:'';position:absolute;z-index:-1;left:-.12em;right:-.12em;bottom:.04em;height:.46em;border-radius:.2em;background:linear-gradient(90deg,#7ff0c9,#b9f5dd);transform:scaleX(0);transform-origin:left;transition:transform .9s var(--ease) .25s}
.in .mark::before,.mark.in::before,.no-js .mark::before{transform:scaleX(1)}
.lead{font-size:clamp(1rem,1.6vw,1.13rem);color:var(--muted);max-width:62ch}
.sec-head{margin-bottom:clamp(1.9rem,4vw,3.1rem)}
.sec-head.c{text-align:center}
.sec-head.c .lead{margin-inline:auto}

/* ---------- Hero ---------- */
.hero{padding:clamp(1.6rem,4vw,2.6rem) 0 clamp(2.6rem,5vw,4rem);overflow:hidden;isolation:isolate;margin-top:-68px;padding-top:calc(68px + clamp(1.6rem,4vw,2.6rem))}
.hero::before{content:'';position:absolute;z-index:-1;left:50%;top:-30%;width:min(1500px,220vw);aspect-ratio:1;margin-left:calc(min(1500px,220vw)/-2);border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 58px,rgba(0,135,95,.1) 58px 59px);mask-image:radial-gradient(closest-side,#000 20%,transparent 78%);-webkit-mask-image:radial-gradient(closest-side,#000 20%,transparent 78%);animation:breathe 9s ease-in-out infinite}
.hero::after{content:'';position:absolute;z-index:-2;inset:0;background:radial-gradient(50% 45% at 50% 0,rgba(0,195,137,.2),transparent 70%),radial-gradient(35% 35% at 88% 12%,rgba(106,61,255,.13),transparent 70%)}
@keyframes breathe{50%{transform:scale(1.06)}}
.hero-top{text-align:center;max-width:900px;margin-inline:auto}
.pill{display:inline-flex;align-items:center;gap:.55rem;background:#fff;border:1px solid var(--line-2);border-radius:999px;padding:.32rem .9rem .32rem .36rem;font-size:.8rem;font-weight:600;color:var(--muted);box-shadow:var(--sh-sm);margin-bottom:1.1rem}
.pill b{background:var(--hot);color:#fff;border-radius:999px;padding:.14rem .6rem;font-size:.72rem;letter-spacing:.02em}
.hero h1{font-size:clamp(1.95rem,5.4vw,3.4rem);line-height:1.12;font-weight:800;margin-bottom:1rem;text-wrap:initial}
.hero h1 .k{display:block;font-size:max(.24em,.74rem);letter-spacing:.14em;text-transform:uppercase;color:var(--green-d);margin-bottom:.9rem;font-weight:700}
.rot{display:inline-block;position:relative;vertical-align:bottom;padding:.02em .34em .08em;border-radius:.34em;background:var(--ink);color:#7ff0c9;overflow:hidden;transition:width .5s var(--ease);white-space:nowrap}
.rot span{display:inline-block}
.rot.out span{animation:rot-out .32s var(--ease) forwards}
.rot.in span{animation:rot-in .5s var(--spring)}
@keyframes rot-out{to{transform:translateY(-110%);opacity:0}}
@keyframes rot-in{from{transform:translateY(110%);opacity:0}}
.hero-sub{font-size:clamp(1rem,1.6vw,1.14rem);color:var(--muted);max-width:70ch;margin:0 auto 1.2rem}
.hero-buy{display:flex;flex-direction:column;align-items:center;gap:.9rem}
.hero-price{display:flex;align-items:baseline;flex-wrap:wrap;justify-content:center;gap:.2rem .7rem;font-size:.92rem;color:var(--muted)}
.hero-price b{font-family:var(--fh);font-size:1.9rem;font-weight:800;letter-spacing:-.04em;color:var(--ink)}
.hero-price s{color:var(--dim)}
.off{display:inline-block;background:var(--hot-soft);color:#c5290d;font-weight:700;font-size:.74rem;border-radius:999px;padding:.14rem .55rem;letter-spacing:.02em}
.hero-btns{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;width:100%}
.hero-btns .btn{flex:1 1 230px;max-width:340px}
.assure{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem 1.1rem;font-size:.8rem;color:var(--muted);font-weight:500}
.assure li{display:inline-flex;align-items:center;gap:.35rem}
.assure .ico{color:var(--green-d);width:1rem;height:1rem}
.js .hero-top>*{opacity:0;animation:rise .8s var(--ease) forwards;animation-delay:calc(var(--d,0)*90ms + 80ms)}
@keyframes rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}

/* Cena do radar */
.scene{position:relative;margin-top:clamp(1.8rem,4vw,2.8rem);border-radius:var(--r-3);border:1px solid var(--line);background:radial-gradient(55% 70% at 50% 50%,#cbf5e2 0,#e6f8ef 55%,#f4fbf7 100%);padding:1rem;display:grid;gap:1rem;justify-items:center;overflow:hidden;box-shadow:var(--sh)}
.js .scene{opacity:0;animation:rise 1s var(--ease) .55s forwards}
.radar{position:relative;width:min(100%,460px);aspect-ratio:1}
.ring{position:absolute;inset:calc(var(--n)*12.5%);border-radius:50%;border:1.5px dashed rgba(0,135,95,.26)}
.ring:nth-child(odd){animation:spin 60s linear infinite}
.ring:nth-child(even){animation:spin 80s linear infinite reverse}
.sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,rgba(0,195,137,.34),rgba(0,195,137,0) 26%);animation:spin 5s linear infinite}
.ping{position:absolute;inset:38%;border-radius:50%;border:2px solid var(--green);animation:ping 3.6s ease-out infinite}
.ping:nth-of-type(2){animation-delay:1.2s}.ping:nth-of-type(3){animation-delay:2.4s}
@keyframes ping{0%{transform:scale(.7);opacity:.9}100%{transform:scale(4.1);opacity:0}}
@keyframes spin{to{transform:rotate(360deg)}}
.radar-tag{position:absolute;left:30%;top:30%;width:40%;filter:drop-shadow(0 18px 16px rgba(5,42,31,.45));animation:float 5s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-8px)}}
.orbit{position:absolute;inset:25%;animation:spin 14s linear infinite}
.orbit.o2{inset:12.5%;animation-duration:22s;animation-direction:reverse}
.orbit i{position:absolute;top:-15px;left:50%;margin-left:-15px;display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:var(--violet);color:#fff;box-shadow:0 8px 16px -6px rgba(79,39,214,.8);animation:spin 14s linear infinite reverse}
.orbit.o2 i{animation-duration:22s;animation-direction:normal}
.orbit .ico{width:15px;height:15px}
.asset{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:.3rem;background:none;border:0;cursor:pointer;font-size:.68rem;font-weight:700;color:var(--muted);z-index:2}
.asset .ic{display:grid;place-items:center;width:clamp(38px,10.5vw,54px);height:clamp(38px,10.5vw,54px);border-radius:32%;background:#fff;border:1px solid var(--line-2);box-shadow:var(--sh-sm);transition:transform .45s var(--spring),background .3s,color .3s,box-shadow .3s}
.asset .ico{width:46%;height:46%}
.asset b{background:#fff;border:1px solid var(--line);border-radius:999px;padding:.05rem .5rem;transition:background .3s,color .3s}
.asset.is-on .ic{background:var(--ink);color:#7ff0c9;transform:scale(1.18);box-shadow:0 0 0 7px rgba(0,195,137,.28),var(--sh-sm)}
.asset.is-on b{background:var(--ink);color:#fff;border-color:var(--ink)}
.side{display:grid;gap:.7rem;width:100%;max-width:460px}
.toast,.live{background:#fff;border:1px solid var(--line-2);border-radius:20px;box-shadow:var(--sh-sm)}
.toast{display:flex;align-items:center;gap:.7rem;padding:.7rem .9rem;font-size:.8rem;line-height:1.3;color:var(--muted);animation:pop 6s var(--ease) infinite}
.toast.t2{animation-delay:3s}
.toast b{display:block;font-family:var(--fh);font-size:.84rem;color:var(--ink);letter-spacing:-.01em}
.toast .ico{width:2.2rem;height:2.2rem;padding:.5rem;border-radius:12px;background:var(--violet-soft);color:var(--violet)}
.toast.t2 .ico{background:var(--amber-soft);color:var(--amber)}
@keyframes pop{0%,8%{opacity:0;transform:translateY(10px) scale(.96)}14%,86%{opacity:1;transform:none}94%,100%{opacity:0;transform:translateY(-8px) scale(.98)}}
.live{padding:.8rem;overflow:hidden}
.live-top{display:flex;justify-content:space-between;align-items:center;font-family:var(--fh);font-size:.78rem;font-weight:700;margin-bottom:.6rem}
.live-top i{font-style:normal;font-family:var(--fb);font-size:.66rem;font-weight:700;color:var(--green-d);background:var(--green-soft);border-radius:999px;padding:.14rem .55rem;display:inline-flex;align-items:center;gap:.3rem}
.live-top i::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--green);animation:blink 1.6s infinite}
@keyframes blink{50%{opacity:.25}}
.map{display:block;width:100%;height:auto;border-radius:12px;background:#e2f4ea}
.route{stroke-dasharray:1;stroke-dashoffset:1;animation:draw 5s var(--ease) infinite}
@keyframes draw{0%{stroke-dashoffset:1}55%,100%{stroke-dashoffset:0}}
.pin-pulse{transform-origin:center;transform-box:fill-box;animation:pulse 2s ease-out infinite}
@keyframes pulse{0%{transform:scale(.6);opacity:.7}100%{transform:scale(2.8);opacity:0}}
.live-info{margin-top:.7rem;transition:opacity .3s,transform .3s}
.live-info.sw{opacity:0;transform:translateY(6px)}
.live-info small{display:block;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}
.live-info b{display:block;font-family:var(--fh);font-size:1rem;letter-spacing:-.02em}
.live-info span{font-size:.8rem;color:var(--muted)}
.scene-note{text-align:center;font-size:.72rem;color:var(--dim);margin-top:.7rem}
@media(min-width:1000px){
  .scene{grid-template-columns:1fr 460px 1fr;align-items:center;padding:1.6rem 2rem;gap:2rem}
  .side{max-width:290px}
  .side.l{justify-self:end}.side.r{justify-self:start}
}

/* ---------- Letreiro ---------- */
.ticker{overflow:hidden;padding:1.1rem 0;border-block:1px solid var(--line);background:#fff;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.ticker ul{display:flex;gap:.7rem;width:max-content;animation:slide 40s linear infinite}
.ticker:hover ul{animation-play-state:paused}
.ticker li{display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap;font-family:var(--fh);font-weight:600;font-size:.92rem;border:1px solid var(--line-2);border-radius:999px;padding:.45rem 1rem;background:var(--bg)}
.ticker .ico{color:var(--green-d)}
@keyframes slide{to{transform:translateX(-50%)}}

/* ---------- Números ---------- */
.proof ul{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem;padding-block:clamp(1.6rem,4vw,2.6rem)}
.proof li{background:#fff;border:1px solid var(--line);border-radius:var(--r-2);padding:1.2rem 1rem;text-align:center}
.proof b{display:block;font-family:var(--fh);font-weight:800;font-size:clamp(1.6rem,4.4vw,2.5rem);letter-spacing:-.05em;line-height:1.1}
.proof li:nth-child(odd) b{color:var(--green-d)}
.proof li:nth-child(even) b{color:var(--violet)}
.proof span{font-size:.84rem;color:var(--muted);font-weight:500}
@media(min-width:820px){.proof ul{grid-template-columns:repeat(4,1fr)}}

/* ---------- Cards ---------- */
.grid{display:grid;gap:1rem}
.card{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r-2);padding:1.5rem;overflow:hidden;transition:transform .4s var(--spring),box-shadow .4s var(--ease),border-color .3s}
.card::before{content:'';position:absolute;inset:0;background:radial-gradient(260px circle at var(--mx,50%) var(--my,0%),rgba(0,195,137,.2),transparent 70%);opacity:0;transition:opacity .35s;pointer-events:none}
.card:hover{transform:translateY(-6px);box-shadow:var(--sh);border-color:rgba(0,135,95,.4)}
.card:hover::before{opacity:1}
.card>*{position:relative}
.card h3{font-size:1.12rem;margin-bottom:.5rem;letter-spacing:-.025em}
.card p{font-size:.95rem;color:var(--muted)}
.badge{display:grid;place-items:center;width:50px;height:50px;border-radius:32%;background:var(--green-soft);color:var(--green-d);margin-bottom:1rem;transition:transform .5s var(--spring)}
.card:hover .badge{transform:rotate(-8deg) scale(1.1)}
.badge .ico{width:24px;height:24px}
.badge.v{background:var(--violet-soft);color:var(--violet)}
.badge.a{background:var(--amber-soft);color:var(--amber)}
.badge.k{background:var(--ink);color:#7ff0c9}
@media(min-width:640px){.g-2{grid-template-columns:repeat(2,1fr)}}
@media(min-width:960px){.g-3{grid-template-columns:repeat(3,1fr)}.g-4{grid-template-columns:repeat(4,1fr)}}
@media(min-width:640px) and (max-width:959px){.g-3,.g-4{grid-template-columns:repeat(2,1fr)}}

/* ---------- O que proteger (abas) ---------- */
.tabs{display:flex;gap:.5rem;overflow-x:auto;padding:.2rem var(--pad) .9rem;margin-inline:calc(var(--pad)*-1);scrollbar-width:none;scroll-snap-type:x proximity}
.tabs::-webkit-scrollbar{display:none}
.tab{position:relative;flex:none;display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.1rem;border-radius:999px;border:1.5px solid var(--line-2);background:#fff;font-family:var(--fh);font-weight:600;font-size:.9rem;cursor:pointer;overflow:hidden;scroll-snap-align:center;transition:color .3s,border-color .3s,transform .3s var(--spring)}
.tab:hover{transform:translateY(-2px)}
.tab::before{content:'';position:absolute;inset:0;background:var(--ink);transform:scaleX(0);transform-origin:left}
.tab>*{position:relative}
.tab[aria-selected="true"]{color:#fff;border-color:var(--ink)}
.tab[aria-selected="true"]::before{transform:scaleX(1);transition:transform .35s var(--ease)}
.tab[aria-selected="true"]::after{content:'';position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--green);transform-origin:left;animation:fill var(--dur,7s) linear forwards}
.tabs.paused .tab::after{animation-play-state:paused}
@keyframes fill{from{transform:scaleX(0)}}
@media(min-width:900px){.tabs{justify-content:center;flex-wrap:wrap;overflow:visible}}
.panel{display:none;gap:1.4rem;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--r-3);padding:clamp(1.2rem,3.5vw,2.6rem);box-shadow:var(--sh)}
.panel.is-on{display:grid;animation:panel .6s var(--ease)}
@keyframes panel{from{opacity:0;transform:translateY(16px) scale(.985)}}
.panel h3{font-size:clamp(1.35rem,3vw,1.9rem);margin-bottom:.7rem}
.panel>div>p{color:var(--muted);margin-bottom:1.1rem}
.ticks{display:grid;gap:.6rem;margin-bottom:1.2rem}
.ticks li{display:flex;gap:.65rem;align-items:flex-start;font-weight:500;font-size:.97rem}
.ticks .ico{width:1.4rem;height:1.4rem;padding:.24rem;border-radius:50%;background:var(--green-soft);color:var(--green-d);stroke-width:3;margin-top:.1rem}
.panel.is-on .ticks li{animation:rise .6s var(--ease) backwards;animation-delay:calc(var(--i)*110ms + 150ms)}
.tip{display:flex;gap:.6rem;align-items:flex-start;background:var(--violet-soft);border-radius:var(--r);padding:.8rem 1rem;font-size:.9rem;color:#33208a}
.tip .ico{color:var(--violet);margin-top:.2rem}
.tip strong{color:var(--violet-d)}
.viz{position:relative;aspect-ratio:1.15;border-radius:var(--r-2);background:radial-gradient(60% 60% at 50% 45%,#cbf5e2,#eef8f3 75%);overflow:hidden;display:grid;place-items:center}
.viz .ping{inset:34%}
.viz-ico{position:relative;display:grid;place-items:center;width:38%;aspect-ratio:1;border-radius:32%;background:var(--ink);color:#7ff0c9;box-shadow:0 26px 40px -18px rgba(5,42,31,.8);animation:float 5s ease-in-out infinite}
.viz-ico .ico{width:52%;height:52%;stroke-width:1.6}
.viz-tag{position:absolute;right:26%;top:24%;width:17%;filter:drop-shadow(0 8px 8px rgba(5,42,31,.5));animation:tagin 1s var(--spring) .3s backwards}
@keyframes tagin{from{transform:translate(40px,-40px) rotate(60deg) scale(.3);opacity:0}}
.viz-status{position:absolute;left:5%;bottom:6%;right:5%;display:flex;align-items:center;gap:.6rem;background:#fff;border:1px solid var(--line-2);border-radius:16px;padding:.6rem .8rem;font-size:.78rem;color:var(--muted);box-shadow:var(--sh-sm);animation:rise .7s var(--ease) .5s backwards}
.viz-status b{display:block;font-family:var(--fh);font-size:.86rem;color:var(--ink)}
.viz-status .ico{width:2rem;height:2rem;padding:.45rem;border-radius:10px;background:var(--green-soft);color:var(--green-d)}
@media(min-width:900px){.panel{grid-template-columns:1.1fr .9fr;gap:3rem}}

/* ---------- Como funciona ---------- */
.flow{display:grid;gap:1.6rem}
.flow li{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r-2);padding:1.5rem 1.4rem;animation:lit 7.5s ease-in-out infinite;animation-delay:calc(var(--n)*2.5s)}
@keyframes lit{0%,26%,100%{border-color:var(--line);box-shadow:none}6%,18%{border-color:var(--green);box-shadow:0 0 0 5px rgba(0,195,137,.16),var(--sh)}}
.flow .num{position:absolute;right:1.2rem;top:1rem;font-family:var(--fh);font-weight:800;font-size:.8rem;letter-spacing:.08em;color:var(--dim)}
.flow h3{font-size:1.14rem;margin-bottom:.45rem}
.flow p{font-size:.95rem;color:var(--muted)}
.flow li:not(:last-child)::after{content:'';position:absolute;left:50%;bottom:-1.6rem;width:3px;height:1.6rem;margin-left:-1.5px;background:repeating-linear-gradient(180deg,var(--green) 0 6px,transparent 6px 12px);background-size:3px 12px;animation:dash-y .5s linear infinite}
@keyframes dash-y{to{background-position:0 12px}}
@keyframes dash-x{to{background-position:12px 0}}
.flow .waves{position:absolute;right:1.1rem;bottom:1.1rem;width:40px;height:40px;opacity:.5}
@media(min-width:900px){
  .flow{grid-template-columns:repeat(3,1fr);gap:2.6rem}
  .flow li:not(:last-child)::after{left:auto;right:-2.6rem;bottom:auto;top:50%;width:2.6rem;height:3px;margin:-1.5px 0 0;background:repeating-linear-gradient(90deg,var(--green) 0 6px,transparent 6px 12px);background-size:12px 3px;animation-name:dash-x}
}
.note{display:flex;gap:.8rem;align-items:flex-start;margin-top:1.5rem;background:#fff;border:1px dashed var(--line-2);border-radius:var(--r);padding:1rem 1.1rem;font-size:.93rem;color:var(--muted)}
.note .ico{color:var(--violet);width:1.3rem;height:1.3rem;margin-top:.15rem}
.note strong{color:var(--ink)}
.sub-h{font-family:var(--fh);font-size:clamp(1.25rem,2.6vw,1.6rem);letter-spacing:-.03em;margin-top:clamp(2.4rem,5vw,3.6rem)}
.steps{display:grid;gap:.8rem;margin-top:1.2rem;position:relative}
.steps li{display:flex;gap:.9rem;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:var(--r-2);padding:1.1rem 1.2rem;transition:transform .4s var(--spring)}
.steps li:hover{transform:translateY(-4px)}
.steps .n{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--ink);color:#7ff0c9;font-family:var(--fh);font-weight:800;font-size:.95rem}
.steps h3{font-size:1rem;margin-bottom:.15rem;letter-spacing:-.02em}
.steps p{font-size:.88rem;color:var(--muted)}
@media(min-width:700px){.steps{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1040px){.steps{grid-template-columns:repeat(4,1fr)}.steps li{flex-direction:column}}

/* ---------- Plataforma ---------- */
.split{display:grid;gap:1.8rem;align-items:center}
@media(min-width:940px){.split{grid-template-columns:1fr 1fr;gap:3.6rem}}
.stage{position:relative;border-radius:var(--r-3);background:radial-gradient(120% 90% at 70% 10%,#0c5a43 0,var(--deep) 60%);overflow:hidden;padding:1.6rem 1rem 0;min-height:340px;display:grid;place-items:end center}
.stage::before{content:'';position:absolute;left:50%;top:50%;width:160%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 44px,rgba(127,240,201,.13) 44px 45px);animation:breathe 8s ease-in-out infinite}
.stage img{position:relative;width:min(330px,78%);margin-bottom:-6%;transform:translateY(calc(var(--p,0)*-26px))}
.feed{position:absolute;left:.9rem;top:.9rem;width:min(232px,62%);background:rgba(255,255,255,.96);border-radius:18px;padding:.75rem .85rem;box-shadow:0 20px 40px -18px rgba(0,0,0,.7);z-index:2}
.feed>b{display:block;font-family:var(--fh);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--dim);margin-bottom:.45rem}
.feed li{display:flex;gap:.55rem;align-items:flex-start;font-size:.76rem;line-height:1.3;color:var(--muted);padding:.32rem 0;opacity:0;animation:feed 10s var(--ease) infinite;animation-delay:calc(var(--i)*1.4s)}
.feed li::before{content:'';flex:none;width:8px;height:8px;border-radius:50%;margin-top:.3rem;background:var(--green);box-shadow:0 0 0 3px rgba(0,195,137,.22)}
.feed li.al::before{background:var(--hot);box-shadow:0 0 0 3px rgba(255,86,48,.22)}
.feed li b{color:var(--ink);font-weight:700}
@keyframes feed{0%{opacity:0;transform:translateX(-12px)}6%,88%{opacity:1;transform:none}96%,100%{opacity:0}}
.feats{display:grid;gap:1rem;margin:1.5rem 0 1.8rem}
.feats li{display:flex;gap:.85rem;align-items:flex-start}
.feats .ico{flex:none;width:2.5rem;height:2.5rem;padding:.6rem;border-radius:32%;background:var(--green-soft);color:var(--green-d)}
.feats b{display:block;font-family:var(--fh);font-size:1.02rem;letter-spacing:-.02em}
.feats span{font-size:.93rem;color:var(--muted)}

/* ---------- Produto (bento) ---------- */
.bento{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}
.tile{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r-2);padding:1.2rem;overflow:hidden;transition:transform .4s var(--spring),box-shadow .4s}
.tile:hover{transform:translateY(-5px);box-shadow:var(--sh)}
.tile small{display:block;font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--dim)}
.tile b{display:block;font-family:var(--fh);font-weight:800;font-size:clamp(1.5rem,4vw,2.2rem);letter-spacing:-.05em;line-height:1.15}
.tile p{font-size:.86rem;color:var(--muted);margin-top:.2rem}
.tile-img{grid-column:1/-1;background:radial-gradient(80% 80% at 60% 20%,#cbf5e2,#f4fbf7 80%);display:grid;place-items:center;min-height:260px}
.tile-img::before{content:'';position:absolute;left:50%;top:50%;width:120%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 38px,rgba(0,135,95,.13) 38px 39px)}
.tile-img img{position:relative;width:min(300px,70%);filter:drop-shadow(0 30px 26px rgba(5,42,31,.45));transform:rotate(calc(var(--p,0)*38deg - 18deg)) scale(calc(.9 + var(--p,0)*.14))}
.tile.k{background:var(--ink);color:#fff}
.tile.k small{color:#8fb3a5}.tile.k b{color:#7ff0c9}.tile.k p{color:#b9cfc6}
.bat{height:12px;border-radius:999px;background:rgba(255,255,255,.14);margin-top:.9rem;overflow:hidden}
.bat i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#19e0a2,#7ff0c9);transform:scaleX(0);transform-origin:left;transition:transform 2s var(--ease) .3s}
.in .bat i{transform:scaleX(1)}
.tile.v{background:var(--violet-soft)}
.tile.v b{color:var(--violet-d)}
.bars{display:flex;align-items:flex-end;gap:5px;height:34px;margin-top:.8rem}
.bars i{flex:1;border-radius:4px;background:var(--violet);animation:eq 1.4s ease-in-out infinite;animation-delay:calc(var(--i)*.16s);transform-origin:bottom}
@keyframes eq{0%,100%{transform:scaleY(.3)}50%{transform:scaleY(1)}}
.drops{position:absolute;inset:0;pointer-events:none}
.drops i{position:absolute;top:-12px;left:var(--l);width:3px;height:12px;border-radius:3px;background:rgba(0,135,95,.35);animation:rain 1.6s linear infinite;animation-delay:var(--dl)}
@keyframes rain{to{transform:translateY(200px);opacity:0}}
@media(min-width:900px){.bento{grid-template-columns:repeat(4,1fr)}.tile-img{grid-column:span 2;grid-row:span 2}}

/* ---------- Comparativo ---------- */
.cmp-wrap{overflow-x:auto;border:1px solid var(--line-2);border-radius:var(--r-2);background:#fff;box-shadow:var(--sh-sm);-webkit-overflow-scrolling:touch}
.cmp{width:100%;min-width:600px;border-collapse:collapse;font-size:.93rem}
.cmp th,.cmp td{padding:.95rem 1rem;text-align:center;border-bottom:1px solid var(--line)}
.cmp tr:last-child td,.cmp tr:last-child th{border-bottom:0}
.cmp thead th{font-family:var(--fh);font-size:.8rem;letter-spacing:.05em;text-transform:uppercase;color:var(--dim);background:var(--bg-2)}
.cmp tbody th{text-align:left;font-weight:700;color:var(--ink)}
.cmp td{color:var(--muted)}
.cmp .hl{background:var(--green-soft);color:var(--green-ink);font-weight:700}
.cmp thead .hl{background:var(--ink);color:#7ff0c9}
.cmp tbody tr{transition:background .25s}
.cmp tbody tr:hover{background:var(--bg)}
.cmp .y,.cmp .n{display:inline-flex;align-items:center;gap:.3rem}
.cmp .y .ico{color:var(--green-d);stroke-width:3;width:1rem;height:1rem}
.cmp .n{color:var(--dim)}
.fine{font-size:.8rem;color:var(--dim);margin-top:.9rem;max-width:80ch}
.scroll-hint{display:block;font-size:.76rem;color:var(--dim);margin-top:.5rem}
@media(min-width:660px){.scroll-hint{display:none}}
@media(max-width:659px){.cmp{min-width:540px;font-size:.82rem}.cmp th,.cmp td{padding:.7rem .55rem}.cmp tbody th{width:24%}}

/* ---------- Casos ---------- */
.case .tag{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--violet-d);background:var(--violet-soft);border-radius:999px;padding:.22rem .65rem;margin-bottom:.9rem}
.case h3{font-size:1.1rem}
.case dl{display:flex;gap:1.2rem;margin-top:1rem;padding-top:1rem;border-top:1px dashed var(--line-2)}
.case dl div{display:flex;flex-direction:column}
.case dt{font-size:.72rem;color:var(--dim);font-weight:600;order:2}
.case dd{font-family:var(--fh);font-weight:800;font-size:1.3rem;letter-spacing:-.04em;color:var(--green-d)}

/* ---------- Preço ---------- */
.pricing{display:grid;gap:1.1rem;align-items:start}
@media(min-width:940px){.pricing{grid-template-columns:1.05fr .95fr;gap:1.6rem}}
.pbox{position:relative;background:#fff;border:1px solid var(--line-2);border-radius:var(--r-3);padding:clamp(1.3rem,3vw,2.1rem);box-shadow:var(--sh-sm)}
.pbox.main{border:0;box-shadow:var(--sh)}
.pbox.main::before{content:'';position:absolute;inset:-2px;z-index:-1;border-radius:calc(var(--r-3) + 2px);background:conic-gradient(from var(--ang,0deg),var(--green),var(--violet),#7ff0c9,var(--green));animation:ang 5s linear infinite}
@property --ang{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes ang{to{--ang:360deg}}
.step-tag{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--fh);font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:.3rem .8rem;margin-bottom:1rem;background:var(--ink);color:#7ff0c9}
.pbox.after .step-tag{background:var(--violet-soft);color:var(--violet-d)}
.pbox h3{font-size:1.35rem;margin-bottom:.3rem}
.pbox>p{color:var(--muted);font-size:.95rem;margin-bottom:1rem}
.sum{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;margin-bottom:1.1rem}
.sum li{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 1rem;font-size:.95rem;border-bottom:1px solid var(--line)}
.sum li:last-child{border-bottom:0;background:var(--bg-2);font-weight:800;font-family:var(--fh);font-size:1.1rem}
.sum li span:last-child{font-weight:700;white-space:nowrap}
.sum .free{color:var(--green-d)}
.sum s{color:var(--dim);font-weight:400;margin-right:.35rem}
.incl{display:grid;gap:.5rem;margin-bottom:1.3rem}
.incl li{display:flex;gap:.55rem;font-size:.93rem;color:var(--muted)}
.incl .ico{color:var(--green-d);stroke-width:3;margin-top:.2rem;width:1rem;height:1rem}
.plans{display:grid;gap:.75rem}
.plan{display:flex;align-items:center;justify-content:space-between;gap:.9rem;width:100%;text-align:left;background:#fff;border:1.5px solid var(--line-2);border-radius:var(--r-2);padding:1rem 1.1rem;cursor:pointer;transition:border-color .2s,transform .35s var(--spring),box-shadow .25s}
.plan:hover{border-color:var(--violet);transform:translateY(-3px);box-shadow:var(--sh-sm)}
.plan b{display:block;font-family:var(--fh);font-size:1.02rem}
.plan small{display:block;font-size:.82rem;color:var(--muted)}
.plan .v{font-family:var(--fh);font-weight:800;font-size:1.3rem;letter-spacing:-.04em;white-space:nowrap;text-align:right}
.plan .v small{font-family:var(--fb);font-weight:500;font-size:.74rem}
.plan .best{display:inline-block;background:var(--green-soft);color:var(--green-d);font-size:.66rem;font-weight:700;border-radius:999px;padding:.12rem .5rem;margin-left:.35rem;letter-spacing:.03em;text-transform:uppercase;vertical-align:middle}
.m-safe{display:flex;align-items:center;justify-content:center;gap:.35rem;font-size:.76rem;color:var(--dim);margin-top:.7rem;text-align:center}
.guar{display:grid;gap:.8rem;margin-top:1.4rem}
.guar li{display:flex;gap:.8rem;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:var(--r-2);padding:1rem 1.1rem}
.guar .ico{flex:none;width:2.4rem;height:2.4rem;padding:.55rem;border-radius:32%;background:var(--green-soft);color:var(--green-d)}
.guar b{display:block;font-family:var(--fh);font-size:.98rem}
.guar span{font-size:.86rem;color:var(--muted)}
.pricing .guar{margin-top:0}

/* ---------- Empresas ---------- */
.b2b{position:relative;overflow:hidden;background:linear-gradient(135deg,#e9fbf3,#efeaff);border:1px solid var(--line);border-radius:var(--r-3);padding:clamp(1.4rem,4vw,3rem)}
.who{display:flex;flex-wrap:wrap;gap:.45rem;margin:1.1rem 0 .2rem}
.who li{font-size:.82rem;font-weight:600;background:#fff;border:1px solid var(--line-2);border-radius:999px;padding:.3rem .8rem}
.b2b-stat{background:#fff;border:1px solid var(--line);border-radius:var(--r-2);padding:1.6rem;text-align:center;box-shadow:var(--sh-sm)}
.b2b-stat b{display:block;font-family:var(--fh);font-weight:800;font-size:clamp(3rem,9vw,4.6rem);letter-spacing:-.06em;line-height:1;background:linear-gradient(100deg,var(--green-d),var(--violet));-webkit-background-clip:text;background-clip:text;color:transparent}
.b2b-stat p{font-size:.92rem;color:var(--muted);margin-top:.4rem}

/* ---------- O que é / FAQ ---------- */
.about{display:grid;gap:1.4rem}
.about h3{font-size:1.08rem;margin-bottom:.4rem}
.about p{font-size:.95rem;color:var(--muted)}
@media(min-width:800px){.about{grid-template-columns:repeat(2,1fr);gap:2rem 3rem}}
.faq{max-width:840px;margin-inline:auto;display:grid;gap:.6rem}
.faq details{background:#fff;border:1px solid var(--line);border-radius:var(--r-2);transition:border-color .2s,box-shadow .2s}
.faq details[open]{border-color:var(--ink);box-shadow:var(--sh-sm)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.25rem;font-family:var(--fh);font-weight:600;font-size:1rem;letter-spacing:-.02em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';flex:none;display:grid;place-items:center;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--bg-3);color:var(--green-d);font-size:1.2rem;font-weight:500;transition:transform .4s var(--spring),background .2s,color .2s}
.faq details[open] summary::after{transform:rotate(135deg);background:var(--ink);color:#7ff0c9}
.faq details p{padding:0 1.25rem 1.2rem;color:var(--muted);font-size:.97rem;animation:rise .45s var(--ease)}

/* ---------- CTA final ---------- */
.final{padding:clamp(1.5rem,4vw,3rem) 0 clamp(3.4rem,7vw,5.5rem)}
.final-in{position:relative;overflow:hidden;border-radius:var(--r-3);background:linear-gradient(125deg,#00a877 0,#00c389 40%,#35d6b0 70%,#6a3dff 130%);color:var(--green-ink);padding:clamp(2.2rem,6vw,4.4rem) clamp(1.3rem,5vw,4rem);text-align:center;isolation:isolate}
.final-in::before{content:'';position:absolute;z-index:-1;left:50%;top:50%;width:140%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 52px,rgba(255,255,255,.28) 52px 53.5px);animation:breathe 7s ease-in-out infinite}
.final h2{font-size:clamp(1.8rem,5vw,3.1rem);font-weight:800;margin-bottom:.8rem}
.final p{max-width:58ch;margin:0 auto 1.6rem;font-size:1.06rem;font-weight:500}
.final .btns{display:flex;flex-wrap:wrap;gap:.7rem;justify-content:center}
.final small{display:block;margin-top:1.1rem;font-size:.84rem;font-weight:500}

/* ---------- Rodapé ---------- */
.footer{background:var(--deep);color:rgba(234,255,246,.72);padding:clamp(2.6rem,6vw,4rem) 0 6.5rem;font-size:.92rem}
.footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.ft{display:grid;gap:2rem}
.ft img{width:150px;margin-bottom:.9rem}
.ft h3{font-family:var(--fh);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:#7ff0c9;margin-bottom:.9rem}
.ft li{margin-bottom:.55rem}
.ft-bot{margin-top:2.2rem;padding-top:1.3rem;border-top:1px solid rgba(234,255,246,.16);display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;justify-content:space-between;font-size:.8rem;color:rgba(234,255,246,.55)}
@media(min-width:800px){.ft{grid-template-columns:1.6fr 1fr 1fr 1fr}.footer{padding-bottom:3rem}}

/* ---------- Flutuantes ---------- */
.wa-float{position:fixed;right:16px;bottom:16px;z-index:900;display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--wa);color:#fff;box-shadow:0 12px 28px -8px rgba(18,140,90,.7);transition:transform .3s var(--spring),bottom .3s var(--ease)}
.wa-float::before{content:'';position:absolute;inset:0;border-radius:50%;border:2px solid var(--wa);animation:ping-s 2.6s ease-out infinite}
@keyframes ping-s{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.7);opacity:0}}
.wa-float:hover{transform:scale(1.1) rotate(8deg)}
.wa-float svg{width:28px;height:28px;fill:#fff}
.sticky{position:fixed;inset:auto 0 0 0;z-index:950;display:flex;align-items:center;justify-content:space-between;gap:.8rem;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line-2);padding:.6rem var(--pad) calc(.6rem + env(safe-area-inset-bottom));box-shadow:0 -14px 30px -18px rgba(7,20,15,.35);transform:translateY(110%);transition:transform .45s var(--spring)}
.sticky.is-on{transform:none}
.sticky b{display:block;font-family:var(--fh);font-weight:800;font-size:1.18rem;letter-spacing:-.04em;line-height:1.1}
.sticky b s{font-family:var(--fb);font-size:.74rem;font-weight:500;color:var(--dim);margin-right:.3rem;letter-spacing:0}
.sticky span{font-size:.74rem;color:var(--muted)}
.sticky .btn{padding:.8rem 1.3rem;white-space:nowrap}
.has-sticky .wa-float{bottom:88px}
@media(min-width:1000px){.sticky{display:none}.has-sticky .wa-float{bottom:16px}}

/* ---------- Modal de assinatura ---------- */
.ov{position:fixed;inset:0;z-index:2000;display:none;align-items:flex-end;justify-content:center;background:rgba(5,42,31,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.ov.is-on{display:flex}
.modal{background:#fff;width:100%;max-width:500px;max-height:94dvh;overflow-y:auto;border-radius:28px 28px 0 0;padding:1.4rem 1.2rem calc(1.4rem + env(safe-area-inset-bottom));box-shadow:0 40px 100px rgba(5,42,31,.5);animation:sheet .45s var(--spring)}
@keyframes sheet{from{transform:translateY(40px);opacity:0}}
@media(min-width:600px){.ov{align-items:center;padding:1rem}.modal{border-radius:28px;padding:1.8rem}}
.m-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}
.m-head h2{font-size:1.35rem}
.m-head p{font-size:.8rem;color:var(--muted);display:flex;align-items:center;gap:.3rem;margin-top:.2rem}
.m-x{flex:none;width:40px;height:40px;border-radius:50%;border:1.5px solid var(--line-2);background:#fff;cursor:pointer;font-size:1.05rem;line-height:1}
.m-plan{display:flex;justify-content:space-between;align-items:center;background:var(--green-soft);border:1px solid rgba(0,135,95,.3);border-radius:var(--r);padding:.8rem 1rem;margin-bottom:1.1rem;font-weight:600}
.m-plan b{font-family:var(--fh);font-size:1.25rem;letter-spacing:-.03em;color:var(--green-ink)}
.fg{margin-bottom:.8rem}
.fg label{display:block;font-size:.78rem;font-weight:700;color:var(--muted);margin-bottom:.3rem}
.fg input{width:100%;padding:.8rem .95rem;border:1.5px solid var(--line-2);border-radius:14px;background:#fff;font-size:1rem;outline:none;transition:border-color .2s,box-shadow .2s}
.fg input:focus{border-color:var(--green-d);box-shadow:0 0 0 4px var(--green-soft)}
.fg .err{display:none;font-size:.78rem;color:#c5290d;margin-top:.25rem;font-weight:500}
.fr{display:grid;gap:0 .7rem}
@media(min-width:520px){.fr{grid-template-columns:1fr 1fr}}
.m-sub{font-family:var(--fh);font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);margin:1rem 0 .6rem}
.pmets{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;margin-bottom:.9rem}
.pm{border:1.5px solid var(--line-2);border-radius:16px;background:#fff;padding:.8rem .4rem;text-align:center;cursor:pointer;font-weight:700;font-size:.86rem;color:var(--muted);transition:.2s}
.pm .ico{display:block;margin:0 auto .3rem;width:1.4rem;height:1.4rem}
.pm.is-on{border-color:var(--green-d);background:var(--green-soft);color:var(--green-ink)}
.pm.is-err{border-color:#e2553b}
.pay-box{display:none;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r);padding:1.1rem;text-align:center;margin-bottom:.9rem;font-size:.9rem;color:var(--muted)}
.pay-box img{width:190px;height:190px;margin:0 auto .7rem;border-radius:10px;background:#fff}
.pix-key{font-size:.68rem;word-break:break-all;background:#fff;border:1px solid var(--line);border-radius:8px;padding:.5rem;margin:.6rem 0;text-align:left;max-height:54px;overflow:auto}
.spin{width:18px;height:18px;border:2.5px solid rgba(2,38,26,.25);border-top-color:var(--green-ink);border-radius:50%;animation:spin .7s linear infinite}
.m-ok{text-align:center;padding:1.5rem 0}
.m-ok>.ico{width:3.4rem;height:3.4rem;padding:.9rem;border-radius:50%;background:var(--green-soft);color:var(--green-d);margin:0 auto 1rem;stroke-width:3}
.m-ok h2{font-size:1.5rem;margin-bottom:.5rem}
.m-ok p{color:var(--muted);margin-bottom:1.2rem}

/* ---------- Entrada ao rolar ---------- */
.js .rv{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease),transform .8s var(--ease);transition-delay:calc(var(--i,0)*80ms)}
.js .rv.l{transform:translateX(-36px)}
.js .rv.r{transform:translateX(36px)}
.js .rv.z{transform:scale(.9)}
.js .rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .js .rv,.js .hero-top>*,.js .scene,.feed li{opacity:1!important;transform:none!important}
  .route{stroke-dashoffset:0}
  .mark::before,.bat i{transform:scaleX(1)}
  .tab[aria-selected="true"]::after{display:none}
}

.btn.btn-buy.no-go{padding-right:1.5rem}
.btn.btn-buy.no-go.btn-sm{padding-right:1.1rem}

/* No celular os dois avisos do radar se alternam no mesmo espaço */
@media(max-width:999px){.side.l{grid-template-areas:'a'}.side.l .toast{grid-area:a}}
