:root{
  --vk-bg:#0c0a12;--vk-surface:#16121f;--vk-card:#1e1830;--vk-border:#2d2640;
  --vk-brand:#7c3aed;--vk-brand2:#a855f7;--vk-hot:#e11d48;--vk-gold:#fbbf24;
  --vk-text:#f8fafc;--vk-muted:#94a3b8;--vk-ok:#22c55e;--vk-warn:#f59e0b;
  --vk-gradient:linear-gradient(135deg,#7c3aed 0%,#e11d48 100%);
  --vk-font:system-ui,-apple-system,'Segoe UI',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--vk-bg);color:var(--vk-text);font-family:var(--vk-font);min-height:100dvh;line-height:1.5}
a{color:var(--vk-brand2);text-decoration:none}
a:hover{text-decoration:underline}
.vk-shell{max-width:1100px;margin:0 auto;padding:0 1.25rem}
.vk-top{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;border-bottom:1px solid var(--vk-border);margin-bottom:1.5rem}
.vk-logo{font-size:1.35rem;font-weight:800;background:var(--vk-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.vk-logo small{display:block;font-size:.65rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;-webkit-text-fill-color:var(--vk-muted);margin-top:.15rem}
.vk-nav{display:flex;gap:.35rem;flex-wrap:wrap}
.vk-nav a{font-size:.82rem;padding:.4rem .7rem;border-radius:999px;color:var(--vk-muted);border:1px solid transparent}
.vk-nav a.on,.vk-nav a:hover{color:var(--vk-text);border-color:var(--vk-border);background:var(--vk-surface)}
.vk-hero{text-align:center;padding:2rem 0 1.5rem}
.vk-hero h1{font-size:clamp(2rem,5vw,2.75rem);font-weight:800;margin-bottom:.5rem}
.vk-hero h1 span{background:var(--vk-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.vk-hero .lead{color:var(--vk-muted);max-width:640px;margin:0 auto 1rem;font-size:1.05rem}
.vk-evolution{background:var(--vk-surface);border:1px solid var(--vk-border);border-radius:16px;padding:1rem 1.25rem;margin:0 auto 1.75rem;max-width:720px;text-align:left;font-size:.9rem;color:var(--vk-muted)}
.vk-evolution strong{color:var(--vk-text)}
.vk-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:1.75rem}
.vk-metric{background:var(--vk-card);border:1px solid var(--vk-border);border-radius:14px;padding:1rem;text-align:center}
.vk-metric b{display:block;font-size:1.6rem;font-weight:700;color:var(--vk-text)}
.vk-metric span{font-size:.75rem;color:var(--vk-muted);text-transform:uppercase;letter-spacing:.06em}
.vk-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-bottom:2rem}
.vk-module{background:var(--vk-card);border:1px solid var(--vk-border);border-radius:18px;padding:1.25rem;display:flex;flex-direction:column;gap:.5rem;transition:border-color .2s,transform .2s}
.vk-module:hover{border-color:var(--vk-brand);transform:translateY(-2px)}
.vk-module .icon{font-size:1.75rem}
.vk-module h3{font-size:1.05rem}
.vk-module p{font-size:.85rem;color:var(--vk-muted);flex:1}
.vk-module .tag{display:inline-block;font-size:.7rem;padding:.2rem .55rem;border-radius:999px;background:#2d1b4e;color:#d8b4fe;width:fit-content}
.vk-module .tag.live{background:#14532d;color:#86efac}
.vk-module .tag.soon{background:#422006;color:#fcd34d}
.vk-module .go{margin-top:.5rem;font-size:.85rem;font-weight:600;color:var(--vk-hot)}
.vk-status{background:var(--vk-surface);border:1px solid var(--vk-border);border-radius:16px;padding:1.25rem;margin-bottom:2rem}
.vk-status h2{font-size:1rem;margin-bottom:.75rem;color:var(--vk-muted)}
.vk-svc{display:flex;flex-wrap:wrap;gap:.5rem}
.vk-svc span{font-size:.75rem;padding:.35rem .65rem;border-radius:8px;background:var(--vk-card);border:1px solid var(--vk-border)}
.vk-svc .ok{border-color:#166534;color:#86efac}
.vk-svc .off{border-color:#991b1b;color:#fca5a5}
.vk-footer{text-align:center;padding:2rem 0 2.5rem;color:var(--vk-muted);font-size:.8rem;border-top:1px solid var(--vk-border)}

/* Passo 20 — landing & ecossistema */
.vk-compare{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin:1.5rem 0}
.vk-sys{background:var(--vk-surface);border:1px solid var(--vk-border);border-radius:16px;padding:1.25rem}
.vk-sys h3{font-size:1rem;margin-bottom:.5rem}
.vk-sys .src{font-size:.7rem;color:var(--vk-muted);margin-bottom:.75rem}
.vk-sys ul{font-size:.85rem;color:var(--vk-muted);padding-left:1.1rem}
.vk-sys li{margin:.35rem 0}
.vk-sys li.ok{color:#86efac;list-style:none;margin-left:-1.1rem}
.vk-sys li.ok::before{content:"✓ "}
.vk-sys li.miss{color:#fcd34d;list-style:none;margin-left:-1.1rem}
.vk-sys li.miss::before{content:"○ "}
.vk-legend{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0;font-size:.75rem}
.vk-legend span{padding:.25rem .6rem;border-radius:999px;border:1px solid var(--vk-border)}
.landing-hero{min-height:85dvh;display:flex;flex-direction:column;justify-content:center;text-align:center;padding:2rem 0}
.landing-hero h1{font-size:clamp(2.2rem,6vw,3.5rem);font-weight:900;line-height:1.1;margin-bottom:1rem}
.landing-hero .sub{font-size:clamp(1rem,2.5vw,1.25rem);color:var(--vk-muted);max-width:560px;margin:0 auto 2rem}
.landing-modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;max-width:900px;margin:0 auto 2rem}
.landing-mode{background:var(--vk-card);border:1px solid var(--vk-border);border-radius:14px;padding:1rem .75rem;font-size:.85rem}
.landing-mode b{display:block;font-size:1.1rem;margin-bottom:.25rem}
.landing-mode .st{font-size:.65rem;margin-top:.35rem;color:var(--vk-muted)}
.landing-cta{display:inline-block;padding:1rem 2.5rem;border-radius:999px;background:var(--vk-gradient);color:#fff!important;font-weight:700;font-size:1.05rem;text-decoration:none!important;margin:.5rem}
.landing-cta.sec{background:transparent;border:2px solid var(--vk-brand);color:var(--vk-text)!important}
.landing-trust{font-size:.8rem;color:var(--vk-muted);margin-top:1.5rem}
.vk-flow{background:var(--vk-card);border:1px solid var(--vk-border);border-radius:16px;padding:1.25rem;margin:1.5rem 0;font-size:.85rem;color:var(--vk-muted)}
.vk-flow code{color:#d8b4fe;font-size:.8rem}

.vk-logo-brand{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none!important}
.vk-logo-brand:hover{opacity:.92}
.vk-logo-img{height:38px;width:auto;display:block;object-fit:contain}
.vk-logo-text{display:flex;flex-direction:column;line-height:1.1}
.vk-logo-text strong{font-size:1.05rem;font-weight:800;background:var(--vk-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.vk-logo-text small{font-size:.58rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--vk-muted);margin-top:.12rem}
.vk-hero-logo{height:72px;width:auto;margin:0 auto 1rem;display:block}
.vk-nav-clean{display:flex;gap:.35rem;flex-wrap:wrap;align-items:center}
@media(max-width:640px){.vk-logo-text{display:none}.vk-logo-img{height:34px}}

.sf-logo{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none!important}
.sf-logo img,.sf-logo svg{height:40px;width:auto;display:block}
.sf-logo-hero img,.sf-logo-hero svg{height:72px;width:auto;margin:0 auto 1rem;display:block}
.sf-logo-compact img,.sf-logo-compact svg{height:36px;width:auto}
