/* ==========================================================================
   CONFECAP · PÁGINA "INFORMAÇÕES DO CURSO"  —  CSS específico
   Reaproveita a linguagem de .specs / .pcard da home. Só tokens de site.css.
   ========================================================================== */

/* Abertura: foto + intro + ficha técnica ---------------------------------- */
.curso__top{
  display:grid; gap:clamp(2rem,5vw,3.5rem); align-items:start;
}
@media (min-width:960px){
  .curso__top{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}
}
.curso__media{position:relative}
.curso__media .photo{aspect-ratio:4/3}
.curso__media figcaption{
  margin-top:.9rem; font-family:var(--font-display); font-weight:600;
  font-size:.78rem; letter-spacing:.06em; color:var(--on-dark-mute);
}

.curso__intro h2{font-size:var(--t-h3); color:#fff; margin-bottom:.4rem}
.curso__intro .lead{margin:1.3rem 0 0}
.curso__intro p{margin:1.2rem 0 0; color:var(--on-dark-soft); line-height:1.75}

/* Ficha técnica — mesma pegada de .specs da home ------------------------- */
.specs{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1px; background:var(--hair); border:1px solid var(--hair);
  margin-top:1.9rem; border-radius:4px; overflow:hidden;
}
.specs div{background:#08182F; padding:1rem 1.1rem}
.specs dt{
  font-family:var(--font-display); font-size:.68rem; font-weight:600;
  letter-spacing:.16em; text-transform:uppercase; color:var(--on-dark-mute);
  margin-bottom:.32rem;
}
.specs dd{
  margin:0; font-family:var(--font-display); font-weight:700; font-size:1rem;
  color:#fff; line-height:1.3;
}

.curso__cta{display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.9rem}
.curso__ebooks{
  margin:1.3rem 0 0; font-size:var(--t-small); color:var(--on-dark-soft);
}

/* Blocos de informação em duas colunas ------------------------------------ */
.infogrid{
  display:grid; gap:1.5rem; margin-top:2.6rem;
}
@media (min-width:760px){.infogrid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.info{padding:clamp(1.5rem,3.4vw,2.2rem)}
.info__kicker{
  font-family:var(--font-display); font-weight:600; font-size:var(--t-eyebrow);
  letter-spacing:.2em; text-transform:uppercase; color:var(--gold-300);
  margin:0 0 .8rem;
}
.info h3{font-size:var(--t-h3); color:#fff; margin-bottom:.7rem}
.info p{color:var(--on-dark-soft); font-size:var(--t-small); line-height:1.75}

.checklist{margin:1.1rem 0 0; display:grid; gap:.7rem}
.checklist li{
  position:relative; padding-left:1.7rem; color:var(--on-dark-soft);
  font-size:var(--t-small); line-height:1.6;
}
.checklist li::before{
  content:""; position:absolute; left:0; top:.45em; width:9px; height:9px;
  border-right:1.5px solid var(--gold-500); border-bottom:1.5px solid var(--gold-500);
  transform:rotate(-45deg);
}

/* Amparo legal — lista de referências normativas */
.legalrefs{margin:1.1rem 0 0; border-top:1px solid var(--hair)}
.legalrefs li{
  padding:.85rem 0; border-bottom:1px solid var(--hair);
  display:flex; flex-direction:column; gap:.2rem;
}
.legalrefs b{
  font-family:var(--font-display); font-weight:700; font-size:.98rem; color:#fff;
}
.legalrefs span{font-size:var(--t-small); color:var(--on-dark-mute)}

/* Como agendar uma turma (seção clara) ------------------------------------ */
.agendar{
  display:grid; gap:1rem; margin-top:2.2rem; counter-reset:step;
}
@media (min-width:640px){.agendar{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.agendar{grid-template-columns:repeat(4,minmax(0,1fr))}}

.step{
  background:var(--paper); border:1px solid var(--line); border-radius:6px;
  padding:1.5rem 1.4rem; box-shadow:0 22px 44px -34px rgba(10,31,68,.35);
}
.step::before{
  counter-increment:step; content:counter(step,decimal-leading-zero);
  display:block; font-family:var(--font-display); font-weight:800; font-size:1.1rem;
  color:#836810; letter-spacing:.06em; margin-bottom:.7rem;
}
.step h3{font-size:1.02rem; color:var(--ink-900); margin-bottom:.35rem}
.step p{margin:0; font-size:var(--t-small); color:#2C3A50; line-height:1.65}

.agendar__cta{
  display:flex; flex-wrap:wrap; gap:.8rem; align-items:center; margin-top:2.2rem;
}
