/* ===========================================================
   PRODUCT DETAIL — stacked gallery + sticky meta panel
=========================================================== */

.pdp-crumb-row{padding-block:var(--sp-5) var(--sp-3);}

.pdp-layout{padding-bottom:var(--sp-6);}
.pdp-grid{display:grid;grid-template-columns:1fr 380px;gap:var(--sp-9);align-items:start;}

.pdp-gallery{display:flex;flex-direction:column;gap:var(--sp-3);}
.pdp-gallery-item{width:100%;overflow:hidden;background:var(--c-sand);}
.pdp-gallery-item img{width:100%;height:auto;display:block;}

.pdp-meta{position:sticky;top:6.5rem;padding-top:var(--sp-2);}
.pdp-meta h1{font-size:var(--fs-3xl);margin-top:var(--sp-3);font-weight:300;}
.pdp-price{margin-top:var(--sp-4);font-size:var(--fs-xl);font-weight:var(--fw-medium);letter-spacing:.01em;}

.pdp-specs{display:flex;flex-direction:column;gap:.85rem;margin-top:var(--sp-6);border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);padding-block:var(--sp-5);}
.pdp-specs > div{display:flex;justify-content:space-between;gap:1rem;font-size:var(--fs-sm);}
.pdp-specs dt{color:var(--text-muted);}
.pdp-specs dd{margin:0;font-weight:var(--fw-medium);text-align:right;}

.qty-stepper{display:flex;align-items:center;border:1px solid var(--c-ink);width:fit-content;margin-top:var(--sp-6);}
.qty-stepper button{width:42px;height:42px;font-size:var(--fs-md);color:var(--c-ink);background:none;border:none;}
.qty-stepper button:hover{background:var(--c-sand);}
.qty-stepper input{width:48px;height:42px;text-align:center;border:none;border-left:1px solid var(--border-soft);border-right:1px solid var(--border-soft);background:transparent;font-size:var(--fs-sm);}

.pdp-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:var(--sp-5);}

.pdp-accordion{margin-top:var(--sp-7);border-top:1px solid var(--border-soft);}
.pdp-accordion .accordion-item{background:transparent;box-shadow:none;border-bottom:1px solid var(--border-soft);}
.pdp-accordion .accordion-trigger{padding:1rem 0;font-family:var(--font-body);font-size:var(--fs-sm);font-weight:var(--fw-medium);letter-spacing:.02em;text-transform:uppercase;}
.pdp-accordion .accordion-trigger svg{width:15px;height:15px;}

/* prev/next nav row */
.pdp-nav-row{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-5);border-top:1px solid var(--border-soft);margin-top:var(--sp-8);padding-top:var(--sp-6);}
.pdp-nav-link{display:flex;align-items:center;gap:.75rem;font-size:var(--fs-sm);color:var(--text-primary);transition:opacity var(--dur-fast);}
.pdp-nav-link:hover{opacity:.6;}
.pdp-nav-link svg{width:18px;height:18px;stroke-width:1.4;flex:none;}
.pdp-nav-link span{display:flex;flex-direction:column;gap:.15rem;}
.pdp-nav-next{text-align:right;}
.pdp-nav-next span{align-items:flex-end;}
.pdp-nav-link em{font-style:normal;font-size:var(--fs-2xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted);}

/* related products */
.related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-5);margin-top:var(--sp-7);}

@media (max-width:1080px){
  .pdp-grid{grid-template-columns:1fr;}
  .pdp-meta{position:static;}
}
@media (max-width:820px){
  .related-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:560px){
  .pdp-nav-row{flex-direction:column;align-items:flex-start;gap:var(--sp-4);}
  .pdp-nav-next{text-align:left;}
  .pdp-nav-next span{align-items:flex-start;}
  .related-grid{grid-template-columns:1fr;}
}
