/* Estilo das páginas de Soluções — reusa os tokens e a fonte da home. */
@font-face{font-family:'Geist';font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Geist';font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}

:root{--purple:#7153ef;--purple-dark:#2b175b;--lavender:#ebe7ff;--lime:#c9ff62;--ink:#16131d;--muted:#696371;--line:#e9e5ed;--cream:#faf9f7;}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{color:var(--ink);background:#fff;font-family:'Geist',ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.5;}
img{max-width:100%;height:auto;}
ul,ol{list-style:none;}
a{color:inherit;text-decoration:none;}
:focus-visible{outline:2px solid var(--purple);outline-offset:3px;border-radius:4px;}

.topbar{border-bottom:1px solid var(--line);z-index:120;justify-content:space-between;align-items:center;height:78px;padding:0 max(28px,calc((100% - 1240px)/2));display:flex;position:sticky;top:0;background:rgba(255,255,255,.93);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);}
.brand{letter-spacing:-1px;align-items:center;gap:9px;font-size:23px;font-weight:800;display:flex;}
.logo-img{height:30px;width:auto;display:block;}
footer .logo-img{height:28px;}
.topbar nav{color:#4f4a55;gap:30px;font-size:14px;display:flex;}
.topbar nav a:hover{color:var(--purple);}
.topbar nav a[aria-current]{color:var(--purple);font-weight:700;}
.nav-actions{align-items:center;gap:20px;display:flex;}
.login{font-size:14px;font-weight:700;color:#6b6579;}
.button{background:var(--purple);color:#fff;border-radius:999px;justify-content:center;align-items:center;gap:16px;padding:16px 24px;font-size:14px;font-weight:700;transition:.25s;display:inline-flex;box-shadow:rgba(113,83,239,.153) 0 8px 24px;}
.button:hover{transform:translateY(-2px);box-shadow:rgba(113,83,239,.23) 0 12px 30px;}
.button.small{padding:12px 20px;}
.button.outline{color:var(--ink);border:1px solid var(--ink);box-shadow:none;background:#fff;}
.button.white{color:var(--purple-dark);background:#fff;box-shadow:none;}
.button.ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.45);box-shadow:none;}

.crumb{font-size:13px;color:var(--muted);margin-bottom:20px;}
.crumb a:hover{color:var(--purple);}
.eyebrow{background:#f9f7ff;border:1px solid #ddd6ff;color:var(--purple);border-radius:999px;padding:8px 13px;align-items:center;gap:9px;font-size:12px;font-weight:800;display:inline-flex;}
.feature-icon{background:var(--lavender);width:58px;height:58px;color:var(--purple);border-radius:18px;place-items:center;font-size:23px;display:grid;}
.feature-icon.grande{width:66px;height:66px;font-size:28px;border-radius:20px;}
.plano-tag{display:inline-block;background:var(--lavender);color:var(--purple-dark);border-radius:999px;padding:5px 12px;font-size:11.5px;font-weight:800;}
.plano-tag.addon{background:#eef9d9;color:#3d5a13;}

/* Página-mãe */
.sol-hero{max-width:1240px;margin:auto;padding:74px 28px 34px;}
.sol-hero h1,.sol-hero .h1{letter-spacing:-3.4px;margin:22px 0 20px;font-size:58px;line-height:1.03;font-weight:700;max-width:15ch;}
.sol-hero h1 em,.sol-hero .h1 em{color:var(--purple);font-style:normal;}
.sol-hero>p{color:var(--muted);max-width:62ch;font-size:18px;line-height:1.62;}
.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px;align-items:center;}
.actions small{color:var(--muted);font-size:13px;}
.grade{max-width:1240px;margin:auto;padding:20px 28px 40px;display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px;}
.cartao{border:1px solid var(--line);border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:10px;align-items:flex-start;transition:.2s;background:#fff;}
.cartao:hover{border-color:var(--purple);transform:translateY(-3px);box-shadow:rgba(113,83,239,.1) 0 12px 30px;}
.cartao h2{font-size:21px;letter-spacing:-.6px;margin-top:4px;}
.cartao p{color:var(--muted);font-size:14px;line-height:1.6;flex:1;}
.cartao em{color:var(--purple);font-style:normal;font-weight:700;font-size:13.5px;}

/* Página filha */
.pag{max-width:1240px;margin:auto;padding:60px 28px 20px;}
.pag h1{letter-spacing:-2.6px;margin:20px 0 18px;font-size:50px;line-height:1.06;font-weight:700;max-width:19ch;text-wrap:balance;}
.pag .lead{color:var(--muted);max-width:62ch;font-size:19px;line-height:1.6;}
.pag .plano-tag{margin-top:18px;}
.faixa{max-width:1240px;margin:auto;padding:44px 28px;border-top:1px solid var(--line);}
.faixa>h2{font-size:15px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-weight:800;margin-bottom:26px;}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:16px;}
.cards.dois{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));}
.cards article{background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:22px;}
.cards h3{font-size:17px;margin-bottom:8px;letter-spacing:-.3px;}
.cards p{color:var(--muted);font-size:14.5px;line-height:1.62;}
.exemplo b{display:block;font-size:11.5px;letter-spacing:1.2px;text-transform:uppercase;color:var(--purple);margin-bottom:8px;font-weight:800;}
.detalhes{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:2px 44px;}
.detalhes li{border-bottom:1px solid var(--line);padding:18px 0;}
.detalhes h3{font-size:17.5px;margin-bottom:6px;letter-spacing:-.3px;}
.detalhes p{color:var(--muted);font-size:14.5px;line-height:1.62;}
.detalhes .maisdet{color:var(--purple);font-weight:700;white-space:nowrap;}
.detalhes .maisdet:hover{text-decoration:underline;}
.faq{display:grid;gap:2px;max-width:860px;}
.faq details{border-bottom:1px solid var(--line);padding:4px 0;}
.faq summary{cursor:pointer;padding:16px 30px 16px 0;font-size:16.5px;font-weight:650;list-style:none;position:relative;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:'+';position:absolute;right:4px;top:14px;font-size:22px;font-weight:400;color:var(--purple);line-height:1;}
.faq details[open] summary::after{content:'–';}
.faq details p{color:var(--muted);font-size:15px;line-height:1.65;padding:0 30px 18px 0;max-width:70ch;}
.relacionados{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;}
.relacionados a{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;border:1px solid var(--line);border-radius:16px;padding:18px 20px;transition:.2s;background:#fff;}
.relacionados a:hover{border-color:var(--purple);transform:translateY(-2px);}
.relacionados span{grid-row:span 2;font-size:22px;align-self:start;}
.relacionados b{font-size:16px;}
.relacionados small{color:var(--muted);font-size:13.5px;line-height:1.55;margin-top:3px;}

.final-cta{background:var(--purple-dark);color:#fff;padding:88px max(28px,calc((100% - 1184px)/2));margin-top:36px;}
.final-cta h2{font-size:44px;letter-spacing:-2.4px;line-height:1.07;max-width:16ch;margin-bottom:18px;font-weight:700;}
.final-cta p{color:#c9c2e4;max-width:56ch;font-size:17px;line-height:1.6;}
.final-cta small{color:#a99fd0;font-size:13px;}

footer{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:30px;max-width:1184px;margin:auto;padding:55px 28px 32px;display:grid;}
footer p{color:var(--muted);font-size:14px;}
footer div{display:flex;flex-wrap:wrap;gap:22px;font-size:14px;}
footer div a:hover{color:var(--purple);}
footer small{color:var(--muted);font-size:12.5px;}


/* ─────────── Ícones do kit do app ─────────── */
.feature-icon svg{display:block;}
.relacionados .relico{grid-row:span 2;color:var(--purple);align-self:start;display:grid;place-items:center;width:38px;height:38px;background:var(--lavender);border-radius:11px;}
.relacionados .relico svg{display:block;}

/* ─────────── Visual da página (mockup ou print) ─────────── */
.visual{max-width:1240px;margin:8px auto 0;padding:0 28px;}
.visual img{width:100%;border:1px solid var(--line);border-radius:18px;display:block;box-shadow:rgba(43,23,91,.07) 0 14px 40px;}
.mock{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;box-shadow:rgba(43,23,91,.07) 0 14px 40px;}
.mock.estreito{max-width:520px;}
.mock-top{display:flex;align-items:baseline;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line);background:var(--cream);}
.mock-top b{font-size:14px;}
.mock-top span{font-size:12px;color:var(--muted);margin-left:auto;}
.mock-pe{padding:12px 18px;border-top:1px solid var(--line);font-size:12.5px;color:var(--muted);background:var(--cream);}
.mock .pad{padding:18px;}

/* lista de tarefas */
.linhas{padding:6px 0;}
.li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:13px 18px;border-bottom:1px solid var(--line);}
.li:last-child{border-bottom:0;}
.li b{font-size:14px;display:block;}
.li small{font-size:12px;color:var(--muted);}
.li .cx{width:17px;height:17px;border:1.6px solid #cfc8dd;border-radius:5px;display:block;}
.li .cx.on{background:var(--purple);border-color:var(--purple);position:relative;}
.li .cx.on::after{content:'';position:absolute;left:5px;top:1px;width:4px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(42deg);}
.li.feito b{color:var(--muted);text-decoration:line-through;}
.selo{font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px;background:#f3f1f7;color:var(--muted);white-space:nowrap;}
.selo.foto{background:var(--lavender);color:var(--purple-dark);}
.selo.atraso{background:#fdeaea;color:#b03030;}
.selo.ok{background:#e9f9ef;color:#1c7a43;}

/* kanban */
.kb{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:18px;background:var(--cream);}
.kb h4{font-size:11.5px;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);margin-bottom:9px;display:flex;gap:6px;align-items:center;}
.kb h4 em{font-style:normal;background:#e7e2f2;color:var(--purple-dark);border-radius:999px;padding:1px 7px;font-size:10.5px;}
.ct{background:#fff;border:1px solid var(--line);border-radius:11px;padding:11px 12px;font-size:13px;margin-bottom:8px;}
.ct small{display:block;font-size:11px;color:var(--purple);margin-top:3px;}
.ct.andando{border-color:#c9bdf3;box-shadow:rgba(113,83,239,.13) 0 4px 14px;}
.ct.pronta{color:var(--muted);text-decoration:line-through;}

/* conclusão com foto */
.rot-obrig{font-size:12.5px;color:var(--muted);margin-bottom:9px;}
.rot-obrig b{color:#b03030;}
.fotobox{height:150px;border:1.6px dashed #cfc8dd;border-radius:14px;display:grid;place-items:center;background:var(--cream);color:var(--muted);font-size:12.5px;margin-bottom:14px;}
.campo-fake{border:1.5px solid var(--line);border-radius:10px;padding:11px 13px;font-size:13.5px;color:var(--muted);background:#fff;}
.campo-fake.sel::after{content:'▾';float:right;color:var(--muted);}
.botoes{display:flex;gap:10px;justify-content:flex-end;margin-top:16px;}
.bt{font-size:13px;font-weight:700;padding:9px 18px;border-radius:999px;border:1px solid var(--line);color:var(--muted);}
.bt.on{background:var(--purple);color:#fff;border-color:var(--purple);}

/* campos da etapa */
.cp{margin-bottom:14px;}
.cp:last-child{margin-bottom:0;}
.cp label{display:block;font-size:12px;font-weight:650;color:#555;margin-bottom:5px;}
.cp label b{color:#b03030;}
.arq{display:flex;align-items:center;gap:9px;border:1.5px solid #d7c9f2;border-radius:10px;padding:10px 13px;font-size:13.5px;color:var(--purple-dark);font-weight:600;background:#fff;}
.arq em{margin-left:auto;font-style:normal;font-size:11.5px;color:var(--muted);font-weight:400;}
.clipe{width:13px;height:13px;border:1.6px solid var(--purple);border-radius:4px 4px 7px 7px;border-top-width:3px;display:block;flex:none;}

/* relatórios */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-bottom:18px;}
.kpi{background:var(--cream);border:1px solid var(--line);border-radius:13px;padding:13px 14px;}
.kpi small{display:block;font-size:11px;color:var(--muted);margin-bottom:5px;}
.kpi b{font-size:25px;letter-spacing:-1px;}
.kpi em{font-style:normal;font-size:11.5px;font-weight:700;margin-left:7px;}
.kpi .sobe{color:#1c7a43;}
.kpi .desce{color:#b03030;}
.barras{display:flex;align-items:flex-end;gap:9px;height:110px;padding:0 2px;}
.barras i{flex:1;background:linear-gradient(180deg,#8b6ef2,#7153ef);border-radius:6px 6px 3px 3px;display:block;}

/* whatsapp */
.zap .pad{background:#e9e3da;display:flex;flex-direction:column;gap:10px;}
.balao{background:#fff;border-radius:12px 12px 12px 3px;padding:11px 13px;font-size:13.5px;line-height:1.5;max-width:92%;box-shadow:rgba(0,0,0,.07) 0 1px 2px;}
.balao u{color:var(--purple);text-decoration:none;}
.balao em{display:block;text-align:right;font-style:normal;font-size:10.5px;color:#9b94a6;margin-top:5px;}

/* ─────────── Diagrama do fluxo ─────────── */
.diagrama svg{display:block;width:100%;height:auto;background:
  radial-gradient(circle at 1px 1px,#e4dff0 1px,transparent 0) 0 0/22px 22px;}
.diagrama .no rect{fill:#fff;stroke:#d9d2e8;stroke-width:1.5;}
.diagrama .no text{font-family:'Geist',system-ui,sans-serif;font-size:13px;font-weight:650;fill:var(--ink);}
.diagrama .no text.sub{font-size:11px;font-weight:400;fill:var(--muted);}
.diagrama .no.verif rect{stroke:#7153ef;stroke-width:2;fill:#f9f7ff;}
.diagrama .no.nova rect{stroke:#7153ef;stroke-width:2;stroke-dasharray:6 5;fill:#f9f7ff;}
.diagrama .lig{fill:none;stroke:#7153ef;stroke-width:2;stroke-linecap:round;}
.diagrama .lig.pontilhada{stroke-dasharray:6 5;}
.diagrama .rot{font-family:'Geist',system-ui,sans-serif;font-size:10.5px;font-weight:700;fill:#b03030;}
.diagrama .rot.ok{fill:#1c7a43;}

/* as duas últimas peças entram sozinhas, uma vez */
@media (prefers-reduced-motion:no-preference){
  .diagrama .l1,.diagrama .l2,.diagrama .l3,.diagrama .l4{stroke-dasharray:260;stroke-dashoffset:260;animation:traco .5s ease forwards;}
  .diagrama .l1{animation-delay:.15s}.diagrama .l2{animation-delay:.45s}
  .diagrama .l3{animation-delay:.75s}
  .diagrama .l4{stroke-dasharray:6 5;stroke-dashoffset:0;opacity:0;animation:surge .45s ease 1.05s forwards;}
  .diagrama .n5{opacity:0;transform:translateY(10px);animation:surge .45s ease 1.2s forwards;}
  .diagrama .rot{opacity:0;animation:surge .4s ease 1.35s forwards;}
  @keyframes traco{to{stroke-dashoffset:0}}
  @keyframes surge{to{opacity:1;transform:none}}
}

@media (max-width:600px){
  .visual{padding-left:22px;padding-right:22px;}
  .kb{grid-template-columns:1fr;}
  .li{grid-template-columns:auto 1fr;}
  .li .selo{grid-column:2;justify-self:start;}
}

@media (max-width:900px){
  .topbar nav{display:none;}
  .nav-actions{gap:12px;}
  .sol-hero h1,.sol-hero .h1{font-size:44px;letter-spacing:-2.4px;}
  .pag h1{font-size:38px;letter-spacing:-1.8px;}
  .final-cta h2{font-size:34px;letter-spacing:-1.6px;}
  footer{grid-template-columns:1fr;gap:18px;}
}
@media (max-width:600px){
  .sol-hero,.pag{padding-left:22px;padding-right:22px;}
  .grade,.faixa{padding-left:22px;padding-right:22px;}
  .sol-hero{padding-top:46px;}
  .sol-hero h1,.sol-hero .h1{font-size:35px;letter-spacing:-1.5px;}
  .pag h1{font-size:31px;letter-spacing:-1.3px;}
  .pag .lead{font-size:17px;}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important;}}

/* Dropdown Soluções no menu (mesmo padrão da home) */
.nav-prod{position:relative;}
.nav-prod>a .seta{font-size:10px;opacity:.6;}
.nav-prod-menu{position:absolute;top:calc(100% + 10px);left:-12px;background:#fff;border:1px solid var(--line,#e6e2ef);border-radius:14px;box-shadow:0 14px 40px rgba(30,15,70,.14);padding:8px;min-width:260px;display:none;z-index:200;}
.nav-prod:hover .nav-prod-menu,.nav-prod:focus-within .nav-prod-menu{display:block;}
.nav-prod-menu::before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px;}
.nav-prod-menu a{display:block;padding:10px 12px;border-radius:10px;}
.nav-prod-menu a:hover{background:#f5f1fd;}
.nav-prod-menu b{display:block;font-size:14px;color:#241d33;}
.nav-prod-menu small{color:#817a88;font-size:12px;}
