/* Loading and ready states share the same boxes. No global height lock. */
.group-page.is-category-page .category-link-card {
  box-sizing: border-box;
  height: 252px;
  min-height: 252px;
  grid-template-rows: 12px 112px minmax(0, 1fr);
}
.group-page.is-category-page .category-link-card strong {
  max-height: 100%;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}
.is-category-page .category-skeleton-card.category-link-card {
  box-sizing: border-box;
  grid-template-rows: 12px 112px minmax(0, 1fr);
  animation: none;
}
.category-skeleton-card .category-skeleton-card__number { height: 10px; }
.is-category-page .category-skeleton-card__image {
  grid-row: 2;
  width: 78%;
  max-height: 100%;
  height: 112px;
  align-self: center;
}
.is-category-page .group-hero h1:has(.category-skeleton-line) {
  line-height: 1.2;
}
.is-category-page .group-hero h1 .category-skeleton-line--hero {
  height: 1em;
}
.is-category-page .group-hero h1 .category-skeleton-line--hero-short {
  display: none;
}
/* This control stays hidden in the ready view too; do not reserve a phantom row. */
.group-data-loading.is-category-page .category-view-switch[hidden] {
  display: none;
}
.group-data-loading.is-category-page .group-main {
  min-height: 0;
}
.is-product-group-page .series-mini-card {
  box-sizing: border-box;
  height: 296px;
  min-height: 296px;
  grid-template-rows: 12px 112px minmax(0, 1fr);
}
.is-product-group-page .series-mini-card strong {
  align-self: start;
  max-height: 100%;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6;
}
.is-product-group-page .group-skeleton-card__image {
  display: block;
  grid-row: 2;
  width: 100%;
  height: 112px;
  border-radius: 14px;
  background: #eaf2f7;
}
.is-product-group-page .group-skeleton-card__title {
  grid-row: 3;
  width: 90%;
  height: 4.7em;
  border-radius: 8px;
  background: #eaf2f7;
}
.product-is-loading .product-code--hero {
  min-width: 0;
}
.product-page .product-skeleton--price {
  max-width: 100%;
  height: 1em;
  vertical-align: baseline;
}
.product-page .product-skeleton--net-price {
  height: 1em;
  vertical-align: baseline;
}
.product-page .product-skeleton--title {
  max-width: 100%;
  height: 1em;
  vertical-align: baseline;
}
/* Do not let a late image change intrinsic track sizing. */
.home-page .home-article-card__image,
.home-page .home-category-card__image {
  min-height: 0;
  overflow: hidden;
}
.home-page .home-article-card {
  height: 224px;
}
.home-page .home-latest-articles__head {
  min-height: 45px;
}
.home-page .home-latest-categories__head {
  min-height: 53px;
}
.home-page .home-loading-card {
  pointer-events: none;
}
.home-page .home-loading-card::after {
  content: '';
  display: block;
  margin: 16px;
  height: 42px;
  border-radius: 8px;
  background: #eaf2f7;
}
@media (max-width: 820px) {
  .home-page .home-latest-articles__head,
  .home-page .home-latest-categories__head { min-height: 41px; }
  .group-page.is-category-page.category-view-grid .category-link-card {
    height: 208px;
    min-height: 208px;
    grid-template-rows: 10px 92px minmax(0, 1fr);
  }
  .is-category-page.category-view-grid .category-skeleton-card__image { height: 96px; }
}
@media (prefers-reduced-motion: reduce) {
  .group-skeleton-card::after,
  .group-skeleton-panel::after,
  .category-skeleton-card::after,
  .category-skeleton-line::after,
  .product-skeleton::after,
  .product-gallery-skeleton span::after { animation: none; }
}
