/* ===========================================================================
 * PKM Listings archive (/listings/) — Explore Henderson design system.
 * Archive-specific chrome only, scoped to .pkm-archive. The search band
 * (.pkm-sb-*), the card (.pkmh-card) and the grid (.pkmh-grid) are SHARED
 * components in css/pkm-design.css.
 * ======================================================================== */

.pkm-archive{font-family:var(--pkm-font-body);color:var(--pkm-ink);line-height:1.6;}
.pkm-archive .pkma-wrap{max-width:1180px;margin:0 auto;padding:0 28px;}
.pkm-archive h1,.pkm-archive h2{font-family:var(--pkm-font-display);font-weight:600;line-height:1.16;margin:0;color:var(--pkm-ink);}

/* ---------- Hero ---------- */
.pkm-archive .pkma-hero{background:linear-gradient(155deg,var(--pkm-navy-1),var(--pkm-navy-2));color:#fff;position:relative;overflow:hidden;text-align:center;}
.pkm-archive .pkma-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(820px 360px at 50% -20%,rgba(255,255,255,.07),transparent 64%);pointer-events:none;}
.pkm-archive .pkma-hero .pkma-wrap{position:relative;z-index:1;padding:56px 28px 60px;}
.pkm-archive .pkma-crumbs{font-size:13px;letter-spacing:.04em;color:rgba(255,255,255,.62);margin-bottom:14px;}
.pkm-archive .pkma-crumbs a:hover{color:#fff;}
.pkm-archive .pkma-crumbs .pkma-sep{margin:0 9px;opacity:.5;}
.pkm-archive .pkma-hero h1{color:#fff;font-size:clamp(32px,4.6vw,46px);font-weight:700;letter-spacing:-.015em;}
.pkm-archive .pkma-tagline{color:rgba(255,255,255,.82);font-size:17px;margin-top:12px;}
.pkm-archive .pkma-tagline b{color:var(--pkm-gold,#f7d774);font-weight:600;}

/* ---------- Results ---------- */
.pkm-archive .pkma-results{padding:38px 0 70px;}
.pkm-archive .pkma-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:24px;}
.pkm-archive .pkma-head h2{font-size:24px;letter-spacing:-.01em;}
.pkm-archive .pkma-count{font-size:14.5px;color:var(--pkm-muted);font-weight:600;}
.pkm-archive .pkma-count b{color:var(--pkm-ink);}

/* The shared grid defaults to 2-up; the archive is 3-up. */
.pkm-archive .pkmh-grid{grid-template-columns:repeat(3,1fr);margin-top:0;}

/* ---------- No results ---------- */
.pkm-archive .pkma-no-results{text-align:center;color:var(--pkm-muted);padding:48px 0;font-size:16px;}
.pkm-archive .pkma-no-results a{color:var(--pkm-rust);font-weight:600;}

/* ---------- Load-more (restyle the dt_pkm_load_more button) ---------- */
.pkm-archive .dt-load-more-wrap{text-align:center;margin:38px 0 0;}
.pkm-archive .dt-load-more{display:inline-flex;align-items:center;gap:10px;border:1.5px solid var(--pkm-navy-1);color:var(--pkm-navy-1);background:transparent;font-family:inherit;font-weight:700;font-size:13px;letter-spacing:.05em;text-transform:uppercase;padding:14px 32px;border-radius:40px;cursor:pointer;box-shadow:none;transition:background .15s,color .15s;}
.pkm-archive .dt-load-more:hover{background:var(--pkm-navy-1);color:#fff;}
.pkm-archive .dt-load-more-status{margin:12px 0 0;color:var(--pkm-muted);font-size:14px;}

/* ---------- Accessibility ---------- */
.pkm-archive a:focus-visible,
.pkm-archive button:focus-visible{outline:3px solid var(--pkm-rust);outline-offset:2px;border-radius:8px;}
@media (prefers-reduced-motion:reduce){.pkm-archive *{transition:none!important;animation:none!important;}}

/* ---------- Responsive ---------- */
@media (max-width:900px){
  .pkm-archive .pkmh-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:560px){
  .pkm-archive .pkmh-grid{grid-template-columns:1fr;}
  .pkm-archive .pkma-wrap{padding:0 18px;}
}

/* ---- Reverse relay: "Articles about {category}" — card treatment (B5) -- */
.hub-articles { background: var(--pkm-cream, #f3efe5); padding: 8px 0 52px; }
.hub-articles .wrap { max-width: 1120px; margin: 0 auto; padding: 0 20px; }
.hub-articles__h { font-family: var(--pkm-font-display, "Bitter", serif); font-weight: 600; color: var(--pkm-ink, #21303f); font-size: 1.25rem; margin: 0 0 14px; }
.hub-articles__h::before { content: ""; display: block; width: 34px; height: 3px; border-radius: 2px; background: var(--pkm-rust, #b5442b); margin-bottom: 12px; }
.hub-articles__list { list-style: none; margin: 0; padding: 6px 26px; max-width: 760px; background: var(--pkm-card, #fff); border: 1px solid var(--pkm-line, #ece6da); border-radius: var(--pkm-radius, 14px); box-shadow: var(--pkm-shadow, 0 1px 2px rgba(33,48,63,.04), 0 8px 24px rgba(33,48,63,.06)); }
.hub-articles__list li + li { border-top: 1px solid var(--pkm-line-soft, #f0ebe1); }
.hub-articles__list a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 0; font-family: var(--pkm-font-display, "Bitter", serif); font-weight: 600; color: var(--pkm-ink, #21303f); text-decoration: none; }
.hub-articles__list a::after { content: "→"; color: var(--pkm-rust, #b5442b); transition: transform .15s; }
.hub-articles__list a:hover { color: var(--pkm-rust, #b5442b); }
.hub-articles__list a:hover::after { transform: translateX(3px); }
@media (prefers-reduced-motion: reduce) { .hub-articles__list a::after { transition: none; } }
