/* Scoped layout for Reid product pages. */
.reid-product-page .hero {
  min-height: 38vh;
}

.reid-product-page .product-detail {
  max-width: 960px;
  margin: 0 auto;
  padding-top: 1.5rem;
  padding-bottom: 2rem;
}

.product-media {
  margin: 1.5rem auto 2rem;
}

.product-media .product-image-frame {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  padding: clamp(0.75rem, 2vw, 1.5rem);
  background: #fff;
  border: 1px solid #d8d8d8;
  border-radius: 12px;
}

.product-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.product-media--landscape {
  max-width: 900px;
}

.product-media--landscape .product-image-frame {
  aspect-ratio: 3 / 2;
}

.product-media--portrait {
  width: min(100%, 430px);
  margin: 0 auto;
}

.product-media--portrait .product-image-frame {
  aspect-ratio: 4 / 5;
}

.product-media figcaption {
  margin-top: 0.6rem;
  color: #4a4a4a;
  font-size: 0.92rem;
  text-align: center;
}

.product-story {
  display: grid;
  gap: 1.5rem;
  align-items: center;
  margin: 2rem 0;
}

.product-story > div > :first-child {
  margin-top: 0;
}

.store-locations {
  margin-top: 2rem;
  padding: 1rem;
  background: #fffdf7;
  border: 1px solid #d8d8d8;
  border-radius: 12px;
}

@media (min-width: 780px) {
  .product-story {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 430px);
  }
}

