/* ============ DKS - shop archive ============ */

/* ---------------- header ---------------- */
.dks-shop-head{background:var(--dks-hero);padding:clamp(44px,5.5vw,80px) var(--dks-pad) clamp(38px,4.5vw,62px);text-align:center;position:relative;overflow:hidden}
.dks-shop-head::after{content:"";position:absolute;inset:auto 0 0 0;height:1px;background:linear-gradient(90deg,transparent,rgba(233,185,97,.45),transparent)}
.dks-shop-head-inner{max-width:820px;margin-inline:auto;position:relative;z-index:2}
.dks-shop-crumb{display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap;
font-size:var(--dks-fs-xs);letter-spacing:var(--dks-ls-lg);text-transform:uppercase;color:rgba(243,237,226,.55)}
.dks-shop-crumb a{color:rgba(243,237,226,.55);text-decoration:none;transition:color var(--dks-dur) ease}
.dks-shop-crumb a:hover{color:var(--dks-gold)}
.dks-shop-crumb .dks-crumb-current{color:var(--dks-gold)}
.dks-shop-title{color:var(--dks-gold);font-weight:800;letter-spacing:var(--dks-ls-0);text-transform:uppercase;
font-size:var(--dks-fs-h1);line-height:1.03;margin:14px 0 0;text-wrap:balance}
.dks-shop-desc{color:rgba(243,237,226,.72);max-width:560px;margin:16px auto 0;font-size:var(--dks-fs-lead);line-height:1.8}
.dks-shop-meta{list-style:none;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;
gap:10px 26px;margin:24px 0 0;padding:0}
.dks-shop-meta li{display:flex;align-items:center;gap:9px;font-size:var(--dks-fs-xs);font-weight:600;
letter-spacing:var(--dks-ls-md);text-transform:uppercase;color:rgba(243,237,226,.55)}
.dks-shop-meta li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--dks-gold);flex:none}
.dks-shop-meta .amount,.dks-shop-meta bdi{color:var(--dks-gold);font-weight:700}

/* ---------------- toolbar ---------------- */
.dks-shop-toolbar{background:var(--dks-cream);border-bottom:1px solid var(--dks-line)}
.dks-shop-toolbar-inner{max-width:1240px;margin-inline:auto;padding:clamp(20px,2.6vw,30px) var(--dks-pad) clamp(16px,2vw,22px)}

