/* ============================================================
   DAidea — estilos compartilhados das páginas internas
   Depende de style.css (tokens e componentes globais)
   ============================================================ */

/* ---------- hero interno ---------- */
.hero-int{
  background:var(--verde-fundo);color:#fff;
  padding:calc(var(--e7) + 60px) 0 var(--e7);
  position:relative;overflow:hidden;
}
.hero-int::after{
  content:"";position:absolute;right:-10%;top:-30%;width:60%;height:160%;
  background:radial-gradient(closest-side,rgba(132,192,72,.16),transparent 70%);
  pointer-events:none;
}
.hero-int .envolt{position:relative;z-index:2}
.trilha{display:flex;gap:var(--e1);flex-wrap:wrap;align-items:center;
  font-size:13.5px;color:#9fb5a7;margin-bottom:var(--e3)}
.trilha a{color:#bfe39a;text-decoration:none;min-height:44px;min-width:44px;
  display:inline-flex;align-items:center}
.trilha a:hover{text-decoration:underline}
.hero-int h1{font-size:clamp(34px,5.4vw,64px);line-height:1.05;max-width:20ch;margin-bottom:var(--e3)}
.hero-int h1 em{font-style:italic;color:var(--verde-folha)}
.hero-int .chamada{font-size:clamp(16px,1.3vw,19px);line-height:1.65;color:#d5e3d8;max-width:56ch}
/* linha de botões: em qualquer bloco, nunca colada no que vem antes */
.acoes{display:flex;gap:12px;flex-wrap:wrap;margin-top:var(--e4)}
.hero-int .acoes{margin-top:var(--e4)}

/* ---------- blocos de conteúdo ---------- */
.bloco{padding:var(--e7) 0}
.bloco-creme{background:var(--creme)}
.bloco-branco{background:#fff}
.bloco-escuro{background:var(--verde-fundo);color:#fff}
.bloco h2{font-size:clamp(28px,3.6vw,44px);margin-bottom:var(--e2);max-width:22ch}
.bloco > .envolt > p,
.bloco .intro{color:var(--tinta-fraca);font-size:17px;line-height:1.7;max-width:62ch}
.bloco-escuro h2{color:#fff}
.bloco-escuro .intro,.bloco-escuro > .envolt > p{color:#cfe0d3}

/* ---------- lista de normas / serviços ---------- */
.normas{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--e2);margin-top:var(--e5);
  list-style:none;padding:0}
.norma{
  background:#fff;border:1px solid var(--linha-clara);border-radius:var(--raio);
  padding:var(--e3);display:flex;gap:var(--e3);align-items:flex-start;
}
.bloco-creme .norma{background:#fff}
.bloco-branco .norma{background:var(--creme)}
.norma .cod{
  flex:none;font-family:var(--fonte-titulo);font-weight:600;font-size:15px;
  background:var(--verde-marca);color:#fff;border-radius:10px;
  padding:8px 12px;letter-spacing:-.01em;white-space:nowrap;
}
.norma h3{font-size:19px;margin-bottom:5px;font-family:var(--fonte-texto);font-weight:700;letter-spacing:0}
.norma p{font-size:14.5px;line-height:1.6;color:var(--tinta-fraca)}

/* ---------- lista simples com marcador ---------- */
.checks{list-style:none;padding:0;margin:var(--e4) 0 0;display:grid;
  grid-template-columns:repeat(2,1fr);gap:var(--e1) var(--e3)}
.checks li{display:flex;gap:12px;align-items:flex-start;font-size:15.5px;line-height:1.55;padding:7px 0}
.checks svg{flex:none;margin-top:3px;color:var(--verde-folha)}
.bloco-creme .checks svg,.bloco-branco .checks svg{color:var(--verde-marca)}

/* ---------- três benefícios ---------- */
.beneficios{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--e2);margin-top:var(--e5)}
.benef{border:1px solid var(--linha);border-radius:var(--raio);padding:var(--e4) var(--e3)}
.bloco-creme .benef,.bloco-branco .benef{border-color:var(--linha-clara);background:#fff}
.benef b{display:block;font-family:var(--fonte-titulo);font-size:22px;margin-bottom:var(--e1);font-weight:600}
.benef p{font-size:15px;line-height:1.6;color:var(--tinta-fraca)}
.bloco-escuro .benef p{color:#cfe0d3}

/* ---------- cards de projeto/curso ---------- */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--e2);margin-top:var(--e5)}
.card{
  background:#fff;border:1px solid var(--linha-clara);border-radius:var(--raio);
  padding:var(--e3);display:flex;flex-direction:column;
  transition:transform .25s ease,border-color .25s ease;
}
a.card{text-decoration:none;color:inherit}
a.card:hover{transform:translateY(-3px);border-color:var(--verde-marca)}
/* o card tem fundo branco mesmo dentro de bloco escuro: precisa desfazer o color:#fff herdado,
   senão o h3 (o único que não declara cor própria) fica branco no branco e some. */
.bloco-escuro .card{color:var(--tinta)}
.card .selo{
  align-self:flex-start;font-size:12px;letter-spacing:.09em;text-transform:uppercase;
  font-weight:700;color:var(--verde-marca);background:rgba(12,96,60,.1);
  border-radius:99px;padding:6px 12px;margin-bottom:var(--e2);
}
.card .selo-ead{color:#8a5a00;background:rgba(212,140,0,.12)}
.card h3{font-size:21px;margin-bottom:var(--e1)}
.card p{font-size:14.5px;line-height:1.6;color:var(--tinta-fraca);flex:1}
.card .rodape-card{margin-top:var(--e3);font-weight:600;font-size:14.5px;color:var(--verde-marca);
  display:inline-flex;align-items:center;gap:7px;min-height:32px}
.card .preco{font-family:var(--fonte-titulo);font-size:24px;font-weight:600;color:var(--tinta);margin-top:var(--e2)}

/* ---------- destaque de número ---------- */
.destaque-num{
  background:var(--verde-folha);color:#0A3D2A;border-radius:var(--raio);
  padding:var(--e5) var(--e4);margin-top:var(--e5);display:grid;
  grid-template-columns:auto 1fr;gap:var(--e4);align-items:center;
}
.destaque-num b{font-family:var(--fonte-titulo);font-size:clamp(44px,6vw,76px);line-height:1;font-weight:600}
.destaque-num p{font-size:17px;line-height:1.55;color:#12351f;max-width:44ch}

/* ---------- FAQ ---------- */
.faq{margin-top:var(--e5);border-top:1px solid var(--linha-clara)}
.faq details{border-bottom:1px solid var(--linha-clara)}
.faq summary{
  cursor:pointer;list-style:none;padding:var(--e3) 44px var(--e3) 0;position:relative;
  font-family:var(--fonte-titulo);font-size:19px;font-weight:600;min-height:44px;display:flex;align-items:center;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{
  content:"";position:absolute;right:8px;top:50%;width:11px;height:11px;
  border-right:2px solid var(--verde-marca);border-bottom:2px solid var(--verde-marca);
  transform:translateY(-70%) rotate(45deg);transition:transform .25s ease;
}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq p{padding:0 0 var(--e3);color:var(--tinta-fraca);font-size:15.5px;line-height:1.7;max-width:70ch}

/* ---------- lista de parceiros (página Sobre) ---------- */
.parc-lista-sobre{display:flex;flex-wrap:wrap;gap:var(--e1);margin:var(--e5) 0 0;padding:0}
.parc-lista-sobre li{list-style:none;background:#fff;border:1px solid var(--linha-clara);
  border-radius:99px;padding:10px 18px;font-size:14.5px;color:var(--tinta-fraca);font-weight:500}
.parc-lista-sobre li.destaque{background:var(--verde-marca);color:#fff;border-color:var(--verde-marca)}

/* ---------- CTA de página ---------- */
.cta-pag{background:var(--verde-folha);color:#0A3D2A;padding:var(--e7) 0;text-align:center}
.cta-pag h2{font-size:clamp(30px,4.2vw,50px);margin:0 auto var(--e2);max-width:20ch}
.cta-pag p{font-size:17px;line-height:1.6;max-width:52ch;margin:0 auto var(--e4);color:#12351f}
.cta-pag .btn-escuro{background:var(--verde-fundo)}

@media (max-width:900px){
  .normas,.checks,.beneficios,.cards{grid-template-columns:1fr}
  .destaque-num{grid-template-columns:1fr;gap:var(--e2);text-align:left}
  .hero-int{padding:calc(var(--e6) + 70px) 0 var(--e6)}
}
