/*--------------------------------------------------------------
 * Bloque · ¿Quién puede beneficiarse?
 *-------------------------------------------------------------*/
.pq-bloque{padding:4rem 2rem;background:#fff;}
.pq-container{
  max-width:1200px;
  margin:0 auto;
  display:flex;
  gap:2.5rem;
  flex-wrap:wrap;
  
}

/* Columna texto */
.pq-left{flex:1 1 46%;}
.pq-titulo{
  font-family:'Playfair Display',serif;
  font-size:1.9rem;
  margin-bottom:1.25rem;
}
.pq-intro p{font-family:'Karla',sans-serif;font-size:1.05rem;line-height:1.7;margin-bottom:1.25rem;}

.pq-lista{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:1.25rem;
}
.pq-item{display:flex;align-items:flex-start;gap:.75rem;}
.pq-icon{width:20px;height:20px;flex-shrink:0;margin-top:.25rem;}
.pq-texto{font-family:'Karla',sans-serif;font-size:1.05rem;line-height:1.6;}

/* Columna mosaico */
.pq-grid{
  flex:1 1 46%;
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(110px,1fr));
  gap:6px;
}
.pq-thumb{cursor:pointer;overflow:hidden;position:relative;}
.pq-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease;}
.pq-thumb:hover img{transform:scale(1.08);}

/* Modal */
.pq-modal{
  position:fixed;inset:0;
  background:rgba(0,0,0,.9);
  display:flex;align-items:center;justify-content:center;
  opacity:0;pointer-events:none;transition:opacity .3s ease;
  z-index:9999;
}
.pq-modal.is-open{pointer-events:auto;}
.pq-full{max-width:90%;max-height:90vh;border-radius:4px;}
.pq-close,.pq-prev,.pq-next{
  position:absolute;top:50%;transform:translateY(-50%);
  background:none;border:none;color:#fff;font-size:2.5rem;cursor:pointer;padding:.25rem .5rem;opacity:.85;
}
.pq-close{top:2rem;right:2rem;transform:none;font-size:2rem;}
.pq-prev{left:2rem;}
.pq-next{right:2rem;}
.pq-close:hover,.pq-prev:hover,.pq-next:hover{opacity:1;}

/* Responsive */
@media(max-width:768px){
  .pq-container{flex-direction:column;}
  .pq-left,.pq-grid{flex:1 1 100%;}
  .pq-titulo{font-size:1.6rem;}
  .pq-texto{font-size:1rem;}
}
