/* Landing page do CIDA. Só arquivo estático (a CSP do site não aceita estilo em linha). Tema claro: o logo tem fundo branco. */
:root { --verde:#0b5d3b; --verde-esc:#084a30; --ouro:#c9a227; --fundo:#f6f8f7; --linha:#d9e2de; --tx:#1b2a24; --suave:#52635b; }
* { box-sizing:border-box; }
body.land { margin:0; font:16px/1.55 system-ui, -apple-system, "Segoe UI", sans-serif; color:var(--tx); background:#fff; }
a { color:var(--verde); text-decoration:none; } a:hover { color:var(--verde-esc); }

.topo { position:sticky; top:0; z-index:10; background:rgba(255,255,255,.95); border-bottom:1px solid var(--linha); }
.topo-in { max-width:1100px; margin:0 auto; padding:10px 24px; display:flex; align-items:center; gap:24px; }
.marca { display:flex; line-height:0; } .marca img { height:44px; width:auto; }
.nav { margin-left:auto; display:flex; align-items:center; gap:22px; }
.nav a { color:var(--suave); font-weight:500; font-size:14px; }
.nav a.botao { color:#fff; }
.botao { display:inline-flex; align-items:center; justify-content:center; height:44px; padding:0 22px; border-radius:8px; background:var(--verde); color:#fff; font-weight:600; font-size:15px; border:1px solid var(--verde); }
.botao:hover { background:var(--verde-esc); color:#fff; }
.botao.claro { background:#fff; color:var(--verde); border-color:var(--linha); }
.botao.claro:hover { border-color:var(--verde); color:var(--verde); }

.hero { background:linear-gradient(180deg,#fff 0%,var(--fundo) 100%); border-bottom:1px solid var(--linha); }
.hero-in { max-width:1100px; margin:0 auto; padding:76px 24px 84px; display:grid; grid-template-columns:1.15fr .85fr; gap:48px; align-items:center; }
.hero h1 { font-size:42px; line-height:1.12; margin:0 0 18px; color:var(--verde); letter-spacing:-.02em; }
.hero h1 em { font-style:normal; color:var(--ouro); }
.hero p { font-size:18px; line-height:1.6; color:var(--suave); margin:0 0 28px; max-width:560px; }
.acoes { display:flex; gap:12px; flex-wrap:wrap; }
.cartao-passos { background:#fff; border:1px solid var(--linha); border-radius:16px; padding:28px; box-shadow:0 18px 40px -24px rgba(11,93,59,.4); }
.cartao-passos h2 { margin:0 0 14px; font-size:14px; text-transform:uppercase; letter-spacing:.06em; color:var(--suave); }
.cartao-passos ol { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:14px; }
.cartao-passos li { display:flex; gap:12px; align-items:flex-start; font-size:15px; line-height:1.45; }
.cartao-passos b { flex:0 0 28px; height:28px; border-radius:50%; background:var(--verde); color:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:13px; }
.cartao-passos li:nth-child(3) b { background:var(--ouro); color:#1b2a24; }

.secao { max-width:1100px; margin:0 auto; padding:72px 24px; }
.secao h2 { font-size:30px; margin:0 0 8px; color:var(--verde); letter-spacing:-.01em; }
.sub { color:var(--suave); margin:0 0 36px; max-width:640px; }
.grade { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.card { background:#fff; border:1px solid var(--linha); border-radius:12px; padding:20px; }
.card h3 { margin:0 0 6px; font-size:16px; color:var(--verde); }
.card p { margin:0; font-size:14.5px; line-height:1.55; color:var(--suave); }
.aviso { margin-top:28px; font-size:13.5px; color:var(--suave); border-left:3px solid var(--ouro); padding:4px 0 4px 14px; max-width:720px; }

.faixa { background:var(--verde); color:#fff; }
.faixa .secao { padding:64px 24px; } .faixa h2 { color:#fff; } .faixa .sub { color:#cfe3d9; }
.lista-seg { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2,1fr); gap:14px 32px; }
.lista-seg li { display:flex; gap:10px; align-items:flex-start; font-size:15px; line-height:1.5; color:#e8f3ee; }
.lista-seg li::before { content:""; flex:0 0 8px; height:8px; margin-top:7px; border-radius:50%; background:var(--ouro); }
.links { margin:26px 0 0; } .links a { color:#fff; text-decoration:underline; }

.rodape { border-top:1px solid var(--linha); }
.rodape-in { max-width:1100px; margin:0 auto; padding:26px 24px; display:flex; align-items:center; gap:16px; flex-wrap:wrap; color:var(--suave); font-size:13.5px; }
.rodape img { height:30px; width:auto; }
.rodape .contato { margin-left:auto; }

@media (max-width:900px) {
  .hero-in { grid-template-columns:1fr; padding:48px 20px 56px; } .hero h1 { font-size:33px; }
  .grade { grid-template-columns:repeat(2,1fr); } .lista-seg { grid-template-columns:1fr; } .secao { padding:48px 20px; }
  .nav a.oculta-movel { display:none; }
}
@media (max-width:560px) { .grade { grid-template-columns:1fr; } }
