.aco{--ink:var(--artisans-green, #173b32);--muted:#626b65;--line:#d8d2c6;--gold:var(--artisans-gold, #c1ab7a);max-width:1280px;margin:0 auto;padding:28px 28px 64px;color:var(--ink);font:400 15px/1.65 Mulish,sans-serif;min-height:48vh}
.aco *{box-sizing:border-box}.aco a{color:var(--ink)}.aco a:hover{color:#8b6b2f}.aco-breadcrumb{display:flex;gap:10px;color:var(--muted);font-size:12px;margin-bottom:34px}.aco-breadcrumb a{text-decoration:none}.aco-intro{margin-bottom:28px}.aco .aco-eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:11px;color:#817966;margin:0 0 12px}.aco h1{font:400 clamp(28px,3vw,40px)/1.2 Mulish,sans-serif;margin:0 0 12px;color:var(--ink)}.aco-intro>p:last-child{margin:0;color:var(--muted)}.aco h2,.aco h3{font-family:Mulish,sans-serif;color:var(--ink);font-weight:500;line-height:1.35}.aco h2{font-size:23px}.aco h3{font-size:20px}.aco-steps{list-style:none;padding:0 0 20px;margin:0 0 32px;display:flex;gap:36px;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}.aco-steps li{display:flex;align-items:center;gap:9px}.aco-steps li>span{border:1px solid var(--line);border-radius:50%;width:27px;height:27px;display:grid;place-items:center;font-size:12px}.aco-steps [aria-current]{color:var(--ink);font-weight:700}.aco-steps [aria-current]>span{background:var(--ink);border-color:var(--ink);color:white}.aco-steps a{text-decoration:none}
.aco .woocommerce table.shop_table{border:1px solid var(--line);border-radius:2px;border-collapse:collapse;background:#fff;font-size:14px}.aco .woocommerce table.shop_table th{font-weight:600;background:#f0eee9}.aco .woocommerce table.shop_table th,.aco .woocommerce table.shop_table td{padding:14px 13px;border-color:var(--line);vertical-align:middle}.aco .woocommerce table.shop_table a{text-decoration:none}.aco .woocommerce table.shop_table .product-name{line-height:1.5}.aco .woocommerce table.shop_table .product-thumbnail img{width:78px;max-width:78px;max-height:100px;object-fit:contain}.aco .woocommerce table.shop_table .product-subtotal{white-space:nowrap}.aco .woocommerce a.remove{color:var(--muted)!important;font-weight:400;font-size:23px;width:30px;height:30px}.aco .woocommerce a.remove:hover{background:#eeeae1;color:var(--ink)!important}.aco .woocommerce dl.variation{font-size:12px;color:var(--muted);margin-top:10px}.aco .woocommerce dl.variation dt,.aco .woocommerce dl.variation dd{padding:0;margin-bottom:5px}.aco .woocommerce dl.variation dt{font-weight:500}.aco .woocommerce dl.variation dd p{margin:0}
.aco .woocommerce a.button,.aco .woocommerce button.button,.aco .woocommerce input.button{font:600 14px/1.4 Mulish,sans-serif;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:2px;padding:14px 20px;text-align:center;min-height:48px;box-shadow:none}.aco .woocommerce a.button:hover,.aco .woocommerce button.button:hover,.aco .woocommerce input.button:hover{background:var(--artisans-green-hover, #102c25);border-color:var(--artisans-green-hover, #102c25);color:#fff}.aco .woocommerce button.button:disabled{opacity:.5;cursor:not-allowed}.aco .woocommerce .actions .button{float:right;background:transparent;color:var(--ink);border-color:var(--gold)}.aco .woocommerce a:focus-visible,.aco button:focus-visible,.aco input:focus-visible,.aco select:focus-visible,.aco textarea:focus-visible{outline:2px solid var(--artisans-focus-gold, #79643e);outline-offset:3px}
.aco .quantity{display:inline-flex;align-items:center;border:1px solid var(--gold);background:#fff;max-width:140px;border-radius:2px}.aco .quantity .qty{border:0!important;border-radius:0;width:43px;padding:10px 2px;min-height:44px;font:400 16px Mulish,sans-serif;text-align:center;color:var(--ink);appearance:textfield;-moz-appearance:textfield}.aco .quantity .qty::-webkit-inner-spin-button,.aco .quantity .qty::-webkit-outer-spin-button{appearance:none;margin:0}.aco .aco-qty-button{border:0;background:transparent;color:var(--ink);min-width:36px;min-height:44px;padding:0;font:400 22px Mulish,sans-serif}.aco .aco-qty-button:hover{background:#f2f0e9;color:var(--ink)}.aco .woocommerce-cart-form .product-quantity{min-width:144px}
.aco-cart .cart-collaterals{display:flex;justify-content:flex-end}.aco .cart-collaterals .cart_totals{float:none;width:430px;max-width:100%;margin-top:20px}.aco .cart_totals>h2{margin-top:0}.aco .cart_totals .order-total{font-size:18px}.aco .wc-proceed-to-checkout a.checkout-button{display:block;margin:0}.aco .woocommerce-shipping-methods{font-size:13px}.aco .woocommerce-shipping-methods li{text-align:left}.aco .woocommerce-shipping-methods label{display:inline}.aco .woocommerce-shipping-destination{font-size:12px;color:var(--muted)}.aco .woocommerce-message,.aco .woocommerce-info,.aco .woocommerce-error{background:#eeefe9;border:0;border-left:3px solid var(--gold);color:var(--ink);border-radius:2px}.aco .woocommerce-message:before,.aco .woocommerce-info:before{color:var(--ink)}.aco .return-to-shop{margin:25px 0 50px}
.aco .woocommerce form .form-row{padding:0;margin-bottom:18px}.aco .woocommerce form .form-row label{font-size:14px;line-height:1.5;margin:0 0 7px}.aco .woocommerce form .form-row input.input-text,.aco .woocommerce form .form-row textarea,.aco .woocommerce select{font:400 16px/1.5 Mulish,sans-serif;min-height:47px;border:1px solid #bdbbae;border-radius:2px;background:white;color:var(--ink);padding:10px 12px;box-shadow:none}.aco .select2-container .select2-selection--single{height:47px;border:1px solid #bdbbae;border-radius:2px}.aco .select2-container .select2-selection__rendered{padding:8px 12px;line-height:29px}.aco .select2-container .select2-selection__arrow{height:45px}.aco input[type=checkbox],.aco input[type=radio]{accent-color:var(--ink)}
.aco-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:0 52px;align-items:start}.aco-checkout #customer_details{grid-column:1;grid-row:1 / span 3;float:none;width:100%}.aco-checkout #customer_details .col-1,.aco-checkout #customer_details .col-2{float:none;width:100%}.aco-checkout #order_review_heading{grid-column:2;margin:0 0 18px}.aco-checkout #order_review{grid-column:2;min-width:0}.aco-checkout .woocommerce-billing-fields h3{margin-top:0}.aco-checkout #ship-to-different-address{font-size:16px;margin:22px 0}.aco-checkout #payment{background:#eeefe9;border:1px solid var(--line);border-radius:2px}.aco-checkout #payment ul.payment_methods{padding:18px;border-color:var(--line)}.aco-checkout #payment ul.payment_methods label{font-weight:500}.aco-checkout #payment .payment_box{background:#fff}.aco-checkout #payment .payment_box:before{border-bottom-color:#fff}.aco-checkout #payment .place-order{padding:18px;margin:0}.aco-checkout #place_order{width:100%;float:none;font-size:15px;margin-top:12px}.aco-checkout .woocommerce-privacy-policy-text,.aco-checkout .woocommerce-terms-and-conditions-wrapper{font-size:12px}.aco .woocommerce-order-overview{display:flex;flex-wrap:wrap;gap:18px;padding:22px!important;background:#eeefe9;margin:0 0 30px!important}.aco .woocommerce ul.order_details li{float:none;margin:0;padding-right:20px;line-height:1.7}.aco .woocommerce ul.order_details li strong{font-size:17px}.aco .woocommerce-customer-details address{border:1px solid var(--line);padding:18px;box-shadow:none}.aco-help{border-top:1px solid var(--line);margin:30px 0 0;padding-top:20px}
.aco-account .woocommerce form.login,.aco-account .woocommerce form.lost_reset_password{max-width:560px;background:#fff;border:1px solid var(--line);padding:28px;border-radius:2px}.aco-account .woocommerce-MyAccount-navigation{width:23%;border:1px solid var(--line);background:#fff}.aco-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}.aco-account .woocommerce-MyAccount-navigation a{display:block;padding:12px 16px;text-decoration:none;border-bottom:1px solid var(--line)}.aco-account .woocommerce-MyAccount-navigation .is-active a{background:#eeefe9}.aco-account .woocommerce-MyAccount-content{width:72%}.aco-service{border-top:1px solid var(--line);padding-top:23px;margin-top:40px;display:flex;justify-content:space-between;gap:20px;font-size:13px}.aco-service p{margin:0;color:var(--muted)}
@media(max-width:900px){.aco-checkout form.checkout{gap:0 28px}.aco .woocommerce table.shop_table th,.aco .woocommerce table.shop_table td{padding:12px 9px}.aco .woocommerce table.shop_table .product-thumbnail img{width:55px;max-width:55px}}
@media(max-width:767px){.aco{padding:20px 16px 38px}.aco-breadcrumb{margin-bottom:25px}.aco-intro{margin-bottom:22px}.aco-intro>p:last-child{font-size:14px}.aco-steps{gap:18px;justify-content:space-between;font-size:11px;margin-bottom:25px}.aco-steps li{gap:6px}.aco-steps li>span{width:23px;height:23px}.aco-checkout form.checkout{display:block}.aco-checkout #order_review_heading{margin-top:30px}.aco .woocommerce-cart-form table.shop_table{border:0;background:none}.aco .woocommerce-cart-form table thead{display:none}.aco .woocommerce-cart-form tr.cart_item{display:grid;grid-template-columns:78px minmax(0,1fr);position:relative;background:#fff;border:1px solid var(--line);margin-bottom:15px;padding:14px;gap:10px 14px}.aco .woocommerce-cart-form tr.cart_item td{border:0;padding:0;background:transparent!important;text-align:left!important;min-width:0}.aco .woocommerce-cart-form tr.cart_item td:before{font-weight:400;font-size:12px;color:var(--muted)}.aco .woocommerce-cart-form .product-remove{position:absolute;right:7px;top:7px}.aco .woocommerce-cart-form .product-thumbnail{display:block!important;grid-column:1;grid-row:1 / span 2}.aco .woocommerce-cart-form .product-thumbnail:before,.aco .woocommerce-cart-form .product-name:before,.aco .woocommerce-cart-form .product-remove:before{display:none}.aco .woocommerce-cart-form .product-thumbnail img{width:78px!important;max-width:78px!important;height:110px;max-height:110px!important;object-fit:contain}.aco .woocommerce-cart-form .product-name{grid-column:2;padding-right:21px!important;font-size:15px}.aco .woocommerce-cart-form .product-price{grid-column:2;display:flex;justify-content:space-between;gap:10px}.aco .woocommerce-cart-form .product-quantity{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line)!important;padding-top:12px!important}.aco .woocommerce-cart-form .product-subtotal{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;font-size:16px}.aco .woocommerce-cart-form td.actions{background:none!important;padding:0!important;border:0!important}.aco .woocommerce .actions .button{width:100%}.aco .cart-collaterals .cart_totals{width:100%;margin-top:24px}.aco .woocommerce table.shop_table_responsive tr:nth-child(2n) td{background:transparent}.aco .woocommerce table.shop_table_responsive td:before{font-weight:500}.aco .cart_totals td{text-align:right}.aco .cart_totals tr.shipping td{font-size:13px}.aco .aco-service{display:block;margin-top:30px}.aco-service p{margin-top:14px}.aco-account .woocommerce-MyAccount-navigation,.aco-account .woocommerce-MyAccount-content{width:100%;float:none}.aco-account .woocommerce-MyAccount-navigation{margin-bottom:25px}.aco-account .woocommerce form.login{padding:20px}.aco .woocommerce ul.order_details li{width:calc(50% - 9px);border:0;padding:0;font-size:10px}.aco .woocommerce ul.order_details li strong{font-size:15px}}
body.artisans-commerce-live{background:#f7f6f4}.aco .woocommerce .cart_item dl.variation{text-align:left!important}.aco .woocommerce .cart_item dl.variation dt{float:none;display:block;margin:8px 0 0;text-align:left!important}.aco .woocommerce .cart_item dl.variation dd{float:none;display:block;margin:0;text-align:left!important}.aco .woocommerce-cart-form table.shop_table th,.aco .woocommerce-cart-form table.shop_table td{border-left:0;border-right:0}.aco .woocommerce-cart-form td.product-name{width:40%}@media(max-width:767px){.aco .woocommerce-cart-form td.product-name{width:auto}.aco .woocommerce .cart_item dl.variation{font-size:12px;line-height:1.6}}

@media(max-width:360px){.aco-steps{gap:6px;font-size:10px}.aco-steps li{gap:4px;min-width:0}.aco-steps li>span{width:20px;height:20px;flex-shrink:0;font-size:10px}.aco .woocommerce-cart-form tr.cart_item{grid-template-columns:64px minmax(0,1fr);gap:10px}.aco .woocommerce-cart-form .product-thumbnail img{width:64px!important;max-width:64px!important}}


/* Comfortable touch targets for cart and checkout, including narrow screens. */
.aco .aco-qty-button{min-width:44px}
.aco .woocommerce a.remove{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center}
.aco input[type=checkbox],.aco input[type=radio]{width:20px;height:20px;flex-shrink:0;vertical-align:middle}
.aco .woocommerce-shipping-methods li:has(input[type=radio]){display:grid;grid-template-columns:20px minmax(0,1fr);column-gap:10px;align-items:start}
.aco .woocommerce-shipping-methods li input[type=radio]{margin:12px 0 0!important}
.aco .woocommerce-shipping-methods li:has(input[type=radio]) label{display:block;min-height:44px;padding:11px 0;line-height:22px;cursor:pointer}
.aco-checkout #payment ul.payment_methods>li{position:relative}
.aco-checkout #payment ul.payment_methods>li>input[type=radio]{position:absolute;left:0;top:14px;margin:0}
.aco-checkout #payment ul.payment_methods>li>label{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:48px;padding:8px 0 8px 32px;cursor:pointer}
.aco-checkout #payment ul.payment_methods>li>label img{float:none;margin-left:auto;max-height:28px;width:auto}
.aco-checkout #ship-to-different-address label{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}
.aco-checkout #ship-to-different-address input{margin:0}
.aco-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-form__label-for-checkbox{display:flex;align-items:flex-start;gap:10px;min-height:44px;cursor:pointer}
.aco-checkout .woocommerce-terms-and-conditions-wrapper input[type=checkbox]{position:static;margin:2px 0 0}
@media(max-width:767px){.aco .woocommerce-cart-form .product-name{padding-right:36px!important}.aco-checkout #payment ul.payment_methods{padding:14px}.aco-checkout #payment .place-order{padding:14px}}

/* Mobile checkout: keep names, options and shipping choices readable and tappable. */
.aco .yith-wapo-edit-product-cart { display:inline-flex; align-items:center; min-height:44px; cursor:pointer; text-decoration:underline!important; text-underline-offset:3px; }
.aco .quantity .qty { min-width:44px; }
@media(max-width:767px) {
 .aco .woocommerce-cart-form tr.cart_item { --aco-photo-offset:92px; }
 .aco .woocommerce-cart-form td.product-name { padding-right:0!important; }
 .aco .woocommerce-cart-form td.product-name > a:first-child { display:block; min-height:80px; padding-right:36px; overflow-wrap:anywhere; }
 .aco .woocommerce-cart-form .yith-wapo-edit-addons-link { min-height:44px; }
 .aco .woocommerce-cart-form td.product-name dl.variation { width:calc(100% + var(--aco-photo-offset)); margin:14px 0 0 calc(-1 * var(--aco-photo-offset)); overflow-wrap:anywhere; }
 .aco .woocommerce-cart-form td.product-name dl.variation dt { margin-top:10px; }
 .aco .woocommerce-cart-form .product-price { grid-column:1 / -1; }
 .aco .woocommerce-cart-form .product-thumbnail { grid-row:1; }
 .aco-checkout .woocommerce form .form-row-first,
 .aco-checkout .woocommerce form .form-row-last { width:100%; float:none; }
}
@media(max-width:1024px) {
 .aco-checkout .woocommerce-checkout-review-order-table,
 .aco-checkout .woocommerce-checkout-review-order-table :is(thead,tbody,tfoot) { display:block; width:100%; }
 .aco-checkout .woocommerce-checkout-review-order-table tr { display:grid; grid-template-columns:minmax(0,1fr) 90px; }
 .aco-checkout .woocommerce-checkout-review-order-table :is(th,td) { display:block; min-width:0; width:auto; overflow-wrap:anywhere; }
 .aco-checkout .woocommerce-checkout-review-order-table :is(thead,tbody) tr > :last-child { text-align:right; }
 .aco-checkout .woocommerce-checkout-review-order-table tfoot tr { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 .aco-checkout .woocommerce-checkout-review-order-table tfoot tr > td { text-align:right; }
 .aco-checkout .woocommerce-checkout-review-order-table tfoot tr.shipping { display:block; }
 .aco-checkout .woocommerce-checkout-review-order-table tr.shipping :is(th,td) { width:100%; text-align:left; }
 .aco-checkout .woocommerce-checkout-review-order-table tr.shipping th { padding-bottom:0; }
 .aco .cart_totals tr.shipping td:before { display:block; float:none; text-align:left; margin-bottom:10px; }
 .aco .woocommerce-shipping-methods { width:100%; margin-bottom:0!important; }
 .aco .shipping-calculator-button { display:inline-flex; align-items:center; min-height:44px; }
}
@media(max-width:360px) {
 .aco .woocommerce-cart-form tr.cart_item { --aco-photo-offset:74px; }
}

/* Keep a payment logo beside its label, also when the name wraps. */
.aco-checkout #payment ul.payment_methods>li>label { display:grid; grid-template-columns:minmax(0,1fr) auto; }
@media(min-width:768px) and (max-width:900px) {
 .aco-checkout form.checkout { display:block; }
 .aco-checkout #order_review_heading { margin-top:30px; }
}
