/* Native WooCommerce templates, classic shortcodes and Cart/Checkout Blocks. */
.woocommerce{--wc-primary:var(--wine);--wc-primary-text:var(--paper);--wc-content-bg:var(--paper);--wc-subtext:var(--muted)}.shop-main{padding-block:32px 60px;min-height:55vh}.catalog-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:45px}.catalog-results{min-width:0}.woocommerce .woocommerce-breadcrumb{font-size:12px;color:var(--muted);margin-bottom:26px;line-height:1.7}.woocommerce .woocommerce-breadcrumb a{color:var(--muted)}.woocommerce-products-header{margin-bottom:30px}.woocommerce-products-header h1{font-size:44px}.woocommerce-products-header .term-description{max-width:720px;font-family:var(--serif);font-size:18px}.woocommerce .woocommerce-result-count{font-size:13px;padding-top:13px}.woocommerce .woocommerce-ordering{margin-bottom:24px}.woocommerce .woocommerce-ordering select{font-size:12px;background:transparent;max-width:240px}.shop-filter-panel{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.shop-filter-panel>summary{cursor:pointer;padding:17px 0;font-family:var(--serif);font-size:22px;color:var(--wine)}.filter-body{padding:12px 0 20px}.filter-widget{margin-top:28px;border-top:1px solid var(--line);padding-top:22px}.filter-widget h2,.filter-widget h3,.filter-widget .wp-block-heading{font-size:20px;margin-bottom:18px}.filter-widget ul{list-style:none;padding-left:0;margin:0}.filter-widget li{margin-bottom:12px;font-size:13px}.filter-widget .children{padding-left:14px;margin-top:12px}.filter-widget .count{color:var(--muted);font-size:11px}.filter-widget .current-cat>a{color:var(--wine);font-weight:600}.shop-sidebar .search-form{gap:4px}.shop-sidebar .search-form input{width:100%;font-size:12px}.shop-sidebar .search-form button{padding:10px;min-width:40px}.shop-sidebar .search-form button span{display:none}.woocommerce .widget_price_filter .ui-slider .ui-slider-handle,.woocommerce .widget_price_filter .ui-slider .ui-slider-range{background:var(--wine)}.woocommerce .widget_price_filter .price_slider_wrapper .ui-widget-content{background:var(--line)}
/* One product-card system shared by homepage, archives, related products and cross-sells. */
.woocommerce ul.products,.woocommerce-page ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:0 0 30px;padding:0}.woocommerce ul.products::before,.woocommerce ul.products::after,.woocommerce-page ul.products::before,.woocommerce-page ul.products::after{display:none}.woocommerce ul.products.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{float:none;width:auto!important;min-width:0;margin:0!important;position:relative;background:#faf8f3;border:1px solid #e7e0d6;border-radius:2px;overflow:hidden;padding-bottom:16px;display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s}.woocommerce ul.products li.product:hover{border-color:#bba488;box-shadow:0 5px 18px #321c1409}.woocommerce ul.products li.product a.woocommerce-loop-product__link{display:block;color:var(--ink)}.woocommerce ul.products li.product a img{width:100%;aspect-ratio:1.12;object-fit:contain;background:#eae5dc;margin:0 0 14px}.woocommerce ul.products li.product .woocommerce-loop-product__title{padding:0 17px;margin:0 0 7px;font-size:18px;line-height:1.25;color:var(--ink);font-weight:400}.woocommerce ul.products li.product .price{padding:0 17px;margin:7px 0 0;color:var(--ink);font-size:17px;font-weight:600;line-height:1.6}.woocommerce ul.products li.product .price del{font-size:13px;font-weight:400;opacity:.65;display:inline}.woocommerce ul.products li.product .price ins{text-decoration:none}.woocommerce ul.products li.product .product-card-description{padding:0 17px;font-size:12px;color:var(--muted);line-height:1.5;margin:0 0 8px}.woocommerce ul.products li.product .star-rating{margin:8px 17px;color:#946f33;font-size:11px}.woocommerce ul.products li.product .button{align-self:flex-start;margin:14px 17px 0;padding:8px 12px;font-size:11px;line-height:1.4;min-height:38px;background:transparent;border:1px solid var(--wine);color:var(--wine);border-radius:2px;font-weight:400}.woocommerce ul.products li.product .button:hover{background:var(--wine);color:white}.woocommerce ul.products li.product .added_to_cart{margin:5px 17px;font-size:12px;color:var(--wine)}.woocommerce span.onsale,.woocommerce ul.products li.product .onsale{top:12px;left:12px;right:auto;margin:0;min-width:0;min-height:0;line-height:1.4;padding:6px 10px;border-radius:2px;background:var(--wine);color:#fff;font-size:11px;font-weight:400;z-index:2}.woocommerce ul.products li.product.product-category h2{padding:10px 17px;font-size:21px}.woocommerce ul.products li.product.product-category mark{background:none;color:var(--muted)}.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:8px;justify-content:center}.woocommerce nav.woocommerce-pagination ul li{border:1px solid var(--line);float:none}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{padding:12px 16px;font-size:14px;min-height:42px}.woocommerce nav.woocommerce-pagination ul li span.current,.woocommerce nav.woocommerce-pagination ul li a:hover{background:var(--wine);color:white}
/* Product detail: retain all variation, stock, price and gallery behavior from WooCommerce. */
.woocommerce div.product{position:relative}.woocommerce div.product div.images{width:49%;margin-bottom:45px}.woocommerce div.product div.summary{width:45%;margin-bottom:40px}.woocommerce div.product .product_title{font-size:clamp(30px,3.4vw,48px);line-height:1.14;margin-bottom:18px}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--wine);font-size:27px;font-weight:400;margin:20px 0}.woocommerce div.product p.price ins{text-decoration:none}.woocommerce div.product p.price del{font-size:19px}.woocommerce-product-details__short-description{font-size:15px;line-height:1.8;color:var(--muted);border-top:1px solid var(--line);padding-top:22px;margin-top:22px}.woocommerce div.product .woocommerce-product-rating{font-size:12px}.woocommerce .star-rating{color:#997a41}.woocommerce div.product .stock{font-size:12px;color:#3a6741}.woocommerce div.product .out-of-stock{color:var(--wine)}.woocommerce div.product form.cart{margin-top:26px;margin-bottom:28px;display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}.woocommerce div.product form.cart .button{min-height:48px;border-radius:2px;padding:14px 24px}.woocommerce .quantity .qty{width:76px;min-height:48px;text-align:center;padding-inline:8px}.woocommerce div.product form.cart .variations{width:100%;margin-bottom:15px}.woocommerce div.product form.cart .variations th{padding:12px 15px 12px 0;text-align:left}.woocommerce div.product form.cart .variations td{padding-block:6px}.woocommerce div.product form.cart .variations select{width:100%;min-width:0}.woocommerce div.product form.cart .reset_variations{font-size:12px;text-decoration:underline}.single_variation_wrap{width:100%}.woocommerce-variation-add-to-cart{display:flex;gap:12px;flex-wrap:wrap}.woocommerce div.product .product_meta{border-top:1px solid var(--line);padding-top:18px;font-size:12px;color:var(--muted)}.woocommerce div.product .product_meta>span{display:block;margin-bottom:5px}.woocommerce div.product .product_meta a{color:var(--wine)}.woocommerce div.product div.images img{background:#ebe5dc}.woocommerce div.product div.images .flex-control-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.woocommerce div.product div.images .flex-control-thumbs li{width:auto;float:none}.woocommerce div.product .woocommerce-tabs{clear:both;padding-top:15px}.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;border-bottom:1px solid var(--line);display:flex;gap:28px;flex-wrap:wrap;margin-bottom:28px}.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}.woocommerce div.product .woocommerce-tabs ul.tabs li{margin:0;padding:0;background:transparent;border:0;border-radius:0}.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-weight:400;padding:14px 0;color:var(--muted)}.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:none;border-bottom:2px solid var(--wine)}.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--wine)}.woocommerce div.product .woocommerce-tabs .panel{margin-bottom:45px;max-width:920px;line-height:1.8}.woocommerce div.product .woocommerce-tabs .panel h2{font-size:28px}.woocommerce .related>h2,.woocommerce .upsells>h2,.woocommerce .cross-sells>h2{font-size:34px;font-style:italic;margin-bottom:25px}.woocommerce #reviews #comments ol.commentlist{padding:0}.woocommerce #reviews #comments ol.commentlist li .comment-text{border-color:var(--line);border-radius:2px}.woocommerce #review_form #respond textarea{min-height:140px}
/* Notices, forms and classic checkout. No payment scripts or endpoints replaced. */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{background:var(--wine);color:var(--paper);border:1px solid var(--wine);border-radius:2px;padding:12px 22px;font-weight:400;line-height:1.4;min-height:44px}.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{background:var(--wine);color:white}.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce #respond input#submit:hover{background:var(--wine-dark);color:white}.woocommerce button.button.alt.disabled,.woocommerce button.button.alt.disabled:hover{background:var(--wine);opacity:.5}.woocommerce .woocommerce-message,.woocommerce .woocommerce-info,.woocommerce .woocommerce-error{border-top:2px solid var(--wine);background:#eee8dd;color:var(--ink);font-size:14px;line-height:1.7}.woocommerce .woocommerce-message::before,.woocommerce .woocommerce-info::before{color:var(--wine)}.woocommerce .woocommerce-error{border-color:#a63831}.woocommerce form .form-row{padding:4px 0;margin-bottom:13px}.woocommerce form .form-row label{font-size:13px;margin-bottom:5px;line-height:1.6}.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{padding:12px;border:1px solid var(--line);background:#fffdfa;border-radius:2px;min-height:46px}.woocommerce .select2-container .select2-selection--single{height:46px;border:1px solid var(--line);border-radius:2px;background:#fffdfa}.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered{line-height:44px;padding-inline:12px}.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow{height:44px}.woocommerce table.shop_table{border:1px solid var(--line);border-radius:2px;border-collapse:collapse;background:#fffdfa;font-size:14px}.woocommerce table.shop_table td,.woocommerce table.shop_table th{padding:18px 16px;border-color:var(--line)}.woocommerce table.shop_table th{font-weight:500;background:#f0ebe2}.woocommerce table.shop_table img{width:80px;min-width:60px}.woocommerce table.shop_table a{color:var(--wine)}.woocommerce a.remove{color:var(--wine)!important;font-size:23px;line-height:1.2}.woocommerce a.remove:hover{background:var(--wine);color:white!important}.woocommerce-cart table.cart td.actions .coupon .input-text{min-width:190px;min-height:46px}.woocommerce .cart-collaterals .cart_totals{background:#eee8de;padding:28px;border:1px solid var(--line);width:46%;margin-top:20px}.woocommerce .cart-collaterals .cart_totals h2{font-size:30px}.woocommerce .cart-collaterals .cart_totals table{background:transparent;border:0}.woocommerce .cart-collaterals .cart_totals th{background:none}.woocommerce .cart-collaterals .cart_totals td,.woocommerce .cart-collaterals .cart_totals th{padding:15px 5px;font-size:13px}.woocommerce .wc-proceed-to-checkout{padding-bottom:0}.woocommerce .wc-proceed-to-checkout a.checkout-button{font-size:16px;margin-bottom:0}.woocommerce-checkout .woocommerce form.checkout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:0 45px;align-items:start}.woocommerce-checkout #customer_details{grid-row:1 / span 3;grid-column:1}.woocommerce-checkout #customer_details .col-1,.woocommerce-checkout #customer_details .col-2{width:100%;float:none}.woocommerce-checkout #customer_details .col-2{margin-top:25px}.woocommerce-checkout #order_review_heading,.woocommerce-checkout #order_review{grid-column:2}.woocommerce-checkout #order_review{padding:22px;background:#eee8de;border:1px solid var(--line)}.woocommerce-checkout #order_review table{background:transparent;border:0}.woocommerce-checkout #order_review table th{background:none}.woocommerce-checkout #payment{background:transparent;border-radius:0}.woocommerce-checkout #payment div.payment_box{background:#e0d6c8}.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:#e0d6c8}.woocommerce-checkout #payment ul.payment_methods{padding:0 0 20px;border-color:var(--line)}.woocommerce-checkout #payment .place-order{padding:20px 0 0}.woocommerce-checkout #place_order{width:100%;float:none}.woocommerce-checkout .woocommerce-privacy-policy-text{font-size:12px}.woocommerce-checkout .woocommerce form.checkout>p,.woocommerce-checkout .woocommerce form.checkout>.woocommerce-NoticeGroup{grid-column:1/-1}.woocommerce form.login,.woocommerce form.register,.woocommerce form.checkout_coupon{border-color:var(--line);border-radius:2px}.woocommerce-account .woocommerce-MyAccount-navigation{width:24%}.woocommerce-account .woocommerce-MyAccount-navigation ul{padding:0;margin:0;list-style:none;border:1px solid var(--line)}.woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:13px 20px;border-bottom:1px solid var(--line);text-decoration:none}.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--wine);color:white}.woocommerce-account .woocommerce-MyAccount-content{width:71%}.woocommerce ul.order_details{padding:0;margin:25px 0;display:flex;flex-wrap:wrap;gap:20px}.woocommerce ul.order_details li{float:none;margin:0;font-size:11px}.woocommerce ul.order_details li strong{font-size:15px}.woocommerce .woocommerce-customer-details address{border:1px solid var(--line);border-radius:2px;padding:20px}
/* Public block classes: keep block markup and Store API interactions intact. */
.wc-block-cart,.wc-block-checkout{--wc-blocks-accent-color:var(--wine);--wc-blocks-accent-color-rgb:84,29,33;--wc-blocks-text-color:var(--ink);--wc-blocks-secondary-text-color:var(--muted);--wc-blocks-border-color:var(--line);--wc-blocks-border-radius:2px;--wc-blocks-background-color:var(--paper);font-family:var(--sans)}.wc-block-components-button:not(.is-link){background:var(--wine);color:var(--paper);border:1px solid var(--wine);border-radius:2px;min-height:48px;text-decoration:none!important}.wc-block-components-button:not(.is-link):hover{background:var(--wine-dark);color:white}.wc-block-components-title,.wc-block-cart__totals-title{font-family:var(--serif)!important;font-weight:400!important;color:var(--wine);font-size:25px!important}.wc-block-components-sidebar{background:#eee8de;padding:22px!important;border:1px solid var(--line);border-radius:2px}.wc-block-components-product-name{font-family:var(--serif);font-size:18px!important;color:var(--wine);text-decoration:none!important}.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input,.wc-block-components-textarea{border-radius:2px!important;border-color:var(--line)!important;background:#fffdfa!important}.wc-block-components-text-input input{padding:1.5em .5em .5em!important;min-height:52px!important}.wc-block-components-quantity-selector{border-color:var(--line);border-radius:2px}.wc-block-components-quantity-selector input{background:transparent!important;min-height:0!important;padding:0!important}.wc-block-components-totals-wrapper{border-color:var(--line)}.wc-block-components-checkout-step__heading{margin-bottom:20px}.wc-block-cart-item__image img{background:#eae5dc}.wc-block-components-order-summary-item__quantity{background:var(--wine);color:white}.wc-block-components-notice-banner{border-radius:2px}.wc-block-components-radio-control-accordion-option{background:#fffdfa}.wc-block-components-checkout-place-order-button{width:100%}.wc-block-cart__empty-cart__title{font-size:36px}.wp-block-woocommerce-empty-cart-block{text-align:center;padding-block:25px}
@media(max-width:1100px){.catalog-layout{grid-template-columns:200px minmax(0,1fr);gap:25px}.woocommerce ul.products,.woocommerce-page ul.products{gap:16px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:16px;padding-inline:12px}.woocommerce ul.products li.product .product-card-description,.woocommerce ul.products li.product .price{padding-inline:12px}.woocommerce ul.products li.product .button{margin-inline:12px}.woocommerce-checkout .woocommerce form.checkout{gap:0 28px}}
@media(max-width:900px){.catalog-layout{grid-template-columns:1fr;gap:25px}.shop-sidebar{width:100%}.filter-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.filter-body>.search-form{grid-column:1/-1}.filter-widget{margin:0}.woocommerce ul.products.columns-4{grid-template-columns:repeat(2,minmax(0,1fr))}.woocommerce div.product div.images{width:48%}.woocommerce div.product div.summary{width:47%}.woocommerce div.product .product_title{font-size:32px}.woocommerce-checkout .woocommerce form.checkout{display:block}.woocommerce-checkout #order_review_heading{margin-top:35px}.woocommerce .cart-collaterals .cart_totals{width:100%}.woocommerce table.shop_table td,.woocommerce table.shop_table th{padding:14px 10px}.woocommerce .related ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.shop-main{padding-block:22px 40px}.woocommerce-products-header h1{font-size:36px}.woocommerce ul.products,.woocommerce-page ul.products,.woocommerce ul.products.columns-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.woocommerce ul.products li.product{padding-bottom:12px}.woocommerce ul.products li.product a img{aspect-ratio:1;margin-bottom:12px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:16px;padding-inline:10px}.woocommerce ul.products li.product .product-card-description{padding-inline:10px;font-size:11px}.woocommerce ul.products li.product .price{font-size:15px;padding-inline:10px}.woocommerce ul.products li.product .button{font-size:10px;padding:8px;margin:10px 10px 0}.woocommerce span.onsale,.woocommerce ul.products li.product .onsale{font-size:10px;top:7px;left:7px;padding:4px 7px}.woocommerce .woocommerce-result-count{float:none;margin-bottom:6px;padding:0}.woocommerce .woocommerce-ordering{float:none;margin-bottom:22px}.woocommerce .woocommerce-ordering select{max-width:100%;width:100%}.woocommerce div.product div.images,.woocommerce div.product div.summary{width:100%;float:none}.woocommerce div.product div.images{margin-bottom:28px}.woocommerce div.product .product_title{font-size:34px}.woocommerce div.product form.cart .button{padding-inline:18px}.woocommerce div.product .woocommerce-tabs ul.tabs{gap:16px}.woocommerce div.product .woocommerce-tabs ul.tabs li a{font-size:12px}.woocommerce .related>h2{font-size:30px}.woocommerce .cart-collaterals .cart_totals{padding:20px}.woocommerce table.shop_table_responsive tr td::before{padding-right:12px}.woocommerce table.shop_table_responsive tr td{min-height:48px;overflow-wrap:anywhere}.woocommerce-cart table.cart td.actions .coupon{display:flex;gap:8px}.woocommerce-cart table.cart td.actions .coupon .input-text{min-width:0;width:55%;margin:0}.woocommerce-cart table.cart td.actions .coupon .button{width:45%;font-size:11px;padding-inline:8px}.woocommerce table.shop_table .product-name{font-size:14px}.woocommerce-checkout #order_review{padding:15px}.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{float:none;width:100%}.woocommerce-account .woocommerce-MyAccount-content{margin-top:25px}.woocommerce ul.order_details{display:grid;grid-template-columns:1fr 1fr;gap:18px}.woocommerce ul.order_details li{border:0;padding:0}.wc-block-components-sidebar{padding:18px!important}.wc-block-cart,.wc-block-checkout{font-size:14px}.filter-body{display:block}.filter-widget{margin-top:20px}.woocommerce .woocommerce-message .button{float:none;display:table;margin-bottom:10px}}
