/* =========================================================================
   Shop — products grouped by category (woocommerce/archive-product.php).
   Loaded on top of page-dosing.css; reuses its tokens, pills and rhythm.
   ========================================================================= */

/* ---------- JUMP ROW ---------- */
.shop-jump{padding:24px 24px 16px;border-top:1px solid var(--mid);position:sticky;top:0;z-index:15;background:rgba(42,26,20,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.shop-jump .inner{max-width:var(--max);margin:0 auto;display:flex;align-items:center;gap:20px}
.shop-jump .eyebrow{flex:none}
.shop-jump .chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:8px}
.shop-jump .chips::-webkit-scrollbar{display:none}
.shop-jump .chips a{flex:none;display:inline-flex;align-items:center;gap:9px;padding:8px 14px;border-radius:999px;border:1px solid var(--mid);font-size:10.5px;letter-spacing:0.16em;text-transform:uppercase;color:var(--on-dark-muted);transition:background-color .25s ease,color .25s ease,border-color .25s ease}
.shop-jump .chips a:hover{background:rgba(241,232,220,0.06);color:var(--on-dark);border-color:var(--on-dark-soft)}
.shop-jump .chips .dot{width:8px;height:8px;border-radius:999px;box-shadow:0 0 0 1px rgba(241,232,220,.22)}
.shop-jump .chips .n{color:var(--on-dark-soft);letter-spacing:0.08em}
@media (max-width:620px){ .shop-jump .inner{flex-direction:column;align-items:flex-start;gap:10px} .shop-jump .chips{width:100%} }

html{scroll-behavior:smooth}
.shop-cat{scroll-margin-top:72px}

/* ---------- CATEGORY SECTION ---------- */
.shop-cat{padding:72px 24px 24px}
.shop-cat + .shop-cat{border-top:1px solid var(--mid);margin-top:48px}
.shop-cat .head{max-width:var(--max);margin:0 auto 32px;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.shop-cat .title{display:flex;align-items:center;gap:18px}
.shop-cat .stripe{width:48px;height:48px;border-radius:999px;flex:none}
.shop-cat h2{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:-0.025em;font-size:clamp(34px,4.6vw,52px);line-height:1;color:var(--on-dark)}
.shop-cat .sub{font-family:var(--serif);font-style:italic;font-size:17px;color:var(--on-dark-muted);margin-top:6px}
.shop-cat .side{display:flex;align-items:center;gap:18px}
.shop-cat .count{font-size:10.5px;letter-spacing:0.16em;text-transform:uppercase;color:var(--on-dark-soft)}

/* ---------- PRODUCT GRID ---------- */
.p-grid{list-style:none;max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.p-card{display:flex;flex-direction:column;border:1px solid var(--mid);border-radius:20px;padding:12px;background:rgba(62,42,34,0.22);transition:transform .35s ease,background-color .25s ease,border-color .25s ease}
.p-card:hover{transform:translateY(-3px);background:rgba(62,42,34,0.36);border-color:var(--on-dark-soft)}
.p-link{display:flex;flex-direction:column;flex:1}
.p-img{position:relative;display:block;aspect-ratio:1/1;border-radius:14px;overflow:hidden;background:var(--oat)}
.p-img[data-empty]{background:radial-gradient(120% 100% at 50% 40%, #6A4A38 0%, #3E2A22 55%, #2A1A14 100%)}
.p-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.p-card:hover .p-img img{transform:scale(1.04)}
.p-tag{position:absolute;left:10px;top:10px;display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border-radius:999px;background:rgba(28,17,12,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:9.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--on-dark)}
.p-tag .dot{width:7px;height:7px;border-radius:999px;box-shadow:0 0 0 1px rgba(241,232,220,.3)}
.p-body{display:flex;flex-direction:column;gap:6px;padding:16px 6px 4px}
.p-name{font-family:var(--display);text-transform:uppercase;font-size:18px;letter-spacing:-0.005em;line-height:1.1;color:var(--on-dark)}
.p-desc{font-family:var(--serif);font-style:italic;font-size:14px;line-height:1.3;color:var(--on-dark-muted)}
.p-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 6px 4px;margin-top:10px;border-top:1px solid var(--mid)}
.p-price{font-size:14px;letter-spacing:0.04em;color:var(--on-dark)}
.p-price del{color:var(--on-dark-soft);margin-right:6px;font-size:12px}
.p-price ins{text-decoration:none}
.p-foot .pill{padding:8px 14px;font-size:10px}
@media (max-width:1024px){ .p-grid{grid-template-columns:repeat(3,1fr)} }
@media (max-width:760px){ .p-grid{grid-template-columns:repeat(2,1fr);gap:10px} .p-card{padding:8px;border-radius:16px} .p-name{font-size:15px} .p-foot{flex-direction:column;align-items:flex-start} .p-foot .pill{width:100%;justify-content:center} }

.shop-back{padding:56px 24px 24px;text-align:center}
.shop-cat:has(+ :not(.shop-cat)){padding-bottom:96px}
