/* Shared visual layer. Never hides unavailable-method notices, terms or gateway fields. */
:root{--np-ink:#20375e;--np-muted:#596b80;--np-border:#dbe2eb;--np-soft:#f5f7fa;--np-accent:#b32627;--np-radius:14px}
.woocommerce a.button.add_to_cart_button,.woocommerce button.single_add_to_cart_button,.woocommerce ul.products li.product .quick-cart .button,.woocommerce .wc-proceed-to-checkout .checkout-button,.woocommerce #place_order{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;border:1px solid transparent;border-radius:10px;background:var(--np-accent);color:#fff;font-weight:700;line-height:1.35;text-align:center;text-decoration:none;box-shadow:0 3px 8px #711a1512;white-space:normal;transition:background .16s,box-shadow .16s}
.woocommerce a.button.add_to_cart_button:hover,.woocommerce button.single_add_to_cart_button:hover,.woocommerce ul.products li.product .quick-cart .button:hover,.woocommerce #place_order:hover{background:#922022;box-shadow:0 5px 12px #711a1520}
.woocommerce ul.products li.product .quick-cart{gap:8px;flex-wrap:wrap;align-items:stretch}
.woocommerce ul.products li.product .quick-cart .quantity-control{height:48px;flex:0 0 110px;border:1px solid var(--np-border);border-radius:10px;overflow:hidden;background:white}
.woocommerce ul.products li.product .quick-cart .quantity-control button{width:34px;flex:0 0 34px;background:var(--np-soft);font-size:19px}
.woocommerce ul.products li.product .quick-cart .quantity-control input.qty{width:40px!important;flex:1;color:var(--np-ink);font-weight:600;font-size:16px}
.woocommerce ul.products li.product .quick-cart .button{flex:1 1 120px;padding:11px 12px!important;font-size:14px;min-width:0;height:auto;min-height:48px;line-height:1.35}
.woocommerce .quantity input.qty{min-height:48px;border-radius:8px}
.woocommerce .single_add_to_cart_button{padding:14px 24px!important;font-size:16px}
.woocommerce .added_to_cart{padding:10px 4px;font-weight:600;text-underline-offset:4px}
.woocommerce :is(.button,.quantity-control button,input,select,textarea):focus-visible{outline:3px solid #446eb3;outline-offset:3px}
.woocommerce .button:disabled,.woocommerce .button.disabled{opacity:.55;cursor:not-allowed}
/* Cart retains native line items, totals and AJAX form. */
.woocommerce-cart .neopak-cart-layout{gap:28px}
.woocommerce-cart .neopak-cart-layout .woocommerce-cart-form{border:1px solid var(--np-border);border-radius:var(--np-radius);overflow:hidden;background:#fff}
.woocommerce-cart .neopak-cart-layout .cart_totals{border:1px solid var(--np-border);border-radius:var(--np-radius);padding:24px;background:var(--np-soft);box-shadow:0 8px 30px #20375e07}
.woocommerce-cart .neopak-cart-layout .cart_totals h2{font-family:var(--body-font),sans-serif;font-size:23px;text-transform:none;letter-spacing:-.3px}
.woocommerce-cart .neopak-cart-layout .checkout-button{min-height:54px;border-radius:10px;font-size:16px}
.woocommerce-cart .neopak-cart-layout .shop_table{border:0;margin:0}
.woocommerce-cart .neopak-cart-layout .cart_totals .shop_table{margin-bottom:20px;background:transparent}
.woocommerce-cart .neopak-cart-layout .cart_totals th{background:transparent}
.woocommerce-cart .neopak-cart-layout .cart_totals table.shop_table th,.woocommerce-cart .neopak-cart-layout .cart_totals table.shop_table td{border:0;border-bottom:1px solid var(--np-border);background:transparent}
.woocommerce-cart .neopak-cart-layout .cart_totals table.shop_table .order-total th,.woocommerce-cart .neopak-cart-layout .cart_totals table.shop_table .order-total td{border-bottom:0;background:#eaf0f7}
.woocommerce-cart .neopak-cart-layout .cart td,.woocommerce-cart .neopak-cart-layout .cart th{border:0;border-bottom:1px solid var(--np-border);padding-top:18px;padding-bottom:18px}
.woocommerce-cart .neopak-cart-layout .cart th{background:var(--np-soft)}
.woocommerce-cart .neopak-cart-layout .coupon input{min-height:46px;border-radius:8px}
/* Checkout: details at left, a clear order and payment panel at right. */
.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.9fr);gap:28px 36px;align-items:start;margin:24px 0 40px}
.woocommerce-checkout form.checkout>*{grid-column:1/-1;min-width:0}
.woocommerce-checkout form.checkout>#customer_details{grid-column:1;grid-row:2;display:block;width:auto}
.woocommerce-checkout form.checkout>.np-order-panel{grid-column:2;grid-row:2}
.np-checkout-guide{display:flex;align-items:center;justify-content:center;gap:32px;list-style:none;margin:0 0 4px;padding:16px 20px;border:1px solid var(--np-border);border-radius:12px;background:var(--np-soft)}
.np-checkout-guide li{display:flex;gap:9px;align-items:center;color:var(--np-ink);font-size:14px;font-weight:600;margin:0}
.np-checkout-guide li span{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:#e4eaf2;font-size:12px}
.np-checkout-guide li:first-child span{color:#fff;background:var(--np-ink)}
.woocommerce-checkout #customer_details>.col-1,.woocommerce-checkout #customer_details>.col-2{float:none;width:100%;margin:0 0 22px;padding:24px;border:1px solid var(--np-border);border-radius:var(--np-radius);background:#fff}
.woocommerce-checkout #customer_details h3,.woocommerce-checkout #order_review_heading{font-family:var(--body-font),sans-serif;font-size:23px;line-height:1.3;letter-spacing:-.35px;text-transform:none;margin:0 0 20px}
.woocommerce-checkout #customer_details .form-row{margin:0 0 16px;float:none;width:auto;min-width:0}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper>*,.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper>*{grid-column:1/-1}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper>.form-row-first,.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper>.form-row-first{grid-column:1}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper>.form-row-last,.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper>.form-row-last{grid-column:2}
.woocommerce-checkout .form-row label{font-weight:600;font-size:14px;line-height:1.5;margin-bottom:7px}
.woocommerce-checkout .form-row input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.woocommerce-checkout .form-row select,.woocommerce-checkout .form-row textarea{min-height:48px;padding:11px 13px;border:1px solid #bbc7d5;border-radius:8px;background:#fff;color:var(--np-ink);font-size:16px;width:100%;box-sizing:border-box}
.woocommerce-checkout .select2-container .select2-selection--single{height:48px;border:1px solid #bbc7d5;border-radius:8px}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered{line-height:46px;padding-left:13px}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow{height:46px;right:8px}
.woocommerce-checkout .select2-container{max-width:100%}
.woocommerce-checkout .form-row input[type=checkbox],.woocommerce-checkout .form-row input[type=radio],.woocommerce-checkout #ship-to-different-address input{width:20px!important;height:20px;min-height:20px;flex:0 0 20px;padding:0;margin:2px 0 0;accent-color:var(--np-ink)}
.woocommerce-checkout #ship-to-different-address label,.woocommerce-checkout label.woocommerce-form__label-for-checkbox{display:flex!important;gap:10px;align-items:flex-start;line-height:1.65;cursor:pointer}
.woocommerce-checkout #ship-to-different-address{font-size:18px}
.woocommerce-checkout #order_review{border:0;padding:0;margin:0}
.woocommerce-checkout .np-order-panel{padding:24px;border:1px solid var(--np-border);border-radius:var(--np-radius);background:var(--np-soft);box-shadow:0 8px 30px #20375e07}
.woocommerce-checkout .woocommerce-checkout-review-order-table{table-layout:fixed;border:0;background:#fff;border-radius:10px;margin:0 0 24px;width:100%;font-size:14px}
.woocommerce-checkout .woocommerce-checkout-review-order-table th,.woocommerce-checkout .woocommerce-checkout-review-order-table td{padding:14px 12px;border:0;border-bottom:1px solid var(--np-border);vertical-align:top;overflow-wrap:anywhere;line-height:1.55;background:transparent}
.woocommerce-checkout .woocommerce-checkout-review-order-table thead th{font-size:12px;color:var(--np-muted);font-weight:600}
.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name{width:60%}
.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total{text-align:right}
.woocommerce-checkout .np-order-panel table.shop_table th,.woocommerce-checkout .np-order-panel table.shop_table td{border:0;border-bottom:1px solid var(--np-border);background:transparent}
.woocommerce-checkout .np-order-panel table.shop_table .order-total th,.woocommerce-checkout .np-order-panel table.shop_table .order-total td{background:#edf2f8;border:0}
.woocommerce-checkout .np-checkout-newsletter{border-radius:12px;margin:0;padding:20px 24px;font-size:14px}
.woocommerce-checkout .np-checkout-newsletter h3{font-family:var(--body-font),sans-serif;font-size:18px}
.woocommerce-checkout .np-checkout-newsletter-consent{font-size:13px}
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td{padding-block:20px;border-bottom:0}
.woocommerce-checkout .order-total strong{display:block;font-size:25px;line-height:1.3}
.woocommerce-checkout .order-total .includes_tax{display:block;font-size:12px;line-height:1.5;margin-top:7px;color:var(--np-muted)}
.woocommerce-checkout #shipping_method{list-style:none;padding:0;margin:0}
.woocommerce-checkout #shipping_method li{display:flex;gap:8px;align-items:flex-start;margin-bottom:10px}
.woocommerce-checkout #shipping_method input{width:18px;height:18px;flex:0 0 18px;margin-top:2px;accent-color:var(--np-ink)}
.woocommerce-checkout #shipping_method label{cursor:pointer}
/* The wallet mount stays outside #payment so checkout AJAX never destroys its iframe. */
.np-payment-hub{border-top:1px solid #cbd5e2;padding-top:24px}
.np-payment-heading{display:flex;gap:12px;align-items:flex-start;margin-bottom:18px}
.np-payment-heading h3{font-family:var(--body-font),sans-serif!important;font-size:21px!important;line-height:1.3;margin:0 0 6px!important;text-transform:none}
.np-payment-heading p{font-size:14px;color:var(--np-muted);line-height:1.5;margin:0}
.np-payment-icon{display:block;flex:0 0 42px;width:42px;height:42px;border-radius:10px;background:#e4eaf2;position:relative}
.np-payment-icon:before{content:"";position:absolute;inset:12px 9px;border:2px solid var(--np-ink);border-radius:3px;background:linear-gradient(transparent 35%,var(--np-ink) 35%,var(--np-ink) 50%,transparent 50%)}
.np-payment-hub #wc-stripe-express-checkout-element{margin:0 0 16px!important}
.np-payment-hub #wc-stripe-express-checkout-button-separator{margin:12px 0!important;color:var(--np-muted);font-size:12px}
.woocommerce-checkout #payment{background:transparent;border-radius:0}
.woocommerce-checkout #payment ul.payment_methods{list-style:none;padding:0;margin:0 0 22px;border:0;display:grid;gap:10px}
.woocommerce-checkout #payment ul.payment_methods>li{list-style:none;position:relative;margin:0;padding:0;border:1px solid #c6d0dd;border-radius:10px;background:#fff;overflow:hidden}
.woocommerce-checkout #payment ul.payment_methods>li:has(>input:checked){border-color:var(--np-ink);box-shadow:0 0 0 1px var(--np-ink)}
.woocommerce-checkout #payment ul.payment_methods>li>input[type=radio]{position:absolute;left:16px;top:20px;width:19px;height:19px;margin:0;accent-color:var(--np-ink)}
.woocommerce-checkout #payment ul.payment_methods>li>label{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:60px;margin:0;padding:16px 16px 16px 46px;line-height:1.5;font-size:15px;font-weight:600;cursor:pointer;color:var(--np-ink)}
.woocommerce-checkout #payment ul.payment_methods>li>label img{max-height:26px;width:auto;max-width:100%;object-fit:contain;margin:0 0 0 auto;float:none}
.woocommerce-checkout #payment .payment_box{margin:0;padding:14px 16px;background:#f0f4f9;border-top:1px solid var(--np-border);font-size:14px;line-height:1.65;border-radius:0;color:var(--np-muted)}
.woocommerce-checkout #payment .payment_box:before{display:none}
.woocommerce-checkout #payment .payment_box p{margin:0 0 10px}
.woocommerce-checkout #payment .payment_box p:last-child{margin-bottom:0}
.woocommerce-checkout #payment .payment_box fieldset{min-width:0}
.woocommerce-checkout #payment .place-order{padding:0;margin:0;float:none;width:100%}
.woocommerce-checkout .woocommerce-privacy-policy-text{font-size:12px;line-height:1.75;color:var(--np-muted);margin:18px 0}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row{padding:14px;background:#fff;border:1px solid var(--np-border);border-radius:9px;margin:16px 0}
.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text{font-size:13px;font-weight:400;min-width:0}
.woocommerce-checkout #place_order{width:100%;float:none;min-height:56px;padding:15px 20px;font-size:16px;margin-top:18px}
.woocommerce-checkout .np-payment-hub details{padding:14px!important;border-radius:8px;font-size:13px;line-height:1.6;background:#fff}
.woocommerce-checkout .woocommerce-error,.woocommerce-checkout .woocommerce-info,.woocommerce-checkout .woocommerce-message{border-radius:10px;line-height:1.65}
@media(min-width:1200px){.woocommerce-checkout form.checkout{grid-template-columns:minmax(0,1.05fr) minmax(440px,.95fr)}}
@media(max-width:950px){.woocommerce-checkout form.checkout{grid-template-columns:minmax(0,1fr);gap:20px}.woocommerce-checkout form.checkout>#customer_details,.woocommerce-checkout form.checkout>.np-order-panel{grid-column:1;grid-row:auto}.np-checkout-guide{gap:18px;justify-content:space-between}.np-checkout-guide li{font-size:12px;gap:6px}}
@media(max-width:540px){.woocommerce-checkout form.checkout{margin-top:18px}.woocommerce-checkout #customer_details>.col-1,.woocommerce-checkout #customer_details>.col-2,.woocommerce-checkout .np-order-panel{padding:18px 14px;border-radius:12px}.np-checkout-guide{padding:12px 8px;gap:8px;align-items:flex-start}.np-checkout-guide li{flex:1;flex-direction:column;text-align:center;font-size:11px;line-height:1.4}.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{display:block}.woocommerce-checkout #customer_details h3,.woocommerce-checkout #order_review_heading{font-size:21px}.woocommerce-checkout .woocommerce-checkout-review-order-table th,.woocommerce-checkout .woocommerce-checkout-review-order-table td{padding:12px 8px;font-size:13px}.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name{width:53%}.np-payment-heading h3{font-size:19px!important}.woocommerce-checkout #payment ul.payment_methods>li>label{font-size:14px}.woocommerce ul.products li.product .quick-cart .quantity-control{height:46px;flex:1 1 100%;justify-content:space-between}.woocommerce ul.products li.product .quick-cart .quantity-control button{flex-basis:44px;width:44px}.woocommerce ul.products li.product .quick-cart .quantity-control input.qty{max-width:70px}.woocommerce ul.products li.product .quick-cart .button{flex-basis:100%;min-height:48px;font-size:13px}.woocommerce .single_add_to_cart_button{min-height:52px}.woocommerce-cart .neopak-cart-layout .cart_totals{padding:18px}.woocommerce-checkout #place_order{font-size:15px}}
@media(prefers-reduced-motion:reduce){.woocommerce .button{transition:none!important}}
