/* ZEMOZ — estilos compartilhados (home e /startups/) */
:root{
  --roxo:#5B2CFF;
  --roxo-texto:#8F6BFF;   /* roxo para texto: passa contraste sobre o carvão */
  --roxo-claro:#B39DFF;
  --carvao:#0C0D12;
  --fundo-2:#101118;
  --card:#14151C;
  --placeholder:#1A1B26;
  --borda:#1E1F29;
  --borda-card:#23242E;
  --borda-forte:#34364A;
  --texto:#F2F2F5;
  --texto-2:#C9CAD6;
  --texto-3:#B6B7C4;
  --texto-4:#A3A4B3;
  --display:'Russo One','Arial Black',system-ui,sans-serif;
  --corpo:'Inter',system-ui,-apple-system,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{
  background:var(--carvao);color:var(--texto);
  font-family:var(--corpo);font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.display{font-family:var(--display);font-weight:400}
.destaque{color:var(--roxo-texto)}
.eyebrow{font-size:.8125rem;letter-spacing:.14em;text-transform:uppercase;color:var(--texto-4);margin-bottom:16px}
.secao{padding:128px 0}
.secao-alt{background:var(--fundo-2);border-top:1px solid var(--borda);border-bottom:1px solid var(--borda)}
.h2{font-family:var(--display);font-weight:400;font-size:clamp(2rem,4.4vw,3.25rem);line-height:1.1;max-width:760px}
:focus-visible{outline:2px solid var(--roxo-claro);outline-offset:3px;border-radius:6px}

/* ---------- botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;border-radius:12px;font-weight:500;font-size:1.0625rem;transition:background .2s,border-color .2s,transform .2s;cursor:pointer;border:0;font-family:var(--corpo)}
.btn-primario{background:var(--roxo);color:#fff}
.btn-primario:hover{background:#6D45FF}
.btn-secundario{border:1px solid var(--borda-forte);color:var(--texto);background:transparent}
.btn-secundario:hover{border-color:var(--roxo-claro)}
.btn-sm{min-height:44px;padding:0 20px;font-size:.9375rem;border-radius:10px}
.acoes{display:flex;gap:16px;flex-wrap:wrap;margin-top:48px}

/* ---------- topo ---------- */
.topo{position:sticky;top:0;z-index:20;background:rgba(12,13,18,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--borda)}
.topo .wrap{height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo img{height:26px;width:auto}
.menu{display:flex;align-items:center;gap:28px}
.menu a:not(.btn){color:var(--texto-2);font-size:.9375rem;transition:color .2s}
.menu a:not(.btn):hover,.menu a[aria-current="page"]{color:var(--texto)}
.menu-toggle{display:none;width:44px;height:44px;border-radius:10px;border:1px solid var(--borda-forte);background:transparent;color:var(--texto);align-items:center;justify-content:center;cursor:pointer}
.menu-toggle svg{width:20px;height:20px}
@media(max-width:860px){
  .menu-toggle{display:inline-flex}
  .menu{display:none;position:absolute;top:72px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--carvao);border-bottom:1px solid var(--borda);padding:8px 24px 24px}
  .menu.aberto{display:flex}
  .menu a:not(.btn){padding:14px 0;border-bottom:1px solid var(--borda)}
  .menu .btn{margin-top:16px}
}

/* ---------- hero ---------- */
.hero{padding:120px 0 112px;position:relative}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(700px 480px at 18% 40%,rgba(91,44,255,.18),transparent 70%)}
.hero h1{font-family:var(--display);font-weight:400;font-size:clamp(3rem,8.5vw,7rem);line-height:1.02;letter-spacing:-.01em}
.hero .sub{margin-top:40px;max-width:640px;font-size:1.25rem;color:var(--texto-2)}
.hero-startups h1{font-size:clamp(2.75rem,7vw,5.75rem);line-height:1.04;max-width:980px}

/* ---------- faixa do encadeamento ---------- */
.faixa{background:var(--fundo-2);border-top:1px solid var(--borda);border-bottom:1px solid var(--borda)}
.faixa .wrap{padding-top:40px;padding-bottom:40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.faixa-item{display:flex;gap:14px;align-items:baseline;color:var(--texto-2)}
.faixa-item span:first-child{font-family:var(--display);color:var(--roxo-texto);font-size:.875rem}

/* ---------- cards ---------- */
.grade{margin-top:64px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}
.card{padding:36px 32px;border-radius:18px;background:var(--card);border:1px solid var(--borda-card);display:flex;flex-direction:column;gap:16px}
.secao-alt .card{background:var(--carvao)}
.card h3{font-family:var(--display);font-weight:400;font-size:1.375rem;line-height:1.25}
.card p{color:var(--texto-3)}
.card .num{font-family:var(--display);font-size:2.5rem;line-height:1;color:var(--roxo-texto)}
.card .tag{font-size:.8125rem;letter-spacing:.12em;text-transform:uppercase;color:var(--roxo-texto)}
.card svg{width:40px;height:40px;stroke:var(--roxo-texto)}
.card-destaque{border-color:var(--roxo)}
.card-sm{padding:28px;gap:10px;border-radius:16px}
.card-sm h3{font-size:1.1875rem}
.card-sm p{font-size:.9375rem}

/* ---------- frase ---------- */
.frase{border-top:1px solid var(--borda);text-align:center;padding:112px 0}
.frase p{margin:0 auto;max-width:880px;font-family:var(--display);font-size:clamp(1.75rem,3.6vw,2.75rem);line-height:1.2}

/* ---------- duas colunas ---------- */
.duas-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:64px;align-items:start}
.duas-col .intro{color:var(--texto-2);font-size:1.125rem;max-width:480px;margin-top:24px}
.mini-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
@media(max-width:420px){.duas-col{grid-template-columns:1fr}}

/* ---------- pessoas ---------- */
.pessoas{margin-top:40px;display:flex;flex-direction:column;gap:16px}
.pessoa{display:flex;align-items:center;gap:18px;padding:20px;border-radius:16px;background:var(--card);border:1px solid var(--borda-card)}
.avatar{width:60px;height:60px;flex-shrink:0;border-radius:50%;overflow:hidden;background:#2A2050;color:#D6CBFF;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:1.25rem;position:relative}
.avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pessoa-info{flex-grow:1;min-width:0}
.pessoa-info strong{display:block;font-weight:500}
.pessoa-info span{font-size:.875rem;color:var(--texto-4)}
.pessoa-links{display:flex;gap:8px}
.icone-btn{width:44px;height:44px;border-radius:10px;border:1px solid var(--borda-forte);display:flex;align-items:center;justify-content:center;color:var(--texto);transition:border-color .2s,color .2s}
.icone-btn:hover{border-color:var(--roxo-claro);color:var(--roxo-claro)}
.icone-btn svg{width:18px;height:18px;fill:currentColor}

/* ---------- formulário ---------- */
.form{padding:40px;border-radius:20px;background:var(--card);border:1px solid var(--borda-card);display:flex;flex-direction:column;gap:22px}
@media(max-width:480px){.form{padding:28px 22px}}
.campo{display:flex;flex-direction:column;gap:8px}
.campo label{font-size:.875rem;font-weight:500;color:var(--texto-2)}
.campo input,.campo textarea{min-height:48px;padding:12px 16px;border-radius:10px;border:1px solid var(--borda-forte);background:var(--carvao);color:var(--texto);font:inherit;font-size:1rem;transition:border-color .2s}
.campo textarea{resize:vertical;min-height:120px}
.campo input::placeholder,.campo textarea::placeholder{color:#6E7085}
.campo input:focus,.campo textarea:focus{outline:none;border-color:var(--roxo-claro)}
.campo input[aria-invalid="true"],.campo textarea[aria-invalid="true"]{border-color:#FF7A7A}
.form .nota{font-size:.8125rem;color:var(--texto-4)}
.form-ok{display:none;padding:16px 18px;border-radius:12px;background:rgba(91,44,255,.14);border:1px solid rgba(143,107,255,.45);color:var(--texto);font-size:.9375rem}
.form-ok.visivel{display:block}
.form-ok a{color:var(--roxo-claro);text-decoration:underline}

/* ---------- CTA final ---------- */
.cta-final{text-align:center}
.cta-final .wrap{max-width:880px;display:flex;flex-direction:column;align-items:center;gap:24px}
.cta-final h2{font-family:var(--display);font-weight:400;font-size:clamp(2rem,4.6vw,3.5rem);line-height:1.1}
.cta-final p{max-width:560px;color:var(--texto-2);font-size:1.125rem}
.cta-final .acoes{margin-top:12px;justify-content:center}

/* ---------- rodapé ---------- */
.rodape{border-top:1px solid var(--borda)}
.rodape .wrap{padding-top:56px;padding-bottom:56px;display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap}
.rodape .logo img{height:22px}
.rodape p{color:var(--texto-4);font-size:.875rem;margin-top:14px}
.rodape .legal{color:#8A8B9C;font-size:.8125rem;margin-top:6px}
.rodape-links{display:flex;flex-direction:column;gap:10px;font-size:.9375rem}
.rodape-links a{color:var(--texto-2);transition:color .2s}
.rodape-links a:hover{color:var(--roxo-claro)}
.redes{display:flex;gap:20px;flex-wrap:wrap}

/* ---------- aparecer ao rolar ---------- */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}
.reveal.on{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none;transition:none}
}
