:root{
  --pdpStroke:rgba(8,21,38,.10);
  --pdpStroke2:rgba(8,21,38,.08);
}

/* Product page (PDP) */
.pdp{padding:38px 0 72px}

.crumbs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  color:rgba(8,21,38,.58);
  font-weight:800;
  letter-spacing:-.01em;
  font-size:13px;
  margin:10px 0 18px;
}
.crumbs__a{color:rgba(8,21,38,.70)}
.crumbs__a:hover{color:rgba(37,99,235,.90)}
.crumbs__sep{opacity:.35}
.crumbs__cur{color:rgba(8,21,38,.86)}

.pdp__head{margin:8px 0 18px}
.pdp__title{margin:0;letter-spacing:-.06em;line-height:1.02;font-size:clamp(30px,3.2vw,44px)}
.pdp__sub{margin:10px 0 0;color:rgba(8,21,38,.62);line-height:1.7;max-width:78ch}

.pdp__grid{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:22px;
  align-items:start;
}
.pdp__left{min-width:0}
.pdp__right{position:sticky;top:98px}

.pdpGal{
  border:1px solid var(--pdpStroke);
  border-radius:26px;
  overflow:hidden;
  background:#fff;
}
.pdpGal__main{margin:0}
.pdpGal__img{
  width:100%;
  height:min(520px,56vh);
  object-fit:contain;
  display:block;
  background:linear-gradient(180deg,rgba(6,182,212,.06),rgba(37,99,235,.04),#fff);
  cursor:zoom-in;
}
.pdpGal__ph{height:420px;background:linear-gradient(180deg,rgba(6,182,212,.06),rgba(37,99,235,.04),#fff)}
.pdpGal__thumbs{
  display:flex;
  gap:10px;
  padding:12px;
  border-top:1px solid var(--pdpStroke2);
  overflow:auto;
  scrollbar-width:none;
}
.pdpGal__thumbs::-webkit-scrollbar{height:0;width:0}
.pdpThumb{
  border:1px solid var(--pdpStroke);
  background:#fff;
  border-radius:18px;
  padding:0;
  width:86px;
  height:68px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  cursor:pointer;
}
.pdpThumb:hover{border-color:rgba(37,99,235,.28)}
.pdpThumb__img{max-width:100%;max-height:100%;object-fit:contain;display:block}

.pdpSec{margin-top:18px}
.pdpSec__t{
  margin:0 0 10px;
  font-size:18px;
  letter-spacing:-.03em;
}

/* RTE base exists in site.css; this adds PDP frame */
.rte.rte--pdp{
  background:#fff;
  border:1px solid var(--pdpStroke);
  border-radius:22px;
}

.specs{
  margin:0;
  padding:0;
  border:1px solid var(--pdpStroke);
  border-radius:22px;
  background:#fff;
  overflow:hidden;
}
.specs__row{
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:14px;
  padding:12px 14px;
  border-top:1px solid var(--pdpStroke2);
}
.specs__row:first-child{border-top:0}
.specs__k{margin:0;font-weight:900;letter-spacing:-.02em}
.specs__v{margin:0;color:rgba(8,21,38,.70);line-height:1.5}

.pdpBuy{
  border:1px solid var(--pdpStroke);
  border-radius:26px;
  background:#fff;
  padding:16px;
}
.pdpBuy__cap{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid var(--pdpStroke);
  background:rgba(255,255,255,.92);
  font-weight:900;
  color:rgba(8,21,38,.70);
}
.pdpBuy__price{
  margin-top:14px;
  font-weight:950;
  letter-spacing:-.04em;
  font-size:28px;
  line-height:1.05;
  color:rgba(8,21,38,.92);
}
.pdpBuy__cur{font-size:14px;opacity:.75;margin-left:4px}
.pdpBuy__muted{font-size:18px;color:rgba(8,21,38,.60)}
.pdpBuy__row{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.pdpBuy__meta{font-weight:900;letter-spacing:.08em;font-size:11px;color:rgba(8,21,38,.45)}
.pdpBuy__actions{margin-top:14px;display:grid;gap:10px}
.pdpBuy__hint{margin-top:12px;color:rgba(8,21,38,.60);line-height:1.6;font-size:13px}

.chip{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:9px 12px;
  border-radius:999px;
  border:1px solid var(--pdpStroke);
  background:#fff;
  font-weight:900;
  color:rgba(8,21,38,.76);
  font-size:13px;
}
.chip .dot{width:8px;height:8px;border-radius:999px;background:rgba(16,185,129,.95)}
.chip--wait .dot{background:rgba(37,99,235,.90)}

@media (max-width:920px){
  .pdp{padding-top:22px}
  .pdp__grid{grid-template-columns:1fr}
  .pdp__right{position:static;top:auto}
  .pdpGal__img{height:min(420px,46vh)}
}
@media (max-width:520px){
  .pdpBuy__price{font-size:24px}
  .specs__row{grid-template-columns:1fr;gap:6px}
}

/* Cart page */
.cart{padding:32px 0 72px}
.cart__title{margin:0;letter-spacing:-.06em;line-height:1.02;font-size:clamp(30px,3.2vw,44px)}
.cart__sub{margin:10px 0 0;color:rgba(8,21,38,.62);line-height:1.7;max-width:78ch}
.cartGrid{
  display:grid;
  grid-template-columns:1fr .52fr;
  gap:18px;
  margin-top:18px;
  align-items:start;
}
.cartList{
  border:1px solid var(--pdpStroke);
  border-radius:26px;
  background:#fff;
  overflow:hidden;
}
.cartRow{
  display:grid;
  grid-template-columns:92px 1fr 120px 140px 84px;
  gap:14px;
  align-items:center;
  padding:12px 14px;
  border-top:1px solid var(--pdpStroke2);
}
.cartRow:first-child{border-top:0}
.cartRow__img{
  width:92px;height:72px;border-radius:18px;
  border:1px solid var(--pdpStroke);
  overflow:hidden;display:grid;place-items:center;
  background:linear-gradient(180deg,rgba(6,182,212,.06),rgba(37,99,235,.04),#fff);
}
.cartRow__img img{width:100%;height:100%;object-fit:contain;display:block}
.cartRow__name{font-weight:950;letter-spacing:-.03em;line-height:1.2}
.cartRow__name:hover{color:rgba(37,99,235,.90)}
.cartRow__meta{margin-top:6px;color:rgba(8,21,38,.60);font-weight:800}
.cartRow__sum{font-weight:950;letter-spacing:-.02em;text-align:right}
.cartRow__rm{color:rgba(8,21,38,.56);font-weight:900;text-align:right}
.cartRow__rm:hover{color:rgba(37,99,235,.90)}
.qty{
  width:100%;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid var(--pdpStroke);
  background:#fff;
  font:inherit;
  font-weight:900;
}
.cartSide{position:sticky;top:98px}
.cartBox{
  border:1px solid var(--pdpStroke);
  border-radius:26px;
  background:#fff;
  padding:16px;
  display:grid;
  gap:10px;
}
.cartBox__t{font-weight:950;letter-spacing:-.03em}
.cartBox__sum{font-weight:950;font-size:28px;letter-spacing:-.04em}
.cartBox__sum span{font-size:14px;opacity:.75;margin-left:4px}
.cartEmpty{
  margin-top:18px;
  border:1px solid var(--pdpStroke);
  border-radius:26px;
  background:#fff;
  padding:18px;
}
.cartEmpty__t{font-weight:950;letter-spacing:-.03em;font-size:18px}
.cartEmpty__d{margin-top:6px;color:rgba(8,21,38,.60);line-height:1.7}
.cartEmpty__a{margin-top:14px}

@media (max-width:920px){
  .cartGrid{grid-template-columns:1fr}
  .cartSide{position:static}
  .cartRow{grid-template-columns:92px 1fr 110px;grid-auto-rows:auto}
  .cartRow__sum{display:none}
  .cartRow__rm{text-align:left}
}
@media (max-width:520px){
  .cartRow{grid-template-columns:72px 1fr}
  .cartRow__qty{grid-column:1/-1}
}
