/* Digital Fox — WooCommerce: shop, product, cart, checkout, thank-you, account */
.page-band{background:var(--ink);color:#fff;padding:48px 0}
.page-band h1{color:#fff;font-size:clamp(2rem,4vw,3rem);margin:0}
.page-band p{color:#C9CAE2;margin:.6em 0 0;font-size:1.1rem}
.woocommerce-breadcrumb{font-size:.9rem;color:#7C7B96;margin-bottom:24px}
.woocommerce-breadcrumb a{color:inherit}
.woocommerce .woocommerce-result-count{color:#7C7B96;font-size:.92rem;margin:0 0 24px}
.woocommerce .woocommerce-ordering{margin:0 0 24px}
.woocommerce .woocommerce-ordering select{width:auto;padding:9px 14px}

/* product grid */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(var(--cols,3),minmax(0,1fr));gap:24px;clear:both}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:0 0 22px;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:border-color .2s,box-shadow .2s}
.woocommerce ul.products li.product:hover{border-color:var(--fox);box-shadow:0 14px 40px rgba(21,19,43,.09)}
.woocommerce ul.products li.product a img{margin:0 0 18px;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:0}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font:700 1.15rem var(--head);color:var(--ink);padding:0 22px;letter-spacing:-.01em}
.woocommerce ul.products li.product .price{display:block;padding:0 22px;margin:6px 0 14px;font:800 1.2rem var(--head);color:var(--ink)}
.woocommerce ul.products li.product .price del{color:var(--mist);font-weight:500;font-size:.9rem}
.woocommerce ul.products li.product .price ins{text-decoration:none}
.woocommerce ul.products li.product .button{margin:auto 22px 0;align-self:flex-start}
.woocommerce span.onsale{background:var(--fox)!important;color:var(--on-fox)!important;border-radius:99px!important;min-height:0!important;min-width:0!important;line-height:1!important;padding:7px 13px!important;font-weight:700;top:14px!important;left:14px!important;right:auto!important;margin:0!important}
.woocommerce .star-rating span::before{color:var(--fox)}
.woocommerce nav.woocommerce-pagination ul{border:0}
.woocommerce nav.woocommerce-pagination ul li{border:0;margin:0 4px}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{border:1px solid var(--line);border-radius:8px;background:#fff;padding:8px 14px}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--ink);color:#fff;border-color:var(--ink)}

/* single product */
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 56px;align-items:start}
.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto!important;float:none!important;margin:0 0 40px!important}
.woocommerce div.product div.images img{border-radius:var(--r)}
.woocommerce div.product .woocommerce-tabs,.woocommerce div.product .related,.woocommerce div.product .upsells{grid-column:1/-1}
.woocommerce div.product .product_title{font-size:clamp(1.9rem,3.4vw,2.7rem);margin-bottom:.3em}
.woocommerce div.product p.price,.woocommerce div.product span.price{font:800 1.9rem var(--head);color:var(--ink)}
.woocommerce div.product p.price del{color:var(--mist);font-size:1.1rem}
.woocommerce div.product p.price ins{text-decoration:none}
.woocommerce div.product form.cart{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}
.woocommerce div.product form.cart .quantity input{width:76px;padding:12px;text-align:center}
.woocommerce div.product form.cart .button{padding:14px 30px;font-size:1.05rem}
.woocommerce div.product form.cart .variations{width:100%}
.df-trust{list-style:none;margin:0;padding:18px 0 0;border-top:1px solid var(--line);color:#5B5A75;font-size:.95rem}
.df-trust li{padding:4px 0;padding-inline-start:24px;position:relative}
.df-trust li::before{content:"✓";position:absolute;inset-inline-start:0;color:var(--mint);font-weight:800}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 24px;border-bottom:1px solid var(--line);display:flex;gap:8px}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:none;border:0;border-radius:0;margin:0;padding: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{padding:12px 16px;font-weight:700;color:#5B5A75}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink);box-shadow:inset 0 -3px var(--fox)}
.woocommerce div.product .related>h2,.woocommerce div.product .upsells>h2{font-size:1.6rem}

/* messages, forms */
.woocommerce-message,.woocommerce-info,.woocommerce-error{background:#fff!important;border:1px solid var(--line)!important;border-top:3px solid var(--fox)!important;border-radius:10px;color:var(--text)!important}
.woocommerce-error{border-top-color:#D63638!important}
.woocommerce-message::before,.woocommerce-info::before{color:var(--fox)!important}
.woocommerce form .form-row{margin-bottom:16px}
.woocommerce form .form-row label{font-weight:600;font-size:.93rem;margin-bottom:6px;color:var(--ink)}
.woocommerce form .form-row .required{color:var(--ember)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce-page form .form-row select{padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;font:inherit;box-shadow:none}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{border-color:var(--fox);outline:3px solid color-mix(in srgb,var(--fox) 25%,transparent)}
.select2-container--default .select2-selection--single{height:49px;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:47px}
.woocommerce form.checkout_coupon,.woocommerce form.woocommerce-form-login{border:1px solid var(--line);border-radius:var(--r);background:#fff}

/* steps */
.df-steps{display:flex;justify-content:center;gap:0;list-style:none;margin:0 0 40px;padding:0}
.df-steps li{display:flex;align-items:center;gap:10px;color:#7C7B96;font-weight:600;font-size:.95rem}
.df-steps li+li::before{content:"";width:clamp(28px,8vw,80px);height:2px;background:var(--line);margin-inline:14px}
.df-steps b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid var(--line);font-size:.85rem}
.df-steps li.now{color:var(--ink)}.df-steps li.now b{background:var(--fox);border-color:var(--fox);color:var(--on-fox)}
.df-steps li.done b{background:var(--mint);border-color:var(--mint);color:#fff}
.df-steps li.done+li::before,.df-steps li.now::before{background:var(--mint)}

/* cart */
.woocommerce table.shop_table{border:1px solid var(--line);border-radius:var(--r);border-collapse:separate;border-spacing:0;background:#fff;overflow:hidden}
.woocommerce table.shop_table th{font-weight:700;color:var(--ink);background:#FAFAFD}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:16px 18px;border-color:var(--line)}
.woocommerce-cart table.cart img{width:64px;border-radius:8px}
.woocommerce-cart table.cart td.actions .coupon .input-text{width:180px;padding:11px 14px}
.woocommerce-cart .cart-collaterals .cart_totals{float:none;width:100%;max-width:440px;margin-inline-start:auto}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{padding:16px;font-size:1.05rem;width:100%}
.woocommerce a.remove{color:#B24A4A!important}

/* checkout */
.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.85fr);gap:40px;align-items:start}
.woocommerce-checkout .col2-set{width:100%;float:none}
.woocommerce-checkout .col2-set .col-1,.woocommerce-checkout .col2-set .col-2{float:none;width:100%}
.woocommerce-checkout h3{font-size:1.3rem;margin-bottom:.8em}
.df-co-side{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:26px;position:sticky;top:96px}
.df-co-side #order_review_heading{margin-top:0}
.woocommerce-checkout-review-order-table{border:0!important;background:none!important}
.woocommerce-checkout-review-order-table th,.woocommerce-checkout-review-order-table td{padding:12px 0!important;background:none!important}
.woocommerce-checkout #payment{background:none;border-radius:0}
.woocommerce-checkout #payment ul.payment_methods{padding:0;border:0}
.woocommerce-checkout #payment ul.payment_methods li{padding:14px 16px;border:1px solid var(--line);border-radius:10px;margin-bottom:10px;list-style:none;background:#fff}
.woocommerce-checkout #payment ul.payment_methods li label{font-weight:700;color:var(--ink)}
.woocommerce-checkout #payment div.payment_box{background:var(--paper);border-radius:10px;color:var(--text);margin:12px 0 0}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce-checkout #payment div.form-row{padding:16px 0 0}
.woocommerce-checkout #place_order{float:none;width:100%;padding:17px;font-size:1.08rem}
.df-secure{font-size:.85rem;color:#7C7B96;margin:14px 0 0;text-align:center}
.woocommerce-terms-and-conditions-wrapper{font-size:.9rem;color:#5B5A75}

/* thank you */
.df-thanks{max-width:820px;margin:0 auto}
.df-thanks-head{text-align:center;margin-bottom:34px}
.df-thanks-head h1{font-size:clamp(2rem,4.5vw,3.2rem);margin:.4em 0 .3em}
.df-thanks-head p{color:#5B5A75;font-size:1.1rem;max-width:34em;margin-inline:auto}
.df-ico{width:76px;height:76px;border-radius:50%;display:inline-grid;place-items:center;font:800 2rem var(--head)}
.df-ico.ok{background:#E3F8EF;color:#0C7A52}.df-ico.bad{background:#FDE8E8;color:#B42318}
.df-ico svg{width:38px;height:38px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.df-meta{list-style:none;margin:0 0 28px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.df-meta li{background:#fff;padding:16px 20px}
.df-meta span{display:block;font-size:.82rem;color:#7C7B96}
.df-meta strong{color:var(--ink);font-family:var(--head)}
.df-dl{background:var(--ink);color:#C9CAE2;border-radius:var(--r);padding:28px;margin-bottom:28px}
.df-dl h2{color:#fff;font-size:1.4rem}
.df-dl ul{list-style:none;margin:0;padding:0}
.df-dl li{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:14px 0;border-top:1px solid rgba(255,255,255,.12);color:#fff;font-weight:700}
.df-dl li small{display:block;font-weight:400;color:var(--mist)}
.df-dl p{margin:0}
.df-next{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:28px;margin-bottom:28px}
.df-next h2{font-size:1.3rem}
.df-next ol{counter-reset:s;list-style:none;margin:0;padding:0}
.df-next li{counter-increment:s;position:relative;padding:10px 0;padding-inline-start:46px;color:#5B5A75}
.df-next li::before{content:counter(s);position:absolute;inset-inline-start:0;top:8px;width:30px;height:30px;border-radius:50%;background:var(--fox);color:var(--on-fox);font-weight:800;display:grid;place-items:center;font-size:.9rem}
.df-extra{background:#FFF1E8;border-radius:10px;padding:14px 18px}
.df-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:30px 0}
.woocommerce-order-received .woocommerce-order-downloads{display:none}
.woocommerce-order-received .woocommerce-order-details,.woocommerce-order-received .woocommerce-customer-details{margin-top:28px}
.woocommerce-order-received h2.woocommerce-order-details__title,.woocommerce-order-received h2.woocommerce-column__title{font-size:1.3rem}

/* WooCommerce blocks (if the block cart/checkout is used) */
.wc-block-components-button:not(.is-link){background:var(--fox)!important;color:var(--on-fox)!important;border-radius:999px;font-weight:700}
.wc-block-components-text-input input,.wc-block-components-select .wc-block-components-select__select{border-radius:10px!important}
.wc-block-components-totals-item__value{font-weight:700}

@media(max-width:900px){
.woocommerce-checkout form.checkout,.woocommerce div.product{grid-template-columns:1fr}
.df-co-side{position:static}
.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
.woocommerce ul.products{grid-template-columns:1fr}
.df-steps li span{display:none}.df-steps li.now span{display:inline}
.woocommerce table.shop_table_responsive tr td{background:#fff}
}

.df-stripe{display:flex;justify-content:center;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:#5B5A75;margin:14px 0 0}
.df-stripe .ico{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2}
