/* Shared case-study editorial grid: rules span the same columns as images. */
.image-card-caption__body__caption {
  width:100%!important; box-sizing:border-box; padding-left:0!important;
  transform:none!important; margin:0!important;
}
.image-card-caption__body__caption::before {
  left:0!important; width:100%!important; box-sizing:border-box;
}
.image-card-caption__content { align-items:stretch!important; }
.image-card-caption__body--wrapper {
  height:auto!important; min-height:0!important; align-self:stretch!important;
}
.image-card-caption__image--wrapper { align-self:start!important; }
.image-card-caption, .work-full-size-image, .two-images-caption,
.full-size-image-text, .work-split-illustration { margin-top:56px!important; margin-bottom:56px!important; }

/* Intrinsic uses the existing GoPro hero frame, with its own image and copy. */
.work-detail-hero.intrinsic-hero:has(>img[src]) {
  display:block!important; height:auto!important; min-height:0!important;
  padding:0!important; overflow:hidden;
}
.work-detail-hero.intrinsic-hero:has(>img[src]) .work-detail-hero__image {
  display:block!important; position:static!important; width:100%!important;
  height:var(--work-detail-hero-height)!important; object-fit:cover!important;
}
.work-detail-hero.intrinsic-hero:has(>img[src]) .work-detail-hero__container {
  position:absolute!important; top:50%!important; bottom:auto!important;
  left:var(--grid-margin)!important; right:var(--grid-margin)!important;
  width:auto!important; padding:0!important; transform:translateY(-50%)!important;
  z-index:2; color:#fff; text-shadow:0 1px 8px rgba(0,0,0,.65);
}
.work-detail-hero.intrinsic-hero:has(>img[src])::after {
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(90deg,rgba(0,0,0,.5),transparent 80%);
}
/* Show the entire built-enclosure photo at its natural ratio, without bands. */
.image-card-caption:has(img[src="/work/intrinsic-ai/img/tradeshow.jpg"]) .image-card-caption__image--wrapper {
  aspect-ratio:auto!important; height:auto!important; background:transparent!important;
}
.image-card-caption:has(img[src="/work/intrinsic-ai/img/tradeshow.jpg"]) .image-card-caption__image {
  position:static!important; display:block; width:100%!important; height:auto!important;
  object-fit:contain!important; transform:none!important;
}

