/* Gantsev v78 — clean service icons, equal media cards, no grey photo fields */

/* Icons are rendered as real images by service-icons-v78.js. */
.service-story__icon,
.service-story__benefit-card .service-story__icon,
.service-story__scope-card .service-story__icon {
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:54px!important;
  height:54px!important;
  min-width:54px!important;
  margin:0 0 22px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  background-image:none!important;
  box-shadow:none!important;
  filter:none!important;
  overflow:visible!important;
}
.service-story__icon::before,
.service-story__icon::after { content:none!important; display:none!important; }
.service-story__icon > svg { display:none!important; }
.service-story__icon > img.service-card-icon-v78 {
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.service-story__benefit-card .service-story__icon > img.service-card-icon-v78 {
  filter:drop-shadow(0 5px 10px rgba(104,68,18,.08))!important;
}
.service-story__scope-card .service-story__icon > img.service-card-icon-v78 {
  filter:drop-shadow(0 5px 12px rgba(0,0,0,.2))!important;
}

/* Remove oversized blocks and keep all cards compact and aligned. */
.service-story__benefit-card,
.service-story__scope-card {
  min-height:0!important;
  padding:28px 28px 26px!important;
}
.service-story__benefit-card h3,
.service-story__scope-card h3 {
  margin:0 0 10px!important;
  font-size:clamp(17px,1.2vw,21px)!important;
  line-height:1.12!important;
}
.service-story__benefit-card p,
.service-story__scope-card p {
  margin:0!important;
  font-size:15px!important;
  line-height:1.5!important;
}

/* Equal gallery cards. No first-card enlargement and no grey/cream plates. */
.service-story__album-grid,
.service-story__results-grid,
.service-story__result-grid {
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch!important;
  gap:18px!important;
}
.service-story__album-grid > *,
.service-story__results-grid > *,
.service-story__result-grid > *,
.service-story__album-card,
.service-story__result-card,
.service-story__album-card:first-child,
.service-story__result-card:first-child,
.service-story__album-card:nth-child(n),
.service-story__result-card:nth-child(n) {
  grid-column:auto!important;
  grid-row:auto!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  aspect-ratio:4/3!important;
  margin:0!important;
  padding:0!important;
  border:1px solid rgba(183,134,53,.42)!important;
  border-radius:0!important;
  background:transparent!important;
  background-color:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.service-story__album-card::before,
.service-story__album-card::after,
.service-story__result-card::before,
.service-story__result-card::after {
  content:none!important;
  display:none!important;
}
.service-story__album-card img,
.service-story__result-card img,
.service-story__album-card:first-child img,
.service-story__result-card:first-child img {
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
  filter:none!important;
  transform:none!important;
}
.service-story__album-card:hover img,
.service-story__result-card:hover img { transform:none!important; filter:none!important; }

/* Replace the heavy full-width black gradient with small readable badges. */
.service-story__album-card span,
.service-story__result-card span {
  position:absolute!important;
  left:12px!important;
  right:auto!important;
  bottom:12px!important;
  width:auto!important;
  min-width:36px!important;
  padding:7px 10px!important;
  border:1px solid rgba(210,169,95,.55)!important;
  border-radius:7px!important;
  background:rgba(17,13,9,.68)!important;
  color:#f5dfb1!important;
  font-size:15px!important;
  line-height:1!important;
  backdrop-filter:blur(8px)!important;
  box-shadow:none!important;
}
.service-story__album-card .service-story__open-icon,
.service-story__result-card .service-story__open-icon,
.service-story__album-card [aria-hidden="true"],
.service-story__result-card [aria-hidden="true"] {
  right:12px!important;
  bottom:12px!important;
}

/* Hero media: use the site background around contain-fitted images, never grey. */
.service-story__hero-media,
.service-story__hero-slider,
.service-story__hero-slide,
.service-story__hero-slide.is-active {
  background:transparent!important;
  background-color:transparent!important;
}
.service-story__hero-slide {
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
}
.service-story__hero-slide img {
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  background:transparent!important;
  box-shadow:none!important;
}

@media (max-width:1100px) {
  .service-story__album-grid,
  .service-story__results-grid,
  .service-story__result-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
}
@media (max-width:760px) {
  .service-story__benefit-card,
  .service-story__scope-card { padding:22px 20px!important; }
  .service-story__icon,
  .service-story__benefit-card .service-story__icon,
  .service-story__scope-card .service-story__icon {
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    margin-bottom:16px!important;
  }
  .service-story__album-grid,
  .service-story__results-grid,
  .service-story__result-grid {
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
  .service-story__album-card,
  .service-story__result-card,
  .service-story__album-card:first-child,
  .service-story__result-card:first-child { aspect-ratio:4/3!important; }
}
