/* Client-approved media presentation. */

/* Keep approved service artwork in full color and at its native wide ratio. */
.sam-service-card-visual.is-primary-service{
  grid-template-rows:auto 1fr;
}
.sam-service-card-visual.is-primary-service .sam-service-media{
  aspect-ratio:1672/941;
  background:#070b16;
}
.sam-service-card-visual.is-primary-service .sam-service-media:after{
  background:linear-gradient(180deg,transparent 62%,rgba(6,10,20,.28));
}
.sam-service-card-visual.is-primary-service .sam-service-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:none;
}
.sam-service-card-visual.is-primary-service:hover .sam-service-media img{
  filter:none;
  transform:scale(1.02);
}

/* The Services page shows the approved banner before each product summary. */
.sam-services-page .sam-p12-card.has-approved-media{
  padding-top:0;
}
.sam-services-page .sam-p12-card-media{
  display:block;
  aspect-ratio:1672/941;
  margin:0 -28px 24px;
  overflow:hidden;
  background:#070b16;
  border-bottom:1px solid rgba(18,19,24,.08);
}
.sam-services-page .sam-p12-card-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  filter:none;
  transition:transform .5s ease;
}
.sam-services-page .sam-p12-card:hover .sam-p12-card-media img{
  transform:scale(1.015);
}

/* Service archive keeps the supplied banners untouched instead of greyscaling. */
.sam-service-archive-card.is-primary-service>img{
  filter:none;
  object-position:center;
}

/* The replacement homepage showcase artwork already contains deliberate
   negative space; preserve the composition instead of forcing a portrait crop. */
body .sam-experience-card .sam-experience-fallback>img{
  object-position:center center;
  filter:none;
}

@media(max-width:700px){
  .sam-services-page .sam-p12-card-media{
    margin:0 -23px 21px;
  }
  body .sam-experience-card .sam-experience-fallback>img{
    object-position:36% center;
  }
}
