/* ----------------
SHOP
---------------- */
.home-shop {
  grid-template-columns: 3fr 7fr;
}

.shop-featured-image {
  aspect-ratio: 1 / 1;
  position: relative;
}

.shop-featured-image img,
.shop-featured-image picture,
.shop-featured-image video {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* ----------------
PRODUCT
---------------- */
/* When label and price don't fit side by side, the price drops below, still right-aligned */
.order-option .flex-space-between {
  flex-wrap: wrap;
  column-gap: 20px;
}

.order-option .flex-space-between .nowrap {
  white-space: normal;
  overflow-wrap: anywhere;
}

.order-option .align-right {
  margin-left: auto;
  white-space: nowrap;
}

#product {
  grid-template-columns: 3fr 2fr;
}
