/* Listado de paquetes */
.pk-hero { background: var(--tint); }
.pk-hero .wrap { padding-top: 40px; padding-bottom: 36px; display: flex; flex-direction: column; gap: 10px; }
.pk-hero h1 {
  font-size: clamp(32px, 4.4vw, 52px); font-weight: 600; margin: 0; letter-spacing: -.01em;
}
.pk-hero p { margin: 0; font-size: 16px; color: var(--ink-soft); }

.pk-body {
  padding-top: 32px; padding-bottom: 88px;
  display: flex; gap: 32px; align-items: flex-start; flex-wrap: wrap;
}

/* Filtros */
.pk-filters {
  flex: 1 1 240px; max-width: 100%;
  display: flex; flex-direction: column; gap: 28px;
  background: var(--surface); border: 1px solid var(--line); border-radius: 16px; padding: 24px;
}
.pk-group { display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0; border: 0; min-width: 0; }
.pk-group legend { padding: 0; margin-bottom: 10px; }
.pk-chip {
  display: flex; justify-content: space-between; align-items: center; width: 100%;
  text-align: left; border: none; background: transparent; color: var(--ink);
  padding: 10px 12px; border-radius: 10px; font-size: 15px; cursor: pointer;
}
.pk-chip:hover { background: var(--tint); }
.pk-chip[aria-pressed="true"] { background: var(--ink); color: #fff; }
.pk-chip__count { font-size: 13px; opacity: .75; }
.pk-range { display: flex; flex-direction: column; gap: 10px; }
.pk-range input { accent-color: var(--brand); width: 100%; }

/* Resultados */
.pk-results { flex: 999 1 560px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
.pk-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.pk-count { font-size: 15px; color: var(--ink-soft); }
.pk-count strong { color: var(--ink); }
.pk-sort { display: flex; gap: 8px; align-items: center; font-size: 14px; color: var(--ink-soft); }
.pk-sort select {
  border: 1px solid var(--line-strong); border-radius: 999px; padding: 8px 14px;
  font-size: 14px; background: var(--surface); color: var(--ink); cursor: pointer;
}

.pk-empty {
  background: var(--surface); border: 1px dashed var(--sky); border-radius: 16px; padding: 40px;
  text-align: center; display: flex; flex-direction: column; gap: 12px; align-items: center;
}
.pk-empty[hidden] { display: none; }
.pk-empty__title { font-size: 22px; font-weight: 600; }
.pk-empty button {
  background: var(--ink); color: #fff; border: none; border-radius: 999px;
  padding: 10px 20px; font-size: 14px; font-weight: 600; cursor: pointer;
}
.pk-empty button:hover { background: var(--brand-deep); }

.pk-list { display: flex; flex-direction: column; gap: 18px; list-style: none; margin: 0; padding: 0; }
.pk-card {
  display: flex; flex-wrap: wrap; background: var(--surface);
  border: 1px solid var(--line); border-radius: 16px; overflow: hidden;
}
.pk-card:hover { border-color: var(--sky); color: var(--ink); }
.pk-card__media { flex: 1 1 240px; min-height: 190px; position: relative; background: var(--tint); }
.pk-card__main { flex: 2 1 300px; padding: 22px 24px; display: flex; flex-direction: column; gap: 8px; }
.pk-tags { display: flex; gap: 8px; flex-wrap: wrap; }
.pk-tag { font-size: 12px; font-weight: 600; padding: 4px 10px; border-radius: 999px; background: var(--tint); color: var(--brand-deep); }
.pk-tag--neutral { background: var(--tint-neutral); color: var(--ink-soft); }
.pk-card__title { font-size: 22px; font-weight: 600; line-height: 1.2; }
.pk-card__info { font-size: 14px; color: var(--ink-soft); }
.pk-card__price {
  flex: 1 1 180px; padding: 22px 24px;
  display: flex; flex-direction: column; justify-content: center; align-items: flex-end; gap: 4px;
  border-left: 1px solid var(--line-soft);
}
.pk-card__from { font-size: 13px; color: var(--ink-soft); }
.pk-card__amount { font-size: 32px; font-weight: 600; line-height: 1; }
.pk-card__pp { font-size: 12px; color: var(--ink-soft); }
.pk-card__cta {
  margin-top: 10px; background: var(--brand); color: #fff;
  padding: 9px 18px; border-radius: 999px; font-size: 14px; font-weight: 600;
}
.pk-card:hover .pk-card__cta { background: var(--brand-deep); }
