/* Native WooCommerce functionality, Art K’Ange editorial presentation. */
.ak-vat-notice{font-size:12px;line-height:1.7;color:var(--muted);margin:12px 0 24px}
.woocommerce.single-product .shop-page div.product .price:has(+.ak-vat-notice){margin-bottom:0}
.ak-order-summary table.shop_table .ak-vat-row td{font-size:12px;font-weight:400;text-align:left;padding:14px 0;color:var(--muted)}
.ak-commerce-heading{padding:40px 0 48px;max-width:900px}
.ak-commerce-heading h1{font:400 clamp(40px,5vw,68px)/1.12 var(--display);letter-spacing:-.04em;margin:20px 0}
.ak-commerce-heading>p:last-child:not(.eyebrow){color:var(--muted);max-width:58ch;margin:0}
.ak-purchase-steps{border-block:1px solid var(--line);margin-top:24px}
.ak-purchase-steps ol{list-style:none;display:flex;padding:0;margin:0;gap:40px}
.ak-purchase-steps li{display:flex;gap:12px;align-items:center;padding:18px 0;color:var(--muted);font-size:14px;border-bottom:2px solid transparent}
.ak-purchase-steps li[aria-current]{color:var(--blue-ink);border-bottom-color:var(--blue-ink)}
.ak-purchase-steps a{color:inherit;text-underline-offset:4px}
.ak-purchase-steps li>span:first-child{font-size:12px;letter-spacing:.08em}
.ak-checkout-page{padding-bottom:96px}
.single-product .commerce-shell{padding-top:32px}
.woocommerce.single-product .shop-page div.product{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px 7%;padding-top:20px}
.woocommerce.single-product .shop-page div.product div.images{grid-column:1;grid-row:1;border-radius:12px;overflow:hidden;background:#f7f8fa}
.woocommerce.single-product .shop-page div.product div.summary{grid-column:2;grid-row:1;padding:24px 0}
.woocommerce.single-product .shop-page div.product div.images img{max-height:720px;object-fit:contain;object-position:center}
.woocommerce.single-product .shop-page div.product div.images .woocommerce-product-gallery__wrapper{margin:0}
.woocommerce.single-product .shop-page div.product div.images .flex-control-thumbs{position:static;width:100%;flex-direction:row;padding:12px;gap:12px}
.woocommerce.single-product .shop-page div.product div.images .flex-control-thumbs li{width:72px}
.woocommerce.single-product .shop-page div.product .product_title{font:400 clamp(40px,4.5vw,64px)/1.12 var(--display);letter-spacing:-.04em;margin:24px 0}
.ak-product-category{display:flex;align-items:center;gap:12px;margin:0;font-size:14px}
.woocommerce.single-product .shop-page div.product p.price{font:400 30px/1.4 var(--font);color:var(--ink);margin:0 0 24px}
.woocommerce.single-product .shop-page .woocommerce-product-details__short-description{font-size:16px;line-height:1.9;color:var(--muted)}
.woocommerce.single-product .shop-page div.product .stock{display:inline-block;background:var(--surface);color:var(--blue-ink);padding:8px 14px;border-radius:4px;font-size:14px;margin:8px 0 24px}
.woocommerce.single-product .shop-page div.product .out-of-stock{color:#8d332e;background:#fff1ef}
.woocommerce.single-product .shop-page div.product form.cart{display:flex;flex-wrap:wrap;gap:12px;border:0;padding:0;margin:0 0 28px}
.woocommerce.single-product .shop-page div.product form.cart .single_add_to_cart_button{flex:1;justify-content:center;min-height:58px;font-size:16px}
.woocommerce.single-product .shop-page div.product form.cart .quantity{margin:0}
.woocommerce.single-product .shop-page div.product form.cart .quantity:has(input[type=hidden]){display:none}
.woocommerce.single-product .shop-page div.product form.variations_form{display:block}
.ak-product-help{border-top:1px solid var(--line);padding-top:24px;margin-top:12px}
.ak-product-help p{font-size:14px;color:var(--muted);margin:0 0 8px}
.ak-product-help .text-link{font-size:14px}
.ak-product-reference{color:var(--muted);font-size:12px;margin-top:24px}
.woocommerce.single-product .shop-page div.product .woocommerce-tabs ul.tabs{padding:0;display:flex;gap:24px;border-bottom:1px solid var(--line)}
.woocommerce.single-product .shop-page div.product .woocommerce-tabs ul.tabs::before,.woocommerce.single-product .shop-page div.product .woocommerce-tabs ul.tabs li::before,.woocommerce.single-product .shop-page div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce.single-product .shop-page div.product .woocommerce-tabs ul.tabs li{border:0;border-bottom:2px solid transparent;border-radius:0;background:none;padding:0;margin:0}
.woocommerce.single-product .shop-page div.product .woocommerce-tabs ul.tabs li.active{border-bottom-color:var(--blue-ink)}
.woocommerce.single-product .shop-page div.product .woocommerce-tabs ul.tabs li a{font-weight:400;padding:16px 0;color:var(--ink)}
.woocommerce.single-product .shop-page div.product .woocommerce-tabs .panel{max-width:780px;padding:16px 0;line-height:1.9;color:var(--muted)}
.woocommerce.single-product .shop-page div.product .woocommerce-tabs h2,.woocommerce.single-product .shop-page .related>h2{font:400 36px/1.25 var(--display);color:var(--ink);margin:0 0 24px}
.woocommerce.single-product .shop-page .related{padding-top:40px;border-top:1px solid var(--line)}
/* A clear selection and summary, without replacing native cart forms or nonces. */
.ak-cart-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:40px;align-items:start}
.ak-cart-layout .woocommerce-cart-form{min-width:0}
.ak-cart-layout>.woocommerce-notices-wrapper,.ak-cart-layout>.woocommerce-error,.ak-cart-layout>.woocommerce-message,.ak-cart-layout>.woocommerce-info{grid-column:1/-1}
.ak-cart-layout .cart-collaterals{min-width:0}
.ak-cart-layout .cart-collaterals .cart_totals{float:none;width:100%;padding:28px;background:var(--surface);border-radius:10px}
.ak-cart-layout .cart_totals h2{font:400 32px/1.2 var(--display);margin:0 0 24px}
.cart-page .woocommerce table.shop_table th{font-size:13px;font-weight:500;color:var(--muted)}
.cart-page .woocommerce table.shop_table td{font-size:14px;padding:20px 10px}
.cart-page .woocommerce table.shop_table th{padding:14px 10px}
.cart-page .woocommerce table.cart .product-quantity{display:table-cell;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;text-align:left}
.ak-single-quantity{display:inline-flex;flex-direction:column;gap:3px;font-size:16px;color:var(--ink)}
.ak-single-quantity small{font-size:12px;color:var(--muted);white-space:nowrap}
.cart-page .woocommerce button.button:disabled,.cart-page .woocommerce button.button:disabled[disabled],.cart-page .woocommerce button.button:disabled:hover{opacity:1;background:#eef0f3;color:#59616e;border:1px solid #cbd0d8;box-shadow:none;cursor:not-allowed}
.ak-cart-update-hint{display:none;clear:both;padding-top:10px;margin:0;font-size:12px;line-height:1.6;color:#59616e}
.actions:has(button[name=update_cart]:disabled) .ak-cart-update-hint{display:block}
.cart-page .woocommerce table.cart .product-thumbnail img{width:88px;height:104px;max-width:none;object-fit:contain;background:#f7f8fa;border-radius:5px}
.cart-page .woocommerce .product-name a{font:400 24px/1.25 var(--display);text-decoration:none;color:var(--ink)}
.cart-page .woocommerce a.remove{width:32px;height:32px;display:grid;place-items:center;color:var(--muted)!important;font-weight:400}
.cart-page .woocommerce a.remove:hover{background:#fff1ef;color:#8d332e!important}
.cart-page .woocommerce .cart_totals td,.cart-page .woocommerce .cart_totals th{padding:16px 0}
.cart-page .woocommerce .cart_totals .order-total{font-size:20px;color:var(--ink)}
.ak-back-to-shop{font-size:14px;margin:20px 0}
.cart-page .woocommerce .wc-proceed-to-checkout{padding:20px 0 0}
.cart-page .woocommerce .wc-proceed-to-checkout a.checkout-button{display:flex;justify-content:center;font-size:15px;margin:0;padding:18px 16px}
/* Checkout stays a single, accessible WooCommerce form, with its AJAX review intact. */
.ak-checkout-page form.checkout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,1fr);gap:56px;align-items:start}
.ak-checkout-page #customer_details{width:100%;min-width:0}
.ak-checkout-page #customer_details .col-1,.ak-checkout-page #customer_details .col-2{float:none;width:100%}
.ak-checkout-page #customer_details h3{font:400 32px/1.25 var(--display);margin:0 0 28px;color:var(--ink)}
.ak-checkout-page .woocommerce-additional-fields{margin-top:36px}
.ak-checkout-page #ship-to-different-address{font:400 16px/1.5 var(--font)!important;margin:24px 0!important}
.ak-checkout-page .form-row{padding:0;margin:0 0 20px}
.ak-checkout-page .form-row label{font-size:14px;font-weight:400;margin-bottom:8px;color:var(--ink)}
.ak-checkout-page .form-row .optional{color:var(--muted);font-size:12px}
.ak-checkout-page .input-text,.ak-checkout-page select,.ak-checkout-page textarea,.cart-page .woocommerce .quantity input{border:1px solid #bdc7d7;border-radius:6px;background:#fff;padding:13px 14px;min-height:48px;color:var(--ink);font:400 16px/1.5 var(--font);width:100%}
.ak-checkout-page textarea{min-height:120px;resize:vertical}
.ak-checkout-page .select2-container .select2-selection--single{height:50px;border:1px solid #bdc7d7;border-radius:6px;background:white}
.ak-checkout-page .select2-container .select2-selection__rendered{line-height:48px;padding-left:14px;color:var(--ink)}
.ak-checkout-page .select2-container .select2-selection__arrow{height:48px}
.ak-checkout-page .form-row.woocommerce-invalid input{border:2px solid #a7352c}
.ak-order-summary{background:var(--surface);padding:32px;border-radius:10px;min-width:0}
.ak-order-summary #order_review_heading{font:400 32px/1.25 var(--display);margin:0 0 24px}
.ak-order-summary table.shop_table{border:0;border-collapse:collapse;margin:0 0 24px;border-radius:0}
.ak-order-summary table.shop_table th,.ak-order-summary table.shop_table td{padding:16px 0;border-bottom:1px solid #aec1df;font-size:14px;border-top:0}
.ak-order-summary table.shop_table td:last-child,.ak-order-summary table.shop_table th:last-child{text-align:right;padding-left:16px}
.ak-order-summary table.shop_table .order-total{font-size:20px}
.ak-order-summary #payment{background:transparent;border-radius:0}
.ak-order-summary #payment ul.payment_methods{padding:0 0 20px;border-color:#aec1df}
.ak-order-summary #payment div.form-row{padding:16px 0 0;margin:0}
.ak-order-summary #payment div.payment_box{background:#fff;border-radius:6px}
.ak-order-summary #payment div.payment_box::before{border-bottom-color:#fff}
.woocommerce .ak-order-summary #payment #place_order{float:none;width:100%;justify-content:center;font-size:15px;min-height:56px;margin-top:16px;background:var(--blue-ink);color:#fff;border:1px solid var(--blue-ink);border-radius:5px}
.woocommerce .ak-order-summary #payment #place_order:hover{background:#1747a8}
.woocommerce .ak-checkout-page .form-row input.input-text,.ak-checkout-page .woocommerce .form-row input.input-text{border:1px solid #bdc7d7;border-radius:6px;padding:13px 14px;font:400 16px/1.5 var(--font)}
.ak-checkout-page .woocommerce .form-row.woocommerce-invalid input.input-text{border:2px solid #a7352c}
.ak-order-summary .woocommerce-privacy-policy-text{font-size:12px;line-height:1.75;color:var(--muted)}
.ak-checkout-help{margin:32px 0 0;font-size:14px;color:var(--muted)}
.ak-checkout-help a{color:var(--blue-ink);text-underline-offset:4px}
/* Shared interaction and validation states. */
:is(.single-product,.woocommerce-cart,.woocommerce-checkout) .woocommerce-message,:is(.single-product,.woocommerce-cart,.woocommerce-checkout) .woocommerce-info{border-top-color:var(--blue-ink);background:var(--surface);color:var(--ink);border-radius:6px;font-size:14px;line-height:1.8}
:is(.single-product,.woocommerce-cart,.woocommerce-checkout) .woocommerce-error{background:#fff3f1;border-top-color:#a7352c;color:#79251e;border-radius:6px;font-size:14px}
:is(.single-product,.woocommerce-cart,.woocommerce-checkout) .woocommerce-message::before,:is(.single-product,.woocommerce-cart,.woocommerce-checkout) .woocommerce-info::before{color:var(--blue-ink)}
:is(.single-product,.woocommerce-cart,.woocommerce-checkout) .woocommerce .button,.woocommerce.single-product .shop-page .button{background:var(--blue-ink);color:#fff;border:1px solid var(--blue-ink);border-radius:5px;font:400 15px/1.5 var(--font);padding:14px 22px;min-height:48px;transition:background .2s,color .2s}
:is(.single-product,.woocommerce-cart,.woocommerce-checkout) .woocommerce .button:hover,.woocommerce.single-product .shop-page .button:hover{background:#1747a8;color:#fff}
:is(.single-product,.woocommerce-cart,.woocommerce-checkout) .button:disabled{opacity:.5;cursor:not-allowed}
:is(.single-product,.woocommerce-cart,.woocommerce-checkout) :is(a,button,input,select,textarea):focus-visible{outline:3px solid var(--blue-ink);outline-offset:3px}
.ak-checkout-page .woocommerce-order{padding:32px;background:var(--surface);border-radius:10px}
.ak-checkout-page .woocommerce-order h2{font:400 32px/1.2 var(--display);margin:32px 0 20px}
.ak-checkout-page .woocommerce-customer-details address{background:#fff;border:0;border-radius:8px;padding:24px}
@media(max-width:1100px){.ak-cart-layout{grid-template-columns:1fr;gap:32px}.ak-cart-layout .cart-collaterals{max-width:600px;width:100%;justify-self:end}.ak-checkout-page form.checkout{gap:32px;grid-template-columns:minmax(0,1fr) minmax(300px,.9fr)}.ak-order-summary{padding:24px}.woocommerce.single-product .shop-page div.product{gap:40px}.woocommerce.single-product .shop-page div.product div.summary{padding:0}}
@media(max-width:767px){
 .ak-purchase-steps ol{gap:14px;justify-content:space-between}.ak-purchase-steps li{font-size:11px;gap:6px;align-items:flex-start}.ak-purchase-steps li>span:first-child{font-size:10px}.ak-purchase-steps li>span:last-child{max-width:14ch}
 .ak-commerce-heading{padding:28px 0 32px}.ak-commerce-heading h1{font-size:40px}.ak-commerce-heading>p:last-child:not(.eyebrow){font-size:14px}
 .woocommerce.single-product .shop-page div.product{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:0}.woocommerce.single-product .shop-page div.product div.summary{grid-column:1;grid-row:2}.woocommerce.single-product .shop-page div.product div.images img{max-height:520px}.woocommerce.single-product .shop-page div.product .product_title{font-size:42px}.woocommerce.single-product .shop-page div.product p.price{font-size:26px}
 .woocommerce.single-product .shop-page div.product .woocommerce-tabs ul.tabs{gap:16px;font-size:13px;flex-wrap:wrap}
 .ak-checkout-page form.checkout{display:block}.ak-order-summary{margin-top:32px;padding:24px 20px}.ak-checkout-page .woocommerce .form-row-first,.ak-checkout-page .woocommerce .form-row-last{float:none;width:100%}.ak-checkout-page #customer_details h3,.ak-order-summary #order_review_heading{font-size:28px}
 .cart-page .woocommerce table.cart tr.cart_item{background:#fff;border-bottom:1px solid var(--line);padding:16px 0;display:block}.cart-page .woocommerce table.cart td{background:none;border:0;padding:10px 0}.cart-page .woocommerce table.cart td.product-quantity{display:block;text-align:right}.cart-page .woocommerce table.cart td.product-thumbnail{display:block!important;text-align:left!important}.cart-page .woocommerce table.cart td.product-thumbnail::before{display:none}.cart-page .woocommerce table.cart td.product-remove{position:relative;float:right}.cart-page .woocommerce table.cart td.product-name{clear:both}.cart-page .woocommerce table.cart td.product-name::before{display:none}.cart-page .woocommerce table.cart td.product-name{text-align:left!important}.ak-cart-layout .cart-collaterals{max-width:none}.ak-cart-layout .cart-collaterals .cart_totals{padding:24px 20px}
 .ak-checkout-page .woocommerce-order{padding:24px 16px}.ak-checkout-page .woocommerce-order-overview li{float:none;width:100%;border:0;padding:12px 0;margin:0}.ak-checkout-page{padding-bottom:64px}
}
@media(prefers-reduced-motion:reduce){:is(.single-product,.woocommerce-cart,.woocommerce-checkout) .button{transition:none}}
