.posts-section{
  background:#07152b;
  padding:90px 6%;
}

.posts-title{
  text-align:center;
  max-width:850px;
  margin:0 auto 55px;
}

.posts-title p,
.post-category-web{
  color:var(--dorado);
  text-transform:uppercase;
  font-weight:900;
  letter-spacing:1px;
}

.posts-title h2{
  color:white;
  font-size:clamp(34px,4vw,56px);
  line-height:1.05;
  margin-bottom:16px;
}

.posts-title span{
  color:rgba(255,255,255,.72);
  font-size:18px;
  line-height:1.6;
}

.posts-grid{
  max-width:1200px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

.post-card-web{
  position:relative;
  background:white;
  border-radius:26px;
  overflow:hidden;
  box-shadow:0 18px 45px rgba(0,0,0,.22);
  transition:.3s;
}

.post-card-web:hover{
  transform:translateY(-7px);
}

.post-featured{
  border:2px solid rgba(244,180,0,.7);
}

.post-label{
  position:absolute;
  top:16px;
  left:16px;
  z-index:3;
  background:var(--dorado);
  color:var(--azulOscuro);
  padding:8px 13px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
}

.post-image-web{
  width:100%;
  height:230px;
  background:#f1f1f1;
  display:block;
}

.image-fit-cover{
  object-fit:cover;
}

.image-fit-contain{
  object-fit:contain;
  padding:12px;
}

.post-content-web{
  padding:24px;
}

.post-category-web{
  font-size:13px;
  margin-bottom:8px;
}

.post-content-web h3{
  color:var(--azul);
  font-size:25px;
  margin-bottom:12px;
}

.post-content-web p{
  color:#444;
  line-height:1.6;
  margin-bottom:18px;
}

.post-tags-web{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:18px;
}

.post-tags-web span{
  background:#f4f5f7;
  color:#061426;
  padding:7px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
}

.post-content-web a{
  display:inline-block;
  background:var(--dorado);
  color:var(--azulOscuro);
  padding:13px 18px;
  border-radius:14px;
  font-weight:900;
}

@media(max-width:950px){
  .posts-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:650px){
  .posts-grid{
    grid-template-columns:1fr;
  }

  .posts-section{
    padding:70px 5%;
  }

  .post-image-web{
    height:210px;
  }
}
.post-image-link{
  display:block;
  overflow:hidden;
}

.post-image-link img{
  transition:.3s;
}

.post-image-link:hover img{
  transform:scale(1.03);
}

.post-content-web h3 a{
  color:var(--azul);
  text-decoration:none;
}

.post-content-web h3 a:hover{
  color:var(--dorado);
}