/* Partners hub */
.ph-grid { display: grid; gap: 20px; }
.ph-card { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 0; border: 1px solid var(--line, rgba(22,20,15,.16)); border-radius: 12px; overflow: hidden; background: var(--paper, #EDE8DF); }
.ph-media { display: block; min-height: 100%; background: var(--line, rgba(22,20,15,.08)); }
.ph-media img { display: block; width: 100%; height: 100%; min-height: 240px; object-fit: cover; transition: transform .4s ease; }
.ph-card:hover .ph-media img { transform: scale(1.03); }
.ph-body { display: grid; align-content: start; gap: 10px; padding: 24px 26px 26px; min-width: 0; }
.ph-body h2 { margin: 0; font-family: "Instrument Serif", "Times New Roman", serif; font-weight: 400; font-size: clamp(1.8rem, 3.4vw, 2.4rem); line-height: 1.05; text-wrap: balance; }
.ph-body h2 a { color: inherit; text-decoration: none; }
.ph-body h2 a:hover, .ph-body h2 a:focus-visible { text-decoration: underline; text-underline-offset: 4px; }
.ph-body > p { margin: 0; }
.ph-people { list-style: none; margin: 4px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px 16px; }
.ph-people li { display: flex; align-items: center; gap: 8px; font-size: .9rem; }
.ph-people img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; object-position: center 20%; background: var(--line, rgba(22,20,15,.1)); }
.ph-go { color: var(--signal, #E4572E); text-decoration: none; font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; margin-top: 6px; justify-self: start; }
.ph-go:hover, .ph-go:focus-visible { text-decoration: underline; }
.ph-steps { grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); }
@media (max-width: 760px) { .ph-card { grid-template-columns: 1fr; } .ph-media img { min-height: 0; aspect-ratio: 16 / 10; height: auto; } }
@media (prefers-reduced-motion: reduce) { .ph-media img { transition: none; } }
