/* Citavo — tema (landing + blog + Woo). Tokens vêm de brand.css (plugin). */
.wrap{max-width:1200px;margin:0 auto;padding:0 22px}
.center{text-align:center}.small{font-size:.9rem}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.lead{font-size:clamp(1.05rem,1.4vw,1.22rem);color:var(--ink-2);max-width:62ch}
.micro{display:flex;gap:16px;flex-wrap:wrap;font:600 14px var(--f-body);color:var(--ink-2);margin-top:18px}.micro .i{color:var(--mint)}
.muted-w{opacity:.75}

/* Topo */
.site-top{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.88);backdrop-filter:blur(12px);border-bottom:1.5px solid var(--line)}
.nav-row{display:flex;align-items:center;gap:24px;height:72px}
.brand img{height:36px;width:auto}
.menu{display:flex;gap:6px;margin-left:12px}
.menu a{font:600 15px var(--f-body);color:var(--ink-2);text-decoration:none;padding:8px 12px;border-radius:99px}
.menu a:hover{background:var(--lilac);color:var(--ink)}
.nav-cta{margin-left:auto;display:flex;gap:8px}

/* Hero */
.hero{position:relative;overflow:hidden;padding:64px 0 0;background:radial-gradient(circle at 92% 8%,var(--sun-200),transparent 32%),radial-gradient(circle at 0% 100%,var(--lilac),transparent 45%)}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.hero h1{margin:18px 0 18px}
.hero h1 .serif{color:var(--grape)}
.hero-cta{margin-top:26px}
.hero-demo{position:relative;min-height:460px;display:grid;place-items:center}
.phone{width:min(400px,100%);background:#fff;border:var(--b);border-radius:30px;box-shadow:10px 10px 0 var(--grape);overflow:hidden;transform:rotate(1.5deg)}
.phone-top{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1.5px solid var(--line);font:700 14px var(--f-body)}
.ai-dot{width:26px;height:26px;border-radius:50%;background:conic-gradient(var(--grape),var(--sun),var(--tomato),var(--grape));border:1.5px solid var(--ink)}
.chat{padding:18px;display:grid;gap:12px;min-height:310px;align-content:start;background:var(--lilac-2)}
.msg{max-width:90%;padding:12px 14px;border:var(--b);border-radius:18px 18px 18px 6px;background:#fff;font-size:15px;line-height:1.5}
.msg.q{margin-left:auto;background:var(--sun);border-radius:18px 18px 6px 18px}
.msg mark{background:var(--sun);padding:0 4px;border-radius:5px}
.msg .src{display:flex;gap:6px;align-items:center;margin-top:10px;font:700 12px var(--f-body);color:var(--grape)}
.typing{display:flex;gap:5px;padding:14px 16px;border:var(--b);border-radius:18px;background:#fff;width:max-content}
.typing i{width:8px;height:8px;border-radius:50%;background:var(--grape-400);animation:blink 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
.chat .d1{animation:rise .5s .3s both}.chat .d2{animation:rise .4s 1.1s both,vanish .2s 2.6s forwards}.chat .d3{animation:rise .6s 2.7s both}
@keyframes blink{0%,100%{opacity:.3}50%{opacity:1}}
@keyframes vanish{to{opacity:0;height:0;padding:0;margin:0;border:0;overflow:hidden}}
.float-bot{position:absolute;z-index:2}.float-bot .bot{box-shadow:var(--shadow);font-size:14px;padding:7px 14px 7px 7px}
.b1{top:16px;left:-6px}.b2{bottom:70px;right:-16px}.b3{bottom:6px;left:20px}
.sq{position:absolute;width:160px;top:-6px;right:20px;transform:rotate(-8deg)}
.marquee{margin-top:56px;border-top:var(--b);border-bottom:var(--b);background:var(--grape);padding:14px 0;overflow:hidden}
.marquee-track{display:flex;gap:12px;width:max-content;animation:marq 40s linear infinite}
.marquee .bot{background:#fff}
@keyframes marq{to{transform:translateX(-50%)}}

/* Seções */
.sec{padding:96px 0;position:relative}
.sec-lilac{background:var(--lilac);border-top:var(--b);border-bottom:var(--b)}
.sec-dark{background:var(--grape-900);color:#fff}.sec-dark h2,.sec-dark h3{color:#fff}.sec-dark .lead{color:#D9C8EA}
.sec-sun{background:var(--sun);border-top:var(--b);border-bottom:var(--b);padding:70px 0}
.sec-head{text-align:center;max-width:820px;margin:0 auto 52px}.sec-head h2{margin-top:16px}.sec-head .lead{margin:0 auto}
.sec-head .serif,h2 .serif{color:var(--grape)}.sec-dark .serif{color:var(--sun)}

/* Antes/depois */
.ba{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center;margin-bottom:18px}
.ba-card{border:var(--b);border-radius:var(--r-xl);padding:24px;display:grid;gap:12px;background:#fff;box-shadow:var(--shadow-l)}
.ba-card.before{background:#FFF5F4;transform:rotate(-1deg)}.ba-card.after{background:#F1FCF7;transform:rotate(1deg)}
.ba-card .chip{justify-self:start}
.ba-note{margin:4px 0 0;font:600 13px var(--f-body);color:var(--ink-3)}
.ba-vs{width:64px;height:64px;border-radius:50%;background:var(--ink);color:var(--sun);display:grid;place-items:center;font:800 20px var(--f-display);border:var(--b)}

/* Passos */
.steps3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.step{background:#fff;border:var(--b);border-radius:var(--r-xl);padding:28px;box-shadow:var(--shadow-l);position:relative;transition:transform .25s var(--ease)}
.step:hover{transform:translateY(-6px) rotate(-.5deg)}
.step .doodle{height:150px;margin:0 auto 14px}
.step-n{position:absolute;top:-18px;left:24px;width:44px;height:44px;border-radius:50%;background:var(--sun);border:var(--b);display:grid;place-items:center;font:800 20px var(--f-display);box-shadow:var(--shadow)}

/* Demo painel */
.dash-demo-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center}
.ticks{list-style:none;padding:0;display:grid;gap:10px;margin:22px 0 28px;font-weight:600}.ticks .i{color:var(--mint)}
.dash{background:#fff;border:var(--b);border-radius:var(--r-xl);box-shadow:10px 10px 0 var(--ink);overflow:hidden}
.dash-top{display:flex;gap:7px;align-items:center;padding:12px 16px;border-bottom:1.5px solid var(--line);font-size:14px}
.dash-top>span:not(.chip){width:11px;height:11px;border-radius:50%;background:var(--line)}.dash-top>span:nth-child(1){background:var(--tomato)}.dash-top>span:nth-child(2){background:var(--sun)}.dash-top>span:nth-child(3){background:var(--mint)}
.dash-top b{margin-left:8px}
.dash-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:16px}
.kpi{position:relative;background:#fff;border:var(--b);border-radius:var(--r);padding:14px;overflow:hidden}
.kpi::before{content:"";position:absolute;inset:0 0 auto;height:5px;background:var(--c)}
.k-label{font:700 12px var(--f-body);color:var(--ink-2)}.k-num{font:800 2rem/1 var(--f-display);letter-spacing:-.04em;margin:8px 0 6px}
.delta{font:700 11.5px var(--f-body);padding:3px 7px;border-radius:99px;background:var(--mint-200);color:#0B6B4A}
.dash-chart{width:100%;height:170px;display:block}
.draw{stroke-dasharray:1200;stroke-dashoffset:1200}.in .draw{animation:drawl 2s var(--ease) forwards}.in .draw.d2{animation-delay:.4s}
@keyframes drawl{to{stroke-dashoffset:0}}
.table{width:100%;border-collapse:collapse;font-size:14px}.table td{padding:10px 16px;border-top:1px solid var(--line)}.table .num{text-align:right;font-weight:800;font-family:var(--f-display)}
.hbar{height:8px;border-radius:99px;background:var(--lilac);overflow:hidden;min-width:70px}.hbar i{display:block;height:100%;background:var(--grape);border-radius:99px}

/* Motores */
.engines{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.engine{border:2px solid #fff3;border-radius:var(--r-xl);padding:26px;background:linear-gradient(160deg,#ffffff12,#ffffff03);position:relative;transition:transform .25s var(--ease),border-color .25s}
.engine:hover{transform:translateY(-4px);border-color:var(--sun)}
.engine-ico{width:56px;height:56px;border-radius:18px;background:var(--sun);color:var(--ink);display:grid;place-items:center;border:var(--b);margin-bottom:16px}
.engine-n{position:absolute;top:22px;right:24px;font:800 2.4rem var(--f-display);opacity:.12}
.engine p{color:#D9C8EA;margin:0}
.engine-cta{display:grid;place-items:center;gap:14px;text-align:center;border-style:dashed}.engine-cta .doodle{width:220px}

/* Arquivos */
.files-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.file-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.code-tabs input{display:none}
.ct-head{display:flex;gap:6px;margin-bottom:-2px;position:relative;z-index:1}
.ct-head label{font:700 13px var(--f-mono);padding:10px 14px;border:var(--b);border-bottom:0;border-radius:14px 14px 0 0;background:var(--lilac);cursor:pointer}
.code{background:var(--grape-900);color:#EADCF7;border:var(--b);border-radius:0 var(--r) var(--r) var(--r);padding:20px;font:13.5px/1.65 var(--f-mono);white-space:pre-wrap;margin:0;box-shadow:var(--shadow-l);min-height:330px;display:none}
#ft1:checked~.ct1,#ft2:checked~.ct2,#ft3:checked~.ct3{display:block}
#ft1:checked~.ct-head label[for=ft1],#ft2:checked~.ct-head label[for=ft2],#ft3:checked~.ct-head label[for=ft3]{background:var(--grape-900);color:var(--sun)}

/* Score band */
.score-band{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:center;position:relative}
.score-ring{--p:0;width:190px;height:190px;border-radius:50%;background:conic-gradient(var(--ink) calc(var(--p)*1%),#fff8 0);border:var(--b);display:grid;place-items:center;text-align:center;position:relative}
.score-ring::before{content:"";position:absolute;inset:18px;border-radius:50%;background:#fff;border:var(--b)}
.score-ring b,.score-ring span{position:relative}.score-ring b{font:800 64px/1 var(--f-display);display:block;margin-top:40px}.score-ring span{font:700 12px var(--f-body);margin-top:-40px;max-width:110px}
.score-doodle{position:absolute;right:0;top:-30px;width:150px}

/* Preços */
.pricing>input{display:none}
.cyc{display:flex;justify-content:center;gap:4px;margin:0 auto 38px;padding:5px;border:var(--b);border-radius:99px;width:max-content;background:#fff}
.cyc label{font:700 15px var(--f-body);padding:10px 18px;border-radius:99px;cursor:pointer;display:flex;gap:8px;align-items:center}
#cyc-m:checked~.cyc label[for=cyc-m],#cyc-y:checked~.cyc label[for=cyc-y]{background:var(--ink);color:#fff}
#cyc-m:checked~.plans .p-y,#cyc-y:checked~.plans .p-m{display:none}
.plans{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:stretch}
.plan{display:flex;flex-direction:column;gap:12px;padding:26px 22px;border:var(--b);border-radius:var(--r-xl);background:#fff;box-shadow:var(--shadow-l);position:relative;transition:transform .25s var(--ease)}
.plan:hover{transform:translateY(-6px)}
.plan.pop{background:var(--grape);color:#fff;transform:scale(1.04);box-shadow:10px 10px 0 var(--ink);z-index:1}.plan.pop:hover{transform:scale(1.04) translateY(-6px)}
.plan.pop h3,.plan.pop .price{color:#fff}
.plan h3{margin:0;font-size:1.5rem}.tagline{opacity:.75}
.ribbon{position:absolute;top:-15px;left:50%;transform:translateX(-50%)}
.price{font:800 2.8rem/1 var(--f-display);letter-spacing:-.04em}.price small{font:600 15px var(--f-body);opacity:.7;letter-spacing:0}
.plan ul{list-style:none;padding:0;margin:6px 0 12px;display:grid;gap:9px;font-size:14.5px}
.plan li{display:flex;gap:8px;align-items:flex-start}.plan li .i{color:var(--mint);margin-top:2px}.plan.pop li .i{color:var(--sun)}
.plan li.no{opacity:.45}.plan li.no .i{color:inherit}
.plan .btn{margin-top:auto}
.trust{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 28px;margin-top:40px;font:600 14.5px var(--f-body);color:var(--ink-2)}.trust .i{color:var(--grape)}

/* FAQ */
.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}
.faq-grid .doodle{width:220px;margin-top:20px}
.faq details{background:#fff;border:var(--b);border-radius:var(--r);margin-bottom:12px;box-shadow:var(--shadow);transition:transform .2s}
.faq summary{list-style:none;cursor:pointer;padding:18px 20px;font:700 17px var(--f-body);display:flex;justify-content:space-between;gap:12px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary .i{transition:transform .25s var(--bounce);flex:none}.faq details[open] summary .i{transform:rotate(45deg)}
.faq details p{margin:0;padding:0 20px 18px;color:var(--ink-2)}

/* CTA final */
.final-box{text-align:center;background:var(--grape);color:#fff;border:var(--b);border-radius:40px;padding:70px 24px;box-shadow:12px 12px 0 var(--ink);position:relative;overflow:hidden}
.final-box h2{color:#fff;margin:18px 0 30px}.final-box .serif{color:var(--sun)}
.final-doodle{width:280px;margin:0 auto}
.final-box .micro{justify-content:center;color:#E9DAF6}

/* Rodapé */
.site-foot{background:var(--grape-900);color:#fff;padding:64px 0 28px;margin-top:0}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:36px}
.foot-grid b{display:block;margin-bottom:10px;font-family:var(--f-display)}
.foot-grid a{display:block;color:#E9DAF6;text-decoration:none;margin:6px 0}.foot-grid a:hover{color:var(--sun)}
.foot-bottom{border-top:1px solid #ffffff22;margin-top:36px;padding-top:20px;font-size:14px;opacity:.75}

/* Conteúdo (blog/páginas/Woo) */
.content{max-width:760px;margin:60px auto;padding:0 22px}
.content h1{font-size:clamp(2.2rem,4.5vw,3.4rem)}
.content img{border-radius:var(--r);border:var(--b)}
.posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;max-width:1200px;margin:50px auto;padding:0 22px}
.post-card{border:var(--b);border-radius:var(--r-l);padding:22px;background:#fff;box-shadow:var(--shadow);text-decoration:none;color:inherit;display:block;transition:transform .2s}
.post-card:hover{transform:translate(-2px,-2px)}
.woo-wrap{max-width:1100px;margin:50px auto;padding:0 22px}
.woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce #place_order{background:var(--grape)!important;color:#fff!important;border:var(--b)!important;border-radius:99px!important;box-shadow:var(--shadow)!important;font-weight:700!important;padding:14px 22px!important}
.woocommerce form .input-text,.woocommerce form select{border:var(--b)!important;border-radius:10px!important;padding:11px 13px!important}
.woocommerce-checkout #payment{background:var(--lilac)!important;border:var(--b);border-radius:var(--r)}

/* Reveal */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:calc(var(--d,0) * 80ms)}
.reveal.in{opacity:1;transform:none}
.no-js .reveal{opacity:1;transform:none}

@media (max-width:980px){
  .hero-grid,.dash-demo-grid,.files-grid,.faq-grid{grid-template-columns:1fr}
  .steps3,.engines{grid-template-columns:1fr}.plans{grid-template-columns:1fr 1fr}.plan.pop{transform:none}
  .ba{grid-template-columns:1fr}.ba-vs{margin:0 auto}.menu{display:none}
  .score-band{grid-template-columns:1fr;justify-items:center;text-align:center}.score-doodle{display:none}
  .foot-grid{grid-template-columns:1fr}
}
@media (max-width:620px){.plans{grid-template-columns:1fr}.dash-kpis{grid-template-columns:1fr 1fr 1fr;gap:6px}.k-num{font-size:1.4rem}.nav-cta .btn-ghost{display:none}.sec{padding:70px 0}.hero-demo{min-height:420px}.b2{right:0}}

/* Simulador multietapas */
.sim-sec{background:linear-gradient(180deg,#fff,var(--lilac-2))}
.sim{position:relative;max-width:1000px;margin:0 auto;background:#fff;border:var(--b);border-radius:var(--r-xl);box-shadow:10px 10px 0 var(--grape);padding:28px 30px 32px;overflow:hidden}
.sim-steps{display:flex;align-items:center;gap:8px;font:700 13px var(--f-body);color:var(--ink-3);flex-wrap:wrap}
.sim-steps i{flex:1;min-width:14px;height:2px;background:var(--line)}
.sim-steps span{padding:6px 12px;border-radius:99px;border:1.5px solid var(--line);transition:all .3s}
.sim-steps span.on{background:var(--sun);border-color:var(--ink);color:var(--ink)}.sim-steps span.done{background:var(--mint-200);border-color:var(--mint);color:#0B6B4A}
.sim-bar{height:6px;background:var(--lilac);border-radius:99px;margin:16px 0 24px;overflow:hidden}.sim-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--grape),var(--sun));transition:width .5s var(--ease)}
.sim-pane{display:none;animation:simIn .45s var(--ease) both}.sim-pane.on{display:grid;gap:16px}
@keyframes simIn{from{opacity:0;transform:translateX(24px)}}
.sim-pane h3{font-size:1.7rem;margin:0;max-width:calc(100% - 150px)}
.input-xl{font-size:18px;padding:15px 16px;border-radius:14px}
.sim-f2{display:grid;grid-template-columns:1.3fr 1fr;gap:12px}.sim-f2 label,.sim-l{display:grid;gap:6px;font:700 13px var(--f-body);color:var(--ink-2)}
.sim-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.sim-cat{display:flex;gap:10px;align-items:center;padding:14px;border:var(--b);border-radius:16px;background:#fff;font:700 14.5px var(--f-body);cursor:pointer;text-align:left;transition:transform .15s,background .2s}
.sim-cat .i{color:var(--grape)}.sim-cat:hover{transform:translateY(-2px)}.sim-cat.on{background:var(--grape);color:#fff;box-shadow:var(--shadow)}.sim-cat.on .i{color:var(--sun)}
.sim-pipe{list-style:none;padding:0;margin:0;display:grid;gap:10px;max-width:520px}
.sim-pipe li{padding:13px 16px 13px 50px;border:1.5px solid var(--line);border-radius:14px;position:relative;font-weight:600;color:var(--ink-3);transition:all .3s}
.sim-pipe li::before{content:"";position:absolute;left:16px;top:50%;width:20px;height:20px;margin-top:-10px;border-radius:50%;border:2px solid var(--line)}
.sim-pipe li.run{color:var(--ink);border-color:var(--ink);box-shadow:var(--shadow)}.sim-pipe li.run::before{border:3px solid var(--grape);border-right-color:transparent;animation:spin .7s linear infinite}
.sim-pipe li.done{color:var(--ink);border-color:var(--mint);background:#F1FCF7}.sim-pipe li.done::before{background:var(--mint);border-color:var(--mint)}
.sim-result{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.sim-chat{display:grid;gap:10px;align-content:start;background:var(--lilac-2);border:1.5px solid var(--line);border-radius:20px;padding:16px}
.sim-tabs{display:flex;gap:8px;align-items:center;margin-bottom:-2px}.sim-tabs b{font:700 13px var(--f-mono);background:var(--grape-900);color:var(--sun);padding:9px 14px;border:var(--b);border-bottom:0;border-radius:14px 14px 0 0}
.sim-code{display:block!important;min-height:0!important;font-size:12.5px}
.sim-cta{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:6px;padding:16px;border:var(--b);border-radius:20px;background:var(--sun-200)}.sim-cta>div{flex:1;display:grid}
.sim-doodle{position:absolute;right:20px;top:70px;width:120px}
.shake{animation:shake .5s}@keyframes shake{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
@media(max-width:760px){.sim{padding:20px}.sim-f2,.sim-result,.sim-cats{grid-template-columns:1fr}.sim-doodle{display:none}.sim-pane h3{max-width:none}.sim-steps i{display:none}}
