.product-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  background: #e7edce;
  padding: clamp(12px, 2vw, 24px);
  border-radius: 28px;
  overflow: hidden;
  transform: translateY(-18px);
}

#substrate-panel .product-gallery { transform: translateY(-42px); }

.product-gallery.orange { background: #f4dfc2; }
.product-gallery figure { margin: 0; position: relative; overflow: hidden; border-radius: 14px; background: #dfe7c2; }
.product-panel { grid-template-columns: minmax(480px, 1.2fr) .8fr; }
.product-gallery img { height: auto; aspect-ratio: 2 / 3; object-fit: cover; }
.product-gallery figcaption { position: absolute; left: 10px; bottom: 10px; background: rgba(255,250,240,.92); padding: 6px 10px; border-radius: 99px; font-size: .7rem; font-weight: 700; }
.orange-text { color: #b95e18 !important; }
.orange-tags span { background: #f4dfc2; }

.bulk-format {
  grid-column: 1 / -1;
  margin-top: 90px;
  background: var(--deep);
  color: white;
  border-radius: 30px;
  padding: clamp(24px, 5vw, 65px);
  display: grid;
  grid-template-columns: .65fr 1.35fr;
  gap: clamp(30px, 6vw, 80px);
  align-items: center;
}

.bulk-copy h3 { font-family: "Fraunces", serif; font-size: clamp(2.6rem, 5vw, 5rem); line-height: 1.02; color: var(--cream); margin: 0 0 24px; }
.bulk-copy > p:not(.eyebrow) { color: #c7d4cb; font-size: 1.05rem; }
.dark-tags span { background: rgba(255,255,255,.1); color: var(--cream); }
.bulk-format figure { margin: 0; }
.bulk-format img { border-radius: 18px; }
.bulk-format figcaption { color: #9fb2a5; font-size: .75rem; margin-top: 10px; }

@media (max-width: 900px) {
  .product-panel { grid-template-columns: 1fr; }
  .product-gallery { transform: translateY(-10px); }
  #substrate-panel .product-gallery { transform: translateY(-22px); }
  .bulk-format { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  .product-gallery { grid-template-columns: 1fr; }
  .product-gallery img { height: auto; aspect-ratio: auto; }
}
