/* iandratech.com.br - estilos do site institucional (por cima do design system) */
.site-wrap{ width:100%; max-width:1120px; margin:0 auto; padding:0 var(--ds-space-5); box-sizing:border-box; }
.site-wrap-estreito{ max-width:760px; }
.wordmark{ font-family:var(--ds-font-heading); font-weight:700; font-size:22px; color:var(--ds-ink); text-decoration:none; letter-spacing:-0.01em; }
.wordmark span{ color:var(--ds-accent); }

/* topo */
.site-topo{ position:sticky; top:0; z-index:20; background:rgba(13,18,32,0.88); backdrop-filter:blur(10px); border-bottom:1px solid var(--ds-nav-line); }
.site-topo-inner{ display:flex; align-items:center; justify-content:space-between; min-height:64px; gap:var(--ds-space-4); }
.site-nav{ display:flex; align-items:center; gap:var(--ds-space-4); }
.site-nav > a:not(.btn){ color:var(--ds-ink-soft); text-decoration:none; font-weight:500; font-size:14px; }
.site-nav > a:not(.btn):hover{ color:var(--ds-ink); }

/* hero */
.hero{ padding:88px 0 72px; background:
  radial-gradient(900px 420px at 15% -10%, rgba(57,230,192,0.18), transparent 60%),
  radial-gradient(700px 380px at 90% 10%, rgba(57,230,192,0.08), transparent 60%); }
.hero-inner{ max-width:820px; }
.hero h1{ font-size:clamp(32px, 5vw, 52px); line-height:1.08; margin:var(--ds-space-4) 0; }
.hero-texto{ font-size:18px; color:var(--ds-ink-soft); max-width:640px; margin-bottom:var(--ds-space-5); }
.hero-acoes{ display:flex; gap:var(--ds-space-3); flex-wrap:wrap; margin-bottom:var(--ds-space-5); }
.hero-pontos{ list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:var(--ds-space-2) var(--ds-space-5); color:var(--ds-ink-soft); font-size:14px; }
.hero-pontos li::before{ content:"✓"; color:var(--ds-accent); font-weight:700; margin-right:8px; }

/* seções */
.secao{ padding:72px 0; }
.secao-alt{ background:var(--ds-surface); border-top:1px solid var(--ds-line); border-bottom:1px solid var(--ds-line); }
.secao h2{ font-size:clamp(24px, 3vw, 32px); margin-bottom:var(--ds-space-2); }
.secao-sub{ color:var(--ds-ink-soft); font-size:16px; margin-bottom:var(--ds-space-6); }

.passos{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:var(--ds-space-5); }
.passo{ background:var(--ds-surface); border:1px solid var(--ds-line); border-radius:var(--ds-radius-lg); padding:var(--ds-space-5); }
.passo-num{ display:inline-flex; width:36px; height:36px; align-items:center; justify-content:center; border-radius:50%; background:var(--ds-accent); color:var(--ds-accent-ink); font-family:var(--ds-font-heading); font-weight:700; margin-bottom:var(--ds-space-3); }
.passo p, .recurso p{ color:var(--ds-ink-soft); margin:0; }

.recursos{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:var(--ds-space-5); margin-top:var(--ds-space-6); }
.recurso{ border-left:3px solid var(--ds-accent); padding-left:var(--ds-space-4); }

/* planos */
.planos{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:var(--ds-space-5); align-items:stretch; }
.plano{ position:relative; display:flex; flex-direction:column; background:var(--ds-surface); border:1px solid var(--ds-line); border-radius:var(--ds-radius-lg); padding:var(--ds-space-6) var(--ds-space-5) var(--ds-space-5); }
.plano-destaque{ border-color:var(--ds-accent); box-shadow:0 0 0 4px var(--ds-accent-dim); }
.plano-tag{ position:absolute; top:-12px; left:var(--ds-space-5); background:var(--ds-accent); color:var(--ds-accent-ink); font-size:12px; font-weight:700; padding:3px 10px; border-radius:999px; }
.plano h3{ font-size:19px; }
.plano-preco{ font-family:var(--ds-font-heading); font-size:34px; font-weight:700; margin:var(--ds-space-2) 0 var(--ds-space-4); }
.plano-preco small{ font-size:14px; font-weight:500; color:var(--ds-ink-soft); }
.plano-itens{ list-style:none; padding:0; margin:0 0 var(--ds-space-5); flex:1; color:var(--ds-ink-soft); font-size:14px; }
.plano-itens li{ padding:6px 0; border-top:1px solid var(--ds-line); }
.plano-itens li::before{ content:"✓"; color:var(--ds-accent); font-weight:700; margin-right:8px; }
.planos-nota{ margin-top:var(--ds-space-5); color:var(--ds-ink-faint); font-size:13px; text-align:center; }

/* faq */
.faq{ border:1px solid var(--ds-line); border-radius:var(--ds-radius); padding:var(--ds-space-3) var(--ds-space-4); margin-bottom:var(--ds-space-3); background:var(--ds-bg); }
.faq summary{ cursor:pointer; font-weight:600; font-family:var(--ds-font-heading); }
.faq p{ margin:var(--ds-space-3) 0 0; color:var(--ds-ink-soft); }

/* rodapé */
.site-rodape{ padding:var(--ds-space-6) 0; border-top:1px solid var(--ds-line); }
.site-rodape-inner{ display:flex; align-items:center; justify-content:space-between; gap:var(--ds-space-4); flex-wrap:wrap; }
.site-rodape-links{ display:flex; gap:var(--ds-space-4); }
.site-rodape-links a{ color:var(--ds-ink-soft); text-decoration:none; font-size:14px; }
.site-rodape-links a:hover{ color:var(--ds-ink); }

@media (max-width: 900px){
  .passos, .recursos, .planos{ grid-template-columns:1fr; }
  .site-nav > a:not(.btn){ display:none; }
  .hero{ padding:56px 0 48px; }
  .secao{ padding:48px 0; }
}

/* o badge do hero fica sobre fundo navy: usa o verde como texto */
.hero .status{ color:var(--ds-accent); }
