/* ============================================================
   BPOx — sistema de design do site (todas as páginas usam este arquivo)
   Suba este bpox.css na raiz do site, junto dos .html.
   ============================================================ */
:root{
  --navy:#0A1A33; --navy2:#0F2A52; --navy3:#12356A;
  --emerald:#1FBF8F; --emerald-d:#13A579; --emerald-pale:#E7F8F1;
  --ink:#0C1A30; --muted:#5A6B82;
  --paper:#FFFFFF; --soft:#F5F9FC; --line:#E5ECF4;
  --amber:#F2B233; --red:#E5564B;
  --shadow:0 24px 60px -20px rgba(10,26,51,.35);
  --radius:18px; --maxw:1140px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Figtree',system-ui,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Bricolage Grotesque',sans-serif;line-height:1.08;letter-spacing:-.02em;font-weight:800}
a{color:inherit;text-decoration:none}
em{font-style:normal;color:var(--emerald)}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.narrow{max-width:780px;margin:0 auto}
.sec{padding:96px 0}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--emerald-d)}
.lead{font-size:18px;color:var(--muted);max-width:640px}

.btn{display:inline-flex;align-items:center;gap:8px;font-weight:700;border-radius:12px;padding:14px 22px;font-size:15px;cursor:pointer;border:none;transition:.18s;font-family:inherit}
.btn-primary{background:var(--emerald);color:#04231a;box-shadow:0 10px 24px -8px rgba(31,191,143,.6)}
.btn-primary:hover{transform:translateY(-2px);background:var(--emerald-d)}
.btn-ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.25)}
.btn-ghost:hover{border-color:rgba(255,255,255,.6)}
.btn-dark{background:var(--navy);color:#fff}
.btn-dark:hover{transform:translateY(-2px)}
.btn-block{width:100%;justify-content:center}

.invite{background:linear-gradient(90deg,var(--emerald-d),var(--emerald));color:#04231a;font-size:13.5px;font-weight:600;text-align:center;padding:9px 16px}
.invite b{color:#04231a}

header.nav{position:sticky;top:0;z-index:40;background:rgba(10,26,51,.86);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav-in{display:flex;align-items:center;gap:28px;height:68px}
.logo{height:30px;display:block}
.nav-links{display:flex;gap:26px;margin-left:8px}
.nav-links a{color:rgba(255,255,255,.82);font-size:14.5px;font-weight:600}
.nav-links a:hover,.nav-links a.active{color:var(--emerald)}
.nav-cta{margin-left:auto;display:flex;align-items:center;gap:14px}
.nav-cta a.entrar{color:rgba(255,255,255,.85);font-size:14.5px;font-weight:600}
@media(max-width:880px){.nav-links{display:none}}

.hero{position:relative;background:radial-gradient(1200px 600px at 78% -10%,rgba(31,191,143,.22),transparent 60%),radial-gradient(900px 500px at 10% 10%,rgba(18,53,106,.6),transparent 55%),var(--navy);color:#fff;overflow:hidden}
.hero::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:22px 22px;opacity:.5;pointer-events:none}
.hero-in{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center;padding:74px 0 90px}
.hero-solo{position:relative;z-index:1;padding:74px 0 80px;max-width:760px}
.pill{display:inline-flex;align-items:center;gap:8px;background:rgba(31,191,143,.14);border:1px solid rgba(31,191,143,.4);color:#7df0c8;font-size:13px;font-weight:700;padding:7px 14px;border-radius:999px}
.hero h1{font-size:clamp(36px,5vw,58px);color:#fff;margin:22px 0 18px}
.hero p.sub{font-size:19px;color:rgba(255,255,255,.78);max-width:560px}
.hero-cta{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}
.hero-note{margin-top:18px;font-size:14px;color:rgba(255,255,255,.7);display:flex;align-items:center;gap:8px}
@media(max-width:880px){.hero-in{grid-template-columns:1fr;gap:40px}}

/* mock (index) */
.mock{background:#fff;border-radius:20px;box-shadow:var(--shadow);overflow:hidden;color:var(--ink);transform:perspective(1400px) rotateY(-7deg) rotateX(2deg);transition:.4s}
.mock:hover{transform:perspective(1400px) rotateY(-2deg)}
.mock-bar{background:var(--soft);border-bottom:1px solid var(--line);padding:10px 14px;display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}
.dot{width:9px;height:9px;border-radius:50%}
.mock-body{padding:16px}
.mock-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}
.mock-h b{font-family:'Bricolage Grotesque';font-size:17px}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}
.kpi{background:var(--soft);border:1px solid var(--line);border-radius:11px;padding:9px 10px}
.kpi span{font-size:10.5px;color:var(--muted);display:block}
.kpi b{font-family:'Bricolage Grotesque';font-size:16px}
.row{display:flex;align-items:center;gap:9px;padding:10px 0;border-top:1px solid var(--line)}
.row .nm{font-weight:700;font-size:13.5px}
.tag{font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:6px;margin-left:auto}
.tag.ca{background:#E6F4FE;color:#0C447C}
.tag.om{background:#E1F5F5;color:#078A8F}
.chips{display:flex;gap:14px;font-size:11.5px;color:var(--muted);padding:2px 0 0 18px}
.chips b{font-family:'Bricolage Grotesque'}

.strip{background:var(--navy2);color:rgba(255,255,255,.7);padding:18px 0}
.strip-in{display:flex;gap:30px;justify-content:center;flex-wrap:wrap;font-size:14.5px;font-weight:600;align-items:center}
.strip b{color:#fff}

.sh{text-align:center;max-width:680px;margin:0 auto 52px}
.sh h2{font-size:clamp(28px,3.6vw,42px);margin:12px 0 14px}
.sh p{color:var(--muted);font-size:17px}

.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:880px){.grid4{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:1fr}}
@media(max-width:540px){.grid4{grid-template-columns:1fr}}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.card .ic{font-size:24px;margin-bottom:12px}
.card .num{width:36px;height:36px;border-radius:50%;background:var(--navy);color:var(--emerald);display:flex;align-items:center;justify-content:center;font-family:'Bricolage Grotesque';font-weight:800;margin-bottom:14px}
.card h3{font-size:18px;margin-bottom:8px}
.card p{font-size:14.5px;color:var(--muted)}

.pillars{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
@media(max-width:760px){.pillars{grid-template-columns:1fr}}
.pillar{border-radius:var(--radius);padding:28px;border:1px solid var(--line);background:#fff;overflow:hidden}
.pillar.hero-pillar{grid-column:1/-1;background:linear-gradient(120deg,var(--navy),var(--navy3));color:#fff;border:none;display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center}
@media(max-width:760px){.pillar.hero-pillar{grid-template-columns:1fr}}
.pillar .badge{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--emerald);margin-bottom:10px}
.pillar h3{font-size:22px;margin-bottom:10px}
.pillar.hero-pillar h3{font-size:28px;color:#fff}
.pillar p{font-size:15px;color:var(--muted)}
.pillar.hero-pillar p{color:rgba(255,255,255,.8)}
.mini-mock{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:14px}
.mini-row{display:flex;align-items:center;gap:8px;padding:8px 0;border-top:1px solid rgba(255,255,255,.1);font-size:13px}
.mini-row:first-child{border-top:none}
.mini-tag{margin-left:auto;font-size:10px;font-weight:700;padding:2px 7px;border-radius:5px}

.integ{background:var(--soft)}
.integ-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
@media(max-width:820px){.integ-grid{grid-template-columns:1fr}}
.erp-badges{display:flex;gap:14px;margin:22px 0;flex-wrap:wrap}
.erp{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 16px;font-weight:700}
.erp .sq{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:#fff}
.feat-list{list-style:none;display:flex;flex-direction:column;gap:12px;margin-top:8px}
.feat-list li{position:relative;padding-left:34px;font-size:15.5px}
.feat-list .ck{position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:var(--emerald-pale);color:var(--emerald-d);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800}
.flow{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.flow-step{display:flex;gap:14px;padding:14px 0;border-bottom:1px dashed var(--line)}
.flow-step:last-child{border-bottom:none}
.flow-step .n{width:30px;height:30px;border-radius:9px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-family:'Bricolage Grotesque';font-weight:800;flex-shrink:0}
.flow-step b{font-size:15px}
.flow-step span{font-size:13.5px;color:var(--muted)}

.ia{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.ia::before{content:"";position:absolute;width:560px;height:560px;right:-120px;top:-160px;background:radial-gradient(circle,rgba(31,191,143,.25),transparent 60%)}
.ia-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
@media(max-width:820px){.ia-grid{grid-template-columns:1fr}}
.ia h2{color:#fff;font-size:clamp(28px,3.4vw,40px);margin:12px 0 16px}
.ia ul{list-style:none;display:flex;flex-direction:column;gap:13px;margin:24px 0}
.ia ul li{position:relative;padding-left:26px;font-size:15.5px;color:rgba(255,255,255,.88)}
.ia ul .ck{position:absolute;left:0;top:0;color:var(--emerald);font-weight:800}
.report{background:#fff;color:var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.report .top{background:var(--emerald-pale);padding:14px 18px;font-size:12.5px;font-weight:700;color:var(--emerald-d);display:flex;justify-content:space-between}
.report .bd{padding:20px}
.report h4{font-size:18px;margin-bottom:8px}
.report p{font-size:13.5px;color:var(--muted);margin-bottom:12px}
.report .stat{display:flex;gap:18px;margin-top:10px}
.report .stat div b{font-family:'Bricolage Grotesque';font-size:20px;display:block}
.report .stat div span{font-size:11px;color:var(--muted)}

.screens{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:860px){.screens{grid-template-columns:1fr}}
.screen{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff}
.screen .cap{background:var(--soft);border-bottom:1px solid var(--line);padding:9px 14px;font-size:11.5px;font-weight:700;color:var(--muted)}
.screen .ct{padding:18px}
.screen h3{font-size:17px;margin:12px 0 6px}
.screen p{font-size:14px;color:var(--muted)}
.legend{display:flex;gap:12px;font-size:11px;color:var(--muted);margin-bottom:10px}
.legend span{display:inline-flex;align-items:center;gap:5px}
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}
.cal i{height:22px;border-radius:5px;background:var(--soft)}
.kanban{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.kanban .col{background:var(--soft);border-radius:9px;padding:7px}
.kanban .col b{font-size:10px;color:var(--muted);display:block;margin-bottom:6px}
.kanban .t{background:#fff;border:1px solid var(--line);border-radius:6px;height:18px;margin-bottom:5px}

.calc{background:linear-gradient(120deg,var(--navy),var(--navy3));color:#fff;border-radius:24px;padding:40px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
@media(max-width:760px){.calc{grid-template-columns:1fr;padding:28px}}
.calc h3{color:#fff;font-size:26px;margin-bottom:8px}
.calc input[type=range]{width:100%;accent-color:var(--emerald);margin:18px 0 6px}
.calc .vbig{font-family:'Bricolage Grotesque';font-size:46px;color:var(--emerald);line-height:1}
.cmp{display:flex;gap:16px;margin-top:8px}
.cmp div{flex:1;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:14px}
.cmp div b{font-family:'Bricolage Grotesque';font-size:24px;display:block}
.cmp div span{font-size:12px;color:rgba(255,255,255,.7)}
.save{margin-top:18px;font-size:15px;color:rgba(255,255,255,.9)}
.save b{color:var(--emerald)}

table.cmp-tb{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
table.cmp-tb th,table.cmp-tb td{padding:15px 18px;text-align:left;font-size:15px;border-bottom:1px solid var(--line)}
table.cmp-tb thead th{background:var(--navy);color:#fff;font-family:'Bricolage Grotesque'}
table.cmp-tb tbody tr:last-child td{border-bottom:none}
table.cmp-tb td:nth-child(2){color:var(--muted)}
table.cmp-tb td:nth-child(3){color:var(--emerald-d);font-weight:700}
@media(max-width:640px){table.cmp-tb th,table.cmp-tb td{padding:11px;font-size:13px}}

.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start}
@media(max-width:860px){.plans{grid-template-columns:1fr}}
.plan{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px 26px;position:relative}
.plan.pop{border:2px solid var(--emerald);box-shadow:0 24px 50px -24px rgba(31,191,143,.5)}
.plan .flag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);background:var(--emerald);color:#04231a;font-size:12px;font-weight:800;padding:5px 14px;border-radius:999px}
.plan h3{font-size:20px}
.plan .price{font-family:'Bricolage Grotesque';font-size:40px;margin:8px 0 2px}
.plan .price span{font-size:15px;color:var(--muted);font-family:'Figtree';font-weight:600}
.plan .for{font-size:13.5px;color:var(--muted);min-height:38px}
.plan ul{list-style:none;margin:18px 0 22px;display:flex;flex-direction:column;gap:10px}
.plan ul li{font-size:14px;display:flex;gap:9px}
.plan ul li .ck{color:var(--emerald-d);font-weight:800}
.note-pay{text-align:center;color:var(--muted);font-size:14px;margin-top:26px}

.founder{background:var(--soft)}
.founder-in{display:grid;grid-template-columns:200px 1fr;gap:38px;align-items:center}
@media(max-width:680px){.founder-in{grid-template-columns:1fr;text-align:center}}
.founder img{width:170px;height:170px;border-radius:50%;object-fit:cover;border:4px solid #fff;box-shadow:var(--shadow)}
.founder blockquote{font-size:17px;color:var(--ink);line-height:1.7;font-style:italic}
.founder .who{margin-top:14px;font-weight:700}
.founder .who span{display:block;font-weight:500;color:var(--muted);font-size:14px}

.faq{max-width:780px;margin:0 auto}
details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:4px 20px;margin-bottom:12px}
details summary{font-weight:700;font-size:16px;padding:16px 0;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}
details summary::-webkit-details-marker{display:none}
details summary::after{content:"+";font-size:22px;color:var(--emerald-d);font-weight:400}
details[open] summary::after{content:"\2013"}
details p{padding:0 0 16px;color:var(--muted);font-size:15px}

.final{background:linear-gradient(120deg,var(--navy),var(--navy3));color:#fff;text-align:center}
.final h2{color:#fff;font-size:clamp(30px,4vw,46px);margin-bottom:14px}
.final p{color:rgba(255,255,255,.8);font-size:18px;margin-bottom:28px}

/* páginas legais / texto longo */
.legal{padding:64px 0}
.legal h1{font-size:clamp(30px,4vw,40px);color:var(--ink);margin-bottom:6px}
.legal .upd{font-size:14px;color:var(--muted);margin-bottom:18px}
.legal h2{font-size:21px;color:var(--ink);margin:32px 0 10px}
.legal p{font-size:16px;color:#3A4A60;line-height:1.75;margin-bottom:13px}
.legal ul{margin:0 0 14px 22px}
.legal li{font-size:16px;color:#3A4A60;line-height:1.7;margin-bottom:8px}
.legal a{color:var(--emerald-d);font-weight:700}

/* formulários */
.form-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:32px;box-shadow:var(--shadow);max-width:540px;margin:0 auto}
.field{margin-bottom:15px}
.field label{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;display:block;margin-bottom:6px}
.field input,.field select,.field textarea{width:100%;padding:13px 15px;font-family:inherit;font-size:15px;color:var(--ink);border:1.5px solid var(--line);border-radius:10px;outline:none;transition:border .2s;background:#fff;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--emerald);box-shadow:0 0 0 3px rgba(31,191,143,.12)}

footer.ft{background:var(--navy);color:rgba(255,255,255,.65);padding:40px 0;font-size:14px}
footer.ft .fl{display:flex;gap:22px;flex-wrap:wrap;justify-content:center;margin-bottom:18px}
footer.ft a:hover{color:#fff}
footer.ft .cc{text-align:center;color:rgba(255,255,255,.45)}

.reveal{opacity:0;transform:translateY(18px);transition:.7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
