/* Reseteo mínimo para evitar conflictos de temas */
.pfc-results, .pfc-grid, .pfc-card, .pfc-cta, .pfc-form { box-sizing: border-box; max-width: 100%; }

/* Formulario */
.pfc-form { margin-top: 1rem; max-width: 480px; padding: 1rem; border:1px solid #e5e7eb; border-radius: 10px; background: #fff; }
.pfc-input { width: 100%; padding: .6rem .7rem; border:1px solid #d1d5db; border-radius: 8px; }
.pfc-alert { color: #b91c1c; background:#fee2e2; border:1px solid #fecaca; padding:.75rem 1rem; border-radius:8px; }

/* Resultados */
.pfc-results { margin-top: 1rem; width:100%; }
.pfc-title { margin-bottom: .75rem; }

/* Grid móvil primero (1 columna) */
.pfc-grid {
  display: grid !important;
  grid-template-columns: 1fr;
  gap: 16px;
  width: 100%;
}

/* 2 columnas en tablets */
@media (min-width: 600px){
  .pfc-grid { grid-template-columns: repeat(2, 1fr); }
}

/* 3 columnas en desktop ancho */
@media (min-width: 1024px){
  .pfc-grid { grid-template-columns: repeat(3, 1fr); }
}

/* Tarjetas */
.pfc-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 16px;
  box-shadow: 0 2px 8px rgba(0,0,0,.04);
  min-width: 0;
  width: 100%;
}
.pfc-card-title { margin: 0 0 .35rem 0; font-size: 1.15rem; line-height: 1.25; }

/* PRECIO (más grande y con color de acción) */
.pfc-price {
  font-weight: 700;
  font-size: 1.5rem;   /* antes 1.25rem */
  color: #0073AA;      /* azul acción (combina con tus botones) */
  margin: .25rem 0 .75rem;
}

.pfc-list { margin: 0 0 .5rem 1.1rem; }

/* Botones */
.pfc-cta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.pfc-btn {
  display: inline-block;
  text-decoration: none;
  padding: 10px 14px;
  border-radius: 8px;
  border: 1px solid transparent;
  line-height: 1;
  white-space: nowrap;
}
.pfc-btn-primary { background:#0073AA; color:#fff; }
.pfc-btn-wa { background:#25D366; color:#fff; }
.pfc-btn:hover { filter: brightness(0.95); }
.pfc-btn:focus { outline: 2px solid #111; outline-offset: 2px; }

/* En pantallas pequeñas, apilar los botones a 100% de ancho */
@media (max-width: 480px){
  .pfc-cta { flex-direction: column; }
  .pfc-btn { width: 100%; text-align: center; }
}

/* Hacer otra búsqueda */
.pfc-center { text-align: center; }
.pfc-secondary-btn {
  display:inline-block; text-decoration:none;
  padding: 10px 16px; border-radius: 8px;
  background:#f3f4f6; color:#111; border:1px solid #e5e7eb;
}
.pfc-secondary-btn:hover { filter: brightness(0.98); }

/* Ajustes extra para pantallas muy estrechas */
@media (max-width: 380px){
  .pfc-btn { padding: 9px 12px; font-size: 0.95rem; }
  .pfc-card-title { font-size: 1.05rem; }
}