/* Comparable thumbnail stages; complete artwork keeps its original proportions.
   Wide feature stories and portrait archive documents retain their own layouts. */
/* Logo-only stages; page-specific aspect ratios no longer depend on image height. */
.logo-showcase.logo-mark-gallery{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.logo-mark-gallery>figure:not(.logo-showcase-wide){display:flex;flex-direction:column;min-width:0}
.logo-mark-gallery .logo-mark-stage{
  display:block;position:relative;width:100%;aspect-ratio:8/5;
  min-height:0;height:auto;padding:0;margin:0;border-radius:0;
  overflow:hidden;flex:none;background:#fff;
}
.logo-mark-gallery .logo-mark-stage>.cycleworks-logo{display:contents}
.logo-mark-gallery .logo-mark-stage img{
  display:block;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(86%,var(--logo-max-width,520px))!important;height:80%!important;
  max-width:none;max-height:none;min-height:0;object-fit:contain;object-position:center;
}
.logo-mark-gallery [data-logo="soul-food"]{--logo-max-width:322px}
.logo-mark-gallery [data-logo="lucasbright"]{--logo-max-width:340px}
.logo-mark-gallery [data-logo="the-man-who-mows"]{--logo-max-width:360px}
.logo-mark-gallery [data-logo="sims-audio"] .logo-mark-stage{background:#07121d}
.logo-mark-gallery [data-logo="cycleworks"] .logo-mark-stage{background:#000}
.logo-mark-gallery>figure:not(.logo-showcase-wide)>figcaption{flex:1}
/* Multi-card service examples share a landscape stage. Single portrait examples
   (including the original Ruffneck poster) deliberately keep natural height. */
.service-example-grid:not(.service-example-grid-1){align-items:stretch}
.service-example-grid:not(.service-example-grid-1)>figure{display:flex;flex-direction:column;min-width:0}
.service-example-grid:not(.service-example-grid-1)>figure>a{display:block;aspect-ratio:8/5;min-width:0}
.service-example-grid:not(.service-example-grid-1)>figure>a>img,
.service-example-grid:not(.service-example-grid-1)>figure>img{
  width:100%;height:auto;aspect-ratio:8/5;object-fit:contain;object-position:center;
}
.service-example-grid:not(.service-example-grid-1)>figure>figcaption{flex:1}
@media(max-width:650px){.logo-showcase.logo-mark-gallery{grid-template-columns:minmax(0,1fr)}}
