/* ==========================================================================
   PRODUCT DETAIL PAGE — 3D stage + layout wrapper
   (The actual title/price/variations/add-to-cart form is rendered natively
   by WooCommerce via woocommerce_single_product_summary() and styled in
   assets/css/woocommerce.css — this file only handles our custom 3D viewer.)
   ========================================================================== */

.pdp-hero { padding: 150px 0 40px; }
.pdp-breadcrumb { font-family: var(--font-mono); font-size: 12px; color: var(--text-2); letter-spacing: .05em; margin-bottom: 30px; }
.pdp-breadcrumb a:hover { color: var(--gold); }

.pdp-grid { display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 70px; align-items: flex-start; }
@media (max-width: 980px) { .pdp-grid { grid-template-columns: 1fr; gap: 40px; } }

.pdp-stage {
  position: sticky; top: 110px; aspect-ratio: 1/0.95; border-radius: var(--radius-l);
  background: radial-gradient(ellipse at 50% 40%, #171a1f 0%, var(--bg-1) 72%);
  border: 1px solid var(--line); overflow: hidden;
}
@media (max-width: 980px) { .pdp-stage { position: static; } }
#pdp-canvas { width: 100%; height: 100%; }
.pdp-stage-hint {
  position: absolute; bottom: 20px; left: 50%; transform: translateX(-50%);
  font-family: var(--font-mono); font-size: 10.5px; color: var(--text-2); letter-spacing: .08em;
  display: flex; align-items: center; gap: 8px;
}
.pdp-loading {
  position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
  font-family: var(--font-mono); font-size: 11px; color: var(--text-2); letter-spacing: .1em; transition: opacity .4s ease;
}
.pdp-loading.is-hidden { opacity: 0; pointer-events: none; }
.pdp-fallback-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: none; }

.pdp-info .eyebrow { margin-bottom: 18px; display: inline-flex; }

/* Related products heading (grid itself uses WooCommerce's own .products markup) */
.related-title { margin-bottom: 40px; }
