/* WooCommerce — в стиле темы */
.page-hero--shop{padding-bottom:clamp(28px,4vw,48px)}
.shop--single .page-hero--shop{padding-bottom:0}
.shop-desc{margin-top:18px;max-width:720px;color:var(--t2);font-size:17px;line-height:1.6}
.shop-cats{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 32px}
.shop-cats a{display:inline-flex;align-items:center;gap:10px;padding:12px 16px;border-radius:14px;background:#fff;border:1px solid var(--line);font-size:14px;transition:border-color .25s,transform .3s var(--ease)}
.shop-cats a:hover{border-color:var(--ink);color:var(--ink);transform:translateY(-2px)}
.shop-cats small{font-family:var(--f-mono);font-size:11px;background:var(--brass-p);color:var(--brass-dd);padding:3px 7px;border-radius:99px}

.woocommerce-notices-wrapper:empty{display:none}
.woocommerce-message,.woocommerce-info,.woocommerce-error{list-style:none;margin:0 0 24px;padding:16px 20px;border-radius:16px;background:var(--brass-p);color:var(--ink);display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.woocommerce-error{background:#FBE7DF;color:var(--err)}
.woocommerce-message .button,.woocommerce-info .button{order:2}

.woocommerce-result-count{margin:0;color:var(--m1);font-size:14px}
.woocommerce-ordering select,.woocommerce select,.woocommerce input.input-text,.woocommerce textarea{background:#fff;border:1px solid var(--line2);border-radius:12px;padding:12px 14px;font-size:15px;color:var(--ink);width:100%}
.woocommerce-ordering{margin:0}
.woocommerce-ordering select{width:auto}
.woocommerce-result-count+.woocommerce-ordering,.woocommerce-ordering{float:none}
.woocommerce-products-header{display:none}
.shop .article>.wrap>.woocommerce-result-count,.shop .article>.wrap>.woocommerce-ordering{display:inline-flex;margin-bottom:24px;vertical-align:middle}
.shop .article>.wrap>.woocommerce-ordering{float:right}

ul.products{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:16px;clear:both}
ul.products::before,ul.products::after,.woocommerce ul.products::before,.woocommerce ul.products::after,.woocommerce-page ul.products::before,.woocommerce-page ul.products::after{content:none!important;display:none!important}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:auto!important;margin:0!important;float:none!important;clear:none!important}
ul.products li.product{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:24px;padding:14px 14px 20px;transition:transform .4s var(--ease),box-shadow .4s;margin:0;width:auto;float:none}
ul.products li.product:hover{transform:translateY(-4px);box-shadow:0 24px 50px -28px rgba(20,26,36,.35)}
ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1;color:var(--ink)}
ul.products li.product img{width:100%;aspect-ratio:1;object-fit:contain;background:var(--bg);border-radius:16px;margin:0 0 16px;transition:transform .8s var(--ease)}
ul.products li.product:hover img{transform:scale(1.03)}
.woocommerce-loop-product__title{font-family:var(--f-head);font-weight:500;font-size:17px;line-height:1.3;letter-spacing:-.01em;margin:0 6px 12px;text-wrap:pretty}
ul.products .price{margin:auto 6px 16px;font-family:var(--f-head);font-size:20px;letter-spacing:-.02em;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.price del{color:var(--m2);font-size:.75em;opacity:1}
.price ins{text-decoration:none;color:var(--ink)}
.price-req{font-family:var(--f-mono);font-size:13px;letter-spacing:.04em;color:var(--brass-d)}
ul.products li.product .button,ul.products li.product .shop-req{margin:0 6px;justify-content:center;text-align:center}
.onsale{position:absolute;top:24px;left:24px;z-index:2;background:var(--brass);color:var(--ink);font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:99px;min-height:0;min-width:0;line-height:1.2}

.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce a.added_to_cart{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border-radius:14px;background:var(--navy);color:var(--bg);font-weight:600;font-size:15px;border:none;cursor:pointer;transition:background .25s,color .25s;line-height:1.2;text-decoration:none}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--brass);color:var(--ink)}
.woocommerce a.button.alt,.woocommerce button.button.alt,#place_order{background:linear-gradient(135deg,#D4B47C 0%,#C2A06B 45%,#A8864F 100%);color:var(--ink);box-shadow:0 18px 40px -14px rgba(168,134,79,.75),inset 0 1px 0 rgba(255,255,255,.45);padding:18px 26px;font-size:16px}
.woocommerce a.added_to_cart{background:transparent;color:var(--brass-d);padding:10px 6px}
.woocommerce .button.loading{opacity:.6}
.woocommerce nav.woocommerce-pagination ul{list-style:none;display:flex;gap:8px;padding:0;margin:40px 0 0;border:none}
.woocommerce nav.woocommerce-pagination ul li{border:none}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{min-width:48px;height:48px;padding:0 14px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line2);border-radius:14px}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--navy);color:var(--bg);border-color:var(--navy)}

