/* Catalogue layout: sidebar category tree + product grid with bottom-aligned actions. */

.commerce-layout{display:grid;grid-template-columns:274px minmax(0,1fr);gap:44px;align-items:start;padding-top:46px}
.commerce-main{min-width:0}

/* --- Sidebar (modelled on the reference site's category rail) --- */
.shop-sidebar{position:sticky;top:96px;display:grid;gap:22px}
.shop-sidebar__block{background:#fff;border:1px solid #e2ded6}
.shop-sidebar__block h2{margin:0;padding:19px 22px;background:var(--page-black,#090a09);color:#fff;font:700 13px/1.3 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.shop-category-tree,.shop-category-tree ul{list-style:none;margin:0;padding:0}
.shop-category-tree>li{border-top:1px solid #ece8e0}
.shop-category-tree>li:first-child{border-top:0}
.shop-category-tree a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 20px;color:#2a2f2b;font-size:13px;line-height:1.4;transition:color .2s,background .2s}
.shop-category-tree a:hover{background:#f6f4f0;color:var(--page-red,#e60019)}
.shop-category-tree a em{flex:0 0 auto;color:#9aa09b;font-size:11px;font-style:normal}
.shop-category-tree>li>a{font-weight:700}
.shop-category-tree ul{display:none;padding-bottom:6px;background:#faf9f6}
.shop-category-tree li.is-current>ul{display:block}
.shop-category-tree ul a{padding:9px 20px 9px 34px;font-size:12px;color:#5c625d}
.shop-category-tree ul a:before{content:"—";margin-right:8px;color:#c9c4ba}
.shop-category-tree li.is-current>a{color:var(--page-red,#e60019)}
.shop-category-tree>li.is-current>a{background:#f6f4f0}

.shop-sidebar__card{padding:28px 24px;background:linear-gradient(150deg,#141715,#2a211b);color:#fff}
.shop-sidebar__card b{display:block;font-size:13px;letter-spacing:.16em}
.shop-sidebar__card p{margin:12px 0 22px;color:#b4b8b3;font-size:13px;line-height:1.65}
/* `.woocommerce .button` in style.css is !important, so these have to match it. */
.shop-sidebar__card .button{display:flex;width:100%;margin-bottom:10px;padding:13px 16px!important;font-size:11px!important}
.shop-sidebar__card .button--ghost{background:transparent!important;border:1px solid rgba(255,255,255,.45)!important;color:#fff!important}
.shop-sidebar__card .button--ghost:hover{background:#fff!important;border-color:#fff!important;color:#141715!important}
.shop-sidebar__card .button:last-child{margin-bottom:0}

/* --- Category chips: the mobile stand-in for the sidebar tree --- */
.product-category-nav{display:none;gap:10px;flex-wrap:wrap;padding:0 0 18px;border-bottom:1px solid var(--line)}
.product-category-nav a{padding:9px 13px;border:1px solid var(--line);font-size:11px;letter-spacing:.08em;text-transform:uppercase;transition:.2s}
.product-category-nav a:hover,.product-category-nav a.is-active{background:var(--forest);border-color:var(--forest);color:#fff}

/* --- Product grid --- */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px!important;margin:30px 0 80px!important;padding:0!important}
.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important;content:none!important}
.woocommerce ul.products li.product{display:flex!important;flex-direction:column;width:100%!important;margin:0!important;float:none!important}

/* The product link owns image + title + specs and absorbs any spare height, so the
   action row below it always sits on the bottom edge of the card. */
.woocommerce ul.products li.product>a.woocommerce-loop-product__link{display:flex;flex-direction:column;flex:1 1 auto}
.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.44em;margin:0!important;padding:20px 20px 0!important;font-size:19px!important;line-height:1.22!important;letter-spacing:-.02em}

.atelier-loop-specs{margin:0;padding:13px 20px 4px}
.atelier-loop-specs div{display:grid;grid-template-columns:74px minmax(0,1fr);gap:8px;padding:3px 0;font-size:12px;line-height:1.5}
.atelier-loop-specs dt{color:#8d938e;font-weight:400}
.atelier-loop-specs dd{margin:0;overflow:hidden;color:#2b312d;font-weight:600;text-overflow:ellipsis;white-space:nowrap}

.atelier-product-inquiry{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;padding:0 20px 22px}
.atelier-product-inquiry>*{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:46px;margin:0!important;padding:12px 10px!important;font-size:10px!important;line-height:1.2!important;letter-spacing:.09em!important;text-align:center;text-transform:uppercase!important}
.atelier-card-link{border:1px solid var(--line);color:var(--ink);font-weight:700;transition:.25s}
.atelier-card-link:hover{background:var(--ink);border-color:var(--ink);color:#fff}

/* --- Single product --- */
.atelier-specs{margin:24px 0;padding:19px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.atelier-specs__title{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:11px;color:var(--copper)}
.atelier-specs dl{margin:0}
.atelier-specs dl div{display:grid;grid-template-columns:118px 1fr;gap:12px;padding:7px 0;font-size:13px}
.atelier-specs dt{color:#778077}
.atelier-specs dd{margin:0;font-weight:600}
.woocommerce div.product .atelier-product-inquiry{display:flex;grid-template-columns:none;margin-top:22px;padding:0}
.woocommerce div.product .atelier-product-inquiry>*{width:auto!important;min-width:230px;padding:16px 26px!important;font-size:11px!important}
.woocommerce div.product .product_meta{margin-top:26px;padding-top:20px;border-top:1px solid var(--line);color:#707671;font-size:12px;line-height:1.9}
.woocommerce div.product .product_meta a{color:#2b312d;border-bottom:1px solid var(--line)}
.woocommerce div.product .product_meta a:hover{color:var(--page-red,#e60019)}

@media(max-width:1199px){
    .commerce-layout{grid-template-columns:238px minmax(0,1fr);gap:30px}
    .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:900px){
    .commerce-layout{display:block;padding-top:30px}
    .shop-sidebar{display:none}
    .product-category-nav{display:flex}
}
@media(max-width:768px){
    .woocommerce ul.products{grid-template-columns:1fr!important;gap:16px!important}
    .product-category-nav{padding-top:0;gap:7px;flex-wrap:nowrap;overflow-x:auto}
    .product-category-nav a{white-space:nowrap}
    .product-category-nav a{font-size:10px;padding:8px 10px}
    .atelier-specs dl div{grid-template-columns:105px 1fr}
    .woocommerce div.product .atelier-product-inquiry>*{width:100%!important;min-width:0}
}
