/* Scoped to solution archives; preserve the existing theme everywhere else. */
.apfp-solution-catalog .apfp-machine-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.apfp-solution-catalog .apfp-machine-card { min-width:0; }
.apfp-solution-catalog .apfp-card-media { display:flex; align-items:center; justify-content:center; aspect-ratio:4/3; background:#fff; padding:20px; }
.apfp-solution-catalog .apfp-card-media img { display:block; width:100%; height:100%; object-fit:contain; }
.apfp-solution-catalog .apfp-card-body { padding:22px; gap:14px; }
.apfp-solution-catalog .apfp-card-body h2 { margin:0; font-size:21px; line-height:1.3; }
.apfp-solution-catalog .apfp-solution-summary { margin:0; color:var(--muted); font-size:14px; }
.apfp-solution-catalog .apfp-card-actions { padding-top:8px; }
.apfp-solution-catalog a:focus-visible { outline:3px solid var(--green); outline-offset:3px; }
@media(max-width:1000px) { .apfp-solution-catalog .apfp-machine-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .apfp-solution-catalog .apfp-machine-grid { grid-template-columns:1fr; } }