/* GoPro-style equal square columns for Fi Mini and Willow's overview. */
.industries-deliverables.case-study-square-overview .industries-deliverables__content {
  display:grid!important; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px;
  align-items:stretch!important;
}
.industries-deliverables.case-study-square-overview .industries-deliverables__content__info {
  width:100%!important; height:auto!important; min-height:0!important; aspect-ratio:1;
  box-sizing:border-box; margin:0!important; transform:none!important;
  flex-direction:column!important; justify-content:space-between!important; gap:24px!important;
}
.industries-deliverables.case-study-square-overview .industries-deliverables__content__image {
  width:100%!important; height:100%!important; aspect-ratio:1!important; min-height:0;
  object-fit:cover!important; object-position:center; transform:none!important; opacity:1!important;
}
.image-card-caption img, .image-card-caption__image--wrapper,
.industries-deliverables__content__image, .work-full-size-image img,
.two-images-caption img, .full-size-image-text img { border-radius:0!important; }
@media(max-width:768px) {
  .image-card-caption, .work-full-size-image, .two-images-caption,
  .full-size-image-text, .work-split-illustration { margin-top:32px!important; margin-bottom:32px!important; }
  .image-card-caption__body--wrapper { gap:32px!important; }
  .image-card-caption__body__caption { padding-top:20px!important; }
  .industries-deliverables.case-study-square-overview .industries-deliverables__content {
    grid-template-columns:minmax(0,1fr); gap:24px;
  }
  .industries-deliverables.case-study-square-overview .industries-deliverables__content__info {
    aspect-ratio:auto; padding:24px!important; flex-wrap:nowrap!important;
  }
  .industries-deliverables.case-study-square-overview .industries-deliverables__content__image { height:auto!important; }
}
.work-detail-hero.intrinsic-hero:has(>img[src]) .work-detail-hero__title,
.work-detail-hero.intrinsic-hero:has(>img[src]) .work-detail-hero__subtitle { color:#fff!important; }
/* Fi's supplied product asset has transparent rounded corners baked in.
   A small crop keeps the original photograph while giving its frame square edges. */
.image-card-caption__image--wrapper:has(>img[src="/work/fi-mini/img/product.webp"]) { overflow:hidden!important; }
.image-card-caption__image[src="/work/fi-mini/img/product.webp"] { transform:scale(1.08)!important; transform-origin:center; }
@media(max-width:768px) {
  /* As on GoPro, place mobile hero copy above the full-width photograph. */
  .work-detail-hero.intrinsic-hero:has(>img[src]) {
    display:flex!important; flex-direction:column!important; padding-top:104px!important; background:#fff;
  }
  .work-detail-hero.intrinsic-hero:has(>img[src]) .work-detail-hero__container {
    position:static!important; width:auto!important; padding:24px var(--grid-margin) 32px!important;
    transform:none!important; text-shadow:none;
  }
  .work-detail-hero.intrinsic-hero:has(>img[src]) .work-detail-hero__title,
  .work-detail-hero.intrinsic-hero:has(>img[src]) .work-detail-hero__subtitle { color:#282121!important; }
  .work-detail-hero.intrinsic-hero:has(>img[src])::after { display:none; }
}
@media(max-width:1024px) {
  .image-card-caption__body { padding-top:32px!important; }
}
@media(max-width:768px) {
  .image-card-caption__body { padding-top:0!important; }
}


/* One shared grid for the edited overview panels. Image sizing cannot expand its row. */
.industries-deliverables:is(.case-study-square-overview,:has(img[src^="/work/intrinsic-ai/"]),:has(img[src^="/work/fi-ultra/"])) .industries-deliverables__content {
 display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:calc(1 / var(--grid) * var(--grid-full-base))!important;align-items:stretch!important;
}
.industries-deliverables:is(.case-study-square-overview,:has(img[src^="/work/intrinsic-ai/"]),:has(img[src^="/work/fi-ultra/"])) .industries-deliverables__content__info {
 width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:1!important;margin:0!important;box-sizing:border-box!important;transform:none!important;opacity:1!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important;gap:24px!important;
}
.industries-deliverables:is(.case-study-square-overview,:has(img[src^="/work/intrinsic-ai/"]),:has(img[src^="/work/fi-ultra/"])) .industries-deliverables__content__image {
 display:block!important;width:100%!important;height:100%!important;min-height:0!important;max-height:100%!important;aspect-ratio:1!important;object-fit:cover!important;object-position:center!important;margin:0!important;transform:none!important;opacity:1!important;border-radius:0!important;align-self:stretch!important;
}
@media(max-width:768px) {
 .industries-deliverables:is(.case-study-square-overview,:has(img[src^="/work/intrinsic-ai/"]),:has(img[src^="/work/fi-ultra/"])) .industries-deliverables__content {grid-template-columns:minmax(0,1fr)!important;gap:24px!important}
 .industries-deliverables:is(.case-study-square-overview,:has(img[src^="/work/intrinsic-ai/"]),:has(img[src^="/work/fi-ultra/"])) .industries-deliverables__content__info {aspect-ratio:auto!important;height:auto!important;padding:24px!important}
 .industries-deliverables:is(.case-study-square-overview,:has(img[src^="/work/intrinsic-ai/"]),:has(img[src^="/work/fi-ultra/"])) .industries-deliverables__content__image {height:auto!important;aspect-ratio:1!important}
}
/* Therabody image sections follow the same compact vertical rhythm. */
body:has(img[src^="/work/therabody-"]) .image-card-caption,
body:has(img[src^="/work/theraface/"]) .image-card-caption {margin-top:40px!important;margin-bottom:40px!important}
