/* Presentation only: preserve the existing product, gallery and cart nodes. */
.retail-page .shop-product-grid {
  align-items: stretch;
}

.retail-page .shop-product {
  display: flex;
  flex-direction: column;
}

.retail-page .shop-product-top {
  align-items: flex-start;
}

.retail-page .shop-product-top > div {
  min-width: 0;
}

.retail-page .shop-product h3 {
  overflow-wrap: anywhere;
}

.retail-page .shop-product-actions {
  margin-top: auto;
}

.retail-page .shop-product > details {
  margin-bottom: 18px;
}

/* Share each row's header, gallery, details and purchase baselines. Older
   browsers retain the equal-height flex layout and bottom-aligned actions. */
@supports (grid-template-rows: subgrid) {
  .retail-page .shop-product {
    display: grid;
    grid-row: span 5;
    grid-template-rows: subgrid;
    row-gap: 0;
  }

  .retail-page .shop-product > .shop-product-top { grid-row: 1; }
  .retail-page .shop-product > .shop-product-thumbnails { grid-row: 2; }
  .retail-page .shop-product > details { grid-row: 3; margin-bottom: 0; }
  .retail-page .shop-product > .shop-product-actions {
    grid-row: 4;
    align-self: start;
    margin-top: 18px;
  }
  .retail-page .shop-product > .shop-product-message { grid-row: 5; }
}
