

    
/* === Sapir: editorial preview cards with article thumbnails === */
.press-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:22px; }
.press-card { display:flex; flex-direction:column; text-decoration:none; background:#fff;
  border:1px solid var(--he-border,#eadfd2); border-radius:18px; overflow:hidden;
  box-shadow:0 1px 2px rgba(37,33,35,.04), 0 14px 30px -16px rgba(135,43,100,.13);
  transition:transform .22s ease, box-shadow .22s ease; }
.press-card:hover { transform:translateY(-5px); box-shadow:0 22px 46px -16px rgba(135,43,100,.22); }
.press-thumb { position:relative; aspect-ratio:16/10; overflow:hidden; background:#eef0f2; }
.press-thumb img { width:100%; height:100%; object-fit:cover; object-position:top center; display:block;
  transition:transform .5s cubic-bezier(.2,.7,.2,1); }
.press-card:hover .press-thumb img { transform:scale(1.05); }
.press-badge { position:absolute; bottom:12px; inset-inline-start:12px; background:rgba(124,37,84,0.92); color:#fff;
  font-family:var(--he-font-sans); font-size:12.5px; font-weight:700; padding:5px 13px; border-radius:999px; }
.press-body { padding:18px 20px 20px; display:flex; flex-direction:column; gap:8px; flex:1; }
.press-meta { display:flex; align-items:baseline; gap:10px; }
.press-pub { font-family:var(--he-font-display); font-style:italic; font-size:22px; line-height:1.1; color:var(--c-ink,#2d2329); }
.press-year { font-family:var(--he-font-sans); font-size:12px; font-weight:700; letter-spacing:.1em; color:var(--he-fg-3,#8b7a82); }
.press-desc { margin:0; font-size:14.5px; line-height:1.65; color:var(--he-fg-2,#5b5158); flex:1;
  display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.press-link { font-family:var(--he-font-sans); font-size:13px; font-weight:700; color:var(--b-magenta,#872B64); }

/* ===== sweep 2026-09-15 (press): a real grid, a masthead badge, a face at the end ===== */

/* 24. four clippings → 2×2 from 900px, 4-up from 1200px; no centred orphan */
@media (min-width: 900px) {
  .press-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 26px; }
  .press-grid > *:last-child:nth-child(3n+1) { grid-column: auto !important; max-width: none !important; justify-self: stretch !important; }
}
@media (min-width: 1200px) { .press-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 22px; } }
.press-grid > *:last-child:nth-child(odd) { max-width: none !important; }
/* the publication badge sits on the masthead, not on the headline */
.press-badge { top: 12px; bottom: auto; }
.press-thumb img { aspect-ratio: 4 / 3; object-position: top center; }

/* intro line under the hero, and the closing band */
.press-intro { margin: 0 0 30px; text-align: center; font-size: 16px; color: var(--he-fg-2, #5b5158); }
.press-intro a { color: var(--b-magenta, #872B64); font-weight: 700; text-decoration: none; border-bottom: 1.5px solid rgba(135,43,100,.35); }
.press-intro a:hover { border-bottom-color: currentColor; }
.press-close { padding-top: 10px !important; }
