/* Shared image hierarchy: full products, aligned galleries, responsive heights. */
main figure { min-width: 0; }
main img { max-width: 100%; }

.page-image.product-photo,
.page-image.product-photo.air-hero,
.page-image.product-photo:has(img[src*="smooth"]) {
  width: min(960px, calc(100% - 112px));
  max-width: none;
  height: auto;
  padding: 0;
  background: transparent;
  margin-inline: auto;
}
.page-image.product-photo img,
.page-image.product-photo.air-hero img,
.page-image.product-photo:has(img[src*="smooth"]) img {
  display: block;
  width: 100%;
  height: clamp(340px, 42vw, 560px);
  max-height: none;
  padding: 0;
  object-fit: contain;
  background: transparent;
  mix-blend-mode: normal;
}
.page-image.product-photo figcaption {
  position: static;
  width: 100%;
  max-width: none;
  padding: 14px 0 0;
  background: transparent;
  border: 0;
  color: var(--muted);
}
.page-image.photo img {
  height: clamp(340px, 43vw, 600px);
  object-fit: cover;
}
.product-grid .product-image {
  height: auto;
  aspect-ratio: 4 / 3;
  padding: 0;
}
.product-grid .product-image img {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  object-fit: contain;
}
.product-detail-split .product-detail-figure img,
.product-detail-split .product-detail-figure.pump-figure img,
.product-detail-split .product-detail-figure.sanitizer-figure img,
.product-detail-split .pump-figure img[src*="comfort-handmilchpumpe-produktansicht"] {
  width: 100%;
  height: clamp(320px, 32vw, 440px);
  max-height: none;
  object-fit: contain;
}
.product-gallery { align-items: start; }
.product-gallery .product-detail-figure img,
.product-gallery .product-detail-figure.pump-figure img,
.product-gallery .product-detail-figure.sanitizer-figure img {
  width: 100%;
  height: 300px;
  max-height: none;
  object-fit: contain;
}
.product-gallery .product-detail-figure figcaption {
  min-height: 64px;
  padding-top: 14px;
}
.photo-gallery img {
  width: 100%;
  height: clamp(300px, 30vw, 420px);
  object-fit: contain;
}
.robot-photo-grid .product-detail-figure img {
  height: 400px;
  object-fit: contain;
}
.robot-photo-grid .product-detail-figure:nth-child(n+4) img {
  height: 320px;
  object-fit: contain;
}
.image-story > img,
.image-story .concept-figure.story-image img,
.image-story .future-preview img,
.medical-intro .concept-figure.medical-image img {
  width: 100%;
  height: clamp(320px, 32vw, 460px);
  aspect-ratio: auto;
  object-fit: contain;
}
.visual-section .concept-figure img {
  height: auto;
  max-height: 640px;
  object-fit: contain;
}
.future-figure > img {
  width: 100%;
  height: clamp(360px, 48vw, 680px);
  object-fit: contain;
}
.about-profile-photo img {
  width: 100%;
  max-height: 480px;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.document-card .product-detail-figure img {
  width: 100%;
  height: 340px;
  object-fit: contain;
}

@media (max-width: 1100px) {
  .page-image.product-photo,
  .page-image.product-photo.air-hero,
  .page-image.product-photo:has(img[src*="smooth"]) {
    width: min(900px, calc(100% - 64px));
  }
  .product-gallery .product-detail-figure img,
  .product-gallery .product-detail-figure.pump-figure img,
  .product-gallery .product-detail-figure.sanitizer-figure img {
    height: 260px;
  }
}
@media (max-width: 760px) {
  .page-image.product-photo,
  .page-image.product-photo.air-hero,
  .page-image.product-photo:has(img[src*="smooth"]) {
    width: calc(100% - 40px);
  }
  .page-image.product-photo img,
  .page-image.product-photo.air-hero img,
  .page-image.product-photo:has(img[src*="smooth"]) img,
  .page-image.photo img {
    height: clamp(240px, 75vw, 420px);
  }
  .product-detail-split .product-detail-figure img,
  .product-detail-split .product-detail-figure.pump-figure img,
  .product-detail-split .product-detail-figure.sanitizer-figure img,
  .product-detail-split .pump-figure img[src*="comfort-handmilchpumpe-produktansicht"],
  .product-gallery .product-detail-figure img,
  .product-gallery .product-detail-figure.pump-figure img,
  .product-gallery .product-detail-figure.sanitizer-figure img,
  .robot-photo-grid .product-detail-figure img,
  .robot-photo-grid .product-detail-figure:nth-child(n+4) img,
  .photo-gallery img,
  .image-story > img,
  .image-story .concept-figure.story-image img,
  .image-story .future-preview img,
  .medical-intro .concept-figure.medical-image img {
    height: clamp(240px, 78vw, 400px);
    max-height: none;
  }
  .product-gallery .product-detail-figure figcaption { min-height: 0; }
  .future-figure > img { height: auto; aspect-ratio: 1600 / 957; }
  .document-card .product-detail-figure img { height: 300px; }
}

/* A single archive photograph retains an intentional, centred gallery width. */
.product-gallery:has(> figure:only-child){grid-template-columns:1fr;max-width:860px;margin-inline:auto}
.product-gallery:has(> figure:only-child) .product-detail-figure img{height:clamp(300px,32vw,440px);object-fit:contain}
@media(max-width:600px){.product-gallery:has(> figure:only-child) .product-detail-figure img{height:clamp(240px,78vw,400px)}}
