/* Keep the desktop artwork presentation proportional on narrow screens. */
.campaign-slide > a,.diabetes-preview > a,.pamphlet-slide > a{display:block;min-width:0}
.campaign-slide img,.diabetes-preview img,.pamphlet-viewer .bp-previews img{display:block;height:auto;object-fit:contain}
@media(max-width:700px){
  .portfolio-back{padding-top:1.25rem}
  .portfolio-back + .section{padding-top:2rem}
  .case-heading h1{font-size:clamp(2rem,8.5vw,3rem);line-height:1.12;max-width:100%;overflow-wrap:break-word}
  .case-heading .lead{font-size:1.05rem;line-height:1.55;margin:1rem 0}
  .case-heading .section-intro,.campaign-services{font-size:.9rem;line-height:1.6;margin:1rem 0}
  .case-heading .btn{margin-top:.75rem;max-width:100%;white-space:normal}
  .campaign-gallery,.diabetes-preview,.pamphlet-viewer{width:100%;max-width:100%;min-width:0;margin:1.75rem auto 2.5rem;padding:0;border:0;background:transparent;border-radius:0}
  .campaign-slide,.pamphlet-slide{margin:0;min-width:0}
  .campaign-slide img,.diabetes-preview img,.pamphlet-viewer .bp-previews img{width:100%;max-width:100%;height:auto;max-height:none;border:0;border-radius:4px}
  .campaign-gallery h2{font-size:1.75rem;line-height:1.2}
  .campaign-gallery-heading .eyebrow{font-size:.7rem;letter-spacing:.12em}
  .campaign-controls,.pamphlet-controls{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:.75rem;margin:1rem 0}
  .campaign-controls[hidden]{display:none}
  .campaign-status,.pamphlet-status{min-width:0;font-size:.85rem;line-height:1.4;margin:0;text-align:center;overflow-wrap:anywhere}
  .campaign-slide figcaption,.diabetes-preview figcaption,.pamphlet-viewer figcaption{padding:.75rem 0 0;margin:0;line-height:1.5;font-size:.85rem}
  .campaign-slide figcaption p{font-size:.95rem}
  .bp-story{max-width:100%;min-width:0}
  .bp-story h2,.bp-story h3{font-size:1.75rem;overflow-wrap:break-word}
}