/* category tabs */
.dks-cat-tabs{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.dks-pill{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;min-height:44px;
border:1px solid var(--dks-line-strong);border-radius:var(--dks-pill);background:transparent;
font-size:var(--dks-fs-xs);font-weight:600;letter-spacing:var(--dks-ls-md);text-transform:uppercase;
color:var(--dks-text);text-decoration:none;transition:all var(--dks-dur) ease;white-space:nowrap}
.dks-pill:hover{border-color:var(--dks-ink);background:rgba(23,21,15,.05)}
.dks-pill.is-active{background:var(--dks-ink);border-color:var(--dks-ink);color:var(--dks-cream)}
.dks-pill-n{font-size:var(--dks-fs-xs);font-weight:600;letter-spacing:var(--dks-ls-0);opacity:.55}
.dks-pill.is-active .dks-pill-n{color:var(--dks-gold);opacity:1}

/* filter rows */
.dks-filter-rows{display:flex;flex-wrap:wrap;gap:10px 34px;justify-content:center;
margin-top:22px;padding-top:20px;border-top:1px solid var(--dks-line)}
.dks-filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.dks-filter-label{font-size:var(--dks-fs-xs);font-weight:700;letter-spacing:var(--dks-ls-lg);text-transform:uppercase;
color:var(--dks-muted);margin-right:4px}
.dks-chip-f{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;min-height:36px;
border:1px solid var(--dks-line);border-radius:var(--dks-pill);background:var(--dks-white);
font-size:var(--dks-fs-xs);font-weight:500;letter-spacing:var(--dks-ls-0);color:var(--dks-text);
text-decoration:none;transition:all var(--dks-dur) ease;white-space:nowrap}
.dks-chip-f:hover{border-color:var(--dks-gold-deep);color:var(--dks-text)}
.dks-chip-f.is-active{background:var(--dks-ink);border-color:var(--dks-ink);color:var(--dks-cream)}
.dks-swatch{width:12px;height:12px;border-radius:50%;flex:none;box-shadow:inset 0 0 0 1px rgba(23,21,15,.16)}
.dks-sw-green{background:var(--dks-green-1)}.dks-sw-gold{background:var(--dks-gold-deep)}.dks-sw-sand{background:#D9CDB8}
.dks-sw-cream{background:#EDE3D2}.dks-sw-oak{background:#C09A62}.dks-sw-blush{background:#D9AFA4}
.dks-sw-charcoal{background:#4A4741}.dks-sw-sage{background:#9FAE96}

/* result count + sort */
.dks-shop-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
margin-top:20px;padding-top:18px;border-top:1px solid var(--dks-line)}
.dks-shop-bar-left{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.dks-shop-bar .woocommerce-result-count{margin:0;font-size:var(--dks-fs-xs);letter-spacing:var(--dks-ls-md);
text-transform:uppercase;color:var(--dks-muted)}
.dks-shop-bar .woocommerce-ordering{margin:0}
.dks-shop-bar .woocommerce-ordering select{min-height:42px;padding:10px 16px;font-size:var(--dks-fs-sm);
border-radius:var(--dks-pill);border:1px solid var(--dks-line-strong);background:var(--dks-white);max-width:230px}
.dks-clear{font-size:var(--dks-fs-xs);font-weight:600;letter-spacing:var(--dks-ls-md);text-transform:uppercase;
color:var(--dks-gold-text);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.dks-clear:hover{color:var(--dks-ink)}

/* ---------------- product grid ---------------- */
.woocommerce ul.products{padding-block:clamp(34px,4vw,54px)}

/* image zoom on the theme's own thumbnail wrapper */
.woocommerce ul.products li.product .product-loop-image-wrapper{position:relative;overflow:hidden;background:var(--dks-cream)}
.woocommerce ul.products li.product .product-loop-image-wrapper img{transition:transform .5s cubic-bezier(.2,.7,.3,1);margin:0}
.woocommerce ul.products li.product:hover .product-loop-image-wrapper img{transform:scale(1.045)}

/* Woostify collapses price+button and reveals them on hover - no good on touch.
   Show them always and let the card grow. */
.woocommerce ul.products li.product .product-loop-meta{height:auto!important;overflow:visible!important}
.woocommerce ul.products li.product .animated-meta{position:static!important;transform:none!important;
opacity:1!important;visibility:visible!important}
.woocommerce ul.products li.product .product-loop-wrapper{display:flex;flex-direction:column;height:100%}
.woocommerce ul.products li.product .product-loop-content{display:flex;flex-direction:column;flex:1 1 auto}
.woocommerce ul.products li.product .product-loop-meta{margin-top:auto}
.woocommerce ul.products li.product .product-loop-action{display:none}
.woocommerce ul.products li.product .product-loop-content{padding-bottom:0}
.woocommerce ul.products li.product .product-loop-meta{padding-bottom:0}
.dks-card-cat{display:block;padding:15px 16px 0;font-size:var(--dks-fs-xs);font-weight:700;
letter-spacing:var(--dks-ls-lg);text-transform:uppercase;color:var(--dks-gold-text)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{padding-top:5px!important}

/* two-line title so every card in a row lines up */
.woocommerce ul.products li.product .woocommerce-loop-product__title{
display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart{opacity:1;visibility:visible}

/* ---------------- empty state ---------------- */
.dks-empty{grid-column:1/-1;text-align:center;background:var(--dks-white);border:1px dashed var(--dks-line-strong);
border-radius:var(--dks-radius);padding:clamp(44px,6vw,80px) var(--dks-pad);margin-block:clamp(30px,4vw,50px)}
.dks-empty-mark{font-size:44px;color:var(--dks-gold-deep);line-height:1;opacity:.55}
.dks-empty h2{font-size:var(--dks-fs-h3);font-weight:700;margin:16px 0 0}
.dks-empty p{color:var(--dks-muted);margin:10px 0 0;font-size:var(--dks-fs-base)}
.dks-empty-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:24px!important}

/* plain anchors styled as buttons (outside Elementor) */
a.dks-btn-a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;
padding:14px 28px;border-radius:var(--dks-pill);background:var(--dks-gold);color:var(--dks-ink);
border:1px solid var(--dks-gold);font-size:var(--dks-fs-sm);font-weight:700;letter-spacing:var(--dks-ls-md);
text-transform:uppercase;text-decoration:none;transition:all var(--dks-dur) ease}
a.dks-btn-a:hover{background:var(--dks-ink);color:var(--dks-cream);border-color:var(--dks-ink)}
a.dks-btn-a-ghost{background:transparent;color:var(--dks-text);border-color:var(--dks-line-strong)}
a.dks-btn-a-ghost:hover{background:var(--dks-ink);color:var(--dks-cream);border-color:var(--dks-ink)}
a.dks-btn-a-ink{background:var(--dks-ink);color:var(--dks-cream);border-color:var(--dks-ink)}
a.dks-btn-a-ink:hover{background:var(--dks-gold);color:var(--dks-ink);border-color:var(--dks-gold)}

/* ---------------- closing bands ---------------- */
.dks-shop-promises{background:var(--dks-cream);border-top:1px solid var(--dks-line);
padding:clamp(44px,5vw,70px) var(--dks-pad)}
.dks-shop-promises-inner{max-width:1240px;margin-inline:auto;display:grid;
grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(22px,3vw,40px)}
.dks-promise-item{border-top:2px solid var(--dks-ink);padding-top:18px;display:flex;flex-direction:column}
.dks-promise-num{font-size:var(--dks-fs-h2);font-weight:800;line-height:1;color:var(--dks-ink)}
.dks-promise-head{font-size:var(--dks-fs-sm);font-weight:700;letter-spacing:var(--dks-ls-md);text-transform:uppercase;margin-top:10px}
.dks-promise-body{font-size:var(--dks-fs-md);color:var(--dks-muted);line-height:1.7;margin-top:8px}

.dks-shop-cta{background:var(--dks-green-2);padding:clamp(40px,4.6vw,64px) var(--dks-pad)}
.dks-shop-cta-inner{max-width:1240px;margin-inline:auto;display:flex;align-items:center;
justify-content:space-between;gap:28px;flex-wrap:wrap}
.dks-shop-cta-kicker{font-size:var(--dks-fs-xs);font-weight:600;letter-spacing:var(--dks-ls-xl);text-transform:uppercase;color:var(--dks-gold)}
.dks-shop-cta h2{color:var(--dks-cream);font-size:var(--dks-fs-h3);font-weight:600;
line-height:1.24;margin:10px 0 0;max-width:640px}

/* ---------------- responsive ---------------- */
@media (max-width:1024px){
.dks-shop-promises-inner{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1024px){
.dks-shop-toolbar-inner{padding-inline:16px}
.dks-cat-tabs{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;
scrollbar-width:none;-webkit-overflow-scrolling:touch;margin-inline:-16px;padding-inline:16px}
.dks-cat-tabs::-webkit-scrollbar{display:none}
.dks-filter-rows{display:block}
.dks-filter-row{display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;
width:auto;max-width:none;margin-inline:-16px;padding:0 16px;box-sizing:border-box}
.dks-filter-row+.dks-filter-row{margin-top:12px}
.dks-filter-row::-webkit-scrollbar{display:none}
.dks-filter-label{position:sticky;left:0;background:var(--dks-cream);padding-right:8px;z-index:1}
}
@media (max-width:767px){
.dks-shop-bar{gap:12px}
.dks-shop-bar-left{width:100%;justify-content:space-between}
.dks-shop-bar-right,.dks-shop-bar .woocommerce-ordering,
.dks-shop-bar .woocommerce-ordering select{width:100%;max-width:none}
.dks-shop-promises-inner{grid-template-columns:minmax(0,1fr);gap:24px}
.dks-shop-cta-inner{flex-direction:column;align-items:flex-start}
.dks-shop-cta a.dks-btn-a{width:100%}
.dks-shop-meta{gap:8px 16px}
.dks-shop-meta li{font-size:var(--dks-fs-xs);letter-spacing:var(--dks-ls-md)}
}