/* single */
.shop--single div.product{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:start;position:relative}
@media (max-width:900px){.shop--single div.product{grid-template-columns:1fr}}
.shop--single div.product>.onsale{top:16px;left:16px}
.woocommerce-product-gallery{position:relative;border-radius:28px;overflow:hidden;background:#fff;border:1px solid var(--line);width:100%!important;float:none!important}
.woocommerce-product-gallery img{width:100%;aspect-ratio:1;object-fit:contain}
.woocommerce-product-gallery .flex-control-thumbs{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:12px;margin:0}
.woocommerce-product-gallery .flex-control-thumbs img{border-radius:10px;opacity:.6;cursor:pointer;transition:opacity .25s}
.woocommerce-product-gallery .flex-control-thumbs img.flex-active,.woocommerce-product-gallery .flex-control-thumbs img:hover{opacity:1}
.woocommerce-product-gallery__trigger{position:absolute;top:14px;right:14px;z-index:3;width:44px;height:44px;border-radius:14px;background:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.8);display:flex;align-items:center;justify-content:center;font-size:0}
.woocommerce-product-gallery__trigger::before{content:"⤢";font-size:18px;color:var(--ink)}
.summary{position:sticky;top:110px;width:100%!important;float:none!important}
.summary .product_title{font-family:var(--f-head);font-weight:500;font-size:clamp(28px,3.2vw,46px);line-height:1.05;letter-spacing:-.04em;margin:0 0 18px;text-wrap:balance}
.summary .price{font-family:var(--f-head);font-size:clamp(26px,2.6vw,36px);letter-spacing:-.03em;margin:0 0 20px;display:flex;gap:12px;align-items:baseline}
.summary .woocommerce-product-details__short-description{color:var(--t2);font-size:16px;line-height:1.65;margin-bottom:22px}
.summary form.cart{display:flex;gap:10px;flex-wrap:wrap;align-items:stretch;margin:0 0 20px}
.quantity .qty{width:88px;height:100%;min-height:52px;border:1px solid var(--line2);border-radius:14px;text-align:center;font-size:16px;font-family:var(--f-mono);background:#fff}
.shop-cta{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 20px}
.shop-perks{list-style:none;margin:0 0 24px;padding:18px 20px;border-radius:20px;background:var(--brass-p);display:flex;flex-direction:column;gap:10px;font-size:15px}
.shop-perks li{display:flex;gap:10px;align-items:center}
.shop-perks li::before{content:"✓";width:20px;height:20px;border-radius:6px;background:var(--brass);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex:0 0 20px}
.product_meta{font-size:13px;color:var(--m1);display:flex;flex-direction:column;gap:6px;font-family:var(--f-mono)}
.product_meta a{color:var(--brass-d)}
.woocommerce-tabs{grid-column:1/-1;margin-top:clamp(24px,4vw,56px)}
.woocommerce-tabs ul.tabs{list-style:none;display:flex;gap:6px;padding:0;margin:0 0 24px;border-bottom:1px solid var(--line);overflow-x:auto}
.woocommerce-tabs ul.tabs li{margin:0}
.woocommerce-tabs ul.tabs li a{display:block;padding:14px 18px;font-family:var(--f-head);font-size:17px;color:var(--m2);border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}
.woocommerce-tabs ul.tabs li.active a{color:var(--ink);border-color:var(--ink)}
.woocommerce-Tabs-panel{font-size:17px;line-height:1.7;color:var(--t2);max-width:880px}
.woocommerce-Tabs-panel h2{font-family:var(--f-head);font-weight:500;font-size:24px;letter-spacing:-.02em;color:var(--ink)}
.woocommerce-Tabs-panel table{width:100%;border-collapse:collapse}
.woocommerce-Tabs-panel th,.woocommerce-Tabs-panel td{border-bottom:1px solid var(--line);padding:12px;text-align:left}
.related,.upsells{grid-column:1/-1;margin-top:clamp(48px,6vw,96px)}
.related>h2,.upsells>h2{font-family:var(--f-head);font-weight:500;font-size:clamp(26px,3vw,40px);letter-spacing:-.04em;margin:0 0 24px}

/* cart & checkout */
.woocommerce table.shop_table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;font-size:15px}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:16px 18px;border-bottom:1px solid var(--bg2);text-align:left;vertical-align:middle}
.woocommerce table.shop_table thead th{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--m1);font-weight:500}
.woocommerce table.shop_table img{width:64px;border-radius:10px}
.woocommerce a.remove{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line2);color:var(--m1)!important;font-size:18px}
.woocommerce a.remove:hover{background:var(--err);color:#fff!important;border-color:var(--err)}
.cart-collaterals{margin-top:32px;display:flex;justify-content:flex-end}
.cart_totals{width:min(100%,460px)}
.cart_totals h2,#order_review_heading,.woocommerce-billing-fields h3,.woocommerce-additional-fields h3{font-family:var(--f-head);font-weight:500;font-size:24px;letter-spacing:-.02em;margin:0 0 16px}
.wc-proceed-to-checkout{margin-top:16px}.wc-proceed-to-checkout .button{width:100%}
.actions .coupon{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.actions .coupon .input-text{width:200px}
form.checkout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
@media (max-width:900px){form.checkout{grid-template-columns:1fr}}
form.checkout .col2-set{grid-column:1}
form.checkout #order_review_heading,form.checkout #order_review{grid-column:2}
@media (max-width:900px){form.checkout #order_review_heading,form.checkout #order_review{grid-column:1}}
#order_review{position:sticky;top:110px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:22px}
#order_review table.shop_table{border:none;border-radius:0}
.woocommerce form .form-row{margin:0 0 16px;display:flex;flex-direction:column;gap:6px}
.woocommerce form .form-row label{font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--m1)}
.woocommerce form .form-row label.check{font-family:var(--f-body);font-size:14px;letter-spacing:0;text-transform:none;color:var(--t2)}
.woocommerce form .form-row .required{color:var(--err);text-decoration:none}
.woocommerce-checkout-payment ul.payment_methods{list-style:none;padding:0;margin:16px 0;display:flex;flex-direction:column;gap:8px}
.woocommerce-checkout-payment li{padding:14px 16px;border-radius:14px;border:1px solid var(--line)}
.woocommerce-checkout-payment .payment_box{font-size:14px;color:var(--m1);margin-top:8px}
#place_order{width:100%}
.woocommerce-order-overview{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.woocommerce-order-overview li{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;font-size:13px;color:var(--m1)}
.woocommerce-order-overview li strong{display:block;font-size:17px;color:var(--ink);margin-top:6px}

/* header cart */
.hdr-cart{position:relative;width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.5);border:1px solid rgba(20,26,36,.12);transition:background .25s}
.hdr-cart:hover{background:#fff}
.hdr-cart b{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:var(--brass);color:var(--ink);font-family:var(--f-mono);font-size:10px;display:flex;align-items:center;justify-content:center}
.hdr-cart b:empty,.hdr-cart b[data-cart-n="0"]{display:none}

/* front shop teaser */
.shop-teaser ul.products{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}
