html body .catalog-flat-list > .catalog-product-row { border:0; background:transparent; margin:0 0 24px; padding:0; }
html body .catalog-product-row .crystallizer-family-product { width:100%; margin:0; border:1px solid #e6ded6; background:#fff; }
html body .catalog-product-row .crystallizer-family-product > a { display:grid; grid-template-columns:minmax(240px,35%) minmax(0,1fr); padding:0; min-height:300px; text-decoration:none; }
html body .catalog-product-row .crystallizer-family-product__image { display:flex; width:100%; height:100%; min-height:300px; max-height:none; aspect-ratio:auto; align-items:center; justify-content:center; overflow:hidden; background:#faf8f5; }
html body .catalog-product-row .crystallizer-family-product__image img { display:block; width:100%; height:100%; object-fit:contain; padding:0; }
html body .catalog-product-row .crystallizer-family-product__body { display:flex; flex-direction:column; justify-content:center; padding:32px 36px; gap:14px; min-width:0; }
html body .catalog-product-row .crystallizer-family-product__body h3 { font-size:clamp(24px,2.4vw,36px); line-height:1.2; margin:0; }
html body .catalog-product-row .crystallizer-family-product__body p { font-size:15px; line-height:1.7; margin:0; text-transform:none; }
html body .catalog-product-row .crystallizer-family-product__body .eyebrow { font-size:12px; color:#b94708; }
@media(max-width:640px){html body .catalog-product-row .crystallizer-family-product > a{grid-template-columns:1fr;}html body .catalog-product-row .crystallizer-family-product__image{height:250px;min-height:250px;}html body .catalog-product-row .crystallizer-family-product__body{padding:24px;}}

/* Uniform catalogue cards: image intrinsic dimensions must not size the row. */
html body .catalog-product-row .crystallizer-family-product > a {
  height: 380px; min-height: 0; grid-template-rows: minmax(0, 1fr);
}
html body .catalog-product-row .crystallizer-family-product__image {
  position: relative; min-width: 0; min-height: 0; height: 100%;
}
html body .catalog-product-row .crystallizer-family-product__image img {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center;
}
html body .catalog-product-row .crystallizer-family-product__body .eyebrow,
html body .catalog-product-row .crystallizer-family-product__cta {
  font-family: var(--font-body, "DM Sans", sans-serif); font-size: 16px;
  font-weight: 600; line-height: 1.5; letter-spacing: 0; text-transform: none;
}
@media (min-width:641px) and (max-width:991px) {
  html body .catalog-product-row .crystallizer-family-product > a { height: 440px; }
  html body .catalog-product-row .crystallizer-family-product__body { padding: 24px; }
}
@media (max-width:640px) {
  html body .catalog-product-row .crystallizer-family-product > a {
    height: 660px; grid-template-rows: 250px minmax(0, 1fr);
  }
  html body .catalog-product-row .crystallizer-family-product__image { height: 250px; min-height: 0; }
  html body .catalog-product-row .crystallizer-family-product__body { padding: 24px; gap: 12px; }
  html body .catalog-product-row .crystallizer-family-product__body h3 { font-size: 24px; line-height: 1.25; }
}

/* Override the older packaging-only row layout as well. */
html body .catalog-flat-list .catalog-product-row .crystallizer-family-product .crystallizer-family-product__image img { object-fit: cover; }
@media (max-width:640px) {
  html body .catalog-flat-list .catalog-product-row .crystallizer-family-product .crystallizer-family-product__body h3 { font-size:24px; line-height:1.25; }
}

@media (max-width:360px) {
  html body .catalog-product-row .crystallizer-family-product > a { height:700px; }
}

/* Mobile rows follow their content instead of preserving a desktop card height. */
@media (max-width:767px) {
  html body .catalog-product-row .crystallizer-family-product > a {
    height:auto!important;min-height:0;grid-template-columns:minmax(0,1fr);
    grid-template-rows:220px auto;align-content:start;gap:0;
  }
  html body .catalog-product-row .crystallizer-family-product__image {height:220px;min-height:0;}
  html body .catalog-product-row .crystallizer-family-product__body {
    height:auto;min-height:0;padding:16px 18px 20px;justify-content:flex-start;gap:8px;
  }
  html body .catalog-product-row .crystallizer-family-product__body h3 {font-size:22px!important;line-height:1.3!important;}
  html body .catalog-product-row .crystallizer-family-product__body > p:not(.eyebrow) {font-size:14px;line-height:1.6;}
}
