/* Product details: prevent the image column from vertically centring beside long design lists. */
#product-detail-content .detail-grid {
  align-items: start;
}
#product-detail-content .detail-media {
  align-self: start;
  position: sticky;
  top: 10px;
  min-width: 0;
}
#product-detail-content .detail-visual {
  width: 100%;
  max-height: none;
  aspect-ratio: 1;
  font-size: 5rem;
}
#product-detail-content .detail-visual img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#product-detail-content .detail-current-photo {
  margin: 10px 2px 4px;
  color: #67548e;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
  text-align: center;
}
#product-detail-content .multi-choice-label {
  padding: 6px;
  border-radius: 10px;
}
#product-detail-content .multi-choice-label:is(:hover,:focus-visible),
#product-detail-content .multi-choice-label.selected {
  background: #ede7fb;
  outline-offset: 2px;
}
#product-detail-content .multi-choice.preview-selected {
  border: 2px solid #8465b6;
  background: #f8f5ff;
}
#product-detail-content .multi-choice-label.selected strong {
  color: #62448f;
}
@media(max-width:700px) {
  #product-detail-content .detail-media {
    position: static;
    width: 100%;
    scroll-margin-top: 16px;
  }
  #product-detail-content .detail-visual {
    width: min(100%, 290px);
    max-height: none;
    margin-inline: auto;
  }
  #product-detail-content .detail-thumbnails {
    justify-content: center;
  }
}

#product-detail-content .detail-price-note {
  margin: -8px 0 10px;
  color: #6b5c89;
  font-size: 12px;
  font-weight: 700;
}
#product-detail-content .detail-price-preview {
  margin: 0 0 14px;
  padding: 10px 12px;
  border: 1px solid #d9ccef;
  border-radius: 12px;
  background: #f8f5ff;
  color: #5c5073;
  font-size: 12px;
  line-height: 1.55;
}
#product-detail-content .detail-price-preview strong {
  color: #473960;
}
#product-detail-content .multi-choice-label img,
#product-detail-content .detail-thumbnails button img,
#product-detail-content .detail-visual img {
  object-fit: contain;
  background: #fff;
}
#product-detail-content .multi-choice-label img,
#product-detail-content .detail-thumbnails button img {
  padding: 2px;
}
.product-price-note {
  margin-top: 4px;
  color: #6b5c89;
  font-size: 11px;
  font-weight: 700;
}
