/* ── Página Asesoría ──────────────────────────────────────────── */

.cp-asesoria {
  padding: 56px 0 96px;
}

/* ── Hero ── */
.cp-asesoria__hero {
  max-width: 860px;
  margin: 0 auto 64px;
  text-align: center;
}

.cp-asesoria__eyebrow {
  display: inline-block;
  margin-bottom: 18px;
  color: #6fbd4f;
  font-size: .78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .18em;
}

.cp-asesoria__hero h1 {
  margin: 0 0 18px;
  color: #162133;
  font-size: clamp(2.1rem, 4.6vw, 3.4rem);
  line-height: 1.08;
  letter-spacing: -.03em;
  font-weight: 800;
}

.cp-asesoria__hero h1 span {
  display: block;
}

.cp-asesoria__hero p {
  max-width: 680px;
  margin: 0 auto;
  color: #5f6672;
  font-size: 1.03rem;
  line-height: 1.72;
}

/* ── Grid ── */
.cp-asesoria__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  align-items: stretch;
}

/* ── Tarjeta ── */
.cp-asesoria__card {
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(23, 23, 23, .08);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 12px 26px rgba(0, 0, 0, .05);
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, background .25s ease;
}

.cp-asesoria__card:hover {
  transform: translateY(-4px);
  border-color: rgba(111, 189, 79, .35);
  background: #162133;
  box-shadow: 0 20px 36px rgba(22, 33, 51, .18);
}

/* Imagen superior */
.cp-asesoria__card-img {
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  flex-shrink: 0;
}

.cp-asesoria__card-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .45s ease;
  display: block;
}

.cp-asesoria__card:hover .cp-asesoria__card-img img {
  transform: scale(1.06);
}

/* Cuerpo */
.cp-asesoria__card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 14px;
  padding: 28px 26px 26px;
}

/* Eyebrow */
.cp-asesoria__card-eyebrow {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  padding: 5px 12px;
  border-radius: 999px;
  background: rgba(111, 189, 79, .1);
  color: #4a9a33;
  font-size: .73rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  transition: background .25s, color .25s;
}

.cp-asesoria__card:hover .cp-asesoria__card-eyebrow {
  background: rgba(255, 255, 255, .12);
  color: #8bdc65;
}

/* Título */
.cp-asesoria__card h2 {
  margin: 0;
  color: #162133;
  font-size: 1.2rem;
  font-weight: 800;
  line-height: 1.3;
  transition: color .25s;
}

.cp-asesoria__card:hover h2 {
  color: #fff;
}

/* Descripción */
.cp-asesoria__card p {
  margin: 0;
  color: #5f6672;
  font-size: .97rem;
  line-height: 1.72;
  transition: color .25s;
}

.cp-asesoria__card:hover p {
  color: rgba(255, 255, 255, .75);
}

/* Lista de puntos */
.cp-asesoria__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}

.cp-asesoria__list li {
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 10px;
  color: #5f6672;
  font-size: .95rem;
  line-height: 1.6;
  transition: color .25s;
}

.cp-asesoria__list li::before {
  content: '\2713';
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border-radius: 999px;
  background: rgba(111, 189, 79, .12);
  color: #4a9a33;
  font-size: .8rem;
  font-weight: 800;
  margin-top: 2px;
  transition: background .25s, color .25s;
}

.cp-asesoria__card:hover .cp-asesoria__list li {
  color: rgba(255, 255, 255, .8);
}

.cp-asesoria__card:hover .cp-asesoria__list li::before {
  background: rgba(255, 255, 255, .1);
  color: #8bdc65;
}

/* CTA */
.cp-asesoria__cta {
  margin-top: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 11px 24px;
  border-radius: 12px;
  border: 1.5px solid rgba(22, 33, 51, .16);
  background: transparent;
  color: #162133;
  font-size: .9rem;
  font-weight: 700;
  text-decoration: none;
  transition: background .2s, border-color .2s, color .2s;
}

.cp-asesoria__cta:hover {
  background: rgba(111, 189, 79, .1);
  border-color: rgba(111, 189, 79, .4);
}

.cp-asesoria__card:hover .cp-asesoria__cta {
  background: #8bdc65;
  border-color: #8bdc65;
  color: #162133;
}

.cp-asesoria__card:hover .cp-asesoria__cta:hover {
  background: #7ecc59;
}

/* ── Responsive ── */
@media (max-width: 1024px) {
  .cp-asesoria__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .cp-asesoria {
    padding: 42px 0 76px;
  }
  .cp-asesoria__grid {
    grid-template-columns: 1fr;
  }
}
