/* Crispred 3 for WooCommerce.
   Loaded after WooCommerce's own styles. Uses the same tokens as theme.css. */

/* ---------- Shared ---------- */
body.crispred-site:not(#cr-wc) .woocommerce-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:4px 10px; margin:0 0 clamp(24px,3vw,36px); font-size:.8rem; color:var(--cr-muted); }
body.crispred-site:not(#cr-wc) .woocommerce-breadcrumb a { color:var(--cr-muted); text-decoration:none; }
body.crispred-site:not(#cr-wc) .woocommerce-breadcrumb a:hover { color:var(--cr-accent); }
body.crispred-site:not(#cr-wc) .cr-crumb-sep { color:var(--cr-line-strong); }

/* Prices, badges, ratings */
body.crispred-site:not(#cr-wc) :is(.price,span.price,p.price,.wc-block-components-product-price,.wc-block-grid__product-price) { color:var(--cr-ink); font-weight:650; }
body.crispred-site:not(#cr-wc) :is(.price,.wc-block-components-product-price,.wc-block-grid__product-price) del { color:var(--cr-muted); font-weight:400; opacity:.75; margin-right:.35em; }
body.crispred-site:not(#cr-wc) :is(.price,.wc-block-components-product-price,.wc-block-grid__product-price) ins { color:var(--cr-accent); text-decoration:none; background:none; }
body.crispred-site:not(#cr-wc) .woocommerce-Price-currencySymbol { margin-right:.08em; }
body.crispred-site:not(#cr-wc) span.onsale,body.crispred-site:not(#cr-wc) .wc-block-components-product-sale-badge,body.crispred-site:not(#cr-wc) .wc-block-grid__product-onsale {
 position:absolute; z-index:3; top:14px; left:14px; right:auto; margin:0; min-width:0; min-height:0; padding:6px 12px; border:0; border-radius:var(--cr-pill); background:var(--cr-accent); color:#fff; font-size:.68rem; font-weight:700; line-height:1.2; letter-spacing:.08em; text-transform:uppercase; box-shadow:0 4px 14px rgba(0,0,0,.12);
}
body.crispred-site:not(#cr-wc) .wc-block-components-sale-badge { border:0; border-radius:var(--cr-pill); background:var(--cr-accent-tint); color:var(--cr-accent); font-size:.68rem; font-weight:700; letter-spacing:.04em; padding:3px 9px; text-transform:uppercase; }
body.crispred-site:not(#cr-wc) .star-rating { color:var(--cr-accent); }
body.crispred-site:not(#cr-wc) .star-rating::before { color:var(--cr-line-strong); opacity:1; }
body.crispred-site:not(#cr-wc) p.stars a { color:var(--cr-accent); }
body.crispred-site:not(#cr-wc) .stock { font-size:.85rem; font-weight:600; }
body.crispred-site:not(#cr-wc) .stock.in-stock { color:var(--cr-success); }
body.crispred-site:not(#cr-wc) .stock.out-of-stock { color:var(--cr-accent); }

/* Buttons */
body.crispred-site:not(#cr-wc) :is(a,button,input).button,body.crispred-site:not(#cr-wc) #respond input#submit,body.crispred-site:not(#cr-wc) .wc-block-components-button:not(.is-link),body.crispred-site:not(#cr-wc) .wc-block-components-product-button__button,body.crispred-site:not(#cr-wc) .wp-block-button.wc-block-components-product-button .wp-block-button__link {
 display:inline-flex; align-items:center; justify-content:center; gap:.5em; min-height:46px; padding:.7rem 1.5rem; border:1px solid var(--cr-line-strong); border-radius:var(--cr-pill); background:var(--cr-paper); color:var(--cr-ink); font-size:.9rem; font-weight:600; line-height:1.2; text-decoration:none; box-shadow:none; text-shadow:none; transition:background-color .2s ease,color .2s ease,border-color .2s ease;
}
body.crispred-site:not(#cr-wc) :is(a,button,input).button:hover,body.crispred-site:not(#cr-wc) #respond input#submit:hover,body.crispred-site:not(#cr-wc) .wc-block-components-product-button__button:hover,body.crispred-site:not(#cr-wc) .wp-block-button.wc-block-components-product-button .wp-block-button__link:hover { background:var(--cr-ink); border-color:var(--cr-ink); color:#fff; }
body.crispred-site:not(#cr-wc) :is(a,button,input).button.alt,body.crispred-site:not(#cr-wc) :is(.single_add_to_cart_button,.checkout-button,#place_order,.woocommerce-form-login__submit,.woocommerce-form-register__submit,.woocommerce-Button[name=save_account_details],.woocommerce-Button[name=save_address],.woocommerce-ResetPassword .woocommerce-Button,.wc-forward.checkout),body.crispred-site:not(#cr-wc) .wc-block-components-button:not(.is-link):is(.contained,.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button,.wc-block-components-totals-coupon__button),body.crispred-site:not(#cr-wc) .wc-block-components-button.wp-element-button:not(.is-link):not(.outlined) {
 background:var(--cr-accent); border-color:var(--cr-accent); color:#fff;
}
body.crispred-site:not(#cr-wc) :is(a,button,input).button.alt:hover,body.crispred-site:not(#cr-wc) :is(.single_add_to_cart_button,.checkout-button,#place_order,.woocommerce-form-login__submit,.woocommerce-form-register__submit,.woocommerce-Button[name=save_account_details],.woocommerce-Button[name=save_address]):hover,body.crispred-site:not(#cr-wc) .wc-block-components-button:not(.is-link):not(.outlined):hover { background:var(--cr-accent-hover); border-color:var(--cr-accent-hover); color:#fff; }
body.crispred-site:not(#cr-wc) .wc-block-components-button:not(.is-link) .wc-block-components-button__text { color:inherit; }
body.crispred-site:not(#cr-wc) .wc-block-components-button.outlined:not(.is-link) { background:transparent; color:var(--cr-ink); border-color:var(--cr-line-strong); }
body.crispred-site:not(#cr-wc) :is(a,button,input).button:is(.disabled,:disabled,[disabled]),body.crispred-site:not(#cr-wc) :is(a,button,input).button.alt:is(.disabled,:disabled,[disabled]) { opacity:.5; cursor:not-allowed; pointer-events:auto; }
body.crispred-site:not(#cr-wc) .wc-block-components-button.is-link { color:var(--cr-ink); text-decoration:underline; text-underline-offset:.2em; }
body.crispred-site:not(#cr-wc) .added_to_cart { display:inline-block; margin:10px 0 0; font-size:.85rem; font-weight:600; color:var(--cr-accent); text-decoration:none; }
body.crispred-site:not(#cr-wc) .button.loading { opacity:.6; }
body.crispred-site:not(#cr-wc) .button.loading::after { top:auto; right:12px; }

/* Forms */
body.crispred-site:not(#cr-wc) .woocommerce form .form-row { margin:0 0 16px; padding:0; }
body.crispred-site:not(#cr-wc) .woocommerce form .form-row label { display:block; margin-bottom:6px; font-size:.85rem; font-weight:600; line-height:1.4; }
body.crispred-site:not(#cr-wc) .woocommerce form .form-row :is(input.input-text,textarea,select),body.crispred-site:not(#cr-wc) .woocommerce :is(.input-text,select.orderby),body.crispred-site:not(#cr-wc) .select2-container .select2-selection--single {
 width:100%; min-height:48px; padding:.65rem .9rem; border:1px solid var(--cr-line-strong); border-radius:var(--cr-radius-sm); background:var(--cr-paper); color:var(--cr-ink); font-size:.95rem; line-height:1.4; box-shadow:none;
}
body.crispred-site:not(#cr-wc) .woocommerce form .form-row textarea { min-height:110px; }
body.crispred-site:not(#cr-wc) .select2-container .select2-selection--single { display:flex; align-items:center; }
body.crispred-site:not(#cr-wc) .select2-container .select2-selection--single .select2-selection__rendered { padding:0; line-height:1.4; color:var(--cr-ink); }
body.crispred-site:not(#cr-wc) .select2-container .select2-selection--single .select2-selection__arrow { top:50%; transform:translateY(-50%); right:8px; }
body.crispred-site:not(#cr-wc) .select2-dropdown { border-color:var(--cr-line-strong); border-radius:var(--cr-radius-sm); overflow:hidden; }
body.crispred-site:not(#cr-wc) .select2-results__option--highlighted[aria-selected],body.crispred-site:not(#cr-wc) .select2-results__option--highlighted[data-selected] { background:var(--cr-ink); }
body.crispred-site:not(#cr-wc) .woocommerce form .form-row .required { color:var(--cr-accent); text-decoration:none; }
body.crispred-site:not(#cr-wc) .woocommerce form .form-row.woocommerce-invalid :is(.input-text,select,.select2-selection) { border-color:var(--cr-accent); }
body.crispred-site:not(#cr-wc) .woocommerce form .form-row.woocommerce-validated :is(.input-text,select,.select2-selection) { border-color:var(--cr-success); }
body.crispred-site:not(#cr-wc) .woocommerce form .form-row :is(input,textarea):focus,body.crispred-site:not(#cr-wc) .woocommerce select:focus { border-color:var(--cr-ink); box-shadow:0 0 0 3px var(--cr-accent-tint); outline:none; }
body.crispred-site:not(#cr-wc) .woocommerce form .form-row .woocommerce-input-wrapper { display:block; }
body.crispred-site:not(#cr-wc) .woocommerce form .form-row .description { font-size:.8rem; color:var(--cr-muted); margin-top:6px; background:none; padding:0; }
body.crispred-site:not(#cr-wc) .woocommerce form .form-row .description::before { display:none; }
body.crispred-site:not(#cr-wc) .woocommerce form .password-input { display:block; }
body.crispred-site:not(#cr-wc) .woocommerce form .show-password-input { top:50%; transform:translateY(-50%); right:12px; }
body.crispred-site:not(#cr-wc) .woocommerce form :is(.form-row-first,.form-row-last) { width:calc(50% - 8px); }
body.crispred-site:not(#cr-wc) .woocommerce form :is(.woocommerce-form-login,.woocommerce-form-register,.checkout_coupon,.woocommerce-ResetPassword,.lost_reset_password),body.crispred-site:not(#cr-wc) .woocommerce form.login,body.crispred-site:not(#cr-wc) .woocommerce form.register {
 border:1px solid var(--cr-line); border-radius:var(--cr-radius); padding:clamp(22px,3vw,32px); margin:0 0 24px; background:var(--cr-paper); text-align:left;
}
body.crispred-site:not(#cr-wc) .woocommerce .woocommerce-form-login__rememberme { display:inline-flex; align-items:center; gap:8px; margin:0 16px 0 0; font-weight:400; }
body.crispred-site:not(#cr-wc) .woocommerce .lost_password { font-size:.85rem; margin:12px 0 0; }

/* Quantity */
body.crispred-site:not(#cr-wc) .quantity { display:inline-flex; }
body.crispred-site:not(#cr-wc) .quantity .qty { width:84px; min-height:48px; padding:.5rem .6rem; border:1px solid var(--cr-line-strong); border-radius:var(--cr-pill); text-align:center; font-weight:600; -moz-appearance:textfield; }

/* Notices */
body.crispred-site:not(#cr-wc) :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) {
 position:relative; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px 16px; margin:0 0 20px; padding:14px 18px 14px 50px; list-style:none; border:1px solid var(--cr-line); border-left:3px solid var(--cr-ink); border-radius:var(--cr-radius-sm); background:var(--cr-soft); color:var(--cr-ink); font-size:.92rem; line-height:1.55; outline:none; width:auto;
}
body.crispred-site:not(#cr-wc) :is(.woocommerce-message,.woocommerce-info,.woocommerce-error)::before { top:50%; left:18px; transform:translateY(-50%); font-size:1rem; }
body.crispred-site:not(#cr-wc) :is(.woocommerce-message,.woocommerce-info,.woocommerce-error)::after { display:none; }
body.crispred-site:not(#cr-wc) .woocommerce-message { border-left-color:var(--cr-success); background:var(--cr-success-tint); }
body.crispred-site:not(#cr-wc) .woocommerce-message::before { color:var(--cr-success); }
body.crispred-site:not(#cr-wc) .woocommerce-info { border-left-color:var(--cr-info); background:var(--cr-info-tint); }
body.crispred-site:not(#cr-wc) .woocommerce-info::before { color:var(--cr-info); }
body.crispred-site:not(#cr-wc) .woocommerce-error { border-left-color:var(--cr-accent); background:var(--cr-accent-tint); display:block; }
body.crispred-site:not(#cr-wc) .woocommerce-error::before { color:var(--cr-accent); top:22px; transform:none; }
body.crispred-site:not(#cr-wc) .woocommerce-error li { margin:0; padding:0; }
body.crispred-site:not(#cr-wc) :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) .button { order:2; float:none; min-height:36px; padding:.45rem 1rem; font-size:.82rem; background:var(--cr-paper); }
body.crispred-site:not(#cr-wc) :is(.woocommerce-message,.woocommerce-info) a:not(.button) { font-weight:600; }
body.crispred-site:not(#cr-wc) .woocommerce-notices-wrapper:empty { display:none; }
body.crispred-site:not(#cr-wc) .wc-block-components-notice-banner { border-radius:var(--cr-radius-sm); border-width:1px 1px 1px 3px; font-size:.92rem; align-items:center; }
body.crispred-site:not(#cr-wc) .wc-block-components-notice-banner.is-success { background:var(--cr-success-tint); border-color:var(--cr-line) var(--cr-line) var(--cr-line) var(--cr-success); }
body.crispred-site:not(#cr-wc) .wc-block-components-notice-banner.is-success > svg { background:var(--cr-success); }
body.crispred-site:not(#cr-wc) .wc-block-components-notice-banner.is-error { background:var(--cr-accent-tint); border-color:var(--cr-line) var(--cr-line) var(--cr-line) var(--cr-accent); }
body.crispred-site:not(#cr-wc) .wc-block-components-notice-banner.is-error > svg { background:var(--cr-accent); }
body.crispred-site:not(#cr-wc) .wc-block-components-notice-banner.is-info { background:var(--cr-info-tint); border-color:var(--cr-line) var(--cr-line) var(--cr-line) var(--cr-info); }
body.crispred-site:not(#cr-wc) .wc-block-components-notice-banner.is-info > svg { background:var(--cr-info); }
body.crispred-site:not(#cr-wc) .woocommerce-store-notice,body.crispred-site:not(#cr-wc) p.demo_store { background:var(--cr-ink); font-size:.85rem; }
body.crispred-site:not(#cr-wc) .woocommerce-store-notice a { color:#fff; }

/* Tables (classic cart, checkout review, orders, account) */
body.crispred-site:not(#cr-wc) table.shop_table { width:100%; margin:0 0 28px; border:1px solid var(--cr-line); border-radius:var(--cr-radius); border-collapse:separate; border-spacing:0; overflow:hidden; font-size:.95rem; }
body.crispred-site:not(#cr-wc) table.shop_table :is(th,td) { padding:14px 18px; border:0; border-top:1px solid var(--cr-line); line-height:1.5; vertical-align:middle; }
body.crispred-site:not(#cr-wc) table.shop_table thead th { border-top:0; background:var(--cr-soft); font-size:.72rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--cr-muted); }
body.crispred-site:not(#cr-wc) table.shop_table tbody tr:first-child :is(th,td) { border-top:0; }
body.crispred-site:not(#cr-wc) table.shop_table thead + tbody tr:first-child :is(th,td) { border-top:1px solid var(--cr-line); }
body.crispred-site:not(#cr-wc) table.shop_table tfoot :is(th,td) { font-weight:600; }
body.crispred-site:not(#cr-wc) table.shop_table .order-total :is(th,td) { font-size:1.05rem; }
body.crispred-site:not(#cr-wc) table.shop_table .order-total .amount { color:var(--cr-ink); font-weight:750; }
body.crispred-site:not(#cr-wc) table.shop_table td.product-name a { font-weight:600; text-decoration:none; }
body.crispred-site:not(#cr-wc) table.shop_table .product-quantity { font-weight:600; }
body.crispred-site:not(#cr-wc) table.shop_table .wc-item-meta { font-size:.85rem; color:var(--cr-muted); margin:6px 0 0; padding:0; list-style:none; }
body.crispred-site:not(#cr-wc) table.shop_table .wc-item-meta p { display:inline; margin:0; }
body.crispred-site:not(#cr-wc) table.shop_table a.remove { width:28px; height:28px; display:grid; place-items:center; border:1px solid var(--cr-line); border-radius:50%; color:var(--cr-muted)!important; font-size:1.1rem; line-height:1; font-weight:400; }
body.crispred-site:not(#cr-wc) table.shop_table a.remove:hover { background:var(--cr-accent); border-color:var(--cr-accent); color:#fff!important; }
body.crispred-site:not(#cr-wc) table.shop_table img { width:72px; border-radius:var(--cr-radius-sm); display:block; }

/* ---------- Catalog: shop page and categories ---------- */
body.crispred-site:not(#cr-wc) .cr-shop--archive .woocommerce-products-header { max-width:880px; padding:0 0 clamp(24px,3vw,36px); margin:0; }
body.crispred-site:not(#cr-wc) .cr-shop--archive .woocommerce-products-header__title { font-size:clamp(2.4rem,5vw,4.2rem); margin:0 0 .35em; }
body.crispred-site:not(#cr-wc) .cr-shop--archive :is(.term-description,.page-description) { color:var(--cr-muted); font-size:clamp(1.05rem,1.5vw,1.2rem); line-height:1.6; max-width:62ch; }
body.crispred-site:not(#cr-wc) .cr-shop--archive :is(.term-description,.page-description) > :last-child { margin-bottom:0; }
body.crispred-site:not(#cr-wc) .cr-shop-nav { margin-top:clamp(20px,3vw,32px); }
body.crispred-site:not(#cr-wc) .cr-shop-nav ul { display:flex; flex-wrap:wrap; gap:10px; list-style:none; margin:0; padding:0; }
body.crispred-site:not(#cr-wc) .cr-shop-nav a { display:inline-flex; align-items:center; min-height:40px; padding:0 18px; border:1px solid var(--cr-line); border-radius:var(--cr-pill); font-size:.85rem; font-weight:600; text-decoration:none; color:var(--cr-ink); background:var(--cr-paper); transition:all .2s ease; }
body.crispred-site:not(#cr-wc) .cr-shop-nav a:hover { border-color:var(--cr-ink); color:var(--cr-ink); }
body.crispred-site:not(#cr-wc) .cr-shop-nav a[aria-current] { background:var(--cr-accent); border-color:var(--cr-accent); color:#fff; }
body.crispred-site:not(#cr-wc) .cr-shop--archive .woocommerce-result-count { float:left; margin:0 0 28px; line-height:48px; font-size:.85rem; color:var(--cr-muted); }
body.crispred-site:not(#cr-wc) .cr-shop--archive .woocommerce-ordering { float:right; margin:0 0 28px; }
body.crispred-site:not(#cr-wc) .woocommerce-ordering select.orderby { width:auto; min-width:220px; border-radius:var(--cr-pill); padding-inline:1.1rem 2.4rem; font-size:.88rem; font-weight:500; }
body.crispred-site:not(#cr-wc) .cr-shop--archive .woocommerce-products-header + .woocommerce-notices-wrapper,body.crispred-site:not(#cr-wc) .cr-shop--archive .woocommerce-notices-wrapper { clear:both; }
body.crispred-site:not(#cr-wc) .woocommerce-no-products-found .woocommerce-info { clear:both; }

/* Product grid */
body.crispred-site:not(#cr-wc) ul.products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(20px,2.5vw,32px); clear:both; margin:0 0 clamp(32px,4vw,48px); padding:0; list-style:none; }
body.crispred-site:not(#cr-wc) ul.products::before,body.crispred-site:not(#cr-wc) ul.products::after { display:none; content:none; }
body.crispred-site:not(#cr-wc) ul.products.columns-1 { grid-template-columns:minmax(0,1fr); }
body.crispred-site:not(#cr-wc) ul.products.columns-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
body.crispred-site:not(#cr-wc) ul.products.columns-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
body.crispred-site:not(#cr-wc) ul.products.columns-5 { grid-template-columns:repeat(5,minmax(0,1fr)); }
body.crispred-site:not(#cr-wc) ul.products.columns-6 { grid-template-columns:repeat(6,minmax(0,1fr)); }
body.crispred-site:not(#cr-wc) ul.products li.product,body.crispred-site:not(#cr-wc) ul.products li.product-category {
 position:relative; display:flex; flex-direction:column; float:none; clear:none; width:auto; margin:0; padding:0; border:1px solid var(--cr-line); border-radius:var(--cr-radius); background:var(--cr-paper); overflow:hidden; text-align:left; transition:box-shadow .25s ease,border-color .25s ease,transform .25s ease;
}
body.crispred-site:not(#cr-wc) ul.products li.product:hover { border-color:var(--cr-line-strong); box-shadow:var(--cr-shadow); transform:translateY(-2px); }
body.crispred-site:not(#cr-wc) ul.products li.product a.woocommerce-LoopProduct-link,body.crispred-site:not(#cr-wc) ul.products li.product-category > a { display:flex; flex-direction:column; flex:1; text-decoration:none; color:inherit; }
body.crispred-site:not(#cr-wc) ul.products li.product a img,body.crispred-site:not(#cr-wc) ul.products li.product-category a img { width:100%; aspect-ratio:4/3; object-fit:cover; margin:0; border-radius:0; background:var(--cr-soft); box-shadow:none; transition:transform .5s ease; }
body.crispred-site:not(#cr-wc) ul.products li.product:hover a img { transform:scale(1.03); }
body.crispred-site:not(#cr-wc) ul.products li.product :is(.woocommerce-loop-product__title,.woocommerce-loop-category__title) { padding:20px 22px 0; margin:0 0 8px; font-size:1.12rem; font-weight:700; line-height:1.3; letter-spacing:-.015em; color:var(--cr-ink); }
body.crispred-site:not(#cr-wc) ul.products li.product .star-rating { margin:0 22px 8px; font-size:.8rem; }
body.crispred-site:not(#cr-wc) ul.products li.product .price { display:block; padding:0 22px; margin:auto 0 0; font-size:1rem; }
body.crispred-site:not(#cr-wc) ul.products li.product .price del { font-size:.88em; }
body.crispred-site:not(#cr-wc) ul.products li.product :is(.button,.added_to_cart) { margin:16px 22px 22px; align-self:flex-start; }
body.crispred-site:not(#cr-wc) ul.products li.product .added_to_cart { margin-top:-10px; }
body.crispred-site:not(#cr-wc) ul.products li.product-category mark { background:none; color:var(--cr-muted); font-weight:500; }
body.crispred-site:not(#cr-wc) ul.products li.product-category .woocommerce-loop-category__title { padding-bottom:22px; }
body.crispred-site:not(#cr-wc) nav.woocommerce-pagination { text-align:left; margin-top:8px; }
body.crispred-site:not(#cr-wc) nav.woocommerce-pagination ul { display:inline-flex; flex-wrap:wrap; gap:8px; border:0; margin:0; }
body.crispred-site:not(#cr-wc) nav.woocommerce-pagination ul li { border:0; float:none; overflow:visible; }
body.crispred-site:not(#cr-wc) nav.woocommerce-pagination ul li :is(a,span) { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:0 14px; border:1px solid var(--cr-line); border-radius:var(--cr-pill); font-size:.9rem; font-weight:600; color:var(--cr-ink); text-decoration:none; }
body.crispred-site:not(#cr-wc) nav.woocommerce-pagination ul li a:hover { background:transparent; border-color:var(--cr-ink); color:var(--cr-ink); }
body.crispred-site:not(#cr-wc) nav.woocommerce-pagination ul li span.current { background:var(--cr-ink); border-color:var(--cr-ink); color:#fff; }

/* ---------- Single product ---------- */
body.crispred-site:not(#cr-wc) .cr-shop--product div.product { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); gap:clamp(28px,5vw,72px); align-items:start; position:relative; }
body.crispred-site:not(#cr-wc) .cr-shop--product div.product::before,body.crispred-site:not(#cr-wc) .cr-shop--product div.product::after { display:none; content:none; }
body.crispred-site:not(#cr-wc) .cr-shop--product div.product > * { grid-column:1/-1; min-width:0; }
body.crispred-site:not(#cr-wc) .cr-shop--product div.product > :is(.woocommerce-product-gallery,div.images) { grid-column:1; float:none; width:auto; margin:0; }
body.crispred-site:not(#cr-wc) .cr-shop--product div.product > .summary { grid-column:2; float:none; width:auto; margin:0; }
body.crispred-site:not(#cr-wc) .cr-shop--product div.product > span.onsale { grid-column:auto; top:16px; left:16px; }
body.crispred-site:not(#cr-wc) .cr-shop--product div.product > .woocommerce-tabs { margin-top:clamp(28px,4vw,48px); }
body.crispred-site:not(#cr-wc) .cr-shop--product div.product > :is(section.products,.bbsp-panel,[class*=self-served]) { margin-top:clamp(28px,4vw,48px); }
@supports (position:sticky) { body.crispred-site:not(#cr-wc) .cr-shop--product div.product > .summary { position:sticky; top:calc(var(--cr-header-height) + 24px); } body:not(.crispred-sticky).crispred-site .cr-shop--product div.product > .summary { top:24px; } }

/* Gallery */
body.crispred-site:not(#cr-wc) .woocommerce-product-gallery { position:relative; }
body.crispred-site:not(#cr-wc) .woocommerce-product-gallery .flex-viewport,body.crispred-site:not(#cr-wc) .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child { border-radius:var(--cr-radius); overflow:hidden; background:var(--cr-soft); }
body.crispred-site:not(#cr-wc) .woocommerce-product-gallery__image img { display:block; width:100%; border-radius:0; }
body.crispred-site:not(#cr-wc) .woocommerce-product-gallery__wrapper { margin:0; }
body.crispred-site:not(#cr-wc) .woocommerce-product-gallery .flex-control-thumbs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:12px 0 0; padding:0; list-style:none; }
body.crispred-site:not(#cr-wc) .woocommerce-product-gallery .flex-control-thumbs li { width:auto; float:none; margin:0; }
body.crispred-site:not(#cr-wc) .woocommerce-product-gallery .flex-control-thumbs li img { border-radius:var(--cr-radius-sm); opacity:.55; border:2px solid transparent; aspect-ratio:1; object-fit:cover; transition:opacity .2s ease,border-color .2s ease; }
body.crispred-site:not(#cr-wc) .woocommerce-product-gallery .flex-control-thumbs li img:hover,body.crispred-site:not(#cr-wc) .woocommerce-product-gallery .flex-control-thumbs li img.flex-active { opacity:1; border-color:var(--cr-ink); }
body.crispred-site:not(#cr-wc) .woocommerce-product-gallery__trigger { top:14px!important; right:14px!important; left:auto!important; width:40px!important; height:40px!important; border-radius:50%!important; background:var(--cr-paper)!important; box-shadow:var(--cr-shadow); z-index:4!important; }

/* Summary */
body.crispred-site:not(#cr-wc) div.product .product_title { font-size:clamp(2rem,3.6vw,3.1rem); line-height:1.08; letter-spacing:-.035em; margin:0 0 16px; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-product-rating { display:flex; align-items:center; gap:10px; margin:0 0 16px; font-size:.85rem; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-product-rating .star-rating { float:none; margin:0; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-review-link { color:var(--cr-muted); text-decoration:none; }
body.crispred-site:not(#cr-wc) div.product .summary p.price,body.crispred-site:not(#cr-wc) div.product .summary span.price { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 10px; font-size:clamp(1.5rem,2.4vw,1.9rem); font-weight:750; letter-spacing:-.02em; margin:0 0 20px; }
body.crispred-site:not(#cr-wc) div.product .summary p.price del { font-size:.6em; font-weight:500; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-product-details__short-description { color:var(--cr-muted); font-size:1.05rem; margin:0 0 24px; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-product-details__short-description > :last-child { margin-bottom:0; }
body.crispred-site:not(#cr-wc) div.product form.cart { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin:0 0 28px; padding:0; }
body.crispred-site:not(#cr-wc) div.product form.cart::before,body.crispred-site:not(#cr-wc) div.product form.cart::after { display:none; }
body.crispred-site:not(#cr-wc) div.product form.cart .quantity { float:none; margin:0; }
body.crispred-site:not(#cr-wc) div.product form.cart .single_add_to_cart_button { float:none; min-height:50px; padding-inline:2rem; font-size:.95rem; }
body.crispred-site:not(#cr-wc) div.product form.cart:is(.variations_form,.grouped_form) { display:block; }
body.crispred-site:not(#cr-wc) div.product form.cart .woocommerce-variation-add-to-cart { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
body.crispred-site:not(#cr-wc) div.product form.cart table.variations { width:100%; margin:0 0 16px; border:0; }
body.crispred-site:not(#cr-wc) div.product form.cart table.variations :is(th,td) { display:block; padding:0; border:0; text-align:left; line-height:1.4; }
body.crispred-site:not(#cr-wc) div.product form.cart table.variations th.label { padding-bottom:6px; }
body.crispred-site:not(#cr-wc) div.product form.cart table.variations th.label label { font-size:.85rem; }
body.crispred-site:not(#cr-wc) div.product form.cart table.variations td.value { padding-bottom:14px; }
body.crispred-site:not(#cr-wc) div.product form.cart table.variations select { width:100%; min-height:48px; margin:0; border:1px solid var(--cr-line-strong); border-radius:var(--cr-radius-sm); padding:.6rem .9rem; }
body.crispred-site:not(#cr-wc) div.product form.cart .reset_variations { display:inline-block; margin-top:8px; font-size:.82rem; color:var(--cr-muted); }
body.crispred-site:not(#cr-wc) div.product .woocommerce-variation-price { margin-bottom:12px; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-variation-price .price { font-size:1.4rem; }
body.crispred-site:not(#cr-wc) div.product .product_meta { display:flex; flex-direction:column; gap:6px; padding-top:20px; border-top:1px solid var(--cr-line); font-size:.82rem; color:var(--cr-muted); }
body.crispred-site:not(#cr-wc) div.product .product_meta > span { display:block; }
body.crispred-site:not(#cr-wc) div.product .product_meta :is(.sku,a) { color:var(--cr-ink); }
body.crispred-site:not(#cr-wc) div.product .product_meta a { text-decoration:none; font-weight:600; }
body.crispred-site:not(#cr-wc) div.product .product_meta a:hover { color:var(--cr-accent); }
body.crispred-site:not(#cr-wc) div.product p.stock { margin:0 0 16px; }

/* Tabs */
body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs { padding-top:clamp(28px,4vw,48px); border-top:1px solid var(--cr-line); }
body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs ul.tabs { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 clamp(24px,3vw,36px); padding:0; overflow:visible; list-style:none; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs ul.tabs::before,body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs ul.tabs::after { display:none; border:0; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs ul.tabs li { margin:0; padding:0; border:1px solid var(--cr-line); border-radius:var(--cr-pill); background:var(--cr-paper); }
body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs ul.tabs li::before,body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs ul.tabs li::after { display:none; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs ul.tabs li a { display:block; padding:9px 20px; font-size:.88rem; font-weight:600; color:var(--cr-muted); text-decoration:none; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs ul.tabs li a:hover { color:var(--cr-ink); }
body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs ul.tabs li.active { background:var(--cr-accent); border-color:var(--cr-accent); }
body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs ul.tabs li.active a { color:#fff; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs .panel { max-width:var(--cr-reading); margin:0; padding:0; font-size:1.05rem; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs .panel > :first-child { margin-top:0; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs .panel :is(h2,h3) { margin-top:1.4em; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs .panel :is(ul,ol) { padding-left:1.4em; }
body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs .panel li { margin-block:.35em; }
body.crispred-site:not(#cr-wc) table.woocommerce-product-attributes { width:100%; border:1px solid var(--cr-line); border-radius:var(--cr-radius); border-collapse:separate; border-spacing:0; overflow:hidden; }
body.crispred-site:not(#cr-wc) table.woocommerce-product-attributes :is(th,td) { padding:12px 18px; border-top:1px solid var(--cr-line); background:none; font-style:normal; text-align:left; }
body.crispred-site:not(#cr-wc) table.woocommerce-product-attributes tr:first-child :is(th,td) { border-top:0; }
body.crispred-site:not(#cr-wc) table.woocommerce-product-attributes th { width:30%; font-weight:650; background:var(--cr-soft); }
body.crispred-site:not(#cr-wc) table.woocommerce-product-attributes td p { margin:0; padding:0; }

/* Reviews */
body.crispred-site:not(#cr-wc) #reviews h2 { font-size:1.4rem; }
body.crispred-site:not(#cr-wc) #reviews #comments ol.commentlist { padding:0; margin:0 0 24px; }
body.crispred-site:not(#cr-wc) #reviews #comments ol.commentlist li { margin:0; padding:20px 0; border-top:1px solid var(--cr-line); }
body.crispred-site:not(#cr-wc) #reviews #comments ol.commentlist li img.avatar { position:absolute; top:20px; left:0; width:44px; padding:0; border:0; border-radius:50%; background:none; }
body.crispred-site:not(#cr-wc) #reviews #comments ol.commentlist li .comment-text { margin:0 0 0 62px; padding:0; border:0; border-radius:0; }
body.crispred-site:not(#cr-wc) #reviews #comments ol.commentlist li .comment-text p.meta { font-size:.85rem; color:var(--cr-muted); }
body.crispred-site:not(#cr-wc) #review_form_wrapper { margin-top:24px; }
body.crispred-site:not(#cr-wc) #review_form #respond { padding:clamp(22px,3vw,32px); border:1px solid var(--cr-line); border-radius:var(--cr-radius); background:var(--cr-soft); }
body.crispred-site:not(#cr-wc) #review_form #respond .comment-reply-title { display:block; font-size:1.2rem; font-weight:700; margin-bottom:12px; }
body.crispred-site:not(#cr-wc) #review_form #respond :is(textarea,input[type=text],input[type=email]) { width:100%; }
body.crispred-site:not(#cr-wc) #review_form #respond p { margin-bottom:14px; }
body.crispred-site:not(#cr-wc) #review_form #respond label { display:block; margin-bottom:6px; }

/* Related, upsells, cross-sells */
body.crispred-site:not(#cr-wc) :is(section.related,section.upsells,.cross-sells) > h2 { font-size:clamp(1.6rem,2.6vw,2.2rem); margin:0 0 clamp(20px,3vw,32px); }
body.crispred-site:not(#cr-wc) section.related,body.crispred-site:not(#cr-wc) section.upsells { padding-top:clamp(32px,4vw,48px); border-top:1px solid var(--cr-line); }

/* ---------- Cart, checkout, account pages ---------- */
body.crispred-site:not(#cr-wc).cr-wc-page .cr-page-heading h1 { font-size:clamp(2.2rem,4.4vw,3.6rem); }
body.crispred-site:not(#cr-wc).cr-wc-page .cr-content { font-size:1rem; }
body.crispred-site:not(#cr-wc).cr-wc-page .cr-content > .woocommerce { margin:0; }

/* Cart & checkout blocks */
body.crispred-site:not(#cr-wc) :is(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout) { margin-bottom:0; }
body.crispred-site:not(#cr-wc).cr-wc-page .cr-content :is(.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout).alignwide { width:100%; margin-left:0; transform:none; }
body.crispred-site:not(#cr-wc) .wc-block-components-sidebar-layout { margin-bottom:0; }
body.crispred-site:not(#cr-wc) .wc-block-components-sidebar-layout .wc-block-components-main { padding-right:clamp(0px,3vw,48px); }
body.crispred-site:not(#cr-wc) .wc-block-components-sidebar { padding-left:0; }
body.crispred-site:not(#cr-wc) :is(.wc-block-cart .wc-block-components-sidebar,.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block,.wc-block-components-order-summary-wrapper) { border:1px solid var(--cr-line); border-radius:var(--cr-radius); background:var(--cr-soft); }
body.crispred-site:not(#cr-wc) .wc-block-cart .wc-block-components-sidebar { padding:24px 24px 28px; }
body.crispred-site:not(#cr-wc) .wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-block { padding:6px 0 8px; overflow:hidden; }
body.crispred-site:not(#cr-wc) :is(.wc-block-cart__totals-title,.wc-block-cart-items__header,.wc-block-components-checkout-order-summary__title-text) { font-size:.72rem!important; font-weight:700!important; letter-spacing:.12em; text-transform:uppercase; color:var(--cr-muted); }
body.crispred-site:not(#cr-wc) .wc-block-cart__totals-title { padding:0 0 12px!important; }
body.crispred-site:not(#cr-wc) .wc-block-components-checkout-order-summary__title { padding-inline:20px; }
body.crispred-site:not(#cr-wc) .wc-block-components-totals-wrapper { border-color:var(--cr-line)!important; }
body.crispred-site:not(#cr-wc) .wc-block-components-totals-item { font-size:.95rem; }
body.crispred-site:not(#cr-wc) .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,body.crispred-site:not(#cr-wc) .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-size:1.15rem; font-weight:750; }
body.crispred-site:not(#cr-wc) table.wc-block-cart-items { border:0; }
body.crispred-site:not(#cr-wc) table.wc-block-cart-items :is(th,td) { border-color:var(--cr-line)!important; }
body.crispred-site:not(#cr-wc) .wc-block-cart-items .wc-block-cart-items__row { border-color:var(--cr-line); }
body.crispred-site:not(#cr-wc) :is(.wc-block-cart-item__image,.wc-block-components-order-summary-item__image) img { border-radius:var(--cr-radius-sm); }
body.crispred-site:not(#cr-wc) .wc-block-components-product-name { font-weight:650; font-size:1rem; line-height:1.35; color:var(--cr-ink); text-decoration:none; }
body.crispred-site:not(#cr-wc) a.wc-block-components-product-name:hover { color:var(--cr-accent); }
body.crispred-site:not(#cr-wc) .wc-block-components-product-metadata { color:var(--cr-muted); font-size:.82rem; }
body.crispred-site:not(#cr-wc) .wc-block-components-quantity-selector { border-radius:var(--cr-pill); border-color:var(--cr-line-strong); overflow:hidden; }
body.crispred-site:not(#cr-wc) .wc-block-components-quantity-selector::after { border-radius:var(--cr-pill)!important; border-color:var(--cr-line-strong)!important; }
body.crispred-site:not(#cr-wc) .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input { font-weight:600; }
body.crispred-site:not(#cr-wc) .wc-block-cart-item__remove-link { color:var(--cr-muted)!important; }
body.crispred-site:not(#cr-wc) .wc-block-cart-item__remove-link:hover { color:var(--cr-accent)!important; }
body.crispred-site:not(#cr-wc) .wc-block-components-order-summary-item__quantity { background:var(--cr-ink); border-color:var(--cr-paper); color:#fff; box-shadow:none; }
body.crispred-site:not(#cr-wc) .wc-block-components-panel__button { font-weight:600; font-size:.92rem; }
body.crispred-site:not(#cr-wc) .wc-block-cart__submit-container,body.crispred-site:not(#cr-wc) .wc-block-cart__submit { margin-bottom:0; }
body.crispred-site:not(#cr-wc) :is(.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button) { width:100%; min-height:52px; font-size:1rem; }
body.crispred-site:not(#cr-wc) .wc-block-components-checkout-step__title { font-size:1.2rem; font-weight:700; letter-spacing:-.015em; }
body.crispred-site:not(#cr-wc) .wc-block-components-checkout-step__description { color:var(--cr-muted); font-size:.9rem; }
body.crispred-site:not(#cr-wc) .wc-block-components-form .wc-block-components-checkout-step { margin-bottom:32px; }
body.crispred-site:not(#cr-wc) :is(.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,.wc-blocks-components-select .wc-blocks-components-select__select,.wc-block-components-textarea,.wc-block-components-form .wc-block-components-text-input input) {
 border:1px solid var(--cr-line-strong)!important; border-radius:var(--cr-radius-sm)!important; background:var(--cr-paper)!important; color:var(--cr-ink)!important;
}
body.crispred-site:not(#cr-wc) :is(.wc-block-components-text-input input,.wc-blocks-components-select__select,.wc-block-components-textarea):focus { border-color:var(--cr-ink)!important; box-shadow:0 0 0 3px var(--cr-accent-tint)!important; outline:none!important; }
body.crispred-site:not(#cr-wc) .wc-block-components-text-input.has-error input { border-color:var(--cr-accent)!important; }
body.crispred-site:not(#cr-wc) .wc-block-components-validation-error { color:var(--cr-accent); }
body.crispred-site:not(#cr-wc) .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox] { border-radius:5px; border-color:var(--cr-line-strong); }
body.crispred-site:not(#cr-wc) .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked { background:var(--cr-accent); border-color:var(--cr-accent); }
body.crispred-site:not(#cr-wc) .wc-block-components-checkbox .wc-block-components-checkbox__mark { fill:#fff; }
body.crispred-site:not(#cr-wc) .wc-block-components-radio-control__input:checked { border-color:var(--cr-accent); }
body.crispred-site:not(#cr-wc) .wc-block-components-radio-control__input:checked::before { background:var(--cr-accent); }
body.crispred-site:not(#cr-wc) .wc-block-components-radio-control-accordion-option,body.crispred-site:not(#cr-wc) .wc-block-checkout__shipping-method-option,body.crispred-site:not(#cr-wc) .wc-block-components-radio-control--highlight-checked { border-radius:var(--cr-radius-sm); }
body.crispred-site:not(#cr-wc) .wc-block-components-radio-control--highlight-checked::after { border-radius:var(--cr-radius-sm); border-color:var(--cr-line-strong); }
body.crispred-site:not(#cr-wc) .wc-block-components-radio-control--highlight-checked .wc-block-components-radio-control-accordion-option--checked-option-highlighted,body.crispred-site:not(#cr-wc) .wc-block-components-radio-control--highlight-checked label.wc-block-components-radio-control__option--checked-option-highlighted { box-shadow:inset 0 0 0 2px var(--cr-ink); border-radius:var(--cr-radius-sm); }
body.crispred-site:not(#cr-wc) .wc-block-checkout__terms { font-size:.85rem; color:var(--cr-muted); }
body.crispred-site:not(#cr-wc) .wc-block-checkout__actions_row .wc-block-components-checkout-return-to-cart-button { color:var(--cr-muted); font-size:.9rem; }
body.crispred-site:not(#cr-wc) .wc-block-components-address-card { border-radius:var(--cr-radius-sm); border-color:var(--cr-line); }
body.crispred-site:not(#cr-wc) .wc-block-components-express-payment--checkout .wc-block-components-express-payment__event-buttons > li { border-radius:var(--cr-pill); }

/* Empty cart and product collections */
body.crispred-site:not(#cr-wc) .wp-block-woocommerce-empty-cart-block { text-align:center; }
body.crispred-site:not(#cr-wc) .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title { font-size:clamp(1.5rem,2.6vw,2rem); margin-bottom:12px; }
body.crispred-site:not(#cr-wc) .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title::before { background-color:var(--cr-line-strong); }
body.crispred-site:not(#cr-wc) .wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title) { font-size:1.4rem; margin-bottom:24px; }
body.crispred-site:not(#cr-wc) :is(.wc-block-product-template,.wc-block-grid__products) { gap:clamp(18px,2.4vw,28px)!important; margin:0; padding:0; text-align:left; }
body.crispred-site:not(#cr-wc) :is(.wc-block-product-template > .wc-block-product,.wc-block-grid__product) { position:relative; display:flex; flex-direction:column; border:1px solid var(--cr-line); border-radius:var(--cr-radius); overflow:hidden; background:var(--cr-paper); text-align:left!important; padding:0 0 20px!important; margin:0!important; max-width:none!important; flex:1 1 0!important; }
body.crispred-site:not(#cr-wc) :is(.wc-block-product-template > .wc-block-product,.wc-block-grid__product) > * { margin-inline:20px!important; }
body.crispred-site:not(#cr-wc) :is(.wc-block-product-template > .wc-block-product,.wc-block-grid__product) > :is(.wc-block-components-product-image,.wp-block-woocommerce-product-image,.wc-block-grid__product-link:first-child) { margin:0 0 16px!important; }
body.crispred-site:not(#cr-wc) :is(.wc-block-components-product-image,.wc-block-grid__product-image) img { border-radius:0!important; aspect-ratio:4/3; object-fit:cover; width:100%; }
body.crispred-site:not(#cr-wc) :is(.wc-block-product-template,.wc-block-grid__products) :is(.wp-block-post-title,.wc-block-grid__product-title) { font-size:1.05rem!important; font-weight:700; line-height:1.3; margin-bottom:6px!important; text-align:left!important; }
body.crispred-site:not(#cr-wc) :is(.wc-block-product-template,.wc-block-grid__products) :is(.wp-block-post-title,.wc-block-grid__product-title) a { text-decoration:none; }
body.crispred-site:not(#cr-wc) :is(.wc-block-product-template,.wc-block-grid__products) :is(.wc-block-components-product-price,.wc-block-grid__product-price) { text-align:left!important; margin-bottom:14px!important; font-size:.95rem!important; }
body.crispred-site:not(#cr-wc) :is(.wc-block-product-template,.wc-block-grid__products) .wc-block-components-product-button { justify-content:flex-start!important; align-items:flex-start!important; margin-top:auto!important; }

/* Classic cart */
body.crispred-site:not(#cr-wc) .woocommerce-cart-form { margin-bottom:clamp(32px,4vw,48px); }
body.crispred-site:not(#cr-wc) .woocommerce-cart-form table.shop_table td.actions { background:var(--cr-soft); padding:16px 18px; }
body.crispred-site:not(#cr-wc) table.cart td.actions .coupon { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
body.crispred-site:not(#cr-wc) table.cart td.actions .coupon .input-text { width:220px; min-height:46px; margin:0; border-radius:var(--cr-pill); padding-inline:1rem; }
body.crispred-site:not(#cr-wc) table.cart td.actions > .button { float:right; }
body.crispred-site:not(#cr-wc) table.cart .product-thumbnail { width:100px; }
body.crispred-site:not(#cr-wc) .cart-collaterals .cart_totals { float:right; width:min(100%,460px); padding:24px; border:1px solid var(--cr-line); border-radius:var(--cr-radius); background:var(--cr-soft); }
body.crispred-site:not(#cr-wc) .cart-collaterals .cart_totals h2 { font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; color:var(--cr-muted); margin-bottom:12px; }
body.crispred-site:not(#cr-wc) .cart-collaterals .cart_totals table.shop_table { background:var(--cr-paper); }
body.crispred-site:not(#cr-wc) .wc-proceed-to-checkout { padding:4px 0 0; }
body.crispred-site:not(#cr-wc) .wc-proceed-to-checkout a.checkout-button { display:flex; width:100%; min-height:52px; margin:0; font-size:1rem; }
body.crispred-site:not(#cr-wc) .cart-empty.woocommerce-info { font-size:1rem; }
body.crispred-site:not(#cr-wc) .return-to-shop { margin-top:8px; }

/* Classic checkout */
body.crispred-site:not(#cr-wc) form.woocommerce-checkout { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:0 clamp(28px,4vw,56px); align-items:start; }
body.crispred-site:not(#cr-wc) form.woocommerce-checkout > * { grid-column:1/-1; }
body.crispred-site:not(#cr-wc) form.woocommerce-checkout > #customer_details { grid-column:1; }
body.crispred-site:not(#cr-wc) form.woocommerce-checkout > .cr-checkout-review { grid-column:2; padding:22px 24px 24px; border:1px solid var(--cr-line); border-radius:var(--cr-radius); background:var(--cr-soft); }
body.crispred-site:not(#cr-wc) form.woocommerce-checkout #order_review_heading { margin:0 0 14px; font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; color:var(--cr-muted); }
@supports (position:sticky) { body.crispred-site:not(#cr-wc) form.woocommerce-checkout > .cr-checkout-review { position:sticky; top:calc(var(--cr-header-height) + 24px); } }
body.crispred-site:not(#cr-wc) form.woocommerce-checkout #customer_details :is(.col-1,.col-2) { float:none; width:100%; }
body.crispred-site:not(#cr-wc) form.woocommerce-checkout #customer_details h3 { font-size:1.25rem; margin:0 0 18px; }
body.crispred-site:not(#cr-wc) form.woocommerce-checkout #customer_details .col-2 { margin-top:24px; }
body.crispred-site:not(#cr-wc) #order_review table.shop_table { background:var(--cr-paper); }
body.crispred-site:not(#cr-wc) .woocommerce-checkout #payment,body.crispred-site:not(#cr-wc) #add_payment_method #payment { background:transparent; border-radius:0; }
body.crispred-site:not(#cr-wc) .woocommerce-checkout #payment ul.payment_methods { padding:0; border:0; margin:0 0 16px; }
body.crispred-site:not(#cr-wc) .woocommerce-checkout #payment ul.payment_methods li { padding:14px 16px; margin:0 0 8px; border:1px solid var(--cr-line); border-radius:var(--cr-radius-sm); background:var(--cr-paper); line-height:1.5; }
body.crispred-site:not(#cr-wc) .woocommerce-checkout #payment ul.payment_methods li label { font-weight:600; font-size:.95rem; display:inline; }
body.crispred-site:not(#cr-wc) .woocommerce-checkout #payment div.payment_box { margin:10px 0 0; padding:12px 14px; border-radius:var(--cr-radius-sm); background:var(--cr-soft); color:var(--cr-muted); font-size:.88rem; }
body.crispred-site:not(#cr-wc) .woocommerce-checkout #payment div.payment_box::before { display:none; }
body.crispred-site:not(#cr-wc) .woocommerce-checkout #payment div.form-row { padding:0; margin:0; }
body.crispred-site:not(#cr-wc) .woocommerce-checkout #payment .woocommerce-privacy-policy-text { font-size:.82rem; color:var(--cr-muted); }
body.crispred-site:not(#cr-wc) .woocommerce-checkout #payment #place_order { float:none; width:100%; min-height:52px; margin-top:6px; font-size:1rem; }
body.crispred-site:not(#cr-wc) .woocommerce-form-coupon-toggle .woocommerce-info { margin-bottom:16px; }
body.crispred-site:not(#cr-wc) form.checkout_coupon { display:flex; flex-wrap:wrap; gap:10px; align-items:flex-end; }
body.crispred-site:not(#cr-wc) form.checkout_coupon > p:first-child { flex-basis:100%; margin:0; }
body.crispred-site:not(#cr-wc) form.checkout_coupon .form-row { width:auto!important; float:none!important; margin:0!important; }

/* Thank you / order details */
body.crispred-site:not(#cr-wc) .woocommerce-order { max-width:920px; }
body.crispred-site:not(#cr-wc) .woocommerce-order > p.woocommerce-thankyou-order-received,body.crispred-site:not(#cr-wc) .woocommerce-order > .woocommerce-notice--success {
 margin:0 0 28px; padding:20px 24px 20px 64px; position:relative; border:1px solid var(--cr-line); border-left:3px solid var(--cr-success); border-radius:var(--cr-radius-sm); background:var(--cr-success-tint); font-size:1.1rem; font-weight:600;
}
body.crispred-site:not(#cr-wc) .woocommerce-order > p.woocommerce-thankyou-order-received::before,body.crispred-site:not(#cr-wc) .woocommerce-order > .woocommerce-notice--success::before { content:'✓'; position:absolute; left:20px; top:50%; transform:translateY(-50%); width:28px; height:28px; display:grid; place-items:center; border-radius:50%; background:var(--cr-success); color:#fff; font-size:.85rem; }
body.crispred-site:not(#cr-wc) ul.woocommerce-order-overview,body.crispred-site:not(#cr-wc) ul.order_details { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:0; margin:0 0 clamp(32px,4vw,48px); padding:0; list-style:none; border:1px solid var(--cr-line); border-radius:var(--cr-radius); overflow:hidden; }
body.crispred-site:not(#cr-wc) ul.woocommerce-order-overview::before,body.crispred-site:not(#cr-wc) ul.woocommerce-order-overview::after,body.crispred-site:not(#cr-wc) ul.order_details::before,body.crispred-site:not(#cr-wc) ul.order_details::after { display:none; }
body.crispred-site:not(#cr-wc) ul.woocommerce-order-overview li,body.crispred-site:not(#cr-wc) ul.order_details li { float:none; margin:0; padding:18px 22px; border:0; border-right:1px solid var(--cr-line); font-size:.68rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:var(--cr-muted); line-height:1.4; }
body.crispred-site:not(#cr-wc) ul.woocommerce-order-overview li:last-child,body.crispred-site:not(#cr-wc) ul.order_details li:last-child { border-right:0; }
body.crispred-site:not(#cr-wc) ul.woocommerce-order-overview li strong,body.crispred-site:not(#cr-wc) ul.order_details li strong { display:block; margin-top:6px; font-size:1.05rem; letter-spacing:-.01em; text-transform:none; color:var(--cr-ink); font-weight:700; }
body.crispred-site:not(#cr-wc) :is(.woocommerce-order-details,.woocommerce-customer-details,.woocommerce-bacs-bank-details,.woocommerce-order-downloads) { margin-bottom:clamp(28px,4vw,40px); }
body.crispred-site:not(#cr-wc) :is(.woocommerce-order-details__title,.woocommerce-column__title,.woocommerce-bacs-bank-details .wc-bacs-bank-details-heading,.woocommerce-order-downloads__title) { font-size:1.4rem; margin:0 0 16px; }
body.crispred-site:not(#cr-wc) .woocommerce-customer-details .woocommerce-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
body.crispred-site:not(#cr-wc) .woocommerce-customer-details .woocommerce-columns::before,body.crispred-site:not(#cr-wc) .woocommerce-customer-details .woocommerce-columns::after { display:none; }
body.crispred-site:not(#cr-wc) .woocommerce-customer-details .woocommerce-column { float:none; width:auto; }
body.crispred-site:not(#cr-wc) .woocommerce-customer-details address { padding:20px 22px; border:1px solid var(--cr-line); border-radius:var(--cr-radius); background:var(--cr-soft); font-style:normal; line-height:1.7; }
body.crispred-site:not(#cr-wc) .woocommerce-customer-details address p { margin:8px 0 0; color:var(--cr-muted); font-size:.9rem; }
body.crispred-site:not(#cr-wc) .woocommerce-customer-details address p::before { display:none; }
body.crispred-site:not(#cr-wc) .woocommerce-customer-details--phone,body.crispred-site:not(#cr-wc) .woocommerce-customer-details--email { padding-left:0!important; }
body.crispred-site:not(#cr-wc) ul.wc-bacs-bank-details { margin-top:12px; }

/* My account */
body.crispred-site:not(#cr-wc).woocommerce-account .cr-content > .woocommerce { display:grid; grid-template-columns:minmax(200px,260px) minmax(0,1fr); gap:clamp(24px,4vw,56px); align-items:start; }
body.crispred-site:not(#cr-wc).woocommerce-account .cr-content > .woocommerce::before,body.crispred-site:not(#cr-wc).woocommerce-account .cr-content > .woocommerce::after { display:none; }
body.crispred-site:not(#cr-wc).woocommerce-account .cr-content > .woocommerce > :not(.woocommerce-MyAccount-navigation):not(.woocommerce-MyAccount-content) { grid-column:1/-1; }
body.crispred-site:not(#cr-wc) .woocommerce-MyAccount-navigation { float:none; width:auto; padding:10px; border:1px solid var(--cr-line); border-radius:var(--cr-radius); background:var(--cr-soft); }
body.crispred-site:not(#cr-wc) .woocommerce-MyAccount-navigation ul { list-style:none; margin:0; padding:0; }
body.crispred-site:not(#cr-wc) .woocommerce-MyAccount-navigation li { margin:0; padding:0; }
body.crispred-site:not(#cr-wc) .woocommerce-MyAccount-navigation li a { display:block; padding:10px 14px; border-radius:var(--cr-radius-sm); font-size:.92rem; font-weight:600; text-decoration:none; color:var(--cr-ink); }
body.crispred-site:not(#cr-wc) .woocommerce-MyAccount-navigation li a:hover { background:var(--cr-paper); color:var(--cr-accent); }
body.crispred-site:not(#cr-wc) .woocommerce-MyAccount-navigation li.is-active a { background:var(--cr-ink); color:#fff; }
body.crispred-site:not(#cr-wc) .woocommerce-MyAccount-navigation-link--customer-logout { margin-top:6px!important; padding-top:6px!important; border-top:1px solid var(--cr-line)!important; }
body.crispred-site:not(#cr-wc) .woocommerce-MyAccount-navigation-link--customer-logout a { color:var(--cr-muted); font-weight:500; }
body.crispred-site:not(#cr-wc) .woocommerce-MyAccount-content { float:none; width:auto; }
body.crispred-site:not(#cr-wc) .woocommerce-MyAccount-content > p:first-of-type { font-size:1.05rem; }
body.crispred-site:not(#cr-wc) .woocommerce-MyAccount-content :is(fieldset) { border:1px solid var(--cr-line); border-radius:var(--cr-radius); padding:20px 22px; margin:24px 0; }
body.crispred-site:not(#cr-wc) .woocommerce-MyAccount-content legend { font-weight:700; padding:0 8px; }
body.crispred-site:not(#cr-wc) .woocommerce-Addresses { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
body.crispred-site:not(#cr-wc) .woocommerce-Addresses::before,body.crispred-site:not(#cr-wc) .woocommerce-Addresses::after { display:none; }
body.crispred-site:not(#cr-wc) .woocommerce-Addresses .woocommerce-Address { float:none; width:auto; padding:20px 22px; border:1px solid var(--cr-line); border-radius:var(--cr-radius); }
body.crispred-site:not(#cr-wc) .woocommerce-Address-title { display:flex; justify-content:space-between; align-items:baseline; gap:12px; }
body.crispred-site:not(#cr-wc) .woocommerce-Address-title h2 { font-size:1.15rem; }
body.crispred-site:not(#cr-wc) .woocommerce-Address address { font-style:normal; color:var(--cr-muted); }
body.crispred-site:not(#cr-wc) table.my_account_orders .button { min-height:36px; padding:.4rem .9rem; font-size:.8rem; margin:2px; }
body.crispred-site:not(#cr-wc) #customer_login.col2-set { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
body.crispred-site:not(#cr-wc) #customer_login.col2-set::before,body.crispred-site:not(#cr-wc) #customer_login.col2-set::after { display:none; }
body.crispred-site:not(#cr-wc) #customer_login :is(.u-column1,.u-column2) { float:none; width:auto; }
body.crispred-site:not(#cr-wc) #customer_login h2 { font-size:1.4rem; }
body.crispred-site:not(#cr-wc).woocommerce-account:not(.logged-in) .cr-content > .woocommerce { display:block; max-width:520px; }
body.crispred-site:not(#cr-wc).woocommerce-account:not(.logged-in) .cr-content > .woocommerce:has(#customer_login) { max-width:none; }

/* Widgets and mini cart */
body.crispred-site:not(#cr-wc) .widget_shopping_cart .cart_list li,body.crispred-site:not(#cr-wc) .woocommerce.widget_shopping_cart .cart_list li { padding:10px 0 10px 4em; border-bottom:1px solid var(--cr-line); }
body.crispred-site:not(#cr-wc) .woocommerce-mini-cart__total { padding:12px 0; border-top:1px solid var(--cr-line); }
body.crispred-site:not(#cr-wc) .wc-block-mini-cart__drawer .wc-block-components-drawer { font-family:var(--cr-font); }

/* ---------- Responsive ---------- */
@media(max-width:1024px) {
 body.crispred-site:not(#cr-wc) ul.products:is(.columns-4,.columns-5,.columns-6) { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:900px) {
 body.crispred-site:not(#cr-wc) ul.products,body.crispred-site:not(#cr-wc) ul.products[class*=columns-] { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body.crispred-site:not(#cr-wc) .cr-shop--product div.product { grid-template-columns:minmax(0,1fr); }
 body.crispred-site:not(#cr-wc) .cr-shop--product div.product > .summary { grid-column:1; position:static; }
 body.crispred-site:not(#cr-wc) form.woocommerce-checkout { display:block; }
 body.crispred-site:not(#cr-wc) form.woocommerce-checkout > .cr-checkout-review { margin-top:24px; position:static; }
 body.crispred-site:not(#cr-wc) .cart-collaterals .cart_totals { float:none; width:100%; }
}
@media(max-width:782px) {
 body.crispred-site:not(#cr-wc).woocommerce-account .cr-content > .woocommerce { grid-template-columns:minmax(0,1fr); }
 body.crispred-site:not(#cr-wc) .woocommerce-MyAccount-navigation ul { display:flex; flex-wrap:wrap; gap:4px; }
 body.crispred-site:not(#cr-wc) .woocommerce-MyAccount-navigation-link--customer-logout { margin:0!important; padding:0!important; border:0!important; }
 body.crispred-site:not(#cr-wc) #customer_login.col2-set,body.crispred-site:not(#cr-wc) .woocommerce-Addresses,body.crispred-site:not(#cr-wc) .woocommerce-customer-details .woocommerce-columns { grid-template-columns:minmax(0,1fr); }
 body.crispred-site:not(#cr-wc) .cr-shop--archive :is(.woocommerce-result-count,.woocommerce-ordering) { float:none; margin:0 0 12px; }
 body.crispred-site:not(#cr-wc) .cr-shop--archive .woocommerce-ordering { margin-bottom:24px; }
 body.crispred-site:not(#cr-wc) .woocommerce-ordering select.orderby { width:100%; }
 /* Classic cart table becomes stacked rows */
 body.crispred-site:not(#cr-wc) table.shop_table_responsive thead { display:none; }
 body.crispred-site:not(#cr-wc) table.shop_table_responsive tbody tr:first-child td:first-child { border-top:0; }
 body.crispred-site:not(#cr-wc) table.shop_table_responsive tr { display:block; }
 body.crispred-site:not(#cr-wc) table.shop_table_responsive tr td { display:flex; justify-content:space-between; gap:16px; text-align:right!important; }
 body.crispred-site:not(#cr-wc) table.shop_table_responsive tr td::before { content:attr(data-title); font-weight:600; color:var(--cr-muted); text-align:left; float:none; }
 body.crispred-site:not(#cr-wc) table.shop_table_responsive tr :is(td.product-remove,td.actions,td.product-thumbnail)::before { display:none; }
 body.crispred-site:not(#cr-wc) table.cart td.product-thumbnail { display:block; width:auto; }
 body.crispred-site:not(#cr-wc) table.cart td.actions { display:block; text-align:left!important; }
 body.crispred-site:not(#cr-wc) table.cart td.actions .coupon { flex-direction:column; align-items:stretch; }
 body.crispred-site:not(#cr-wc) table.cart td.actions .coupon .input-text,body.crispred-site:not(#cr-wc) table.cart td.actions .button { width:100%; float:none; margin-top:8px; }
 body.crispred-site:not(#cr-wc) .woocommerce form :is(.form-row-first,.form-row-last) { width:100%; float:none; }
}
@media(max-width:600px) {
 body.crispred-site:not(#cr-wc) ul.products,body.crispred-site:not(#cr-wc) ul.products[class*=columns-] { grid-template-columns:minmax(0,1fr); }
 body.crispred-site:not(#cr-wc) .wc-block-cart .wc-block-components-sidebar { padding:20px; }
 body.crispred-site:not(#cr-wc) :is(.wc-block-product-template,.wc-block-grid__products) { grid-template-columns:minmax(0,1fr)!important; }
 body.crispred-site:not(#cr-wc) ul.woocommerce-order-overview li,body.crispred-site:not(#cr-wc) ul.order_details li { border-right:0; border-bottom:1px solid var(--cr-line); }
 body.crispred-site:not(#cr-wc) ul.woocommerce-order-overview li:last-child,body.crispred-site:not(#cr-wc) ul.order_details li:last-child { border-bottom:0; }
 body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs ul.tabs { gap:8px; }
 body.crispred-site:not(#cr-wc) div.product .woocommerce-tabs ul.tabs li a { padding:8px 16px; }
 body.crispred-site:not(#cr-wc) table.shop_table :is(th,td) { padding:12px 14px; }
}

/* Cart block on narrow screens: two-column rows that never overflow. */
body.crispred-site:not(#cr-wc) .is-mobile table.wc-block-cart-items .wc-block-cart-items__row { grid-template-columns:72px minmax(0,1fr); column-gap:16px; }
body.crispred-site:not(#cr-wc) .is-mobile table.wc-block-cart-items .wc-block-cart-item__image { grid-column:1; grid-row:1 / span 2; padding:0; }
body.crispred-site:not(#cr-wc) .is-mobile table.wc-block-cart-items .wc-block-cart-item__product { grid-column:2; grid-row:1; }
body.crispred-site:not(#cr-wc) .is-mobile table.wc-block-cart-items .wc-block-cart-item__total { grid-column:2; grid-row:2; justify-self:start; text-align:left; padding-top:8px; }
body.crispred-site:not(#cr-wc) .is-mobile table.wc-block-cart-items .wc-block-cart-item__total-price-and-sale-badge-wrapper { flex-direction:row; align-items:center; gap:10px; }
body.crispred-site:not(#cr-wc) .wc-block-cart .wc-block-components-sidebar > :first-child .wc-block-components-totals-wrapper:first-child,body.crispred-site:not(#cr-wc) .wc-block-cart .wc-block-components-sidebar .wp-block-woocommerce-cart-order-summary-block > .wc-block-components-totals-wrapper:first-of-type { border-top:0!important; }
body.crispred-site:not(#cr-wc) .wc-block-grid__product-link { text-decoration:none; color:inherit; }
body.crispred-site:not(#cr-wc) .wc-block-grid__product-link .wc-block-grid__product-title { padding-inline:20px; }
body.crispred-site:not(#cr-wc) .wc-block-grid__product .wc-block-grid__product-onsale { left:14px; right:auto; }
body.crispred-site:not(#cr-wc) .wc-block-grid__product .wc-block-grid__product-add-to-cart { margin-top:auto!important; }
