/* ============================================================
   SHOP / COLLECTION PAGE — built on the homepage design system
   ============================================================ */
.shop-hero{position:relative;background:var(--ink);color:var(--on-dark);
  padding-top:calc(var(--header-h) + var(--bar-h) + clamp(40px,5.5vw,74px));
  padding-bottom:clamp(38px,4.6vw,62px);overflow:hidden}
.shop-crumbs{display:flex;align-items:center;gap:10px;color:var(--on-dark-faint);margin-bottom:clamp(26px,3.2vw,44px)}
.shop-crumbs a{color:var(--on-dark-mute)}
.shop-crumbs a:hover{color:var(--on-dark)}
.shop-hero__row{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s7)}
.shop-hero__head .eyebrow{margin-bottom:16px}
.shop-hero h1{max-width:16ch}
.shop-hero__lede{max-width:38ch;text-align:right;padding-bottom:6px;color:var(--on-dark-mute)}
.shop-hero__meta{display:flex;flex-wrap:wrap;gap:14px 26px;margin-top:clamp(28px,3.4vw,46px);padding-top:20px;border-top:1px solid var(--line-dark);color:var(--on-dark-mute)}
.shop-hero__meta li{position:relative}
.shop-hero__meta li+li::before{content:"";position:absolute;left:-13px;top:50%;width:3px;height:3px;background:var(--oxide);border-radius:50%;transform:translate(-50%,-50%)}
@media (max-width:820px){
  .shop-hero__row{flex-direction:column;align-items:flex-start;gap:var(--s3)}
  .shop-hero__lede{text-align:left}
  .shop-hero h1{max-width:none}
}

/* Category navigation */
.shop-nav{background:var(--paper);border-bottom:1px solid var(--line)}
.collnav{display:flex;gap:clamp(16px,2.2vw,38px);overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}
.collnav::-webkit-scrollbar{display:none}
.collnav__link{position:relative;white-space:nowrap;display:inline-flex;align-items:center;height:56px;
  font-family:var(--f-display);font-variation-settings:"wdth" 92,"wght" 650;font-size:.8125rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--on-light-mute);transition:color var(--t-fast) var(--ease)}
.collnav__link:hover{color:var(--on-light)}
.collnav__link.is-active{color:var(--on-light)}
.collnav__link.is-active::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--oxide)}

/* Toolbar (sticky) */
.shop-toolbar{position:sticky;top:calc(var(--header-h) - 1px);z-index:80;background:var(--paper);border-bottom:1px solid var(--line)}
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--s5);padding-block:13px}
.toolbar__count{color:var(--on-light-mute)}
.toolbar__count b{color:var(--on-light);font-weight:500;font-variant-numeric:tabular-nums}
.toolbar__ctrls{display:flex;align-items:center;gap:10px}
.toolbar__btn{position:relative;display:inline-flex;align-items:center;gap:9px;height:42px;padding:0 16px;border:1px solid var(--line-strong);
  font-family:var(--f-display);font-variation-settings:"wdth" 90,"wght" 650;font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;
  transition:background var(--t-fast),color var(--t-fast),border-color var(--t-fast)}
.toolbar__btn:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.toolbar__btn svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.5}
.toolbar__badge{display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;background:var(--oxide);color:var(--ink);border-radius:var(--radius-pill);font-family:var(--f-display);font-variation-settings:"wdth" 80,"wght" 700;font-size:.5625rem;line-height:1}
.toolbar__sort{position:relative;display:inline-flex;align-items:center}
.toolbar__sort select{appearance:none;height:42px;padding:0 40px 0 15px;border:1px solid var(--line-strong);background:transparent;color:var(--on-light);
  font-family:var(--f-display);font-variation-settings:"wdth" 90,"wght" 650;font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:border-color var(--t-fast)}
.toolbar__sort select:hover{border-color:var(--ink)}
.toolbar__sort select option{background:#fff;color:var(--ink);text-transform:none;letter-spacing:0}
.toolbar__sort svg{position:absolute;right:15px;width:12px;height:12px;stroke:var(--on-light-mute);fill:none;stroke-width:1.6;pointer-events:none}
.toolbar__sort-lbl{display:none;color:var(--on-light-faint);margin-right:2px;font-family:var(--f-display);font-variation-settings:"wdth" 80,"wght" 600;font-size:.625rem;letter-spacing:.16em;text-transform:uppercase}
@media (min-width:700px){.toolbar__sort-lbl{display:inline}}
@media (max-width:560px){
  .toolbar__btn span.toolbar__f-lbl{display:none}
  .toolbar__btn{padding:0 13px}
  .toolbar__sort select{padding:0 36px 0 12px}
}

/* Product grid on a clean commerce surface */
.shop-grid{background:var(--chalk);padding-block:clamp(28px,3.4vw,52px) clamp(56px,7vw,110px)}
.shop-grid .pgrid{row-gap:clamp(30px,3.2vw,54px)}
.pcard.is-hidden{display:none}

/* Load more — minimal, progress-led */
.loadmore{margin-top:clamp(44px,5.2vw,76px);display:flex;flex-direction:column;align-items:center;gap:16px}
.loadmore__bar{width:min(260px,62%);height:2px;background:var(--line);position:relative;overflow:hidden}
.loadmore__bar i{position:absolute;inset:0;background:var(--ink);transform-origin:left;transform:scaleX(.085);transition:transform var(--t-slow) var(--ease-expo)}
.loadmore__txt{color:var(--on-light-mute)}
.loadmore__txt b{color:var(--on-light);font-weight:500}
.loadmore .btn:disabled{opacity:.45;pointer-events:none}
.loadmore .btn:disabled::after{display:none}

/* Filter drawer (reuses .drawer) */
.filter__group{padding:var(--s5) var(--s6)}
.filter__group + .filter__group{border-top:1px solid var(--line)}
.filter__group h3{margin-bottom:16px}
.filter__chips{display:flex;flex-wrap:wrap;gap:8px}
.fchip{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:38px;padding:0 13px;border:1px solid var(--line);
  font-size:.8125rem;color:var(--on-light);transition:background var(--t-fast),color var(--t-fast),border-color var(--t-fast)}
.fchip:hover{border-color:var(--line-strong)}
.fchip[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.filter__sw{display:flex;flex-wrap:wrap;gap:14px}
.fsw{width:26px;height:26px;position:relative;border:1px solid var(--line-strong);box-shadow:inset 0 0 0 2px #fff;transition:box-shadow var(--t-fast),transform var(--t-fast)}
.fsw:hover{transform:scale(1.08)}
.fsw[aria-pressed="true"]{box-shadow:inset 0 0 0 2px #fff,0 0 0 1px var(--ink)}
.fsw[aria-pressed="true"]::after{content:"";position:absolute;inset:-6px;border:1px solid var(--ink)}
.filter__list{display:grid}
.filter__opt{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);text-align:left;width:100%}
.filter__opt:last-child{border-bottom:0}
.filter__opt span.count{color:var(--on-light-faint);font-size:.8125rem}
.filter__opt .tick{width:18px;height:18px;border:1px solid var(--line-strong);display:grid;place-items:center;flex:none}
.filter__opt .tick svg{width:11px;height:11px;stroke:#fff;fill:none;stroke-width:2.4;opacity:0}
.filter__opt[aria-pressed="true"] .tick{background:var(--ink);border-color:var(--ink)}
.filter__opt[aria-pressed="true"] .tick svg{opacity:1}
.filter__opt .lab{flex:1}
