/* WM20 storefront layer — homepage, product, cart & checkout. Uses lux tokens. */
.wm-hero{position:relative;min-height:min(82vh,760px);display:flex;align-items:center;overflow:hidden;background:var(--lx-ink)}
.wm-hero__img{position:absolute;inset:0;margin:0}
.wm-hero__img img{width:100%;height:100%;object-fit:cover;object-position:70% 50%;filter:saturate(.92)}
.wm-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,21,15,.82) 0%,rgba(22,21,15,.55) 38%,rgba(22,21,15,0) 70%)}
.wm-hero__copy{position:relative;z-index:1;max-width:560px;padding:72px clamp(22px,6vw,88px);color:#fff}
.wm-hero__copy h1{font-family:var(--lx-serif);font-weight:500;font-size:clamp(40px,5.6vw,76px);line-height:1.02;margin:16px 0 18px;color:#fff;letter-spacing:-.5px}
.wm-hero__copy p{font-size:16px;line-height:1.7;color:#ffffffd9;max-width:440px;margin:0 0 30px}
.wm-hero .lux-hero__cta{display:flex;gap:12px;flex-wrap:wrap}
.wm-cats,.wm-new{max-width:1320px;margin:0 auto;padding:clamp(56px,7vw,96px) clamp(18px,4vw,48px) 0}
.wm-cats__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}
.wm-cat{display:block;text-decoration:none!important;color:var(--lx-ink)!important}
.wm-cat figure{margin:0;aspect-ratio:4/5;overflow:hidden;border-radius:200px 200px 14px 14px;background:var(--lx-ivory)}
.wm-cat img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.wm-cat:hover img{transform:scale(1.05)}
.wm-cat span{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--lx-serif);font-size:24px;padding:14px 4px 0;border-bottom:1px solid var(--lx-line);padding-bottom:10px}
.wm-cat em{font-style:normal;font-size:14px;color:var(--lx-gold)}
.wm-new ul.products{margin-top:28px!important}
.wm-story{background:var(--lx-ink);color:#fff;margin-top:clamp(56px,7vw,96px)}
.wm-story__in{max-width:1100px;margin:0 auto;padding:clamp(56px,7vw,92px) clamp(22px,5vw,48px);text-align:center}
.wm-story__quote{font-family:var(--lx-serif);font-size:clamp(28px,3.6vw,46px);line-height:1.2;margin:18px auto 40px;max-width:820px;color:#fff}
.wm-story__pts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;border-top:1px solid #ffffff22;padding-top:30px}
.wm-story__pts b{display:block;font-family:var(--lx-serif);font-weight:500;font-size:24px;color:var(--lx-gold2)}
.wm-story__pts span{font-size:13px;letter-spacing:.4px;color:#ffffffb3}
.wm-signature{text-align:center;padding:clamp(56px,7vw,88px) 20px 8px}
.wm-signature h2{font-family:var(--lx-serif);font-weight:500;font-size:clamp(30px,3.4vw,44px);margin:12px 0 24px}
.wm-banner{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;background:var(--lx-ivory);max-width:1320px;margin:clamp(48px,6vw,80px) auto 0;border-radius:18px;overflow:hidden}
.wm-banner figure{margin:0;height:100%}.wm-banner img{width:100%;height:100%;object-fit:cover;display:block}
.wm-banner>div{padding:clamp(28px,5vw,64px)}
.wm-banner h2{font-family:var(--lx-serif);font-weight:500;font-size:clamp(32px,3.6vw,48px);margin:10px 0 12px}
.wm-banner p{color:var(--lx-muted);margin:0 0 26px}
@media(max-width:760px){
 .wm-hero{min-height:620px;align-items:flex-end}
 .wm-hero:after{background:linear-gradient(0deg,rgba(22,21,15,.9) 0%,rgba(22,21,15,.55) 45%,rgba(22,21,15,.05) 80%)}
 .wm-hero__img img{object-position:60% 30%}
 .wm-hero__copy{padding:0 22px 40px}
 .wm-hero .lux-btn{flex:1 1 100%}
 .wm-cats__grid{grid-template-columns:repeat(2,1fr);gap:12px}
 .wm-cat span{font-size:19px}
 .wm-story__pts{grid-template-columns:1fr}
 .wm-banner{grid-template-columns:1fr;border-radius:0}
}
/* Product page polish */
.single-product .product_title{font-family:var(--lx-serif);font-weight:500;letter-spacing:-.2px}
.single-product .summary .price{font-family:var(--lx-serif);font-size:30px!important;color:var(--lx-ink)!important}
.single-product .woocommerce-product-details__short-description{color:var(--lx-muted);line-height:1.7}
.single-product .woocommerce-tabs ul.tabs{display:flex;flex-wrap:wrap;gap:6px;border:0!important;padding:0!important}
.single-product .woocommerce-tabs ul.tabs li{border:1px solid var(--lx-line)!important;border-radius:999px!important;background:#fff!important;margin:0!important}
.single-product .woocommerce-tabs ul.tabs li.active{background:var(--lx-ivory)!important;border-color:var(--lx-gold)!important}
.single-product .woocommerce-tabs ul.tabs li.active a{color:var(--lx-ink)!important}
.single-product .woocommerce-tabs ul.tabs li:before,.single-product .woocommerce-tabs ul.tabs li:after,.single-product .woocommerce-tabs ul.tabs:before{display:none!important}
.single-product .woocommerce-Tabs-panel{line-height:1.75;max-width:860px}
/* Cart & checkout */
.woocommerce-cart .cart_totals h2,.woocommerce-checkout h3,#order_review_heading{font-family:var(--lx-serif);font-weight:500;font-size:28px}
.woocommerce-checkout .form-row input.input-text,.woocommerce-checkout .form-row select,.woocommerce-checkout .form-row textarea,.woocommerce-cart .coupon input{border:1px solid var(--lx-line)!important;border-radius:10px!important;min-height:48px;padding:10px 14px!important;background:#fff!important;font-size:15px}
.woocommerce-checkout .form-row input:focus,.woocommerce-checkout .form-row select:focus{border-color:var(--lx-gold)!important;outline:0;box-shadow:0 0 0 3px #b38b4522}
.woocommerce-checkout #order_review,.woocommerce-cart .cart_totals{background:var(--lx-paper);border:1px solid var(--lx-line);border-radius:16px;padding:22px}
.woocommerce-checkout #place_order,.woocommerce-cart .checkout-button{background:var(--lx-ink)!important;color:#fff!important;border-radius:999px!important;min-height:54px;letter-spacing:2px;text-transform:uppercase;font-size:13px!important}
.woocommerce-checkout #place_order:hover,.woocommerce-cart .checkout-button:hover{background:var(--lx-gold)!important;color:var(--lx-ink)!important}
/* Typographic hero (no image) */
.wm-hero--type{background:var(--lx-ivory);min-height:auto;justify-content:center;text-align:center;border-bottom:1px solid var(--lx-line)}
.wm-hero--type:after{display:none}
.wm-hero--type .wm-hero__copy{max-width:820px;margin:0 auto;padding:clamp(72px,11vw,150px) 24px clamp(64px,9vw,120px);color:var(--lx-ink)}
.wm-hero--type .wm-hero__copy h1{color:var(--lx-ink);font-size:clamp(44px,7vw,96px)}
.wm-hero--type .wm-hero__copy p{color:var(--lx-muted);margin:0 auto 34px}
.wm-hero--type .lux-hero__cta{justify-content:center}
.wm-hero--type .lux-btn--ghost{border-color:var(--lx-ink);color:var(--lx-ink)!important}
@media(max-width:760px){.wm-hero--type .lux-btn{flex:1 1 100%}.wm-hero--type .wm-hero__copy{padding:64px 22px 52px}}
.wm-cats__grid{grid-template-columns:repeat(3,1fr)}
@media(max-width:760px){.wm-cats__grid{grid-template-columns:repeat(2,1fr)}}
.wm-cat figure{aspect-ratio:1/1;border-radius:14px}
