/* =========================================
   ÚLTIMAS PUBLICACIONES
========================================= */

.cn-blog {
   padding: 90px 5%;
   background: #fff;
}

.cn-blog .comp-wrap {
   max-width: 1180px;
   margin: 0 auto;
}

.cn-blog .comp-section-head {
   max-width: 720px;
   margin: 0 auto 55px;
   text-align: center;
}

.cn-blog .comp-kicker {
   margin: 0 0 12px;
   font-size: 0.82rem;
   font-weight: 700;
   letter-spacing: 0.12em;
   text-transform: uppercase;
}

.cn-blog .comp-section-head h2 {
   margin: 0 0 16px;
   font-size: clamp(2rem, 3vw, 2.8rem);
   line-height: 1.1;
}

.cn-blog .comp-section-head > p:last-child {
   margin: 0;
   font-size: 1.05rem;
   line-height: 1.6;
}


/* GRID */

.cn-blog-grid {
   display: grid;
   grid-template-columns: repeat(3, minmax(0, 1fr));
   gap: 36px;
}


/* TARJETA */

.cn-blog-card {
   min-width: 0;
   background: #fff;
}


/* IMAGEN */

.cn-blog-img {
   display: block;
   width: 100%;
   aspect-ratio: 16 / 10;
   margin-bottom: 24px;
   overflow: hidden;
   border-radius: 18px;
}

.cn-blog-img img {
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
   transition: transform .35s ease;
}

.cn-blog-card:hover .cn-blog-img img {
   transform: scale(1.025);
}


/* CONTENIDO */

.cn-blog-content {
   padding: 0 4px;
    text-align: left;
}

.cn-blog-fecha {
   margin: 0 0 10px;
   font-size: 0.8rem;
   font-weight: 600;
   letter-spacing: .03em;
   color: #777;
}

.cn-blog-content h3 {
   margin: 0 0 14px;
   font-size: 1.35rem;
   line-height: 1.3;
}

.cn-blog-content h3 a {
   color: #171743;
   text-decoration: none;
}

.cn-blog-content h3 a:hover {
   text-decoration: underline;
   text-underline-offset: 4px;
}

.cn-blog-extracto {
   margin: 0;
   font-size: .95rem;
   line-height: 1.65;
   color: #555;
}

.cn-blog-leer {
   display: inline-block;
   margin-top: 20px;
   font-size: .92rem;
   font-weight: 700;
   color: #171743;
   text-decoration: none;
}

.cn-blog-leer:hover {
   text-decoration: underline;
   text-underline-offset: 4px;
}


/* BOTÓN FINAL */

.cn-blog-footer {
   margin-top: 55px;
   text-align: center;
}

.cn-blog-todas {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   padding: 13px 24px;
   border: 1px solid #171743;
   border-radius: 999px;
   color: #171743;
   font-weight: 600;
   text-decoration: none;
   transition: .2s ease;
}

.cn-blog-todas:hover {
   background: #171743;
   color: #fff;
}


/* TABLET */

@media (max-width: 900px) {

   .cn-blog {
      padding: 70px 5%;
   }

   .cn-blog-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 40px 26px;
   }

}


/* MÓVIL */

@media (max-width: 600px) {

   .cn-blog {
      padding: 55px 6%;
   }

   .cn-blog .comp-section-head {
      margin-bottom: 38px;
   }

   .cn-blog-grid {
      grid-template-columns: 1fr;
      gap: 45px;
   }

   .cn-blog-img {
      margin-bottom: 20px;
   }

   .cn-blog-content h3 {
      font-size: 1.25rem;
   }

   .cn-blog-footer {
      margin-top: 42px;
   }

}