/* Accessory Shop (WooCommerce) — brand skin over Woo's default markup. */
.shop-hero{ background:var(--ink); color:#fff; padding:calc(96px + var(--header-h, 84px)) 0 72px; }
.shop-hero h1{ font-family:var(--display); font-size:clamp(44px,7vw,92px); text-transform:uppercase; line-height:.95; margin:10px 0 18px; }
.shop-hero p{ color:rgba(255,255,255,.75); max-width:56ch; font-size:clamp(15.5px,1.3vw,18px); }

/* The hero already announces the page — hide Woo's own archive title. */
.shop-body .woocommerce-products-header__title{ display:none; }

/* Result count / ordering bar */
.shop-body .woocommerce-result-count{ font-size:14px; color:var(--ink-soft); }
.shop-body .woocommerce-ordering select{ font-family:var(--head); font-size:13px; border:1px solid var(--line); border-radius:4px; padding:8px 10px; background:#fff; }
.shop-body .woocommerce-breadcrumb{ font-family:var(--head); text-transform:uppercase; letter-spacing:.1em; font-size:11px; color:var(--ink-soft); margin-bottom:22px; }
.shop-body .woocommerce-breadcrumb a{ color:var(--accent); }

/* Product grid */
.shop-body ul.products{ list-style:none; padding:0; margin:26px 0 0; display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.shop-body ul.products::before, .shop-body ul.products::after{ display:none; }
.shop-body ul.products li.product{ width:auto !important; float:none !important; margin:0 !important; border:1px solid var(--line); border-radius:6px; background:#fff; overflow:hidden; display:flex; flex-direction:column; transition:transform .18s, box-shadow .18s; }
.shop-body ul.products li.product:hover{ transform:translateY(-4px); box-shadow:var(--shadow); }
.shop-body ul.products li.product a img{ width:100%; height:auto; aspect-ratio:1/1; object-fit:cover; margin:0; }
.shop-body ul.products li.product .woocommerce-loop-product__title{ font-family:var(--head); font-weight:700; font-size:16.5px; color:var(--ink); padding:16px 18px 4px; }
.shop-body ul.products li.product .price{ font-family:var(--display); font-size:20px; color:var(--ink); padding:0 18px; }
.shop-body ul.products li.product .price del{ opacity:.5; }
.shop-body ul.products li.product .button{ margin:14px 18px 18px; align-self:flex-start; background:var(--accent); color:#fff; font-family:var(--head); font-weight:700; text-transform:uppercase; letter-spacing:.1em; font-size:12px; padding:11px 18px; border-radius:4px; border:0; transition:background .15s; }
.shop-body ul.products li.product .button:hover{ background:var(--blue-bright); }
.shop-body .onsale{ position:absolute; top:12px; left:12px; z-index:1; background:var(--gold); color:var(--ink); font-family:var(--head); font-weight:700; text-transform:uppercase; letter-spacing:.1em; font-size:10.5px; padding:5px 11px; border-radius:30px; }
.shop-body ul.products li.product{ position:relative; }

/* Single product */
.shop-body div.product .product_title{ font-family:var(--display); font-size:clamp(28px,3.4vw,44px); text-transform:uppercase; }
.shop-body div.product p.price{ font-family:var(--display); font-size:26px; color:var(--ink); }
.shop-body div.product .cart .button, .shop-body .woocommerce-cart-form .button, .shop-body .wc-proceed-to-checkout .button{ background:var(--accent); color:#fff; font-family:var(--head); font-weight:700; text-transform:uppercase; letter-spacing:.1em; border-radius:4px; }
.shop-body div.product .cart .button:hover{ background:var(--blue-bright); }
.shop-body .woocommerce-tabs ul.tabs li a{ font-family:var(--head); font-weight:600; }

/* Notices */
.shop-body .woocommerce-message, .shop-body .woocommerce-info{ border-top-color:var(--accent); }

@media (max-width:980px){ .shop-body ul.products{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .shop-body ul.products{ grid-template-columns:1fr; } }
